public override void Deserialize(ICustomDataInput reader)
        {
            duration = reader.ReadInt();
            if (duration < 0)
            {
                throw new Exception("Forbidden value on duration = " + duration + ", it doesn't respect the following condition : duration < 0");
            }
            ageBonus            = reader.ReadShort();
            lootShareLimitMalus = reader.ReadShort();
            var limit = reader.ReadUShort();

            results = new Types.FightResultListEntry[limit];
            for (int i = 0; i < limit; i++)
            {
                results[i] = ProtocolTypeManager.GetInstance <Types.FightResultListEntry>(reader.ReadShort());
                results[i].Deserialize(reader);
            }
            limit = reader.ReadUShort();
            namedPartyTeamsOutcomes = new Types.NamedPartyTeamWithOutcome[limit];
            for (int i = 0; i < limit; i++)
            {
                namedPartyTeamsOutcomes[i] = new Types.NamedPartyTeamWithOutcome();
                namedPartyTeamsOutcomes[i].Deserialize(reader);
            }
        }
예제 #2
0
        public override void Deserialize(IDataReader reader)
        {
            duration            = reader.ReadInt();
            rewardRate          = reader.ReadVarShort();
            lootShareLimitMalus = reader.ReadShort();
            var limit = (ushort)reader.ReadUShort();

            results = new Types.FightResultListEntry[limit];
            for (int i = 0; i < limit; i++)
            {
                results[i] = ProtocolTypeManager.GetInstance <Types.FightResultListEntry>(reader.ReadUShort());
                results[i].Deserialize(reader);
            }
            limit = (ushort)reader.ReadUShort();
            namedPartyTeamsOutcomes = new Types.NamedPartyTeamWithOutcome[limit];
            for (int i = 0; i < limit; i++)
            {
                namedPartyTeamsOutcomes[i] = new Types.NamedPartyTeamWithOutcome();
                namedPartyTeamsOutcomes[i].Deserialize(reader);
            }
        }
예제 #3
0
 public override void Deserialize(BigEndianReader reader)
 {
     duration = reader.ReadInt();
     if (duration < 0)
         throw new Exception("Forbidden value on duration = " + duration + ", it doesn't respect the following condition : duration < 0");
     ageBonus = reader.ReadShort();
     lootShareLimitMalus = reader.ReadShort();
     var limit = reader.ReadUShort();
     results = new Types.FightResultListEntry[limit];
     for (int i = 0; i < limit; i++)
     {
          results[i] = Types.ProtocolTypeManager.GetInstance<Types.FightResultListEntry>(reader.ReadShort());
          results[i].Deserialize(reader);
     }
     limit = reader.ReadUShort();
     namedPartyTeamsOutcomes = new Types.NamedPartyTeamWithOutcome[limit];
     for (int i = 0; i < limit; i++)
     {
          namedPartyTeamsOutcomes[i] = new Types.NamedPartyTeamWithOutcome();
          namedPartyTeamsOutcomes[i].Deserialize(reader);
     }
 }