2022-06-11 18:51:37 +00:00
|
|
|
use crate::static_data::EffectParameter;
|
2022-06-11 15:22:46 +00:00
|
|
|
use crate::StringKey;
|
|
|
|
|
|
|
|
#[derive(Debug)]
|
|
|
|
pub struct Ability {
|
|
|
|
name: StringKey,
|
|
|
|
effect: StringKey,
|
|
|
|
parameters: Vec<EffectParameter>,
|
|
|
|
}
|
|
|
|
|
|
|
|
impl Ability {
|
|
|
|
pub fn new(name: &StringKey, effect: &StringKey, parameters: Vec<EffectParameter>) -> Self {
|
|
|
|
Self {
|
|
|
|
name: name.clone(),
|
|
|
|
effect: effect.clone(),
|
|
|
|
parameters,
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
pub fn name(&self) -> &StringKey {
|
|
|
|
&self.name
|
|
|
|
}
|
|
|
|
pub fn effect(&self) -> &StringKey {
|
|
|
|
&self.effect
|
|
|
|
}
|
|
|
|
pub fn parameters(&self) -> &Vec<EffectParameter> {
|
|
|
|
&self.parameters
|
|
|
|
}
|
|
|
|
}
|