mirror of
https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
synced 2026-01-25 10:32:49 +00:00
53 lines
1.4 KiB
Java
53 lines
1.4 KiB
Java
package com.hbm.entity.mob;
|
|
|
|
import java.util.List;
|
|
|
|
import net.minecraft.entity.EntityCreature;
|
|
import net.minecraft.entity.SharedMonsterAttributes;
|
|
import net.minecraft.entity.ai.EntityAILookIdle;
|
|
import net.minecraft.entity.ai.EntityAISwimming;
|
|
import net.minecraft.entity.ai.EntityAIWander;
|
|
import net.minecraft.entity.player.EntityPlayer;
|
|
import net.minecraft.world.World;
|
|
|
|
public class EntityGhost extends EntityCreature {
|
|
|
|
public EntityGhost(World world) {
|
|
super(world);
|
|
this.tasks.addTask(0, new EntityAISwimming(this));
|
|
this.tasks.addTask(1, new EntityAIWander(this, 1.0D));
|
|
this.tasks.addTask(2, new EntityAILookIdle(this));
|
|
|
|
this.renderDistanceWeight *= 10;
|
|
}
|
|
|
|
@Override
|
|
protected void applyEntityAttributes() {
|
|
super.applyEntityAttributes();
|
|
this.getEntityAttribute(SharedMonsterAttributes.maxHealth).setBaseValue(8.0D);
|
|
this.getEntityAttribute(SharedMonsterAttributes.movementSpeed).setBaseValue(0.2D);
|
|
}
|
|
|
|
@Override
|
|
public void onUpdate() {
|
|
super.onUpdate();
|
|
|
|
if(!worldObj.isRemote) {
|
|
double despawnRange = 50;
|
|
List<EntityPlayer> players = worldObj.getEntitiesWithinAABB(EntityPlayer.class, this.boundingBox.expand(despawnRange, despawnRange, despawnRange));
|
|
if(!players.isEmpty())
|
|
this.setDead();
|
|
}
|
|
}
|
|
|
|
@Override
|
|
public void setHealth(float health) {
|
|
super.setHealth(this.getMaxHealth());
|
|
}
|
|
|
|
@Override
|
|
public boolean isEntityInvulnerable() {
|
|
return true;
|
|
}
|
|
}
|