mindustry logic execution, map- and schematic- parsing and rendering
Diffstat (limited to 'src/unit/mod.rs')
| -rw-r--r-- | src/unit/mod.rs | 40 |
1 files changed, 22 insertions, 18 deletions
diff --git a/src/unit/mod.rs b/src/unit/mod.rs index f96f5a3..b6db959 100644 --- a/src/unit/mod.rs +++ b/src/unit/mod.rs @@ -3,13 +3,13 @@ //! [source](https://github.com/Anuken/Mindustry/blob/master/core/src/mindustry/content/UnitTypes.java) use crate::content::content_enum; use crate::data::command::UnitCommand; -use crate::data::dynamic::DynSerializer; +use crate::data::dynamic::DynData; use crate::data::entity_mapping::UnitClass; use crate::data::{DataRead, ReadError}; use crate::item::Type as Item; use crate::modifier::Type as Status; use crate::team::Team; -use crate::Serializer; +use crate::Serializable; content_enum! { pub enum Type / Unit for u16 | TryFromU16Error { @@ -182,22 +182,26 @@ impl UnitClass { state.flag = buff.read_i64()?; state.health = buff.read_f32()?; state.is_shooting = buff.read_bool()?; - dbg!(&state); - read_tile(buff)?; - read_mounts(buff)?; - read_plans(buff)?; - state.rotation = buff.read_f32()?; - state.shield = buff.read_f32()?; - buff.skip(1)?; // spawned_by_core - state.stack = read_stack(buff)?; - state.status = read_status(buff)?; - state.team = Team::of(buff.read_u8()?); - let ty = Type::try_from(buff.read_u16()?).unwrap(); - buff.skip(1)?; // update_building - state.velocity = (buff.read_f32()?, buff.read_f32()?); - state.position = (buff.read_f32()?, buff.read_f32()?); + // TODO apparently i fucked up my impl + // dbg!(&state); + // read_tile(buff)?; + // read_mounts(buff)?; + // read_plans(buff)?; + // state.rotation = buff.read_f32()?; + // state.shield = buff.read_f32()?; + // buff.skip(1)?; // spawned_by_core + // state.stack = read_stack(buff)?; + // state.status = read_status(buff)?; + // state.team = Team::of(buff.read_u8()?); + // let ty = Type::try_from(buff.read_u16()?).unwrap(); + // buff.skip(1)?; // update_building + // state.velocity = (buff.read_f32()?, buff.read_f32()?); + // state.position = (buff.read_f32()?, buff.read_f32()?); - Ok(Unit { state, ty }) + Ok(Unit { + state, + ty: Type::Alpha, + }) } } @@ -254,7 +258,7 @@ fn read_plan(buff: &mut DataRead) -> Result<(), ReadError> { buff.skip(4)?; if ty != 1 { buff.skip(4)?; - let _ = DynSerializer.deserialize(buff).unwrap(); + let _ = DynData::deserialize(buff).unwrap(); } Ok(()) } |