001 package net.minecraft.src; 002 003 public class EntityAIOwnerHurtByTarget extends EntityAITarget 004 { 005 EntityTameable theDefendingTameable; 006 EntityLiving theOwnerAttacker; 007 008 public EntityAIOwnerHurtByTarget(EntityTameable par1EntityTameable) 009 { 010 super(par1EntityTameable, 32.0F, false); 011 this.theDefendingTameable = par1EntityTameable; 012 this.setMutexBits(1); 013 } 014 015 /** 016 * Returns whether the EntityAIBase should begin execution. 017 */ 018 public boolean shouldExecute() 019 { 020 if (!this.theDefendingTameable.isTamed()) 021 { 022 return false; 023 } 024 else 025 { 026 EntityLiving var1 = this.theDefendingTameable.getOwner(); 027 028 if (var1 == null) 029 { 030 return false; 031 } 032 else 033 { 034 this.theOwnerAttacker = var1.getAITarget(); 035 return this.isSuitableTarget(this.theOwnerAttacker, false); 036 } 037 } 038 } 039 040 /** 041 * Execute a one shot task or start executing a continuous task 042 */ 043 public void startExecuting() 044 { 045 this.taskOwner.setAttackTarget(this.theOwnerAttacker); 046 super.startExecuting(); 047 } 048 }