Java 类org.bukkit.entity.AnimalTamer 实例源码

项目:PetMaster    文件:PlayerInteractListener.java   
/**
 * Change the owner of a pet.
 * 
 * @param event
 * @param oldOwner
 * @param newOwner
 */
private void changeOwner(PlayerInteractEntityEvent event, AnimalTamer oldOwner, Player newOwner) {
    if (chargePrice(event.getPlayer(), changeOwnerPrice)) {
        Tameable tameableAnimal = (Tameable) event.getRightClicked();
        // Change owner.
        tameableAnimal.setOwner(newOwner);
        event.getPlayer().sendMessage(plugin.getChatHeader()
                + plugin.getPluginLang().getString("owner-changed", "This pet was given to a new owner!"));
        newOwner.sendMessage(plugin.getChatHeader()
                + plugin.getPluginLang().getString("new-owner", "Player PLAYER gave you ownership of a pet!")
                        .replace("PLAYER", event.getPlayer().getName()));

        // Create new event to allow other plugins to be aware of the ownership change.
        PlayerChangeAnimalOwnershipEvent playerChangeAnimalOwnershipEvent = new PlayerChangeAnimalOwnershipEvent(
                oldOwner, newOwner, tameableAnimal);
        Bukkit.getServer().getPluginManager().callEvent(playerChangeAnimalOwnershipEvent);
    }
}
项目:PetMaster    文件:PlayerInteractListener.java   
/**
 * Frees a pet; it will no longer be tamed.
 * 
 * @param event
 * @param oldOwner
 */
private void freePet(PlayerInteractEntityEvent event, AnimalTamer oldOwner) {
    if (chargePrice(event.getPlayer(), freePetPrice)) {
        Tameable tameableAnimal = (Tameable) event.getRightClicked();
        // Free pet.
        tameableAnimal.setTamed(false);
        // Make freed pet stand up.
        if (version >= 12 && tameableAnimal instanceof Sittable) {
            ((Sittable) tameableAnimal).setSitting(false);
        } else if (tameableAnimal instanceof Wolf) {
            ((Wolf) tameableAnimal).setSitting(false);
        } else if (tameableAnimal instanceof Ocelot) {
            ((Ocelot) tameableAnimal).setSitting(false);
        }

        event.getPlayer().sendMessage(plugin.getChatHeader()
                + plugin.getPluginLang().getString("pet-freed", "Say goodbye: this pet returned to the wild!"));

        // Create new event to allow other plugins to be aware of the freeing.
        PlayerChangeAnimalOwnershipEvent playerChangeAnimalOwnershipEvent = new PlayerChangeAnimalOwnershipEvent(
                oldOwner, null, tameableAnimal);
        Bukkit.getServer().getPluginManager().callEvent(playerChangeAnimalOwnershipEvent);
    }
}
项目:Stoa    文件:TameableUtil.java   
public static void disownPets(String animalTamer) {
    for (TameableModel wrapper : findByTamer(animalTamer)) {
        if (wrapper.getEntity() == null) continue;
        ((Tameable) wrapper.getEntity()).setOwner(new AnimalTamer() {
            @Override
            public String getName() {
                return "Disowned";
            }

            @Override
            public UUID getUniqueId() {
                return null;
            }
        });
    }
}
项目:TalkingMobs    文件:EventListener.java   
@EventHandler
public void onEntityTame(EntityTameEvent event) {
    if (!plugin.getConfig().getBoolean("events.tamed")) {
        return;
    }

    AnimalTamer owner = event.getOwner();

    if (!(owner instanceof Player)) {
        return;
    }

    Player player = (Player) owner;

    message.sendMessage(event.getEntity(), player, Message.EventType.tamed);
}
项目:Uranium    文件:CraftHorse.java   
@Override
public void setOwner(AnimalTamer owner) {
    if (owner != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(owner.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
    }
}
项目:Uranium    文件:CraftTameableAnimal.java   
public AnimalTamer getOwner() {
    if (getOwnerUUID() == null) {
        return null;
    }

    AnimalTamer owner = getServer().getPlayer(getOwnerUUID());
    if (owner == null) {
        owner = getServer().getOfflinePlayer(getOwnerUUID());
    }

    return owner;
}
项目:Uranium    文件:CraftTameableAnimal.java   
public void setOwner(AnimalTamer tamer) {
    if (tamer != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(tamer.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
}
}
项目:ThermosRebased    文件:CraftHorse.java   
@Override
public void setOwner(AnimalTamer owner) {
    if (owner != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(owner.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
    }
}
项目:ThermosRebased    文件:CraftTameableAnimal.java   
public AnimalTamer getOwner() {
    if (getOwnerUUID() == null) {
        return null;
    }

    AnimalTamer owner = getServer().getPlayer(getOwnerUUID());
    if (owner == null) {
        owner = getServer().getOfflinePlayer(getOwnerUUID());
    }

    return owner;
}
项目:ThermosRebased    文件:CraftTameableAnimal.java   
public void setOwner(AnimalTamer tamer) {
    if (tamer != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(tamer.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
}
}
项目:QuestManager    文件:Summon.java   
@Override
public void alarm(Integer key) {
    // kill our summon
    Entity e = getEntity();

    if (e == null) {
        QuestManagerPlugin.logger.warning("Unable to locate and remove "
            + "summon!");
    } else {

        if (entity instanceof Tameable) {
            Tameable me = (Tameable) entity;
            AnimalTamer tamer = me.getOwner();

            if (tamer instanceof Player) {
                QuestPlayer qp = QuestManagerPlugin.questManagerPlugin.getPlayerManager().getPlayer(
                        (Player) tamer);
                if (qp.getOptions().getOption(PlayerOptions.Key.CHAT_PET_DISMISSAL)) {
                    ((Player) tamer).sendMessage(DEATH_MESSAGE);
                }
            }
        }

        e.getLocation().getChunk().load();
        e.remove();

        playDeathEffect(e.getLocation());
    }

    effect.stop();

    QuestManagerPlugin.questManagerPlugin.getSummonManager().unregisterSummon(this);
}
项目:QuestManager    文件:Summon.java   
@EventHandler
public void onEntityDeath(EntityDeathEvent e) {
    if (e.getEntity().getUniqueId().equals(entityID)) {
        //is summon entity
        effect.stop();

        if (Alarm.getScheduler().unregister(this)) {
            QuestManagerPlugin.questManagerPlugin.getSummonManager().unregisterSummon(this);

            if (entity instanceof Tameable) {
                Tameable me = (Tameable) entity;
                AnimalTamer tamer = me.getOwner();

                if (tamer instanceof Player) {
                    QuestPlayer qp = QuestManagerPlugin.questManagerPlugin.getPlayerManager().getPlayer(
                            (Player) tamer);
                    if (qp.getOptions().getOption(PlayerOptions.Key.CHAT_PET_DISMISSAL)) {
                        ((Player) tamer).sendMessage(DEATH_MESSAGE);
                    }
                }
            }
        }

        return;
    }

}
项目:Thermos    文件:CraftHorse.java   
@Override
public void setOwner(AnimalTamer owner) {
    if (owner != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(owner.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
    }
}
项目:Thermos    文件:CraftTameableAnimal.java   
public AnimalTamer getOwner() {
    if (getOwnerUUID() == null) {
        return null;
    }

    AnimalTamer owner = getServer().getPlayer(getOwnerUUID());
    if (owner == null) {
        owner = getServer().getOfflinePlayer(getOwnerUUID());
    }

    return owner;
}
项目:Thermos    文件:CraftTameableAnimal.java   
public void setOwner(AnimalTamer tamer) {
    if (tamer != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(tamer.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
}
}
项目:KCauldron    文件:CraftHorse.java   
@Override
public void setOwner(AnimalTamer owner) {
    if (owner != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(owner.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
    }
}
项目:KCauldron    文件:CraftTameableAnimal.java   
public AnimalTamer getOwner() {
    if (getOwnerUUID() == null) {
        return null;
    }

    AnimalTamer owner = getServer().getPlayer(getOwnerUUID());
    if (owner == null) {
        owner = getServer().getOfflinePlayer(getOwnerUUID());
    }

    return owner;
}
项目:KCauldron    文件:CraftTameableAnimal.java   
public void setOwner(AnimalTamer tamer) {
    if (tamer != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(tamer.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
}
}
项目:CauldronGit    文件:CraftHorse.java   
@Override
public void setOwner(AnimalTamer owner) {
    if (owner != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(owner.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
    }
}
项目:CauldronGit    文件:CraftTameableAnimal.java   
public AnimalTamer getOwner() {
    if (getOwnerUUID() == null) {
        return null;
    }

    AnimalTamer owner = getServer().getPlayer(getOwnerUUID());
    if (owner == null) {
        owner = getServer().getOfflinePlayer(getOwnerUUID());
    }

    return owner;
}
项目:CauldronGit    文件:CraftTameableAnimal.java   
public void setOwner(AnimalTamer tamer) {
    if (tamer != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(tamer.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
}
}
项目:Cauldron-Old    文件:CraftHorse.java   
@Override
public void setOwner(AnimalTamer owner) {
    if (owner != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(owner.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
    }
}
项目:Cauldron-Old    文件:CraftTameableAnimal.java   
public AnimalTamer getOwner() {
    if (getOwnerUUID() == null) {
        return null;
    }

    AnimalTamer owner = getServer().getPlayer(getOwnerUUID());
    if (owner == null) {
        owner = getServer().getOfflinePlayer(getOwnerUUID());
    }

    return owner;
}
项目:Cauldron-Old    文件:CraftTameableAnimal.java   
public void setOwner(AnimalTamer tamer) {
    if (tamer != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(tamer.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
}
}
项目:Cauldron-Reloaded    文件:CraftHorse.java   
@Override
public void setOwner(AnimalTamer owner) {
    if (owner != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(owner.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
    }
}
项目:Cauldron-Reloaded    文件:CraftTameableAnimal.java   
public AnimalTamer getOwner() {
    if (getOwnerUUID() == null) {
        return null;
    }

    AnimalTamer owner = getServer().getPlayer(getOwnerUUID());
    if (owner == null) {
        owner = getServer().getOfflinePlayer(getOwnerUUID());
    }

    return owner;
}
项目:Cauldron-Reloaded    文件:CraftTameableAnimal.java   
public void setOwner(AnimalTamer tamer) {
    if (tamer != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(tamer.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
}
}
项目:FFoKC    文件:CraftHorse.java   
@Override
public void setOwner(AnimalTamer owner) {
    if (owner != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(owner.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
    }
}
项目:FFoKC    文件:CraftTameableAnimal.java   
public AnimalTamer getOwner() {
    if (getOwnerUUID() == null) {
        return null;
    }

    AnimalTamer owner = getServer().getPlayer(getOwnerUUID());
    if (owner == null) {
        owner = getServer().getOfflinePlayer(getOwnerUUID());
    }

    return owner;
}
项目:FFoKC    文件:CraftTameableAnimal.java   
public void setOwner(AnimalTamer tamer) {
    if (tamer != null) {
        setTamed(true);
        getHandle().setPathToEntity(null);
        setOwnerUUID(tamer.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
}
}
项目:CraftBukkit    文件:CraftHorse.java   
@Override
public void setOwner(AnimalTamer owner) {
    if (owner != null) {
        setTamed(true);
        getHandle().setPathEntity(null);
        setOwnerUUID(owner.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
    }
}
项目:CraftBukkit    文件:CraftTameableAnimal.java   
public AnimalTamer getOwner() {
    if (getOwnerUUID() == null) {
        return null;
    }

    AnimalTamer owner = getServer().getPlayer(getOwnerUUID());
    if (owner == null) {
        owner = getServer().getOfflinePlayer(getOwnerUUID());
    }

    return owner;
}
项目:CraftBukkit    文件:CraftTameableAnimal.java   
public void setOwner(AnimalTamer tamer) {
    if (tamer != null) {
        setTamed(true);
        getHandle().setPathEntity(null);
        setOwnerUUID(tamer.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
    }
}
项目:Craftbukkit    文件:CraftHorse.java   
@Override
public void setOwner(AnimalTamer owner) {
    if (owner != null) {
        setTamed(true);
        getHandle().setGoalTarget(null, null, false);
        setOwnerUUID(owner.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
    }
}
项目:Craftbukkit    文件:CraftTameableAnimal.java   
public AnimalTamer getOwner() {
    if (getOwnerUUID() == null) {
        return null;
    }

    AnimalTamer owner = getServer().getPlayer(getOwnerUUID());
    if (owner == null) {
        owner = getServer().getOfflinePlayer(getOwnerUUID());
    }

    return owner;
}
项目:Craftbukkit    文件:CraftTameableAnimal.java   
public void setOwner(AnimalTamer tamer) {
    if (tamer != null) {
        setTamed(true);
        getHandle().setGoalTarget(null, null, false);
        setOwnerUUID(tamer.getUniqueId());
    } else {
        setTamed(false);
        setOwnerUUID(null);
    }
}
项目:PetMaster    文件:PlayerInteractListener.java   
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
public void onPlayerInteractEntityEvent(PlayerInteractEntityEvent event) {
    // On Minecraft versions from 1.9 onwards, this event is fired twice, one for each hand. Need additional check.
    if (version >= 9 && event.getHand() != EquipmentSlot.HAND) {
        return;
    }

    if (!(event.getRightClicked() instanceof Tameable) || ((Tameable) event.getRightClicked()).getOwner() == null
            || !plugin.getEnableDisableCommand().isEnabled()) {
        return;
    }

    AnimalTamer currentOwner = ((Tameable) event.getRightClicked()).getOwner();
    // Has the player clicked on one of his own pets?
    boolean isOwner = event.getPlayer().getName().equals(currentOwner.getName());
    // Retrieve new owner from the map and delete corresponding entry.
    Player newOwner = plugin.getSetOwnerCommand().collectPendingSetOwnershipRequest(event.getPlayer());
    // Has the player requested to free one of his pets?
    boolean freePet = plugin.getFreeCommand().collectPendingFreeRequest(event.getPlayer());

    // Cannot change ownership or free pet if not owner and no bypass permission.
    if ((newOwner != null || freePet) && !isOwner && !event.getPlayer().hasPermission("petmaster.admin")) {
        event.getPlayer().sendMessage(plugin.getChatHeader() + plugin.getPluginLang()
                .getString("not-owner", "You do not own this pet!").replace("PLAYER", event.getPlayer().getName()));
        return;
    }

    if (newOwner != null) {
        changeOwner(event, currentOwner, newOwner);
    } else if (freePet) {
        freePet(event, currentOwner);
    } else if ((displayToOwner || !isOwner) && event.getPlayer().hasPermission("petmaster.showowner")) {
        displayHologramAndMessage(event, currentOwner);
    }
}
项目:Almura-Server    文件:CraftHorse.java   
@Override
public void setOwner(AnimalTamer owner) {
    if (owner != null && !"".equals(owner.getName())) {
        setTamed(true);
        getHandle().setPathEntity(null);
        setOwnerName(owner.getName());
    } else {
        setTamed(false);
        setOwnerName("");
    }
}
项目:Almura-Server    文件:CraftTameableAnimal.java   
public AnimalTamer getOwner() {
    if (("").equals(getOwnerName())) return null;

    AnimalTamer owner = getServer().getPlayerExact(getOwnerName());
    if (owner == null) {
        owner = getServer().getOfflinePlayer(getOwnerName());
    }

    return owner;
}
项目:Almura-Server    文件:CraftTameableAnimal.java   
public void setOwner(AnimalTamer tamer) {
    if (tamer != null) {
        setTamed(true);
        getHandle().setPathEntity(null);
        setOwnerName(tamer.getName());
    } else {
        setTamed(false);
        setOwnerName("");
    }
}