Тикание секунд

Версия Minecraft
1.12.2
48
2
Как вызвать ивент в onItemRightClick на 10 секунд? (мун)
 
Последнее редактирование:
1,329
104
225
Таймер ставь. Или костыль (тапку для других идей берегите): t = 0, потом каждый тик t += 1, а поле проверка и обнуление if(t == 200 //Десять сек.//) {БЛАБАЛА} else {return ;} Внутри проверки вызов метода с ивентом.
 
7,099
324
1,509
Это не ивент, этот метод ,который вызывается когда игрок делает пкм конкретным предметом
Опиши изначальную задачу, которую ты решаешь
Почему сраезу костыль? Если нужен один таймер на весь мод - это нормально. Тем более, что в forge нету шедулера
 
48
2
Это не ивент, этот метод ,который вызывается когда игрок делает пкм конкретным предметом
Опиши изначальную задачу, которую ты решаешь
Ну мне надо вызвать событие при нажатии пкм. Причём событие вызвать ток на 10 сек
 
7,099
324
1,509
1,329
104
225
В Java (Вроде с 6 версии). Timer.
Ну мне надо вызвать событие при нажатии пкм. Причём событие вызвать ток на 10 сек
Вызываешь своё событие и ставишь таймер. Как только таймер закончится - отменяешь действие. Либо ввести двойную проверку на кол-во таймерских единиц времени.
 
48
2
Вызываешь своё событие и ставишь таймер. Как только таймер закончится - отменяешь действие. Либо ввести двойную проверку на кол-во таймерских единиц времени.
Кажеться первое проще да? Можно пример кода пожалуйста
 
1,329
104
225
Как раз-таки наоборот =D (Я прост хз как отменить твоё действие (я ж не знаю что ты там делаешь)). Ну а вообще TimerTask норм будет. Но 1 способ ("костыльный") был бы проще всех.
t = 0, потом каждый тик t += 1, а поле проверка и обнуление if(t == 200 //Десять сек.//) {БЛАБАЛА} else {return ;}
 

CumingSoon

Местный стендапер
1,634
12
269
Ну а вообще TimerTask норм будет
Дерьмо совет, лучше вообще подобное не использовать
Опу, как я понял, нужно завести таймер в методе пкм, а в эвенте или где там ещё проверять таймер (меньше он нуля, если из него вычитать каждый тик или больше Х, если каждый тик добавлять ему значение). Самый православный и старый метод, где все работает
 
7,099
324
1,509
Timer юзать нельзя, потому что он конкуренси, и если из него держать forge api, то получится недетерминизм(будет ломаться, но иногда)
 
Сверху