initial commit

This commit is contained in:
Sen 2025-03-11 00:23:54 +01:00 committed by Sen
parent 3c9ee26b06
commit 22186c33b9
1458 changed files with 282792 additions and 0 deletions

View file

@ -0,0 +1,67 @@
package game.ai;
import game.entity.types.EntityLiving;
import game.entity.types.EntityTameable;
public class EntityAISit extends EntityAIBase
{
private EntityTameable theEntity;
/** If the EntityTameable is sitting. */
private boolean isSitting;
public EntityAISit(EntityTameable entityIn)
{
this.theEntity = entityIn;
this.setMutexBits(5);
}
/**
* Returns whether the EntityAIBase should begin execution.
*/
public boolean shouldExecute()
{
if (!this.theEntity.isTamed())
{
return false;
}
else if (this.theEntity.isInLiquid())
{
return false;
}
else if (!this.theEntity.onGround)
{
return false;
}
else
{
EntityLiving entitylivingbase = this.theEntity.getOwner();
return entitylivingbase == null ? true : (this.theEntity.getDistanceSqToEntity(entitylivingbase) < 144.0D && entitylivingbase.getAttackedBy() != null ? false : this.isSitting);
}
}
/**
* Execute a one shot task or start executing a continuous task
*/
public void startExecuting()
{
this.theEntity.getNavigator().clearPathEntity();
this.theEntity.setSitting(true);
}
/**
* Resets the task
*/
public void resetTask()
{
this.theEntity.setSitting(false);
}
/**
* Sets the sitting flag.
*/
public void setSitting(boolean sitting)
{
this.isSitting = sitting;
}
}