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


Java EntityCreature.getAttackTarget方法代碼示例

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


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

示例1: alertOthers

import net.minecraft.entity.EntityCreature; //導入方法依賴的package包/類
protected void alertOthers()
{
    double d0 = this.getTargetDistance();

    for (EntityCreature entitycreature : this.taskOwner.world.getEntitiesWithinAABB(this.taskOwner.getClass(), (new AxisAlignedBB(this.taskOwner.posX, this.taskOwner.posY, this.taskOwner.posZ, this.taskOwner.posX + 1.0D, this.taskOwner.posY + 1.0D, this.taskOwner.posZ + 1.0D)).expand(d0, 10.0D, d0)))
    {
        if (this.taskOwner != entitycreature && entitycreature.getAttackTarget() == null && (!(this.taskOwner instanceof EntityTameable) || ((EntityTameable)this.taskOwner).getOwner() == ((EntityTameable)entitycreature).getOwner()) && !entitycreature.isOnSameTeam(this.taskOwner.getAITarget()))
        {
            boolean flag = false;

            for (Class<?> oclass : this.targetClasses)
            {
                if (entitycreature.getClass() == oclass)
                {
                    flag = true;
                    break;
                }
            }

            if (!flag)
            {
                this.setEntityAttackTarget(entitycreature, this.taskOwner.getAITarget());
            }
        }
    }
}
 
開發者ID:sudofox,項目名稱:Backmemed,代碼行數:27,代碼來源:EntityAIHurtByTarget.java

示例2: alertOthers

import net.minecraft.entity.EntityCreature; //導入方法依賴的package包/類
protected void alertOthers()
{
    double d0 = this.getTargetDistance();

    for (EntityCreature entitycreature : this.taskOwner.worldObj.getEntitiesWithinAABB(this.taskOwner.getClass(), (new AxisAlignedBB(this.taskOwner.posX, this.taskOwner.posY, this.taskOwner.posZ, this.taskOwner.posX + 1.0D, this.taskOwner.posY + 1.0D, this.taskOwner.posZ + 1.0D)).expand(d0, 10.0D, d0)))
    {
        if (this.taskOwner != entitycreature && entitycreature.getAttackTarget() == null && (!(this.taskOwner instanceof EntityTameable) || ((EntityTameable)this.taskOwner).getOwner() == ((EntityTameable)entitycreature).getOwner()) && !entitycreature.isOnSameTeam(this.taskOwner.getAITarget()))
        {
            boolean flag = false;

            for (Class<?> oclass : this.targetClasses)
            {
                if (entitycreature.getClass() == oclass)
                {
                    flag = true;
                    break;
                }
            }

            if (!flag)
            {
                this.setEntityAttackTarget(entitycreature, this.taskOwner.getAITarget());
            }
        }
    }
}
 
開發者ID:F1r3w477,項目名稱:CustomWorldGen,代碼行數:27,代碼來源:EntityAIHurtByTarget.java

示例3: startExecuting

import net.minecraft.entity.EntityCreature; //導入方法依賴的package包/類
/**
 * Execute a one shot task or start executing a continuous task
 */
public void startExecuting()
{
    this.taskOwner.setAttackTarget(this.taskOwner.getAITarget());
    this.revengeTimerOld = this.taskOwner.getRevengeTimer();

    if (this.entityCallsForHelp)
    {
        double d0 = this.getTargetDistance();

        for (EntityCreature entitycreature : this.taskOwner.worldObj.getEntitiesWithinAABB(this.taskOwner.getClass(), (new AxisAlignedBB(this.taskOwner.posX, this.taskOwner.posY, this.taskOwner.posZ, this.taskOwner.posX + 1.0D, this.taskOwner.posY + 1.0D, this.taskOwner.posZ + 1.0D)).expand(d0, 10.0D, d0)))
        {
            if (this.taskOwner != entitycreature && entitycreature.getAttackTarget() == null && !entitycreature.isOnSameTeam(this.taskOwner.getAITarget()))
            {
                boolean flag = false;

                for (Class oclass : this.targetClasses)
                {
                    if (entitycreature.getClass() == oclass)
                    {
                        flag = true;
                        break;
                    }
                }

                if (!flag)
                {
                    this.setEntityAttackTarget(entitycreature, this.taskOwner.getAITarget());
                }
            }
        }
    }

    super.startExecuting();
}
 
開發者ID:Notoh,項目名稱:DecompiledMinecraft,代碼行數:38,代碼來源:EntityAIHurtByTarget.java


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