CombatEventMessage.Event event = CombatEventMessage.Event.getAction(eventId);
switch (event) {
case END_COMBAT: {
int duration = ByteBufUtils.readVarInt(buffer);
int entityID = buffer.readInt();
return new CombatEventMessage(event, duration, entityID);
}
case ENTITY_DEAD: {
int playerID = ByteBufUtils.readVarInt(buffer);
int entityID = buffer.readInt();
String message = ByteBufUtils.readUTF8(buffer);
return new CombatEventMessage(event, playerID, entityID, message);
}
default:
return new CombatEventMessage(event);
}
}