]> git.lizzy.rs Git - mt_net.git/commitdiff
Fix various packets
authorLizzy Fleckenstein <eliasfleckenstein@web.de>
Mon, 13 Feb 2023 16:34:48 +0000 (17:34 +0100)
committerLizzy Fleckenstein <eliasfleckenstein@web.de>
Mon, 13 Feb 2023 16:34:48 +0000 (17:34 +0100)
src/to_clt.rs
src/to_clt/hud.rs
src/to_clt/media.rs

index 00d952dc8444047a4c862ee3963426f36382e26c..ce6216d95e4223c603684306447af6979273ea34 100644 (file)
@@ -132,11 +132,13 @@ pub enum ToCltPkt {
         #[mt(len = "(u32, (DefCfg, u32))")]
         files: HashMap<String, Vec<u8>>, // name -> payload
     } = 56,
+    #[mt(size = "u32", zlib)]
     NodeDefs {
+        #[mt(const_before = "1u8")] // version
         defs: Vec<NodeDef>,
     } = 58,
     AnnounceMedia {
-        files: HashMap<String, String>, // name -> base64 hash
+        files: HashMap<String, String>, // name -> base64 sha1 hash
         url: String,
     } = 60,
     #[mt(size = "u32", zlib)]
@@ -189,6 +191,9 @@ pub enum ToCltPkt {
         fast_speed: f32,
         climb_speed: f32,
         jump_speed: f32,
+        fluidity: f32,
+        smoothing: f32,
+        sink: f32,
         gravity: f32,
     } = 69,
     SpawnParticle {
index 64574f7659f795852633c86233684950dc1193ce..64fe26b1fd1c91b0637e6686fec91c2b615c2734 100644 (file)
@@ -19,7 +19,8 @@ pub enum HudChange {
     Align([f32; 2]),
     Offset([f32; 2]),
     WorldPos([f32; 3]),
-    ZIndex(i32),
+    Size([i32; 2]),
+    ZIndex(i32), // this is i16 in HudAdd, minetest is weird
     Text2(String),
     Style(EnumSet<HudStyleFlag>),
 }
@@ -47,7 +48,8 @@ pub struct HudElement {
     pub align: [f32; 2],
     pub offset: [f32; 2],
     pub world_pos: [f32; 3],
-    pub z_index: i32,
+    pub size: [i32; 2],
+    pub z_index: i16,
     pub text_2: String,
     pub style: EnumSet<HudStyleFlag>,
 }
@@ -67,7 +69,8 @@ impl HudElement {
             Align(v) => self.align = v,
             Offset(v) => self.offset = v,
             WorldPos(v) => self.world_pos = v,
-            ZIndex(v) => self.z_index = v,
+            Size(v) => self.size = v,
+            ZIndex(v) => self.z_index = v.try_into().unwrap_or(0),
             Text2(v) => self.text_2 = v,
             Style(v) => self.style = v,
         }
@@ -87,7 +90,7 @@ pub enum HudFlag {
 
 #[mt_derive(to = "clt", repr = "u16", tag = "attribute", content = "value")]
 pub enum HotbarParam {
-    Size(#[mt(const_before = "4u16")] u32) = 0,
+    Size(#[mt(const_before = "4u16")] u32) = 1,
     Image(String),
     SelectionImage(String),
 }
index a6ecd32c119bd1f7721e327e1ae80fdc3cbe5b78..50c709fb9e536a35151c6557263b537c92b77dec 100644 (file)
@@ -12,7 +12,7 @@ pub struct NodeDef; // TODO
 #[mt_derive(to = "clt")]
 pub struct NodeMeta; // TODO
 
-#[mt_derive(to = "clt", repr = "u16")]
+#[mt_derive(to = "clt", repr = "u8")]
 pub enum SoundSrcType {
     Nowhere = 0,
     Pos,