Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите Визуализация стрельбы в майнкрафте

Статус
Закрыто для дальнейших ответов.

Krongss_fur

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
Krong
Здравствуйте, хочу сделать визуализацию, как будто летит пуля из оружия. Что то на подобие кс го. Т.е луч который похож на летящею пулю. Скрин снизу см.
Знаю что примерно можно сделать с помощью спавна партикла, задать что ли вектор что бы летела или чтоо..., может просто спавнить до цели луч, но мне интересно, какие данные задать, если партикл, размер, значения.
image.png
 
Когда-то давным давно делал свой DayZ на ресурс-паке и хотел что-то похожее реализовать.
1. Я поменял текстуру стрелы на пулю
2. Когда игрок делал выстрел, то я спавнил стрелу в нужном направлении и через метод .setVelocity() выставлял большую скорость. Таким образом, получался эффект летящей пули и было довольно реалистично.

P.S. Просто поделился своим опытом и тем, что у меня получилось сделать) С партиклами мучался, но с ними не вышло ничего.
 
Когда-то давным давно делал свой DayZ на ресурс-паке и хотел что-то похожее реализовать.
1. Я поменял текстуру стрелы на пулю
2. Когда игрок делал выстрел, то я спавнил стрелу в нужном направлении и через метод .setVelocity() выставлял большую скорость. Таким образом, получался эффект летящей пули и было довольно реалистично.

P.S. Просто поделился своим опытом и тем, что у меня получилось сделать) С партиклами мучался, но с ними не вышло ничего.
Ну вообще хотелось бы попробовать такое, но ещё бы найти такую текстурку, и что б не было конфликтов у стрелы и другими вещами, делаю просто стрельбу на raytrace луче.
 
Берешь направление взгляда игрока и каждое определенное время прибавляешь к его вектору нужное тебе расстояние и на получившийся локации рисуешь партиклами полёт. Как раз когда пуля долетит до энтити либо в блок будет удобно это отследить.
 
Берешь направление взгляда игрока и каждое определенное время прибавляешь к его вектору нужное тебе расстояние и на получившийся локации рисуешь партиклами полёт. Как раз когда пуля долетит до энтити либо в блок будет удобно это отследить.
Немного не понял.
 
Берешь направление взгляда игрока и каждое определенное время прибавляешь к его вектору нужное тебе расстояние и на получившийся локации рисуешь партиклами полёт. Как раз когда пуля долетит до энтити либо в блок будет удобно это отследить.
А пуля чем должна быть? Стрелой, яйцом или снежком?

Или пуля - это партикл? Но тогда вопрос, как понять, что партикл столкнулся с блоком/энтити?
 
А пуля чем должна быть? Стрелой, яйцом или снежком?

Или пуля - это партикл? Но тогда вопрос, как понять, что партикл столкнулся с блоком/энтити?
Просто надо сделать что бы долетело до игрока. Я запускаю raytrace ближайшей сущности, могу получить расстояние от игрока1 до игрока2(или просто моба) и на такое расстояние сделать летящею пулю(из чего то этого).
А насчёт просто что бы происходила стрельба без попадания по трассировки, взять вектор игрока и расстояние сколько должна лететь пуля.
 
Или пуля - это партикл? Но тогда вопрос, как понять, что партикл столкнулся с блоком/энтити?
Наверное смотреть по локации есть ли на этом месте блок или энтити?
 
Наверное смотреть по локации есть ли на этом месте блок или энтити?
А если результаты трассировки по entity и блоками равняется null, и просто в воздух стреляешь, тоже же надо сделать визуализацию стрельбы.
 
А если результаты трассировки по entity и блоками равняется null, и просто в воздух стреляешь, тоже же надо сделать визуализацию стрельбы.
К чему тут трасировка то? Спавнишь партиклы в направлении взгляда игрока, каждые там несколько тиков прибавляешь расстояние, получаешь локацию, проверяешь нет ли рядом энтити или блока на этой локации, если нет - идёшь дальше. Если у тебя расстояние полёта снаряда 10 блоков - останавливаешь, когда он 10 блоков "пролетит".
 
Глянь QualityArmory, там реализовано то, что ты написал сверху
 
К чему тут трасировка то? Спавнишь партиклы в направлении взгляда игрока, каждые там несколько тиков прибавляешь расстояние, получаешь локацию, проверяешь нет ли рядом энтити или блока на этой локации, если нет - идёшь дальше. Если у тебя расстояние полёта снаряда 10 блоков - останавливаешь, когда он 10 блоков "пролетит".
Каким образом меняется место положение партикла? Я просто понимаю можно его заспавнить и всё.
 
Каким образом меняется место положение партикла? Я просто понимаю можно его заспавнить и всё.
UP. Только сейчас дошло, что наверно вы имели в виду спавнить партикл и после прибавлять расстояние и спавнить новый партикл. Т.к каждый мне что то объяснил, можно считать тему закрытой.
 
Статус
Закрыто для дальнейших ответов.

Поделиться этой страницей

Назад
Верх