@Override
  public void deserialize(DataReader reader) {

    this.slaveId = reader.read_i32();

    int spellCooldowns_length = reader.read_ui16();

    this.spellCooldowns =
        new com.ankamagames.dofus.network.types.game.context.fight.GameFightSpellCooldown
            [spellCooldowns_length];

    for (int i = 0; i < spellCooldowns_length; i++) {

      com.ankamagames.dofus.network.types.game.context.fight.GameFightSpellCooldown
          spellCooldowns_it =
              new com.ankamagames.dofus.network.types.game.context.fight.GameFightSpellCooldown();

      spellCooldowns_it.deserialize(reader);
      this.spellCooldowns[i] = spellCooldowns_it;
    }

    this.summonCount = reader.read_i8();

    this.bombCount = reader.read_i8();
  }
  @Override
  public void deserialize(DataReader reader) {

    this.recrutedName = reader.read_str();

    this.invitationState = reader.read_i8();
  }
  @Override
  public void deserialize(DataReader reader) {

    this.playerId = reader.read_vi32();

    this.accountId = reader.read_i32();
  }
  @Override
  public void deserialize(DataReader reader) {

    int startedAchievements_length = reader.read_ui16();

    this.startedAchievements =
        new com.ankamagames.dofus.network.types.game.achievement.Achievement
            [startedAchievements_length];

    for (int i = 0; i < startedAchievements_length; i++) {

      com.ankamagames.dofus.network.types.game.achievement.Achievement startedAchievements_it =
          new com.ankamagames.dofus.network.types.game.achievement.Achievement();

      startedAchievements_it.deserialize(reader);
      this.startedAchievements[i] = startedAchievements_it;
    }

    int finishedAchievements_length = reader.read_ui16();

    this.finishedAchievements =
        new com.ankamagames.dofus.network.types.game.achievement.Achievement
            [finishedAchievements_length];

    for (int i = 0; i < finishedAchievements_length; i++) {

      com.ankamagames.dofus.network.types.game.achievement.Achievement finishedAchievements_it =
          new com.ankamagames.dofus.network.types.game.achievement.Achievement();

      finishedAchievements_it.deserialize(reader);
      this.finishedAchievements[i] = finishedAchievements_it;
    }
  }
  @Override
  public void deserialize(DataReader reader) {

    this.alignmentSide = reader.read_i8();

    this.alignmentValue = reader.read_i8();

    this.alignmentGrade = reader.read_i8();

    this.characterPower = reader.read_vi32();
  }
  @Override
  public void deserialize(DataReader reader) {

    super.deserialize(reader);

    this.elementEventId = reader.read_i8();
  }
  @Override
  public void deserialize(DataReader reader) {

    super.deserialize(reader);

    this.playerId = reader.read_vi32();
  }
  @Override
  public void deserialize(DataReader reader) {

    super.deserialize(reader);

    int object_length = reader.read_ui16();

    this.object = new com.ankamagames.dofus.network.types.game.data.items.ObjectItem[object_length];

    for (int i = 0; i < object_length; i++) {

      com.ankamagames.dofus.network.types.game.data.items.ObjectItem object_it =
          new com.ankamagames.dofus.network.types.game.data.items.ObjectItem();

      object_it.deserialize(reader);
      this.object[i] = object_it;
    }
  }
  @Override
  public void deserialize(DataReader reader) {

    this.kamasTotal = reader.read_vi32();
  }
  @Override
  public void deserialize(DataReader reader) {

    this.ratio = reader.read_i8();
  }
  @Override
  public void deserialize(DataReader reader) {

    this.enable = reader.read_bool();
  }
  @Override
  public void deserialize(DataReader reader) {

    this.objGenericId = reader.read_vi16();
  }
  @Override
  public void deserialize(DataReader reader) {

    this.spellId = reader.read_i32();
  }