Archived
0

public variable to enum in PlayerListItemPacket

This commit is contained in:
2018-08-12 19:39:25 +03:00
parent d27228d640
commit b811653795
2 changed files with 19 additions and 16 deletions

View File

@@ -4,10 +4,7 @@
*/
package mc.core.network.proto_1_12_2.packets;
import lombok.Data;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;
import lombok.*;
import lombok.extern.slf4j.Slf4j;
import mc.core.network.NetOutputStream;
import mc.core.network.SCPacket;
@@ -22,11 +19,17 @@ import java.util.*;
@Setter
@ToString
public class PlayerListItemPacket implements SCPacket {
public static final int ACTION_ADD_PLAYER = 0,
ACTION_UPDATE_GAMEMODE = 1,
ACTION_UPDATE_LATENCY = 2,
ACTION_UPDATE_DISPLAY_NAME = 3,
ACTION_REMOVE_PLAYER = 4;
@RequiredArgsConstructor
public enum Action {
ADD_PLAYER(0),
UPDATE_GAMEMODE(1),
UPDATE_LATENCY(2),
UPDATE_DISPLAY_NAME(3),
REMOVE_PLAYER(4);
@Getter
private final int id;
}
@Data
@ToString
@@ -40,18 +43,18 @@ public class PlayerListItemPacket implements SCPacket {
private Text displayName;
}
private int action;
private Action action;
private List<PlayerData> listPlayers = new ArrayList<>();
@Override
public void writeSelf(NetOutputStream netStream) {
netStream.writeVarInt(action);
netStream.writeVarInt(action.id);
netStream.writeVarInt(listPlayers.size());
for (PlayerData playerData : listPlayers) {
netStream.writeUUID(playerData.uuid);
if (action == ACTION_ADD_PLAYER) {
if (action == Action.ADD_PLAYER) {
netStream.writeString(playerData.name);
netStream.writeVarInt(playerData.properties.size());
@@ -62,15 +65,15 @@ public class PlayerListItemPacket implements SCPacket {
}
}
if (action == ACTION_ADD_PLAYER || action == ACTION_UPDATE_GAMEMODE) {
if (action == Action.ADD_PLAYER || action == Action.UPDATE_GAMEMODE) {
netStream.writeVarInt(playerData.gameMode.getId());
}
if (action == ACTION_ADD_PLAYER || action == ACTION_UPDATE_LATENCY) {
if (action == Action.ADD_PLAYER || action == Action.UPDATE_LATENCY) {
netStream.writeVarInt(playerData.ping);
}
if (action == ACTION_ADD_PLAYER || action == ACTION_UPDATE_DISPLAY_NAME) {
if (action == Action.ADD_PLAYER || action == Action.UPDATE_DISPLAY_NAME) {
netStream.writeBoolean(playerData.hasDisplayName);
if (playerData.hasDisplayName) {
netStream.writeString(TextMapper.getInstance().mapping(playerData.displayName));

View File

@@ -96,7 +96,7 @@ public class LoginHandler extends AbstractStateHandler implements LoginStateHand
// Send <Tab> items
PlayerListItemPacket pkt5 = new PlayerListItemPacket();
pkt5.setAction(PlayerListItemPacket.ACTION_ADD_PLAYER);
pkt5.setAction(PlayerListItemPacket.Action.ADD_PLAYER);
PlayerListItemPacket.PlayerData playerData = new PlayerListItemPacket.PlayerData();
playerData.setUuid(player.getUUID());
playerData.setName(player.getName());