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

Помогите | Как реализовать? | Проверка времени задержки кнопки

Тема в разделе "Разработка плагинов для новичков", создана пользователем _MasterCapeXD_, 29 июн 2017.

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

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

    Баллы:
    31
    Имя в Minecraft:
    _MasterCapeXD_
    Вообщем, у меня есть ивент PlayerInteractEvent, мне нужно, чтобы при правом клике запускался секундомер, но чтобы останавливался как только игрок отпустил кнопку мыши. В зависимости от времени задержки секундомер выведет разный интервал, который я уже буду использовать.

    Не знаю, как реализовать проверку времени задержки кнопки. Заранее спасибо!
     
  2. Хостинг MineCraft
    <
  3. hyndorik

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

    Баллы:
    66
    Имя в Minecraft:
    hyndo
    Скорее всего никак. А так с помощью KeyDown и KeyUp
     
  4. Автор темы
    _MasterCapeXD_

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

    Баллы:
    31
    Имя в Minecraft:
    _MasterCapeXD_
    Ну мне не обязательно через Spigot API, я имел ввиду методы Java
     
  5. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    На сервер не передается нажатий кнопок, только пакеты идут.
     
  6. GreenBudgie

    GreenBudgie Ньюби Пользователь

    Баллы:
    1
    Я почти уверен, что клиент отправляет пакеты с инфой о нажатии и отпускании кнопки. Покопайся немного в нмс и мб что-то откопаешь.
     
  7. alexandrage

    alexandrage Администратор

    Баллы:
    173
    Skype:
    alexandr0116
    Аж орнул.
     
  8. GreenBudgie

    GreenBudgie Ньюби Пользователь

    Баллы:
    1
    Да, я делаю вид, будто что-то знаю. Объясни, почему то, что я написал - бред.
     
  9. TheZefirrkka

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

    Баллы:
    76
    Skype:
    RomaMamkinHasker1337
    Имя в Minecraft:
    TheZefirrkka
    Бред.
     
  10. Типа админ:D

    Типа админ:D Активный участник Пользователь

    Баллы:
    76
    Имя в Minecraft:
    B1ruk
    Если бы это было, проблема с дюперами была бы давно уже решена
     
  11. HellsCoder

    HellsCoder Ньюби Пользователь

    Баллы:
    1
    Имя в Minecraft:
    HellsCoder
    а чо они в нмс делать будут?
     
  12. xDark

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

    Баллы:
    96
    Skype:
    ailyashevich
    Имя в Minecraft:
    xDark
    Ты сможешь это сделать, но только с вещами, которые можно удерживать пкм.
    т.е. меч, щит.
     
  13. Автор темы
    _MasterCapeXD_

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

    Баллы:
    31
    Имя в Minecraft:
    _MasterCapeXD_
    Мне как-раз это и надо
     
  14. xDark

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

    Баллы:
    96
    Skype:
    ailyashevich
    Имя в Minecraft:
    xDark
    Ну сначала при правом клике заносишь игрока в мапу
    final Player p = ...;
    map.put(p, System.currentTimeMillis());
    Дальше:
    Возможно костыль:

    final int id = getScheduler().scheduleAsyncRepeatingTask(plugin, () -> {
    if (!p.isOnline()){
    // todo cancel & map.remove
    return;
    }
    if (!p.isBlocking()){
    long passed = System.currentTimeMillis() - map.get(p);
    // todo stuff
    // todo cancel & map.remove
    }

    }, 1L, 1L);
     

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