50 lines
2.1 KiB
Java
50 lines
2.1 KiB
Java
/*
|
|
* Copyright (c) 2018 Jitse Boonstra
|
|
*/
|
|
|
|
package net.jitse.npclib.nms.v1_8_r2.packets;
|
|
|
|
import com.comphenix.tinyprotocol.Reflection;
|
|
import net.minecraft.server.v1_8_R2.PacketPlayOutScoreboardTeam;
|
|
|
|
import java.util.Collection;
|
|
|
|
/**
|
|
* @author Jitse Boonstra
|
|
*/
|
|
public class PacketPlayOutScoreboardTeamWrapper {
|
|
|
|
public PacketPlayOutScoreboardTeam createRegisterTeam(String name) {
|
|
PacketPlayOutScoreboardTeam packetPlayOutScoreboardTeam = new PacketPlayOutScoreboardTeam();
|
|
|
|
Reflection.getField(packetPlayOutScoreboardTeam.getClass(), "h", int.class)
|
|
.set(packetPlayOutScoreboardTeam, 0);
|
|
Reflection.getField(packetPlayOutScoreboardTeam.getClass(), "b", String.class)
|
|
.set(packetPlayOutScoreboardTeam, name);
|
|
Reflection.getField(packetPlayOutScoreboardTeam.getClass(), "a", String.class)
|
|
.set(packetPlayOutScoreboardTeam, name);
|
|
Reflection.getField(packetPlayOutScoreboardTeam.getClass(), "e", String.class)
|
|
.set(packetPlayOutScoreboardTeam, "never");
|
|
Reflection.getField(packetPlayOutScoreboardTeam.getClass(), "i", int.class)
|
|
.set(packetPlayOutScoreboardTeam, 1);
|
|
Reflection.FieldAccessor<Collection> collectionFieldAccessor = Reflection.getField(
|
|
packetPlayOutScoreboardTeam.getClass(), "g", Collection.class);
|
|
Collection collection = collectionFieldAccessor.get(packetPlayOutScoreboardTeam);
|
|
collection.add(name);
|
|
collectionFieldAccessor.set(packetPlayOutScoreboardTeam, collection);
|
|
|
|
return packetPlayOutScoreboardTeam;
|
|
}
|
|
|
|
public PacketPlayOutScoreboardTeam createUnregisterTeam(String name) {
|
|
PacketPlayOutScoreboardTeam packetPlayOutScoreboardTeam = new PacketPlayOutScoreboardTeam();
|
|
|
|
Reflection.getField(packetPlayOutScoreboardTeam.getClass(), "h", int.class)
|
|
.set(packetPlayOutScoreboardTeam, 1);
|
|
Reflection.getField(packetPlayOutScoreboardTeam.getClass(), "a", String.class)
|
|
.set(packetPlayOutScoreboardTeam, name);
|
|
|
|
return packetPlayOutScoreboardTeam;
|
|
}
|
|
}
|