mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
EntityInfo assetization
* Rename skillset_config to skillset_preset * Rename loadout_config to loadout_preset * Add skillset_config for asset_specifier of skillset * Add loadout_config for asset_specifier of loadout
This commit is contained in:
parent
e832fa86f1
commit
102f6d3338
@ -25,8 +25,10 @@ pub struct EntityInfo {
|
||||
// TODO: Properly give NPCs skills
|
||||
pub level: Option<u16>,
|
||||
pub loot_drop: Option<Item>,
|
||||
pub loadout_config: Option<LoadoutConfig>,
|
||||
pub skillset_config: Option<SkillSetConfig>,
|
||||
pub loadout_config: Option<String>,
|
||||
pub loadout_preset: Option<LoadoutConfig>,
|
||||
pub skillset_config: Option<String>,
|
||||
pub skillset_preset: Option<SkillSetConfig>,
|
||||
pub pet: Option<Box<EntityInfo>>,
|
||||
// we can't use DHashMap, do we want to move that into common?
|
||||
pub trading_information: Option<crate::trade::SiteInformation>,
|
||||
@ -49,7 +51,9 @@ impl EntityInfo {
|
||||
level: None,
|
||||
loot_drop: None,
|
||||
loadout_config: None,
|
||||
loadout_preset: None,
|
||||
skillset_config: None,
|
||||
skillset_preset: None,
|
||||
pet: None,
|
||||
trading_information: None,
|
||||
}
|
||||
@ -117,16 +121,26 @@ impl EntityInfo {
|
||||
self
|
||||
}
|
||||
|
||||
pub fn with_loadout_config(mut self, config: LoadoutConfig) -> Self {
|
||||
pub fn with_loadout_config(mut self, config: String) -> Self {
|
||||
self.loadout_config = Some(config);
|
||||
self
|
||||
}
|
||||
|
||||
pub fn with_skillset_config(mut self, config: SkillSetConfig) -> Self {
|
||||
pub fn with_loadout_preset(mut self, preset: LoadoutConfig) -> Self {
|
||||
self.loadout_preset = Some(preset);
|
||||
self
|
||||
}
|
||||
|
||||
pub fn with_skillset_config(mut self, config: String) -> Self {
|
||||
self.skillset_config = Some(config);
|
||||
self
|
||||
}
|
||||
|
||||
pub fn with_skillset_preset(mut self, preset: SkillSetConfig) -> Self {
|
||||
self.skillset_preset = Some(preset);
|
||||
self
|
||||
}
|
||||
|
||||
pub fn with_automatic_name(mut self) -> Self {
|
||||
let npc_names = NPC_NAMES.read();
|
||||
self.name = match &self.body {
|
||||
|
@ -79,14 +79,14 @@ impl CharacterBehavior for Data {
|
||||
let loadout = LoadoutBuilder::build_loadout(
|
||||
body,
|
||||
None,
|
||||
self.static_data.summon_info.loadout_config,
|
||||
self.static_data.summon_info.loadout_preset,
|
||||
None,
|
||||
)
|
||||
.build();
|
||||
let stats = comp::Stats::new("Summon".to_string());
|
||||
let skill_set = SkillSetBuilder::build_skillset(
|
||||
&None,
|
||||
self.static_data.summon_info.skillset_config,
|
||||
self.static_data.summon_info.skillset_preset,
|
||||
)
|
||||
.build();
|
||||
|
||||
@ -175,6 +175,7 @@ pub struct SummonInfo {
|
||||
body: comp::Body,
|
||||
scale: Option<comp::Scale>,
|
||||
health_scaling: u16,
|
||||
loadout_config: Option<LoadoutConfig>,
|
||||
skillset_config: Option<SkillSetConfig>,
|
||||
// TODO: use assets for specifying skills and loadouts?
|
||||
loadout_preset: Option<LoadoutConfig>,
|
||||
skillset_preset: Option<SkillSetConfig>,
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user