@Override
    public void deserialize(Buffer buf) {
        super.deserialize(buf);
        level = buf.readUByte();
        if (level < 1 || level > 200)
            throw new RuntimeException("Forbidden value on level = " + level + ", it doesn't respect the following condition : level < 1 || level > 200");
        int limit = buf.readUShort();
        additional = new FightResultAdditionalData[limit];
        for (int i = 0; i < limit; i++) {
            additional[i] = ProtocolTypeManager.getInstance().build(buf.readShort());
            additional[i].deserialize(buf);
        }
    }