nil_core/military/unit/stats/
mod.rs1pub mod haul;
5pub mod power;
6pub mod prelude;
7pub mod ranged_debuff;
8pub mod speed;
9
10use bon::Builder;
11use prelude::*;
12use serde::{Deserialize, Serialize};
13
14#[derive(Builder, Clone, Debug, Deserialize, Serialize)]
15#[serde(rename_all = "camelCase")]
16#[builder(const)]
17pub struct UnitStats {
18 attack: Power,
19 infantry_defense: Power,
20 cavalry_defense: Power,
21 ranged_defense: Power,
22 ranged_debuff: RangedDebuff,
23 speed: Speed,
24 haul: Haul,
25}
26
27impl UnitStats {
28 #[inline]
29 pub fn attack(&self) -> Power {
30 self.attack
31 }
32
33 #[inline]
34 pub fn infantry_defense(&self) -> Power {
35 self.infantry_defense
36 }
37
38 #[inline]
39 pub fn cavalry_defense(&self) -> Power {
40 self.cavalry_defense
41 }
42
43 #[inline]
44 pub fn ranged_defense(&self) -> Power {
45 self.ranged_defense
46 }
47
48 #[inline]
49 pub fn ranged_debuff(&self) -> RangedDebuff {
50 self.ranged_debuff
51 }
52
53 #[inline]
54 pub fn speed(&self) -> Speed {
55 self.speed
56 }
57
58 #[inline]
59 pub fn haul(&self) -> Haul {
60 self.haul
61 }
62}