wowlab_types/types/data/
global.rs1use compact_str::CompactString;
2use serde::{Deserialize, Serialize};
3use wowlab_engine_macros::CopyInsert;
4
5#[derive(Clone, CopyInsert, Debug, Deserialize, Serialize)]
6pub struct ClassDataFlat {
7 pub id: i32,
8 pub name: CompactString,
9 pub filename: CompactString,
10 pub icon_file_id: i32,
11 pub file_name: CompactString,
12 pub color: CompactString,
13 pub spell_class_set: i32,
14 pub primary_stat_priority: i32,
15 pub roles_mask: i32,
16}
17
18impl Default for ClassDataFlat {
19 fn default() -> Self {
20 Self {
21 id: 0,
22 name: CompactString::default(),
23 filename: CompactString::default(),
24 icon_file_id: 0,
25 file_name: CompactString::const_new(crate::constants::DEFAULT_ICON_FILENAME),
26 color: CompactString::const_new("#FFFFFF"),
27 spell_class_set: 0,
28 primary_stat_priority: 0,
29 roles_mask: 0,
30 }
31 }
32}
33
34#[derive(Clone, CopyInsert, Debug, Deserialize, Serialize)]
35pub struct GlobalColorFlat {
36 pub id: i32,
37 pub name: CompactString,
38 pub color: CompactString,
39}
40
41impl Default for GlobalColorFlat {
42 fn default() -> Self {
43 Self {
44 id: 0,
45 name: CompactString::default(),
46 color: CompactString::const_new("#FFFFFF"),
47 }
48 }
49}
50
51#[derive(Clone, CopyInsert, Debug, Default, Deserialize, Serialize)]
52pub struct GlobalStringFlat {
53 pub id: i32,
54 pub tag: CompactString,
55 pub value: String,
56 pub flags: i32,
57}