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

удалено

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

Статус темы:
Закрыта.
  1. Автор темы
    MCosmos

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

    Баллы:
    76
    удалено
     
    Последнее редактирование: 25 янв 2022
  2. NoooobKa

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

    Баллы:
    76
    Имя в Minecraft:
    NoooobKa
    Создай хэшмапу в классе
    Код:
    private HashMap<String, Long> TimeCoolDown = new HashMap<String, Long>();
    используй этот код там где надо что-то отменять (создавать задержку)
    Код:
            Player p = e.getPlayer();
            Long time = Long.valueOf(System.currentTimeMillis()); //Получаем текущее время в Long 
            if(this.TimeCoolDown.containsKey(p.getName())) { //Проверяем что в хешмапе есть игрок с нужным ником
                Long LastUse = this.TimeCoolDown.get(p.getName()); // Получаем время последнего триггера игрока в Long
                if(LastUse.longValue() + 300L > time.longValue()) { // 1000L = 1 секунда. Проверяем, что время последнего использования + время кд > настоящего времени, то есть если кулдаун не прошёл то...
                    return; 
                }
            }
            this.TimeCoolDown.put(p.getName(), time); // если кулдауна нет, то добавляем время последнего использование чего-либо в хэшмапу
     
  3. NoooobKa

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

    Баллы:
    76
    Имя в Minecraft:
    NoooobKa
    Код:
    (LastUse.longValue() + (Время твоего кд)L - time.longValue())/1000
    В секундах будет
     
  4. NoooobKa

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

    Баллы:
    76
    Имя в Minecraft:
    NoooobKa
    (60000)L без скобок 60000L . Обязательно должно выполнятся это условие "if(this.TimeCoolDown.containsKey(p.getName()))" , то есть в хешмапе должен быть ключ - имя игрока
     
Статус темы:
Закрыта.

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