Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -413,7 +413,7 @@ void onDeactivated() {
removeEntry(slotUUID[index], slotID[index]);
Team t = new Team();
t.setName(slotID[index]);
t.setMode(Team.Mode.REMOVE);
t.setMode(1);
sendPacket(t);
}
}
Expand All @@ -430,7 +430,7 @@ private void updateSize() {
updateSlot(tabOverlay, index);
Team t = new Team();
t.setName(slotID[index]);
t.setMode(Team.Mode.CREATE);
t.setMode(0);
t.setPrefix(new ComponentHolder(is13OrLater ? ProtocolVersion.MINECRAFT_1_13 : ProtocolVersion.MINECRAFT_1_12_2, tabOverlay.text0[index]));
t.setDisplayName(new ComponentHolder(is13OrLater ? ProtocolVersion.MINECRAFT_1_13 : ProtocolVersion.MINECRAFT_1_12_2, ""));
t.setSuffix(new ComponentHolder(is13OrLater ? ProtocolVersion.MINECRAFT_1_13 : ProtocolVersion.MINECRAFT_1_12_2, tabOverlay.text1[index]));
Expand All @@ -444,7 +444,7 @@ private void updateSize() {
removeEntry(slotUUID[index], slotID[index]);
Team t = new Team();
t.setName(slotID[index]);
t.setMode(Team.Mode.REMOVE);
t.setMode(1);
sendPacket(t);
}
}
Expand All @@ -466,7 +466,7 @@ private void updateText(CustomTabOverlay tabOverlay, int index) {
if (index < size) {
Team packet = new Team();
packet.setName(slotID[index]);
packet.setMode(Team.Mode.UPDATE_INFO);
packet.setMode(2);
packet.setPrefix(new ComponentHolder(is13OrLater ? ProtocolVersion.MINECRAFT_1_13 : ProtocolVersion.MINECRAFT_1_12_2, tabOverlay.text0[index]));
packet.setDisplayName(new ComponentHolder(is13OrLater ? ProtocolVersion.MINECRAFT_1_13 : ProtocolVersion.MINECRAFT_1_12_2, ""));
packet.setSuffix(new ComponentHolder(is13OrLater ? ProtocolVersion.MINECRAFT_1_13 : ProtocolVersion.MINECRAFT_1_12_2, tabOverlay.text1[index]));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -299,7 +299,7 @@ public PacketListenerResult onTeamPacket(Team packet) {
enterContentOperationMode(ContentOperationMode.PASS_TROUGH);
}

if (Team.Mode.REMOVE.equals(packet.getMode())) {
if (packet.getMode() == 1) {
TeamEntry team = serverTeams.remove(packet.getName());
if (team != null) {
for (String player : team.getPlayers()) {
Expand All @@ -309,15 +309,15 @@ public PacketListenerResult onTeamPacket(Team packet) {
} else {
// Create or get old team
TeamEntry teamEntry;
if (Team.Mode.CREATE.equals(packet.getMode())) {
if (packet.getMode() == 0) {
teamEntry = new TeamEntry();
serverTeams.put(packet.getName(), teamEntry);
} else {
teamEntry = serverTeams.get(packet.getName());
}

if (teamEntry != null) {
if (Team.Mode.CREATE.equals(packet.getMode()) || Team.Mode.UPDATE_INFO.equals(packet.getMode())) {
if (packet.getMode() == 0 || packet.getMode() == 2) {
teamEntry.setDisplayName(packet.getDisplayName());
teamEntry.setPrefix(packet.getPrefix());
teamEntry.setSuffix(packet.getSuffix());
Expand All @@ -328,7 +328,7 @@ public PacketListenerResult onTeamPacket(Team packet) {
}
if (packet.getPlayers() != null) {
for (String s : packet.getPlayers()) {
if (Team.Mode.CREATE.equals(packet.getMode()) || Team.Mode.ADD_PLAYER.equals(packet.getMode())) {
if (packet.getMode() == 0 || packet.getMode() == 3) {
if (playerToTeamMap.containsKey(s)) {
TeamEntry previousTeam = serverTeams.get(playerToTeamMap.get(s));
// previousTeam shouldn't be null (that's inconsistent with playerToTeamMap, but apparently it happens)
Expand Down Expand Up @@ -1032,7 +1032,7 @@ private String getCustomSlotUsername(int index) {
@Override
void onTeamPacketPreprocess(Team packet) {
if (!using80Slots) {
if (Team.Mode.REMOVE.equals(packet.getMode())) {
if (packet.getMode() == 1) {
TeamEntry teamEntry = serverTeams.get(packet.getName());
if (teamEntry != null) {
for (String playerName : teamEntry.getPlayers()) {
Expand All @@ -1045,7 +1045,7 @@ void onTeamPacketPreprocess(Team packet) {
}
}
} else {
if (Team.Mode.REMOVE.equals(packet.getMode())) {
if (packet.getMode() == 1) {
TeamEntry teamEntry = serverTeams.get(packet.getName());
if (teamEntry != null) {
for (String playerName : teamEntry.getPlayers()) {
Expand All @@ -1067,8 +1067,8 @@ PacketListenerResult onTeamPacket(Team packet) {
if (!using80Slots) {
boolean modified = false;
switch (packet.getMode()) {
case CREATE:
case ADD_PLAYER:
case 0:
case 3:
int count = 0;
String[] players = packet.getPlayers();
for (int i = 0; i < players.length; i++) {
Expand Down Expand Up @@ -1097,7 +1097,7 @@ PacketListenerResult onTeamPacket(Team packet) {
packet.setPlayers(filteredPlayers);
}
break;
case REMOVE_PLAYER:
case 4:
count = 0;
players = packet.getPlayers();
for (int i = 0; i < players.length; i++) {
Expand All @@ -1123,7 +1123,7 @@ PacketListenerResult onTeamPacket(Team packet) {
packet.setPlayers(filteredPlayers);
}
break;
case UPDATE_INFO:
case 2:
TeamEntry teamEntry = serverTeams.get(packet.getName());
if (teamEntry != null) {
for (String playerName : teamEntry.getPlayers()) {
Expand All @@ -1143,8 +1143,8 @@ PacketListenerResult onTeamPacket(Team packet) {
} else {

switch (packet.getMode()) {
case CREATE:
case ADD_PLAYER:
case 0:
case 3:
/*
// Don't need this. Adding the player to another team will remove him from the current one.
String[] players = packet.getPlayers();
Expand All @@ -1156,7 +1156,7 @@ PacketListenerResult onTeamPacket(Team packet) {
}
}*/
break;
case REMOVE_PLAYER:
case 4:
String[] players = packet.getPlayers();
for (int i = 0; i < players.length; i++) {
String playerName = players[i];
Expand Down Expand Up @@ -2409,7 +2409,7 @@ private static String[][] toPropertiesArray(ProfileProperty textureProperty) {
private static Team createPacketTeamCreate(String name, ComponentHolder displayName, ComponentHolder prefix, ComponentHolder suffix, Team.NameTagVisibility nameTagVisibility, Team.CollisionRule collisionRule, int color, byte friendlyFire, String[] players) {
Team team = new Team();
team.setName(name);
team.setMode(Team.Mode.CREATE);
team.setMode(0);
team.setDisplayName(displayName);
team.setPrefix(prefix);
team.setSuffix(suffix);
Expand All @@ -2424,14 +2424,14 @@ private static Team createPacketTeamCreate(String name, ComponentHolder displayN
private static Team createPacketTeamRemove(String name) {
Team team = new Team();
team.setName(name);
team.setMode(Team.Mode.REMOVE);
team.setMode(1);
return team;
}

private static Team createPacketTeamUpdate(String name, ComponentHolder displayName, ComponentHolder prefix, ComponentHolder suffix, Team.NameTagVisibility nameTagVisibility, Team.CollisionRule collisionRule, int color, byte friendlyFire) {
Team team = new Team();
team.setName(name);
team.setMode(Team.Mode.UPDATE_INFO);
team.setMode(2);
team.setDisplayName(displayName);
team.setPrefix(prefix);
team.setSuffix(suffix);
Expand All @@ -2445,15 +2445,15 @@ private static Team createPacketTeamUpdate(String name, ComponentHolder displayN
private static Team createPacketTeamAddPlayers(String name, String[] players) {
Team team = new Team();
team.setName(name);
team.setMode(Team.Mode.ADD_PLAYER);
team.setMode(3);
team.setPlayers(players);
return team;
}

private static Team createPacketTeamRemovePlayers(String name, String[] players) {
Team team = new Team();
team.setName(name);
team.setMode(Team.Mode.REMOVE_PLAYER);
team.setMode(4);
team.setPlayers(players);
return team;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1251,7 +1251,7 @@ private static List<GameProfile.Property> toPropertiesList(ProfileProperty textu
private static Team createPacketTeamCreate(String name, ComponentHolder displayName, ComponentHolder prefix, ComponentHolder suffix, Team.NameTagVisibility nameTagVisibility, Team.CollisionRule collisionRule, int color, byte friendlyFire, String[] players) {
Team team = new Team();
team.setName(name);
team.setMode(Team.Mode.CREATE);
team.setMode(0);
team.setDisplayName(displayName);
team.setPrefix(prefix);
team.setSuffix(suffix);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -41,16 +41,8 @@
@EqualsAndHashCode(callSuper = false)
public class Team implements MinecraftPacket {

public enum Mode {
CREATE,
REMOVE,
UPDATE_INFO,
ADD_PLAYER,
REMOVE_PLAYER
}

private String name;
private Mode mode;
private int mode;
private ComponentHolder displayName;
private ComponentHolder prefix;
private ComponentHolder suffix;
Expand All @@ -60,28 +52,24 @@ public enum Mode {
private byte friendlyFire;
private String[] players;

// TODO: placeholder until release
private int MINECRAFT_1_21_5 = 770;

public Team(String name)
{
this.name = name;
this.mode = Mode.REMOVE;
this.mode = 1;
}

@Override
public void decode(ByteBuf buf, ProtocolUtils.Direction direction, ProtocolVersion version) {
name = ProtocolUtils.readString(buf);
mode = Mode.values()[buf.readByte()];
if (mode == Mode.CREATE || mode == Mode.UPDATE_INFO) {
mode = buf.readByte();
if (mode == 0 || mode == 2) {
displayName = ComponentHolder.read(buf, version);
if (version.compareTo(ProtocolVersion.MINECRAFT_1_13) < 0) {
prefix = ComponentHolder.read(buf, version);
suffix = ComponentHolder.read(buf, version);
}
friendlyFire = buf.readByte();
// TODO: Replace this when released
if (version.getProtocol() >= MINECRAFT_1_21_5) {
if (version.compareTo(ProtocolVersion.MINECRAFT_1_21_5) >= 0) {
nameTagVisibility = NameTagVisibility.BY_ID[ProtocolUtils.readVarInt( buf )];
collisionRule = CollisionRule.BY_ID[ProtocolUtils.readVarInt( buf )];
} else {
Expand All @@ -96,7 +84,7 @@ public void decode(ByteBuf buf, ProtocolUtils.Direction direction, ProtocolVersi
suffix = ComponentHolder.read(buf, version);
}
}
if (mode == Mode.CREATE || mode == Mode.ADD_PLAYER || mode == Mode.REMOVE_PLAYER) {
if (mode == 0 || mode == 3 || mode == 4) {
int len = ProtocolUtils.readVarInt(buf);
players = new String[len];
for (int i = 0; i < len; i++) {
Expand All @@ -108,16 +96,15 @@ public void decode(ByteBuf buf, ProtocolUtils.Direction direction, ProtocolVersi
@Override
public void encode(ByteBuf buf, ProtocolUtils.Direction direction, ProtocolVersion version) {
ProtocolUtils.writeString(buf, name);
buf.writeByte(mode.ordinal());
if (mode == Mode.CREATE || mode == Mode.UPDATE_INFO) {
buf.writeByte(mode);
if (mode == 0 || mode == 2) {
displayName.write(buf);
if (version.compareTo(ProtocolVersion.MINECRAFT_1_13) < 0) {
prefix.write(buf);
suffix.write(buf);
}
buf.writeByte(friendlyFire);
// TODO: Replace this when released
if (version.getProtocol() >= MINECRAFT_1_21_5) {
if (version.compareTo(ProtocolVersion.MINECRAFT_1_21_5) >= 0) {
ProtocolUtils.writeVarInt(buf, nameTagVisibility.ordinal());
ProtocolUtils.writeVarInt(buf, collisionRule.ordinal());
} else {
Expand All @@ -134,7 +121,7 @@ public void encode(ByteBuf buf, ProtocolUtils.Direction direction, ProtocolVersi
buf.writeByte(color);
}
}
if (mode == Mode.CREATE || mode == Mode.ADD_PLAYER || mode == Mode.REMOVE_PLAYER) {
if (mode == 0 || mode == 3 || mode == 4) {
ProtocolUtils.writeVarInt(buf, players.length);
for (String player : players) {
ProtocolUtils.writeString(buf, player);
Expand Down
Loading