Войти или зарегистрироваться

Помогите Помогите сделать Particle во круг игрока

VladlenSSD

Активный участник
Пользователь
Баллы
61
Имя в Minecraft
vladoskin
Доброго времени суток! Недавно мне подкинули идею, я такой подумал: "Отличная возможность по практиковаться и апнуть свои навыки".

Идея заключается в нажатие на предмет (По типу руны) и во круг тебя появляется сфера и она тебе что-то да даёт (Мне не нужен метод на нажатие на предмет и т.п, мне нужен метод который создаёт эффект сферы во круг игрока)

Сразу по делу, можете пожалуйста скинуть хотя-бы 1 пример метода который создаёт во круг игрока сферу и она перемещается в месте с ним на определённое время

Заранее спасибо! На примерах я быстро схватываю и понимаю принцип работы, я надеюсь корректно и понятно задал вопрос...
Версия: 1.12.2
Сфера - эффект во круг игрока т.е как шар в котором находится игрок и перемещается в месте с ним

(P.s Я сам пытался сделать подобное, но всё время выходила какая-то ерунда, надеюсь на вашу помощь)
 
Последнее редактирование:
Хотел было начать расписывать, но материал на тему уже имеется. *тык*. Несложно, если помнишь что-то с тригонометрии школьного курса.
 
Хотел было начать расписывать, но материал на тему уже имеется. *тык*. Несложно, если помнишь что-то с тригонометрии школьного курса.
Да там знать ничего не нужно.
Vector vec = new Vector(10, 0, 10); задаем некий радиус.
vec.rotateAroundX(0.05); задаем смещение.
Vector clone = vec.clone().add(player.getLocation().toVector()); перемещаем вектор к игроку.
Ну и там спавним партиклы.
Код:
player.getWorld().spawnParticle(Particle.FLAME, new Location(player.getWorld(), clone.getX(), clone.getY(), clone.getZ()), 1, 0.01, 0.01, 0.01, 0.01);
Проделываем столько раз, что бы замкнуть круг.
 
Последнее редактирование:
Да там знать ничего не нужно.
Vector vec = new Vector(10, 0, 10); задаем некий радиус.
vec.rotateAroundX(0.05); задаем смещение.
Vector clone = vec.clone().add(player.getLocation().toVector()); перемещаем вектор к игроку.
Ну и там спавним партиклы.
Код:
player.getWorld().spawnParticle(Particle.FLAME, new Location(player.getWorld(), clone.getX(), clone.getY(), clone.getZ()), 1, 0.01, 0.01, 0.01, 0.01);
Проделываем столько раз, что бы замкнуть круг.
Тоже хотел изначально это предложить, но при создании сферы тут возникает проблема - сверху и снизу от игрока плотность частиц будет намного больше, чем в остальных местах. Тут разве что начинать рисовать круги в рандомных местах - мб и выглядеть будет круче - но здесь опять пригодится тригонометрия.
 
Тоже хотел изначально это предложить, но при создании сферы тут возникает проблема - сверху и снизу от игрока плотность частиц будет намного больше, чем в остальных местах. Тут разве что начинать рисовать круги в рандомных местах - мб и выглядеть будет круче - но здесь опять пригодится тригонометрия.
Ну подобрать смещение нужно да. Под капотом там все та же тригонометрия.
 
Назад
Верх