1. Этот сайт использует файлы cookie. Продолжая пользоваться данным сайтом, Вы соглашаетесь на использование нами Ваших файлов cookie. Узнать больше.
  2. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Помогите Установить урон к коде

Тема в разделе "Разработка плагинов для новичков", создана пользователем iniga7, 16 мар 2019.

  1. Автор темы
    iniga7

    iniga7 Новичок Пользователь

    Баллы:
    21
    Skype:
    nikitaastapkovish
    Имя в Minecraft:
    BeTePaH
    Как установить урон при попадании в игрока ?
    @EventHandler
    public void PlayerInteractEvent(final PlayerInteractEvent e) {
    e.getPlayer().launchProjectile((Class)Arrow.class);
    }
    Я лишнюю часть кода убрал. Как при попадании стрелы через этот метод нанести игроку определённый урон или дать какой-то эффект ?
     
  2. NyanGuyMF

    NyanGuyMF Активный участник Пользователь

    Баллы:
    76
    Источник: bukkit
    PHP:
    Arrow arrow null;
    Location location player.getLocation();
    location.setX(location.getX() + direction.getX() * (Math.random() * arrowCount));
    location.setY(location.getY() + 1.5f);
    location.setZ(location.getZ() + direction.getZ() * (Math.random() * arrowCount));

    arrow player.getWorld().spawnArrow(locationdirectionspeedspread);

    if (
    arrow == null)
    {
        
    sendMessage("One of your arrows fizzled");
        return 
    SpellResult.FAILURE;
    }

    arrow.setShooter(player);

    if (
    useFire) {
        
    arrow.setFireTicks(300);
    }

    // Hackily make this an infinite arrow and set damage
    try {
        
    Method getHandleMethod arrow.getClass().getMethod("getHandle");
        
    Object handle getHandleMethod.invoke(arrow);
        
    Field fromPlayerField handle.getClass().getField("fromPlayer");
        
    fromPlayerField.setInt(handle2);
        
    Method setDamageMethod handle.getClass().getMethod("b"Double.TYPE);
        
    setDamageMethod.invoke(handledamage);
    } catch (
    Throwable ex) {
        
    ex.printStackTrace();
    }
    arrow.setTicksLived(300);
     
  3. hyndorik

    hyndorik Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    hyndo
    Какой то бред)
     

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