Minecraft Bukkit - как я могу использовать объекты предметов и объекты падающих блоков в качестве снарядов?

Извините за этот вопрос, я думаю, что, возможно, задавал раньше, но этот веб-сайт сбивает с толку, и я просто не могу его нигде найти. Я разработчик плагина Java, который в настоящее время работает в классе структур данных и алгоритмов, если это поможет узнать, насколько я понимаю. Я был на серверах, где случайные предметы можно использовать в качестве снарядов, такие вещи, как объекты предметов из золотого блока или объекты из кусочков арбуза. Мне было интересно, знает ли кто-нибудь, как превратить предмет в снаряд? Я полагаю, что мне нужно создать новый класс объекта с новыми методами и прочим, но я не уверен, как это работает, тем более что я не могу изменить собственный код Minecraft.

Любая помощь приветствуется!


person Ty Brantner    schedule 26.08.2013    source источник
comment
Просто нажмите на свое имя, чтобы найти свой предыдущий вопрос (ы), ничего непонятного. Пожалуйста, не задавайте вопрос повторно.   -  person Hovercraft Full Of Eels    schedule 27.08.2013


Ответы (1)


Вы можете заменить снаряд стрелы из лука своим собственным снарядом, например, предметом. Вы должны поймать ProjectileLaunchEvent и сделать что-то вроде этого:

Entity arrow = event.getEntity();
Vector velocity = arrow.getVelocity();
Item item = arrow.getWorld().dropItem(arrow.getLocation(), ItemStack);
item.setVelocity(velocity);

Если вы хотите нанести урон, вам придется постоянно отслеживать его местоположение с помощью планировщиков, проверять, пересекает ли он игрока, и наносить соответствующий урон. Или, если вам нужен более простой подход, просто посмотрите, подберет ли игрок предмет, возьмет предмет у него из рук и нанесет урон.

person beechboy2000    schedule 27.08.2013