public HitboxCommand(ArraySlice <byte> data, string name = "Hitbox") : base(data, null, 0x14) { ID = data.GetInt16(0) >> 7 & 0x7; UnknownR = ((data[1] & 0x7B) >> 2); BoneID = data.GetInt16(1) >> 3 & 0x7F; UnknownO = data[2] >> 1 & 0x07; HitboxSize = data.GetInt16(4); ZOffset = data.GetInt16(6); YOffset = data.GetInt16(8); XOffset = data.GetInt16(10); UnknownQ = (data[15]) >> 2 & 0x7; HurtboxInteraction = (HurtboxInteractionFlags)((data[15]) >> 0 & 0x3); BaseKnockback = (short)(data.GetInt32(16) >> 7); UnknownV = (data[17]) >> 1 & 0x1; HitsAir = data.GetBoolean(19); Damage = data.GetInt16(2) & 0x1FF; KnockbackGrowth = data.GetInt16() >> 6 & 0x1FF; WeightDependantKnockback = data.GetInt16(14) >> 5 & 0x1FF; SFX = data.GetInt16(17) >> 2 & 0x3F; HitsGround = data.GetBoolean(19, 1); Element = (ElementType)(data.GetInt16(17) >> 2 & 0x1F); Angle = data.GetInt16(12) >> 7 & 0xFFFF; }
public VisibilityCommand(ArraySlice <byte> data) : base(data, "Visibility") { Visible = data.GetBoolean(3); }