Search in sources :

Example 6 with PlayerInteractManager

use of net.minecraft.server.v1_13_R2.PlayerInteractManager in project CoordsOffline by elliotnash.

the class v1_16_R3 method loadOfflinePlayer.

public Player loadOfflinePlayer(OfflinePlayer player) {
    MinecraftServer minecraftserver = MinecraftServer.getServer();
    GameProfile gameprofile = new GameProfile(player.getUniqueId(), player.getName());
    EntityPlayer entity = new EntityPlayer(minecraftserver, minecraftserver.getWorldServer(World.OVERWORLD), gameprofile, new PlayerInteractManager(minecraftserver.getWorldServer(World.OVERWORLD)));
    final Player target = entity.getBukkitEntity();
    if (target != null)
        target.loadData();
    return target;
}
Also used : EntityPlayer(net.minecraft.server.v1_16_R3.EntityPlayer) Player(org.bukkit.entity.Player) OfflinePlayer(org.bukkit.OfflinePlayer) GameProfile(com.mojang.authlib.GameProfile) PlayerInteractManager(net.minecraft.server.v1_16_R3.PlayerInteractManager) EntityPlayer(net.minecraft.server.v1_16_R3.EntityPlayer) MinecraftServer(net.minecraft.server.v1_16_R3.MinecraftServer)

Example 7 with PlayerInteractManager

use of net.minecraft.server.v1_13_R2.PlayerInteractManager in project Citizens2 by CitizensDev.

the class HumanController method createEntity.

@Override
protected Entity createEntity(final Location at, final NPC npc) {
    final WorldServer nmsWorld = ((CraftWorld) at.getWorld()).getHandle();
    String coloredName = npc.getFullName();
    String name = coloredName.length() > 16 ? coloredName.substring(0, 16) : coloredName;
    UUID uuid = npc.getUniqueId();
    if (uuid.version() == 4) {
        // clear version
        long msb = uuid.getMostSignificantBits();
        msb &= ~0x0000000000004000L;
        msb |= 0x0000000000002000L;
        uuid = new UUID(msb, uuid.getLeastSignificantBits());
    }
    String teamName = Util.getTeamName(uuid);
    if (npc.requiresNameHologram()) {
        name = teamName;
    }
    if (Setting.USE_SCOREBOARD_TEAMS.asBoolean()) {
        Util.generateTeamFor(npc, name, teamName);
    }
    final GameProfile profile = new GameProfile(uuid, name);
    final EntityHumanNPC handle = new EntityHumanNPC(nmsWorld.getServer().getServer(), nmsWorld, profile, new PlayerInteractManager(nmsWorld), npc);
    Skin skin = handle.getSkinTracker().getSkin();
    if (skin != null) {
        skin.apply(handle);
    }
    Bukkit.getScheduler().scheduleSyncDelayedTask(CitizensAPI.getPlugin(), new Runnable() {

        @Override
        public void run() {
            if (getBukkitEntity() == null || !getBukkitEntity().isValid() || getBukkitEntity() != handle.getBukkitEntity())
                return;
            boolean removeFromPlayerList = npc.data().get("removefromplayerlist", Setting.REMOVE_PLAYERS_FROM_PLAYER_LIST.asBoolean());
            NMS.addOrRemoveFromPlayerList(getBukkitEntity(), removeFromPlayerList);
        }
    }, 20);
    handle.getBukkitEntity().setSleepingIgnored(true);
    return handle.getBukkitEntity();
}
Also used : GameProfile(com.mojang.authlib.GameProfile) PlayerInteractManager(net.minecraft.server.v1_11_R1.PlayerInteractManager) WorldServer(net.minecraft.server.v1_11_R1.WorldServer) Skin(net.citizensnpcs.npc.skin.Skin) UUID(java.util.UUID) CraftWorld(org.bukkit.craftbukkit.v1_11_R1.CraftWorld)

Example 8 with PlayerInteractManager

use of net.minecraft.server.v1_13_R2.PlayerInteractManager in project Citizens2 by CitizensDev.

the class HumanController method createEntity.

@Override
protected Entity createEntity(final Location at, final NPC npc) {
    final WorldServer nmsWorld = ((CraftWorld) at.getWorld()).getHandle();
    String coloredName = npc.getFullName();
    String name = coloredName.length() > 16 ? coloredName.substring(0, 16) : coloredName;
    UUID uuid = npc.getUniqueId();
    if (uuid.version() == 4) {
        // clear version
        long msb = uuid.getMostSignificantBits();
        msb &= ~0x0000000000004000L;
        msb |= 0x0000000000002000L;
        uuid = new UUID(msb, uuid.getLeastSignificantBits());
    }
    String teamName = Util.getTeamName(uuid);
    if (npc.requiresNameHologram()) {
        name = teamName;
    }
    if (Setting.USE_SCOREBOARD_TEAMS.asBoolean()) {
        Util.generateTeamFor(npc, name, teamName);
    }
    final GameProfile profile = new GameProfile(uuid, name);
    final EntityHumanNPC handle = new EntityHumanNPC(nmsWorld.getServer().getServer(), nmsWorld, profile, new PlayerInteractManager(nmsWorld), npc);
    Skin skin = handle.getSkinTracker().getSkin();
    if (skin != null) {
        skin.apply(handle);
    }
    Bukkit.getScheduler().scheduleSyncDelayedTask(CitizensAPI.getPlugin(), new Runnable() {

        @Override
        public void run() {
            if (getBukkitEntity() == null || !getBukkitEntity().isValid() || getBukkitEntity() != handle.getBukkitEntity())
                return;
            boolean removeFromPlayerList = npc.data().get("removefromplayerlist", Setting.REMOVE_PLAYERS_FROM_PLAYER_LIST.asBoolean());
            NMS.addOrRemoveFromPlayerList(getBukkitEntity(), removeFromPlayerList);
        }
    }, 20);
    handle.getBukkitEntity().setSleepingIgnored(true);
    return handle.getBukkitEntity();
}
Also used : GameProfile(com.mojang.authlib.GameProfile) PlayerInteractManager(net.minecraft.server.v1_14_R1.PlayerInteractManager) WorldServer(net.minecraft.server.v1_14_R1.WorldServer) Skin(net.citizensnpcs.npc.skin.Skin) UUID(java.util.UUID) CraftWorld(org.bukkit.craftbukkit.v1_14_R1.CraftWorld)

Example 9 with PlayerInteractManager

use of net.minecraft.server.v1_13_R2.PlayerInteractManager in project Citizens2 by CitizensDev.

the class HumanController method createEntity.

@Override
protected Entity createEntity(final Location at, final NPC npc) {
    final WorldServer nmsWorld = ((CraftWorld) at.getWorld()).getHandle();
    String coloredName = npc.getFullName();
    String name = coloredName.length() > 16 ? coloredName.substring(0, 16) : coloredName;
    UUID uuid = npc.getUniqueId();
    if (uuid.version() == 4) {
        // clear version
        long msb = uuid.getMostSignificantBits();
        msb &= ~0x0000000000004000L;
        msb |= 0x0000000000002000L;
        uuid = new UUID(msb, uuid.getLeastSignificantBits());
    }
    String teamName = Util.getTeamName(uuid);
    if (npc.requiresNameHologram()) {
        name = teamName;
    }
    if (Setting.USE_SCOREBOARD_TEAMS.asBoolean()) {
        Util.generateTeamFor(npc, name, teamName);
    }
    final GameProfile profile = new GameProfile(uuid, name);
    final EntityHumanNPC handle = new EntityHumanNPC(nmsWorld.getServer().getServer(), nmsWorld, profile, new PlayerInteractManager(nmsWorld), npc);
    Skin skin = handle.getSkinTracker().getSkin();
    if (skin != null) {
        skin.apply(handle);
    }
    Bukkit.getScheduler().scheduleSyncDelayedTask(CitizensAPI.getPlugin(), new Runnable() {

        @Override
        public void run() {
            if (getBukkitEntity() == null || !getBukkitEntity().isValid() || getBukkitEntity() != handle.getBukkitEntity())
                return;
            boolean removeFromPlayerList = npc.data().get("removefromplayerlist", Setting.REMOVE_PLAYERS_FROM_PLAYER_LIST.asBoolean());
            NMS.addOrRemoveFromPlayerList(getBukkitEntity(), removeFromPlayerList);
        }
    }, 20);
    handle.getBukkitEntity().setSleepingIgnored(true);
    return handle.getBukkitEntity();
}
Also used : GameProfile(com.mojang.authlib.GameProfile) PlayerInteractManager(net.minecraft.server.v1_16_R3.PlayerInteractManager) WorldServer(net.minecraft.server.v1_16_R3.WorldServer) Skin(net.citizensnpcs.npc.skin.Skin) UUID(java.util.UUID) CraftWorld(org.bukkit.craftbukkit.v1_16_R3.CraftWorld)

Example 10 with PlayerInteractManager

use of net.minecraft.server.v1_13_R2.PlayerInteractManager in project SilkSpawners by timbru31.

the class NMSHandler method loadPlayer.

@Override
public Player loadPlayer(final OfflinePlayer offline) {
    if (!offline.hasPlayedBefore()) {
        return null;
    }
    final GameProfile profile = new GameProfile(offline.getUniqueId(), offline.getName() != null ? offline.getName() : offline.getUniqueId().toString());
    final MinecraftServer server = ((CraftServer) Bukkit.getServer()).getServer();
    final EntityPlayer entity = new EntityPlayer(server, server.getWorldServer(0), profile, new PlayerInteractManager(server.getWorldServer(0)));
    final Player target = entity.getBukkitEntity();
    if (target != null) {
        target.loadData();
    }
    return target;
}
Also used : Player(org.bukkit.entity.Player) OfflinePlayer(org.bukkit.OfflinePlayer) EntityPlayer(net.minecraft.server.v1_11_R1.EntityPlayer) CraftPlayer(org.bukkit.craftbukkit.v1_11_R1.entity.CraftPlayer) GameProfile(com.mojang.authlib.GameProfile) PlayerInteractManager(net.minecraft.server.v1_11_R1.PlayerInteractManager) EntityPlayer(net.minecraft.server.v1_11_R1.EntityPlayer) CraftServer(org.bukkit.craftbukkit.v1_11_R1.CraftServer) MinecraftServer(net.minecraft.server.v1_11_R1.MinecraftServer)

Aggregations

GameProfile (com.mojang.authlib.GameProfile)30 Player (org.bukkit.entity.Player)16 OfflinePlayer (org.bukkit.OfflinePlayer)15 UUID (java.util.UUID)14 Skin (net.citizensnpcs.npc.skin.Skin)8 Property (com.mojang.authlib.properties.Property)7 BigInteger (java.math.BigInteger)6 MessageDigest (java.security.MessageDigest)6 PlayerInteractManager (net.minecraft.server.v1_16_R3.PlayerInteractManager)6 Scoreboard (org.bukkit.scoreboard.Scoreboard)6 Team (org.bukkit.scoreboard.Team)6 PlayerProfile (net.aufdemrand.denizen.nms.util.PlayerProfile)4 WorldServer (net.minecraft.server.v1_16_R3.WorldServer)4 CraftWorld (org.bukkit.craftbukkit.v1_16_R3.CraftWorld)4 PlayerInteractManager (net.minecraft.server.v1_10_R1.PlayerInteractManager)3 PlayerInteractManager (net.minecraft.server.v1_11_R1.PlayerInteractManager)3 EntityPlayer (net.minecraft.server.v1_16_R3.EntityPlayer)3 PlayerProfile (com.denizenscript.denizen.nms.util.PlayerProfile)2 CraftFakePlayerImpl (com.denizenscript.denizen.nms.v1_16.impl.entities.CraftFakePlayerImpl)2 EntityFakePlayerImpl (com.denizenscript.denizen.nms.v1_16.impl.entities.EntityFakePlayerImpl)2