Implementacja takiego mechanizmu nie jest trudna, zresztą Pan ma już paradoksalnie lwią część wymaganego kodu. Wystarczy jedynie dodać kod jakiejś komendy, która zmieniałaby wartość zmiennej {autoMessage::%player%}.
Udostępniam poniżej przykład komendy umożliwiającej przełączanie pojawiania się automatycznych wiadomości na czacie.
command /toggleautomsg:
executable by: players
trigger:
if {autoMessage::%player%} is true:
set {autoMessage::%player%} to false
send "Automatyczne wiadomości wyłączone." to player
stop
set {autoMessage::%player%} to true
send "Automatyczne wiadomości włączone." to player
Chciałbym zaznaczyć, że rozszerzanie tego wątku o kolejne pytanie miałoby sens tylko jeśli oba pytania dotyczyłyby tej samej sprawy. W tej sytuacji było to zbyteczne, gdyż przedstawił Pan dwa różne problemy.
Wracając do meritum, w tym przypadku niemożliwym jest przetłumaczenie "seconds" na "sekundy". Dla potwierdzenia mojej tezy można spróbować wstawić do pola "cooldown message" wywołanie jakiejs funkcji tłumaczącej timespan %remaining time%.
Jak więc można sobie z tym poradzić? Tutaj zalecam skonstruować samemu mechanizm cooldownu dla graczy - przykład poniżej.
command /komenda:
executable by: players
trigger:
if {cooldowns::komenda::%player%} is set:
set {_t} to difference between {cooldowns::komenda::%player%} and now
if {_t} is less than 1 minute:
send cooldownMessage(player, {_t})
stop
set {cooldowns::komenda::%player%} to now
# dalszy kod
Funkcja cooldownMessage mogłaby zwracać wiadomość o cooldownie dla gracza z przetłumaczonymi jednostkami czasu. Takie tłumaczenie można zrealizować za pomocą instrukcji "replace" - odsyłam do dokumentacji.
Jeśli nie chce Pan samemu od podstaw tworzyć systemu cooldownów, polecam skrypt AxCooldown.