- Баллы
- 6
Хотелось бы узнать будет ли эффективна такая релизация:{
И так после ввода команд через евент PlayerCommandPreprocessEvent
Мы получаем игрока, После этого получаем команду, Для хранения будем юзать hashmap.
Вкачестве ключа у нас будет, Ник игрока<String>
К нику справа добавляем команду.
Как только игрок ввеет туже команду. Мы получим ник и команду, Также склейм И проверим если test.containsKey(nick); вернет true , То получаем обьект который будет по факту переменой int;
И выводим что то в духе Вы должный подождать 5s, Для конвентарции int to string буду юзать Integer, Перед тем как выполнить её снова.
Теперь про шедулер.
Буду юзать стандартный java. В onEnable Поднимаем поток, В нем цикл while, И после этого он через цикл for будет получать каждое значение из hashmap, И добавлять в промежуточную переменую i, И убавлять её на 1,И предворительно проверять, Если оно будет на 0, То оно просто стопанет цикл for и удалит из hashmap значение. Для пауз в while, Будет Thread.Sleep(1000);
}
И так после ввода команд через евент PlayerCommandPreprocessEvent
Мы получаем игрока, После этого получаем команду, Для хранения будем юзать hashmap.
Вкачестве ключа у нас будет, Ник игрока<String>
К нику справа добавляем команду.
Как только игрок ввеет туже команду. Мы получим ник и команду, Также склейм И проверим если test.containsKey(nick); вернет true , То получаем обьект который будет по факту переменой int;
И выводим что то в духе Вы должный подождать 5s, Для конвентарции int to string буду юзать Integer, Перед тем как выполнить её снова.
Теперь про шедулер.
Буду юзать стандартный java. В onEnable Поднимаем поток, В нем цикл while, И после этого он через цикл for будет получать каждое значение из hashmap, И добавлять в промежуточную переменую i, И убавлять её на 1,И предворительно проверять, Если оно будет на 0, То оно просто стопанет цикл for и удалит из hashmap значение. Для пауз в while, Будет Thread.Sleep(1000);
}