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

Помогите Магический посох

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

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

    AdraliK Участник Пользователь

    Баллы:
    31
    Имя в Minecraft:
    AdraliK
    Здравствуйте, хочу разработать плагин, где есть магический посох или меч (без разницы). При нажатии на ПКМ с посохом в руке, идет магическая атака: присутствуют эффекты фейерверка, а в конце взрыв с разными эффектами огня и тд. Так вот, как это реализовать? Я думаю, что тут надо делать Vectors и Directions, но как я не знаю((
    Кстати, магическая атака направлена туда, куда смотрит игрок. Я знаю, есть уже подобные плагины, но я хочу разобраться и попробовать это сделать самому.
     
  2. DragSnNaizer

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

    Баллы:
    11
    PlayerInteractEvent.
     
  3. Dymeth

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

    Баллы:
    98
    Имя в Minecraft:
    Dymeth
    Разбиваешь свою задачу на несколько мелких. Например, вот так:
    1) Отловить использование посоха
    2) Рассчитать вектора и позиции всех элементов
    3) Отобразить игровые эффекты: звуки, партиклы, поменять блоки, заспаунить огонь и т.д

    И уже по конкретным задачам задаёшь конкретные вопросы, если с чем-то справиться не можешь.
    Сейчас твой вопрос звучит как "Я не пытался реализовать это самостоятельно, сделайте всё за меня".
     
  4. Автор темы
    AdraliK

    AdraliK Участник Пользователь

    Баллы:
    31
    Имя в Minecraft:
    AdraliK
    Не совсем так, я знаю как делать,что бы была привязка к посоху и знаю как делать эффекты, но я не знаю как рассчитывать вектора и привязывать к ним эффекты, фаербол и тд. Посмотрел множество инструкций, но я не понял((
     
  5. Cool_boy

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

    Баллы:
    96
    Имя в Minecraft:
    prettydude
    player.getLocation().getDirection();
    Дальше уже идёт математика и магия векторов.
     
  6. Автор темы
    AdraliK

    AdraliK Участник Пользователь

    Баллы:
    31
    Имя в Minecraft:
    AdraliK
    Это понятно,но как сделать вектор прямолинейный, хотя бы такой. Потом уже по аналогии придумаю параболические и синусоидные
     
  7. Cool_boy

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

    Баллы:
    96
    Имя в Minecraft:
    prettydude
    PHP:
    Vector direction player.getLocation().getDirection();
    Vector step direction.normalize().multiply(0.1); //нормализуем, и делим вектор на 10 (расстояние между частицами ~ 0.1 блока)
    for(int i 030i++) { //30 - количество повторений, ~ 3 блока
        
    player.getWorld().spawnParticle(Particle.FLAMEplayer.getLocation().add(step.mulitiply(i)), 10);
    }
     
  8. Автор темы
    AdraliK

    AdraliK Участник Пользователь

    Баллы:
    31
    Имя в Minecraft:
    AdraliK
    Всё прекрасно работаёт, но эффекты распадаются вокруг игрока, а как сделать что бы траектория этих эффектов была прямолинейная ? Тоесть с одну точку, на которую направлен взгляд игрока.
    Например, я смотрю на свинку или на дерево, без разницы, и эффекты идут до этого объекта ну или же эффект не доходит (смотря какая длина)
     
  9. Cool_boy

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

    Баллы:
    96
    Имя в Minecraft:
    prettydude
    Играйся с самой командой /particle. Например
    player.getWorld().spawnParticle(Particle.FLAME, player.getLocation().add(step.mulitiply(i)), 10, 0.1, 0.1, 0.1, 0.1);
     
  10. alexandrage

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

    Баллы:
    173
     

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