Search in sources :

Example 6 with ClientboundSetObjectivePacket

use of net.minecraft.network.protocol.game.ClientboundSetObjectivePacket in project Denizen-For-Bukkit by DenizenScript.

the class SidebarImpl method sendUpdate.

@Override
public void sendUpdate() {
    List<PlayerTeam> oldTeams = generatedTeams;
    generatedTeams = new ArrayList<>();
    PacketHelperImpl.send(player, new ClientboundSetObjectivePacket(this.obj1, 0));
    for (int i = 0; i < this.lines.length; i++) {
        String line = this.lines[i];
        if (line == null) {
            break;
        }
        String lineId = Utilities.generateRandomColors(8);
        PlayerTeam team = new PlayerTeam(dummyScoreboard, lineId);
        team.getPlayers().add(lineId);
        team.setPlayerPrefix(Handler.componentToNMS(FormattedTextHelper.parse(line, ChatColor.WHITE)));
        generatedTeams.add(team);
        PacketHelperImpl.send(player, ClientboundSetPlayerTeamPacket.createAddOrModifyPacket(team, true));
        PacketHelperImpl.send(player, new ClientboundSetScorePacket(ServerScoreboard.Method.CHANGE, obj1.getName(), lineId, this.scores[i]));
    }
    PacketHelperImpl.send(player, new ClientboundSetDisplayObjectivePacket(1, this.obj1));
    PacketHelperImpl.send(player, new ClientboundSetObjectivePacket(this.obj2, 1));
    Objective temp = this.obj2;
    this.obj2 = this.obj1;
    this.obj1 = temp;
    for (PlayerTeam team : oldTeams) {
        PacketHelperImpl.send(player, ClientboundSetPlayerTeamPacket.createRemovePacket(team));
    }
}
Also used : ClientboundSetScorePacket(net.minecraft.network.protocol.game.ClientboundSetScorePacket) Objective(net.minecraft.world.scores.Objective) PlayerTeam(net.minecraft.world.scores.PlayerTeam) ClientboundSetDisplayObjectivePacket(net.minecraft.network.protocol.game.ClientboundSetDisplayObjectivePacket) ClientboundSetObjectivePacket(net.minecraft.network.protocol.game.ClientboundSetObjectivePacket)

Aggregations

ClientboundSetObjectivePacket (net.minecraft.network.protocol.game.ClientboundSetObjectivePacket)6 PlayerTeam (net.minecraft.world.scores.PlayerTeam)5 ClientboundSetDisplayObjectivePacket (net.minecraft.network.protocol.game.ClientboundSetDisplayObjectivePacket)3 ClientboundSetScorePacket (net.minecraft.network.protocol.game.ClientboundSetScorePacket)3 Objective (net.minecraft.world.scores.Objective)2 Score (net.minecraft.world.scores.Score)2 SpongeScore (org.spongepowered.common.scoreboard.SpongeScore)2 ArrayList (java.util.ArrayList)1 List (java.util.List)1 ClientboundSetPlayerTeamPacket (net.minecraft.network.protocol.game.ClientboundSetPlayerTeamPacket)1 PlayerList (net.minecraft.server.players.PlayerList)1 Objective (org.spongepowered.api.scoreboard.objective.Objective)1 ServerScoreboardBridge (org.spongepowered.common.bridge.server.ServerScoreboardBridge)1 SpongeObjective (org.spongepowered.common.scoreboard.SpongeObjective)1