當前位置: 首頁>>代碼示例>>Java>>正文


Java EntityTargetEvent.getEntity方法代碼示例

本文整理匯總了Java中org.bukkit.event.entity.EntityTargetEvent.getEntity方法的典型用法代碼示例。如果您正苦於以下問題:Java EntityTargetEvent.getEntity方法的具體用法?Java EntityTargetEvent.getEntity怎麽用?Java EntityTargetEvent.getEntity使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在org.bukkit.event.entity.EntityTargetEvent的用法示例。


在下文中一共展示了EntityTargetEvent.getEntity方法的10個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: onTarget

import org.bukkit.event.entity.EntityTargetEvent; //導入方法依賴的package包/類
@EventHandler(ignoreCancelled = true)
public void onTarget(EntityTargetEvent event) {
    if(!(event.getEntity() instanceof ExperienceOrb)) {
        ParticipantState victimState = null;
        if(event.getTarget() instanceof Player) {
            // Don't target allies
            MatchPlayer victim = getVictim(event.getTarget());
            if(victim == null) return;
            victimState = victim.getParticipantState();
        } else if(event.getTarget() != null) {
            // Don't target other mobs owned by allies
            victimState = entityResolver.getOwner(event.getTarget());
        }
        if(victimState == null) return;
        DamageInfo damageInfo = damageResolver.resolveDamage(EntityDamageEvent.DamageCause.ENTITY_ATTACK, event.getTarget(), event.getEntity());
        if(queryHostile(event, victimState, damageInfo).isDenied()) {
            event.setCancelled(true);
        }
    }
}
 
開發者ID:OvercastNetwork,項目名稱:ProjectAres,代碼行數:21,代碼來源:DamageMatchModule.java

示例2: onEntityTarget

import org.bukkit.event.entity.EntityTargetEvent; //導入方法依賴的package包/類
@EventHandler(priority = EventPriority.HIGH)
public void onEntityTarget(EntityTargetEvent event)
{
	if( event.getEntity() instanceof Skeleton && NavyCraft.aaSkelesList.contains((Skeleton)event.getEntity()) )
	{
		if( event.getTarget() instanceof Player )
		{
			Player target = (Player)event.getTarget();
			Craft skeleCraft = Craft.getCraft(target.getLocation().getBlockX(), target.getLocation().getBlockY(), target.getLocation().getBlockZ());
			if( skeleCraft != null && !skeleCraft.crewNames.isEmpty() && skeleCraft.crewNames.contains(target.getName()) )
			{
				event.setCancelled(true);
			}
		}
	}
}
 
開發者ID:Maximuspayne,項目名稱:NavyCraft2-Lite,代碼行數:17,代碼來源:MoveCraft_EntityListener.java

示例3: onEntityTarget

import org.bukkit.event.entity.EntityTargetEvent; //導入方法依賴的package包/類
@EventHandler(ignoreCancelled = true)
public void onEntityTarget(EntityTargetEvent event)
{
    Entity target = event.getTarget();
    if(target == null) return;
    
    Entity entity = event.getEntity();
    if(!this.isMonster(entity)) return;
    if(entity.hasMetadata(this.ALLOW_TARGET_TAG)) return;
    
    Flag flag = this.GetFlagInstanceAtLocation(target.getLocation(), null);
    if(flag == null) return;
    
    event.setCancelled(true);
    entity.remove();
}
 
開發者ID:BigScary,項目名稱:GriefPreventionFlags,代碼行數:17,代碼來源:FlagDef_NoMonsterSpawns.java

示例4: onEntityTarget

import org.bukkit.event.entity.EntityTargetEvent; //導入方法依賴的package包/類
@EventHandler(priority = EventPriority.NORMAL)
public void onEntityTarget(EntityTargetEvent event) {
	if (!(event.getEntity() instanceof LivingEntity)) {
		return;
	}
	
	if (!MobLib.isMobLibEntity((LivingEntity) event.getEntity())) {
		return;
	}
		
	CommonCustomMob mob = CommonCustomMob.getCCM(event.getEntity());
	if (mob != null) {
		mob.onTarget(event);
	}
	
}
 
開發者ID:netizen539,項目名稱:civcraft,代碼行數:17,代碼來源:MobListener.java

示例5: onEntityTarget

import org.bukkit.event.entity.EntityTargetEvent; //導入方法依賴的package包/類
/**
 * Handle EntityTarget events.
 *
 * @param event The event to process
 */
@EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true)
public void onEntityTarget(EntityTargetEvent event) {
    Entity entity = event.getEntity();
    Entity target = event.getTarget();

    if (!(entity instanceof Tameable) || !(target instanceof Player)) {
        return;
    }

    Player player = (Player) target;
    Tameable tameable = (Tameable) entity;

    if (!UserManager.hasPlayerDataKey(player) || !CombatUtils.isFriendlyPet(player, tameable)) {
        return;
    }

    // isFriendlyPet ensures that the Tameable is: Tamed, owned by a player, and the owner is in the same party
    // So we can make some assumptions here, about our casting and our check
    if (!(Permissions.friendlyFire(player) && Permissions.friendlyFire((Player) tameable.getOwner()))) {
        event.setCancelled(true);
    }
}
 
開發者ID:Pershonkey,項目名稱:McMMOPlus,代碼行數:28,代碼來源:EntityListener.java

示例6: onEntityTarget

import org.bukkit.event.entity.EntityTargetEvent; //導入方法依賴的package包/類
@EventHandler
public void onEntityTarget(EntityTargetEvent event) {
	Entity e = event.getEntity();
	Entity target = event.getTarget();
	ArenaManager am = SimpleSurvivalGames.instance.getArenaManager();
	
	// The entity or the target may not be null
	if(e == null || target == null)
		return;
	
	// If the target is a player, he may not be targeted if he's in the lobby or when he's a spectator
	if(target instanceof Player) {
		Player p = (Player) target;
		
		// Is the target player currently in any arena
		if(am.isInArena(p)) {
			ArenaPlayer ap = am.getPlayer(p);
			
			// The player may not be targeted
			if(ap.isInLobby() || ap.isSpectator())
				event.setCancelled(true);
		}
	}
}
 
開發者ID:timvisee,項目名稱:simple-survival-games,代碼行數:25,代碼來源:SSGEntityListener.java

示例7: onEntityTarget

import org.bukkit.event.entity.EntityTargetEvent; //導入方法依賴的package包/類
@EventHandler
protected void onEntityTarget(EntityTargetEvent e) {
	// On entity target - Stop mobs targeting spectators
	// Check to make sure it isn't an NPC (Citizens NPC's will be detectable using 'entity.hasMetadata("NPC")')
	if (e.getTarget() != null && e.getTarget() instanceof Player && !e.getTarget().hasMetadata("NPC") && SkyWarsReloaded.getPC().getPlayer(((Player) e.getTarget()).getUniqueId()).isSpectating()) {
		e.setCancelled(true);
	}
	if (e.getTarget() instanceof Player && e.getTarget() != null && SkyWarsReloaded.getPC().getPlayer(((Player) e.getTarget()).getUniqueId()).isSpectating()) {
		if (e.getEntity() instanceof ExperienceOrb) {
			repellExpOrb((Player) e.getTarget(), (ExperienceOrb) e.getEntity());
			e.setCancelled(true);
			e.setTarget(null);
		}
	}
}
 
開發者ID:smessie,項目名稱:SkyWarsReloaded,代碼行數:16,代碼來源:SpectatorListener.java

示例8: onEntityTarget

import org.bukkit.event.entity.EntityTargetEvent; //導入方法依賴的package包/類
@EventHandler(priority = EventPriority.LOW)
public void onEntityTarget(EntityTargetEvent event)
{
    if (!event.isCancelled() && event.getEntity() instanceof Player)
    {
        PlayerProfile profile = CoreData.getProfile((Player) event.getEntity());

        if (profile.getData("Nerfed", long.class) != null)
        {
            event.setCancelled(true);
        }
    }
}
 
開發者ID:Vanillacraft,項目名稱:vanillacraft,代碼行數:14,代碼來源:Nerf.java

示例9: onEvent

import org.bukkit.event.entity.EntityTargetEvent; //導入方法依賴的package包/類
/**
 * Various entity target events, these must be done by hand, and directly in this method.
 *
 * @param event The target event.
 */
@EventHandler(priority = EventPriority.HIGHEST)
private void onEvent(EntityTargetEvent event) {
    Entity entity = event.getEntity();

    if (event.getTarget() instanceof Player) {
        // Demon Aspect III
        if (entity instanceof Zombie || entity instanceof Skeleton) {
            if (DGData.PLAYER_R.fromPlayer((Player) event.getTarget()).hasAspect(Aspects.DEMON_ASPECT_HERO)) {
                event.setCancelled(true);
            }
        }
    }
}
 
開發者ID:DemigodsRPG,項目名稱:DemigodsRPG,代碼行數:19,代碼來源:AbilityListener.java

示例10: onEntityTarget

import org.bukkit.event.entity.EntityTargetEvent; //導入方法依賴的package包/類
@EventHandler
public void onEntityTarget(EntityTargetEvent e) {
	if(e.getEntityType() == EntityType.GIANT){
		return;
	}
	if (e.getEntity().getLocation().getWorld().getName() == "Christmas"
			&& e.getEntity() != null
			&& e.getEntity().getLocation().getWorld() != null
			){
		if ((e.getTarget() instanceof Player) || e.getTarget() instanceof Villager) {
			e.setCancelled(true);
		}
	}
}
 
開發者ID:EmilHernvall,項目名稱:tregmine,代碼行數:15,代碼來源:TargetingListener.java


注:本文中的org.bukkit.event.entity.EntityTargetEvent.getEntity方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。