Помогите Оптимизация кода выстрела

  • Автор темы Автор темы ilya50
  • Дата начала Дата начала

ilya50

Активный участник
Пользователь
Баллы
76
Я думаю что вызов getNearbyEntityes каждый раз может плохо сказаться на производительности, поэтому думаю что есть альтернативный способ решения задачи. После выстрела запускается цикл, который берёт положение взгляда игрока и итерирует его пока не встретит LivingEntity.
upload_2019-4-11_0-46-55.png upload_2019-4-11_0-47-36.png
 
Попробуй измерить время выполнения этого метода.
Добавь перед его выполнением System.nanoTime();
А в конце отнимаешь текущее время от старого. Получишь время в наносекундах которое потребовалось на выполнение этого кода. Таким образом и можно прикинуть нагрузку. В идеале, это не должно быть более милисекунды.
 
Я думаю что вызов getNearbyEntityes каждый раз может плохо сказаться на производительности, поэтому думаю что есть альтернативный способ решения задачи. После выстрела запускается цикл, который берёт положение взгляда игрока и итерирует его пока не встретит LivingEntity.
И зачем ты создаешь новый сет каждый раз, если все равно потом просто итерурешь?upload_2019-4-11_12-34-38.png

+ Замени проверку instanceof LivingEntity на
getNearbyEntitiesByType(LivingEntity.class, ...) (не знаю есть ли в обычном спиготе, в пепере еще можно просто getNearbyLivingEntites, но около-без разницы, можешь самому чекать.
Ну и к сведению, если радиус у тебя маленький то соответственно getNearbyEntites будет брать энтитией из одного чанка.
 
Назад
Верх