Вопрос на сколько безопасно использовать подобную конструкцию?

SophiaWagner

Пользователь
Сообщения
266
Решения
1
Не все команды можно выполнить от имени игрока, а выдавать постоянный пермишн не вариант, поэтому приходится строить костыли типа как ниже.

Код:
    left_click_commands:
    - '[console] lp user %player_name% permission set essentials.enchant'
    - '[player] enchant alldamage 3  <delay=5>'
    - '[console] lp user %player_name% permission unset essentials.enchant'
[/CODE]

проблема в том, что перемешены в luckperms устанавливаются не мгновенно, а где то за 1/4 секунды (наверно связано с тем что база данных mysql), приходится ставить задержку на выполнение команд. Не стала проверять, но почти уверена что за эти ~0.25 сек пока пермишн будет сниматься можно успеть все что угодно натворить, допустим прописать /enchant alldamage 999..

Появилась идея использовать такую конструкцию (код ниже), т.к. op deop выполняются мгновенно, но мб кто что скажет по этому поводу... боюсь тут тоже могут быть опасности.
Код:
    left_click_commands:
    - '[console] op %player_name%'
    - '[player] enchant alldamage 3'
    - '[console] deop %player_name%'
 
Если используется плагин CMI, то там можно указать игрока:
/enchant (playerName) [enchant] [level] (-o) (-onlyvalid) (-keeponlyvalid) (-inform) (-s) (-i:[itemName:)data)]) (clear)
essentials. Да и еще есть пара плагинов в которых аналогичная фигня, что нельзя выполнять от имени игрока через консоль, но есть планы на эти плагины где это не помешало бы.. ну или подобный костыль юзать
 
Назад
Сверху Снизу