- 1,185
- 3
Есть вот такой код
Но он не видит игроков, только мобов...
Вот полный...
Код:
for(int i = 0; i < par2World.loadedEntityList.size(); ++i)
{
if(((Entity)par2World.loadedEntityList.get(i)).getDistanceToEntity(par3EntityPlayer) < closest && par2World.loadedEntityList.get(i) instanceof EntityLiving)
{
closest = ((Entity)par2World.loadedEntityList.get(i)).getDistanceToEntity(par3EntityPlayer);
thisOne = (Entity)par2World.loadedEntityList.get(i);
}
}
Вот полный...
Код:
public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)
{
float closest = Float.MAX_VALUE;
Entity thisOne = null;
for(int i = 0; i < par2World.loadedEntityList.size(); ++i)
{
if(((Entity)par2World.loadedEntityList.get(i)).getDistanceToEntity(par3EntityPlayer) < closest && par2World.loadedEntityList.get(i) instanceof EntityLiving)
{
closest = ((Entity)par2World.loadedEntityList.get(i)).getDistanceToEntity(par3EntityPlayer);
thisOne = (Entity)par2World.loadedEntityList.get(i);
}
}
if(thisOne != null) {
if(thisOne.posX < par3EntityPlayer.posX && thisOne.posX - par3EntityPlayer.posX <= 4.0D) {
if(thisOne.posZ < par3EntityPlayer.posZ && thisOne.posX - par3EntityPlayer.posX <= 4.0D && thisOne.posY - par3EntityPlayer.posY <= 3.0D) {
thisOne.addVelocity(0.0D, 1.0D, 0.0D);
thisOne.fallDistance = 0.0F;
}
if(thisOne.posZ > par3EntityPlayer.posZ && par3EntityPlayer.posZ - thisOne.posZ >= -4.0D && thisOne.posY - par3EntityPlayer.posY <= 3.0D) {
thisOne.addVelocity(0.0D, 1.0D, 0.0D);
thisOne.fallDistance = 0.0F;
}
}
if(thisOne.posX > par3EntityPlayer.posX && par3EntityPlayer.posX - thisOne.posX >= -4.0D) {
if(thisOne.posZ < par3EntityPlayer.posZ && thisOne.posX - par3EntityPlayer.posX <= 4.0D && thisOne.posY - par3EntityPlayer.posY <= 3.0D) {
thisOne.addVelocity(0.0D, 1.0D, 0.0D);
thisOne.fallDistance = 0.0F;
}
if(thisOne.posZ > par3EntityPlayer.posZ && par3EntityPlayer.posZ - thisOne.posZ >= -4.0D && thisOne.posY - par3EntityPlayer.posY <= 3.0D) {
thisOne.addVelocity(0.0D, 1.0D, 0.0D);
thisOne.fallDistance = 0.0F;
}
}
}
return par1ItemStack;
}