类org.bukkit.entity.Parrot源码实例Demo

下面列出了怎么用org.bukkit.entity.Parrot的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: StackMob-3   文件: ParrotTrait.java
@Override
public boolean checkTrait(Entity original, Entity nearby) {
    if(original instanceof Parrot){
        return ((Parrot) original).getVariant() != ((Parrot) nearby).getVariant();
    }
    return false;
}
 
源代码2 项目: Skript   文件: ParrotData.java
@Override
protected boolean init(@Nullable Class<? extends Parrot> c, @Nullable Parrot e) {
	if (e != null) { // Entity provided, take its variant
		Parrot.Variant entityVariant = e.getVariant();
		for (int i = 0; i < variants.length; i++) {
			Object var = variants[i];
			if (var == entityVariant) { // Found variant of entity
				variant = i; // Put its numeric id here
			}
		}
	} else { // No entity, ask for variant randomization on spawn
		variant = -1;
	}
	return true;
}
 
源代码3 项目: Skript   文件: ParrotData.java
@Override
public void set(Parrot entity) {
	if (variant == -1) {
		int randomVariant = ThreadLocalRandom.current().nextInt(0, variants.length);
		entity.setVariant((Variant) variants[randomVariant]);
	} else {
		entity.setVariant((Variant) variants[variant]);
	}
}
 
源代码4 项目: StackMob-3   文件: ParrotTrait.java
@Override
public void applyTrait(Entity original, Entity spawned) {
    if(original instanceof Parrot){
        ((Parrot) spawned).setVariant(((Parrot) original).getVariant());
    }
}
 
源代码5 项目: Skript   文件: ParrotData.java
@Override
protected boolean match(Parrot entity) {
	return variant == -1 || entity.getVariant() == variants[variant];
}
 
源代码6 项目: Skript   文件: ParrotData.java
@Override
public Class<? extends Parrot> getType() {
	return Parrot.class;
}
 
源代码7 项目: PetMaster   文件: PlayerInteractListener.java
/**
 * Displays a hologram, and automatically delete it after a given delay.
 * 
 * @param player
 * @param owner
 * @param tameable
 */
@SuppressWarnings("deprecation")
private void displayHologramAndMessage(Player player, AnimalTamer owner, Tameable tameable) {
	if (hologramMessage) {
		double offset = HORSE_OFFSET;
		if (tameable instanceof Ocelot || version >= 14 && tameable instanceof Cat) {
			if (!displayCat || !player.hasPermission("petmaster.showowner.cat")) {
				return;
			}
			offset = CAT_OFFSET;
		} else if (tameable instanceof Wolf) {
			if (!displayDog || !player.hasPermission("petmaster.showowner.dog")) {
				return;
			}
			offset = DOG_OFFSET;
		} else if (version >= 11 && tameable instanceof Llama) {
			if (!displayLlama || !player.hasPermission("petmaster.showowner.llama")) {
				return;
			}
			offset = LLAMA_OFFSET;
		} else if (version >= 12 && tameable instanceof Parrot) {
			if (!displayParrot || !player.hasPermission("petmaster.showowner.parrot")) {
				return;
			}
			offset = PARROT_OFFSET;
		} else if (!displayHorse || !player.hasPermission("petmaster.showowner.horse")) {
			return;
		}

		Location eventLocation = tameable.getLocation();
		// Create location with offset.
		Location hologramLocation = new Location(eventLocation.getWorld(), eventLocation.getX(),
				eventLocation.getY() + offset, eventLocation.getZ());

		final Hologram hologram = HologramsAPI.createHologram(plugin, hologramLocation);
		hologram.appendTextLine(
				ChatColor.GRAY + plugin.getPluginLang().getString("petmaster-hologram", "Pet owned by ")
						+ ChatColor.GOLD + owner.getName());

		// Runnable to delete hologram.
		new BukkitRunnable() {

			@Override
			public void run() {

				hologram.delete();
			}
		}.runTaskLater(plugin, hologramDuration);
	}

	String healthInfo = "";
	if (showHealth) {
		Animals animal = (Animals) tameable;
		String currentHealth = String.format("%.1f", animal.getHealth());
		String maxHealth = version < 9 ? String.format("%.1f", animal.getMaxHealth())
				: String.format("%.1f", animal.getAttribute(Attribute.GENERIC_MAX_HEALTH).getValue());
		healthInfo = ChatColor.GRAY + ". " + plugin.getPluginLang().getString("petmaster-health", "Health: ")
				+ ChatColor.GOLD + currentHealth + "/" + maxHealth;
	}

	if (chatMessage) {
		player.sendMessage(plugin.getChatHeader() + plugin.getPluginLang().getString("petmaster-chat", "Pet owned by ")
				+ ChatColor.GOLD + owner.getName() + healthInfo);
	}

	if (actionBarMessage) {
		try {
			FancyMessageSender.sendActionBarMessage(player, "&o" + ChatColor.GRAY
					+ plugin.getPluginLang().getString("petmaster-action-bar", "Pet owned by ") + ChatColor.GOLD
					+ owner.getName() + healthInfo);
		} catch (Exception e) {
			plugin.getLogger().warning("Errors while trying to display action bar message for pet ownership.");
		}
	}
}
 
 类所在包
 类方法
 同包方法