public override void Deserialize(IDataReader reader) { base.Deserialize(reader); objectGID = reader.ReadVarShort(); if (objectGID < 0) { throw new Exception("Forbidden value on objectGID = " + objectGID + ", it doesn't respect the following condition : objectGID < 0"); } var limit = reader.ReadShort(); var effects_ = new ObjectEffect[limit]; for (int i = 0; i < limit; i++) { effects_[i] = Types.ProtocolTypeManager.GetInstance <ObjectEffect>(reader.ReadShort()); effects_[i].Deserialize(reader); } effects = effects_; objectUID = reader.ReadVarInt(); if (objectUID < 0) { throw new Exception("Forbidden value on objectUID = " + objectUID + ", it doesn't respect the following condition : objectUID < 0"); } quantity = reader.ReadVarInt(); if (quantity < 0) { throw new Exception("Forbidden value on quantity = " + quantity + ", it doesn't respect the following condition : quantity < 0"); } }
public virtual void Deserialize(IDataReader reader) { objectUID = reader.ReadVarInt(); if (objectUID < 0) { throw new Exception("Forbidden value on objectUID = " + objectUID + ", it doesn't respect the following condition : objectUID < 0"); } var limit = reader.ReadShort(); var effects_ = new ObjectEffect[limit]; for (int i = 0; i < limit; i++) { effects_[i] = Types.ProtocolTypeManager.GetInstance <ObjectEffect>(reader.ReadShort()); effects_[i].Deserialize(reader); } effects = effects_; limit = reader.ReadShort(); var prices_ = new long[limit]; for (int i = 0; i < limit; i++) { prices_[i] = reader.ReadVarLong(); if (prices_[i] > 9007199254740990) { throw new Exception("Forbidden value on prices_[i] = " + prices_[i] + ", it doesn't respect the following condition : prices_[i] > 9007199254740990"); } } prices = prices_; }