3 #[mt_derive(to = "clt", repr = "u32", enumset)]
4 pub enum HudStyleFlag {
10 #[mt_derive(to = "clt", repr = "u8", tag = "attribute", content = "value")]
24 Style(EnumSet<HudStyleFlag>),
27 #[mt_derive(to = "clt", repr = "u8")]
37 #[mt_derive(to = "clt")]
38 pub struct HudElement {
39 pub hud_type: HudType,
49 pub world_pos: [f32; 3],
52 pub style: EnumSet<HudStyleFlag>,
56 pub fn apply_change(&mut self, change: HudChange) {
60 Pos(v) => self.pos = v,
61 Name(v) => self.name = v,
62 Scale(v) => self.scale = v,
63 Text(v) => self.text = v,
64 Number(v) => self.number = v,
65 Item(v) => self.item = v,
66 Dir(v) => self.dir = v,
67 Align(v) => self.align = v,
68 Offset(v) => self.offset = v,
69 WorldPos(v) => self.world_pos = v,
70 ZIndex(v) => self.z_index = v,
71 Text2(v) => self.text_2 = v,
72 Style(v) => self.style = v,
77 #[mt_derive(to = "clt", repr = "u32", enumset)]
88 #[mt_derive(to = "clt", repr = "u16", tag = "attribute", content = "value")]
89 pub enum HotbarParam {
90 Size(#[mt(const16 = 4)] u32) = 0,
92 SelectionImage(String),
95 #[mt_derive(to = "clt", repr = "u16")]
96 pub enum MinimapType {
103 #[mt_derive(to = "clt")]
104 pub struct MinimapMode {
105 pub minimap_type: MinimapType,
112 #[mt_derive(to = "clt", custom)]
113 pub struct MinimapModePkt {
115 modes: Vec<MinimapMode>,
118 impl MtSerialize for MinimapModePkt {
119 fn mt_serialize<C: MtCfg>(&self, writer: &mut impl Write) -> Result<(), SerializeError> {
120 C::write_len(self.modes.len(), writer)?;
121 self.current.mt_serialize::<DefaultCfg>(writer)?;
122 for item in self.modes.iter() {
123 item.mt_serialize::<DefaultCfg>(writer)?;
131 var DefaultMinimap = []MinimapMode{
133 {Type: SurfaceMinimap, Size: 256},
134 {Type: SurfaceMinimap, Size: 128},
135 {Type: SurfaceMinimap, Size: 64},
136 {Type: RadarMinimap, Size: 512},
137 {Type: RadarMinimap, Size: 256},
138 {Type: RadarMinimap, Size: 128},