]> git.lizzy.rs Git - mt_net.git/blobdiff - src/to_clt/env.rs
Implement NodeMeta and add Inventory stub
[mt_net.git] / src / to_clt / env.rs
diff --git a/src/to_clt/env.rs b/src/to_clt/env.rs
deleted file mode 100644 (file)
index ecd3db3..0000000
+++ /dev/null
@@ -1,198 +0,0 @@
-use super::*;
-
-#[mt_derive(to = "clt", repr = "str")]
-pub enum ObjVisual {
-    Cube,
-    Sprite,
-    UprightSprite,
-    Mesh,
-    Wielditem,
-    Item,
-}
-
-#[mt_derive(to = "clt")]
-pub struct ObjProps {
-    #[mt(const_before = "4u8")] // version
-    pub max_hp: u16, // player only
-    pub collide_with_nodes: bool,
-    pub weight: f32, // deprecated
-    pub collision_box: ([f32; 3], [f32; 3]),
-    pub selection_box: ([f32; 3], [f32; 3]),
-    pub pointable: bool,
-    pub visual: ObjVisual,
-    pub visual_size: [f32; 3],
-    pub textures: Vec<String>,
-    pub sprite_sheet_size: [i16; 2], // in sprites
-    pub sprite_pos: [i16; 2],        // in sprite sheet
-    pub visible: bool,
-    pub make_footstep_sounds: bool,
-    pub rotate_speed: f32, // in radians per second
-    pub mesh: String,
-    pub colors: Vec<Color>,
-    pub collide_with_objs: bool,
-    pub step_height: f32,
-    pub face_rotate_dir: bool,
-    pub face_rotate_dir_off: f32, // in degrees
-    pub backface_cull: bool,
-    pub nametag: String,
-    pub nametag_color: Color,
-    pub face_rotate_speed: f32, // in degrees per second
-    pub infotext: String,
-    pub itemstring: String,
-    pub glow: i8,
-    pub max_breath: u16, // player only
-    pub eye_height: f32, // player only
-    pub zoom_fov: f32,   // in degrees. player only
-    pub use_texture_alpha: bool,
-    pub dmg_texture_mod: String, // suffix
-    pub shaded: bool,
-    pub show_on_minimap: bool,
-    pub nametag_bg: Color,
-}
-
-#[mt_derive(to = "clt")]
-pub struct ObjPos {
-    pub pos: [f32; 3],
-    pub vel: [f32; 3],
-    pub acc: [f32; 3],
-    pub rot: [f32; 3],
-    pub interpolate: bool,
-    pub end: bool,
-    pub update_interval: f32,
-}
-
-#[mt_derive(to = "clt")]
-pub struct ObjSprite {
-    pub frame0: [i16; 2],
-    pub frames: u16,
-    pub frame_duration: f32,
-    pub view_angle_frames: bool,
-}
-
-#[mt_derive(to = "clt")]
-pub struct ObjAnim {
-    pub frames: [i32; 2],
-    pub speed: f32,
-    pub blend: f32,
-    pub no_loop: bool,
-}
-
-#[mt_derive(to = "clt")]
-pub struct ObjBonePos {
-    pub pos: [f32; 3],
-    pub rot: [f32; 3],
-}
-
-#[mt_derive(to = "clt")]
-pub struct ObjAttach {
-    pub parent_id: u16,
-    pub bone: String,
-    pub pos: [f32; 3],
-    pub rot: [f32; 3],
-    pub force_visible: bool,
-}
-
-#[mt_derive(to = "clt")]
-pub struct ObjPhysicsOverride {
-    pub walk: f32,
-    pub jump: f32,
-    pub gravity: f32,
-    // the following are player only
-    pub no_sneak: bool,
-    pub no_sneak_glitch: bool,
-    pub old_sneak: bool,
-}
-
-pub const GENERIC_CAO: u8 = 101;
-
-#[mt_derive(to = "clt", repr = "u8", tag = "type", content = "data")]
-pub enum ObjMsg {
-    Props(ObjProps) = 0,
-    Pos(ObjPos),
-    TextureMod {
-        #[serde(rename = "mod")]
-        texture_mod: String,
-    },
-    Sprite(ObjSprite),
-    Hp {
-        hp: u16,
-    },
-    ArmorGroups {
-        armor: HashMap<String, u16>,
-    },
-    Anim(ObjAnim),
-    BonePos {
-        bone: String,
-        pos: ObjBonePos,
-    },
-    Attach(ObjAttach),
-    PhysicsOverride(ObjPhysicsOverride),
-    SpawnInfant {
-        #[mt(const_after = "GENERIC_CAO")]
-        id: u16,
-    } = 11,
-    AnimSpeed {
-        speed: f32,
-    },
-}
-
-#[mt_derive(to = "clt")]
-pub struct ObjIdMsg {
-    pub id: u16,
-    #[mt(size = "u16")]
-    pub msg: ObjMsg,
-}
-
-#[mt_derive(to = "clt")]
-pub struct ObjInitMsg(#[mt(size = "u32")] pub ObjMsg);
-
-#[mt_derive(to = "clt")]
-pub struct ObjInitData {
-    #[mt(const_before = "1u8")] // version
-    pub name: String,
-    pub is_player: bool,
-    pub id: u16,
-    pub pos: [f32; 3],
-    pub rot: [f32; 3],
-    pub hp: u16,
-    #[mt(len = "u8")]
-    pub msgs: Vec<ObjInitMsg>,
-}
-
-#[mt_derive(to = "clt")]
-pub struct ObjAdd {
-    pub id: u16,
-    #[mt(const_before = "GENERIC_CAO")]
-    #[mt(size = "u32")]
-    pub init_data: ObjInitData,
-}
-
-#[mt_derive(to = "clt", repr = "u8", enumset)]
-pub enum MapBlockFlag {
-    IsUnderground = 0,
-    DayNightDiff,
-    LightExpired,
-    NotGenerated,
-}
-
-pub const ALWAYS_LIT_FROM: u16 = 0xf000;
-
-pub const CONTENT_UNKNOWN: u16 = 125;
-pub const CONTENT_AIR: u16 = 126;
-pub const CONTENT_IGNORE: u16 = 127;
-
-#[mt_derive(to = "clt")]
-pub struct MapBlock {
-    pub flags: EnumSet<MapBlockFlag>,
-    pub lit_from: u16,
-    #[mt(const_before = "2u8")] // param0 size
-    #[mt(const_before = "2u8")] // param1 size + param2 size
-    #[serde(with = "serde_arrays")]
-    pub param_0: [u16; 4096],
-    #[serde(with = "serde_arrays")]
-    pub param_1: [u8; 4096],
-    #[serde(with = "serde_arrays")]
-    pub param_2: [u8; 4096],
-    #[mt(const_after = "2u8")] // version
-    pub node_metas: HashMap<u16, NodeMeta>,
-}