- 1,560
- 86
- 204
При любом движении моя сущность очень некрасиво дёргается. Как это исправить? Двигаю сущность с помощью изменения motionX и motionZ.
"Очень некрасиво" - это как?очень некрасиво дёргается
public class EntityVehicle extends Entity {
public EntityVehicle(World world) {
super(world);
setSize(1F, 1F);
stepHeight = 1F;
}
@Override
protected void readEntityFromNBT(NBTTagCompound compound) {}
@Override
protected void writeEntityToNBT(NBTTagCompound compound) {}
public boolean processInitialInteract(EntityPlayer player, EnumHand hand) {
if (!player.isSneaking() && !world.isRemote) {
player.startRiding(this);
return true;
}
return false;
}
@Override
protected boolean canBeRidden(Entity entity) {
return true;
}
@Override
public boolean attackEntityFrom(DamageSource source, float amount) {
setDead();
return true;
}
@Override
public void onUpdate() {
motionY -= 0.08D;
motionX *= 0.8D;
motionY *= 0.9D;
motionZ *= 0.8D;
EntityLivingBase passenger = getControlledPassenger();
rotationYaw = passenger.rotationYaw;
moveRelative(0, 0, 2F, 0.01F);
move(MoverType.SELF, motionX * 2F, motionY, motionZ * 2F);
}
public EntityLivingBase getControlledPassenger() {
if (!getPassengers().isEmpty() && getPassengers().get(0) instanceof EntityLivingBase) {
return (EntityLivingBase) getPassengers().get(0);
}
return null;
}
}