Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Dismiss Notice

Помогите "Безопасный" для блоков взрыв

Discussion in 'Разработка плагинов для новичков' started by JustBlender, Jan 10, 2014.

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

    JustBlender Старожил Девелопер Пользователь

    Trophy Points:
    123
    Skype:
    justblender
    Имя в Minecraft:
    JustBlender
    При создании гранат у меня появилась проблема с createExplosion, мне нужно чтобы взрыв не повреждал блоки, но давал урон. Как мне это сделать?
     
  2. Хостинг MineCraft
    <
  3. StealerSlain

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

    Trophy Points:
    88
    Имя в Minecraft:
    StealerSlain
    createExplosion(double x, double y, double z, float power, boolean setFire, boolean breakBlocks)
    Creates explosion at given coordinates with given power and optionally setting blocks on fire or breaking blocks.

    createExplosion(2341, 79, 1234, 0.5F, false, boolean breakBlocks //ставим false)
     
  4. Автор темы
    JustBlender

    JustBlender Старожил Девелопер Пользователь

    Trophy Points:
    123
    Skype:
    justblender
    Имя в Minecraft:
    JustBlender
    Странно, но почему-то Эклипс выдает ошибку...[DOUBLEPOST=1389359453,1389359025][/DOUBLEPOST]
    Объясни-ка мне куда поставить false? Правильный код предоставь, а то уже волосы на голове рву, как только не пробовал еще два часа назад
     
  5. Hephest

    Hephest Старожил Пользователь

    Trophy Points:
    153
    Skype:
    hephest1904
    false вместо breakBlocks ставил или после?[DOUBLEPOST=1389359521,1389359459][/DOUBLEPOST]createExplosion(x, y, z, 0.5F, false, false) - попробуй такой код
     
  6. Автор темы
    JustBlender

    JustBlender Старожил Девелопер Пользователь

    Trophy Points:
    123
    Skype:
    justblender
    Имя в Minecraft:
    JustBlender
    Попробовал такой код, работает! Но мне надо не точные координаты, а такие: event.getEntity().getLocation()

    PS. Так пробовал без таких координат (x y z), не работало
     
  7. Hephest

    Hephest Старожил Пользователь

    Trophy Points:
    153
    Skype:
    hephest1904
    Я не знаток Java, потому предложу такой вариант: попробуй event.getEntity().getLocation() вставить в тот код.
     
  8. Автор темы
    JustBlender

    JustBlender Старожил Девелопер Пользователь

    Trophy Points:
    123
    Skype:
    justblender
    Имя в Minecraft:
    JustBlender
    Думаешь я не делал так? :D
     
  9. Hephest

    Hephest Старожил Пользователь

    Trophy Points:
    153
    Skype:
    hephest1904
    А если переменную объявить?
    Забыл, как в Java переменная объявляется :\
    Code:
     
    x = event.getEntity().getLocation(x)
    y = event.getEntity().getLocation(y)
    z = event.getEntity().getLocation(z)
    Пишу почти что от фонаря:D
     
  10. StealerSlain

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

    Trophy Points:
    88
    Имя в Minecraft:
    StealerSlain
    event.getEntity().getLocation().getX();
    и также с остальными.
     
  11. smilesdc

    smilesdc Няша Модератор

    Trophy Points:
    153
    Имя в Minecraft:
    smilesdc
    createExplosion
    boolean createExplosion(double x,
    double y,
    double z,
    float power,
    boolean setFire,
    boolean breakBlocks)
    Creates explosion at given coordinates with given power and optionally setting blocks on fire or breaking blocks.


    Parameters:
    x - X coordinate
    y - Y coordinate
    z - Z coordinate
    power - The power of explosion, where 4F is TNT
    setFire - Whether or not to set blocks on fire
    breakBlocks - Whether or not to have blocks be destroyed

    Очевидно же, что:

    createExplosion(event.getEntity().getLocation().getX()/*берем x*/, event.getEntity().getLocation().getY()/*берем y*/, event.getEntity().getLocation().getZ()/*берем z*/, 1.0F/*сила взрыва*/, false /*указываем, что огня на блоках не будет*/, false /*указываем, что блоки разрушаться не будут*/);
     
  12. Автор темы
    JustBlender

    JustBlender Старожил Девелопер Пользователь

    Trophy Points:
    123
    Skype:
    justblender
    Имя в Minecraft:
    JustBlender
    Уже все работает, спасибо @StealerSlain за помошь по координатам (в этом и была моя проблема)
     

Share This Page