public SetRangedSiegeWeaponState(
     RangedSiegeWeapon rangedSiegeWeapon,
     RangedSiegeWeapon.WeaponState state)
 {
     this.RangedSiegeWeapon = rangedSiegeWeapon;
     this.State             = state;
 }
        protected override bool OnRead()
        {
            bool bufferReadValid = true;

            this.RangedSiegeWeapon = GameNetworkMessage.ReadMissionObjectReferenceFromPacket(ref bufferReadValid) as RangedSiegeWeapon;
            this.State             = (RangedSiegeWeapon.WeaponState)GameNetworkMessage.ReadIntFromPacket(CompressionMission.RangedSiegeWeaponStateCompressionInfo, ref bufferReadValid);
            return(bufferReadValid);
        }