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

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

源代码1 项目: SkyWarsReloaded   文件: EnderDragonEvent.java
@Override
public void endEvent(boolean force) {
	if (fired) {
		if (force && length != -1) {
			br.cancel();
		}
		World world = gMap.getCurrentWorld();
		for (Entity ent: world.getEntities()) {
			if (ent instanceof EnderDragon) {
				ent.remove();
				break;
			}
		}
		if (gMap.getMatchState() == MatchState.PLAYING) {
			MatchManager.get().message(gMap, ChatColor.translateAlternateColorCodes('&', endMessage));
		}
		if (repeatable || force) {
			setStartTime();
			this.startTime = this.startTime + gMap.getTimer();
			this.fired = false;
		}
	}
}
 
源代码2 项目: EntityAPI   文件: ControllableEnderDragonBase.java
public ControllableEnderDragonBase(int id, EntityManager manager) {
    super(id, ControllableEntityType.ENDERDRAGON, manager);
    Bukkit.getPluginManager().registerEvents(new Listener() {

        @EventHandler
        public void onEntityExplode(EntityExplodeEvent event) {
            if (!shouldDestroyBlocks()) {
                Entity entity = event.getEntity();
                if (entity instanceof EnderDragon && entity.equals(getBukkitEntity())) {
                    event.setCancelled(true);
                } else if (entity instanceof ComplexEntityPart && ((ComplexEntityPart) entity).getParent().equals(getBukkitEntity())) {
                    event.setCancelled(true);
                }
            }
        }

    }, EntityAPI.getCore());
}
 
源代码3 项目: Skript   文件: EvtDamage.java
@SuppressWarnings("null")
@Override
public boolean check(final Event evt) {
	final EntityDamageEvent e = (EntityDamageEvent) evt;
	if (!checkType(e.getEntity()))
		return false;
	if (e instanceof EntityDamageByEntityEvent && ((EntityDamageByEntityEvent) e).getDamager() instanceof EnderDragon && ((EntityDamageByEntityEvent) e).getEntity() instanceof EnderDragon)
		return false;
	return checkDamage(e);
}
 
源代码4 项目: ce   文件: BeastmastersBow.java
@Override
	public boolean effect(Event event, Player player) {
//		  List<String> lore = e.getBow().getItemMeta().getLore();
//		  if(!lore.contains(placeHolder)) {
//			  for(int i = descriptionSize; i != 0; i--)
//				  lore.remove(i);
//			  e.getProjectile().setMetadata("ce." + this.getOriginalName(), new FixedMetadataValue(main, writeType(lore)));
//			  player.setMetadata("ce.CanUnleashBeasts", null);
//		  } else
//			  e.getProjectile().setMetadata("ce." + this.getOriginalName(), null);
		  if(event instanceof EntityDamageByEntityEvent) {
		  EntityDamageByEntityEvent e = (EntityDamageByEntityEvent) event;
		  if(e.getDamager() != player)
			  return false;
		  Entity ent = e.getEntity();
		  Location loc = ent.getLocation();
		  World w = ent.getWorld();
			if(ent instanceof Silverfish || ent instanceof EnderDragon || ent instanceof Spider || ent instanceof Slime || ent instanceof Ghast || ent instanceof MagmaCube || ent instanceof CaveSpider || (ent instanceof Wolf && ((Wolf) ent).isAngry()) || ent instanceof PigZombie) {
					e.setDamage(e.getDamage()*DamageMultiplication);
					w.playEffect(loc, Effect.SMOKE, 50);
					w.playEffect(loc, Effect.MOBSPAWNER_FLAMES, 50);
					EffectManager.playSound(loc, "BLOCK_PISTON_RETRACT", 1.3f, 3f);
				return true;
			} else if (ent instanceof Player) {
				for(int i = 0; i < MaximumMobs; i++) {
					if(rand.nextInt(100) < MobAppearanceChance) {
						w.spawnEntity(loc, rand.nextInt(2) == 1 ? EntityType.SPIDER : EntityType.SLIME);
						w.playEffect(loc, Effect.MOBSPAWNER_FLAMES, 30);
						w.playEffect(loc, Effect.SMOKE, 30);
						EffectManager.playSound(loc, "BLOCK_ANVIL_BREAK", 0.3f, 0.1f);
					}
				}
			}
		}
		  return false;
	}
 
源代码5 项目: Kettle   文件: EnderDragonChangePhaseEvent.java
public EnderDragonChangePhaseEvent(EnderDragon enderDragon, EnderDragon.Phase currentPhase, EnderDragon.Phase newPhase) {
    super(enderDragon);
    this.currentPhase = currentPhase;
    this.setNewPhase(newPhase);
}
 
源代码6 项目: Kettle   文件: EnderDragonChangePhaseEvent.java
@Override
public EnderDragon getEntity() {
    return (EnderDragon) entity;
}
 
源代码7 项目: Kettle   文件: CraftEnderDragonPart.java
@Override
public EnderDragon getParent() {
    return (EnderDragon) super.getParent();
}
 
源代码8 项目: Thermos   文件: CraftEnderDragonPart.java
@Override
public EnderDragon getParent() {
    return (EnderDragon) super.getParent();
}
 
源代码9 项目: Kettle   文件: EnderDragonChangePhaseEvent.java
/**
 * Gets the current phase that the dragon is in. This method will return null
 * when a dragon is first spawned and hasn't yet been assigned a phase.
 *
 * @return the current dragon phase
 */
public EnderDragon.Phase getCurrentPhase() {
    return currentPhase;
}
 
源代码10 项目: Kettle   文件: EnderDragonChangePhaseEvent.java
/**
 * Gets the new phase that the dragon will switch to.
 *
 * @return the new dragon phase
 */
public EnderDragon.Phase getNewPhase() {
    return newPhase;
}
 
源代码11 项目: Kettle   文件: EnderDragonChangePhaseEvent.java
/**
 * Sets the new phase for the ender dragon.
 *
 * @param newPhase the new dragon phase
 */
public void setNewPhase(EnderDragon.Phase newPhase) {
    Validate.notNull(newPhase, "New dragon phase cannot be null");
    this.newPhase = newPhase;
}
 
 类所在包
 类方法
 同包方法