Sziasztok! Ebbe a témába lehetőleg csak saját leírást rakok ki! Kérésre rakok ki olyan dolgokat is, amelyek nincsenek még fórumon, illetve sehol sincs leírás hozzá! PM-ben várom a kéréseiteket.
Kezdeném is egy olyan dologgal, melyet sehol nem láttam. Ebből a leírásból megtudhatjátok, hogyan védekezzünk a rosszakaró GM-ektől. Bővebben: letilthatjátok számukra a következő dolgokat:
- Hívásban való írás
- Az összes GM kód letiltása és egyben chatbe való írás
- Kereskedés bármilyen formában
- Tárgyak eldobása
- Raktár és itemshop raktár megnyitása
Ezek a letiltások csak kliensben érvényesek, így ha más klienssel lép fel az illető, ezek a tiltások elvésznek!
A tiltásokhoz a root fájl kibontására lesz szükségünk.
Hívásban való írás letiltása a GM-eknek:
Nyissuk meg az uichat.py fájlt.
Keressük meg ezt a részt:
def __SendChatPacket(self, text, type):
Másoljuk be alá a következőket figyelve a tabokra:
name = player.GetName()
if name.find("[")!=-1 and type == chat.CHAT_TYPE_SHOUT:
chat.AppendChat(chat.CHAT_TYPE_INFO, "Nem használhatod ezt a funkciót!")
return
else:
net.SendChatPacket(text, type)
Ezzel meg is volnánk.
Az összes GM kód letiltása és egyben chatbe való írás:
Nyissuk meg az uichat.py fájlt.
Keressük meg ezt a részt:
def __SendChatPacket(self, text, type):
Másoljuk be alá a következőket figyelve a tabokra:
name = player.GetName()
if name.find("[")!=-1 and type == chat.CHAT_TYPE_TALKING:
chat.AppendChat(chat.CHAT_TYPE_INFO, "Nem használhatod ezt a funkciót!")
return
else:
net.SendChatPacket(text, type)
Ezzel meg is volnánk.
Kereskedés bármilyen formában:
Nyissuk meg az uiexchange.py fájlt.
Keressük meg ezt a részt:
def OpenDialog(self):
Másoljuk be alá a következőket figyelve a tabokra:
name = player.GetName()
if name.find("[")!=-1:
return
Így kell kinéznie:
name = player.GetName()
if name.find("[")!=-1:
chat.AppendChat(chat.CHAT_TYPE_INFO, "Nem használhatod ezt a funkciót!")
return
else:
self.TitleName.SetText(locale.EXCHANGE_TITLE % (exchange.GetNameFromTarget()))
self.AcceptButton.Enable()
self.AcceptButton.SetUp()
self.Show()
(self.xStart, self.yStart, z) = player.GetMainCharacterPosition()
Ezzel meg is volnánk.
Tárgyak eldobása:
Nyissuk meg a game.py fájlt.
Keressük meg ezt a részt:
def RequestDropItem(self, answer):
Ezen belül ezt:
if answer:
Másoljuk be alá a következőket figyelve a tabokra:
name = player.GetName()
if name.find("[")!=-1:
return
Így kell kinéznie:
if answer:
name = player.GetName()
if name.find("[")!=-1:
return
chat.AppendChat(chat.CHAT_TYPE_INFO, "Nem dobhatsz el tárgyat!")
else:
dropType = self.itemDropQuestionDialog.dropType
dropCount = self.itemDropQuestionDialog.dropCount
dropNumber = self.itemDropQuestionDialog.dropNumber
Ezzel meg is volnánk.
Raktár és itemshop raktár megnyitása:
Nyissuk meg a game.py fájlt.
Keressük meg ezt a részt:
def OpenSafeboxWindow(self, size):
Másoljuk be alá a következőket figyelve a tabokra:
name = player.GetName()
if name.find("[")!=-1:
return
Így kell kinéznie:
def OpenSafeboxWindow(self, size):
if name.find("[")!=-1:
return
else:
self.interface.OpenSafeboxWindow(size)
Keressük meg ezt a részt:
def OpenMallWindow(self, size):
Másoljuk be alá a következőket figyelve a tabokra:
name = player.GetName()
if name.find("[")!=-1:
return
Így kell kinéznie:
def OpenMallWindow(self, size):
if name.find("[")!=-1:
return
else:
self.interface.OpenMallWindow(size)
Ezzel meg is volnánk.
Arra figyeljünk, hogy ha a fájlok elején nincs importálva a player, akkor nem működnek a tiltások.
Így importálhatjuk a playert:
import player
Köszönöm a figyelmet, remélem hasznotokra válik ez a kis leírás. Ha bármi jellegű probléma adódna, nyugodtan keressetek fel PM-ben, és segítek, illetve javítom a hibát. A kéréseket ne felejtsétek el ;)
Ha tetszett ha téma, nyomj egy "+"-t.
Üdv, ~ MagicBoss