aoe_djin/dat/
effect.rs

1use crate::dat::common::DeString;
2
3#[derive(Protocol, Debug, Clone, PartialEq)]
4pub struct Effects {
5    size: u32,
6    #[protocol(length_prefix(elements(size)))]
7    pub effects: Vec<Effect>,
8}
9
10#[derive(Protocol, Debug, Clone, PartialEq)]
11pub struct Effect {
12    pub name: DeString,
13    pub command_size: i16,
14    #[protocol(length_prefix(elements(command_size)))]
15    pub commands: Vec<EffectCommand>,
16}
17
18#[derive(Protocol, Debug, Clone, PartialEq)]
19pub struct EffectCommand {
20    pub command_type: u8,
21    pub a: i16,
22    pub b: i16,
23    pub c: i16,
24    pub d: f32,
25}