Совершенно другое расположение навыков хп и т.д
6924
71
дроС
Дата: Четверг, 15.09.2011, 13:49 | Сообщение # 1
Сообщений: 174
Статус: Не на сайте
Вот оригинал [RELEASE]Ingame-Place-Mod Da ich es einfach ein tolles Feature finde, hab ich beschlossen es nun mit euch zu teilen In meiner Sig findet ihr ein Video, wie es Ingame aussieht.. Vorneweg: Der 'Mod' erstellt in eurem normalem Ordner eine regen.txt, welche ihr jedoch manuell hochladen müsst. Die regen.txt könnt ihr euch Ingame jederzeit mit einem Command anzeigen lassen! Was ihr braucht: - Euren Clienten - Editor (Hierbei empfehle ich Notepad++) Hier mal als Zusammenfassung: -> root.*** entpacken. -> uichat.py öffnen. -> Sucht nach: PHP Code: class ChatLine(ui.EditLine): CHAT_MODE_NAME = { chat.CHAT_TYPE_TALKING : locale.CHAT_NORMAL, chat.CHAT_TYPE_PARTY : locale.CHAT_PARTY, chat.CHAT_TYPE_GUILD : locale.CHAT_GUILD, chat.CHAT_TYPE_SHOUT : locale.CHAT_SHOUT, } -> Darauß macht ihr: PHP Code: ## ChatLine class ChatLine(ui.EditLine): ENABLE_UPDATE_COMMAND = 0 REGENMOB_EDIT_MODE = 0 REGENYAXE_EDIT_MODE = 0 REGENXAXE_EDIT_MODE = 0 REGENSTIME_EDIT_MODE = 0 REGENGROUP_EDIT_MODE = 0 REGENRANDOMGROUP_EDIT_MODE = 0 CLEAR_REGEN = 0 CHAT_MODE_NAME = { chat.CHAT_TYPE_TALKING : locale.CHAT_NORMAL, chat.CHAT_TYPE_PARTY : locale.CHAT_PARTY, chat.CHAT_TYPE_GUILD : locale.CHAT_GUILD, chat.CHAT_TYPE_SHOUT : locale.CHAT_SHOUT, } -> Danach sucht nach: 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 self.overTextLine = ui.TextLine() self.overTextLine.SetParent(self) self.overTextLine.SetPosition(-1, 0) self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.SetOutline() self.overTextLine.Hide() self.lastSentenceStack = [] self.lastSentencePos = 0 -> Macht darauß: 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.ENABLE_UPDATE_COMMAND = None self.REGENMOB_EDIT_MODE = None self.REGENYAXE_EDIT_MODE = None self.REGENXAXE_EDIT_MODE = None self.REGENSTIME_EDIT_MODE = None self.REGENGROUP_EDIT_MODE = None self.REGENRANDOMGROUP_EDIT_MODE = None self.CLEAR_REGEN = None self.mobvnum = "101" self.groupvnum = "101" self.randomgroupvnum = "101" self.yaxe = "10" self.xaxe = "10" self.stime = "30s" self.chatMode = chat.CHAT_TYPE_TALKING self.bCodePage = TRUE self.overTextLine = ui.TextLine() self.overTextLine.SetParent(self) self.overTextLine.SetPosition(-1, 0) self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.SetOutline() self.overTextLine.Hide() self.lastSentenceStack = [] self.lastSentencePos = 0 -> Sucht danach nach: 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) -> Macht darauß: PHP Code: def __SendChatPacket(self, text, type): # if text[0] == '/': # if ENABLE_CHAT_COMMAND or constInfo.CONSOLE_ENABLE: # pass # else: # return if text == '+update enable': self.ENABLE_UPDATE_COMMAND = 1 self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_INFO, "+update Command ist nun freigeschaltet!") elif text == '+update disable': self.ENABLE_UPDATE_COMMAND = 0 self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_INFO, "+update Command ist nun wieder deaktiviert!") elif text == '+update help' and not self.ENABLE_UPDATE_COMMAND: self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_GUILD, "Der +update Command, ist ausschließlich für Teammember von ****!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "Er erlaubt es ihnen bestimmte Dinge zu updaten....") chat.AppendChat(chat.CHAT_TYPE_INFO, "© passy305") elif text == '+update help' and self.ENABLE_UPDATE_COMMAND: self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_GUILD, "Derzeit gibt es folgende Commands:") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update enable -> Schaltet +update Command frei!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update disable -> Schaltet +update Command wieder aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update help -> Zeigt dir auch, wenn +update nicht aktiviert ist, ein Info Fenster an!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update commands help -> Zeigt dir dieses Fenster auf >D") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update showregen -> Zeigt dir die aktuelle regen.txt im Chat an!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update clearregen -> Startet die Abfrage, um die komplette regen.txt zu Cleanen!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update clearregen yes -> Bestätigt die Abfrage zum Cleanen der regen.txt!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update clearregen no -> Bricht die Abfrage zum Cleanen der regen.txt ab!") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m -> Spawnt ein Mob (regen.txt)") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen g -> Spawnt eine Gruppe (regen.txt)") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen r -> Spawnt eine Random-Gruppe (regen.txt)") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m mobvnum edit -> Ermöglicht editieren der Mobvnum!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m mobvnum edit off -> Schaltet Edit-Modus der Mobvnum aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen g groupvnum edit -> Ermöglicht editieren der Groupvnum!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen g groupvnum edit off -> Schaltet Edit-Modus der Groupvnum aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen r randomvnum edit -> Ermöglicht editieren der Random-Groupvnum!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen r randomvnum edit off -> Schaltet Edit-Modus der Random-Groupvnum aus!") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r yaxe edit -> Ermöglicht editieren der Y-Spawngröße!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r yaxe edit off -> Schaltet Edit-Modus der Y-Spawngröße aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r xaxe edit -> Ermöglicht editieren der X-Spawngröße!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r xaxe edit off -> Schaltet Edit-Modus der X-Spawngröße aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r stime edit -> Ermöglicht editieren der Spawnzeit!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r stime edit off -> Schaltet Edit-Modus der Spawnzeit aus!") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_GUILD, "© passy305") elif text == '+update showregen' and self.ENABLE_UPDATE_COMMAND: self.__ShowRegen() elif text == '+update clearregen' and self.ENABLE_UPDATE_COMMAND: chat.AppendChat(chat.CHAT_TYPE_PARTY, "Bestätige das du das wirklich tun möchtest..!") self.CLEAR_REGEN = 1 elif text == '+update clearregen yes' and self.ENABLE_UPDATE_COMMAND and self.CLEAR_REGEN: self.__DeleteRegen() elif text == '+update clearregen no' and self.ENABLE_UPDATE_COMMAND and self.CLEAR_REGEN: chat.AppendChat(chat.CHAT_TYPE_PARTY, "Der Löschvorgang wurde abgebrochen!") self.CLEAR_REGEN = 0 elif text == '+update regen m' and self.ENABLE_UPDATE_COMMAND: self.__UpdateRegenMob() elif text == '+update regen g' and self.ENABLE_UPDATE_COMMAND: self.__UpdateRegenGroup() elif text == '+update regen r' and self.ENABLE_UPDATE_COMMAND: self.__UpdateRegenRandomGroup() elif text == '+update regen m mobvnum edit' and self.ENABLE_UPDATE_COMMAND: self.REGENMOB_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Mobvnum EditMode ist aktiv!!!") elif self.REGENMOB_EDIT_MODE and not text == '+update regen m mobvnum edit off' and self.ENABLE_UPDATE_COMMAND: mobvnum = self.GetText() self.mobvnum = mobvnum chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Mobvnum wurde erfolgreich mit " + mobvnum + " ersetzt!") elif text == '+update regen m mobvnum edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENMOB_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Mobvnum EditMode ist nichtmehr aktiv..") elif text == '+update regen g groupvnum edit' and self.ENABLE_UPDATE_COMMAND: self.REGENGROUP_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Groupvnum EditMode ist aktiv!!!") elif self.REGENGROUP_EDIT_MODE and not text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: groupvnum = self.GetText() self.groupvnum = groupvnum chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Groupvnum wurde erfolgreich mit " + groupvnum + " ersetzt!") elif text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENGROUP_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Groupvnum EditMode ist nichtmehr aktiv..") elif text == '+update regen r randomvnum edit' and self.ENABLE_UPDATE_COMMAND: self.REGENRANDOMGROUP_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Random-Groupvnum EditMode ist aktiv!!!") elif self.REGENRANDOMGROUP_EDIT_MODE and not text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: randomgroupvnum = self.GetText() self.randomgroupvnum = randomgroupvnum chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Random-Groupvnum wurde erfolgreich mit " + randomgroupvnum + " ersetzt!") elif text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENRANDOMGROUP_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Random-Groupvnum EditMode ist nichtmehr aktiv..") elif text == '+update regen m yaxe edit' or text == '+update regen g yaxe edit' or text == '+update regen r yaxe edit' and self.ENABLE_UPDATE_COMMAND: self.REGENYAXE_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Y-Spawngröße EditMode ist aktiv!!!") elif self.REGENYAXE_EDIT_MODE and not text == '+update regen m yaxe edit off' and not text == '+update regen g yaxe edit off' and not text == '+update regen r yaxe edit off' and self.ENABLE_UPDATE_COMMAND: yaxe = self.GetText() self.yaxe = yaxe chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Y-Spawngröße wurde erfolgreich mit " + yaxe + " ersetzt!") elif text == '+update regen m yaxe edit off' or text == '+update regen g yaxe edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENYAXE_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Y-Spawngröße EditMode ist nichtmehr aktiv..") elif text == '+update regen m xaxe edit' or text == '+update regen g xaxe edit' or text == '+update regen r xaxe edit' and self.ENABLE_UPDATE_COMMAND: self.REGENXAXE_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "X-Spawngröße EditMode ist aktiv!!!") elif self.REGENXAXE_EDIT_MODE and not text == '+update regen m xaxe edit off' and not text == '+update regen g xaxe edit off' and not text == '+update regen r xaxe edit off' and self.ENABLE_UPDATE_COMMAND: xaxe = self.GetText() self.xaxe = xaxe chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die X-Spawngröße wurde erfolgreich mit " + xaxe + " ersetzt!") elif text == '+update regen m xaxe edit off' or text == '+update regen g xaxe edit off' or text == '+update regen r xaxe edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENXAXE_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "X-Spawngröße EditMode ist nichtmehr aktiv..") elif text == '+update regen m stime edit' or text == '+update regen g stime edit' or text == '+update regen r stime edit' and self.ENABLE_UPDATE_COMMAND: self.REGENSTIME_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Spawnzeit EditMode ist aktiv!!!") elif self.REGENSTIME_EDIT_MODE and not text == '+update regen m stime edit off' and not text == '+update regen g stime edit off' and not text == '+update regen r stime edit off' and self.ENABLE_UPDATE_COMMAND: stime = self.GetText() self.stime = stime chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Spawnzeit wurde erfolgreich mit " + stime + " ersetzt!") elif text == '+update regen m stime edit off' or text == '+update regen g stime edit off' or text == '+update regen r stime edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENSTIME_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Spawnzeit EditMode ist nichtmehr aktiv..") elif text[0] == '+' and self.ENABLE_UPDATE_COMMAND: return elif net.IsChatInsultIn(text): chat.AppendChat(chat.CHAT_TYPE_INFO, locale.CHAT_INSULT_STRING) else: net.SendChatPacket(text, type) -> Fügt danach irgendwo in eurer uichat.py das ein: PHP Code: def __UpdateRegenMob(self): import player (x, y, z) = player.GetMainCharacterPosition() mv = self.mobvnum yaxe = self.yaxe xaxe = self.xaxe st = self.stime f = open("regen.txt", "a+") f.write ("m %d %d %s %s 0 0 %s 100 %d %s\n" % (x/100, y/100, yaxe, xaxe, st, z/10000, mv)) #f.write ("m %d %d 10 10 0 0 %d"+"s 100 1 101\n" % (x/100, y/100, z/10)) f.close() chat.AppendChat(chat.CHAT_TYPE_PARTY, "Das Mob wurde erfolgreich geplaced!") def __UpdateRegenGroup(self): import player (x, y, z) = player.GetMainCharacterPosition() gv = self.groupvnum yaxe = self.yaxe xaxe = self.xaxe st = self.stime f = open("regen.txt", "a+") f.write ("g %d %d %s %s 0 0 %s 100 %d %s\n" % (x/100, y/100, yaxe, xaxe, st, z/10000, gv)) #f.write ("g %d %d 10 10 0 0 30s 100 %d " + "101" + "\n" % (x/100, y/100, z/10000)) f.close() chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Mob-Group wurde erfolgreich geplaced!") def __UpdateRegenRandomGroup(self): import player (x, y, z) = player.GetMainCharacterPosition() rgv = self.randomgroupvnum yaxe = self.yaxe xaxe = self.xaxe st = self.stime f = open("regen.txt", "a+") f.write ("r %d %d %s %s 0 0 %s 100 %d %s\n" % (x/100, y/100, yaxe, xaxe, st, z/10000, rgv)) #f.write ("r %d %d 10 10 0 0 30s 100 %d " + "101" + "\n" % (x/100, y/100, z/10000)) f.close() chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Random-Mob-Group wurde erfolgreich geplaced!") def __DeleteRegen(self): chat.AppendChat(chat.CHAT_TYPE_PARTY, "Der Löschvorgang wurde bestätigt..!") f = open("regen.txt", "w") f.write ("") f.close() self.CLEAR_REGEN = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die regen.txt wurde erfolgreich gecleaned..!") def __ShowRegen(self): f = open("regen.txt", "r") regen = f.readline() if regen == "": chat.AppendChat(chat.CHAT_TYPE_GUILD, "Die regen.txt ist leer! ^^") else: chat.AppendChat(chat.CHAT_TYPE_GUILD, "Hier die aktuelle regen.txt!") while regen: chat.AppendChat(chat.CHAT_TYPE_PARTY, regen) regen = f.readline() f.close() -> Fertig ... Solltet ihr noch die Farbe wollen so sucht nach: PHP Code: def __CheckChatMark(self): self.overTextLine.Hide() text = self.GetText() if len(text) > 0: if '#' == text[0]: self.overTextLine.SetText("#") self.overTextLine.Show() elif '%' == text[0]: self.overTextLine.SetText("%") self.overTextLine.Show() elif '!' == text[0]: self.overTextLine.SetText("!") self.overTextLine.Show() und ersetzt es mit: PHP Code: def __CheckChatMark(self): self.overTextLine.Hide() text = self.GetText() specialtext = self.GetText() if len(text) > 0: if '#' == text[0]: self.overTextLine.SetText("#") self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.Show() elif '%' == text[0]: self.overTextLine.SetText("%") self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.Show() elif '!' == text[0]: self.overTextLine.SetText("!") self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.Show() elif str(self.GetText())[0] == "+" and self.ENABLE_UPDATE_COMMAND: self.overTextLine.SetText(specialtext) self.overTextLine.SetFontColor(0.45, 0.0, 0.1) self.overTextLine.Show() ну вроде всё сорри что так а не в серой рамочке просто не знаю как вот скрин - http://imageshack.us/photo/my-images/832/0915102811.jpg/ Добавлено (15.09.2011, 13:49) --------------------------------------------- и ещё если кто знает как отредактируйте плиз и напишите тут вот ссылка на источник http://www.elitepvpers.com/forum....od.html
Сообщение Вот оригинал [RELEASE]Ingame-Place-Mod Da ich es einfach ein tolles Feature finde, hab ich beschlossen es nun mit euch zu teilen In meiner Sig findet ihr ein Video, wie es Ingame aussieht.. Vorneweg: Der 'Mod' erstellt in eurem normalem Ordner eine regen.txt, welche ihr jedoch manuell hochladen müsst. Die regen.txt könnt ihr euch Ingame jederzeit mit einem Command anzeigen lassen! Was ihr braucht: - Euren Clienten - Editor (Hierbei empfehle ich Notepad++) Hier mal als Zusammenfassung: -> root.*** entpacken. -> uichat.py öffnen. -> Sucht nach: PHP Code: class ChatLine(ui.EditLine): CHAT_MODE_NAME = { chat.CHAT_TYPE_TALKING : locale.CHAT_NORMAL, chat.CHAT_TYPE_PARTY : locale.CHAT_PARTY, chat.CHAT_TYPE_GUILD : locale.CHAT_GUILD, chat.CHAT_TYPE_SHOUT : locale.CHAT_SHOUT, } -> Darauß macht ihr: PHP Code: ## ChatLine class ChatLine(ui.EditLine): ENABLE_UPDATE_COMMAND = 0 REGENMOB_EDIT_MODE = 0 REGENYAXE_EDIT_MODE = 0 REGENXAXE_EDIT_MODE = 0 REGENSTIME_EDIT_MODE = 0 REGENGROUP_EDIT_MODE = 0 REGENRANDOMGROUP_EDIT_MODE = 0 CLEAR_REGEN = 0 CHAT_MODE_NAME = { chat.CHAT_TYPE_TALKING : locale.CHAT_NORMAL, chat.CHAT_TYPE_PARTY : locale.CHAT_PARTY, chat.CHAT_TYPE_GUILD : locale.CHAT_GUILD, chat.CHAT_TYPE_SHOUT : locale.CHAT_SHOUT, } -> Danach sucht nach: 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 self.overTextLine = ui.TextLine() self.overTextLine.SetParent(self) self.overTextLine.SetPosition(-1, 0) self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.SetOutline() self.overTextLine.Hide() self.lastSentenceStack = [] self.lastSentencePos = 0 -> Macht darauß: 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.ENABLE_UPDATE_COMMAND = None self.REGENMOB_EDIT_MODE = None self.REGENYAXE_EDIT_MODE = None self.REGENXAXE_EDIT_MODE = None self.REGENSTIME_EDIT_MODE = None self.REGENGROUP_EDIT_MODE = None self.REGENRANDOMGROUP_EDIT_MODE = None self.CLEAR_REGEN = None self.mobvnum = "101" self.groupvnum = "101" self.randomgroupvnum = "101" self.yaxe = "10" self.xaxe = "10" self.stime = "30s" self.chatMode = chat.CHAT_TYPE_TALKING self.bCodePage = TRUE self.overTextLine = ui.TextLine() self.overTextLine.SetParent(self) self.overTextLine.SetPosition(-1, 0) self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.SetOutline() self.overTextLine.Hide() self.lastSentenceStack = [] self.lastSentencePos = 0 -> Sucht danach nach: 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) -> Macht darauß: PHP Code: def __SendChatPacket(self, text, type): # if text[0] == '/': # if ENABLE_CHAT_COMMAND or constInfo.CONSOLE_ENABLE: # pass # else: # return if text == '+update enable': self.ENABLE_UPDATE_COMMAND = 1 self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_INFO, "+update Command ist nun freigeschaltet!") elif text == '+update disable': self.ENABLE_UPDATE_COMMAND = 0 self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_INFO, "+update Command ist nun wieder deaktiviert!") elif text == '+update help' and not self.ENABLE_UPDATE_COMMAND: self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_GUILD, "Der +update Command, ist ausschließlich für Teammember von ****!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "Er erlaubt es ihnen bestimmte Dinge zu updaten....") chat.AppendChat(chat.CHAT_TYPE_INFO, "© passy305") elif text == '+update help' and self.ENABLE_UPDATE_COMMAND: self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_GUILD, "Derzeit gibt es folgende Commands:") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update enable -> Schaltet +update Command frei!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update disable -> Schaltet +update Command wieder aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update help -> Zeigt dir auch, wenn +update nicht aktiviert ist, ein Info Fenster an!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update commands help -> Zeigt dir dieses Fenster auf >D") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update showregen -> Zeigt dir die aktuelle regen.txt im Chat an!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update clearregen -> Startet die Abfrage, um die komplette regen.txt zu Cleanen!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update clearregen yes -> Bestätigt die Abfrage zum Cleanen der regen.txt!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update clearregen no -> Bricht die Abfrage zum Cleanen der regen.txt ab!") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m -> Spawnt ein Mob (regen.txt)") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen g -> Spawnt eine Gruppe (regen.txt)") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen r -> Spawnt eine Random-Gruppe (regen.txt)") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m mobvnum edit -> Ermöglicht editieren der Mobvnum!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m mobvnum edit off -> Schaltet Edit-Modus der Mobvnum aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen g groupvnum edit -> Ermöglicht editieren der Groupvnum!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen g groupvnum edit off -> Schaltet Edit-Modus der Groupvnum aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen r randomvnum edit -> Ermöglicht editieren der Random-Groupvnum!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen r randomvnum edit off -> Schaltet Edit-Modus der Random-Groupvnum aus!") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r yaxe edit -> Ermöglicht editieren der Y-Spawngröße!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r yaxe edit off -> Schaltet Edit-Modus der Y-Spawngröße aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r xaxe edit -> Ermöglicht editieren der X-Spawngröße!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r xaxe edit off -> Schaltet Edit-Modus der X-Spawngröße aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r stime edit -> Ermöglicht editieren der Spawnzeit!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r stime edit off -> Schaltet Edit-Modus der Spawnzeit aus!") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_GUILD, "© passy305") elif text == '+update showregen' and self.ENABLE_UPDATE_COMMAND: self.__ShowRegen() elif text == '+update clearregen' and self.ENABLE_UPDATE_COMMAND: chat.AppendChat(chat.CHAT_TYPE_PARTY, "Bestätige das du das wirklich tun möchtest..!") self.CLEAR_REGEN = 1 elif text == '+update clearregen yes' and self.ENABLE_UPDATE_COMMAND and self.CLEAR_REGEN: self.__DeleteRegen() elif text == '+update clearregen no' and self.ENABLE_UPDATE_COMMAND and self.CLEAR_REGEN: chat.AppendChat(chat.CHAT_TYPE_PARTY, "Der Löschvorgang wurde abgebrochen!") self.CLEAR_REGEN = 0 elif text == '+update regen m' and self.ENABLE_UPDATE_COMMAND: self.__UpdateRegenMob() elif text == '+update regen g' and self.ENABLE_UPDATE_COMMAND: self.__UpdateRegenGroup() elif text == '+update regen r' and self.ENABLE_UPDATE_COMMAND: self.__UpdateRegenRandomGroup() elif text == '+update regen m mobvnum edit' and self.ENABLE_UPDATE_COMMAND: self.REGENMOB_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Mobvnum EditMode ist aktiv!!!") elif self.REGENMOB_EDIT_MODE and not text == '+update regen m mobvnum edit off' and self.ENABLE_UPDATE_COMMAND: mobvnum = self.GetText() self.mobvnum = mobvnum chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Mobvnum wurde erfolgreich mit " + mobvnum + " ersetzt!") elif text == '+update regen m mobvnum edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENMOB_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Mobvnum EditMode ist nichtmehr aktiv..") elif text == '+update regen g groupvnum edit' and self.ENABLE_UPDATE_COMMAND: self.REGENGROUP_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Groupvnum EditMode ist aktiv!!!") elif self.REGENGROUP_EDIT_MODE and not text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: groupvnum = self.GetText() self.groupvnum = groupvnum chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Groupvnum wurde erfolgreich mit " + groupvnum + " ersetzt!") elif text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENGROUP_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Groupvnum EditMode ist nichtmehr aktiv..") elif text == '+update regen r randomvnum edit' and self.ENABLE_UPDATE_COMMAND: self.REGENRANDOMGROUP_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Random-Groupvnum EditMode ist aktiv!!!") elif self.REGENRANDOMGROUP_EDIT_MODE and not text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: randomgroupvnum = self.GetText() self.randomgroupvnum = randomgroupvnum chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Random-Groupvnum wurde erfolgreich mit " + randomgroupvnum + " ersetzt!") elif text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENRANDOMGROUP_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Random-Groupvnum EditMode ist nichtmehr aktiv..") elif text == '+update regen m yaxe edit' or text == '+update regen g yaxe edit' or text == '+update regen r yaxe edit' and self.ENABLE_UPDATE_COMMAND: self.REGENYAXE_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Y-Spawngröße EditMode ist aktiv!!!") elif self.REGENYAXE_EDIT_MODE and not text == '+update regen m yaxe edit off' and not text == '+update regen g yaxe edit off' and not text == '+update regen r yaxe edit off' and self.ENABLE_UPDATE_COMMAND: yaxe = self.GetText() self.yaxe = yaxe chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Y-Spawngröße wurde erfolgreich mit " + yaxe + " ersetzt!") elif text == '+update regen m yaxe edit off' or text == '+update regen g yaxe edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENYAXE_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Y-Spawngröße EditMode ist nichtmehr aktiv..") elif text == '+update regen m xaxe edit' or text == '+update regen g xaxe edit' or text == '+update regen r xaxe edit' and self.ENABLE_UPDATE_COMMAND: self.REGENXAXE_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "X-Spawngröße EditMode ist aktiv!!!") elif self.REGENXAXE_EDIT_MODE and not text == '+update regen m xaxe edit off' and not text == '+update regen g xaxe edit off' and not text == '+update regen r xaxe edit off' and self.ENABLE_UPDATE_COMMAND: xaxe = self.GetText() self.xaxe = xaxe chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die X-Spawngröße wurde erfolgreich mit " + xaxe + " ersetzt!") elif text == '+update regen m xaxe edit off' or text == '+update regen g xaxe edit off' or text == '+update regen r xaxe edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENXAXE_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "X-Spawngröße EditMode ist nichtmehr aktiv..") elif text == '+update regen m stime edit' or text == '+update regen g stime edit' or text == '+update regen r stime edit' and self.ENABLE_UPDATE_COMMAND: self.REGENSTIME_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Spawnzeit EditMode ist aktiv!!!") elif self.REGENSTIME_EDIT_MODE and not text == '+update regen m stime edit off' and not text == '+update regen g stime edit off' and not text == '+update regen r stime edit off' and self.ENABLE_UPDATE_COMMAND: stime = self.GetText() self.stime = stime chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Spawnzeit wurde erfolgreich mit " + stime + " ersetzt!") elif text == '+update regen m stime edit off' or text == '+update regen g stime edit off' or text == '+update regen r stime edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENSTIME_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Spawnzeit EditMode ist nichtmehr aktiv..") elif text[0] == '+' and self.ENABLE_UPDATE_COMMAND: return elif net.IsChatInsultIn(text): chat.AppendChat(chat.CHAT_TYPE_INFO, locale.CHAT_INSULT_STRING) else: net.SendChatPacket(text, type) -> Fügt danach irgendwo in eurer uichat.py das ein: PHP Code: def __UpdateRegenMob(self): import player (x, y, z) = player.GetMainCharacterPosition() mv = self.mobvnum yaxe = self.yaxe xaxe = self.xaxe st = self.stime f = open("regen.txt", "a+") f.write ("m %d %d %s %s 0 0 %s 100 %d %s\n" % (x/100, y/100, yaxe, xaxe, st, z/10000, mv)) #f.write ("m %d %d 10 10 0 0 %d"+"s 100 1 101\n" % (x/100, y/100, z/10)) f.close() chat.AppendChat(chat.CHAT_TYPE_PARTY, "Das Mob wurde erfolgreich geplaced!") def __UpdateRegenGroup(self): import player (x, y, z) = player.GetMainCharacterPosition() gv = self.groupvnum yaxe = self.yaxe xaxe = self.xaxe st = self.stime f = open("regen.txt", "a+") f.write ("g %d %d %s %s 0 0 %s 100 %d %s\n" % (x/100, y/100, yaxe, xaxe, st, z/10000, gv)) #f.write ("g %d %d 10 10 0 0 30s 100 %d " + "101" + "\n" % (x/100, y/100, z/10000)) f.close() chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Mob-Group wurde erfolgreich geplaced!") def __UpdateRegenRandomGroup(self): import player (x, y, z) = player.GetMainCharacterPosition() rgv = self.randomgroupvnum yaxe = self.yaxe xaxe = self.xaxe st = self.stime f = open("regen.txt", "a+") f.write ("r %d %d %s %s 0 0 %s 100 %d %s\n" % (x/100, y/100, yaxe, xaxe, st, z/10000, rgv)) #f.write ("r %d %d 10 10 0 0 30s 100 %d " + "101" + "\n" % (x/100, y/100, z/10000)) f.close() chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Random-Mob-Group wurde erfolgreich geplaced!") def __DeleteRegen(self): chat.AppendChat(chat.CHAT_TYPE_PARTY, "Der Löschvorgang wurde bestätigt..!") f = open("regen.txt", "w") f.write ("") f.close() self.CLEAR_REGEN = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die regen.txt wurde erfolgreich gecleaned..!") def __ShowRegen(self): f = open("regen.txt", "r") regen = f.readline() if regen == "": chat.AppendChat(chat.CHAT_TYPE_GUILD, "Die regen.txt ist leer! ^^") else: chat.AppendChat(chat.CHAT_TYPE_GUILD, "Hier die aktuelle regen.txt!") while regen: chat.AppendChat(chat.CHAT_TYPE_PARTY, regen) regen = f.readline() f.close() -> Fertig ... Solltet ihr noch die Farbe wollen so sucht nach: PHP Code: def __CheckChatMark(self): self.overTextLine.Hide() text = self.GetText() if len(text) > 0: if '#' == text[0]: self.overTextLine.SetText("#") self.overTextLine.Show() elif '%' == text[0]: self.overTextLine.SetText("%") self.overTextLine.Show() elif '!' == text[0]: self.overTextLine.SetText("!") self.overTextLine.Show() und ersetzt es mit: PHP Code: def __CheckChatMark(self): self.overTextLine.Hide() text = self.GetText() specialtext = self.GetText() if len(text) > 0: if '#' == text[0]: self.overTextLine.SetText("#") self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.Show() elif '%' == text[0]: self.overTextLine.SetText("%") self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.Show() elif '!' == text[0]: self.overTextLine.SetText("!") self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.Show() elif str(self.GetText())[0] == "+" and self.ENABLE_UPDATE_COMMAND: self.overTextLine.SetText(specialtext) self.overTextLine.SetFontColor(0.45, 0.0, 0.1) self.overTextLine.Show() ну вроде всё сорри что так а не в серой рамочке просто не знаю как вот скрин - http://imageshack.us/photo/my-images/832/0915102811.jpg/ Добавлено (15.09.2011, 13:49) --------------------------------------------- и ещё если кто знает как отредактируйте плиз и напишите тут вот ссылка на источник http://www.elitepvpers.com/forum....od.html
Автор - дроС Дата добавления - 15.09.2011 в 13:49
6924
71
Why
Дата: Четверг, 15.09.2011, 13:52 | Сообщение # 2
Сообщений: 1233
Статус: Не на сайте
+100500 очень понравилось давно ждал таких изменений
[/url]
Сообщение +100500 очень понравилось давно ждал таких изменений Автор - Why Дата добавления - 15.09.2011 в 13:52
6924
71
дроС
Дата: Четверг, 15.09.2011, 14:09 | Сообщение # 3
Сообщений: 174
Статус: Не на сайте
кто сделает залейте файлик ок?Добавлено (15.09.2011, 14:09) --------------------------------------------- ща переделаю будет получше
Сообщение кто сделает залейте файлик ок?Добавлено (15.09.2011, 14:09) --------------------------------------------- ща переделаю будет получше
Автор - дроС Дата добавления - 15.09.2011 в 14:09
6924
71
Skully®
Дата: Четверг, 15.09.2011, 14:17 | Сообщение # 4
Сообщений: 1870
Статус: Не на сайте
забавно. автор наверно в пв играл.
Вы не ошибётесь, если поступите правильно. Сново в строю. pantheon.su
Сообщение забавно. автор наверно в пв играл. Автор - Skully® Дата добавления - 15.09.2011 в 14:17
6924
71
дроС
Дата: Четверг, 15.09.2011, 14:21 | Сообщение # 5
Сообщений: 174
Статус: Не на сайте
Code
class ChatLine(ui.EditLine): CHAT_MODE_NAME = { chat.CHAT_TYPE_TALKING : locale.CHAT_NORMAL, chat.CHAT_TYPE_PARTY : locale.CHAT_PARTY, chat.CHAT_TYPE_GUILD : locale.CHAT_GUILD, chat.CHAT_TYPE_SHOUT : locale.CHAT_SHOUT, }
-> Darauß macht ihr: PHP Code: Code
## ChatLine class ChatLine(ui.EditLine): ENABLE_UPDATE_COMMAND = 0 REGENMOB_EDIT_MODE = 0 REGENYAXE_EDIT_MODE = 0 REGENXAXE_EDIT_MODE = 0 REGENSTIME_EDIT_MODE = 0 REGENGROUP_EDIT_MODE = 0 REGENRANDOMGROUP_EDIT_MODE = 0 CLEAR_REGEN = 0 CHAT_MODE_NAME = { chat.CHAT_TYPE_TALKING : locale.CHAT_NORMAL, chat.CHAT_TYPE_PARTY : locale.CHAT_PARTY, chat.CHAT_TYPE_GUILD : locale.CHAT_GUILD, chat.CHAT_TYPE_SHOUT : locale.CHAT_SHOUT, }
-> Danach sucht nach: PHP Code: 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 self.overTextLine = ui.TextLine() self.overTextLine.SetParent(self) self.overTextLine.SetPosition(-1, 0) self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.SetOutline() self.overTextLine.Hide() self.lastSentenceStack = [] self.lastSentencePos = 0
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.ENABLE_UPDATE_COMMAND = None self.REGENMOB_EDIT_MODE = None self.REGENYAXE_EDIT_MODE = None self.REGENXAXE_EDIT_MODE = None self.REGENSTIME_EDIT_MODE = None self.REGENGROUP_EDIT_MODE = None self.REGENRANDOMGROUP_EDIT_MODE = None self.CLEAR_REGEN = None self.mobvnum = "101" self.groupvnum = "101" self.randomgroupvnum = "101" self.yaxe = "10" self.xaxe = "10" self.stime = "30s" self.chatMode = chat.CHAT_TYPE_TALKING self.bCodePage = TRUE self.overTextLine = ui.TextLine() self.overTextLine.SetParent(self) self.overTextLine.SetPosition(-1, 0) self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.SetOutline() self.overTextLine.Hide() self.lastSentenceStack = [] self.lastSentencePos = 0
Добавлено (15.09.2011, 14:21) --------------------------------------------- -> Sucht danach nach: PHP Code:
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)
-> Macht darauß: PHP Code: Code
def __SendChatPacket(self, text, type): # if text[0] == '/': # if ENABLE_CHAT_COMMAND or constInfo.CONSOLE_ENABLE: # pass # else: # return if text == '+update enable': self.ENABLE_UPDATE_COMMAND = 1 self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_INFO, "+update Command ist nun freigeschaltet!") elif text == '+update disable': self.ENABLE_UPDATE_COMMAND = 0 self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_INFO, "+update Command ist nun wieder deaktiviert!") elif text == '+update help' and not self.ENABLE_UPDATE_COMMAND: self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_GUILD, "Der +update Command, ist ausschließlich für Teammember von ****!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "Er erlaubt es ihnen bestimmte Dinge zu updaten....") chat.AppendChat(chat.CHAT_TYPE_INFO, "© passy305") elif text == '+update help' and self.ENABLE_UPDATE_COMMAND: self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_GUILD, "Derzeit gibt es folgende Commands:") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update enable -> Schaltet +update Command frei!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update disable -> Schaltet +update Command wieder aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update help -> Zeigt dir auch, wenn +update nicht aktiviert ist, ein Info Fenster an!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update commands help -> Zeigt dir dieses Fenster auf >D") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update showregen -> Zeigt dir die aktuelle regen.txt im Chat an!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update clearregen -> Startet die Abfrage, um die komplette regen.txt zu Cleanen!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update clearregen yes -> Bestätigt die Abfrage zum Cleanen der regen.txt!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update clearregen no -> Bricht die Abfrage zum Cleanen der regen.txt ab!") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m -> Spawnt ein Mob (regen.txt)") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen g -> Spawnt eine Gruppe (regen.txt)") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen r -> Spawnt eine Random-Gruppe (regen.txt)") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m mobvnum edit -> Ermöglicht editieren der Mobvnum!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m mobvnum edit off -> Schaltet Edit-Modus der Mobvnum aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen g groupvnum edit -> Ermöglicht editieren der Groupvnum!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen g groupvnum edit off -> Schaltet Edit-Modus der Groupvnum aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen r randomvnum edit -> Ermöglicht editieren der Random-Groupvnum!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen r randomvnum edit off -> Schaltet Edit-Modus der Random-Groupvnum aus!") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r yaxe edit -> Ermöglicht editieren der Y-Spawngröße!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r yaxe edit off -> Schaltet Edit-Modus der Y-Spawngröße aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r xaxe edit -> Ermöglicht editieren der X-Spawngröße!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r xaxe edit off -> Schaltet Edit-Modus der X-Spawngröße aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r stime edit -> Ermöglicht editieren der Spawnzeit!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r stime edit off -> Schaltet Edit-Modus der Spawnzeit aus!") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_GUILD, "© passy305") elif text == '+update showregen' and self.ENABLE_UPDATE_COMMAND: self.__ShowRegen() elif text == '+update clearregen' and self.ENABLE_UPDATE_COMMAND: chat.AppendChat(chat.CHAT_TYPE_PARTY, "Bestätige das du das wirklich tun möchtest..!") self.CLEAR_REGEN = 1 elif text == '+update clearregen yes' and self.ENABLE_UPDATE_COMMAND and self.CLEAR_REGEN: self.__DeleteRegen() elif text == '+update clearregen no' and self.ENABLE_UPDATE_COMMAND and self.CLEAR_REGEN: chat.AppendChat(chat.CHAT_TYPE_PARTY, "Der Löschvorgang wurde abgebrochen!") self.CLEAR_REGEN = 0 elif text == '+update regen m' and self.ENABLE_UPDATE_COMMAND: self.__UpdateRegenMob() elif text == '+update regen g' and self.ENABLE_UPDATE_COMMAND: self.__UpdateRegenGroup() elif text == '+update regen r' and self.ENABLE_UPDATE_COMMAND: self.__UpdateRegenRandomGroup() elif text == '+update regen m mobvnum edit' and self.ENABLE_UPDATE_COMMAND: self.REGENMOB_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Mobvnum EditMode ist aktiv!!!") elif self.REGENMOB_EDIT_MODE and not text == '+update regen m mobvnum edit off' and self.ENABLE_UPDATE_COMMAND: mobvnum = self.GetText() self.mobvnum = mobvnum chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Mobvnum wurde erfolgreich mit " + mobvnum + " ersetzt!") elif text == '+update regen m mobvnum edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENMOB_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Mobvnum EditMode ist nichtmehr aktiv..") elif text == '+update regen g groupvnum edit' and self.ENABLE_UPDATE_COMMAND: self.REGENGROUP_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Groupvnum EditMode ist aktiv!!!") elif self.REGENGROUP_EDIT_MODE and not text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: groupvnum = self.GetText() self.groupvnum = groupvnum chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Groupvnum wurde erfolgreich mit " + groupvnum + " ersetzt!") elif text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENGROUP_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Groupvnum EditMode ist nichtmehr aktiv..") elif text == '+update regen r randomvnum edit' and self.ENABLE_UPDATE_COMMAND: self.REGENRANDOMGROUP_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Random-Groupvnum EditMode ist aktiv!!!") elif self.REGENRANDOMGROUP_EDIT_MODE and not text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: randomgroupvnum = self.GetText() self.randomgroupvnum = randomgroupvnum chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Random-Groupvnum wurde erfolgreich mit " + randomgroupvnum + " ersetzt!") elif text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENRANDOMGROUP_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Random-Groupvnum EditMode ist nichtmehr aktiv..") elif text == '+update regen m yaxe edit' or text == '+update regen g yaxe edit' or text == '+update regen r yaxe edit' and self.ENABLE_UPDATE_COMMAND: self.REGENYAXE_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Y-Spawngröße EditMode ist aktiv!!!") elif self.REGENYAXE_EDIT_MODE and not text == '+update regen m yaxe edit off' and not text == '+update regen g yaxe edit off' and not text == '+update regen r yaxe edit off' and self.ENABLE_UPDATE_COMMAND: yaxe = self.GetText() self.yaxe = yaxe chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Y-Spawngröße wurde erfolgreich mit " + yaxe + " ersetzt!") elif text == '+update regen m yaxe edit off' or text == '+update regen g yaxe edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENYAXE_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Y-Spawngröße EditMode ist nichtmehr aktiv..") elif text == '+update regen m xaxe edit' or text == '+update regen g xaxe edit' or text == '+update regen r xaxe edit' and self.ENABLE_UPDATE_COMMAND: self.REGENXAXE_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "X-Spawngröße EditMode ist aktiv!!!") elif self.REGENXAXE_EDIT_MODE and not text == '+update regen m xaxe edit off' and not text == '+update regen g xaxe edit off' and not text == '+update regen r xaxe edit off' and self.ENABLE_UPDATE_COMMAND: xaxe = self.GetText() self.xaxe = xaxe chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die X-Spawngröße wurde erfolgreich mit " + xaxe + " ersetzt!") elif text == '+update regen m xaxe edit off' or text == '+update regen g xaxe edit off' or text == '+update regen r xaxe edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENXAXE_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "X-Spawngröße EditMode ist nichtmehr aktiv..") elif text == '+update regen m stime edit' or text == '+update regen g stime edit' or text == '+update regen r stime edit' and self.ENABLE_UPDATE_COMMAND: self.REGENSTIME_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Spawnzeit EditMode ist aktiv!!!") elif self.REGENSTIME_EDIT_MODE and not text == '+update regen m stime edit off' and not text == '+update regen g stime edit off' and not text == '+update regen r stime edit off' and self.ENABLE_UPDATE_COMMAND: stime = self.GetText() self.stime = stime chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Spawnzeit wurde erfolgreich mit " + stime + " ersetzt!") elif text == '+update regen m stime edit off' or text == '+update regen g stime edit off' or text == '+update regen r stime edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENSTIME_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Spawnzeit EditMode ist nichtmehr aktiv..") elif text[0] == '+' and self.ENABLE_UPDATE_COMMAND: return elif net.IsChatInsultIn(text): chat.AppendChat(chat.CHAT_TYPE_INFO, locale.CHAT_INSULT_STRING) else: net.SendChatPacket(text, type)
-> Fügt danach irgendwo in eurer uichat.py das ein: PHP Code: Code
def __UpdateRegenMob(self): import player (x, y, z) = player.GetMainCharacterPosition() mv = self.mobvnum yaxe = self.yaxe xaxe = self.xaxe st = self.stime f = open("regen.txt", "a+") f.write ("m %d %d %s %s 0 0 %s 100 %d %s\n" % (x/100, y/100, yaxe, xaxe, st, z/10000, mv)) #f.write ("m %d %d 10 10 0 0 %d"+"s 100 1 101\n" % (x/100, y/100, z/10)) f.close() chat.AppendChat(chat.CHAT_TYPE_PARTY, "Das Mob wurde erfolgreich geplaced!") def __UpdateRegenGroup(self): import player (x, y, z) = player.GetMainCharacterPosition() gv = self.groupvnum yaxe = self.yaxe xaxe = self.xaxe st = self.stime f = open("regen.txt", "a+") f.write ("g %d %d %s %s 0 0 %s 100 %d %s\n" % (x/100, y/100, yaxe, xaxe, st, z/10000, gv)) #f.write ("g %d %d 10 10 0 0 30s 100 %d " + "101" + "\n" % (x/100, y/100, z/10000)) f.close() chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Mob-Group wurde erfolgreich geplaced!") def __UpdateRegenRandomGroup(self): import player (x, y, z) = player.GetMainCharacterPosition() rgv = self.randomgroupvnum yaxe = self.yaxe xaxe = self.xaxe st = self.stime f = open("regen.txt", "a+") f.write ("r %d %d %s %s 0 0 %s 100 %d %s\n" % (x/100, y/100, yaxe, xaxe, st, z/10000, rgv)) #f.write ("r %d %d 10 10 0 0 30s 100 %d " + "101" + "\n" % (x/100, y/100, z/10000)) f.close() chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Random-Mob-Group wurde erfolgreich geplaced!") def __DeleteRegen(self): chat.AppendChat(chat.CHAT_TYPE_PARTY, "Der Löschvorgang wurde bestätigt..!") f = open("regen.txt", "w") f.write ("") f.close() self.CLEAR_REGEN = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die regen.txt wurde erfolgreich gecleaned..!") def __ShowRegen(self): f = open("regen.txt", "r") regen = f.readline() if regen == "": chat.AppendChat(chat.CHAT_TYPE_GUILD, "Die regen.txt ist leer! ^^") else: chat.AppendChat(chat.CHAT_TYPE_GUILD, "Hier die aktuelle regen.txt!") while regen: chat.AppendChat(chat.CHAT_TYPE_PARTY, regen) regen = f.readline() f.close()
-> Fertig ... Solltet ihr noch die Farbe wollen so sucht nach: PHP Code: Code
def __CheckChatMark(self): self.overTextLine.Hide() text = self.GetText() if len(text) > 0: if '#' == text[0]: self.overTextLine.SetText("#") self.overTextLine.Show() elif '%' == text[0]: self.overTextLine.SetText("%") self.overTextLine.Show() elif '!' == text[0]: self.overTextLine.SetText("!") self.overTextLine.Show()
und ersetzt es mit: PHP Code: Code
def __CheckChatMark(self): self.overTextLine.Hide() text = self.GetText() specialtext = self.GetText() if len(text) > 0: if '#' == text[0]: self.overTextLine.SetText("#") self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.Show() elif '%' == text[0]: self.overTextLine.SetText("%") self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.Show() elif '!' == text[0]: self.overTextLine.SetText("!") self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.Show() elif str(self.GetText())[0] == "+" and self.ENABLE_UPDATE_COMMAND: self.overTextLine.SetText(specialtext) self.overTextLine.SetFontColor(0.45, 0.0, 0.1) self.overTextLine.Show()
Сообщение Code
class ChatLine(ui.EditLine): CHAT_MODE_NAME = { chat.CHAT_TYPE_TALKING : locale.CHAT_NORMAL, chat.CHAT_TYPE_PARTY : locale.CHAT_PARTY, chat.CHAT_TYPE_GUILD : locale.CHAT_GUILD, chat.CHAT_TYPE_SHOUT : locale.CHAT_SHOUT, }
-> Darauß macht ihr: PHP Code: Code
## ChatLine class ChatLine(ui.EditLine): ENABLE_UPDATE_COMMAND = 0 REGENMOB_EDIT_MODE = 0 REGENYAXE_EDIT_MODE = 0 REGENXAXE_EDIT_MODE = 0 REGENSTIME_EDIT_MODE = 0 REGENGROUP_EDIT_MODE = 0 REGENRANDOMGROUP_EDIT_MODE = 0 CLEAR_REGEN = 0 CHAT_MODE_NAME = { chat.CHAT_TYPE_TALKING : locale.CHAT_NORMAL, chat.CHAT_TYPE_PARTY : locale.CHAT_PARTY, chat.CHAT_TYPE_GUILD : locale.CHAT_GUILD, chat.CHAT_TYPE_SHOUT : locale.CHAT_SHOUT, }
-> Danach sucht nach: PHP Code: 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 self.overTextLine = ui.TextLine() self.overTextLine.SetParent(self) self.overTextLine.SetPosition(-1, 0) self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.SetOutline() self.overTextLine.Hide() self.lastSentenceStack = [] self.lastSentencePos = 0
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.ENABLE_UPDATE_COMMAND = None self.REGENMOB_EDIT_MODE = None self.REGENYAXE_EDIT_MODE = None self.REGENXAXE_EDIT_MODE = None self.REGENSTIME_EDIT_MODE = None self.REGENGROUP_EDIT_MODE = None self.REGENRANDOMGROUP_EDIT_MODE = None self.CLEAR_REGEN = None self.mobvnum = "101" self.groupvnum = "101" self.randomgroupvnum = "101" self.yaxe = "10" self.xaxe = "10" self.stime = "30s" self.chatMode = chat.CHAT_TYPE_TALKING self.bCodePage = TRUE self.overTextLine = ui.TextLine() self.overTextLine.SetParent(self) self.overTextLine.SetPosition(-1, 0) self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.SetOutline() self.overTextLine.Hide() self.lastSentenceStack = [] self.lastSentencePos = 0
Добавлено (15.09.2011, 14:21) --------------------------------------------- -> Sucht danach nach: PHP Code:
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)
-> Macht darauß: PHP Code: Code
def __SendChatPacket(self, text, type): # if text[0] == '/': # if ENABLE_CHAT_COMMAND or constInfo.CONSOLE_ENABLE: # pass # else: # return if text == '+update enable': self.ENABLE_UPDATE_COMMAND = 1 self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_INFO, "+update Command ist nun freigeschaltet!") elif text == '+update disable': self.ENABLE_UPDATE_COMMAND = 0 self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_INFO, "+update Command ist nun wieder deaktiviert!") elif text == '+update help' and not self.ENABLE_UPDATE_COMMAND: self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_GUILD, "Der +update Command, ist ausschließlich für Teammember von ****!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "Er erlaubt es ihnen bestimmte Dinge zu updaten....") chat.AppendChat(chat.CHAT_TYPE_INFO, "© passy305") elif text == '+update help' and self.ENABLE_UPDATE_COMMAND: self.RunCloseEvent() chat.AppendChat(chat.CHAT_TYPE_GUILD, "Derzeit gibt es folgende Commands:") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update enable -> Schaltet +update Command frei!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update disable -> Schaltet +update Command wieder aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update help -> Zeigt dir auch, wenn +update nicht aktiviert ist, ein Info Fenster an!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update commands help -> Zeigt dir dieses Fenster auf >D") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update showregen -> Zeigt dir die aktuelle regen.txt im Chat an!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update clearregen -> Startet die Abfrage, um die komplette regen.txt zu Cleanen!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update clearregen yes -> Bestätigt die Abfrage zum Cleanen der regen.txt!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update clearregen no -> Bricht die Abfrage zum Cleanen der regen.txt ab!") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m -> Spawnt ein Mob (regen.txt)") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen g -> Spawnt eine Gruppe (regen.txt)") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen r -> Spawnt eine Random-Gruppe (regen.txt)") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m mobvnum edit -> Ermöglicht editieren der Mobvnum!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m mobvnum edit off -> Schaltet Edit-Modus der Mobvnum aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen g groupvnum edit -> Ermöglicht editieren der Groupvnum!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen g groupvnum edit off -> Schaltet Edit-Modus der Groupvnum aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen r randomvnum edit -> Ermöglicht editieren der Random-Groupvnum!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen r randomvnum edit off -> Schaltet Edit-Modus der Random-Groupvnum aus!") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r yaxe edit -> Ermöglicht editieren der Y-Spawngröße!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r yaxe edit off -> Schaltet Edit-Modus der Y-Spawngröße aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r xaxe edit -> Ermöglicht editieren der X-Spawngröße!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r xaxe edit off -> Schaltet Edit-Modus der X-Spawngröße aus!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r stime edit -> Ermöglicht editieren der Spawnzeit!") chat.AppendChat(chat.CHAT_TYPE_PARTY, "+update regen m/g/r stime edit off -> Schaltet Edit-Modus der Spawnzeit aus!") chat.AppendChat(chat.CHAT_TYPE_GUILD, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~") chat.AppendChat(chat.CHAT_TYPE_GUILD, "© passy305") elif text == '+update showregen' and self.ENABLE_UPDATE_COMMAND: self.__ShowRegen() elif text == '+update clearregen' and self.ENABLE_UPDATE_COMMAND: chat.AppendChat(chat.CHAT_TYPE_PARTY, "Bestätige das du das wirklich tun möchtest..!") self.CLEAR_REGEN = 1 elif text == '+update clearregen yes' and self.ENABLE_UPDATE_COMMAND and self.CLEAR_REGEN: self.__DeleteRegen() elif text == '+update clearregen no' and self.ENABLE_UPDATE_COMMAND and self.CLEAR_REGEN: chat.AppendChat(chat.CHAT_TYPE_PARTY, "Der Löschvorgang wurde abgebrochen!") self.CLEAR_REGEN = 0 elif text == '+update regen m' and self.ENABLE_UPDATE_COMMAND: self.__UpdateRegenMob() elif text == '+update regen g' and self.ENABLE_UPDATE_COMMAND: self.__UpdateRegenGroup() elif text == '+update regen r' and self.ENABLE_UPDATE_COMMAND: self.__UpdateRegenRandomGroup() elif text == '+update regen m mobvnum edit' and self.ENABLE_UPDATE_COMMAND: self.REGENMOB_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Mobvnum EditMode ist aktiv!!!") elif self.REGENMOB_EDIT_MODE and not text == '+update regen m mobvnum edit off' and self.ENABLE_UPDATE_COMMAND: mobvnum = self.GetText() self.mobvnum = mobvnum chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Mobvnum wurde erfolgreich mit " + mobvnum + " ersetzt!") elif text == '+update regen m mobvnum edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENMOB_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Mobvnum EditMode ist nichtmehr aktiv..") elif text == '+update regen g groupvnum edit' and self.ENABLE_UPDATE_COMMAND: self.REGENGROUP_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Groupvnum EditMode ist aktiv!!!") elif self.REGENGROUP_EDIT_MODE and not text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: groupvnum = self.GetText() self.groupvnum = groupvnum chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Groupvnum wurde erfolgreich mit " + groupvnum + " ersetzt!") elif text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENGROUP_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Groupvnum EditMode ist nichtmehr aktiv..") elif text == '+update regen r randomvnum edit' and self.ENABLE_UPDATE_COMMAND: self.REGENRANDOMGROUP_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Random-Groupvnum EditMode ist aktiv!!!") elif self.REGENRANDOMGROUP_EDIT_MODE and not text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: randomgroupvnum = self.GetText() self.randomgroupvnum = randomgroupvnum chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Random-Groupvnum wurde erfolgreich mit " + randomgroupvnum + " ersetzt!") elif text == '+update regen g groupvnum edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENRANDOMGROUP_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Random-Groupvnum EditMode ist nichtmehr aktiv..") elif text == '+update regen m yaxe edit' or text == '+update regen g yaxe edit' or text == '+update regen r yaxe edit' and self.ENABLE_UPDATE_COMMAND: self.REGENYAXE_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Y-Spawngröße EditMode ist aktiv!!!") elif self.REGENYAXE_EDIT_MODE and not text == '+update regen m yaxe edit off' and not text == '+update regen g yaxe edit off' and not text == '+update regen r yaxe edit off' and self.ENABLE_UPDATE_COMMAND: yaxe = self.GetText() self.yaxe = yaxe chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Y-Spawngröße wurde erfolgreich mit " + yaxe + " ersetzt!") elif text == '+update regen m yaxe edit off' or text == '+update regen g yaxe edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENYAXE_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Y-Spawngröße EditMode ist nichtmehr aktiv..") elif text == '+update regen m xaxe edit' or text == '+update regen g xaxe edit' or text == '+update regen r xaxe edit' and self.ENABLE_UPDATE_COMMAND: self.REGENXAXE_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "X-Spawngröße EditMode ist aktiv!!!") elif self.REGENXAXE_EDIT_MODE and not text == '+update regen m xaxe edit off' and not text == '+update regen g xaxe edit off' and not text == '+update regen r xaxe edit off' and self.ENABLE_UPDATE_COMMAND: xaxe = self.GetText() self.xaxe = xaxe chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die X-Spawngröße wurde erfolgreich mit " + xaxe + " ersetzt!") elif text == '+update regen m xaxe edit off' or text == '+update regen g xaxe edit off' or text == '+update regen r xaxe edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENXAXE_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "X-Spawngröße EditMode ist nichtmehr aktiv..") elif text == '+update regen m stime edit' or text == '+update regen g stime edit' or text == '+update regen r stime edit' and self.ENABLE_UPDATE_COMMAND: self.REGENSTIME_EDIT_MODE = 1 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Spawnzeit EditMode ist aktiv!!!") elif self.REGENSTIME_EDIT_MODE and not text == '+update regen m stime edit off' and not text == '+update regen g stime edit off' and not text == '+update regen r stime edit off' and self.ENABLE_UPDATE_COMMAND: stime = self.GetText() self.stime = stime chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Spawnzeit wurde erfolgreich mit " + stime + " ersetzt!") elif text == '+update regen m stime edit off' or text == '+update regen g stime edit off' or text == '+update regen r stime edit off' and self.ENABLE_UPDATE_COMMAND: self.REGENSTIME_EDIT_MODE = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Spawnzeit EditMode ist nichtmehr aktiv..") elif text[0] == '+' and self.ENABLE_UPDATE_COMMAND: return elif net.IsChatInsultIn(text): chat.AppendChat(chat.CHAT_TYPE_INFO, locale.CHAT_INSULT_STRING) else: net.SendChatPacket(text, type)
-> Fügt danach irgendwo in eurer uichat.py das ein: PHP Code: Code
def __UpdateRegenMob(self): import player (x, y, z) = player.GetMainCharacterPosition() mv = self.mobvnum yaxe = self.yaxe xaxe = self.xaxe st = self.stime f = open("regen.txt", "a+") f.write ("m %d %d %s %s 0 0 %s 100 %d %s\n" % (x/100, y/100, yaxe, xaxe, st, z/10000, mv)) #f.write ("m %d %d 10 10 0 0 %d"+"s 100 1 101\n" % (x/100, y/100, z/10)) f.close() chat.AppendChat(chat.CHAT_TYPE_PARTY, "Das Mob wurde erfolgreich geplaced!") def __UpdateRegenGroup(self): import player (x, y, z) = player.GetMainCharacterPosition() gv = self.groupvnum yaxe = self.yaxe xaxe = self.xaxe st = self.stime f = open("regen.txt", "a+") f.write ("g %d %d %s %s 0 0 %s 100 %d %s\n" % (x/100, y/100, yaxe, xaxe, st, z/10000, gv)) #f.write ("g %d %d 10 10 0 0 30s 100 %d " + "101" + "\n" % (x/100, y/100, z/10000)) f.close() chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Mob-Group wurde erfolgreich geplaced!") def __UpdateRegenRandomGroup(self): import player (x, y, z) = player.GetMainCharacterPosition() rgv = self.randomgroupvnum yaxe = self.yaxe xaxe = self.xaxe st = self.stime f = open("regen.txt", "a+") f.write ("r %d %d %s %s 0 0 %s 100 %d %s\n" % (x/100, y/100, yaxe, xaxe, st, z/10000, rgv)) #f.write ("r %d %d 10 10 0 0 30s 100 %d " + "101" + "\n" % (x/100, y/100, z/10000)) f.close() chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die Random-Mob-Group wurde erfolgreich geplaced!") def __DeleteRegen(self): chat.AppendChat(chat.CHAT_TYPE_PARTY, "Der Löschvorgang wurde bestätigt..!") f = open("regen.txt", "w") f.write ("") f.close() self.CLEAR_REGEN = 0 chat.AppendChat(chat.CHAT_TYPE_PARTY, "Die regen.txt wurde erfolgreich gecleaned..!") def __ShowRegen(self): f = open("regen.txt", "r") regen = f.readline() if regen == "": chat.AppendChat(chat.CHAT_TYPE_GUILD, "Die regen.txt ist leer! ^^") else: chat.AppendChat(chat.CHAT_TYPE_GUILD, "Hier die aktuelle regen.txt!") while regen: chat.AppendChat(chat.CHAT_TYPE_PARTY, regen) regen = f.readline() f.close()
-> Fertig ... Solltet ihr noch die Farbe wollen so sucht nach: PHP Code: Code
def __CheckChatMark(self): self.overTextLine.Hide() text = self.GetText() if len(text) > 0: if '#' == text[0]: self.overTextLine.SetText("#") self.overTextLine.Show() elif '%' == text[0]: self.overTextLine.SetText("%") self.overTextLine.Show() elif '!' == text[0]: self.overTextLine.SetText("!") self.overTextLine.Show()
und ersetzt es mit: PHP Code: Code
def __CheckChatMark(self): self.overTextLine.Hide() text = self.GetText() specialtext = self.GetText() if len(text) > 0: if '#' == text[0]: self.overTextLine.SetText("#") self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.Show() elif '%' == text[0]: self.overTextLine.SetText("%") self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.Show() elif '!' == text[0]: self.overTextLine.SetText("!") self.overTextLine.SetFontColor(1.0, 1.0, 0.0) self.overTextLine.Show() elif str(self.GetText())[0] == "+" and self.ENABLE_UPDATE_COMMAND: self.overTextLine.SetText(specialtext) self.overTextLine.SetFontColor(0.45, 0.0, 0.1) self.overTextLine.Show()
Автор - дроС Дата добавления - 15.09.2011 в 14:21
6924
71
Erepb
Дата: Четверг, 15.09.2011, 14:26 | Сообщение # 6
Сообщений: 248
Статус: Не на сайте
Супер
Тут подпись...
Сообщение Супер Автор - Erepb Дата добавления - 15.09.2011 в 14:26
6924
71
дроС
Дата: Четверг, 15.09.2011, 14:29 | Сообщение # 7
Сообщений: 174
Статус: Не на сайте
очень прошу скиньте сюда файлик этот ок?
Сообщение очень прошу скиньте сюда файлик этот ок? Автор - дроС Дата добавления - 15.09.2011 в 14:29
6924
71
Erepb
Дата: Четверг, 15.09.2011, 14:46 | Сообщение # 8
Сообщений: 248
Статус: Не на сайте
Файлик П.С. Не проверял, но сделал по гайду...
Тут подпись...
Сообщение Файлик П.С. Не проверял, но сделал по гайду...Автор - Erepb Дата добавления - 15.09.2011 в 14:46
6924
71
дроС
Дата: Четверг, 15.09.2011, 14:53 | Сообщение # 9
Сообщений: 174
Статус: Не на сайте
спасибо)))))) ща посмотрю
Сообщение спасибо)))))) ща посмотрю Автор - дроС Дата добавления - 15.09.2011 в 14:53
6924
71
Adorantrius
Дата: Четверг, 15.09.2011, 17:47 | Сообщение # 10
Сообщений: 792
Статус: Не на сайте
Скрин подтверждающий в студию...
Создаю профессиональные сайты, HTML+CSS, CMS Wordpress.Подробности в ЛС
Сообщение Скрин подтверждающий в студию... Автор - Adorantrius Дата добавления - 15.09.2011 в 17:47
6924
71
valkiriy
Дата: Четверг, 15.09.2011, 18:47 | Сообщение # 11
Сообщений: 1121
Статус: Не на сайте
кулл но косить под другие игры как то не есть зер гуд))))
Мои контакты: vk.com/npocto.macuk skype: valkiriy94
Сообщение кулл но косить под другие игры как то не есть зер гуд)))) Автор - valkiriy Дата добавления - 15.09.2011 в 18:47
6924
71
KazU
Дата: Четверг, 15.09.2011, 19:32 | Сообщение # 12
Сообщений: 463
Статус: Не на сайте
Парень ололошка, данный скрин к гайду вообще не относится, то что описанно в гайде - автоматическое расположение мобов на карте, ни как уж не новый дизайн, которого еще нет в паблике.
Сообщение Парень ололошка, данный скрин к гайду вообще не относится, то что описанно в гайде - автоматическое расположение мобов на карте, ни как уж не новый дизайн, которого еще нет в паблике. Автор - KazU Дата добавления - 15.09.2011 в 19:32
6924
71
Fizik666
Дата: Четверг, 15.09.2011, 20:13 | Сообщение # 13
Сообщений: 557
Статус: Не на сайте
Quote (valkiriy )
кулл но косить под другие
Дизайн из онлайн игры Cabal:online
Now this world shall know PAIN
Сообщение Quote (valkiriy )
кулл но косить под другие
Дизайн из онлайн игры Cabal:onlineАвтор - Fizik666 Дата добавления - 15.09.2011 в 20:13
6924
71
windowsx2
Дата: Четверг, 29.12.2011, 22:40 | Сообщение # 14
Сообщений: 71
Статус: Не на сайте
это реально или нет??
Good Game Portal-скоро на ваших мониторах:D
Сообщение это реально или нет?? Автор - windowsx2 Дата добавления - 29.12.2011 в 22:40
6924
71
Bancaq™
Дата: Пятница, 30.12.2011, 07:51 | Сообщение # 15
Сообщений: 564
Статус: Не на сайте
Quote (KazU )
Парень ололошка, данный скрин к гайду вообще не относится, то что описанно в гайде - автоматическое расположение мобов на карте, ни как уж не новый дизайн, которого еще нет в паблике.
Quote (spanchbob2124 )
это реально или нет??
Хотя хезе.
http://rivendell2.ru
Сообщение Quote (KazU )
Парень ололошка, данный скрин к гайду вообще не относится, то что описанно в гайде - автоматическое расположение мобов на карте, ни как уж не новый дизайн, которого еще нет в паблике.
Quote (spanchbob2124 )
это реально или нет??
Хотя хезе.Автор - Bancaq™ Дата добавления - 30.12.2011 в 07:51
6924
71
windowsx2
Дата: Пятница, 30.12.2011, 11:00 | Сообщение # 16
Сообщений: 71
Статус: Не на сайте
я о том же,кто то говорит реально,а кто-то нет.___.
Good Game Portal-скоро на ваших мониторах:D
Сообщение я о том же,кто то говорит реально,а кто-то нет.___. Автор - windowsx2 Дата добавления - 30.12.2011 в 11:00
6924
71
Rusgame
Дата: Пятница, 30.12.2011, 13:31 | Сообщение # 17
Сообщений: 815
Статус: Не на сайте
Возможно +) Только вот придется помучится
Порой мы не замечаем свои ошибки, но любим указывать на чужие... http://antasia2.ru/ - Готовность 90 % .
Сообщение Возможно +) Только вот придется помучится Автор - Rusgame Дата добавления - 30.12.2011 в 13:31
6924
71
windowsx2
Дата: Пятница, 30.12.2011, 17:26 | Сообщение # 18
Сообщений: 71
Статус: Не на сайте
у казу же получилось:)
Good Game Portal-скоро на ваших мониторах:D
Сообщение у казу же получилось:) Автор - windowsx2 Дата добавления - 30.12.2011 в 17:26
6924
71
KazU
Дата: Суббота, 31.12.2011, 15:22 | Сообщение # 19
Сообщений: 463
Статус: Не на сайте
6924
71
Дата: Суббота, 31.12.2011, 15:26 | Сообщение # 20
Сообщений: 289
Статус: Не на сайте
У тебя больше на TheSims3 похоже хДДД Забавно)
Сообщение У тебя больше на TheSims3 похоже хДДД Забавно) Автор - Shuva300 Дата добавления - 31.12.2011 в 15:26
6924
71
valkiriy
Дата: Воскресенье, 01.01.2012, 10:02 | Сообщение # 21
Сообщений: 1121
Статус: Не на сайте
тестил... встает криво(не грузит мир)... скрипты надо редактировать... попробую сейчас еще раз но не фактДобавлено (01.01.2012, 10:02) ---------------------------------------------
Quote (valkiriy )
тестил... встает криво(не грузит мир)... скрипты надо редактировать... попробую сейчас еще раз но не факт
, ппц сначало не посмотрел путь запаковки Etc - исправил, запаковал, положил в клиент... один фиг мир не грузит >_<, а так хотелось интерфейсик поюзать.... помогите кто чем может
Мои контакты: vk.com/npocto.macuk skype: valkiriy94
Сообщение тестил... встает криво(не грузит мир)... скрипты надо редактировать... попробую сейчас еще раз но не фактДобавлено (01.01.2012, 10:02) ---------------------------------------------
Quote (valkiriy )
тестил... встает криво(не грузит мир)... скрипты надо редактировать... попробую сейчас еще раз но не факт
, ппц сначало не посмотрел путь запаковки Etc - исправил, запаковал, положил в клиент... один фиг мир не грузит >_<, а так хотелось интерфейсик поюзать.... помогите кто чем может Автор - valkiriy Дата добавления - 01.01.2012 в 10:02
6924
71
windows
Дата: Понедельник, 02.01.2012, 13:24 | Сообщение # 22
Сообщений: 783
Статус: Не на сайте
уважаемый казу,вы не слишком ли охамели???? Называть всех подряд лолами??
знающий поймет:С rubukkit.org/threads/minecon-Новости-о-mod-api-и-будущем-minecraft.25551/
Сообщение уважаемый казу,вы не слишком ли охамели???? Называть всех подряд лолами?? Автор - windows Дата добавления - 02.01.2012 в 13:24
6924
71
valkiriy
Дата: Понедельник, 02.01.2012, 14:10 | Сообщение # 23
Сообщений: 1121
Статус: Не на сайте
уважаемая система от корпорации Билла Гейтса) Лол - это усмешка (надсмешка)... Нет такого слова лолка (это излишки интернета)... А Кирил всего лишь усмехнулся)
Мои контакты: vk.com/npocto.macuk skype: valkiriy94
Сообщение уважаемая система от корпорации Билла Гейтса) Лол - это усмешка (надсмешка)... Нет такого слова лолка (это излишки интернета)... А Кирил всего лишь усмехнулся) Автор - valkiriy Дата добавления - 02.01.2012 в 14:10
6924
71
KazU
Дата: Понедельник, 02.01.2012, 19:16 | Сообщение # 24
Сообщений: 463
Статус: Не на сайте
Quote (valkiriy )
уважаемая система от корпорации Билла Гейтса) Лол - это усмешка (надсмешка)... Нет такого слова лолка (это излишки интернета)... А Кирил всего лишь усмехнулся)
Грамотный человек
Сообщение Quote (valkiriy )
уважаемая система от корпорации Билла Гейтса) Лол - это усмешка (надсмешка)... Нет такого слова лолка (это излишки интернета)... А Кирил всего лишь усмехнулся)
Грамотный человек Автор - KazU Дата добавления - 02.01.2012 в 19:16
6924
71
valkiriy
Дата: Понедельник, 02.01.2012, 21:54 | Сообщение # 25
Сообщений: 1121
Статус: Не на сайте
Кирил, помоги с интерфейсом очень хочется увидеть в действии (у меня клиент офа переделанный, поставь пожалуйста в него данный интерфейс и скинь архивы на мультиаплад) если конечно не обременю... Заранее спасибо...
Мои контакты: vk.com/npocto.macuk skype: valkiriy94
Сообщение Кирил, помоги с интерфейсом очень хочется увидеть в действии (у меня клиент офа переделанный, поставь пожалуйста в него данный интерфейс и скинь архивы на мультиаплад) если конечно не обременю... Заранее спасибо... Автор - valkiriy Дата добавления - 02.01.2012 в 21:54
6924
71
windows
Дата: Пятница, 06.01.2012, 00:13 | Сообщение # 26
Сообщений: 783
Статус: Не на сайте
казу,когда фоилик скиниь или гафд поправишь:?
знающий поймет:С rubukkit.org/threads/minecon-Новости-о-mod-api-и-будущем-minecraft.25551/
Сообщение казу,когда фоилик скиниь или гафд поправишь:? Автор - windows Дата добавления - 06.01.2012 в 00:13
6924
71
Bancaq™
Дата: Пятница, 06.01.2012, 01:06 | Сообщение # 27
Сообщений: 564
Статус: Не на сайте
Quote (windows )
казу,когда фоилик скиниь или гафд поправишь:?
Граматика кул=/ Он не обещал не то, не то.
http://rivendell2.ru
Сообщение Quote (windows )
казу,когда фоилик скиниь или гафд поправишь:?
Граматика кул=/ Он не обещал не то, не то.Автор - Bancaq™ Дата добавления - 06.01.2012 в 01:06
6924
71
UpStapSnack
Дата: Пятница, 06.01.2012, 01:40 | Сообщение # 28
Сообщений: 327
Статус: Не на сайте
Ето уже не метин а кака мне будет не доставать тех шариков с опытом и манетки с ужаснонй графикои Quote (Bancaq )
Граматика кул=/
у меня тож норм
Dota 2
Сообщение Ето уже не метин а кака мне будет не доставать тех шариков с опытом и манетки с ужаснонй графикои Quote (Bancaq )
Граматика кул=/
у меня тож норм Автор - UpStapSnack Дата добавления - 06.01.2012 в 01:40
6924
71
windows
Дата: Пятница, 06.01.2012, 22:51 | Сообщение # 29
Сообщений: 783
Статус: Не на сайте
я телевона пишу и тогда спать хотел,я обычно слежу за своей грамматикой:З
знающий поймет:С rubukkit.org/threads/minecon-Новости-о-mod-api-и-будущем-minecraft.25551/
Сообщение я телевона пишу и тогда спать хотел,я обычно слежу за своей грамматикой:З Автор - windows Дата добавления - 06.01.2012 в 22:51
Copyright Necromancers © 2025 Сайт основан на мотивах Метин-2
Все права на некоторые элементы дизайна принадлежат официальному сайту www.metin-2.ru