[1.8] EntityBullet - Классическая пуля

svk

1,185
2
Oldestkon написал(а):
Пуля на клиентах получает позицию с сервера. Но не получать же её каждый тик? Пару раз в секунду - норм. Но если так обновлять пулю, будет очень некрасиво выглядеть всё. Поэтому делают интерполяцию между настоящей позицией и предыдущей.
Так вот, пуля после спавна посылает свою позицию, а следующую не успевает, т.к. за один (или несколько, до отправки позиции) апдейтов уже врезалась в другую сущность и умерла (setDead), в итоге клиент берет интерполированную позицию между двумя точками, но одна из них не является истинной и может быть либо предыдущей позицией, либо вообще левой точкой уровня {0, 0, 0} и пуля улетает в егеря.

Ну да это всё предположения, проблема может быть и в другом.
Ахахах, я думал я это написал... Лучше поздно, чем никогда.

Всё куда проще, видимо за один тик она не только ставится, но и передвигается, соответственно и интерполяция с егерями происходит.
А фиксится банальным if(life > 1 [tick])
 

CumingSoon

Местный стендапер
1,634
12
269
Нет, там поворот наверно путается. В любом случае, свои расчёты будут точнее
 
222
5
28
Экземпляр главного класса мода.
Аля
Java:
@Mod(modid = Reference.MODID, name = Reference.MODNAME, version = Reference.VERSION, dependencies = Reference.DEPENDENCIES)
public class MyMod {

    @Mod.Instance
    public static MyMod instance;

}
 
29
2
2
EntityRegistry.registerModEntity
А вот для версии 1.12.2 требует еще один параметр ResourceLocation registryName с самого начала.
registerModEntity(ResourceLocation registryName, Class<? extends Entity> entityClass, String entityName, int id, Object mod, int trackingRange, int updateFrequency, boolean sendsVelocityUpdates)
Как его будет правильно задать?
 
Сверху