private static Predicate<Entity> isPetOwnedBy(Player player) { return entity -> { switch (entity.getType()) { case WOLF: case OCELOT: return player.equals(((Tameable) entity).getOwner()); } return false; }; }
/** * Checks to see if an entity is currently friendly toward a given player. * * @param attacker The player to check. * @param pet The entity to check. * @return true if the entity is friendly, false otherwise */ public static boolean isFriendlyPet(Player attacker, Tameable pet) { if (pet.isTamed()) { AnimalTamer tamer = pet.getOwner(); if (tamer instanceof Player) { Player owner = (Player) tamer; return (owner == attacker || PartyManager.inSameParty(attacker, owner) || PartyManager.areAllies(attacker, owner)); } } return false; }
/** * Handle the Beast Lore ability. * * @param target The entity to examine */ public void beastLore(LivingEntity target) { Player player = getPlayer(); Tameable beast = (Tameable) target; String message = LocaleLoader.getString("Combat.BeastLore") + " "; if (beast.isTamed() && beast.getOwner() != null) { message = message.concat(LocaleLoader.getString("Combat.BeastLoreOwner", beast.getOwner().getName()) + " "); } message = message.concat(LocaleLoader.getString("Combat.BeastLoreHealth", target.getHealth(), target.getMaxHealth())); player.sendMessage(message); }
} else if (o instanceof Tameable) { indirect = true; addAll(((Tameable) o).getOwner());
if(pet.isTamed()) AnimalTamer owner = pet.getOwner(); if(owner != null)
private Runnable handlePetKill(long time, UUID victimUUID, Tameable tameable) { if (!tameable.isTamed()) { return null; } AnimalTamer owner = tameable.getOwner(); if (!(owner instanceof Player)) { return null; } String name; try { name = tameable.getType().name(); } catch (NoSuchMethodError oldVersionNoTypesError) { // getType introduced in 1.9 name = tameable.getClass().getSimpleName(); } return victimUUID != null ? new PlayerKillProcessor(owner.getUniqueId(), time, victimUUID, new EntityNameFormatter().apply(name)) : new MobKillProcessor(owner.getUniqueId()); }
/** * @param event */ @EventHandler(priority = EventPriority.LOW) public void onEntityTarget(EntityTargetLivingEntityEvent event) { if (plugin.getSettingsManager().isTamableMobsSharing()) { if (event.getEntity() instanceof Tameable && event.getTarget() instanceof Player) { ClanPlayer cp = plugin.getClanManager().getClanPlayer((Player) event.getTarget()); Tameable wolf = (Tameable) event.getEntity(); if (wolf.isTamed() && cp.getClan().isMember((Player) wolf.getOwner())) { // cancels the event if the attacker is one out of his clan event.setCancelled(true); } } } }
/** * @param event */ @EventHandler(priority = EventPriority.LOW) public void onPlayerInteract(PlayerInteractEntityEvent event) { if (event.isCancelled()) { return; } if (plugin.getSettingsManager().isTamableMobsSharing() && event.getRightClicked() instanceof Tameable) { Entity entity = event.getRightClicked(); Player player = event.getPlayer(); ClanPlayer cp = plugin.getClanManager().getClanPlayer(player); Tameable tamed = (Tameable) entity; if (tamed.isTamed()) { if(entity instanceof Wolf && !((Wolf) entity).isSitting()) { return; } if (cp.getClan().isMember((Player) tamed.getOwner())) { tamed.setOwner(player); } } } }
if (!(Permissions.friendlyFire(player) && Permissions.friendlyFire((Player) tameable.getOwner()))) { event.setCancelled(true);
Player owner = (Player) ((Tameable) entity).getOwner(); if (!(Permissions.friendlyFire(player) && Permissions.friendlyFire(owner))) { return false;
OfflinePlayer owner = (OfflinePlayer) brokenin.getOwner(); if (owner != null && !owner.getUniqueId().equals(p.getUniqueId())) { break; OfflinePlayer owner = (OfflinePlayer) ll_brokenin.getOwner(); if (owner != null && !owner.getUniqueId().equals(p.getUniqueId())) { break; case PARROT: Tameable polly = (Tameable) e; AnimalTamer tamer = polly.getOwner(); boolean timeLordIsOwner = (tamer != null && tamer.getUniqueId().equals(p.getUniqueId())); TARDISParrot tmparrot = new TARDISParrot(); case OCELOT: Tameable tamed = (Tameable) e; if (tamed.isTamed() && tamed.getOwner().getUniqueId().equals(p.getUniqueId())) { TARDISParrot pet = new TARDISParrot(); pet.setType(e.getType());
if (e.getType().equals(EntityType.OCELOT) || e.getType().equals(EntityType.WOLF) || e.getType().equals(EntityType.PARROT)) { Tameable tamed = (Tameable) e; if (tamed.isTamed() && tamed.getOwner().getUniqueId().equals(p.getUniqueId())) { TARDISParrot pet = new TARDISParrot(); pet.setType(e.getType());
AnimalTamer animalTamer = ((Tameable) attacker).getOwner();
case WOLF: Tameable wtamed = (Tameable) ent; if (wtamed.isTamed() && wtamed.getOwner().getUniqueId().equals(player.getUniqueId())) { Wolf w = (Wolf) ent; Wolf wolf = (Wolf) l.getWorld().spawnEntity(l, EntityType.WOLF); case OCELOT: Tameable otamed = (Tameable) ent; if (otamed.isTamed() && otamed.getOwner().getUniqueId().equals(player.getUniqueId())) { Ocelot o = (Ocelot) ent; Ocelot cat = (Ocelot) l.getWorld().spawnEntity(l, EntityType.OCELOT);
AnimalTamer owner = pet.getOwner();