configs/
mana.rs

1use schemars::JsonSchema;
2use serde::{Deserialize, Serialize};
3use tsify_next::Tsify;
4
5/// Balance settings of the character mana pool.
6///
7/// Deliberately forgiving at this stage: the pool and the regen are picked so a
8/// normal fight never runs dry and only a very long fight (tens of seconds of
9/// uninterrupted casting) empties it. Mana exists here as the foundation the
10/// ability stones price against, not as a resource to micromanage.
11#[derive(Clone, Debug, Deserialize, Serialize, JsonSchema, Tsify)]
12pub struct ManaSettings {
13    /// Full pool, granted at the start of EVERY fight.
14    #[schemars(
15        title = "Пул маны персонажа",
16        description = "Полный запас маны, который выдаётся в начале каждого боя. Между боями мана не переносится."
17    )]
18    pub pool: f64,
19
20    /// Points restored per second of fight time.
21    #[schemars(
22        title = "Реген маны в секунду",
23        description = "Сколько маны восстанавливается за секунду боя."
24    )]
25    pub regen_per_second: f64,
26}