Tut mir leid, aber mir fiel gerade kein richtiger Threadtitel ein
Nun denn, fangen wir an.
Ich dachte mir: "Wie sperre ich für normale User jeden Befehl mit / Vornedran?"
Nun, meine Version der Lösung stelle ich euch vor
Nicht Perfekt, aber eine gute Lösung, denke ich
Dazu öffnet man seine uichat.py (root.epk)
Sucht dort folgende Stelle: (Bei mir Zeile 118)
PHP-Code:
def __init__(self):
ui.EditLine.__init__(self)
self.SetWindowName("Chat Line")
self.lastShoutTime = 0
self.eventEscape = lambda *arg: None
self.eventReturn = lambda *arg: None
self.eventTab = None
self.chatMode = chat.CHAT_TYPE_TALKING
self.bCodePage = TRUE
fügt darunter Folgendes ein:
PHP-Code:
self.ENABLE_GM_CODE = FALSE
* Damit Standardmäßig keine Gm-Codes eingegeben werden können
So. Nun die Funktion zum Umstellen:
Sucht diese Stelle (Bei mir Z. 210, selbe Datei)
PHP-Code:
def __SendChatPacket(self, text, type):
# if text[0] == '/':
# if ENABLE_CHAT_COMMAND or constInfo.CONSOLE_ENABLE:
# pass
# else:
# return
if net.IsChatInsultIn(text):
chat.AppendChat(chat.CHAT_TYPE_INFO, locale.CHAT_INSULT_STRING)
else:
net.SendChatPacket(text, type)
und ersetzt sie durch das:
PHP-Code:
def __SendChatPacket(self, text, type):
if text[0] == '/':
if text == "/gm_code":
self.ENABLE_GM_CODE = TRUE
chat.AppendChat(chat.CHAT_TYPE_INFO, "Du darfst jetzt '/' Codes ausführen")
if not self.ENABLE_GM_CODE:
chat.AppendChat(chat.CHAT_TYPE_INFO, "Du darfst keine GM-Codes ausführen")
else:
net.SendChatPacket(text, type)
else:
if net.IsChatInsultIn(text):
chat.AppendChat(chat.CHAT_TYPE_INFO, locale.CHAT_INSULT_STRING)
else:
net.SendChatPacket(text, type)
Ersetzt bei ..
PHP-Code:
if text == "/gm_code":
.. einfach den Text zwischen " " (Muss natürlich mit / beginnen). Dies ist der Befehl, der GM-Befehle freigibt.
Also der MasterKey
Achtet auf die richtige Einrückung!
Mit diesem "Update" ist es dem User nicht mehr möglich zB PK-Mode anzustellen oder /ski (für Skillhack) zu nutzen.
by .Hazelnuss.







