Make SecondaryEffect a trait
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
@@ -18,7 +18,7 @@ use pkmn_lib::script_implementations::wasm::script_resolver::WebAssemblyScriptRe
|
||||
use pkmn_lib::static_data::{
|
||||
AbilityImpl, AbilityLibrary, BattleItemCategory, DataLibrary, EffectParameter, Form, GrowthRateLibrary, ItemImpl,
|
||||
ItemLibrary, LearnableMoves, LibrarySettings, LookupGrowthRate, MoveData, MoveLibrary, NatureImpl, NatureLibrary,
|
||||
SecondaryEffect, Species, StaticData, StaticStatisticSet, Statistic, TypeLibrary,
|
||||
SecondaryEffect, SecondaryEffectImpl, Species, StaticData, StaticStatisticSet, Statistic, TypeLibrary,
|
||||
};
|
||||
use pkmn_lib::StringKey;
|
||||
|
||||
@@ -182,7 +182,7 @@ pub fn load_moves(path: &String, lib: &mut StaticData) {
|
||||
let pp = move_data.get("pp").unwrap().as_i64().unwrap() as u8;
|
||||
let target = serde_json::from_value(move_data.get("target").unwrap().clone()).unwrap();
|
||||
let priority = move_data.get("priority").unwrap().as_i64().unwrap() as i8;
|
||||
let secondary_effect = if let Some(v) = move_data.get("effect") {
|
||||
let secondary_effect: Option<Box<dyn SecondaryEffect>> = if let Some(v) = move_data.get("effect") {
|
||||
let mut chance = -1.0;
|
||||
if let Some(chance_value) = v.get("chance") {
|
||||
chance = chance_value.as_f64().unwrap() as f32;
|
||||
@@ -195,11 +195,11 @@ pub fn load_moves(path: &String, lib: &mut StaticData) {
|
||||
}
|
||||
}
|
||||
|
||||
Some(SecondaryEffect::new(
|
||||
Some(Box::new(SecondaryEffectImpl::new(
|
||||
chance,
|
||||
v.get("name").unwrap().as_str().unwrap().into(),
|
||||
parameters,
|
||||
))
|
||||
)))
|
||||
} else {
|
||||
None
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user