下面列出了org.bukkit.Material#EGG 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
public ProjectileSpleefEvent(GameMap map, boolean b) {
this.gMap = map;
this.enabled = b;
File dataDirectory = SkyWarsReloaded.get().getDataFolder();
File mapDataDirectory = new File(dataDirectory, "mapsData");
if (!mapDataDirectory.exists() && !mapDataDirectory.mkdirs()) {
return;
}
File mapFile = new File(mapDataDirectory, gMap.getName() + ".yml");
if (mapFile.exists()) {
eventName = "ProjectileSpleefEvent";
slot = 13;
material = new ItemStack(Material.EGG, 1);
FileConfiguration fc = YamlConfiguration.loadConfiguration(mapFile);
this.min = fc.getInt("events." + eventName + ".minStart");
this.max = fc.getInt("events." + eventName + ".maxStart");
this.length = fc.getInt("events." + eventName + ".length");
this.chance = fc.getInt("events." + eventName + ".chance");
this.title = fc.getString("events." + eventName + ".title");
this.subtitle = fc.getString("events." + eventName + ".subtitle");
this.startMessage = fc.getString("events." + eventName + ".startMessage");
this.endMessage = fc.getString("events." + eventName + ".endMessage");
this.announceEvent = fc.getBoolean("events." + eventName + ".announceTimer");
this.repeatable = fc.getBoolean("events." + eventName + ".repeatable");
this.eggsToAdd = fc.getInt("events." + eventName + ".eggsAddedToInventory");
}
}
/**
* Returns whether the NPC is using an egg item.
*/
public boolean usesEgg(ItemStack it) {
return it != null && it.getType() == Material.EGG;
}
public void dropEggs() {
ItemStack eggStack = new ItemStack(Material.EGG, 1);
ItemMeta eggMeta = eggStack.getItemMeta();
eggMeta.setLore(lore);
eggStack.setItemMeta(eggMeta);
Iterator<LivingEntity> superChickenIterator = EntityTracker.getSuperMobs().iterator();
while (superChickenIterator.hasNext()) {
LivingEntity chicken = superChickenIterator.next();
if (!(chicken instanceof Chicken)) continue;
if (chicken == null || !chicken.isValid()) {
superChickenIterator.remove();
} else {
Item droppedItem = chicken.getWorld().dropItem(chicken.getLocation(), eggStack);
droppedItem.setVelocity(ItemDropVelocity.ItemDropVelocity());
new BukkitRunnable() {
@Override
public void run() {
if (droppedItem.isValid()) {
droppedItem.remove();
}
}
}.runTaskLater(MetadataHandler.PLUGIN, 20 * 60);
}
}
}