crates for shops and stats
Some checks reported errors
continuous-integration/drone/push Build was killed
Some checks reported errors
continuous-integration/drone/push Build was killed
This commit is contained in:
parent
2c930d4333
commit
3b28d650ee
@ -9,6 +9,8 @@ members = [
|
|||||||
"entity",
|
"entity",
|
||||||
"maps",
|
"maps",
|
||||||
"networking",
|
"networking",
|
||||||
|
"shops",
|
||||||
|
"stats",
|
||||||
]
|
]
|
||||||
|
|
||||||
[workspace.dependencies]
|
[workspace.dependencies]
|
||||||
@ -16,6 +18,8 @@ libpso = { git = "http://git.sharnoth.com/jake/libpso" }
|
|||||||
entity = { path = "./entity" }
|
entity = { path = "./entity" }
|
||||||
maps = { path = "./maps" }
|
maps = { path = "./maps" }
|
||||||
networking = { path = "./networking" }
|
networking = { path = "./networking" }
|
||||||
|
shops = { path = "./shops" }
|
||||||
|
stats = { path = "./stats" }
|
||||||
async-std = { version = "1.9.0", features = ["unstable", "attributes"] }
|
async-std = { version = "1.9.0", features = ["unstable", "attributes"] }
|
||||||
futures = "0.3.5"
|
futures = "0.3.5"
|
||||||
rand = "0.7.3"
|
rand = "0.7.3"
|
||||||
@ -49,6 +53,8 @@ libpso = { git = "http://git.sharnoth.com/jake/libpso" }
|
|||||||
entity = { path = "./entity" }
|
entity = { path = "./entity" }
|
||||||
maps = { path = "./maps" }
|
maps = { path = "./maps" }
|
||||||
networking = { path = "./networking" }
|
networking = { path = "./networking" }
|
||||||
|
shops = { path = "./shops" }
|
||||||
|
stats = { path = "./stats" }
|
||||||
async-std = { version = "1.9.0", features = ["unstable", "attributes"] }
|
async-std = { version = "1.9.0", features = ["unstable", "attributes"] }
|
||||||
futures = "0.3.5"
|
futures = "0.3.5"
|
||||||
rand = "0.7.3"
|
rand = "0.7.3"
|
||||||
|
13
shops/Cargo.toml
Normal file
13
shops/Cargo.toml
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
[package]
|
||||||
|
name = "shops"
|
||||||
|
version = "0.1.0"
|
||||||
|
edition = "2021"
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
|
maps = { workspace = true }
|
||||||
|
stats = { workspace = true }
|
||||||
|
entity = { workspace = true }
|
||||||
|
|
||||||
|
rand = { workspace = true }
|
||||||
|
toml = { workspace = true }
|
||||||
|
serde = { workspace = true }
|
@ -9,8 +9,8 @@ use entity::item::ItemDetail;
|
|||||||
use entity::item::armor::{Armor, ArmorType};
|
use entity::item::armor::{Armor, ArmorType};
|
||||||
use entity::item::shield::{Shield, ShieldType};
|
use entity::item::shield::{Shield, ShieldType};
|
||||||
use entity::item::unit::{Unit, UnitType};
|
use entity::item::unit::{Unit, UnitType};
|
||||||
use crate::ship::shops::ShopItem;
|
use crate::ShopItem;
|
||||||
use crate::ship::item_stats::{ARMOR_STATS, SHIELD_STATS, UNIT_STATS};
|
use stats::items::{ARMOR_STATS, SHIELD_STATS, UNIT_STATS};
|
||||||
|
|
||||||
// #[derive(Debug)]
|
// #[derive(Debug)]
|
||||||
// pub enum ArmorShopItem {
|
// pub enum ArmorShopItem {
|
@ -9,8 +9,8 @@ use rand::distributions::{WeightedIndex, Distribution};
|
|||||||
use entity::item::ItemDetail;
|
use entity::item::ItemDetail;
|
||||||
use entity::item::tool::{Tool, ToolType};
|
use entity::item::tool::{Tool, ToolType};
|
||||||
use entity::item::tech::{Technique, TechniqueDisk};
|
use entity::item::tech::{Technique, TechniqueDisk};
|
||||||
use crate::ship::shops::ShopItem;
|
use crate::ShopItem;
|
||||||
use crate::ship::item_stats::{TOOL_STATS, TECH_STATS};
|
use stats::items::{TOOL_STATS, TECH_STATS};
|
||||||
|
|
||||||
|
|
||||||
#[derive(Debug, PartialEq, Eq)]
|
#[derive(Debug, PartialEq, Eq)]
|
@ -12,8 +12,8 @@ use entity::character::SectionID;
|
|||||||
use maps::room::Difficulty;
|
use maps::room::Difficulty;
|
||||||
use entity::item::ItemDetail;
|
use entity::item::ItemDetail;
|
||||||
use entity::item::weapon::{Weapon, WeaponType, WeaponSpecial, Attribute, WeaponAttribute};
|
use entity::item::weapon::{Weapon, WeaponType, WeaponSpecial, Attribute, WeaponAttribute};
|
||||||
use crate::ship::shops::ShopItem;
|
use crate::ShopItem;
|
||||||
use crate::ship::item_stats::WEAPON_STATS;
|
use stats::items::WEAPON_STATS;
|
||||||
|
|
||||||
|
|
||||||
const TIER1_SPECIAL: [WeaponSpecial; 8] = [WeaponSpecial::Draw, WeaponSpecial::Heart, WeaponSpecial::Ice, WeaponSpecial::Bind,
|
const TIER1_SPECIAL: [WeaponSpecial; 8] = [WeaponSpecial::Draw, WeaponSpecial::Heart, WeaponSpecial::Ice, WeaponSpecial::Bind,
|
@ -14,7 +14,7 @@ use entity::item;
|
|||||||
use crate::ship::ship::ShipError;
|
use crate::ship::ship::ShipError;
|
||||||
use crate::ship::items;
|
use crate::ship::items;
|
||||||
use maps::area::MapArea;
|
use maps::area::MapArea;
|
||||||
use crate::ship::shops::{WeaponShopItem, ToolShopItem, ArmorShopItem};
|
use shops::{WeaponShopItem, ToolShopItem, ArmorShopItem};
|
||||||
|
|
||||||
|
|
||||||
#[derive(Clone, Default)]
|
#[derive(Clone, Default)]
|
||||||
|
@ -8,7 +8,7 @@ use entity::item::armor::{ArmorType, Armor};
|
|||||||
use maps::room::{Difficulty, Episode};
|
use maps::room::{Difficulty, Episode};
|
||||||
use maps::area::MapArea;
|
use maps::area::MapArea;
|
||||||
use crate::ship::drops::{ItemDropType, load_data_file};
|
use crate::ship::drops::{ItemDropType, load_data_file};
|
||||||
use crate::ship::item_stats::{armor_stats, ArmorStats};
|
use stats::items::{armor_stats, ArmorStats};
|
||||||
|
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize)]
|
#[derive(Debug, Serialize, Deserialize)]
|
||||||
|
@ -8,7 +8,7 @@ use entity::character::SectionID;
|
|||||||
use maps::room::{Difficulty, Episode};
|
use maps::room::{Difficulty, Episode};
|
||||||
use maps::area::MapArea;
|
use maps::area::MapArea;
|
||||||
use crate::ship::drops::{ItemDropType, load_data_file};
|
use crate::ship::drops::{ItemDropType, load_data_file};
|
||||||
use crate::ship::item_stats::{shield_stats, ShieldStats};
|
use stats::items::{shield_stats, ShieldStats};
|
||||||
|
|
||||||
|
|
||||||
#[derive(Debug, Serialize, Deserialize)]
|
#[derive(Debug, Serialize, Deserialize)]
|
||||||
|
@ -8,7 +8,7 @@ use entity::item::unit::{UnitType, Unit, UnitModifier};
|
|||||||
use maps::room::{Difficulty, Episode};
|
use maps::room::{Difficulty, Episode};
|
||||||
use maps::area::MapArea;
|
use maps::area::MapArea;
|
||||||
use crate::ship::drops::{ItemDropType, load_data_file};
|
use crate::ship::drops::{ItemDropType, load_data_file};
|
||||||
use crate::ship::item_stats::{unit_stats, UnitStats};
|
use stats::items::{unit_stats, UnitStats};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ use crate::ship::items::bank::{BankItem, BankItemDetail};
|
|||||||
use crate::ship::items::inventory::{InventoryItem, InventoryItemDetail};
|
use crate::ship::items::inventory::{InventoryItem, InventoryItemDetail};
|
||||||
use crate::ship::items::floor::{FloorItem, FloorItemDetail};
|
use crate::ship::items::floor::{FloorItem, FloorItemDetail};
|
||||||
use crate::ship::items::apply_item::{apply_item, ApplyItemAction};
|
use crate::ship::items::apply_item::{apply_item, ApplyItemAction};
|
||||||
use crate::ship::shops::ShopItem;
|
use shops::ShopItem;
|
||||||
use crate::ship::drops::{ItemDrop, ItemDropType};
|
use crate::ship::drops::{ItemDrop, ItemDropType};
|
||||||
use crate::ship::packet::builder;
|
use crate::ship::packet::builder;
|
||||||
use crate::ship::location::AreaClient;
|
use crate::ship::location::AreaClient;
|
||||||
|
@ -9,7 +9,7 @@ use entity::character::CharacterEntityId;
|
|||||||
use entity::item::tool::ToolType;
|
use entity::item::tool::ToolType;
|
||||||
use entity::item::mag::Mag;
|
use entity::item::mag::Mag;
|
||||||
use entity::item::weapon::Weapon;
|
use entity::item::weapon::Weapon;
|
||||||
use crate::ship::shops::{ShopItem, ArmorShopItem, ToolShopItem, WeaponShopItem};
|
use shops::{ShopItem, ArmorShopItem, ToolShopItem, WeaponShopItem};
|
||||||
use crate::ship::items::state::ItemStateError;
|
use crate::ship::items::state::ItemStateError;
|
||||||
use crate::ship::items::state::{IndividualItemDetail, StackedItemDetail, AddItemResult};
|
use crate::ship::items::state::{IndividualItemDetail, StackedItemDetail, AddItemResult};
|
||||||
use crate::ship::items::floor::{FloorItem, FloorItemDetail};
|
use crate::ship::items::floor::{FloorItem, FloorItemDetail};
|
||||||
|
@ -12,7 +12,7 @@ use crate::ship::items::state::{ItemState, ItemStateProxy, IndividualItemDetail}
|
|||||||
use crate::ship::items::itemstateaction::{ItemStateAction, ItemAction};
|
use crate::ship::items::itemstateaction::{ItemStateAction, ItemAction};
|
||||||
use crate::ship::items::inventory::InventoryItem;
|
use crate::ship::items::inventory::InventoryItem;
|
||||||
use crate::ship::items::floor::FloorItem;
|
use crate::ship::items::floor::FloorItem;
|
||||||
use crate::ship::shops::ShopItem;
|
use shops::ShopItem;
|
||||||
use crate::ship::trade::TradeItem;
|
use crate::ship::trade::TradeItem;
|
||||||
use crate::ship::location::AreaClient;
|
use crate::ship::location::AreaClient;
|
||||||
use crate::ship::drops::ItemDrop;
|
use crate::ship::drops::ItemDrop;
|
||||||
|
@ -5,12 +5,12 @@ pub mod character;
|
|||||||
pub mod client;
|
pub mod client;
|
||||||
pub mod room;
|
pub mod room;
|
||||||
pub mod items;
|
pub mod items;
|
||||||
pub mod item_stats;
|
//pub mod item_stats;
|
||||||
//pub mod map;
|
//pub mod map;
|
||||||
//pub mod monster;
|
//pub mod monster;
|
||||||
pub mod drops;
|
pub mod drops;
|
||||||
pub mod packet;
|
pub mod packet;
|
||||||
pub mod quests;
|
pub mod quests;
|
||||||
pub mod shops;
|
//pub mod shops;
|
||||||
pub mod trade;
|
pub mod trade;
|
||||||
pub mod chatcommand;
|
pub mod chatcommand;
|
||||||
|
@ -10,7 +10,7 @@ use crate::ship::items::bank::BankState;
|
|||||||
use crate::ship::items::floor::FloorItem;
|
use crate::ship::items::floor::FloorItem;
|
||||||
use crate::ship::location::AreaClient;
|
use crate::ship::location::AreaClient;
|
||||||
use std::convert::TryInto;
|
use std::convert::TryInto;
|
||||||
use crate::ship::shops::ShopItem;
|
use shops::ShopItem;
|
||||||
|
|
||||||
|
|
||||||
pub fn item_drop(client: u8, target: u8, item_drop: &FloorItem) -> Result<ItemDrop, ShipError> {
|
pub fn item_drop(client: u8, target: u8, item_drop: &FloorItem) -> Result<ItemDrop, ShipError> {
|
||||||
|
@ -14,7 +14,7 @@ use entity::gateway::EntityGateway;
|
|||||||
use entity::item;
|
use entity::item;
|
||||||
use libpso::utf8_to_utf16_array;
|
use libpso::utf8_to_utf16_array;
|
||||||
use crate::ship::packet::builder;
|
use crate::ship::packet::builder;
|
||||||
use crate::ship::shops::{ShopItem, ToolShopItem, ArmorShopItem};
|
use shops::{ShopItem, ToolShopItem, ArmorShopItem};
|
||||||
use crate::ship::items::state::{ItemState, ItemStateError};
|
use crate::ship::items::state::{ItemState, ItemStateError};
|
||||||
use crate::ship::items::floor::{FloorType, FloorItemDetail};
|
use crate::ship::items::floor::{FloorType, FloorItemDetail};
|
||||||
use crate::ship::items::actions::TriggerCreateItem;
|
use crate::ship::items::actions::TriggerCreateItem;
|
||||||
|
@ -29,7 +29,7 @@ use maps::area::MapAreaError;
|
|||||||
use maps::maps::{Maps, MapsError, generate_free_roam_maps};
|
use maps::maps::{Maps, MapsError, generate_free_roam_maps};
|
||||||
use maps::enemy::RareEnemyEvent;
|
use maps::enemy::RareEnemyEvent;
|
||||||
use crate::ship::packet::handler;
|
use crate::ship::packet::handler;
|
||||||
use crate::ship::shops::{WeaponShop, ToolShop, ArmorShop};
|
use shops::{WeaponShop, ToolShop, ArmorShop};
|
||||||
use crate::ship::trade::TradeState;
|
use crate::ship::trade::TradeState;
|
||||||
use crate::ship::chatcommand;
|
use crate::ship::chatcommand;
|
||||||
|
|
||||||
|
10
stats/Cargo.toml
Normal file
10
stats/Cargo.toml
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
[package]
|
||||||
|
name = "stats"
|
||||||
|
version = "0.1.0"
|
||||||
|
edition = "2021"
|
||||||
|
|
||||||
|
[dependencies]
|
||||||
|
entity = { workspace = true }
|
||||||
|
toml = { workspace = true }
|
||||||
|
serde = { workspace = true }
|
||||||
|
lazy_static = { workspace = true }
|
1
stats/src/lib.rs
Normal file
1
stats/src/lib.rs
Normal file
@ -0,0 +1 @@
|
|||||||
|
pub mod items;
|
Loading…
x
Reference in New Issue
Block a user