Paper/patch-remap/mache-spigotflower-stripped/net/minecraft/server/ServerScoreboard.java.patch

177 lines
8.6 KiB
Diff

--- a/net/minecraft/server/ServerScoreboard.java
+++ b/net/minecraft/server/ServerScoreboard.java
@@ -37,11 +37,10 @@
}
@Override
- @Override
- protected void onScoreChanged(ScoreHolder scoreholder, Objective objective, Score score) {
- super.onScoreChanged(scoreholder, objective, score);
- if (this.trackedObjectives.contains(objective)) {
- this.server.getPlayerList().broadcastAll(new ClientboundSetScorePacket(scoreholder.getScoreboardName(), objective.getName(), score.value(), score.display(), score.numberFormat()));
+ protected void onScoreChanged(ScoreHolder scoreholder, Objective scoreboardobjective, Score scoreboardscore) {
+ super.onScoreChanged(scoreholder, scoreboardobjective, scoreboardscore);
+ if (this.trackedObjectives.contains(scoreboardobjective)) {
+ this.broadcastAll(new ClientboundSetScorePacket(scoreholder.getScoreboardName(), scoreboardobjective.getName(), scoreboardscore.value(), scoreboardscore.display(), scoreboardscore.numberFormat())); // CraftBukkit
}
this.setDirty();
@@ -58,16 +55,15 @@
@Override
public void onPlayerRemoved(ScoreHolder scoreholder) {
super.onPlayerRemoved(scoreholder);
- this.server.getPlayerList().broadcastAll(new ClientboundResetScorePacket(scoreholder.getScoreboardName(), (String) null));
+ this.broadcastAll(new ClientboundResetScorePacket(scoreholder.getScoreboardName(), (String) null)); // CraftBukkit
this.setDirty();
}
@Override
- @Override
- public void onPlayerScoreRemoved(ScoreHolder scoreholder, Objective objective) {
- super.onPlayerScoreRemoved(scoreholder, objective);
- if (this.trackedObjectives.contains(objective)) {
- this.server.getPlayerList().broadcastAll(new ClientboundResetScorePacket(scoreholder.getScoreboardName(), objective.getName()));
+ public void onPlayerScoreRemoved(ScoreHolder scoreholder, Objective scoreboardobjective) {
+ super.onPlayerScoreRemoved(scoreholder, scoreboardobjective);
+ if (this.trackedObjectives.contains(scoreboardobjective)) {
+ this.broadcastAll(new ClientboundResetScorePacket(scoreholder.getScoreboardName(), scoreboardobjective.getName())); // CraftBukkit
}
this.setDirty();
@@ -78,18 +73,18 @@
public void setDisplayObjective(DisplaySlot displayslot, @Nullable Objective objective) {
Objective objective1 = this.getDisplayObjective(displayslot);
- super.setDisplayObjective(displayslot, objective);
- if (objective1 != objective && objective1 != null) {
- if (this.getObjectiveDisplaySlotCount(objective1) > 0) {
- this.server.getPlayerList().broadcastAll(new ClientboundSetDisplayObjectivePacket(displayslot, objective));
+ super.setDisplayObjective(displayslot, scoreboardobjective);
+ if (scoreboardobjective1 != scoreboardobjective && scoreboardobjective1 != null) {
+ if (this.getObjectiveDisplaySlotCount(scoreboardobjective1) > 0) {
+ this.broadcastAll(new ClientboundSetDisplayObjectivePacket(displayslot, scoreboardobjective)); // CraftBukkit
} else {
this.stopTrackingObjective(objective1);
}
}
- if (objective != null) {
- if (this.trackedObjectives.contains(objective)) {
- this.server.getPlayerList().broadcastAll(new ClientboundSetDisplayObjectivePacket(displayslot, objective));
+ if (scoreboardobjective != null) {
+ if (this.trackedObjectives.contains(scoreboardobjective)) {
+ this.broadcastAll(new ClientboundSetDisplayObjectivePacket(displayslot, scoreboardobjective)); // CraftBukkit
} else {
this.startTrackingObjective(objective);
}
@@ -99,10 +94,9 @@
}
@Override
- @Override
- public boolean addPlayerToTeam(String s, PlayerTeam playerteam) {
- if (super.addPlayerToTeam(s, playerteam)) {
- this.server.getPlayerList().broadcastAll(ClientboundSetPlayerTeamPacket.createPlayerPacket(playerteam, s, ClientboundSetPlayerTeamPacket.Action.ADD));
+ public boolean addPlayerToTeam(String playerName, PlayerTeam team) {
+ if (super.addPlayerToTeam(playerName, team)) {
+ this.broadcastAll(ClientboundSetPlayerTeamPacket.createPlayerPacket(team, playerName, ClientboundSetPlayerTeamPacket.a.ADD)); // CraftBukkit
this.setDirty();
return true;
} else {
@@ -111,10 +105,9 @@
}
@Override
- @Override
- public void removePlayerFromTeam(String s, PlayerTeam playerteam) {
- super.removePlayerFromTeam(s, playerteam);
- this.server.getPlayerList().broadcastAll(ClientboundSetPlayerTeamPacket.createPlayerPacket(playerteam, s, ClientboundSetPlayerTeamPacket.Action.REMOVE));
+ public void removePlayerFromTeam(String username, PlayerTeam playerTeam) {
+ super.removePlayerFromTeam(username, playerTeam);
+ this.broadcastAll(ClientboundSetPlayerTeamPacket.createPlayerPacket(playerTeam, username, ClientboundSetPlayerTeamPacket.a.REMOVE)); // CraftBukkit
this.setDirty();
}
@@ -130,7 +121,7 @@
public void onObjectiveChanged(Objective objective) {
super.onObjectiveChanged(objective);
if (this.trackedObjectives.contains(objective)) {
- this.server.getPlayerList().broadcastAll(new ClientboundSetObjectivePacket(objective, 2));
+ this.broadcastAll(new ClientboundSetObjectivePacket(objective, 2)); // CraftBukkit
}
this.setDirty();
@@ -148,26 +138,23 @@
}
@Override
- @Override
- public void onTeamAdded(PlayerTeam playerteam) {
- super.onTeamAdded(playerteam);
- this.server.getPlayerList().broadcastAll(ClientboundSetPlayerTeamPacket.createAddOrModifyPacket(playerteam, true));
+ public void onTeamAdded(PlayerTeam playerTeam) {
+ super.onTeamAdded(playerTeam);
+ this.broadcastAll(ClientboundSetPlayerTeamPacket.createAddOrModifyPacket(playerTeam, true)); // CraftBukkit
this.setDirty();
}
@Override
- @Override
- public void onTeamChanged(PlayerTeam playerteam) {
- super.onTeamChanged(playerteam);
- this.server.getPlayerList().broadcastAll(ClientboundSetPlayerTeamPacket.createAddOrModifyPacket(playerteam, false));
+ public void onTeamChanged(PlayerTeam playerTeam) {
+ super.onTeamChanged(playerTeam);
+ this.broadcastAll(ClientboundSetPlayerTeamPacket.createAddOrModifyPacket(playerTeam, false)); // CraftBukkit
this.setDirty();
}
@Override
- @Override
- public void onTeamRemoved(PlayerTeam playerteam) {
- super.onTeamRemoved(playerteam);
- this.server.getPlayerList().broadcastAll(ClientboundSetPlayerTeamPacket.createRemovePacket(playerteam));
+ public void onTeamRemoved(PlayerTeam playerTeam) {
+ super.onTeamRemoved(playerTeam);
+ this.broadcastAll(ClientboundSetPlayerTeamPacket.createRemovePacket(playerTeam)); // CraftBukkit
this.setDirty();
}
@@ -217,7 +204,8 @@
Iterator iterator = this.server.getPlayerList().getPlayers().iterator();
while (iterator.hasNext()) {
- ServerPlayer serverplayer = (ServerPlayer) iterator.next();
+ ServerPlayer entityplayer = (ServerPlayer) iterator.next();
+ if (entityplayer.getBukkitEntity().getScoreboard().getHandle() != this) continue; // CraftBukkit - Only players on this board
Iterator iterator1 = list.iterator();
while (iterator1.hasNext()) {
@@ -253,7 +241,8 @@
Iterator iterator = this.server.getPlayerList().getPlayers().iterator();
while (iterator.hasNext()) {
- ServerPlayer serverplayer = (ServerPlayer) iterator.next();
+ ServerPlayer entityplayer = (ServerPlayer) iterator.next();
+ if (entityplayer.getBukkitEntity().getScoreboard().getHandle() != this) continue; // CraftBukkit - Only players on this board
Iterator iterator1 = list.iterator();
while (iterator1.hasNext()) {
@@ -298,7 +287,15 @@
return this.createData().load(compoundtag);
}
- public static enum Method {
+ // CraftBukkit start - Send to players
+ private void broadcastAll(Packet packet) {
+ for (ServerPlayer entityplayer : (List<ServerPlayer>) this.server.getPlayerList().players) {
+ if (entityplayer.getBukkitEntity().getScoreboard().getHandle() == this) {
+ entityplayer.connection.send(packet);
+ }
+ }
+ }
+ // CraftBukkit end
CHANGE, REMOVE;