use of com.comphenix.protocol.wrappers.PlayerInfoData in project HMCCosmetics by HibiscusMC.
the class PacketHelper_1_17_R1 method getPlayerInfoPacket.
@Override
public PacketContainer getPlayerInfoPacket(final Player player, final UUID uuid) {
final GameProfile profile = this.getCopyProfile(player, uuid);
final PacketContainer playerInfoPacket = new PacketContainer(PacketType.Play.Server.PLAYER_INFO);
final StructureModifier<EnumWrappers.PlayerInfoAction> action = playerInfoPacket.getPlayerInfoAction();
final StructureModifier<List<PlayerInfoData>> infoData = playerInfoPacket.getPlayerInfoDataLists();
final List<PlayerInfoData> playerInfoData = new ArrayList<>();
playerInfoData.add(new PlayerInfoData(WrappedGameProfile.fromHandle(profile), 0, EnumWrappers.NativeGameMode.fromBukkit(GameMode.CREATIVE), WrappedChatComponent.fromText(profile.getName())));
action.write(0, EnumWrappers.PlayerInfoAction.ADD_PLAYER);
infoData.write(0, playerInfoData);
return playerInfoPacket;
}
use of com.comphenix.protocol.wrappers.PlayerInfoData in project HMCCosmetics by HibiscusMC.
the class PacketHelper_1_17_R1 method getPlayerRemovePacket.
@Override
public PacketContainer getPlayerRemovePacket(final Player player, final UUID uuid, final int entityId) {
final PacketContainer playerPacket = new PacketContainer(PacketType.Play.Server.PLAYER_INFO);
final StructureModifier<EnumWrappers.PlayerInfoAction> action = playerPacket.getPlayerInfoAction();
final StructureModifier<List<PlayerInfoData>> infoData = playerPacket.getPlayerInfoDataLists();
final List<PlayerInfoData> playerInfoData = new ArrayList<>();
final GameProfile profile = this.getCopyProfile(player, uuid);
playerInfoData.add(new PlayerInfoData(WrappedGameProfile.fromHandle(profile), 0, EnumWrappers.NativeGameMode.fromBukkit(GameMode.CREATIVE), WrappedChatComponent.fromText("")));
action.write(0, EnumWrappers.PlayerInfoAction.REMOVE_PLAYER);
infoData.write(0, playerInfoData);
return playerPacket;
}
use of com.comphenix.protocol.wrappers.PlayerInfoData in project HMCCosmetics by HibiscusMC.
the class PacketHelper_1_18_R1 method getPlayerInfoPacket.
@Override
public PacketContainer getPlayerInfoPacket(final Player player, final UUID uuid) {
final GameProfile profile = this.getCopyProfile(player, uuid);
final PacketContainer playerInfoPacket = new PacketContainer(PacketType.Play.Server.PLAYER_INFO);
final StructureModifier<EnumWrappers.PlayerInfoAction> action = playerInfoPacket.getPlayerInfoAction();
final StructureModifier<List<PlayerInfoData>> infoData = playerInfoPacket.getPlayerInfoDataLists();
final List<PlayerInfoData> playerInfoData = new ArrayList<>();
playerInfoData.add(new PlayerInfoData(WrappedGameProfile.fromHandle(profile), 0, EnumWrappers.NativeGameMode.fromBukkit(GameMode.SURVIVAL), WrappedChatComponent.fromText(profile.getName())));
action.write(0, EnumWrappers.PlayerInfoAction.ADD_PLAYER);
infoData.write(0, playerInfoData);
return playerInfoPacket;
}
use of com.comphenix.protocol.wrappers.PlayerInfoData in project HMCCosmetics by HibiscusMC.
the class PacketHelper_1_16_R3 method getPlayerRemovePacket.
@Override
public PacketContainer getPlayerRemovePacket(final Player player, final UUID uuid, final int entityId) {
final PacketContainer playerPacket = new PacketContainer(PacketType.Play.Server.PLAYER_INFO);
final StructureModifier<EnumWrappers.PlayerInfoAction> action = playerPacket.getPlayerInfoAction();
final StructureModifier<List<PlayerInfoData>> infoData = playerPacket.getPlayerInfoDataLists();
final List<PlayerInfoData> playerInfoData = new ArrayList<>();
final GameProfile profile = this.getCopyProfile(player, uuid);
playerInfoData.add(new PlayerInfoData(WrappedGameProfile.fromHandle(profile), 0, EnumWrappers.NativeGameMode.fromBukkit(GameMode.CREATIVE), WrappedChatComponent.fromText("")));
action.write(0, EnumWrappers.PlayerInfoAction.REMOVE_PLAYER);
infoData.write(0, playerInfoData);
return playerPacket;
}
use of com.comphenix.protocol.wrappers.PlayerInfoData in project AntiCheatAddition by Photon-GitHub.
the class WrapperPlayServerPlayerInfo method updatePlayerInformation.
/**
* This method updates the player information, and thus the tablist of a player.
*
* @param action the {@link PlayerInfoAction} that will be executed.
* @param gameProfile the {@link WrappedGameProfile} of the player whose information will be updated.<br>
* Use {@link WrappedGameProfile#fromPlayer(Player)} in order to get a {@link WrappedGameProfile} from a {@link Player}.
* @param ping the new ping of the updated {@link Player}.
* Use {@link de.photon.anticheataddition.util.minecraft.ping.PingProvider#getPing(Player)} to get the ping of a {@link Player}.
* @param gameMode the {@link EnumWrappers.NativeGameMode} of the updated {@link Player}.
* @param displayName the new displayName of the updated {@link Player}
* @param affectedPlayer the {@link Player} who will see the updated information as the packet is sent to him.
*/
public static void updatePlayerInformation(final PlayerInfoAction action, final WrappedGameProfile gameProfile, final int ping, final EnumWrappers.NativeGameMode gameMode, final WrappedChatComponent displayName, final Player affectedPlayer) {
val playerInfoData = new PlayerInfoData(gameProfile, ping, gameMode, displayName);
val playerInfoWrapper = new WrapperPlayServerPlayerInfo();
playerInfoWrapper.setAction(action);
playerInfoWrapper.setData(Collections.singletonList(playerInfoData));
playerInfoWrapper.sendPacket(affectedPlayer);
}
Aggregations