- 1,560
- 86
- 204
Вот написал код на притягивание предметов магнитом. Взял часть кода притягивания из частиц опыта.
Вот код:
Не понимаю в чём ошибка
Вот код:
Код:
@SubscribeEvent
public void onPlayerEvent(PlayerEvent event) {
EntityPlayer player = event.getEntityPlayer();
World world = player.getEntityWorld();
List<Entity> list = world.getLoadedEntityList();
for (int e = 0; e < list.size(); e++) {
if (list.get(e) instanceof EntityItem) {
EntityItem entity = (EntityItem)list.get(e);
if (world.isRemote && player.getDistanceSqToEntity(entity) < 16 && player.inventory.getCurrentItem().getItem() instanceof ItemMagnet) {
double d0 = 16.0D;
double d1 = (player.posX - entity.posX) / d0;
double d2 = (player.posY + (double)player.getEyeHeight() / 2.0D - entity.posY) / d0;
double d3 = (player.posZ - entity.posZ) / d0;
double d4 = Math.sqrt(d1 * d1 + d2 * d2 + d3 * d3);
double d5 = 1.0D - d4;
if (d5 > 0.0D)
{
d5 = d5 * d5;
entity.motionX += d1 / d4 * d5 * 0.01D;
entity.motionY += d2 / d4 * d5 * 0.01D;
entity.motionZ += d3 / d4 * d5 * 0.01D;
}
}
}
}
}