Advertisement
Guest User

RealFreaksMod.py

a guest
Jul 17th, 2013
903
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 300.33 KB | None | 0 0
  1. import app
  2. import chat
  3. import chr
  4. import locale
  5. import net
  6. import os
  7. import pack
  8. import player
  9. import snd
  10. import time
  11. import ui
  12. import uiCommon
  13. import uiTip
  14. import skill
  15. import item
  16. import shop
  17. import grp
  18. import wndMgr
  19.  
  20. HALF_WHITE_COLOR = grp.GenerateColor(1.0, 1.0, 1.0, 0.2)
  21. SELECT_COLOR = grp.GenerateColor(0.0, 0.0, 0.5, 0.3)
  22.  
  23. Error = ""
  24. Errortype = "none"
  25. Dialog = 0
  26.  
  27. class ScriptStealerDialog(ui.ThinBoard):
  28.    
  29.     def __init__(self):
  30.         ui.ThinBoard.__init__(self)
  31.         self.__Load_FileExtractor()
  32.        
  33.     def __del__(self):
  34.         ui.ThinBoard.__del__(self)
  35.  
  36.     def Destroy(self):
  37.         self.Hide()
  38.         return TRUE
  39.        
  40.     def __CreateFileListBox(self):
  41.         fileListBox = ui.ListBoxEx()
  42.         fileListBox.SetParent(self)
  43.         fileListBox.SetPosition(25, 57)
  44.         fileListBox.SetViewItemCount(8)
  45.         fileListBox.SetItemSize(160, 16)
  46.         fileListBox.Show()
  47.         return fileListBox
  48.        
  49.     def __Load_FileExtractor(self):
  50.         self.fileListBox = self.__CreateFileListBox()
  51.        
  52.         self.ScrollBar = ui.ScrollBar()
  53.         self.ScrollBar.SetParent(self)
  54.         self.ScrollBar.SetPosition(183, 47)
  55.         self.ScrollBar.SetScrollBarSize(170)
  56.         self.ScrollBar.Show()
  57.         self.fileListBox.SetScrollBar(self.ScrollBar)
  58.    
  59.         self.SetPosition(5, 350)
  60.         self.SetSize(293, 283 + 65)
  61.         self.Show()
  62.         self.AddFlag("movable")
  63.         snd.PlaySound("sound/ui/type.wav")
  64.  
  65.         self.titel = ui.TextLine()
  66.         self.titel.SetParent(self)
  67.         self.titel.SetDefaultFontName()
  68.         self.titel.SetPosition(95, 10)
  69.         self.titel.SetFeather()
  70.         self.titel.SetText("Metin2 File Extractor")
  71.         self.titel.SetFontColor(0.1, 0.7, 1)
  72.         self.titel.SetOutline()
  73.         self.titel.Show()
  74.  
  75.         self.notice = ui.TextLine()
  76.         self.notice.SetParent(self)
  77.         self.notice.SetDefaultFontName()
  78.         self.notice.SetPosition(20, 30)
  79.         self.notice.SetFeather()
  80.         self.notice.SetText("Folgende Dateien werden entpackt:")
  81.         self.notice.SetFontColor(0.6, 0.7, 1)
  82.         self.notice.SetOutline()
  83.         self.notice.SetTop()
  84.         self.notice.Show()
  85.  
  86.         self.CloseButton = ui.Button()
  87.         self.CloseButton.SetParent(self)
  88.         self.CloseButton.SetPosition(253, 13)
  89.         self.CloseButton.SetUpVisual("d:/ymir work/ui/public/close_button_01.sub")
  90.         self.CloseButton.SetOverVisual("d:/ymir work/ui/public/close_button_02.sub")
  91.         self.CloseButton.SetDownVisual("d:/ymir work/ui/public/close_button_03.sub")
  92.         self.CloseButton.SetToolTipText(locale.UI_CLOSE, 0, - 23)
  93.         self.CloseButton.SetEvent(ui.__mem_func__(self.Close))
  94.         self.CloseButton.Show()
  95.  
  96.         self.extractbutton = ui.Button()
  97.         self.extractbutton.SetParent(self)
  98.         self.extractbutton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_01.sub")
  99.         self.extractbutton.SetOverVisual("d:/ymir work/ui/public/xlarge_button_02.sub")
  100.         self.extractbutton.SetDownVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
  101.         self.extractbutton.SetText("Extract!")
  102.         self.extractbutton.SetPosition(20, 223 + 65)
  103.         self.extractbutton.SetEvent(ui.__mem_func__(self.OnClickExtract))
  104.         self.extractbutton.Show()
  105.  
  106.         self.UpdateButton = ui.Button()
  107.         self.UpdateButton.SetParent(self)
  108.         self.UpdateButton.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  109.         self.UpdateButton.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  110.         self.UpdateButton.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  111.         self.UpdateButton.SetText("File Update")
  112.         self.UpdateButton.SetPosition(210, 225 + 65)
  113.         self.UpdateButton.SetEvent(ui.__mem_func__(self.namelinemodule))
  114.         self.UpdateButton.Show()
  115.  
  116.         self.NewFileButton = ui.Button()
  117.         self.NewFileButton.SetParent(self)
  118.         self.NewFileButton.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  119.         self.NewFileButton.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  120.         self.NewFileButton.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  121.         self.NewFileButton.SetText("New File")
  122.         self.NewFileButton.SetPosition(210, 55)
  123.         self.NewFileButton.SetEvent(ui.__mem_func__(self.WriteNewFile))
  124.         self.NewFileButton.Show()
  125.  
  126.         self.AddFileButton = ui.Button()
  127.         self.AddFileButton.SetParent(self)
  128.         self.AddFileButton.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  129.         self.AddFileButton.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  130.         self.AddFileButton.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  131.         self.AddFileButton.SetText("Add File")
  132.         self.AddFileButton.SetPosition(210, 85)
  133.         self.AddFileButton.SetEvent(ui.__mem_func__(self.AddFile))
  134.         self.AddFileButton.Show()
  135.  
  136.         self.ChangeFileButton = ui.Button()
  137.         self.ChangeFileButton.SetParent(self)
  138.         self.ChangeFileButton.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  139.         self.ChangeFileButton.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  140.         self.ChangeFileButton.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  141.         self.ChangeFileButton.SetText("Change File")
  142.         self.ChangeFileButton.SetPosition(210, 115)
  143.         self.ChangeFileButton.SetEvent(ui.__mem_func__(self.ReplaceExistingFile))
  144.         self.ChangeFileButton.Show()
  145.  
  146.         self.DeleteFileButton = ui.Button()
  147.         self.DeleteFileButton.SetParent(self)
  148.         self.DeleteFileButton.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  149.         self.DeleteFileButton.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  150.         self.DeleteFileButton.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  151.         self.DeleteFileButton.SetText("Delete File")
  152.         self.DeleteFileButton.SetPosition(210, 145)
  153.         self.DeleteFileButton.SetEvent(ui.__mem_func__(self.DeleteExistingFile))
  154.         self.DeleteFileButton.Show()
  155.  
  156.         self.ReplaceFileButton = ui.Button()
  157.         self.ReplaceFileButton.SetParent(self)
  158.         self.ReplaceFileButton.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  159.         self.ReplaceFileButton.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  160.         self.ReplaceFileButton.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  161.         self.ReplaceFileButton.SetText("Replace File")
  162.         self.ReplaceFileButton.SetPosition(210, 175)
  163.         self.ReplaceFileButton.SetEvent(ui.__mem_func__(self.ReplaceFile))
  164.         self.ReplaceFileButton.Show()
  165.  
  166.         self.OpenListButton = ui.Button()
  167.         self.OpenListButton.SetParent(self)
  168.         self.OpenListButton.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  169.         self.OpenListButton.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  170.         self.OpenListButton.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  171.         self.OpenListButton.SetText("Open")
  172.         self.OpenListButton.SetPosition(210, 215)
  173.         self.OpenListButton.SetEvent(ui.__mem_func__(self.OpenList))
  174.         self.OpenListButton.Show()
  175.  
  176.         self.NewTestButton = ui.Button()
  177.         self.NewTestButton.SetParent(self)
  178.         self.NewTestButton.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  179.         self.NewTestButton.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  180.         self.NewTestButton.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  181.         self.NewTestButton.SetText("Xml Unpack")
  182.         self.NewTestButton.SetPosition(210, 245)
  183.         self.NewTestButton.SetEvent(ui.__mem_func__(self.XMLUnPack))
  184.         self.NewTestButton.Show()
  185.        
  186.         self.copyright = ui.TextLine()
  187.         self.copyright.SetParent(self)
  188.         self.copyright.SetDefaultFontName()
  189.         self.copyright.SetPosition(125, 255 + 65)
  190.         self.copyright.SetFeather()
  191.         self.copyright.SetText("v2.4 © Tyrson/RealFreak/Crank")
  192.         self.copyright.SetFontColor(1.0, 0.5, 0.5)
  193.         self.copyright.SetOutline()
  194.         self.copyright.Show()
  195.  
  196.         self.Log = ui.TextLine()
  197.         self.Log.SetParent(self)
  198.         self.Log.SetDefaultFontName()
  199.         self.Log.SetPosition(20, 220)
  200.         self.Log.SetFeather()
  201.         self.Log.SetText("File Extractor Log:")
  202.         self.Log.SetFontColor(0.6, 0.7, 1)
  203.         self.Log.SetOutline()
  204.         self.Log.Show()
  205.  
  206.         self.LogTextLine1 = ui.TextLine()
  207.         self.LogTextLine1.SetParent(self)
  208.         self.LogTextLine1.SetDefaultFontName()
  209.         self.LogTextLine1.SetPosition(23, 235)
  210.         self.LogTextLine1.SetFeather()
  211.         self.LogTextLine1.SetText("-")
  212.         self.LogTextLine1.SetOutline()
  213.         self.LogTextLine1.Show()
  214.        
  215.         self.LogTextLine2 = ui.TextLine()
  216.         self.LogTextLine2.SetParent(self)
  217.         self.LogTextLine2.SetDefaultFontName()
  218.         self.LogTextLine2.SetPosition(23, 250)
  219.         self.LogTextLine2.SetFeather()
  220.         self.LogTextLine2.SetText("")
  221.         self.LogTextLine2.SetOutline()
  222.         self.LogTextLine2.Show()
  223.  
  224.         self.LogTextLine3 = ui.TextLine()
  225.         self.LogTextLine3.SetParent(self)
  226.         self.LogTextLine3.SetDefaultFontName()
  227.         self.LogTextLine3.SetPosition(23, 265)
  228.         self.LogTextLine3.SetFeather()
  229.         self.LogTextLine3.SetText("")
  230.         self.LogTextLine3.SetOutline()
  231.         self.LogTextLine3.Show()
  232.        
  233.         self.namelinemodule()
  234.    
  235.     def XMLUnPack(self):
  236.         global Dialog
  237.         self.FilenameDialog = XMLUnPackDialog()
  238.         self.FilenameDialog.SetAcceptEvent(lambda arg=TRUE: self.NewFile(arg, "add"))
  239.         self.FilenameDialog.SetCancelEvent(lambda arg=FALSE: self.NewFile(arg, ""))
  240.         self.FilenameDialog.SetTitle("Add XML")
  241.         self.FilenameDialog.Show() 
  242.         Dialog = 1
  243.        
  244.     def OpenList(self):
  245.         os.system("notepad exlist.txt")
  246.    
  247.     def ReplaceFile(self):
  248.         global Dialog
  249.         self.FilenameDialog = ReplaceDialog()
  250.         self.FilenameDialog.SetAcceptEvent(lambda arg=TRUE: self.NewFile(arg, "replace"))
  251.         self.FilenameDialog.SetCancelEvent(lambda arg=FALSE: self.NewFile(arg, ""))
  252.         self.FilenameDialog.SetTitle("Replace File")
  253.         self.FilenameDialog.Show() 
  254.         Dialog = 1
  255.            
  256.     def DeleteExistingFile(self):
  257.         DeleteContent = self.fileListBox.GetSelectedItem()
  258.         DeleteText = DeleteContent.GetText()
  259.         if str(DeleteText) == "":
  260.             return
  261.         else:
  262.             file = open("exlist.txt", "r+")
  263.             FileString = file.read()
  264.             NewFiles = str(FileString).replace(str(DeleteText + ",\n"), str(""))
  265.             file.close()
  266.             f = open("exlist.txt", "w+")
  267.             f.write(NewFiles)
  268.             f.close()
  269.             self.namelinemodule()
  270.    
  271.     def ReplaceExistingFile(self):
  272.         global Dialog
  273.         Replace = self.fileListBox.GetSelectedItem()
  274.         Replace = Replace.GetText()
  275.         if str(Replace) == "":
  276.             return
  277.         else:
  278.             FilenameDialog = uiCommon.InputDialog()
  279.             FilenameDialog.SetAcceptEvent(lambda arg=TRUE: self.NewFile(arg, "special"))
  280.             FilenameDialog.SetCancelEvent(lambda arg=FALSE: self.NewFile(arg, ""))
  281.             FilenameDialog.SetTitle("Change File")
  282.             FilenameDialog.SetMaxLength(64)
  283.             FilenameDialog.Open()  
  284.             Dialog = 1
  285.             self.FilenameDialog = FilenameDialog
  286.    
  287.     def AddFile(self):
  288.         global Dialog
  289.         FilenameDialog = uiCommon.InputDialog()
  290.         FilenameDialog.SetAcceptEvent(lambda arg=TRUE: self.NewFile(arg, "a+"))
  291.         FilenameDialog.SetCancelEvent(lambda arg=FALSE: self.NewFile(arg, ""))
  292.         FilenameDialog.SetTitle("Add new Files")
  293.         FilenameDialog.SetMaxLength(64)
  294.         FilenameDialog.Open()
  295.         Dialog = 1
  296.         self.FilenameDialog = FilenameDialog
  297.    
  298.     def WriteNewFile(self):
  299.         global Dialog
  300.         FilenameDialog = uiCommon.InputDialog()
  301.         FilenameDialog.SetAcceptEvent(lambda arg=TRUE: self.NewFile(arg, "w+"))
  302.         FilenameDialog.SetCancelEvent(lambda arg=FALSE: self.NewFile(arg, ""))
  303.         FilenameDialog.SetTitle("Extract new Files")
  304.         FilenameDialog.SetMaxLength(64)
  305.         FilenameDialog.Open()
  306.         Dialog = 1
  307.         self.FilenameDialog = FilenameDialog
  308.        
  309.     def NewFile(self, answer, type):
  310.         global Dialog
  311.         Dialog = 0
  312.        
  313.         if not self.FilenameDialog:
  314.             return
  315.            
  316.         if str(type) == "special":
  317.             Replace = self.fileListBox.GetSelectedItem()
  318.             Replace = Replace.GetText()
  319.             self.ReplaceExtraction(str(Replace), str(str(self.FilenameDialog.GetText())))
  320.            
  321.         if str(type) == "replace":
  322.             String = str(self.FilenameDialog.GetText()).split("%&/")
  323.             ReplaceExisting = str(String[0])
  324.             ReplaceText = str(String[1])
  325.             self.ReplaceExtraction(str(ReplaceExisting), str(ReplaceText))
  326.            
  327.         if str(type) == "add":
  328.             if os.path.exists(self.FilenameDialog.GetText()):
  329.                 file = open(self.FilenameDialog.GetText(), "r+")
  330.                 FileString = file.read()
  331.                 FileString = str(FileString).replace("<File archivedPath=\"", "!§$%&")
  332.                 NewFiles = str(FileString).replace("\" type=", "!§$%&")
  333.                 TestFiles = NewFiles.split("!§$%&")
  334.                 file.close()
  335.                 f = open("exlist.txt", "a+")
  336.                 i = 1
  337.                 for z in xrange(int(NewFiles.count("!§$%&") / 2)):
  338.                     f.write(str(TestFiles[i] + ",\n"))
  339.                     i += 2
  340.                 f.close()
  341.             else:
  342.                 self.LogTextLine1.SetText("Xml existiert nicht!")
  343.                 return
  344.            
  345.         if answer and str(type) != "special" and str(type) != "replace" and str(type) != "add":
  346.             newfilename = self.FilenameDialog.GetText()
  347.             f = open("exlist.txt", type)
  348.             f.write(newfilename + ",\n")
  349.             f.close()
  350.         self.FilenameDialog.Close()
  351.         self.FilenameDialog = None
  352.         self.namelinemodule()
  353.        
  354.     def ReplaceExtraction(self, ReplaceExisting, ReplaceText):
  355.         file = open("exlist.txt", "r+")
  356.         file_lines = file.read()
  357.         NewFiles = str(file_lines).replace(str(ReplaceExisting), str(ReplaceText))
  358.         file.close()
  359.         f = open("exlist.txt", "w+")
  360.         f.write(NewFiles)
  361.         f.close()  
  362.    
  363.     def namelinemodule(self):
  364.         if not os.path.exists("exlist.txt"):
  365.             create_exlist = open("exlist.txt", "w")
  366.             create_exlist.write("game.py,\n")
  367.             create_exlist.close()
  368.         self.fileListBox.RemoveAllItems()
  369.         file = open("exlist.txt", "r+")
  370.         file_lines = file.read()
  371.         Test = str(file_lines).replace("\n", "")
  372.         Scripts = str(Test).split(",")
  373.         for Testies in xrange(int(str(file_lines).count(","))):
  374.             self.fileListBox.AppendItem(ExtractList(Scripts[Testies]))
  375.            
  376.     def OnClickExtract(self):
  377.         global Error
  378.         global Errortype
  379.         Error = ""
  380.         Errortype = "none"
  381.         file = open("exlist.txt", "r+")
  382.         FileToExtract = file.read()
  383.        
  384.         FilesCount = str(FileToExtract).count("\n")
  385.         if str(FileToExtract).find(",") != -1:
  386.             FileToExtract = str(FileToExtract).replace(",", "")
  387.         FileToExtractSplit = str(FileToExtract).split("\n")
  388.         for i in xrange(0, int(FilesCount)):
  389.             if str(Error) == "":
  390.                 ActualScript = FileToExtractSplit[i]
  391.                 self.ExtractScript(str(ActualScript))
  392.             else:
  393.                 break
  394.         if str(Errortype) == "exist":
  395.             self.LogTextLine1.SetText("Die Datei:")
  396.             self.LogTextLine2.SetText(str(Error))
  397.             self.LogTextLine3.SetText("existiert nicht!")
  398.         elif str(Errortype) == "read":
  399.             self.LogTextLine1.SetText("Die Datei: ")
  400.             self.LogTextLine2.SetText(str(Error))
  401.             self.LogTextLine3.SetText("konnte nicht ausgelesen werden!")
  402.         elif str(Errortype) == "none":
  403.             self.LogTextLine1.SetText("Die Dateien wurden erfolgreich ausgelesen!")
  404.             self.LogTextLine2.SetText("")
  405.             self.LogTextLine3.SetText("")
  406.         elif str(Errortype) == "ending":
  407.             self.LogTextLine1.SetText("Die Datei:")
  408.             self.LogTextLine2.SetText(str(Error))
  409.             self.LogTextLine3.SetText("hat keine Dateiendung!")        
  410.  
  411.     def ExtractScript(self, script):
  412.         global Error
  413.         global Errortype
  414.         Error = ""
  415.         Errortype = "none"
  416.         add = ""
  417.         if str(script).find("d:/") != -1:
  418.             script = str(script).replace("d:/", "")
  419.             add = "d:/"
  420.         if pack.Exist(add + script):
  421.             if not os.path.exists("source/" + script):
  422.                 os.makedirs("source/" + script)
  423.             if os.path.exists("source/" + script):
  424.                 if os.path.isfile("source/" + script):
  425.                     os.remove("source/" + script)
  426.                 else:
  427.                     os.rmdir("source/" + script)
  428.             if self.IsBinary(script) == 0:
  429.                 lines = pack_open(add + script, "r").readlines()
  430.                 f = open("source/" + script, "a+")     
  431.                 for line in lines:
  432.                     tokens = line
  433.                     f.write(str(tokens))       
  434.                 f.close()
  435.             else:
  436. #               Binary = pack.Get(script)
  437.                 Binary = pack_open(add + script, 'rb')
  438.                 Bytes = Binary.read()
  439.                 if len(Bytes) == 0:
  440.                     if Errortype != "ending":
  441.                         Error = str(add + script)
  442.                         Errortype = "read"
  443.                     return
  444.                 else:
  445.                     f = open("source/" + script, "wb")     
  446.                     f.write(str(Bytes))    
  447.                     f.close()
  448.         else:
  449.             Error = str(add + script)
  450.             Errortype = "exist"
  451.             return
  452.  
  453.     def IsBinary(self, script):
  454.         global Error
  455.         global Errortype
  456.         if str(script).count(".") == 0:
  457.             Error = str(script)
  458.             Errortype = "ending"
  459.             script = script + ".binary"
  460.         Split = script.split(".")
  461.         end = str(Split[1])
  462.         end = end.lower()
  463.        
  464.         if end == ".py":
  465.             return 0
  466.         else:
  467.             return 1
  468.            
  469.     def Show(self):
  470.         ui.ThinBoard.Show(self)
  471.        
  472.     def Close(self):
  473.         global Dialog
  474.         if Dialog >= 1:
  475.             self.FilenameDialog.Close()
  476.         self.Hide()
  477.         return TRUE
  478.        
  479.     def OnPressEscapeKey(self):
  480.         global Dialog
  481.         if int(Dialog) >= 1:
  482.             self.FilenameDialog.Close()
  483.         self.Hide()
  484.         return TRUE
  485.  
  486. class ReplaceDialog(ui.ScriptWindow):
  487.  
  488.     def __init__(self):
  489.         ui.ScriptWindow.__init__(self)
  490.  
  491.         self.__CreateDialog()
  492.  
  493.     def __del__(self):
  494.         ui.ScriptWindow.__del__(self)
  495.  
  496.     def __CreateDialog(self):
  497.         self.Board = ui.BoardWithTitleBar()
  498.         self.Board.SetSize(293, 180)
  499.         self.Board.SetPosition(wndMgr.GetScreenWidth() / 2 - 293, wndMgr.GetScreenHeight() / 2 - 180)
  500.         self.Board.AddFlag("movable")
  501.         self.Board.SetTitleName("Replace Files")
  502.         self.Board.Show()
  503.        
  504.         self.ReplaceExisting = ui.TextLine()
  505.         self.ReplaceExisting.SetParent(self.Board)
  506.         self.ReplaceExisting.SetDefaultFontName()
  507.         self.ReplaceExisting.SetPosition(20, 40)
  508.         self.ReplaceExisting.SetFeather()
  509.         self.ReplaceExisting.SetText("Existing Text:")
  510.         self.ReplaceExisting.SetFontColor(0.6, 0.7, 1)
  511.         self.ReplaceExisting.SetOutline()
  512.         self.ReplaceExisting.Show()
  513.    
  514.         self.ReplaceExistingSlotBar = ui.SlotBar()
  515.         self.ReplaceExistingSlotBar.SetParent(self.Board)
  516.         self.ReplaceExistingSlotBar.SetSize(250, 18)
  517.         self.ReplaceExistingSlotBar.SetPosition(0, 60)
  518.         self.ReplaceExistingSlotBar.SetWindowHorizontalAlignCenter()
  519.         self.ReplaceExistingSlotBar.Show()
  520.        
  521.         self.ReplaceExistingEditLine = ui.EditLine()
  522.         self.ReplaceExistingEditLine.SetParent(self.ReplaceExistingSlotBar)
  523.         self.ReplaceExistingEditLine.SetSize(250, 17)
  524.         self.ReplaceExistingEditLine.SetPosition(10, 2)
  525.         self.ReplaceExistingEditLine.SetMax(64)
  526.         self.ReplaceExistingEditLine.SetFocus()
  527.         self.ReplaceExistingEditLine.Show()
  528.        
  529.         self.ReplaceText = ui.TextLine()
  530.         self.ReplaceText.SetParent(self.Board)
  531.         self.ReplaceText.SetDefaultFontName()
  532.         self.ReplaceText.SetPosition(20, 85)
  533.         self.ReplaceText.SetFeather()
  534.         self.ReplaceText.SetText("New Text:")
  535.         self.ReplaceText.SetFontColor(0.6, 0.7, 1)
  536.         self.ReplaceText.SetOutline()
  537.         self.ReplaceText.Show()
  538.    
  539.         self.ReplaceSlotBar = ui.SlotBar()
  540.         self.ReplaceSlotBar.SetParent(self.Board)
  541.         self.ReplaceSlotBar.SetSize(250, 18)
  542.         self.ReplaceSlotBar.SetPosition(0, 105)
  543.         self.ReplaceSlotBar.SetWindowHorizontalAlignCenter()
  544.         self.ReplaceSlotBar.Show()
  545.        
  546.         self.ReplaceEditLine = ui.EditLine()
  547.         self.ReplaceEditLine.SetParent(self.ReplaceSlotBar)
  548.         self.ReplaceEditLine.SetSize(250, 17)
  549.         self.ReplaceEditLine.SetPosition(10, 2)
  550.         self.ReplaceEditLine.SetMax(64)
  551.         self.ReplaceEditLine.Show()
  552.  
  553.         self.ReplaceEditLine.SetTabEvent(ui.__mem_func__(self.ReplaceExistingEditLine.SetFocus))
  554.         self.ReplaceEditLine.SetReturnEvent(ui.__mem_func__(self.ReplaceExistingEditLine.SetFocus))
  555.         self.ReplaceExistingEditLine.SetTabEvent(ui.__mem_func__(self.ReplaceEditLine.SetFocus))
  556.         self.ReplaceExistingEditLine.SetReturnEvent(ui.__mem_func__(self.ReplaceEditLine.SetFocus))
  557.  
  558.         self.ClickReplaceButton = ui.Button()
  559.         self.ClickReplaceButton.SetParent(self.Board)
  560.         self.ClickReplaceButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  561.         self.ClickReplaceButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  562.         self.ClickReplaceButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  563.         self.ClickReplaceButton.SetText("Suchen & Ersetzen")
  564.         self.ClickReplaceButton.SetPosition(50, 137)
  565.         self.ClickReplaceButton.Show()
  566.  
  567.         self.ClickBreakButton = ui.Button()
  568.         self.ClickBreakButton.SetParent(self.Board)
  569.         self.ClickBreakButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  570.         self.ClickBreakButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  571.         self.ClickBreakButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  572.         self.ClickBreakButton.SetText("Abbrechen")
  573.         self.ClickBreakButton.SetPosition(150, 137)
  574.         self.ClickBreakButton.Show()
  575.  
  576.     def Open(self):
  577.         self.SetCenterPosition()
  578.         self.SetTop()
  579.         self.Show()
  580.  
  581.     def Close(self):
  582.         self.ClearDictionary()
  583.         self.Board = None
  584.         self.ClickReplaceButton = None
  585.         self.ClickBreakButton = None
  586.         self.ReplaceExistingSlotBar = None
  587.         self.ReplaceExistingEditLine = None
  588.         self.ReplaceSlotBar = None
  589.         self.ReplaceEditLine = None
  590.         self.Hide()
  591.  
  592.     def SetTitle(self, name):
  593.         self.Board.SetTitleName(name)
  594.  
  595.     def SetNumberMode(self):
  596.         self.ReplaceExistingEditLine.SetNumberMode()
  597.         self.ReplaceEditLine.SetNumberMode()
  598.  
  599.     def SetSecretMode(self):
  600.         self.ReplaceExistingEditLine.SetSecret()
  601.         self.ReplaceEditLine.SetSecret()
  602.  
  603.     def SetFocus(self):
  604.         self.ReplaceExistingEditLine.SetFocus()
  605.  
  606.     def SetMaxLength(self, length):
  607.         width = length * 6 + 10
  608.         self.ReplaceExistingEditLine.SetMax(length)
  609.         self.ReplaceEditLine.SetMax(length)
  610.         self.SetSlotWidth(width)
  611.         self.SetBoardWidth(max(width + 50, 160))
  612.  
  613.     def SetSlotWidth(self, width):
  614.         self.ReplaceExistingSlotBar.SetSize(width, self.ReplaceExistingSlotBar.GetHeight())
  615.         self.ReplaceSlotBar.SetSize(width, self.ReplaceSlotBar.GetHeight())
  616.         self.ReplaceExistingEditLine.SetSize(width, self.ReplaceExistingEditLine.GetHeight())
  617.         self.ReplaceEditLine.SetSize(width, self.ReplaceEditLine.GetHeight())
  618.  
  619.     def SetBoardWidth(self, width):
  620.         self.Board.SetSize(max(width + 50, 160), self.GetHeight())
  621.         self.SetSize(max(width + 50, 160), self.GetHeight())
  622.         self.UpdateRect()
  623.  
  624.     def SetAcceptEvent(self, event):
  625.         self.ClickReplaceButton.SetEvent(event)
  626.         self.ReplaceExistingEditLine.OnIMEReturn = event
  627.         self.ReplaceEditLine.OnIMEReturn = event
  628.  
  629.     def SetCancelEvent(self, event):
  630.         self.Board.SetCloseEvent(event)
  631.         self.ClickBreakButton.SetEvent(event)
  632.         self.ReplaceExistingEditLine.OnPressEscapeKey = event
  633.         self.ReplaceEditLine.OnPressEscapeKey = event
  634.  
  635.     def GetText(self):
  636.         return self.ReplaceExistingEditLine.GetText() + "%&/" + self.ReplaceEditLine.GetText()
  637.  
  638. class XMLUnPackDialog(ui.ScriptWindow):
  639.  
  640.     def __init__(self):
  641.         ui.ScriptWindow.__init__(self)
  642.  
  643.         self.__CreateDialog()
  644.  
  645.     def __del__(self):
  646.         ui.ScriptWindow.__del__(self)
  647.  
  648.     def __CreateDialog(self):
  649.         self.Board = ui.BoardWithTitleBar()
  650.         self.Board.SetSize(293, 120)
  651.         self.Board.SetPosition(wndMgr.GetScreenWidth() / 2 - 293, wndMgr.GetScreenHeight() / 2 - 120)
  652.         self.Board.AddFlag("movable")
  653.         self.Board.AddFlag("float")
  654.         self.Board.SetTitleName("Add Xml Files")
  655.         self.Board.Show()
  656.        
  657.         self.XmlFileNameText = ui.TextLine()
  658.         self.XmlFileNameText.SetParent(self.Board)
  659.         self.XmlFileNameText.SetDefaultFontName()
  660.         self.XmlFileNameText.SetPosition(20, 40)
  661.         self.XmlFileNameText.SetFeather()
  662.         self.XmlFileNameText.SetText("Xml Filename:")
  663.         self.XmlFileNameText.SetFontColor(0.6, 0.7, 1)
  664.         self.XmlFileNameText.SetOutline()
  665.         self.XmlFileNameText.Show()
  666.    
  667.         self.XmlFileSlotBar = ui.SlotBar()
  668.         self.XmlFileSlotBar.SetParent(self.Board)
  669.         self.XmlFileSlotBar.SetSize(250, 18)
  670.         self.XmlFileSlotBar.SetPosition(0, 60)
  671.         self.XmlFileSlotBar.SetWindowHorizontalAlignCenter()
  672.         self.XmlFileSlotBar.Show()
  673.        
  674.         self.XmlFileEditLine = ui.EditLine()
  675.         self.XmlFileEditLine.SetParent(self.XmlFileSlotBar)
  676.         self.XmlFileEditLine.SetSize(250, 17)
  677.         self.XmlFileEditLine.SetPosition(10, 2)
  678.         self.XmlFileEditLine.SetMax(64)
  679.         self.XmlFileEditLine.SetFocus()
  680.         self.XmlFileEditLine.Show()
  681.  
  682.         self.AddXMLButton = ui.Button()
  683.         self.AddXMLButton.SetParent(self.Board)
  684.         self.AddXMLButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  685.         self.AddXMLButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  686.         self.AddXMLButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  687.         self.AddXMLButton.SetText("Add Xml")
  688.         self.AddXMLButton.SetPosition(50, 87)
  689.         self.AddXMLButton.Show()
  690.  
  691.         self.ClickBreakButton = ui.Button()
  692.         self.ClickBreakButton.SetParent(self.Board)
  693.         self.ClickBreakButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  694.         self.ClickBreakButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  695.         self.ClickBreakButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  696.         self.ClickBreakButton.SetText("Abbrechen")
  697.         self.ClickBreakButton.SetPosition(150, 87)
  698.         self.ClickBreakButton.Show()
  699.  
  700.     def Open(self):
  701.         self.SetCenterPosition()
  702.         self.SetTop()
  703.         self.Show()
  704.  
  705.     def Close(self):
  706.         self.ClearDictionary()
  707.         self.Board = None
  708.         self.AddXMLButton = None
  709.         self.ClickBreakButton = None
  710.         self.XmlFileSlotBar = None
  711.         self.XmlFileEditLine = None
  712.         self.Hide()
  713.  
  714.     def SetTitle(self, name):
  715.         self.Board.SetTitleName(name)
  716.  
  717.     def SetNumberMode(self):
  718.         self.XmlFileEditLine.SetNumberMode()
  719.  
  720.     def SetSecretMode(self):
  721.         self.XmlFileEditLine.SetSecret()
  722.  
  723.     def SetFocus(self):
  724.         self.XmlFileEditLine.SetFocus()
  725.  
  726.     def SetMaxLength(self, length):
  727.         width = length * 6 + 10
  728.         self.XmlFileEditLine.SetMax(length)
  729.         self.SetSlotWidth(width)
  730.         self.SetBoardWidth(max(width + 50, 160))
  731.  
  732.     def SetSlotWidth(self, width):
  733.         self.XmlFileSlotBar.SetSize(width, self.XmlFileSlotBar.GetHeight())
  734.         self.XmlFileEditLine.SetSize(width, self.XmlFileEditLine.GetHeight())
  735.  
  736.     def SetBoardWidth(self, width):
  737.         self.Board.SetSize(max(width + 50, 160), self.GetHeight())
  738.         self.SetSize(max(width + 50, 160), self.GetHeight())
  739.         self.UpdateRect()
  740.  
  741.     def SetAcceptEvent(self, event):
  742.         self.AddXMLButton.SetEvent(event)
  743.         self.XmlFileEditLine.OnIMEReturn = event
  744.  
  745.     def SetCancelEvent(self, event):
  746.         self.Board.SetCloseEvent(event)
  747.         self.ClickBreakButton.SetEvent(event)
  748.         self.XmlFileEditLine.OnPressEscapeKey = event
  749.  
  750.     def GetText(self):
  751.         return self.XmlFileEditLine.GetText()
  752.        
  753. CHAT_TYPE = ""
  754. Count = 0
  755. ChatColour = ""
  756. Delay = 0
  757. Amount = 0
  758. Activity = "Pause"
  759.  
  760. class ChatSpammerDialog(ui.ThinBoard):
  761.     CHAT_MODE_NAME = ( locale.CHAT_NORMAL, locale.CHAT_PARTY, locale.CHAT_GUILD, locale.CHAT_SHOUT, "Random", )
  762.     CHAT_MODE_INDEX = ( chat.CHAT_TYPE_TALKING,
  763.                         chat.CHAT_TYPE_PARTY,
  764.                         chat.CHAT_TYPE_GUILD,
  765.                         chat.CHAT_TYPE_SHOUT,
  766.                         "Random", )
  767.     COLOUR_MODE_NAME = ( "Normal", "Blue", "Green", "Red", "Pink", "Random", )
  768.     COLOUR_MODE_INDEX = ( "|h|r",
  769.                         "|cFF0080FF|H|h",
  770.                         "|cFF00FF00|H|h",
  771.                         "|cFFFF0000|H|h",
  772.                         "|cFFFF00FF|H|h",
  773.                         "Random", )
  774.     ERROR_MESSAGE_INDEX = ( "Spambot ist bereits aktiv.",
  775.                         "Bitte gebe einen Chattype an.",
  776.                         "Bitte gebe eine Chatcolour an.",
  777.                         "Bitte gebe einen Chattext ein.",
  778.                         "Bitte gebe eine Delay ein.",
  779.                         "Bitte gebe einen Count ein.",
  780.                         "Bitte gebe eine Delay > 15 ein.", )
  781.  
  782.    
  783.     def __init__(self):
  784.         ui.ThinBoard.__init__(self)
  785.         self.__Load_ChatSpammerDialog()
  786.        
  787.     def __del__(self):
  788.         ui.ThinBoard.__del__(self)
  789.  
  790.     def Destroy(self):
  791.         self.Hide()
  792.         return TRUE
  793.        
  794.     def __Load_ChatSpammerDialog(self):
  795.         self.SetPosition(5, 350)
  796.         self.SetSize(390, 430)
  797.         self.Show()
  798.         self.AddFlag("movable")
  799.         snd.PlaySound("sound/ui/type.wav")
  800.        
  801.         self.LoadTextLines()
  802.         self.LoadButtons()
  803.         self.LoadEditLines()
  804.        
  805.         self.ChatSpamEditLine.SetFocus()       
  806.    
  807.     def LoadEditLines(self):
  808.     #Enter Configurations:
  809.         #SpamDelay Text-Field:
  810.         self.DelayChatSpamSlotBar = ui.SlotBar()
  811.         self.DelayChatSpamSlotBar.SetParent(self)
  812.         self.DelayChatSpamSlotBar.SetSize(60, 18)
  813.         self.DelayChatSpamSlotBar.SetPosition(-17, 230)
  814.         self.DelayChatSpamSlotBar.SetWindowHorizontalAlignCenter()
  815.         self.DelayChatSpamSlotBar.Show()
  816.        
  817.         self.DelayChatSpamEditLine = ui.EditLine()
  818.         self.DelayChatSpamEditLine.SetParent(self.DelayChatSpamSlotBar)
  819.         self.DelayChatSpamEditLine.SetSize(60, 17)
  820.         self.DelayChatSpamEditLine.SetPosition(10, 2)
  821.         self.DelayChatSpamEditLine.SetMax(3)
  822.         self.DelayChatSpamEditLine.SetNumberMode()
  823.         self.DelayChatSpamEditLine.SetFocus()
  824.         self.DelayChatSpamEditLine.SetText("0")
  825.         self.DelayChatSpamEditLine.SetTabEvent(ui.__mem_func__(self.StartSpamBot))
  826.         self.DelayChatSpamEditLine.SetReturnEvent(ui.__mem_func__(self.StartSpamBot))
  827.         self.DelayChatSpamEditLine.Show()
  828.  
  829.         #SpamCount Text-Field:
  830.         self.CountChatSpamSlotBar = ui.SlotBar()
  831.         self.CountChatSpamSlotBar.SetParent(self)
  832.         self.CountChatSpamSlotBar.SetSize(60, 18)
  833.         self.CountChatSpamSlotBar.SetPosition(-117, 230)
  834.         self.CountChatSpamSlotBar.SetWindowHorizontalAlignCenter()
  835.         self.CountChatSpamSlotBar.Show()
  836.        
  837.         self.CountChatSpamEditLine = ui.EditLine()
  838.         self.CountChatSpamEditLine.SetParent(self.CountChatSpamSlotBar)
  839.         self.CountChatSpamEditLine.SetSize(60, 17)
  840.         self.CountChatSpamEditLine.SetPosition(10, 2)
  841.         self.CountChatSpamEditLine.SetMax(5)
  842.         self.CountChatSpamEditLine.SetNumberMode()
  843.         self.CountChatSpamEditLine.SetFocus()
  844.         self.CountChatSpamEditLine.SetText("0")
  845.         self.CountChatSpamEditLine.SetTabEvent(ui.__mem_func__(self.DelayChatSpamEditLine.SetFocus))
  846.         self.CountChatSpamEditLine.SetReturnEvent(ui.__mem_func__(self.DelayChatSpamEditLine.SetFocus))
  847.         self.CountChatSpamEditLine.Show()
  848.  
  849.     #Enter Text-Field:
  850.         self.ChatSpamSlotBar = ui.SlotBar()
  851.         self.ChatSpamSlotBar.SetParent(self)
  852.         self.ChatSpamSlotBar.SetSize(300, 18)
  853.         self.ChatSpamSlotBar.SetPosition(0, 60)
  854.         self.ChatSpamSlotBar.SetWindowHorizontalAlignCenter()
  855.         self.ChatSpamSlotBar.Show()
  856.        
  857.         self.ChatSpamEditLine = ui.EditLine()
  858.         self.ChatSpamEditLine.SetParent(self.ChatSpamSlotBar)
  859.         self.ChatSpamEditLine.SetSize(300, 17)
  860.         self.ChatSpamEditLine.SetPosition(10, 2)
  861.         self.ChatSpamEditLine.SetMax(64)
  862.         self.ChatSpamEditLine.SetFocus()
  863.         self.ChatSpamEditLine.SetTabEvent(ui.__mem_func__(self.CountChatSpamEditLine.SetFocus))
  864.         self.ChatSpamEditLine.SetReturnEvent(ui.__mem_func__(self.CountChatSpamEditLine.SetFocus))
  865.         self.ChatSpamEditLine.Show()
  866.        
  867.     def LoadButtons(self):
  868.         self.CloseButton = ui.Button()
  869.         self.CloseButton.SetParent(self)
  870.         self.CloseButton.SetPosition(353, 18)
  871.         self.CloseButton.SetUpVisual("d:/ymir work/ui/public/close_button_01.sub")
  872.         self.CloseButton.SetOverVisual("d:/ymir work/ui/public/close_button_02.sub")
  873.         self.CloseButton.SetDownVisual("d:/ymir work/ui/public/close_button_03.sub")
  874.         self.CloseButton.SetToolTipText(locale.UI_CLOSE, 0, - 23)
  875.         self.CloseButton.SetEvent(ui.__mem_func__(self.Close))
  876.         self.CloseButton.Show()
  877.  
  878.         self.ColourList = []
  879.         self.ChatTypeList = []
  880.  
  881.         x = 55
  882.         i = 0
  883.         for Chattype in self.CHAT_MODE_NAME:
  884.             ChattypeButton = ui.Button()
  885.             ChattypeButton.SetParent(self)
  886.             ChattypeButton.SetPosition(x, 110)
  887.             ChattypeButton.SetUpVisual("d:/ymir work/ui/public/small_button_01.sub")
  888.             ChattypeButton.SetOverVisual("d:/ymir work/ui/public/small_button_02.sub")
  889.             ChattypeButton.SetDownVisual("d:/ymir work/ui/public/small_button_03.sub")
  890.             ChattypeButton.SetText(Chattype)
  891.             ChattypeButton.Show()
  892.  
  893.             Type = self.CHAT_MODE_INDEX[i]
  894.             ChattypeButton.SetEvent(lambda arg = Type: self.UseChatType(arg))
  895.             ChattypeButton.SetEvent(lambda arg = Type: self.UseChatType(arg))
  896.             self.ChatTypeList.append(ChattypeButton)
  897.             x += 48
  898.             i += 1
  899.  
  900.         x = 55
  901.         i = 0
  902.         for Colour in self.COLOUR_MODE_NAME:
  903.             ColourButton = ui.Button()
  904.             ColourButton.SetParent(self)
  905.             ColourButton.SetPosition(x, 160)
  906.             ColourButton.SetUpVisual("d:/ymir work/ui/public/small_button_01.sub")
  907.             ColourButton.SetOverVisual("d:/ymir work/ui/public/small_button_02.sub")
  908.             ColourButton.SetDownVisual("d:/ymir work/ui/public/small_button_03.sub")
  909.             ColourButton.SetText(Colour)
  910.             ColourButton.Show()
  911.  
  912.             Type = self.COLOUR_MODE_INDEX[i]
  913.             ColourButton.SetEvent(lambda arg = Type: self.UseChatColour(arg))
  914.             ColourButton.SetEvent(lambda arg = Type: self.UseChatColour(arg))
  915.             self.ColourList.append(ColourButton)
  916.             x += 48
  917.             i += 1
  918.  
  919.         self.StartChatSpamButton = ui.Button()
  920.         self.StartChatSpamButton.SetParent(self)
  921.         self.StartChatSpamButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_01.sub")
  922.         self.StartChatSpamButton.SetOverVisual("d:/ymir work/ui/public/xlarge_button_02.sub")
  923.         self.StartChatSpamButton.SetDownVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
  924.         self.StartChatSpamButton.SetText("Start")
  925.         self.StartChatSpamButton.SetPosition(15, 380)
  926.         self.StartChatSpamButton.SetEvent(ui.__mem_func__(self.StartSpamBot))
  927.         self.StartChatSpamButton.Show()
  928.  
  929.         self.StopChatSpamButton = ui.Button()
  930.         self.StopChatSpamButton.SetParent(self)
  931.         self.StopChatSpamButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_01.sub")
  932.         self.StopChatSpamButton.SetOverVisual("d:/ymir work/ui/public/xlarge_button_02.sub")
  933.         self.StopChatSpamButton.SetDownVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
  934.         self.StopChatSpamButton.SetText("Stop")
  935.         self.StopChatSpamButton.SetPosition(195, 380)
  936.         self.StopChatSpamButton.SetEvent(ui.__mem_func__(self.StopSpamBot))
  937.         self.StopChatSpamButton.Show()
  938.        
  939.     def LoadTextLines(self):
  940.         self.ChatSpamTitle = ui.TextLine()
  941.         self.ChatSpamTitle.SetParent(self)
  942.         self.ChatSpamTitle.SetPosition(80, 10)
  943.         self.ChatSpamTitle.SetFeather()
  944.         self.ChatSpamTitle.SetFontName("STENCIL:32")
  945.         self.ChatSpamTitle.SetText("Chatspammer Mod")
  946.         self.ChatSpamTitle.SetFontColor(0.0, 0.7, 1)
  947.         self.ChatSpamTitle.SetOutline()
  948.         self.ChatSpamTitle.Show()  
  949.  
  950.         self.ChatSpamText = ui.TextLine()
  951.         self.ChatSpamText.SetParent(self)
  952.         self.ChatSpamText.SetDefaultFontName()
  953.         self.ChatSpamText.SetPosition(50, 45)
  954.         self.ChatSpamText.SetFeather()
  955.         self.ChatSpamText.SetText("Bitte geben sie hier ihren Text ein...")
  956.         self.ChatSpamText.SetFontColor(0.6, 0.7, 1)
  957.         self.ChatSpamText.SetOutline()
  958.         self.ChatSpamText.Show()   
  959.  
  960.         self.ChatTypeText = ui.TextLine()
  961.         self.ChatTypeText.SetParent(self)
  962.         self.ChatTypeText.SetDefaultFontName()
  963.         self.ChatTypeText.SetPosition(50, 90)
  964.         self.ChatTypeText.SetFeather()
  965.         self.ChatTypeText.SetText("Chattype:")
  966.         self.ChatTypeText.SetFontColor(0.6, 0.7, 1)
  967.         self.ChatTypeText.SetOutline()
  968.         self.ChatTypeText.Show()   
  969.  
  970.         self.ChatColourText = ui.TextLine()
  971.         self.ChatColourText.SetParent(self)
  972.         self.ChatColourText.SetDefaultFontName()
  973.         self.ChatColourText.SetPosition(50, 140)
  974.         self.ChatColourText.SetFeather()
  975.         self.ChatColourText.SetText("Chatcolour:")
  976.         self.ChatColourText.SetFontColor(0.6, 0.7, 1)
  977.         self.ChatColourText.SetOutline()
  978.         self.ChatColourText.Show()
  979.        
  980.         self.ConfigurationText = ui.TextLine()
  981.         self.ConfigurationText.SetParent(self)
  982.         self.ConfigurationText.SetFontName("Tahoma:14")
  983.         self.ConfigurationText.SetPosition(50, 190)
  984.         self.ConfigurationText.SetFeather()
  985.         self.ConfigurationText.SetText("Configuration")
  986.         self.ConfigurationText.SetFontColor(0.6, 0.7, 1)
  987.         self.ConfigurationText.SetOutline()
  988.         self.ConfigurationText.Show()  
  989.  
  990.         self.CountText = ui.TextLine()
  991.         self.CountText.SetParent(self)
  992.         self.CountText.SetDefaultFontName()
  993.         self.CountText.SetPosition(50, 210)
  994.         self.CountText.SetFeather()
  995.         self.CountText.SetText("Count:")
  996.         self.CountText.SetFontColor(0.6, 0.7, 1)
  997.         self.CountText.SetOutline()
  998.         self.CountText.Show()  
  999.  
  1000.         self.DelayText = ui.TextLine()
  1001.         self.DelayText.SetParent(self)
  1002.         self.DelayText.SetDefaultFontName()
  1003.         self.DelayText.SetPosition(150, 210)
  1004.         self.DelayText.SetFeather()
  1005.         self.DelayText.SetText("Delay:")
  1006.         self.DelayText.SetFontColor(0.6, 0.7, 1)
  1007.         self.DelayText.SetOutline()
  1008.         self.DelayText.Show()  
  1009.  
  1010.         self.ErrorText = ui.TextLine()
  1011.         self.ErrorText.SetParent(self)
  1012.         self.ErrorText.SetDefaultFontName()
  1013.         self.ErrorText.SetPosition(50, 260)
  1014.         self.ErrorText.SetFeather()
  1015.         self.ErrorText.SetText("Error Log:")
  1016.         self.ErrorText.SetFontColor(0.6, 0.7, 1)
  1017.         self.ErrorText.SetOutline()
  1018.         self.ErrorText.Show()  
  1019.  
  1020.         self.ErrorLog = ui.TextLine()
  1021.         self.ErrorLog.SetParent(self)
  1022.         self.ErrorLog.SetDefaultFontName()
  1023.         self.ErrorLog.SetPosition(50, 280)
  1024.         self.ErrorLog.SetFeather()
  1025.         self.ErrorLog.SetText("keiner")
  1026.         self.ErrorLog.SetFontColor(1.0, 1.0, 1.0)
  1027.         self.ErrorLog.SetOutline()
  1028.         self.ErrorLog.Show()   
  1029.  
  1030.         self.ErrorLogRight = ui.TextLine()
  1031.         self.ErrorLogRight.SetParent(self)
  1032.         self.ErrorLogRight.SetDefaultFontName()
  1033.         self.ErrorLogRight.SetPosition(230, 280)
  1034.         self.ErrorLogRight.SetFeather()
  1035.         self.ErrorLogRight.SetText("")
  1036.         self.ErrorLogRight.SetFontColor(1.0, 1.0, 1.0)
  1037.         self.ErrorLogRight.SetOutline()
  1038.         self.ErrorLogRight.Show()  
  1039.        
  1040.         self.ErrorLog2 = ui.TextLine()
  1041.         self.ErrorLog2.SetParent(self)
  1042.         self.ErrorLog2.SetDefaultFontName()
  1043.         self.ErrorLog2.SetPosition(50, 300)
  1044.         self.ErrorLog2.SetFeather()
  1045.         self.ErrorLog2.SetText("")
  1046.         self.ErrorLog2.SetFontColor(1.0, 1.0, 1.0)
  1047.         self.ErrorLog2.SetOutline()
  1048.         self.ErrorLog2.Show()  
  1049.        
  1050.         self.ErrorLog2Right = ui.TextLine()
  1051.         self.ErrorLog2Right.SetParent(self)
  1052.         self.ErrorLog2Right.SetDefaultFontName()
  1053.         self.ErrorLog2Right.SetPosition(230, 300)
  1054.         self.ErrorLog2Right.SetFeather()
  1055.         self.ErrorLog2Right.SetText("")
  1056.         self.ErrorLog2Right.SetFontColor(1.0, 1.0, 1.0)
  1057.         self.ErrorLog2Right.SetOutline()
  1058.         self.ErrorLog2Right.Show() 
  1059.        
  1060.         self.LastChangeText = ui.TextLine()
  1061.         self.LastChangeText.SetParent(self)
  1062.         self.LastChangeText.SetDefaultFontName()
  1063.         self.LastChangeText.SetPosition(50, 325)
  1064.         self.LastChangeText.SetFeather()
  1065.         self.LastChangeText.SetText("Change Log:")
  1066.         self.LastChangeText.SetFontColor(0.6, 0.7, 1)
  1067.         self.LastChangeText.SetOutline()
  1068.         self.LastChangeText.Show() 
  1069.  
  1070.         self.LastChange = ui.TextLine()
  1071.         self.LastChange.SetParent(self)
  1072.         self.LastChange.SetDefaultFontName()
  1073.         self.LastChange.SetPosition(50, 345)
  1074.         self.LastChange.SetFeather()
  1075.         self.LastChange.SetText("leer")
  1076.         self.LastChange.SetFontColor(1.0, 1.0, 1.0)
  1077.         self.LastChange.SetOutline()
  1078.         self.LastChange.Show() 
  1079.  
  1080.         self.CreatorText = ui.TextLine()
  1081.         self.CreatorText.SetParent(self)
  1082.         self.CreatorText.SetDefaultFontName()
  1083.         self.CreatorText.SetPosition(305, 410)
  1084.         self.CreatorText.SetFeather()
  1085.         self.CreatorText.SetText("by Waynetrain")
  1086.         self.CreatorText.SetFontColor(1.0, 0.5, 0.5)
  1087.         self.CreatorText.SetOutline()
  1088.         self.CreatorText.Show()
  1089.        
  1090.     def UseChatType(self, mode):
  1091.         global CHAT_TYPE
  1092.         if mode != "Random":
  1093.             CHAT_TYPE = mode
  1094.         else:
  1095.             Rnd = int(app.GetRandom(0,3))
  1096.             CHAT_TYPE = self.CHAT_MODE_INDEX[int(Rnd)]
  1097.         if int(CHAT_TYPE) == 3:
  1098.             ChatType = 1
  1099.         elif int(CHAT_TYPE) == 4:
  1100.             ChatType = 2
  1101.         elif int(CHAT_TYPE) == 6:
  1102.             ChatType = 3
  1103.         else:
  1104.             ChatType = int(CHAT_TYPE)
  1105.         self.LastChange.SetText("Chat Type: " + str(self.CHAT_MODE_NAME[int(ChatType)]))
  1106.  
  1107.     def UseChatColour(self, colour):
  1108.         global ChatColour
  1109.         ChatColour = str(colour)
  1110.         if ChatColour.find(str(self.COLOUR_MODE_INDEX[0])) != -1:
  1111.             ChatType = str(self.COLOUR_MODE_NAME[0])
  1112.         elif ChatColour.find(str(self.COLOUR_MODE_INDEX[1])) != -1:
  1113.             ChatType = str(self.COLOUR_MODE_NAME[1])
  1114.         elif ChatColour.find(str(self.COLOUR_MODE_INDEX[2])) != -1:
  1115.             ChatType = str(self.COLOUR_MODE_NAME[2])
  1116.         elif ChatColour.find(str(self.COLOUR_MODE_INDEX[3])) != -1:
  1117.             ChatType = str(self.COLOUR_MODE_NAME[3])
  1118.         elif ChatColour.find(str(self.COLOUR_MODE_INDEX[4])) != -1:
  1119.             ChatType = str(self.COLOUR_MODE_NAME[4])
  1120.         else:
  1121.             ChatType = ChatColour
  1122.         self.LastChange.SetText("Chat Colour: " + str(ChatType))
  1123.        
  1124.     def StopSpamBot(self):
  1125.         global Activity
  1126.         global Count
  1127.         Activity = "Pause"
  1128.         Count = 0
  1129.         self.LastChange.SetText("Chatspammer-Bot gestoppt")
  1130.  
  1131.     def StartSpamBot(self):
  1132.         global Count
  1133.         global CHAT_TYPE
  1134.         global ChatColour
  1135.         global Delay
  1136.         global Amount
  1137.         global Activity
  1138.         self.ErrorLog.SetText("keiner")
  1139.         self.ErrorLogRight.SetText("")
  1140.         self.ErrorLog2.SetText("")
  1141.         self.ErrorLog2Right.SetText("")
  1142.         State = "Allow"
  1143.         if int(Count) != 0:
  1144.             Message = str(self.ERROR_MESSAGE_INDEX[0])
  1145.             self.ErrorLog.SetText(str(Message))
  1146.         if CHAT_TYPE == "":
  1147.             Message = str(self.ERROR_MESSAGE_INDEX[1])
  1148.             if self.ErrorLog.GetText() != "keiner":
  1149.                 self.ErrorLog2.SetText(str(Message))
  1150.             else:
  1151.                 self.ErrorLog.SetText(str(Message))
  1152.         if ChatColour == "":
  1153.             Message = str(self.ERROR_MESSAGE_INDEX[2])
  1154.             if self.ErrorLog.GetText() != "keiner":
  1155.                 if self.ErrorLog2.GetText() != "":
  1156.                     self.ErrorLogRight.SetText(str(Message))
  1157.                 else:
  1158.                     self.ErrorLog2.SetText(str(Message))
  1159.             else:
  1160.                 self.ErrorLog.SetText(str(Message))        
  1161.         if str(self.ChatSpamEditLine.GetText()) == "":
  1162.             Message = str(self.ERROR_MESSAGE_INDEX[3])
  1163.             if self.ErrorLog.GetText() != "keiner":
  1164.                 if self.ErrorLog2.GetText() != "":
  1165.                     if self.ErrorLogRight.GetText() != "":
  1166.                         self.ErrorLog2Right.SetText(str(Message))
  1167.                     else:
  1168.                         self.ErrorLogRight.SetText(str(Message))
  1169.                 else:
  1170.                     self.ErrorLog2.SetText(str(Message))
  1171.             else:
  1172.                 self.ErrorLog.SetText(str(Message))
  1173.         if CHAT_TYPE == 6 and int(self.DelayChatSpamEditLine.GetText()) < 15:
  1174.             Message = str(self.ERROR_MESSAGE_INDEX[6])
  1175.             State = "Banned"
  1176.             if self.ErrorLog.GetText() != "keiner":
  1177.                 if self.ErrorLog2.GetText() != "":
  1178.                     if self.ErrorLogRight.GetText() != "":
  1179.                         self.ErrorLog2Right.SetText(str(Message))
  1180.                     else:
  1181.                         self.ErrorLogRight.SetText(str(Message))
  1182.                 else:
  1183.                     self.ErrorLog2.SetText(str(Message))
  1184.             else:
  1185.                 self.ErrorLog.SetText(str(Message))
  1186.         if str(self.DelayChatSpamEditLine.GetText()) == "":
  1187.             if CHAT_TYPE != 6:
  1188.                 Message = str(self.ERROR_MESSAGE_INDEX[4])
  1189.                 if self.ErrorLog.GetText() != "keiner":
  1190.                     if self.ErrorLog2.GetText() != "":
  1191.                         if self.ErrorLogRight.GetText() != "":
  1192.                             self.ErrorLog2Right.SetText(str(Message))
  1193.                         else:
  1194.                             self.ErrorLogRight.SetText(str(Message))
  1195.                     else:
  1196.                         self.ErrorLog2.SetText(str(Message))
  1197.                 else:
  1198.                     self.ErrorLog.SetText(str(Message))
  1199.         if int(self.CountChatSpamEditLine.GetText()) <= 0 or str(self.CountChatSpamEditLine.GetText()) == "":
  1200.             Message = str(self.ERROR_MESSAGE_INDEX[5])
  1201.             if self.ErrorLog.GetText() != "keiner":
  1202.                 if self.ErrorLog2.GetText() != "":
  1203.                     if self.ErrorLogRight.GetText() != "":
  1204.                         self.ErrorLog2Right.SetText(str(Message))
  1205.                     else:
  1206.                         self.ErrorLogRight.SetText(str(Message))
  1207.                 else:
  1208.                     self.ErrorLog2.SetText(str(Message))
  1209.             else:
  1210.                 self.ErrorLog.SetText(str(Message))
  1211.         if CHAT_TYPE != "" and (int(self.CountChatSpamEditLine.GetText()) > 0 or str(self.CountChatSpamEditLine.GetText()) == "") and str(self.DelayChatSpamEditLine.GetText()) != "" and ChatColour != "" and int(Count) == 0 and State == "Allow":
  1212.             Delay = int(self.DelayChatSpamEditLine.GetText())
  1213.             Amount = int(self.CountChatSpamEditLine.GetText())
  1214.             self.LastChange.SetText("Chatspammer-Bot gestartet")
  1215.             Activity = "Spam"
  1216.             self.Spam()        
  1217.        
  1218.     def Spam(self):
  1219.         global ChatColour
  1220.         global CHAT_TYPE
  1221.         global Count
  1222.         global Delay
  1223.         global Amount
  1224.         global Activity
  1225.         if int(Amount) > int(Count):
  1226.             if ChatColour != "Random":
  1227.                 if Activity == "Spam":
  1228.                     net.SendChatPacket(str(ChatColour) + str(self.ChatSpamEditLine.GetText()), CHAT_TYPE)
  1229.                     self.LastChange.SetText("Chatspamcount: " + str(Count))
  1230.             elif ChatColour == "Random":
  1231.                 if Activity == "Spam":
  1232.                     net.SendChatPacket("|c"+ str(self.random_color()) +"|H|h " + str(self.ChatSpamEditLine.GetText()), CHAT_TYPE)
  1233.                     self.LastChange.SetText("Chatspamcount: " + str(Count))
  1234.             if Activity == "Spam":
  1235.                 Count += 1
  1236.                 self.WaitingDelay = WaitingDialog()
  1237.                 self.WaitingDelay.Open(float(Delay))
  1238.                 self.WaitingDelay.SAFE_SetTimeOverEvent(self.Spam)
  1239.         else:
  1240.             Count = 0
  1241.             self.LastChange.SetText("Chatspam-Bot sucessfull ended")
  1242.    
  1243.     def random_color(self):
  1244.         COLOR_RANGE = (50, 255)
  1245.        
  1246.         rgb = list()
  1247.         for c in range(0, 4):
  1248.             rgb.append(app.GetRandom(COLOR_RANGE[0], COLOR_RANGE[1]))
  1249.    
  1250.         return "".join([hex(c)[2:].upper() for c in rgb])
  1251.        
  1252.     def Show(self):
  1253.         ui.ThinBoard.Show(self)
  1254.        
  1255.     def Close(self):
  1256.         self.Hide()
  1257.         return TRUE
  1258.        
  1259.     def OnPressEscapeKey(self):
  1260.         self.Hide()
  1261.         return TRUE
  1262.  
  1263. WHISPER_TYPE = ""
  1264. WhisperCount = 0
  1265. WhisperColour = ""
  1266. WhisperDelay = 0
  1267. WhisperAmount = 0
  1268. WhisperActivity = ""
  1269. ScanStart = 0
  1270. ScanEnd = 0
  1271.  
  1272. class WhisperSpammerDialog(ui.ThinBoard):
  1273.     WHISPER_MODE = ( "All", "Player", )
  1274.     COLOUR_MODE_NAME = ( "Normal", "Blue", "Green", "Red", "Pink", "Random", )
  1275.     COLOUR_MODE_INDEX = ( "|h|r",
  1276.                         "|cFF0080FF|H|h",
  1277.                         "|cFF00FF00|H|h",
  1278.                         "|cFFFF0000|H|h",
  1279.                         "|cFFFF00FF|H|h",
  1280.                         "Random", )
  1281.     ERROR_MESSAGE_INDEX = ( "Spambot ist bereits aktiv.",
  1282.                         "Bitte gebe einen Whispertype an.",
  1283.                         "Bitte gebe eine Whispercolour an.",
  1284.                         "Bitte gebe einen Whispertext ein.",
  1285.                         "Bitte gebe eine Delay ein.",
  1286.                         "Bitte gebe einen Count ein.",
  1287.                         "Bitte gebe einen Namen an.", )
  1288.    
  1289.     def __init__(self):
  1290.         ui.ThinBoard.__init__(self)
  1291.         self.__Load_WhisperSpammerDialog()
  1292.        
  1293.     def __del__(self):
  1294.         ui.ThinBoard.__del__(self)
  1295.  
  1296.     def Destroy(self):
  1297.         self.Hide()
  1298.         return TRUE
  1299.        
  1300.     def __Load_WhisperSpammerDialog(self):
  1301.         self.SetPosition(5, 350)
  1302.         self.SetSize(390, 430)
  1303.         self.Show()
  1304.         self.AddFlag("movable")
  1305.         snd.PlaySound("sound/ui/type.wav")
  1306.        
  1307.         self.LoadTextLines()
  1308.         self.LoadButtons()
  1309.         self.LoadEditLines()
  1310.         self.SetVIDRange()
  1311.        
  1312.         self.WhisperSpamEditLine.SetFocus()
  1313.  
  1314.     def LoadEditLines(self):
  1315.     #Enter Configurations:
  1316.         #Playername Text-Field:
  1317.         self.PlayerWhisperSpamSlotBar = ui.SlotBar()
  1318.         self.PlayerWhisperSpamSlotBar.SetParent(self)
  1319.         self.PlayerWhisperSpamSlotBar.SetSize(80, 18)
  1320.         self.PlayerWhisperSpamSlotBar.SetPosition(83, 230)
  1321.         self.PlayerWhisperSpamSlotBar.SetWindowHorizontalAlignCenter()
  1322.         self.PlayerWhisperSpamSlotBar.Show()
  1323.        
  1324.         self.PlayerWhisperSpamEditLine = ui.EditLine()
  1325.         self.PlayerWhisperSpamEditLine.SetParent(self.PlayerWhisperSpamSlotBar)
  1326.         self.PlayerWhisperSpamEditLine.SetSize(80, 17)
  1327.         self.PlayerWhisperSpamEditLine.SetPosition(10, 2)
  1328.         self.PlayerWhisperSpamEditLine.SetMax(12)
  1329.         self.PlayerWhisperSpamEditLine.SetFocus()
  1330.         self.PlayerWhisperSpamEditLine.SetText("")
  1331.         self.PlayerWhisperSpamEditLine.SetTabEvent(ui.__mem_func__(self.StartSpamBot))
  1332.         self.PlayerWhisperSpamEditLine.SetReturnEvent(ui.__mem_func__(self.StartSpamBot))
  1333.         self.PlayerWhisperSpamEditLine.Show()
  1334.  
  1335.         #SpamDelay Text-Field:
  1336.         self.DelayWhisperSpamSlotBar = ui.SlotBar()
  1337.         self.DelayWhisperSpamSlotBar.SetParent(self)
  1338.         self.DelayWhisperSpamSlotBar.SetSize(60, 18)
  1339.         self.DelayWhisperSpamSlotBar.SetPosition(-17, 230)
  1340.         self.DelayWhisperSpamSlotBar.SetWindowHorizontalAlignCenter()
  1341.         self.DelayWhisperSpamSlotBar.Show()
  1342.        
  1343.         self.DelayWhisperSpamEditLine = ui.EditLine()
  1344.         self.DelayWhisperSpamEditLine.SetParent(self.DelayWhisperSpamSlotBar)
  1345.         self.DelayWhisperSpamEditLine.SetSize(60, 17)
  1346.         self.DelayWhisperSpamEditLine.SetPosition(10, 2)
  1347.         self.DelayWhisperSpamEditLine.SetMax(3)
  1348.         self.DelayWhisperSpamEditLine.SetNumberMode()
  1349.         self.DelayWhisperSpamEditLine.SetFocus()
  1350.         self.DelayWhisperSpamEditLine.SetText("0")
  1351.         self.DelayWhisperSpamEditLine.SetTabEvent(ui.__mem_func__(self.PlayerWhisperSpamEditLine.SetFocus))
  1352.         self.DelayWhisperSpamEditLine.SetReturnEvent(ui.__mem_func__(self.PlayerWhisperSpamEditLine.SetFocus))
  1353.         self.DelayWhisperSpamEditLine.Show()
  1354.  
  1355.         #SpamCount Text-Field:
  1356.         self.CountWhisperSpamSlotBar = ui.SlotBar()
  1357.         self.CountWhisperSpamSlotBar.SetParent(self)
  1358.         self.CountWhisperSpamSlotBar.SetSize(60, 18)
  1359.         self.CountWhisperSpamSlotBar.SetPosition(-117, 230)
  1360.         self.CountWhisperSpamSlotBar.SetWindowHorizontalAlignCenter()
  1361.         self.CountWhisperSpamSlotBar.Show()
  1362.        
  1363.         self.CountWhisperSpamEditLine = ui.EditLine()
  1364.         self.CountWhisperSpamEditLine.SetParent(self.CountWhisperSpamSlotBar)
  1365.         self.CountWhisperSpamEditLine.SetSize(60, 17)
  1366.         self.CountWhisperSpamEditLine.SetPosition(10, 2)
  1367.         self.CountWhisperSpamEditLine.SetMax(5)
  1368.         self.CountWhisperSpamEditLine.SetNumberMode()
  1369.         self.CountWhisperSpamEditLine.SetFocus()
  1370.         self.CountWhisperSpamEditLine.SetText("0")
  1371.         self.CountWhisperSpamEditLine.SetTabEvent(ui.__mem_func__(self.DelayWhisperSpamEditLine.SetFocus))
  1372.         self.CountWhisperSpamEditLine.SetReturnEvent(ui.__mem_func__(self.DelayWhisperSpamEditLine.SetFocus))
  1373.         self.CountWhisperSpamEditLine.Show()
  1374.  
  1375.     #Enter Text-Field:
  1376.         self.WhisperSpamSlotBar = ui.SlotBar()
  1377.         self.WhisperSpamSlotBar.SetParent(self)
  1378.         self.WhisperSpamSlotBar.SetSize(300, 18)
  1379.         self.WhisperSpamSlotBar.SetPosition(0, 60)
  1380.         self.WhisperSpamSlotBar.SetWindowHorizontalAlignCenter()
  1381.         self.WhisperSpamSlotBar.Show()
  1382.        
  1383.         self.WhisperSpamEditLine = ui.EditLine()
  1384.         self.WhisperSpamEditLine.SetParent(self.WhisperSpamSlotBar)
  1385.         self.WhisperSpamEditLine.SetSize(300, 17)
  1386.         self.WhisperSpamEditLine.SetPosition(10, 2)
  1387.         self.WhisperSpamEditLine.SetMax(64)
  1388.         self.WhisperSpamEditLine.SetFocus()
  1389.         self.WhisperSpamEditLine.SetTabEvent(ui.__mem_func__(self.CountWhisperSpamEditLine.SetFocus))
  1390.         self.WhisperSpamEditLine.SetReturnEvent(ui.__mem_func__(self.CountWhisperSpamEditLine.SetFocus))
  1391.         self.WhisperSpamEditLine.Show()
  1392.        
  1393.     def LoadButtons(self):
  1394.         self.CloseButton = ui.Button()
  1395.         self.CloseButton.SetParent(self)
  1396.         self.CloseButton.SetPosition(353, 18)
  1397.         self.CloseButton.SetUpVisual("d:/ymir work/ui/public/close_button_01.sub")
  1398.         self.CloseButton.SetOverVisual("d:/ymir work/ui/public/close_button_02.sub")
  1399.         self.CloseButton.SetDownVisual("d:/ymir work/ui/public/close_button_03.sub")
  1400.         self.CloseButton.SetToolTipText(locale.UI_CLOSE, 0, - 23)
  1401.         self.CloseButton.SetEvent(ui.__mem_func__(self.Close))
  1402.         self.CloseButton.Show()
  1403.        
  1404.         self.ColourList = []
  1405.         self.WhisperTypeList = []
  1406.  
  1407.         x = 55
  1408.         i = 0
  1409.         for Whispertype in self.WHISPER_MODE:
  1410.             WhispertypeButton = ui.Button()
  1411.             WhispertypeButton.SetParent(self)
  1412.             WhispertypeButton.SetPosition(x, 110)
  1413.             WhispertypeButton.SetUpVisual("d:/ymir work/ui/public/small_button_01.sub")
  1414.             WhispertypeButton.SetOverVisual("d:/ymir work/ui/public/small_button_02.sub")
  1415.             WhispertypeButton.SetDownVisual("d:/ymir work/ui/public/small_button_03.sub")
  1416.             WhispertypeButton.SetText(Whispertype)
  1417.             WhispertypeButton.Show()
  1418.  
  1419.             Type = self.WHISPER_MODE[i]
  1420.             WhispertypeButton.SetEvent(lambda arg = Type: self.UseWhisperType(arg))
  1421.             WhispertypeButton.SetEvent(lambda arg = Type: self.UseWhisperType(arg))
  1422.             self.WhisperTypeList.append(WhispertypeButton)
  1423.             x += 48
  1424.             i += 1
  1425.  
  1426.         x = 55
  1427.         i = 0
  1428.         for Colour in self.COLOUR_MODE_NAME:
  1429.             ColourButton = ui.Button()
  1430.             ColourButton.SetParent(self)
  1431.             ColourButton.SetPosition(x, 160)
  1432.             ColourButton.SetUpVisual("d:/ymir work/ui/public/small_Button_01.sub")
  1433.             ColourButton.SetOverVisual("d:/ymir work/ui/public/small_button_02.sub")
  1434.             ColourButton.SetDownVisual("d:/ymir work/ui/public/small_button_03.sub")
  1435.             ColourButton.SetText(Colour)
  1436.             ColourButton.Show()
  1437.  
  1438.             Type = self.COLOUR_MODE_INDEX[i]
  1439.             ColourButton.SetEvent(lambda arg = Type: self.UseWhisperColour(arg))
  1440.             ColourButton.SetEvent(lambda arg = Type: self.UseWhisperColour(arg))
  1441.             self.ColourList.append(ColourButton)
  1442.             x += 48
  1443.             i += 1
  1444.  
  1445.         self.StartWhisperSpamButton = ui.Button()
  1446.         self.StartWhisperSpamButton.SetParent(self)
  1447.         self.StartWhisperSpamButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_01.sub")
  1448.         self.StartWhisperSpamButton.SetOverVisual("d:/ymir work/ui/public/xlarge_button_02.sub")
  1449.         self.StartWhisperSpamButton.SetDownVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
  1450.         self.StartWhisperSpamButton.SetText("Start")
  1451.         self.StartWhisperSpamButton.SetPosition(15, 380)
  1452.         self.StartWhisperSpamButton.SetEvent(ui.__mem_func__(self.StartSpamBot))
  1453.         self.StartWhisperSpamButton.Show()
  1454.  
  1455.         self.StopWhisperSpamButton = ui.Button()
  1456.         self.StopWhisperSpamButton.SetParent(self)
  1457.         self.StopWhisperSpamButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_01.sub")
  1458.         self.StopWhisperSpamButton.SetOverVisual("d:/ymir work/ui/public/xlarge_button_02.sub")
  1459.         self.StopWhisperSpamButton.SetDownVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
  1460.         self.StopWhisperSpamButton.SetText("Stop")
  1461.         self.StopWhisperSpamButton.SetPosition(195, 380)
  1462.         self.StopWhisperSpamButton.SetEvent(ui.__mem_func__(self.StopSpamBot))
  1463.         self.StopWhisperSpamButton.Show()
  1464.        
  1465.     def LoadTextLines(self):
  1466.         self.WhisperSpamTitle = ui.TextLine()
  1467.         self.WhisperSpamTitle.SetParent(self)
  1468.         self.WhisperSpamTitle.SetPosition(60, 10)
  1469.         self.WhisperSpamTitle.SetFeather()
  1470.         self.WhisperSpamTitle.SetFontName("STENCIL:32")
  1471.         self.WhisperSpamTitle.SetText("Whisperspammer Mod")
  1472.         self.WhisperSpamTitle.SetFontColor(0.0, 0.7, 1)
  1473.         self.WhisperSpamTitle.SetOutline()
  1474.         self.WhisperSpamTitle.Show()   
  1475.  
  1476.         self.WhisperSpamText = ui.TextLine()
  1477.         self.WhisperSpamText.SetParent(self)
  1478.         self.WhisperSpamText.SetDefaultFontName()
  1479.         self.WhisperSpamText.SetPosition(50, 45)
  1480.         self.WhisperSpamText.SetFeather()
  1481.         self.WhisperSpamText.SetText("Bitte geben sie hier ihren Text ein...")
  1482.         self.WhisperSpamText.SetFontColor(0.6, 0.7, 1)
  1483.         self.WhisperSpamText.SetOutline()
  1484.         self.WhisperSpamText.Show()
  1485.  
  1486.         self.WhisperTypeText = ui.TextLine()
  1487.         self.WhisperTypeText.SetParent(self)
  1488.         self.WhisperTypeText.SetDefaultFontName()
  1489.         self.WhisperTypeText.SetPosition(50, 90)
  1490.         self.WhisperTypeText.SetFeather()
  1491.         self.WhisperTypeText.SetText("Whispertype:")
  1492.         self.WhisperTypeText.SetFontColor(0.6, 0.7, 1)
  1493.         self.WhisperTypeText.SetOutline()
  1494.         self.WhisperTypeText.Show()
  1495.  
  1496.         self.WhisperColourText = ui.TextLine()
  1497.         self.WhisperColourText.SetParent(self)
  1498.         self.WhisperColourText.SetDefaultFontName()
  1499.         self.WhisperColourText.SetPosition(50, 140)
  1500.         self.WhisperColourText.SetFeather()
  1501.         self.WhisperColourText.SetText("Chatcolour:")
  1502.         self.WhisperColourText.SetFontColor(0.6, 0.7, 1)
  1503.         self.WhisperColourText.SetOutline()
  1504.         self.WhisperColourText.Show()
  1505.        
  1506.         self.ConfigurationText = ui.TextLine()
  1507.         self.ConfigurationText.SetParent(self)
  1508.         self.ConfigurationText.SetFontName("Tahoma:14")
  1509.         self.ConfigurationText.SetPosition(50, 190)
  1510.         self.ConfigurationText.SetFeather()
  1511.         self.ConfigurationText.SetText("Configuration")
  1512.         self.ConfigurationText.SetFontColor(0.6, 0.7, 1)
  1513.         self.ConfigurationText.SetOutline()
  1514.         self.ConfigurationText.Show()  
  1515.  
  1516.         self.CountText = ui.TextLine()
  1517.         self.CountText.SetParent(self)
  1518.         self.CountText.SetDefaultFontName()
  1519.         self.CountText.SetPosition(50, 210)
  1520.         self.CountText.SetFeather()
  1521.         self.CountText.SetText("Count:")
  1522.         self.CountText.SetFontColor(0.6, 0.7, 1)
  1523.         self.CountText.SetOutline()
  1524.         self.CountText.Show()  
  1525.  
  1526.         self.DelayText = ui.TextLine()
  1527.         self.DelayText.SetParent(self)
  1528.         self.DelayText.SetDefaultFontName()
  1529.         self.DelayText.SetPosition(150, 210)
  1530.         self.DelayText.SetFeather()
  1531.         self.DelayText.SetText("Delay:")
  1532.         self.DelayText.SetFontColor(0.6, 0.7, 1)
  1533.         self.DelayText.SetOutline()
  1534.         self.DelayText.Show()  
  1535.  
  1536.         self.PlayernameText = ui.TextLine()
  1537.         self.PlayernameText.SetParent(self)
  1538.         self.PlayernameText.SetDefaultFontName()
  1539.         self.PlayernameText.SetPosition(240, 210)
  1540.         self.PlayernameText.SetFeather()
  1541.         self.PlayernameText.SetText("Spielername:")
  1542.         self.PlayernameText.SetFontColor(0.6, 0.7, 1)
  1543.         self.PlayernameText.SetOutline()
  1544.         self.PlayernameText.Show() 
  1545.  
  1546.         self.ErrorText = ui.TextLine()
  1547.         self.ErrorText.SetParent(self)
  1548.         self.ErrorText.SetDefaultFontName()
  1549.         self.ErrorText.SetPosition(50, 260)
  1550.         self.ErrorText.SetFeather()
  1551.         self.ErrorText.SetText("Error Log:")
  1552.         self.ErrorText.SetFontColor(0.6, 0.7, 1)
  1553.         self.ErrorText.SetOutline()
  1554.         self.ErrorText.Show()  
  1555.  
  1556.         self.ErrorLog = ui.TextLine()
  1557.         self.ErrorLog.SetParent(self)
  1558.         self.ErrorLog.SetDefaultFontName()
  1559.         self.ErrorLog.SetPosition(50, 280)
  1560.         self.ErrorLog.SetFeather()
  1561.         self.ErrorLog.SetText("keiner")
  1562.         self.ErrorLog.SetFontColor(1.0, 1.0, 1.0)
  1563.         self.ErrorLog.SetOutline()
  1564.         self.ErrorLog.Show()   
  1565.  
  1566.         self.ErrorLogRight = ui.TextLine()
  1567.         self.ErrorLogRight.SetParent(self)
  1568.         self.ErrorLogRight.SetDefaultFontName()
  1569.         self.ErrorLogRight.SetPosition(230, 280)
  1570.         self.ErrorLogRight.SetFeather()
  1571.         self.ErrorLogRight.SetText("")
  1572.         self.ErrorLogRight.SetFontColor(1.0, 1.0, 1.0)
  1573.         self.ErrorLogRight.SetOutline()
  1574.         self.ErrorLogRight.Show()  
  1575.        
  1576.         self.ErrorLog2 = ui.TextLine()
  1577.         self.ErrorLog2.SetParent(self)
  1578.         self.ErrorLog2.SetDefaultFontName()
  1579.         self.ErrorLog2.SetPosition(50, 300)
  1580.         self.ErrorLog2.SetFeather()
  1581.         self.ErrorLog2.SetText("")
  1582.         self.ErrorLog2.SetFontColor(1.0, 1.0, 1.0)
  1583.         self.ErrorLog2.SetOutline()
  1584.         self.ErrorLog2.Show()  
  1585.        
  1586.         self.ErrorLog2Right = ui.TextLine()
  1587.         self.ErrorLog2Right.SetParent(self)
  1588.         self.ErrorLog2Right.SetDefaultFontName()
  1589.         self.ErrorLog2Right.SetPosition(230, 300)
  1590.         self.ErrorLog2Right.SetFeather()
  1591.         self.ErrorLog2Right.SetText("")
  1592.         self.ErrorLog2Right.SetFontColor(1.0, 1.0, 1.0)
  1593.         self.ErrorLog2Right.SetOutline()
  1594.         self.ErrorLog2Right.Show() 
  1595.        
  1596.         self.LastChangeText = ui.TextLine()
  1597.         self.LastChangeText.SetParent(self)
  1598.         self.LastChangeText.SetDefaultFontName()
  1599.         self.LastChangeText.SetPosition(50, 325)
  1600.         self.LastChangeText.SetFeather()
  1601.         self.LastChangeText.SetText("Change Log:")
  1602.         self.LastChangeText.SetFontColor(0.6, 0.7, 1)
  1603.         self.LastChangeText.SetOutline()
  1604.         self.LastChangeText.Show() 
  1605.  
  1606.         self.LastChange = ui.TextLine()
  1607.         self.LastChange.SetParent(self)
  1608.         self.LastChange.SetDefaultFontName()
  1609.         self.LastChange.SetPosition(50, 345)
  1610.         self.LastChange.SetFeather()
  1611.         self.LastChange.SetText("leer")
  1612.         self.LastChange.SetFontColor(1.0, 1.0, 1.0)
  1613.         self.LastChange.SetOutline()
  1614.         self.LastChange.Show() 
  1615.  
  1616.         self.CreatorText = ui.TextLine()
  1617.         self.CreatorText.SetParent(self)
  1618.         self.CreatorText.SetDefaultFontName()
  1619.         self.CreatorText.SetPosition(305, 405)
  1620.         self.CreatorText.SetFeather()
  1621.         self.CreatorText.SetText("by Waynetrain")
  1622.         self.CreatorText.SetFontColor(1.0, 0.5, 0.5)
  1623.         self.CreatorText.SetOutline()
  1624.         self.CreatorText.Show()
  1625.        
  1626.     def UseWhisperType(self, mode):
  1627.         global WHISPER_TYPE
  1628.         self.LastChange.SetText("Whisper Type: " + str(mode))
  1629.         WHISPER_TYPE = mode
  1630.  
  1631.     def UseWhisperColour(self, colour):
  1632.         global WhisperColour
  1633.         WhisperColour = str(colour)
  1634.         if WhisperColour.find(str(self.COLOUR_MODE_INDEX[0])) != -1:
  1635.             WhisperType = str(self.COLOUR_MODE_NAME[0])
  1636.         elif WhisperColour.find(str(self.COLOUR_MODE_INDEX[1])) != -1:
  1637.             WhisperType = str(self.COLOUR_MODE_NAME[1])
  1638.         elif WhisperColour.find(str(self.COLOUR_MODE_INDEX[2])) != -1:
  1639.             WhisperType = str(self.COLOUR_MODE_NAME[2])
  1640.         elif WhisperColour.find(str(self.COLOUR_MODE_INDEX[3])) != -1:
  1641.             WhisperType = str(self.COLOUR_MODE_NAME[3])
  1642.         elif WhisperColour.find(str(self.COLOUR_MODE_INDEX[4])) != -1:
  1643.             WhisperType = str(self.COLOUR_MODE_NAME[4])
  1644.         else:
  1645.             WhisperType = WhisperColour
  1646.         self.LastChange.SetText("Whisper Colour: " + str(WhisperType))
  1647.        
  1648.     def StopSpamBot(self):
  1649.         global WhisperActivity
  1650.         global WhisperCount
  1651.         WhisperActivity = "Pause"
  1652.         WhisperCount = 0
  1653.         self.LastChange.SetText("Whisperspammer-Bot gestoppt")
  1654.  
  1655.     def StartSpamBot(self):
  1656.         global WhisperCount
  1657.         global WHISPER_TYPE
  1658.         global WhisperColour
  1659.         global WhisperDelay
  1660.         global WhisperAmount
  1661.         global WhisperActivity
  1662.         self.SetVIDRange()
  1663.         self.ErrorLog.SetText("keiner")
  1664.         self.ErrorLogRight.SetText("")
  1665.         self.ErrorLog2.SetText("")
  1666.         self.ErrorLog2Right.SetText("")
  1667.         if int(WhisperCount) != 0:
  1668.             Message = str(self.ERROR_MESSAGE_INDEX[0])
  1669.             self.ErrorLog.SetText(str(Message))
  1670.         if WHISPER_TYPE == "":
  1671.             Message = str(self.ERROR_MESSAGE_INDEX[1])
  1672.             if self.ErrorLog.GetText() != "keiner":
  1673.                 self.ErrorLog2.SetText(str(Message))
  1674.             else:
  1675.                 self.ErrorLog.SetText(str(Message))
  1676.         elif WHISPER_TYPE == "Player" and str(self.PlayerWhisperSpamEditLine.GetText()) == "":
  1677.             Message = str(self.ERROR_MESSAGE_INDEX[6])
  1678.             if self.ErrorLog.GetText() != "keiner":
  1679.                 if self.ErrorLog2.GetText() != "":
  1680.                     self.ErrorLogRight.SetText(str(Message))
  1681.                 else:
  1682.                     self.ErrorLog2.SetText(str(Message))
  1683.             else:
  1684.                 self.ErrorLog.SetText(str(Message))        
  1685.         if WhisperColour == "":
  1686.             Message = str(self.ERROR_MESSAGE_INDEX[2])
  1687.             if self.ErrorLog.GetText() != "keiner":
  1688.                 if self.ErrorLog2.GetText() != "":
  1689.                     self.ErrorLogRight.SetText(str(Message))
  1690.                 else:
  1691.                     self.ErrorLog2.SetText(str(Message))
  1692.             else:
  1693.                 self.ErrorLog.SetText(str(Message))        
  1694.         if str(self.WhisperSpamEditLine.GetText()) == "":
  1695.             Message = str(self.ERROR_MESSAGE_INDEX[3])
  1696.             if self.ErrorLog.GetText() != "keiner":
  1697.                 if self.ErrorLog2.GetText() != "":
  1698.                     if self.ErrorLogRight.GetText() != "":
  1699.                         self.ErrorLog2Right.SetText(str(Message))
  1700.                     else:
  1701.                         self.ErrorLogRight.SetText(str(Message))
  1702.                 else:
  1703.                     self.ErrorLog2.SetText(str(Message))
  1704.             else:
  1705.                 self.ErrorLog.SetText(str(Message))
  1706.         if str(self.DelayWhisperSpamEditLine.GetText()) == "":
  1707.             if WHISPER_TYPE != 6:
  1708.                 Message = str(self.ERROR_MESSAGE_INDEX[4])
  1709.                 if self.ErrorLog.GetText() != "keiner":
  1710.                     if self.ErrorLog2.GetText() != "":
  1711.                         if self.ErrorLogRight.GetText() != "":
  1712.                             self.ErrorLog2Right.SetText(str(Message))
  1713.                         else:
  1714.                             self.ErrorLogRight.SetText(str(Message))
  1715.                     else:
  1716.                         self.ErrorLog2.SetText(str(Message))
  1717.                 else:
  1718.                     self.ErrorLog.SetText(str(Message))
  1719.         if int(self.CountWhisperSpamEditLine.GetText()) <= 0 or str(self.CountWhisperSpamEditLine.GetText()) == "":
  1720.             Message = str(self.ERROR_MESSAGE_INDEX[5])
  1721.             if self.ErrorLog.GetText() != "keiner":
  1722.                 if self.ErrorLog2.GetText() != "":
  1723.                     if self.ErrorLogRight.GetText() != "":
  1724.                         self.ErrorLog2Right.SetText(str(Message))
  1725.                     else:
  1726.                         self.ErrorLogRight.SetText(str(Message))
  1727.                 else:
  1728.                     self.ErrorLog2.SetText(str(Message))
  1729.             else:
  1730.                 self.ErrorLog.SetText(str(Message))
  1731.         if WHISPER_TYPE != "" and (int(self.CountWhisperSpamEditLine.GetText()) > 0 or str(self.CountWhisperSpamEditLine.GetText()) == "") and str(self.DelayWhisperSpamEditLine.GetText()) != "" and WhisperColour != "" and int(WhisperCount) == 0:
  1732.             WhisperDelay = int(self.DelayWhisperSpamEditLine.GetText())
  1733.             WhisperAmount = int(self.CountWhisperSpamEditLine.GetText())
  1734.             self.LastChange.SetText("Whisperspammer-Bot gestartet")
  1735.             WhisperActivity = "Spam"
  1736.             self.WhisperSpam()
  1737.        
  1738.     def WhisperSpam(self):
  1739.         global WhisperColour
  1740.         global WHISPER_TYPE
  1741.         global WhisperCount
  1742.         global WhisperDelay
  1743.         global WhisperAmount
  1744.         global WhisperActivity
  1745.         global ScanStart
  1746.         global ScanEnd
  1747.         if int(WhisperAmount) > int(WhisperCount):
  1748.             if WhisperColour != "Random":
  1749.                 if WhisperActivity == "Spam":
  1750.                     if str(WHISPER_TYPE) == "Player":
  1751.                         net.SendWhisperPacket(str(self.PlayerWhisperSpamEditLine.GetText()), str(WhisperColour) + str(self.WhisperSpamEditLine.GetText()))                         
  1752.                         self.LastChange.SetText("Whisperspamcount: " + str(WhisperCount))
  1753.                     elif str(WHISPER_TYPE) == "All":
  1754.                         for i in xrange(ScanStart, ScanEnd):
  1755.                             Player = chr.GetNameByVID(i)
  1756.                             Race = chr.GetInstanceType(i)
  1757.                             PlayerName = player.GetName()
  1758.                             if chr.INSTANCE_TYPE_PLAYER == Race and str(Player) != "None" and str(Player) != "" and str(Player) != str(PlayerName):
  1759.                                 net.SendWhisperPacket(str(Player), str(WhisperColour) + str(self.WhisperSpamEditLine.GetText()))                           
  1760.                                 self.LastChange.SetText("Whisperspamcount: " + str(WhisperCount))
  1761.             elif WhisperColour == "Random":
  1762.                 if WhisperActivity == "Spam":
  1763.                     if str(WHISPER_TYPE) == "Player":
  1764.                         net.SendWhisperPacket(str(self.PlayerWhisperSpamEditLine.GetText()), "|c"+ str(self.random_color()) +"|H|h " + str(self.WhisperSpamEditLine.GetText()))                        
  1765.                         self.LastChange.SetText("Whisperspamcount: " + str(WhisperCount))
  1766.                     elif str(WHISPER_TYPE) == "All":
  1767.                         for i in xrange(ScanStart, ScanEnd):
  1768.                             Player = chr.GetNameByVID(i)
  1769.                             Race = chr.GetInstanceType(i)
  1770.                             PlayerName = player.GetName()
  1771.                             if chr.INSTANCE_TYPE_PLAYER == Race and str(Player) != "None" and str(Player) != "" and str(Player) != str(PlayerName):
  1772.                                 net.SendWhisperPacket(str(Player), "|c"+ str(self.random_color()) +"|H|h " + str(self.WhisperSpamEditLine.GetText()))                          
  1773.                                 self.LastChange.SetText("Whisperspamcount: " + str(WhisperCount))
  1774.             if WhisperActivity == "Spam":
  1775.                 WhisperCount += 1
  1776.                 self.WaitingDelay = WaitingDialog()
  1777.                 self.WaitingDelay.Open(float(WhisperDelay))
  1778.                 self.WaitingDelay.SAFE_SetTimeOverEvent(self.WhisperSpam)
  1779.         else:
  1780.             WhisperCount = 0
  1781.             self.LastChange.SetText("Whisperspam-Bot sucessfull ended")
  1782.    
  1783.     def random_color(self):
  1784.         COLOR_RANGE = (50, 255)
  1785.        
  1786.         rgb = list()
  1787.         for c in range(0, 4):
  1788.             rgb.append(app.GetRandom(COLOR_RANGE[0], COLOR_RANGE[1]))
  1789.    
  1790.         return "".join([hex(c)[2:].upper() for c in rgb])
  1791.  
  1792.     def SetVIDRange(self):
  1793.         global ScanStart
  1794.         global ScanEnd
  1795.         for i in range(500, 3000000):
  1796.             Player = chr.GetNameByVID(i)
  1797.             Race = chr.GetInstanceType(i)
  1798.             if chr.INSTANCE_TYPE_PLAYER == Race and str(Player) != "None" and str(Player) != "":
  1799.                 ScanStart = int(i-500)
  1800.                 ScanEnd = int(i+50000)
  1801.                 break
  1802.        
  1803.     def Show(self):
  1804.         ui.ThinBoard.Show(self)
  1805.        
  1806.     def Close(self):
  1807.         self.Hide()
  1808.         return TRUE
  1809.        
  1810.     def OnPressEscapeKey(self):
  1811.         self.Hide()
  1812.         return TRUE
  1813.        
  1814. SCAN_START = 10000
  1815. SCAN_END = 5000000
  1816. mobVid = 0
  1817. AutoSkillUse1 = ""
  1818. AutoSkillUse2 = ""
  1819. AutoSkillUse2 = ""
  1820. AutoSkillUse3 = ""
  1821. AutoSkillUse4 = ""
  1822. AutoSkillUse5 = ""
  1823. AutoSkillUse6 = ""
  1824. AutoPottRed = ""
  1825. AutoPottBlue = ""
  1826. Levelbot = ""
  1827. AutoRevive = ""
  1828. x0 = ""
  1829. y0 = ""
  1830. z0 = ""
  1831. x1 = ""
  1832. y1 = ""
  1833. x2 = ""
  1834. y2 = ""
  1835. radius = ""
  1836. SetBase = ""
  1837. TapferkeitsUmhange = ""
  1838. LevelbotConfig = ""
  1839. TransferMobs = ""
  1840. AutoPickUp = ""
  1841. AttackSpeedHack = ""
  1842. MoveSpeedHack = ""
  1843. telestep = 0
  1844. teleport_mode = 0
  1845. last_teleport_time = 0
  1846. DoublePrevent = "inaktiv"
  1847. RestartBot = ""
  1848.  
  1849. class LevelBotDialog(ui.ThinBoard):
  1850.     def __init__(self):
  1851.         ui.ThinBoard.__init__(self)
  1852.         self.__Load_LevelBotDialog()
  1853.        
  1854.     def __del__(self):
  1855.         ui.ThinBoard.__del__(self)
  1856.  
  1857.     def Destroy(self):
  1858.         global SetBase
  1859.         SetBase = ""
  1860.         self.Hide()
  1861.         return TRUE
  1862.        
  1863.     def __Load_LevelBotDialog(self):
  1864.         self.SetPosition(5, 350)
  1865.         self.SetSize(390, 550)
  1866.         self.Show()
  1867.         self.AddFlag("movable")
  1868.         self.AddFlag("float")
  1869.        
  1870.         self.LoadTextLines()
  1871.         self.LoadButtons()
  1872.         self.LoadEditLines()
  1873.        
  1874.         self.CheckState()
  1875.  
  1876.     def LoadEditLines(self):
  1877.         self.AutoPottBlueButtonPercentSlotBar = ui.SlotBar()
  1878.         self.AutoPottBlueButtonPercentSlotBar.SetParent(self)
  1879.         self.AutoPottBlueButtonPercentSlotBar.SetSize(30, 18)
  1880.         self.AutoPottBlueButtonPercentSlotBar.SetPosition(0 - (30 + 37 + 40), 164 + 9 - 2)
  1881.         self.AutoPottBlueButtonPercentSlotBar.SetWindowHorizontalAlignCenter()
  1882.         self.AutoPottBlueButtonPercentSlotBar.Show()
  1883.        
  1884.         self.AutoPottBlueButtonPercentEditline = ui.EditLine()
  1885.         self.AutoPottBlueButtonPercentEditline.SetParent(self.AutoPottBlueButtonPercentSlotBar)
  1886.         self.AutoPottBlueButtonPercentEditline.SetSize(30, 17)
  1887.         self.AutoPottBlueButtonPercentEditline.SetPosition(10, 2)
  1888.         self.AutoPottBlueButtonPercentEditline.SetMax(2)
  1889.         self.AutoPottBlueButtonPercentEditline.SetNumberMode()
  1890.         self.AutoPottBlueButtonPercentEditline.SetFocus()
  1891.         self.AutoPottBlueButtonPercentEditline.SetText("0")
  1892.         #self.AutoPottBlueButtonPercentEditline.SetTabEvent(ui.__mem_func__(self.AutoPottRedButtonPercentEditline.SetFocus))
  1893.         #self.AutoPottBlueButtonPercentEditline.SetReturnEvent(ui.__mem_func__(self.AutoPottRedButtonPercentEditline.SetFocus))
  1894.         self.AutoPottBlueButtonPercentEditline.Show()
  1895.  
  1896.         self.AutoPottRedButtonPercentSlotBar = ui.SlotBar()
  1897.         self.AutoPottRedButtonPercentSlotBar.SetParent(self)
  1898.         self.AutoPottRedButtonPercentSlotBar.SetSize(30, 18)
  1899.         self.AutoPottRedButtonPercentSlotBar.SetPosition(0 - (30 + 37 + 40), 124 + 9 - 2)
  1900.         self.AutoPottRedButtonPercentSlotBar.SetWindowHorizontalAlignCenter()
  1901.         self.AutoPottRedButtonPercentSlotBar.Show()
  1902.        
  1903.         self.AutoPottRedButtonPercentEditline = ui.EditLine()
  1904.         self.AutoPottRedButtonPercentEditline.SetParent(self.AutoPottRedButtonPercentSlotBar)
  1905.         self.AutoPottRedButtonPercentEditline.SetSize(30, 17)
  1906.         self.AutoPottRedButtonPercentEditline.SetPosition(10, 2)
  1907.         self.AutoPottRedButtonPercentEditline.SetMax(2)
  1908.         self.AutoPottRedButtonPercentEditline.SetNumberMode()
  1909.         self.AutoPottRedButtonPercentEditline.SetFocus()
  1910.         self.AutoPottRedButtonPercentEditline.SetText("0")
  1911.         self.AutoPottRedButtonPercentEditline.SetTabEvent(ui.__mem_func__(self.AutoPottBlueButtonPercentEditline.SetFocus))
  1912.         self.AutoPottRedButtonPercentEditline.SetReturnEvent(ui.__mem_func__(self.AutoPottBlueButtonPercentEditline.SetFocus))
  1913.         self.AutoPottRedButtonPercentEditline.Show()
  1914.  
  1915.         self.MoveSpeedStatsSlotbar = ui.SlotBar()
  1916.         self.MoveSpeedStatsSlotbar.SetParent(self)
  1917.         self.MoveSpeedStatsSlotbar.SetSize(30, 18)
  1918.         self.MoveSpeedStatsSlotbar.SetPosition(30, 164 + 9 - 2)
  1919.         self.MoveSpeedStatsSlotbar.SetWindowHorizontalAlignCenter()
  1920.         self.MoveSpeedStatsSlotbar.Show()
  1921.        
  1922.         self.MoveSpeedStats = ui.EditLine()
  1923.         self.MoveSpeedStats.SetParent(self.MoveSpeedStatsSlotbar)
  1924.         self.MoveSpeedStats.SetSize(30, 17)
  1925.         self.MoveSpeedStats.SetPosition(10, 2)
  1926.         self.MoveSpeedStats.SetMax(4)
  1927.         self.MoveSpeedStats.SetNumberMode()
  1928.         self.MoveSpeedStats.SetFocus()
  1929.         self.MoveSpeedStats.SetText("0")
  1930.         #self.MoveSpeedStats.SetTabEvent(ui.__mem_func__(self.AttackSpeedStats.SetFocus))
  1931.         #self.MoveSpeedStats.SetReturnEvent(ui.__mem_func__(self.AttackSpeedStats.SetFocus))
  1932.         self.MoveSpeedStats.Show()
  1933.  
  1934.         self.AttackSpeedStatsSlotbar = ui.SlotBar()
  1935.         self.AttackSpeedStatsSlotbar.SetParent(self)
  1936.         self.AttackSpeedStatsSlotbar.SetSize(30, 18)
  1937.         self.AttackSpeedStatsSlotbar.SetPosition(30, 124 + 9 - 2)
  1938.         self.AttackSpeedStatsSlotbar.SetWindowHorizontalAlignCenter()
  1939.         self.AttackSpeedStatsSlotbar.Show()
  1940.        
  1941.         self.AttackSpeedStats = ui.EditLine()
  1942.         self.AttackSpeedStats.SetParent(self.AttackSpeedStatsSlotbar)
  1943.         self.AttackSpeedStats.SetSize(30, 17)
  1944.         self.AttackSpeedStats.SetPosition(10, 2)
  1945.         self.AttackSpeedStats.SetMax(4)
  1946.         self.AttackSpeedStats.SetNumberMode()
  1947.         self.AttackSpeedStats.SetFocus()
  1948.         self.AttackSpeedStats.SetText("0")
  1949.         self.AttackSpeedStats.SetTabEvent(ui.__mem_func__(self.MoveSpeedStats.SetFocus))
  1950.         self.AttackSpeedStats.SetReturnEvent(ui.__mem_func__(self.MoveSpeedStats.SetFocus))
  1951.         self.AttackSpeedStats.Show()
  1952.  
  1953.         self.SetBaseRadiusSlotbar = ui.SlotBar()
  1954.         self.SetBaseRadiusSlotbar.SetParent(self)
  1955.         self.SetBaseRadiusSlotbar.SetSize(30, 18)
  1956.         self.SetBaseRadiusSlotbar.SetPosition(0 - (20 + 40), 294)
  1957.         self.SetBaseRadiusSlotbar.SetWindowHorizontalAlignCenter()
  1958.         self.SetBaseRadiusSlotbar.Show()
  1959.        
  1960.         self.SetBaseRadiusEditline = ui.EditLine()
  1961.         self.SetBaseRadiusEditline.SetParent(self.SetBaseRadiusSlotbar)
  1962.         self.SetBaseRadiusEditline.SetSize(30, 17)
  1963.         self.SetBaseRadiusEditline.SetPosition(10, 2)
  1964.         self.SetBaseRadiusEditline.SetMax(3)
  1965.         self.SetBaseRadiusEditline.SetNumberMode()
  1966.         self.SetBaseRadiusEditline.SetFocus()
  1967.         self.SetBaseRadiusEditline.SetText("0")
  1968.         #self.SetBaseRadiusEditline.SetTabEvent(ui.__mem_func__(self.MoveSpeedStats.SetFocus))
  1969.         #self.SetBaseRadiusEditline.SetReturnEvent(ui.__mem_func__(self.MoveSpeedStats.SetFocus))
  1970.         self.SetBaseRadiusEditline.Show()
  1971.  
  1972.         self.TapferkeitsUmhangeDelaySlotbar = ui.SlotBar()
  1973.         self.TapferkeitsUmhangeDelaySlotbar.SetParent(self)
  1974.         self.TapferkeitsUmhangeDelaySlotbar.SetSize(30, 18)
  1975.         self.TapferkeitsUmhangeDelaySlotbar.SetPosition(0 - (67 + 40), 294 + 40*2 + 9 - 2)
  1976.         self.TapferkeitsUmhangeDelaySlotbar.SetWindowHorizontalAlignCenter()
  1977.         self.TapferkeitsUmhangeDelaySlotbar.Show()
  1978.        
  1979.         self.TapferkeitsUmhangeDelay = ui.EditLine()
  1980.         self.TapferkeitsUmhangeDelay.SetParent(self.TapferkeitsUmhangeDelaySlotbar)
  1981.         self.TapferkeitsUmhangeDelay.SetSize(30, 17)
  1982.         self.TapferkeitsUmhangeDelay.SetPosition(8, 2)
  1983.         self.TapferkeitsUmhangeDelay.SetMax(3)
  1984.         self.TapferkeitsUmhangeDelay.SetNumberMode()
  1985.         self.TapferkeitsUmhangeDelay.SetFocus()
  1986.         self.TapferkeitsUmhangeDelay.SetText("0")
  1987.         #self.TapferkeitsUmhangeDelay.SetTabEvent(ui.__mem_func__(self.DelayChatSpamEditLine.SetFocus))
  1988.         #self.TapferkeitsUmhangeDelay.SetReturnEvent(ui.__mem_func__(self.DelayChatSpamEditLine.SetFocus))
  1989.         self.TapferkeitsUmhangeDelay.Show()
  1990.  
  1991.         self.TeleportZEditLineSlotBar = ui.SlotBar()
  1992.         self.TeleportZEditLineSlotBar.SetParent(self)
  1993.         self.TeleportZEditLineSlotBar.SetSize(43, 18)
  1994.         self.TeleportZEditLineSlotBar.SetPosition(-180 + 40 + 120, 294 + 40*3 + 1)
  1995.         self.TeleportZEditLineSlotBar.SetWindowHorizontalAlignCenter()
  1996.         self.TeleportZEditLineSlotBar.Show()
  1997.        
  1998.         self.TeleportZEditLine = ui.EditLine()
  1999.         self.TeleportZEditLine.SetParent(self.TeleportZEditLineSlotBar)
  2000.         self.TeleportZEditLine.SetSize(43, 17)
  2001.         self.TeleportZEditLine.SetPosition(16, 2)
  2002.         self.TeleportZEditLine.SetMax(4)
  2003.         self.TeleportZEditLine.SetNumberMode()
  2004.         self.TeleportZEditLine.SetFocus()
  2005.         self.TeleportZEditLine.SetText("0")
  2006.         #self.TeleportZEditLine.SetTabEvent(ui.__mem_func__(self.DelayChatSpamEditLine.SetFocus))
  2007.         #self.TeleportZEditLine.SetReturnEvent(ui.__mem_func__(self.DelayChatSpamEditLine.SetFocus))
  2008.         self.TeleportZEditLine.Show()
  2009.  
  2010.         self.TeleportYEditLineSlotBar = ui.SlotBar()
  2011.         self.TeleportYEditLineSlotBar.SetParent(self)
  2012.         self.TeleportYEditLineSlotBar.SetSize(43, 18)
  2013.         self.TeleportYEditLineSlotBar.SetPosition(-180 + 40 + 60, 294 + 40*3 + 1)
  2014.         self.TeleportYEditLineSlotBar.SetWindowHorizontalAlignCenter()
  2015.         self.TeleportYEditLineSlotBar.Show()
  2016.        
  2017.         self.TeleportYEditLine = ui.EditLine()
  2018.         self.TeleportYEditLine.SetParent(self.TeleportYEditLineSlotBar)
  2019.         self.TeleportYEditLine.SetSize(43, 17)
  2020.         self.TeleportYEditLine.SetPosition(16, 2)
  2021.         self.TeleportYEditLine.SetMax(4)
  2022.         self.TeleportYEditLine.SetNumberMode()
  2023.         self.TeleportYEditLine.SetFocus()
  2024.         self.TeleportYEditLine.SetText("0")
  2025.         self.TeleportYEditLine.SetTabEvent(ui.__mem_func__(self.TeleportZEditLine.SetFocus))
  2026.         self.TeleportYEditLine.SetReturnEvent(ui.__mem_func__(self.TeleportZEditLine.SetFocus))
  2027.         self.TeleportYEditLine.Show()
  2028.  
  2029.         self.TeleportXEditLineSlotBar = ui.SlotBar()
  2030.         self.TeleportXEditLineSlotBar.SetParent(self)
  2031.         self.TeleportXEditLineSlotBar.SetSize(43, 18)
  2032.         self.TeleportXEditLineSlotBar.SetPosition(-180 + 40, 294 + 40*3 + 1)
  2033.         self.TeleportXEditLineSlotBar.SetWindowHorizontalAlignCenter()
  2034.         self.TeleportXEditLineSlotBar.Show()
  2035.        
  2036.         self.TeleportXEditLine = ui.EditLine()
  2037.         self.TeleportXEditLine.SetParent(self.TeleportXEditLineSlotBar)
  2038.         self.TeleportXEditLine.SetSize(43, 17)
  2039.         self.TeleportXEditLine.SetPosition(16, 2)
  2040.         self.TeleportXEditLine.SetMax(4)
  2041.         self.TeleportXEditLine.SetNumberMode()
  2042.         self.TeleportXEditLine.SetFocus()
  2043.         self.TeleportXEditLine.SetText("0")
  2044.         self.TeleportXEditLine.SetTabEvent(ui.__mem_func__(self.TeleportYEditLine.SetFocus))
  2045.         self.TeleportXEditLine.SetReturnEvent(ui.__mem_func__(self.TeleportYEditLine.SetFocus))
  2046.         self.TeleportXEditLine.Show()
  2047.        
  2048.     def LoadButtons(self):
  2049.         self.CloseButton = ui.Button()
  2050.         self.CloseButton.SetParent(self)
  2051.         self.CloseButton.SetPosition(320, 39)
  2052.         self.CloseButton.SetUpVisual("d:/ymir work/ui/public/close_button_01.sub")
  2053.         self.CloseButton.SetOverVisual("d:/ymir work/ui/public/close_button_02.sub")
  2054.         self.CloseButton.SetDownVisual("d:/ymir work/ui/public/close_button_03.sub")
  2055.         self.CloseButton.SetToolTipText(locale.UI_CLOSE, 0, - 23)
  2056.         self.CloseButton.SetEvent(ui.__mem_func__(self.Close))
  2057.         self.CloseButton.Show()
  2058.  
  2059.         self.AutoSkillUse1 = ui.Button()
  2060.         self.AutoSkillUse1.SetParent(self)
  2061.         self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  2062.         self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  2063.         self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  2064.         self.AutoSkillUse1.SetText("")
  2065.         self.AutoSkillUse1.SetPosition(30, 84)
  2066.         self.AutoSkillUse1.SetEvent(ui.__mem_func__(self.AutoSkillUseActivate1))
  2067.         self.AutoSkillUse1.Show()
  2068.  
  2069.         self.AutoSkillUse2 = ui.Button()
  2070.         self.AutoSkillUse2.SetParent(self)
  2071.         self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  2072.         self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  2073.         self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  2074.         self.AutoSkillUse2.SetText("")
  2075.         self.AutoSkillUse2.SetPosition(30 + 3*1 + 32*1, 84)
  2076.         self.AutoSkillUse2.SetEvent(ui.__mem_func__(self.AutoSkillUseActivate2))
  2077.         self.AutoSkillUse2.Show()
  2078.  
  2079.         self.AutoSkillUse3 = ui.Button()
  2080.         self.AutoSkillUse3.SetParent(self)
  2081.         self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  2082.         self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  2083.         self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  2084.         self.AutoSkillUse3.SetText("")
  2085.         self.AutoSkillUse3.SetPosition(30 + 3*2 + 32*2, 84)
  2086.         self.AutoSkillUse3.SetEvent(ui.__mem_func__(self.AutoSkillUseActivate3))
  2087.         self.AutoSkillUse3.Show()
  2088.  
  2089.         self.AutoSkillUse4 = ui.Button()
  2090.         self.AutoSkillUse4.SetParent(self)
  2091.         self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  2092.         self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  2093.         self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  2094.         self.AutoSkillUse4.SetText("")
  2095.         self.AutoSkillUse4.SetPosition(30 + 3*3 + 32*3, 84)
  2096.         self.AutoSkillUse4.SetEvent(ui.__mem_func__(self.AutoSkillUseActivate4))
  2097.         self.AutoSkillUse4.Show()
  2098.  
  2099.         self.AutoSkillUse5 = ui.Button()
  2100.         self.AutoSkillUse5.SetParent(self)
  2101.         self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  2102.         self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  2103.         self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  2104.         self.AutoSkillUse5.SetText("")
  2105.         self.AutoSkillUse5.SetPosition(30 + 3*4 + 32*4, 84)
  2106.         self.AutoSkillUse5.SetEvent(ui.__mem_func__(self.AutoSkillUseActivate5))
  2107.         self.AutoSkillUse5.Show()
  2108.  
  2109.         self.AutoSkillUse6 = ui.Button()
  2110.         self.AutoSkillUse6.SetParent(self)
  2111.         self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  2112.         self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  2113.         self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  2114.         self.AutoSkillUse6.SetText("")
  2115.         self.AutoSkillUse6.SetPosition(30 + 3*5 + 32*5, 84)
  2116.         self.AutoSkillUse6.SetEvent(ui.__mem_func__(self.AutoSkillUseActivate6))
  2117.         self.AutoSkillUse6.Show()
  2118.        
  2119.         self.AutoSkillUse1Activated = ui.Button()
  2120.         self.AutoSkillUse1Activated.SetParent(self)
  2121.         self.AutoSkillUse1Activated.SetUpVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2122.         self.AutoSkillUse1Activated.SetOverVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2123.         self.AutoSkillUse1Activated.SetDownVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2124.         self.AutoSkillUse1Activated.SetText("")
  2125.         self.AutoSkillUse1Activated.SetPosition(30, 84)
  2126.         self.AutoSkillUse1Activated.SetEvent(ui.__mem_func__(self.AutoSkillUseActivate1))
  2127.         self.AutoSkillUse1Activated.Show()
  2128.  
  2129.         self.AutoSkillUse2Activated = ui.Button()
  2130.         self.AutoSkillUse2Activated.SetParent(self)
  2131.         self.AutoSkillUse2Activated.SetUpVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2132.         self.AutoSkillUse2Activated.SetOverVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2133.         self.AutoSkillUse2Activated.SetDownVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2134.         self.AutoSkillUse2Activated.SetText("")
  2135.         self.AutoSkillUse2Activated.SetPosition(30 + 3*1 + 32*1, 84)
  2136.         self.AutoSkillUse2Activated.SetEvent(ui.__mem_func__(self.AutoSkillUseActivate2))
  2137.         self.AutoSkillUse2Activated.Show()
  2138.  
  2139.         self.AutoSkillUse3Activated = ui.Button()
  2140.         self.AutoSkillUse3Activated.SetParent(self)
  2141.         self.AutoSkillUse3Activated.SetUpVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2142.         self.AutoSkillUse3Activated.SetOverVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2143.         self.AutoSkillUse3Activated.SetDownVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2144.         self.AutoSkillUse3Activated.SetText("")
  2145.         self.AutoSkillUse3Activated.SetPosition(30 + 3*2 + 32*2, 84)
  2146.         self.AutoSkillUse3Activated.SetEvent(ui.__mem_func__(self.AutoSkillUseActivate3))
  2147.         self.AutoSkillUse3Activated.Show()
  2148.  
  2149.         self.AutoSkillUse4Activated = ui.Button()
  2150.         self.AutoSkillUse4Activated.SetParent(self)
  2151.         self.AutoSkillUse4Activated.SetUpVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2152.         self.AutoSkillUse4Activated.SetOverVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2153.         self.AutoSkillUse4Activated.SetDownVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2154.         self.AutoSkillUse4Activated.SetText("")
  2155.         self.AutoSkillUse4Activated.SetPosition(30 + 3*3 + 32*3, 84)
  2156.         self.AutoSkillUse4Activated.SetEvent(ui.__mem_func__(self.AutoSkillUseActivate4))
  2157.         self.AutoSkillUse4Activated.Show()
  2158.  
  2159.         self.AutoSkillUse5Activated = ui.Button()
  2160.         self.AutoSkillUse5Activated.SetParent(self)
  2161.         self.AutoSkillUse5Activated.SetUpVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2162.         self.AutoSkillUse5Activated.SetOverVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2163.         self.AutoSkillUse5Activated.SetDownVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2164.         self.AutoSkillUse5Activated.SetText("")
  2165.         self.AutoSkillUse5Activated.SetPosition(30 + 3*4 + 32*4, 84)
  2166.         self.AutoSkillUse5Activated.SetEvent(ui.__mem_func__(self.AutoSkillUseActivate5))
  2167.         self.AutoSkillUse5Activated.Show()
  2168.  
  2169.         self.AutoSkillUse6Activated = ui.Button()
  2170.         self.AutoSkillUse6Activated.SetParent(self)
  2171.         self.AutoSkillUse6Activated.SetUpVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2172.         self.AutoSkillUse6Activated.SetOverVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2173.         self.AutoSkillUse6Activated.SetDownVisual("d:/ymir work/ui/public/slot_cover_button_03.sub")
  2174.         self.AutoSkillUse6Activated.SetText("")
  2175.         self.AutoSkillUse6Activated.SetPosition(30 + 3*5 + 32*5, 84)
  2176.         self.AutoSkillUse6Activated.SetEvent(ui.__mem_func__(self.AutoSkillUseActivate6))
  2177.         self.AutoSkillUse6Activated.Show()
  2178.  
  2179.         self.AutoPottRedImage = ui.ExpandedImageBox()
  2180.         self.AutoPottRedImage.SetParent(self)
  2181.         self.AutoPottRedImage.SetPosition(30, 124)
  2182.         self.AutoPottRedImage.LoadImage(str("icon/item/27003.tga"))
  2183.         self.AutoPottRedImage.Show()
  2184.        
  2185.         self.AutoPottRedButton = ui.Button()
  2186.         self.AutoPottRedButton.SetParent(self.AutoPottRedImage)
  2187.         self.AutoPottRedButton.SetPosition(20, 10)
  2188.         self.AutoPottRedButton.SetSize(70, 40)
  2189.         self.AutoPottRedButton.SetEvent(ui.__mem_func__(self.AutoPottRedActivate))
  2190.         self.AutoPottRedButton.Show()
  2191.  
  2192.         self.AutoPottRedImageActivated = ui.ExpandedImageBox()
  2193.         self.AutoPottRedImageActivated.SetParent(self)
  2194.         self.AutoPottRedImageActivated.SetPosition(35, 124)
  2195.         self.AutoPottRedImageActivated.LoadImage(str("icon/item/30040.tga"))
  2196.        
  2197.         self.AutoPottRedButtonActivated = ui.Button()
  2198.         self.AutoPottRedButtonActivated.SetParent(self.AutoPottRedImageActivated)
  2199.         self.AutoPottRedButtonActivated.SetPosition(20, 10)
  2200.         self.AutoPottRedButtonActivated.SetSize(70, 40)
  2201.         self.AutoPottRedButtonActivated.SetEvent(ui.__mem_func__(self.AutoPottRedActivate))
  2202.        
  2203.         self.AutoPottBlueImage = ui.ExpandedImageBox()
  2204.         self.AutoPottBlueImage.SetParent(self)
  2205.         self.AutoPottBlueImage.SetPosition(30, 164)
  2206.         self.AutoPottBlueImage.LoadImage(str("icon/item/27006.tga"))
  2207.         self.AutoPottBlueImage.Show()
  2208.        
  2209.         self.AutoPottBlueButton = ui.Button()
  2210.         self.AutoPottBlueButton.SetParent(self.AutoPottBlueImage)
  2211.         self.AutoPottBlueButton.SetPosition(20, 10)
  2212.         self.AutoPottBlueButton.SetSize(70, 40)
  2213.         self.AutoPottBlueButton.SetEvent(ui.__mem_func__(self.AutoPottBlueActivate))
  2214.         self.AutoPottBlueButton.Show()
  2215.  
  2216.         self.AutoPottBlueImageActivated = ui.ExpandedImageBox()
  2217.         self.AutoPottBlueImageActivated.SetParent(self)
  2218.         self.AutoPottBlueImageActivated.SetPosition(35, 164)
  2219.         self.AutoPottBlueImageActivated.LoadImage(str("icon/item/30040.tga"))
  2220.        
  2221.         self.AutoPottBlueButtonActivated = ui.Button()
  2222.         self.AutoPottBlueButtonActivated.SetParent(self.AutoPottBlueImageActivated)
  2223.         self.AutoPottBlueButtonActivated.SetPosition(20, 10)
  2224.         self.AutoPottBlueButtonActivated.SetSize(70, 40)
  2225.         self.AutoPottBlueButtonActivated.SetEvent(ui.__mem_func__(self.AutoPottBlueActivate))
  2226.        
  2227.         self.AttackSpeedStatusButton = ui.Button()
  2228.         self.AttackSpeedStatusButton.SetParent(self)
  2229.         self.AttackSpeedStatusButton.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  2230.         self.AttackSpeedStatusButton.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  2231.         self.AttackSpeedStatusButton.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  2232.         self.AttackSpeedStatusButton.SetText("Deaktiviert")
  2233.         self.AttackSpeedStatusButton.SetPosition(159 + 50 + 39, 124 + 9 - 2)
  2234.         self.AttackSpeedStatusButton.SetEvent(ui.__mem_func__(self.AttackSpeedStatus))
  2235.         self.AttackSpeedStatusButton.Show()
  2236.  
  2237.         self.MoveSpeedStatusButton = ui.Button()
  2238.         self.MoveSpeedStatusButton.SetParent(self)
  2239.         self.MoveSpeedStatusButton.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  2240.         self.MoveSpeedStatusButton.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  2241.         self.MoveSpeedStatusButton.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  2242.         self.MoveSpeedStatusButton.SetText("Deaktiviert")
  2243.         self.MoveSpeedStatusButton.SetPosition(159 + 50 + 39, 164 + 9 - 2)
  2244.         self.MoveSpeedStatusButton.SetEvent(ui.__mem_func__(self.MoveSpeedStatus))
  2245.         self.MoveSpeedStatusButton.Show()
  2246.  
  2247.         self.AutoReviveButton = ui.Button()
  2248.         self.AutoReviveButton.SetParent(self)
  2249.         self.AutoReviveButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_01.sub")
  2250.         self.AutoReviveButton.SetOverVisual("d:/ymir work/ui/public/xlarge_button_02.sub")
  2251.         self.AutoReviveButton.SetDownVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
  2252.         self.AutoReviveButton.SetText("Automatischer Neustart")
  2253.         self.AutoReviveButton.SetPosition(30, 214)
  2254.         self.AutoReviveButton.SetEvent(ui.__mem_func__(self.AutoReviveActivate))
  2255.         self.AutoReviveButton.Show()
  2256.    
  2257.         self.GetTargetVidButton = ui.Button()
  2258.         self.GetTargetVidButton.SetParent(self)
  2259.         self.GetTargetVidButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2260.         self.GetTargetVidButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  2261.         self.GetTargetVidButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  2262.         self.GetTargetVidButton.SetText("Get Target Vid")
  2263.         self.GetTargetVidButton.SetPosition(30, 254)
  2264.         self.GetTargetVidButton.SetEvent(ui.__mem_func__(self.GetTargetVID))
  2265.         self.GetTargetVidButton.Show()
  2266.  
  2267.         self.SetVIDRangeButton = ui.Button()
  2268.         self.SetVIDRangeButton.SetParent(self)
  2269.         self.SetVIDRangeButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2270.         self.SetVIDRangeButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  2271.         self.SetVIDRangeButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  2272.         self.SetVIDRangeButton.SetText("Set VID Range")
  2273.         self.SetVIDRangeButton.SetPosition(30 + 88 + 4, 254)
  2274.         self.SetVIDRangeButton.SetEvent(ui.__mem_func__(self.SetVIDRange))
  2275.         self.SetVIDRangeButton.Show()
  2276.  
  2277.         self.SetBasePositionButton = ui.Button()
  2278.         self.SetBasePositionButton.SetParent(self)
  2279.         self.SetBasePositionButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2280.         self.SetBasePositionButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  2281.         self.SetBasePositionButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  2282.         self.SetBasePositionButton.SetText("Setze Base")
  2283.         self.SetBasePositionButton.SetPosition(30, 294)
  2284.         self.SetBasePositionButton.SetEvent(ui.__mem_func__(self.SetBasePosition))
  2285.         self.SetBasePositionButton.Show()
  2286.  
  2287.         self.TransferBasePositionButton = ui.Button()
  2288.         self.TransferBasePositionButton.SetParent(self)
  2289.         self.TransferBasePositionButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2290.         self.TransferBasePositionButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  2291.         self.TransferBasePositionButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  2292.         self.TransferBasePositionButton.SetText("Transfer to Base")
  2293.         self.TransferBasePositionButton.SetPosition(30, 294 + 40)
  2294.         self.TransferBasePositionButton.SetEvent(ui.__mem_func__(self.TransferBasePosition))
  2295.         self.TransferBasePositionButton.Show()
  2296.  
  2297.         self.DeactivateBaseButton = ui.Button()
  2298.         self.DeactivateBaseButton.SetParent(self)
  2299.         self.DeactivateBaseButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2300.         self.DeactivateBaseButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  2301.         self.DeactivateBaseButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  2302.         self.DeactivateBaseButton.SetText("Deaktiviere Range")
  2303.         self.DeactivateBaseButton.SetPosition(30 + 88 + 4, 294 + 40)
  2304.         self.DeactivateBaseButton.SetEvent(ui.__mem_func__(self.DeactivateBasePosition))
  2305.         self.DeactivateBaseButton.Show()
  2306.  
  2307.         self.TapferkeitsUmhangeImage = ui.ExpandedImageBox()
  2308.         self.TapferkeitsUmhangeImage.SetParent(self)
  2309.         self.TapferkeitsUmhangeImage.SetPosition(30, 294 + 40*2)
  2310.         self.TapferkeitsUmhangeImage.LoadImage(str("icon/item/70038.tga"))
  2311.         self.TapferkeitsUmhangeImage.Show()
  2312.        
  2313.         self.TapferkeitsUmhangeButton = ui.Button()
  2314.         self.TapferkeitsUmhangeButton.SetParent(self.TapferkeitsUmhangeImage)
  2315.         self.TapferkeitsUmhangeButton.SetPosition(20, 10)
  2316.         self.TapferkeitsUmhangeButton.SetSize(70, 40)
  2317.         self.TapferkeitsUmhangeButton.SetEvent(ui.__mem_func__(self.SetTapferkeitsUmhange))
  2318.         self.TapferkeitsUmhangeButton.Show()
  2319.        
  2320.         self.TapferkeitsUmhangeImageActivated = ui.ExpandedImageBox()
  2321.         self.TapferkeitsUmhangeImageActivated.SetParent(self)
  2322.         self.TapferkeitsUmhangeImageActivated.SetPosition(35, 294 + 40*2 + 5)
  2323.         self.TapferkeitsUmhangeImageActivated.LoadImage(str("icon/item/30040.tga"))
  2324.        
  2325.         self.TapferkeitsUmhangeButtonActivated = ui.Button()
  2326.         self.TapferkeitsUmhangeButtonActivated.SetParent(self.TapferkeitsUmhangeImageActivated)
  2327.         self.TapferkeitsUmhangeButtonActivated.SetPosition(20, 10)
  2328.         self.TapferkeitsUmhangeButtonActivated.SetSize(70, 40)
  2329.         self.TapferkeitsUmhangeButtonActivated.SetEvent(ui.__mem_func__(self.SetTapferkeitsUmhange))
  2330.  
  2331.         self.AutoPickUpButton = ui.Button()
  2332.         self.AutoPickUpButton.SetParent(self)
  2333.         self.AutoPickUpButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2334.         self.AutoPickUpButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  2335.         self.AutoPickUpButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  2336.         self.AutoPickUpButton.SetText("Auto PickUp")
  2337.         self.AutoPickUpButton.SetPosition(30 + 88 + 4, 294 + 40*2)
  2338.         self.AutoPickUpButton.SetEvent(ui.__mem_func__(self.SelectAutoPickUp))
  2339.         self.AutoPickUpButton.Show()
  2340.  
  2341.         self.TeleportButton = ui.Button()
  2342.         self.TeleportButton.SetParent(self)
  2343.         self.TeleportButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2344.         self.TeleportButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  2345.         self.TeleportButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  2346.         self.TeleportButton.SetText("Teleport")
  2347.         self.TeleportButton.SetPosition(30 + 88*2 + 4*2, 294 + 40*3)
  2348.         self.TeleportButton.SetEvent(ui.__mem_func__(self.TeleportToCoordinates))
  2349.         self.TeleportButton.Show()
  2350.  
  2351.         self.TeleportToMobsManyButton = ui.Button()
  2352.         self.TeleportToMobsManyButton.SetParent(self)
  2353.         self.TeleportToMobsManyButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2354.         self.TeleportToMobsManyButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  2355.         self.TeleportToMobsManyButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  2356.         self.TeleportToMobsManyButton.SetText("Teleport to Mobs")
  2357.         self.TeleportToMobsManyButton.SetPosition(30, 454)
  2358.         self.TeleportToMobsManyButton.SetEvent(ui.__mem_func__(self.SelectTeleportToMobsMany))
  2359.         self.TeleportToMobsManyButton.Show()
  2360.  
  2361.         self.TransferMobsButton = ui.Button()
  2362.         self.TransferMobsButton.SetParent(self)
  2363.         self.TransferMobsButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2364.         self.TransferMobsButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  2365.         self.TransferMobsButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  2366.         self.TransferMobsButton.SetText("Transfer Mobs")
  2367.         self.TransferMobsButton.SetPosition(30 + 92, 454)
  2368.         self.TransferMobsButton.SetEvent(ui.__mem_func__(self.SelectTransferMobs))
  2369.         self.TransferMobsButton.Show()
  2370.  
  2371.         self.AttackAndStandButton = ui.Button()
  2372.         self.AttackAndStandButton.SetParent(self)
  2373.         self.AttackAndStandButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2374.         self.AttackAndStandButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  2375.         self.AttackAndStandButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  2376.         self.AttackAndStandButton.SetText("Stand & Attack")
  2377.         self.AttackAndStandButton.SetPosition(30 + 92*2, 454)
  2378.         self.AttackAndStandButton.SetEvent(ui.__mem_func__(self.SelectAttackAndStand))
  2379.         self.AttackAndStandButton.Show()
  2380.  
  2381.         self.StartLevelBotButton = ui.Button()
  2382.         self.StartLevelBotButton.SetParent(self)
  2383.         self.StartLevelBotButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_01.sub")
  2384.         self.StartLevelBotButton.SetOverVisual("d:/ymir work/ui/public/xlarge_button_02.sub")
  2385.         self.StartLevelBotButton.SetDownVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
  2386.         self.StartLevelBotButton.SetText("Levelbot Start")
  2387.         self.StartLevelBotButton.SetPosition(13, 494)
  2388.         self.StartLevelBotButton.SetEvent(ui.__mem_func__(self.StartLevelBot))
  2389.         self.StartLevelBotButton.Show()
  2390.  
  2391.         self.StopLevelBotButton = ui.Button()
  2392.         self.StopLevelBotButton.SetParent(self)
  2393.         self.StopLevelBotButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_01.sub")
  2394.         self.StopLevelBotButton.SetOverVisual("d:/ymir work/ui/public/xlarge_button_02.sub")
  2395.         self.StopLevelBotButton.SetDownVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
  2396.         self.StopLevelBotButton.SetText("Levelbot Stopp")
  2397.         self.StopLevelBotButton.SetPosition(197, 494)
  2398.         self.StopLevelBotButton.SetEvent(ui.__mem_func__(self.StopLevelBot))
  2399.         self.StopLevelBotButton.Show()
  2400.        
  2401.     def CreateImageButtons(self, UpVisual, OverVisual, DownVisual, Image, XPosition, YPosition, event, name):
  2402.         self.SpecialImageBox = ui.ExpandedImageBox()
  2403.         self.SpecialImageBox.SetParent(self)
  2404.         self.SpecialImageBox.SetPosition(int(XPosition), int(YPosition))
  2405.         if str(Image) != "":
  2406.             self.SpecialImageBox + str(name).LoadImage(str(Image))
  2407.         self.SpecialImageBox + str(name).Show()
  2408.        
  2409.         self.ImageBoxButton = ui.Button()
  2410.         if str(UpVisual) != "":
  2411.             self.ImageBoxButton.SetUpVisual(str(UpVisual))
  2412.         if str(OverVisual) != "":
  2413.             self.ImageBoxButton.SetOverVisual(str(OverVisual))
  2414.         if str(DownVisual) != "":
  2415.             self.ImageBoxButton.SetDownVisual(str(DownVisual))
  2416.         self.ImageBoxButton.SetText("Abbrechen")
  2417.         self.ImageBoxButton.SetParent(self.SpecialImageBox)
  2418.         self.ImageBoxButton.SetPosition(20, 10)
  2419.         self.ImageBoxButton.SetSize(70, 40)
  2420.         self.ImageBoxButton.SetEvent(ui.__mem_func__(event))
  2421.         self.ImageBoxButton.Show()
  2422.  
  2423.     def LoadTextLines(self):
  2424.         self.Headline = ui.TextLine()
  2425.         self.Headline.SetParent(self)
  2426.         self.Headline.SetDefaultFontName()
  2427.         self.Headline.SetPosition(30, 39)
  2428.         self.Headline.SetFeather()
  2429.         self.Headline.SetText("Levelbot 1.2 Konfiguration")
  2430.         self.Headline.SetFontColor(1.0, 0.5, 0.5)
  2431.         self.Headline.SetOutline()
  2432.         self.Headline.Show()
  2433.        
  2434.         self.AttackSpeedHackHeadline = ui.TextLine()
  2435.         self.AttackSpeedHackHeadline.SetParent(self)
  2436.         self.AttackSpeedHackHeadline.SetDefaultFontName()
  2437.         self.AttackSpeedHackHeadline.SetPosition(30 + 88 + 3, 124 + 10)
  2438.         self.AttackSpeedHackHeadline.SetFeather()
  2439.         self.AttackSpeedHackHeadline.SetText("Attack Speed Hack")
  2440.         self.AttackSpeedHackHeadline.SetFontColor(1.0, 1.0, 1.0)
  2441.         self.AttackSpeedHackHeadline.SetOutline()
  2442.         self.AttackSpeedHackHeadline.Show()
  2443.  
  2444.         self.MoveSpeedHackHeadline = ui.TextLine()
  2445.         self.MoveSpeedHackHeadline.SetParent(self)
  2446.         self.MoveSpeedHackHeadline.SetDefaultFontName()
  2447.         self.MoveSpeedHackHeadline.SetPosition(30 + 88 + 3, 164 + 10)
  2448.         self.MoveSpeedHackHeadline.SetFeather()
  2449.         self.MoveSpeedHackHeadline.SetText("Move Speed Hack")
  2450.         self.MoveSpeedHackHeadline.SetFontColor(1.0, 1.0, 1.0)
  2451.         self.MoveSpeedHackHeadline.SetOutline()
  2452.         self.MoveSpeedHackHeadline.Show()
  2453.  
  2454.         self.SetBaseRadiusText = ui.TextLine()
  2455.         self.SetBaseRadiusText.SetParent(self)
  2456.         self.SetBaseRadiusText.SetDefaultFontName()
  2457.         self.SetBaseRadiusText.SetPosition(30  + 88 + 9 + 30, 295)
  2458.         self.SetBaseRadiusText.SetFeather()
  2459.         self.SetBaseRadiusText.SetText("Base Radius")
  2460.         self.SetBaseRadiusText.SetFontColor(1.0, 1.0, 1.0)
  2461.         self.SetBaseRadiusText.SetOutline()
  2462.         self.SetBaseRadiusText.Show()
  2463.        
  2464.     def AutoReviveActivate(self):
  2465.         global AutoRevive
  2466.         if AutoRevive == "":
  2467.             AutoRevive = 1
  2468.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Auto-Revive aktiviert!")
  2469.             self.AutoReviveButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
  2470.         else:
  2471.             AutoRevive = ""
  2472.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Auto-Revive deaktiviert!")
  2473.             self.AutoReviveButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_01.sub")
  2474.  
  2475.     def AutoPottRedActivate(self):
  2476.         global AutoPottRed
  2477.         if AutoPottRed == "":
  2478.             AutoPottRed = 1
  2479.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Roter Auto-Pott aktiviert!")
  2480.             self.AutoPottRedImageActivated.Show()
  2481.             self.AutoPottRedButtonActivated.Show()
  2482.         else:
  2483.             AutoPottRed = ""
  2484.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Roter Auto-Pott deaktiviert!")
  2485.             self.AutoPottRedImageActivated.Hide()
  2486.             self.AutoPottRedButtonActivated.Hide()
  2487.  
  2488.     def AutoPottBlueActivate(self):
  2489.         global AutoPottBlue
  2490.         if AutoPottBlue == "":
  2491.             AutoPottBlue = 1
  2492.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Blauer Auto-Pott aktiviert!")
  2493.             self.AutoPottBlueImageActivated.Show()
  2494.             self.AutoPottBlueButtonActivated.Show()
  2495.         else:
  2496.             AutoPottBlue = ""
  2497.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Blauer Auto-Pott deaktiviert!")
  2498.             self.AutoPottBlueImageActivated.Hide()
  2499.             self.AutoPottBlueButtonActivated.Hide()
  2500.  
  2501.     def SelectAutoPickUp(self):
  2502.         global AutoPickUp
  2503.         if AutoPickUp == "":
  2504.             AutoPickUp = 1
  2505.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Auto PickUp aktiviert!")
  2506.             self.AutoPickUpButton.SetUpVisual("d:/ymir work/ui/public/large_button_03.sub")
  2507.         else:
  2508.             AutoPickUp = ""
  2509.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Auto PickUp deaktiviert!")
  2510.             self.AutoPickUpButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2511.            
  2512.     def AutoSkillUseActivate1(self):
  2513.         global AutoSkillUse1
  2514.         if AutoSkillUse1 == "":
  2515.             AutoSkillUse1 = 1
  2516.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Autoskill 1 aktiviert!")
  2517.             self.AutoSkillUse1Activated.Show()
  2518.         else:
  2519.             AutoSkillUse1 = ""
  2520.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Autoskill 1 deaktiviert!")
  2521.             self.AutoSkillUse1Activated.Hide()
  2522.  
  2523.     def AutoSkillUseActivate2(self):
  2524.         global AutoSkillUse2
  2525.         if AutoSkillUse2 == "":
  2526.             AutoSkillUse2 = 1
  2527.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Autoskill 2 aktiviert!")
  2528.             self.AutoSkillUse2Activated.Show()
  2529.         else:
  2530.             AutoSkillUse2 = ""
  2531.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Autoskill 2 deaktiviert!")
  2532.             self.AutoSkillUse2Activated.Hide()
  2533.  
  2534.     def AutoSkillUseActivate3(self):
  2535.         global AutoSkillUse3
  2536.         if AutoSkillUse3 == "":
  2537.             AutoSkillUse3 = 1
  2538.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Autoskill 3 aktiviert!")
  2539.             self.AutoSkillUse3Activated.Show()
  2540.         else:
  2541.             AutoSkillUse3 = ""
  2542.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Autoskill 3 deaktiviert!")
  2543.             self.AutoSkillUse3Activated.Hide()
  2544.  
  2545.     def AutoSkillUseActivate4(self):
  2546.         global AutoSkillUse4
  2547.         if AutoSkillUse4 == "":
  2548.             AutoSkillUse4 = 1
  2549.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Autoskill 4 aktiviert!")
  2550.             self.AutoSkillUse4Activated.Show()
  2551.         else:
  2552.             AutoSkillUse4 = ""
  2553.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Autoskill 4 deaktiviert!")
  2554.             self.AutoSkillUse4Activated.Hide()
  2555.  
  2556.     def AutoSkillUseActivate5(self):
  2557.         global AutoSkillUse5
  2558.         if AutoSkillUse5 == "":
  2559.             AutoSkillUse5 = 1
  2560.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Autoskill 5 aktiviert!")
  2561.             self.AutoSkillUse5Activated.Show()
  2562.         else:
  2563.             AutoSkillUse5 = ""
  2564.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Autoskill 5 deaktiviert!")
  2565.             self.AutoSkillUse5Activated.Hide()
  2566.  
  2567.     def AutoSkillUseActivate6(self):
  2568.         global AutoSkillUse6
  2569.         if AutoSkillUse6 == "":
  2570.             AutoSkillUse6 = 1
  2571.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Autoskill 6 aktiviert!")
  2572.             self.AutoSkillUse6Activated.Show()
  2573.         else:
  2574.             AutoSkillUse6 = ""
  2575.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Autoskill 6 deaktiviert!")
  2576.             self.AutoSkillUse6Activated.Hide()
  2577.        
  2578.     def TeleportToCoordinates(self):
  2579.         global telestep
  2580.         global teleport_mode
  2581.         x_coordinate = self.TeleportXEditLine.GetText()
  2582.         y_coordinate = self.TeleportYEditLine.GetText()
  2583.         z_coordinate = self.TeleportZEditLine.GetText()
  2584.         x_coordinate = int(x_coordinate)*100
  2585.         y_coordinate = int(y_coordinate)*100
  2586.         z_coordinate = int(z_coordinate)*100
  2587.         (ax, ay, az) = player.GetMainCharacterPosition()
  2588.         teleport_mode = 1
  2589.        
  2590. ###Teleportsteps by musicinstructor    
  2591.         if int(x_coordinate) < int(ax):
  2592.             while int(x_coordinate) < int(ax):
  2593.                 if telestep > 10:
  2594.                     chat.AppendChat(chat.CHAT_TYPE_INFO, "Um einen Packet-Flood Kick zu vermeiden wird erst in 5 Sekunden weiterteleportiert.")
  2595.                     return
  2596.                 chr.SetPixelPosition(int(ax) - 2000, int(ay))
  2597.                 player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2598.                 player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2599.                 (ax, ay, az) = player.GetMainCharacterPosition()
  2600.                 telestep = telestep + 1
  2601.                
  2602.             chr.SetPixelPosition(int(x_coordinate), int(ay))
  2603.             player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2604.             player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2605.            
  2606.         if int(x_coordinate) > int(ax):
  2607.             while int(x_coordinate) > int(ax):
  2608.                 if telestep > 10:
  2609.                     chat.AppendChat(chat.CHAT_TYPE_INFO, "Um einen Packet-Flood Kick zu vermeiden wird erst in 5 Sekunden weiterteleportiert.")
  2610.                     return
  2611.                 chr.SetPixelPosition(int(ax) + 2000, int(ay))
  2612.                 player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2613.                 player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2614.                 (ax, ay, az) = player.GetMainCharacterPosition()
  2615.                 telestep = telestep + 1
  2616.                
  2617.             chr.SetPixelPosition(int(x_coordinate), int(ay))
  2618.             player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2619.             player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2620.            
  2621.         if int(y_coordinate) < int(ay):
  2622.             while int(y_coordinate) < int(ay):
  2623.                 if telestep > 10:
  2624.                     chat.AppendChat(chat.CHAT_TYPE_INFO, "Um einen Packet-Flood Kick zu vermeiden wird erst in 5 Sekunden weiterteleportiert.")
  2625.                     return
  2626.                 chr.SetPixelPosition(int(ax), int(ay) - 2000)
  2627.                 player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2628.                 player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2629.                 (ax, ay, az) = player.GetMainCharacterPosition()
  2630.                 telestep = telestep + 1
  2631.            
  2632.             chr.SetPixelPosition(int(ax), int(y_coordinate))
  2633.             player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2634.             player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2635.            
  2636.         if int(y_coordinate) > int(ay):
  2637.             while int(y_coordinate) > int(ay):
  2638.                 if telestep > 10:
  2639.                     chat.AppendChat(chat.CHAT_TYPE_INFO, "Um einen Packet-Flood Kick zu vermeiden wird erst in 5 Sekunden weiterteleportiert.")
  2640.                     return
  2641.                 chr.SetPixelPosition(int(ax), int(ay) + 2000)
  2642.                 player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2643.                 player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2644.                 (ax, ay, az) = player.GetMainCharacterPosition()
  2645.                 telestep = telestep + 1
  2646.  
  2647.             chr.SetPixelPosition(int(ax), int(y_coordinate))
  2648.             player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2649.             player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2650.  
  2651.         if int(z_coordinate) < int(az) and int(z_coordinate) != 0:
  2652.             while int(z_coordinate) < int(az):
  2653.                 if telestep > 7:
  2654.                     chat.AppendChat(chat.CHAT_TYPE_INFO, "Um einen Packet-Flood Kick zu vermeiden wird erst in 5 Sekunden weiterteleportiert.")
  2655.                     return
  2656.                 chr.SetPixelPosition(int(ax), int(ay), int(az) - 2000)
  2657.                 player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2658.                 player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2659.                 (ax, ay, az) = player.GetMainCharacterPosition()
  2660.                 telestep = telestep + 1
  2661.  
  2662.             chr.SetPixelPosition(int(ax), int(ay), int(z_coordinate))
  2663.             player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2664.             player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2665.            
  2666.         if int(z_coordinate) > int(az) and int(z_coordinate) != 0:
  2667.             while int(z_coordinate) > int(az):
  2668.                 if telestep > 7:
  2669.                     chat.AppendChat(chat.CHAT_TYPE_INFO, "Um einen Packet-Flood Kick zu vermeiden wird erst in 5 Sekunden weiterteleportiert.")
  2670.                     return
  2671.                 chr.SetPixelPosition(int(ax), int(ay), int(az) + 2000)
  2672.                 player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2673.                 player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2674.                 (ax, ay, az) = player.GetMainCharacterPosition()
  2675.                 telestep = telestep + 1
  2676.  
  2677.             chr.SetPixelPosition(int(ax), int(ay), int(z_coordinate))
  2678.             player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2679.             player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2680.        
  2681.         teleport_mode = 0
  2682.  
  2683.     def SelectTeleportToMobsMany(self):
  2684.         global LevelbotConfig
  2685.         if LevelbotConfig == "" or LevelbotConfig == 1:
  2686.             LevelbotConfig = 0
  2687.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Levelbot Konfiguration: Teleport to mobs!")
  2688.             self.TeleportToMobsManyButton.SetUpVisual("d:/ymir work/ui/public/large_button_03.sub")
  2689.             self.AttackAndStandButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2690.             self.TransferMobsButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2691.         else:
  2692.             LevelbotConfig = ""
  2693.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Levelbot Konfiguration: Teleport to mobs deactivated!")
  2694.             self.TeleportToMobsManyButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2695.    
  2696.     def SelectAttackAndStand(self):
  2697.         global LevelbotConfig
  2698.         global TransferMobs
  2699.         if (LevelbotConfig == "" or LevelbotConfig == 0) and TransferMobs == "":
  2700.             LevelbotConfig = 1
  2701.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Levelbot Konfiguration: Stand and attack!")
  2702.             self.AttackAndStandButton.SetUpVisual("d:/ymir work/ui/public/large_button_03.sub")
  2703.             self.TeleportToMobsManyButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2704.         elif (LevelbotConfig == "" or LevelbotConfig == 0) and TransferMobs == 1:
  2705.             LevelbotConfig = 1
  2706.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Levelbot Konfiguration: Transfer the mobs and stand and attack!")
  2707.             self.AttackAndStandButton.SetUpVisual("d:/ymir work/ui/public/large_button_03.sub")
  2708.         else:
  2709.             LevelbotConfig = ""
  2710.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Levelbot Konfiguration: Stand and attack deactivated!")
  2711.             self.AttackAndStandButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2712.        
  2713.     def SelectTransferMobs(self):
  2714.         global TransferMobs
  2715.         global LevelbotConfig
  2716.         if LevelbotConfig == 1 and TransferMobs == "":
  2717.             TransferMobs = 1
  2718.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Levelbot Konfiguration: Transfer the mobs and stand and attack!")
  2719.             self.TransferMobsButton.SetUpVisual("d:/ymir work/ui/public/large_button_03.sub")
  2720.         elif TransferMobs == "" and (LevelbotConfig == "" or LevelbotConfig == 0):
  2721.             TransferMobs = 1
  2722.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Levelbot Konfiguration: Transfer the mobs!")
  2723.             self.TransferMobsButton.SetUpVisual("d:/ymir work/ui/public/large_button_03.sub")
  2724.         else:
  2725.             TransferMobs = ""
  2726.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Levelbot Konfiguration: Transfer the mobs deactivated!")
  2727.             self.TransferMobsButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  2728.            
  2729.     def AttackSpeedStatus(self):
  2730.         global AttackSpeedHack
  2731.         CurrentAttackSpeedHack = self.AttackSpeedStats.GetText()
  2732.         if AttackSpeedHack == "":
  2733.             AttackSpeedHack = 1
  2734.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Attack Speed auf "+ str(CurrentAttackSpeedHack) + " gesetzt!")
  2735.             chr.SetAttackSpeed(int(CurrentAttackSpeedHack))
  2736.             self.AttackSpeedStatusButton.SetUpVisual("d:/ymir work/ui/public/middle_button_03.sub")
  2737.             self.AttackSpeedStatusButton.SetText("Aktiviert")
  2738.         elif int(CurrentAttackSpeedHack) < 0.01:
  2739.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Ungültiger Operator für den Attack Speed.")    
  2740.         else:
  2741.             if int(CurrentAttackSpeedHack) > 0.01:
  2742.                 AttackSpeedHack = ""
  2743.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Attack Speed Hack deaktiviert!")
  2744.                 chr.SetAttackSpeed(int(player.GetStatus(player.ATT_SPEED)))
  2745.                 self.AttackSpeedStatusButton.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  2746.                 self.AttackSpeedStatusButton.SetText("Deaktiviert")
  2747.             else:
  2748.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Ungültiger Operator für den Attack Speed.")    
  2749.            
  2750.    
  2751.     def MoveSpeedStatus(self):
  2752.         global MoveSpeedHack
  2753.         CurrentMoveSpeedHack = self.MoveSpeedStats.GetText()
  2754.         if MoveSpeedHack == "":
  2755.             MoveSpeedHack = 1
  2756.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Move Speed auf "+ str(CurrentMoveSpeedHack) + " gesetzt!")
  2757.             chr.SetMoveSpeed(int(CurrentMoveSpeedHack))
  2758.             if int(CurrentMoveSpeedHack) > 200:
  2759.                 self.MoveSpeedFix = WaitingDialog()
  2760.                 self.MoveSpeedFix.Open(0.5)
  2761.                 self.MoveSpeedFix.SAFE_SetTimeOverEvent(self.MoveSpeedHackFixLoop1)
  2762.             self.MoveSpeedStatusButton.SetUpVisual("d:/ymir work/ui/public/middle_button_03.sub")
  2763.             self.MoveSpeedStatusButton.SetText("Aktiviert")
  2764.         elif int(CurrentMoveSpeedHack) < 0.01:
  2765.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Ungültiger Operator für den Move Speed.")      
  2766.         else:
  2767.             if int(CurrentMoveSpeedHack) > 0.01:
  2768.                 MoveSpeedHack = ""
  2769.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Move Speed Hack deaktiviert!")
  2770.                 chr.SetMoveSpeed(int(player.GetStatus(player.MOVING_SPEED)))
  2771.                 self.MoveSpeedStatusButton.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  2772.                 self.MoveSpeedStatusButton.SetText("Deaktiviert")
  2773.             else:
  2774.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Ungültiger Operator für den Move Speed.")
  2775.                
  2776.     def MoveSpeedHackFixLoop1(self):
  2777.         chr.SetMoveSpeed(int(player.GetStatus(player.MOVING_SPEED)))
  2778.         self.MoveSpeedHackFixLoop2()
  2779.  
  2780.     def MoveSpeedHackFixLoop2(self):
  2781.         global MoveSpeedHack
  2782.         if MoveSpeedHack != "":
  2783.             CurrentMoveSpeedHack = self.MoveSpeedStats.GetText()
  2784.             chr.SetMoveSpeed(int(CurrentMoveSpeedHack))
  2785.             self.MoveSpeedFix = WaitingDialog()
  2786.             self.MoveSpeedFix.Open(0.5)
  2787.             self.MoveSpeedFix.SAFE_SetTimeOverEvent(self.MoveSpeedHackFixLoop1)    
  2788.  
  2789.     def PotionCheck(self):
  2790.         PositiveCount = 0
  2791.         for i in xrange(player.INVENTORY_PAGE_SIZE*2):
  2792.             ItemValue = player.GetItemIndex(i)
  2793.             if ItemValue == 27001 or ItemValue == 27002 or ItemValue == 27003:
  2794.                 PositiveCount += 1
  2795.         return PositiveCount
  2796.        
  2797.     def StartLevelBot(self):
  2798.         global LevelbotConfig
  2799.         global TransferMobs
  2800.         global Levelbot
  2801.         if Levelbot == "":
  2802.             if LevelbotConfig == 0:
  2803.                 Levelbot = 1
  2804.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Levelbot aktiviert!")
  2805.                 self.StartLevelBotButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
  2806.                 self.TeleportToMobs()
  2807.             elif (LevelbotConfig == 1 and TransferMobs == "") or LevelbotConfig == 1:
  2808.                 Levelbot = 1
  2809.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Levelbot aktiviert!")
  2810.                 self.StartLevelBotButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
  2811.                 self.AttackAndStand()
  2812.             elif LevelbotConfig == 1 and TransferMobs != "":
  2813.                 Levelbot = 1
  2814.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Levelbot aktiviert!")
  2815.                 self.StartLevelBotButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
  2816.                 self.AttackAndStand()
  2817.                 self.TransferMobs()
  2818.             elif TransferMobs != "":
  2819.                 Levelbot = 1
  2820.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Moblock aktiviert!")
  2821.                 self.StartLevelBotButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
  2822.                 self.TransferMobs()
  2823.             else:
  2824.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Bitte wähle eine Levelmethode!")        
  2825.         elif Levelbot != "":
  2826.             if LevelbotConfig == "" or TransferMobs == "":
  2827.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Bitte wähle eine Levelmethode!")
  2828.             else:
  2829.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Levelbot ist bereits aktiviert!")
  2830.        
  2831.     def TransferMobs(self):
  2832.         global SCAN_START
  2833.         global SCAN_END
  2834.         global Levelbot
  2835.         myVid = player.GetMainCharacterIndex()
  2836.         x, y, z = player.GetMainCharacterPosition()
  2837.         for i in xrange(SCAN_START, SCAN_END):
  2838.             if chr.INSTANCE_TYPE_ENEMY == chr.GetInstanceType(i) and Levelbot != "":
  2839.                 chr.SelectInstance(i)
  2840.                 chr.SetPixelPosition(int(x), int(y), int(z))
  2841.         if Levelbot != "":
  2842.             self.TeleportDelay = WaitingDialog()
  2843.             self.TeleportDelay.Open(5.0)
  2844.             self.TeleportDelay.SAFE_SetTimeOverEvent(self.TransferMobs)
  2845.            
  2846.         chr.SelectInstance(myVid)
  2847.        
  2848.     def StopLevelBot(self):
  2849.         global Levelbot
  2850.         global SetBase
  2851.         if Levelbot == "":
  2852.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Levelbot ist bereits deaktiviert!")
  2853.         elif Levelbot != "":
  2854.             Levelbot = ""
  2855.             SetBase = ""
  2856.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Levelbot deaktiviert!")
  2857.             self.OnBreakLevelBot()
  2858.             self.SetBasePositionButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")   
  2859.             self.StartLevelBotButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_01.sub")
  2860.            
  2861.     def SetTapferkeitsUmhange(self):
  2862.         global TapferkeitsUmhange
  2863.         if TapferkeitsUmhange == "":   
  2864.             TapferkeitsUmhange = 1
  2865.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Tapferkeitsumhänge wurden aktiviert.")
  2866.             self.TapferkeitsUmhangeButtonActivated.Show()
  2867.             self.TapferkeitsUmhangeImageActivated.Show()
  2868.             self.UseTapferkeitsUmhange()
  2869.         else:
  2870.             TapferkeitsUmhange = ""
  2871.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Tapferkeitsumhänge wurden deaktiviert.")
  2872.             self.TapferkeitsUmhangeButtonActivated.Hide()
  2873.             self.TapferkeitsUmhangeImageActivated.Hide()
  2874.            
  2875.     def UseTapferkeitsUmhange(self):
  2876.         if TapferkeitsUmhange != "":
  2877.             for i in xrange(player.INVENTORY_PAGE_SIZE*3):
  2878.                 ItemValue = player.GetItemIndex(i)
  2879.                 if ItemValue == 70038:
  2880.                     TapferkeitsUmhangeWaitingDelay = self.TapferkeitsUmhangeDelay.GetText()
  2881.                     net.SendItemUsePacket(i)
  2882.                     self.TapferkeitsUmhangDelay = WaitingDialog()
  2883.                     self.TapferkeitsUmhangDelay.Open(int(TapferkeitsUmhangeWaitingDelay))
  2884.                     self.TapferkeitsUmhangDelay.SAFE_SetTimeOverEvent(self.UseTapferkeitsUmhange)
  2885.                     break
  2886.         else:
  2887.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Tapferkeitsumhänge wurden deaktiviert.")        
  2888.        
  2889.     def SetBasePosition(self):
  2890.         global x0
  2891.         global y0
  2892.         global z0
  2893.         global x1
  2894.         global y1
  2895.         global x2
  2896.         global y2
  2897.         global SetBase
  2898.         radius = self.SetBaseRadiusEditline.GetText()
  2899.         (x, y, z) = player.GetMainCharacterPosition()
  2900.         x = float(x)
  2901.         y = float(y)
  2902.         z = float(z)
  2903.         radius = float(radius)
  2904.         if int(radius) < 10:
  2905.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Bitte wähle einen größeren Radius.")
  2906.         else:
  2907.             x1 = int(x-radius*100)
  2908.             y1 = int(y-radius*100)
  2909.             x2 = int(x+radius*100)
  2910.             y2 = int(y+radius*100)
  2911.             x0 = int(x)
  2912.             y0 = int(y)
  2913.             z0 = int(z)
  2914. #           chat.AppendChat(chat.CHAT_TYPE_INFO, "Base Position gesetzt auf: (" + str(x1/100) + ", " + str(y1/100) + ", " + str(z/100) + ")")
  2915. #           chat.AppendChat(chat.CHAT_TYPE_INFO, "Base Position gesetzt auf: (" + str(x2/100) + ", " + str(y2/100) + ", " + str(z/100) + ")")
  2916.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Aktuelle Position : (" + str(x0/100) + ", " + str(y0/100) + ", " + str(z0/100) + ")")
  2917.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Deine Base Range beträgt " + str(int(radius)) + " Koordinaten.")
  2918.             self.SetBasePositionButton.SetUpVisual("d:/ymir work/ui/public/large_button_03.sub")
  2919.             SetBase = 1
  2920.  
  2921.     def AttackAndStand(self):
  2922.         global x0
  2923.         global y0
  2924.         global z0
  2925.         global SetBase
  2926.         (x, y, z) = player.GetMainCharacterPosition()
  2927.         x0 = int(x)
  2928.         y0 = int(y)
  2929.         z0 = int(z)
  2930.         self.AttackAndStandDuration()
  2931.        
  2932.     def AttackAndStandDuration(self):
  2933.         global Levelbot
  2934.         if Levelbot != "":
  2935.             RandomRotation = app.GetRandom(0,7)
  2936.             chr.SetDirection(RandomRotation)
  2937.             player.SetAttackKeyState(TRUE) 
  2938.             self.SetBaseAgain = WaitingDialog()
  2939.             self.SetBaseAgain.Open(2.5)
  2940.             self.SetBaseAgain.SAFE_SetTimeOverEvent(self.WarpBaseAgain)
  2941.            
  2942.     def WarpBaseAgain(self):
  2943.         global x0
  2944.         global y0
  2945.         global z0
  2946.         chr.SetPixelPosition(int(x0), int(y0), int(z0))
  2947.         self.AttackAndStandDuration()
  2948.            
  2949.     def TransferBasePosition(self):
  2950.         global x0
  2951.         global y0
  2952.         global z0
  2953.         global x1
  2954.         global y1
  2955.         global x2
  2956.         global y2
  2957.         if x0 == "" or y0 == "":
  2958.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Du hast keine Base gesetzt.")
  2959.         else:
  2960. ###Teleportsteps by musicinstructor
  2961.             (ax, ay, az) = player.GetMainCharacterPosition()
  2962.             if int(x1) < int(ax): # links
  2963.                 while int(x0) < int(ax):
  2964.                     chr.SetPixelPosition(int(ax) - 2000, int(ay))
  2965.                     player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2966.                     player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2967.                     (ax, ay, az) = player.GetMainCharacterPosition()
  2968.  
  2969.                 chr.SetPixelPosition(int(x0), int(ay))
  2970.                 player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2971.                 player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2972.  
  2973.             if int(x2) > int(ax): # rechts
  2974.                 while int(x0) > int(ax):
  2975.                     chr.SetPixelPosition(int(ax) + 2000, int(ay))
  2976.                     player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2977.                     player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2978.                     (ax, ay, az) = player.GetMainCharacterPosition()
  2979.  
  2980.                 chr.SetPixelPosition(int(x0), int(ay))
  2981.                 player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2982.                 player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2983.  
  2984.             if int(y1) < int(ay): # unten
  2985.                 while int(y0) < int(ay):
  2986.                     chr.SetPixelPosition(int(ax), int(ay) - 2000)
  2987.                     player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2988.                     player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2989.                     (ax, ay, az) = player.GetMainCharacterPosition()
  2990.  
  2991.                 chr.SetPixelPosition(int(ax), int(y0))
  2992.                 player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2993.                 player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  2994.                
  2995.             if int(y2) > int(ay): # oben
  2996.                 while int(y0) > int(ay):
  2997.                     chr.SetPixelPosition(int(ax), int(ay) + 2000)
  2998.                     player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  2999.                     player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  3000.                     (ax, ay, az) = player.GetMainCharacterPosition()
  3001.  
  3002.                 chr.SetPixelPosition(int(ax), int(y0))
  3003.                 player.SetSingleDIKKeyState(app.DIK_UP, TRUE)
  3004.                 player.SetSingleDIKKeyState(app.DIK_UP, FALSE)
  3005.                
  3006.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Du wurdest auf deine Base Position zurückgesetzt(" + str(x0/100) + ", " + str(y0/100) + ", " + str(z0/100) + ")")
  3007.             import uiTarget
  3008.             global SCAN_START
  3009.             global SCAN_END
  3010.             for i in xrange(SCAN_START, SCAN_END):
  3011.                 if chr.INSTANCE_TYPE_ENEMY == chr.GetInstanceType(i):
  3012.                     uiTarget.BannVid = int(i)
  3013.                
  3014.     def DeactivateBasePosition(self):
  3015.         global SetBase
  3016.         if SetBase != "":  
  3017.             SetBase = ""
  3018.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Die Base Position wurde deaktiviert.")
  3019.             self.SetBasePositionButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")   
  3020.         else:
  3021.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Die Base Position ist nicht aktiviert.")         
  3022.        
  3023.     def GetTargetVID(self):
  3024.         chat.AppendChat(chat.CHAT_TYPE_INFO, "Target VID: " + str(player.GetTargetVID()))
  3025.        
  3026.     def SetVIDRange(self):
  3027.         global SCAN_START
  3028.         global SCAN_END
  3029.         for i in range(0, 6000000):
  3030.             if chr.INSTANCE_TYPE_ENEMY == chr.GetInstanceType(i):
  3031.                 SCAN_START = int(i-500)
  3032.                 SCAN_END = int(i+1000000)
  3033.                 break  
  3034.         chat.AppendChat(chat.CHAT_TYPE_INFO, "VID Range: " + str(SCAN_START) + ", " + str(SCAN_END))
  3035.        
  3036.     def TeleportToMobs(self):
  3037.         global mobVid
  3038.         myVid = player.GetMainCharacterIndex()
  3039.         player.SetAttackKeyState(FALSE)
  3040.         for i in range(SCAN_START, SCAN_END):
  3041.             if chr.INSTANCE_TYPE_ENEMY == chr.GetInstanceType(i) and Levelbot != "":
  3042.                 distance = player.GetCharacterDistance(i)
  3043.                 if distance <= 2000:
  3044.                     chr.SelectInstance(i)
  3045.                     mobX, mobY, mobZ = chr.GetPixelPosition(i)
  3046.                     chr.SelectInstance(myVid)
  3047.                     chr.SetPixelPosition(int(mobX), int(mobY), int(mobZ))
  3048.                     mobVid = i
  3049.                     RandomRotation = app.GetRandom(0,7)
  3050.                     chr.SetDirection(RandomRotation)
  3051.                     player.SetAttackKeyState(TRUE)
  3052.                     break
  3053.                
  3054.         if Levelbot != "":
  3055.             self.TeleportDelay = WaitingDialog()
  3056.             self.TeleportDelay.Open(2.5)
  3057.             self.TeleportDelay.SAFE_SetTimeOverEvent(self.TeleportToMobs)
  3058.            
  3059.     def OnBreakLevelBot(self):
  3060.         player.SetAttackKeyState(FALSE)
  3061.  
  3062.     def AutoRevive(self):
  3063.         global Levelbot
  3064.         global DoublePrevent
  3065.         global RestartBot
  3066.         net.SendChatPacket("/restart_here")
  3067.         if Levelbot != "":
  3068.             RestartBot = "on"
  3069.         self.StopLevelBot()
  3070.         PotionCount = self.PotionCheck()
  3071.         if int(PotionCount) >= 1:
  3072.             self.RefillHP(0)
  3073.             chat.AppendChat(chat.CHAT_TYPE_INFO, str(PotionCount) + " Rote Potions dabei")
  3074.             if str(RestartBot) == "on":
  3075.                 self.WaitingDialog.Open(7.0)
  3076.                 self.WaitingDialog.SAFE_SetTimeOverEvent(self.StartLevelBot)
  3077.         else:
  3078.             chat.AppendChat(chat.CHAT_TYPE_INFO, str(PotionCount) + " Rote Potions dabei") 
  3079.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Der Levelbot wird automatisch gestoppt") 
  3080.             RestartBot = "off"
  3081.         DoublePrevent = "inaktiv"
  3082.        
  3083.     def RefillHP(self, count):
  3084.         if count == 0:
  3085.             Maximum_TP = player.GetStatus(player.MAX_HP)
  3086.             Actual_TP = player.GetStatus(player.HP)
  3087.             for i in xrange(player.INVENTORY_PAGE_SIZE*2):
  3088.                 ItemValue = player.GetItemIndex(i)
  3089.                 if ItemValue == 27001 or ItemValue == 27002 or ItemValue == 27003:
  3090.                     net.SendItemUsePacket(i)
  3091.                     net.SendItemUsePacket(i)
  3092.                     net.SendItemUsePacket(i)
  3093.                     net.SendItemUsePacket(i)
  3094.                     net.SendItemUsePacket(i)
  3095.                     count = 1
  3096.                     break
  3097.        
  3098.     def AutoReviveDelay(self):
  3099.         self.WaitingDialog = WaitingDialog()
  3100.         self.WaitingDialog.Open(10.5)
  3101.         self.WaitingDialog.SAFE_SetTimeOverEvent(self.AutoRevive)
  3102.        
  3103.     def AutoPottRed(self):
  3104.         Maximum_TP = player.GetStatus(player.MAX_HP)
  3105.         Actual_TP = player.GetStatus(player.HP)
  3106.         Percent = self.AutoPottRedButtonPercentEditline.GetText()
  3107.         if (float(Actual_TP) / (float(Maximum_TP)) * 100) < int(Percent):
  3108.             for i in xrange(player.INVENTORY_PAGE_SIZE*3):
  3109.                 ItemValue = player.GetItemIndex(i)
  3110.                 if ItemValue == 27001 or ItemValue == 27002 or ItemValue == 27003:
  3111.                     net.SendItemUsePacket(i)
  3112.                     self.WaitingDelay(0)
  3113.                     break
  3114.  
  3115.     def AutoPottBlue(self):
  3116.         Maximum_MP = player.GetStatus(player.MAX_SP)
  3117.         Actual_MP = player.GetStatus(player.SP)
  3118.         Percent = self.AutoPottBlueButtonPercentEditline.GetText()
  3119.         if (float(Actual_MP) / (float(Maximum_MP)) * 100) < int(Percent):
  3120.             for i in xrange(player.INVENTORY_PAGE_SIZE*3):
  3121.                 ItemValue = player.GetItemIndex(i)
  3122.                 if ItemValue == 27004 or ItemValue == 27005 or ItemValue == 27006:
  3123.                     net.SendItemUsePacket(i)
  3124.                     self.WaitingDelay(1)
  3125.                     break
  3126.                    
  3127.     def WaitingDelay(self, flag):
  3128.         self.WarteSchleife = WaitingDialog()
  3129.         self.WarteSchleife.Open(0.2)
  3130.         if flag == 0:
  3131.             self.WarteSchleife.SAFE_SetTimeOverEvent(self.AutoPottRed)
  3132.         elif flag == 1:
  3133.             self.WarteSchleife.SAFE_SetTimeOverEvent(self.AutoPottBlue)
  3134.        
  3135.     def CheckState(self):  
  3136.         global AutoSkillUse1
  3137.         global AutoSkillUse2
  3138.         global AutoSkillUse2
  3139.         global AutoSkillUse3
  3140.         global AutoSkillUse4
  3141.         global AutoSkillUse5
  3142.         global AutoSkillUse6
  3143.         global AutoPottRed
  3144.         global AutoPottBlue
  3145.         global TapferkeitsUmhange
  3146.         global AutoRevive
  3147.         global TransferMobs
  3148.         global LevelbotConfig
  3149.         global AutoPickUp
  3150.         global AttackSpeedHack
  3151.         global MoveSpeedHack
  3152.         (x, y, z) = player.GetMainCharacterPosition()
  3153.         race = net.GetMainActorRace()
  3154.         group = net.GetMainActorSkillGroup()
  3155.         SkillGrade1 = player.GetSkillGrade(1)
  3156.         SkillGrade2 = player.GetSkillGrade(2)
  3157.         SkillGrade3 = player.GetSkillGrade(3)
  3158.         SkillGrade4 = player.GetSkillGrade(4)
  3159.         SkillGrade5 = player.GetSkillGrade(5)
  3160.         SkillGrade6 = player.GetSkillGrade(6)
  3161.         SkillLevel1 = player.GetSkillLevel(1)
  3162.         SkillLevel2 = player.GetSkillLevel(2)
  3163.         SkillLevel3 = player.GetSkillLevel(3)
  3164.         SkillLevel4 = player.GetSkillLevel(4)
  3165.         SkillLevel5 = player.GetSkillLevel(5)
  3166.         SkillLevel6 = player.GetSkillLevel(6)
  3167.         if 1 == SkillGrade1:
  3168.             SkillLevel1 += 19
  3169.         elif 2 == SkillGrade1:
  3170.             SkillLevel1 += 29
  3171.         elif 3 == SkillGrade1:
  3172.             SkillLevel1 = 40
  3173.         if 1 == SkillGrade2:
  3174.             SkillLevel2 += 19
  3175.         elif 2 == SkillGrade2:
  3176.             SkillLevel2 += 29
  3177.         elif 3 == SkillGrade2:
  3178.             SkillLevel2 = 40
  3179.         if 1 == SkillGrade3:
  3180.             SkillLevel3 += 19
  3181.         elif 2 == SkillGrade3:
  3182.             SkillLevel3 += 29
  3183.         elif 3 == SkillGrade3:
  3184.             SkillLevel3 = 40
  3185.         if 1 == SkillGrade4:
  3186.             SkillLevel4 += 19
  3187.         elif 2 == SkillGrade4:
  3188.             SkillLevel4 += 29
  3189.         elif 3 == SkillGrade4:
  3190.             SkillLevel4 = 40
  3191.         if 1 == SkillGrade5:
  3192.             SkillLevel5 += 19
  3193.         elif 2 == SkillGrade5:
  3194.             SkillLevel5 += 29
  3195.         elif 3 == SkillGrade5:
  3196.             SkillLevel5 = 40
  3197.         if 1 == SkillGrade6:
  3198.             SkillLevel6 += 19
  3199.         elif 2 == SkillGrade6:
  3200.             SkillLevel6 += 29
  3201.         elif 3 == SkillGrade6:
  3202.             SkillLevel6 = 40
  3203.            
  3204.         if SkillLevel1 < 20:
  3205.             if ((int(race) == 0) or ((int(race) == 4))):
  3206.                 if int(group) == 1:
  3207.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/warrior/samyeon_01.sub")
  3208.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/warrior/samyeon_01.sub")
  3209.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/warrior/samyeon_01.sub")
  3210.                 elif int(group) == 2:
  3211.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/warrior/gigongcham_01.sub")
  3212.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/warrior/gigongcham_01.sub")
  3213.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/warrior/gigongcham_01.sub")
  3214.             elif (int(race) == 1) or (int(race) == 5):
  3215.                 if int(group) == 1:
  3216.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/assassin/amseup_01.sub")
  3217.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/assassin/amseup_01.sub")
  3218.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/assassin/amseup_01.sub")
  3219.                 elif int(group) == 2:
  3220.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/assassin/yeonsa_01.sub")
  3221.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/assassin/yeonsa_01.sub")
  3222.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/assassin/yeonsa_01.sub")
  3223.             elif (int(race) == 2) or (int(race) == 6):
  3224.                 if int(group) == 1:
  3225.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/sura/swaeryeong_01.sub")
  3226.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/sura/swaeryeong_01.sub")
  3227.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/sura/swaeryeong_01.sub")
  3228.                 elif int(group) == 2:
  3229.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/sura/maryeong_01.sub")
  3230.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/sura/maryeong_01.sub")
  3231.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/sura/maryeong_01.sub")
  3232.             elif (int(race) == 3) or (int(race) == 7):
  3233.                 if int(group) == 1:
  3234.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/shaman/bipabu_01.sub")
  3235.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/shaman/bipabu_01.sub")
  3236.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/shaman/bipabu_01.sub")
  3237.                 elif int(group) == 2:
  3238.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/shaman/noejeon_01.sub")
  3239.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/shaman/noejeon_01.sub")
  3240.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/shaman/noejeon_01.sub")
  3241.         elif SkillLevel1 < 30 and SkillLevel1 >= 20:
  3242.             if ((int(race) == 0) or ((int(race) == 4))):
  3243.                 if int(group) == 1:
  3244.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/warrior/samyeon_02.sub")
  3245.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/warrior/samyeon_02.sub")
  3246.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/warrior/samyeon_02.sub")
  3247.                 elif int(group) == 2:
  3248.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/warrior/gigongcham_02.sub")
  3249.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/warrior/gigongcham_02.sub")
  3250.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/warrior/gigongcham_02.sub")
  3251.             elif (int(race) == 1) or (int(race) == 5):
  3252.                 if int(group) == 1:
  3253.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/assassin/amseup_02.sub")
  3254.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/assassin/amseup_02.sub")
  3255.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/assassin/amseup_02.sub")
  3256.                 elif int(group) == 2:
  3257.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/assassin/yeonsa_02.sub")
  3258.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/assassin/yeonsa_02.sub")
  3259.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/assassin/yeonsa_02.sub")
  3260.             elif (int(race) == 2) or (int(race) == 6):
  3261.                 if int(group) == 1:
  3262.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/sura/swaeryeong_02.sub")
  3263.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/sura/swaeryeong_02.sub")
  3264.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/sura/swaeryeong_02.sub")
  3265.                 elif int(group) == 2:
  3266.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/sura/maryeong_02.sub")
  3267.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/sura/maryeong_02.sub")
  3268.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/sura/maryeong_02.sub")
  3269.             elif (int(race) == 3) or (int(race) == 7):
  3270.                 if int(group) == 1:
  3271.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/shaman/bipabu_02.sub")
  3272.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/shaman/bipabu_02.sub")
  3273.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/shaman/bipabu_02.sub")
  3274.                 elif int(group) == 2:
  3275.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/shaman/noejeon_02.sub")
  3276.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/shaman/noejeon_02.sub")
  3277.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/shaman/noejeon_02.sub")
  3278.         elif SkillLevel1 >= 30:
  3279.             if ((int(race) == 0) or ((int(race) == 4))):
  3280.                 if int(group) == 1:
  3281.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/warrior/samyeon_03.sub")
  3282.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/warrior/samyeon_03.sub")
  3283.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/warrior/samyeon_03.sub")
  3284.                 elif int(group) == 2:
  3285.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/warrior/gigongcham_03.sub")
  3286.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/warrior/gigongcham_03.sub")
  3287.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/warrior/gigongcham_03.sub")
  3288.             elif (int(race) == 1) or (int(race) == 5):
  3289.                 if int(group) == 1:
  3290.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/assassin/amseup_03.sub")
  3291.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/assassin/amseup_03.sub")
  3292.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/assassin/amseup_03.sub")
  3293.                 elif int(group) == 2:
  3294.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/assassin/yeonsa_03.sub")
  3295.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/assassin/yeonsa_03.sub")
  3296.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/assassin/yeonsa_03.sub")
  3297.             elif (int(race) == 2) or (int(race) == 6):
  3298.                 if int(group) == 1:
  3299.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/sura/swaeryeong_03.sub")
  3300.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/sura/swaeryeong_03.sub")
  3301.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/sura/swaeryeong_03.sub")
  3302.                 elif int(group) == 2:
  3303.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/sura/maryeong_03.sub")
  3304.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/sura/maryeong_03.sub")
  3305.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/sura/maryeong_03.sub")
  3306.             elif (int(race) == 3) or (int(race) == 7):
  3307.                 if int(group) == 1:
  3308.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/shaman/bipabu_03.sub")
  3309.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/shaman/bipabu_03.sub")
  3310.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/shaman/bipabu_03.sub")
  3311.                 elif int(group) == 2:
  3312.                     self.AutoSkillUse1.SetUpVisual("d:/ymir work/ui/skill/shaman/noejeon_03.sub")
  3313.                     self.AutoSkillUse1.SetOverVisual("d:/ymir work/ui/skill/shaman/noejeon_03.sub")
  3314.                     self.AutoSkillUse1.SetDownVisual("d:/ymir work/ui/skill/shaman/noejeon_03.sub")
  3315.         if SkillLevel2 < 20:
  3316.             if ((int(race) == 0) or ((int(race) == 4))):
  3317.                 if int(group) == 1:
  3318.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/warrior/palbang_01.sub")
  3319.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/warrior/palbang_01.sub")
  3320.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/warrior/palbang_01.sub")
  3321.                 elif int(group) == 2:
  3322.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/warrior/gyeoksan_01.sub")
  3323.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/warrior/gyeoksan_01.sub")
  3324.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/warrior/gyeoksan_01.sub")
  3325.             elif (int(race) == 1) or (int(race) == 5):
  3326.                 if int(group) == 1:
  3327.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/assassin/gungsin_01.sub")
  3328.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/assassin/gungsin_01.sub")
  3329.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/assassin/gungsin_01.sub")
  3330.                 elif int(group) == 2:
  3331.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/assassin/gwangyeok_01.sub")
  3332.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/assassin/gwangyeok_01.sub")
  3333.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/assassin/gwangyeok_01.sub")
  3334.             elif (int(race) == 2) or (int(race) == 6):
  3335.                 if int(group) == 1:
  3336.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/sura/yonggwon_01.sub")
  3337.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/sura/yonggwon_01.sub")
  3338.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/sura/yonggwon_01.sub")
  3339.                 elif int(group) == 2:
  3340.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/sura/hwayeom_01.sub")
  3341.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/sura/hwayeom_01.sub")
  3342.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/sura/hwayeom_01.sub")
  3343.             elif (int(race) == 3) or (int(race) == 7):
  3344.                 if int(group) == 1:
  3345.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/shaman/yongpa_01.sub")
  3346.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/shaman/yongpa_01.sub")
  3347.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/shaman/yongpa_01.sub")
  3348.                 elif int(group) == 2:
  3349.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/shaman/byeorak_01.sub")
  3350.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/shaman/byeorak_01.sub")
  3351.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/shaman/byeorak_01.sub")
  3352.         elif SkillLevel2 < 30 and SkillLevel2 >= 20:
  3353.             if ((int(race) == 0) or ((int(race) == 4))):
  3354.                 if int(group) == 1:
  3355.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/warrior/palbang_02.sub")
  3356.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/warrior/palbang_02.sub")
  3357.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/warrior/palbang_02.sub")
  3358.                 elif int(group) == 2:
  3359.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/warrior/gyeoksan_02.sub")
  3360.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/warrior/gyeoksan_02.sub")
  3361.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/warrior/gyeoksan_02.sub")
  3362.             elif (int(race) == 1) or (int(race) == 5):
  3363.                 if int(group) == 1:
  3364.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/assassin/gungsin_02.sub")
  3365.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/assassin/gungsin_02.sub")
  3366.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/assassin/gungsin_02.sub")
  3367.                 elif int(group) == 2:
  3368.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/assassin/gwangyeok_02.sub")
  3369.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/assassin/gwangyeok_02.sub")
  3370.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/assassin/gwangyeok_02.sub")
  3371.             elif (int(race) == 2) or (int(race) == 6):
  3372.                 if int(group) == 1:
  3373.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/sura/yonggwon_02.sub")
  3374.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/sura/yonggwon_02.sub")
  3375.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/sura/yonggwon_02.sub")
  3376.                 elif int(group) == 2:
  3377.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/sura/hwayeom_02.sub")
  3378.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/sura/hwayeom_02.sub")
  3379.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/sura/hwayeom_02.sub")
  3380.             elif (int(race) == 3) or (int(race) == 7):
  3381.                 if int(group) == 1:
  3382.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/shaman/yongpa_02.sub")
  3383.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/shaman/yongpa_02.sub")
  3384.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/shaman/yongpa_02.sub")
  3385.                 elif int(group) == 2:
  3386.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/shaman/byeorak_02.sub")
  3387.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/shaman/byeorak_02.sub")
  3388.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/shaman/byeorak_02.sub")
  3389.         elif SkillLevel2 >= 30:
  3390.             if ((int(race) == 0) or ((int(race) == 4))):
  3391.                 if int(group) == 1:
  3392.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/warrior/palbang_03.sub")
  3393.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/warrior/palbang_03.sub")
  3394.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/warrior/palbang_03.sub")
  3395.                 elif int(group) == 2:
  3396.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/warrior/gyeoksan_03.sub")
  3397.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/warrior/gyeoksan_03.sub")
  3398.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/warrior/gyeoksan_03.sub")
  3399.             elif (int(race) == 1) or (int(race) == 5):
  3400.                 if int(group) == 1:
  3401.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/assassin/gungsin_03.sub")
  3402.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/assassin/gungsin_03.sub")
  3403.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/assassin/gungsin_03.sub")
  3404.                 elif int(group) == 2:
  3405.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/assassin/gwangyeok_03.sub")
  3406.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/assassin/gwangyeok_03.sub")
  3407.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/assassin/gwangyeok_03.sub")
  3408.             elif (int(race) == 2) or (int(race) == 6):
  3409.                 if int(group) == 1:
  3410.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/sura/yonggwon_03.sub")
  3411.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/sura/yonggwon_03.sub")
  3412.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/sura/yonggwon_03.sub")
  3413.                 elif int(group) == 2:
  3414.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/sura/hwayeom_03.sub")
  3415.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/sura/hwayeom_03.sub")
  3416.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/sura/hwayeom_03.sub")
  3417.             elif (int(race) == 3) or (int(race) == 7):
  3418.                 if int(group) == 1:
  3419.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/shaman/yongpa_03.sub")
  3420.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/shaman/yongpa_03.sub")
  3421.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/shaman/yongpa_03.sub")
  3422.                 elif int(group) == 2:
  3423.                     self.AutoSkillUse2.SetUpVisual("d:/ymir work/ui/skill/shaman/byeorak_03.sub")
  3424.                     self.AutoSkillUse2.SetOverVisual("d:/ymir work/ui/skill/shaman/byeorak_03.sub")
  3425.                     self.AutoSkillUse2.SetDownVisual("d:/ymir work/ui/skill/shaman/byeorak_03.sub")
  3426.         if SkillLevel3 < 20:
  3427.             if ((int(race) == 0) or ((int(race) == 4))):
  3428.                 if int(group) == 1:
  3429.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/warrior/jeongwi_01.sub")
  3430.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/warrior/jeongwi_01.sub")
  3431.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/warrior/jeongwi_01.sub")
  3432.                 elif int(group) == 2:
  3433.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/warrior/daejin_01.sub")
  3434.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/warrior/daejin_01.sub")
  3435.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/warrior/daejin_01.sub")
  3436.             elif (int(race) == 1) or (int(race) == 5):
  3437.                 if int(group) == 1:
  3438.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/assassin/charyun_01.sub")
  3439.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/assassin/charyun_01.sub")
  3440.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/assassin/charyun_01.sub")
  3441.                 elif int(group) == 2:
  3442.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/assassin/hwajo_01.sub")
  3443.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/assassin/hwajo_01.sub")
  3444.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/assassin/hwajo_01.sub")
  3445.             elif (int(race) == 2) or (int(race) == 6):
  3446.                 if int(group) == 1:
  3447.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/sura/gwigeom_01.sub")
  3448.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/sura/gwigeom_01.sub")
  3449.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/sura/gwigeom_01.sub")
  3450.                 elif int(group) == 2:
  3451.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/sura/muyeong_01.sub")
  3452.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/sura/muyeong_01.sub")
  3453.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/sura/muyeong_01.sub")
  3454.             elif (int(race) == 3) or (int(race) == 7):
  3455.                 if int(group) == 1:
  3456.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/shaman/paeryong_01.sub")
  3457.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/shaman/paeryong_01.sub")
  3458.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/shaman/paeryong_01.sub")
  3459.                 elif int(group) == 2:
  3460.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/shaman/pokroe_01.sub")
  3461.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/shaman/pokroe_01.sub")
  3462.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/shaman/pokroe_01.sub")
  3463.         elif SkillLevel3 < 30 and SkillLevel3 >= 20:
  3464.             if ((int(race) == 0) or ((int(race) == 4))):
  3465.                 if int(group) == 1:
  3466.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/warrior/jeongwi_02.sub")
  3467.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/warrior/jeongwi_02.sub")
  3468.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/warrior/jeongwi_02.sub")
  3469.                 elif int(group) == 2:
  3470.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/warrior/daejin_02.sub")
  3471.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/warrior/daejin_02.sub")
  3472.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/warrior/daejin_02.sub")
  3473.             elif (int(race) == 1) or (int(race) == 5):
  3474.                 if int(group) == 1:
  3475.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/assassin/charyun_02.sub")
  3476.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/assassin/charyun_02.sub")
  3477.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/assassin/charyun_02.sub")
  3478.                 elif int(group) == 2:
  3479.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/assassin/hwajo_02.sub")
  3480.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/assassin/hwajo_02.sub")
  3481.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/assassin/hwajo_02.sub")
  3482.             elif (int(race) == 2) or (int(race) == 6):
  3483.                 if int(group) == 1:
  3484.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/sura/gwigeom_02.sub")
  3485.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/sura/gwigeom_02.sub")
  3486.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/sura/gwigeom_02.sub")
  3487.                 elif int(group) == 2:
  3488.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/sura/muyeong_02.sub")
  3489.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/sura/muyeong_02.sub")
  3490.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/sura/muyeong_02.sub")
  3491.             elif (int(race) == 3) or (int(race) == 7):
  3492.                 if int(group) == 1:
  3493.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/shaman/paeryong_02.sub")
  3494.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/shaman/paeryong_02.sub")
  3495.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/shaman/paeryong_02.sub")
  3496.                 elif int(group) == 2:
  3497.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/shaman/pokroe_02.sub")
  3498.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/shaman/pokroe_02.sub")
  3499.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/shaman/pokroe_02.sub")
  3500.         elif SkillLevel3 >= 30:
  3501.             if ((int(race) == 0) or ((int(race) == 4))):
  3502.                 if int(group) == 1:
  3503.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/warrior/jeongwi_03.sub")
  3504.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/warrior/jeongwi_03.sub")
  3505.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/warrior/jeongwi_03.sub")
  3506.                 elif int(group) == 2:
  3507.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/warrior/daejin_03.sub")
  3508.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/warrior/daejin_03.sub")
  3509.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/warrior/daejin_03.sub")
  3510.             elif (int(race) == 1) or (int(race) == 5):
  3511.                 if int(group) == 1:
  3512.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/assassin/charyun_03.sub")
  3513.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/assassin/charyun_03.sub")
  3514.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/assassin/charyun_03.sub")
  3515.                 elif int(group) == 2:
  3516.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/assassin/hwajo_03.sub")
  3517.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/assassin/hwajo_03.sub")
  3518.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/assassin/hwajo_03.sub")
  3519.             elif (int(race) == 2) or (int(race) == 6):
  3520.                 if int(group) == 1:
  3521.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/sura/gwigeom_03.sub")
  3522.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/sura/gwigeom_03.sub")
  3523.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/sura/gwigeom_03.sub")
  3524.                 elif int(group) == 2:
  3525.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/sura/muyeong_03.sub")
  3526.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/sura/muyeong_03.sub")
  3527.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/sura/muyeong_03.sub")
  3528.             elif (int(race) == 3) or (int(race) == 7):
  3529.                 if int(group) == 1:
  3530.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/shaman/paeryong_03.sub")
  3531.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/shaman/paeryong_03.sub")
  3532.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/shaman/paeryong_03.sub")
  3533.                 elif int(group) == 2:
  3534.                     self.AutoSkillUse3.SetUpVisual("d:/ymir work/ui/skill/shaman/pokroe_03.sub")
  3535.                     self.AutoSkillUse3.SetOverVisual("d:/ymir work/ui/skill/shaman/pokroe_03.sub")
  3536.                     self.AutoSkillUse3.SetDownVisual("d:/ymir work/ui/skill/shaman/pokroe_03.sub")
  3537.         if SkillLevel4 < 20:
  3538.             if ((int(race) == 0) or ((int(race) == 4))):
  3539.                 if int(group) == 1:
  3540.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/warrior/geomgyeong_01.sub")
  3541.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/warrior/geomgyeong_01.sub")
  3542.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/warrior/geomgyeong_01.sub")
  3543.                 elif int(group) == 2:
  3544.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/warrior/cheongeun_01.sub")
  3545.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/warrior/cheongeun_01.sub")
  3546.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/warrior/cheongeun_01.sub")
  3547.             elif (int(race) == 1) or (int(race) == 5):
  3548.                 if int(group) == 1:
  3549.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/assassin/eunhyeong_01.sub")
  3550.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/assassin/eunhyeong_01.sub")
  3551.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/assassin/eunhyeong_01.sub")
  3552.                 elif int(group) == 2:
  3553.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/assassin/gyeonggong_01.sub")
  3554.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/assassin/gyeonggong_01.sub")
  3555.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/assassin/gyeonggong_01.sub")
  3556.             elif (int(race) == 2) or (int(race) == 6):
  3557.                 if int(group) == 1:
  3558.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/sura/gongpo_01.sub")
  3559.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/sura/gongpo_01.sub")
  3560.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/sura/gongpo_01.sub")
  3561.                 elif int(group) == 2:
  3562.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/sura/heuksin_01.sub")
  3563.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/sura/heuksin_01.sub")
  3564.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/sura/heuksin_01.sub")
  3565.             elif (int(race) == 3) or (int(race) == 7):
  3566.                 if int(group) == 1:
  3567.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/shaman/hosin_01.sub")
  3568.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/shaman/hosin_01.sub")
  3569.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/shaman/hosin_01.sub")
  3570.                 elif int(group) == 2:
  3571.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/shaman/jeongeop_01.sub")
  3572.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/shaman/jeongeop_01.sub")
  3573.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/shaman/jeongeop_01.sub")
  3574.         elif SkillLevel4 < 30 and SkillLevel4 >= 20:
  3575.             if ((int(race) == 0) or ((int(race) == 4))):
  3576.                 if int(group) == 1:
  3577.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/warrior/geomgyeong_02.sub")
  3578.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/warrior/geomgyeong_02.sub")
  3579.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/warrior/geomgyeong_02.sub")
  3580.                 elif int(group) == 2:
  3581.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/warrior/cheongeun_02.sub")
  3582.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/warrior/cheongeun_02.sub")
  3583.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/warrior/cheongeun_02.sub")
  3584.             elif (int(race) == 1) or (int(race) == 5):
  3585.                 if int(group) == 1:
  3586.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/assassin/eunhyeong_02.sub")
  3587.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/assassin/eunhyeong_02.sub")
  3588.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/assassin/eunhyeong_02.sub")
  3589.                 elif int(group) == 2:
  3590.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/assassin/gyeonggong_02.sub")
  3591.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/assassin/gyeonggong_02.sub")
  3592.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/assassin/gyeonggong_02.sub")
  3593.             elif (int(race) == 2) or (int(race) == 6):
  3594.                 if int(group) == 1:
  3595.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/sura/gongpo_02.sub")
  3596.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/sura/gongpo_02.sub")
  3597.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/sura/gongpo_02.sub")
  3598.                 elif int(group) == 2:
  3599.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/sura/heuksin_02.sub")
  3600.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/sura/heuksin_02.sub")
  3601.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/sura/heuksin_02.sub")
  3602.             elif (int(race) == 3) or (int(race) == 7):
  3603.                 if int(group) == 1:
  3604.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/shaman/hosin_02.sub")
  3605.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/shaman/hosin_02.sub")
  3606.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/shaman/hosin_02.sub")
  3607.                 elif int(group) == 2:
  3608.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/shaman/jeongeop_02.sub")
  3609.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/shaman/jeongeop_02.sub")
  3610.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/shaman/jeongeop_02.sub")
  3611.         elif SkillLevel4 >= 30:
  3612.             if ((int(race) == 0) or ((int(race) == 4))):
  3613.                 if int(group) == 1:
  3614.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/warrior/geomgyeong_03.sub")
  3615.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/warrior/geomgyeong_03.sub")
  3616.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/warrior/geomgyeong_03.sub")
  3617.                 elif int(group) == 2:
  3618.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/warrior/cheongeun_03.sub")
  3619.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/warrior/cheongeun_03.sub")
  3620.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/warrior/cheongeun_03.sub")
  3621.             elif (int(race) == 1) or (int(race) == 5):
  3622.                 if int(group) == 1:
  3623.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/assassin/eunhyeong_03.sub")
  3624.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/assassin/eunhyeong_03.sub")
  3625.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/assassin/eunhyeong_03.sub")
  3626.                 elif int(group) == 2:
  3627.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/assassin/gyeonggong_03.sub")
  3628.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/assassin/gyeonggong_03.sub")
  3629.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/assassin/gyeonggong_03.sub")
  3630.             elif (int(race) == 2) or (int(race) == 6):
  3631.                 if int(group) == 1:
  3632.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/sura/gongpo_03.sub")
  3633.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/sura/gongpo_03.sub")
  3634.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/sura/gongpo_03.sub")
  3635.                 elif int(group) == 2:
  3636.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/sura/heuksin_03.sub")
  3637.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/sura/heuksin_03.sub")
  3638.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/sura/heuksin_03.sub")
  3639.             elif (int(race) == 3) or (int(race) == 7):
  3640.                 if int(group) == 1:
  3641.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/shaman/hosin_03.sub")
  3642.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/shaman/hosin_03.sub")
  3643.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/shaman/hosin_03.sub")
  3644.                 elif int(group) == 2:
  3645.                     self.AutoSkillUse4.SetUpVisual("d:/ymir work/ui/skill/shaman/jeongeop_03.sub")
  3646.                     self.AutoSkillUse4.SetOverVisual("d:/ymir work/ui/skill/shaman/jeongeop_03.sub")
  3647.                     self.AutoSkillUse4.SetDownVisual("d:/ymir work/ui/skill/shaman/jeongeop_03.sub")
  3648.         if SkillLevel5 < 20:
  3649.             if ((int(race) == 0) or ((int(race) == 4))):
  3650.                 if int(group) == 1:
  3651.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/warrior/tanhwan_01.sub")
  3652.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/warrior/tanhwan_01.sub")
  3653.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/warrior/tanhwan_01.sub")
  3654.                 elif int(group) == 2:
  3655.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/warrior/geompung_01.sub")
  3656.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/warrior/geompung_01.sub")
  3657.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/warrior/geompung_01.sub")
  3658.             elif (int(race) == 1) or (int(race) == 5):
  3659.                 if int(group) == 1:
  3660.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/assassin/sangong_01.sub")
  3661.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/assassin/sangong_01.sub")
  3662.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/assassin/sangong_01.sub")
  3663.                 elif int(group) == 2:
  3664.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/assassin/gigung_01.sub")
  3665.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/assassin/gigung_01.sub")
  3666.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/assassin/gigung_01.sub")
  3667.             elif (int(race) == 2) or (int(race) == 6):
  3668.                 if int(group) == 1:
  3669.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/sura/jumagap_01.sub")
  3670.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/sura/jumagap_01.sub")
  3671.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/sura/jumagap_01.sub")
  3672.                 elif int(group) == 2:
  3673.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/sura/tusok_01.sub")
  3674.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/sura/tusok_01.sub")
  3675.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/sura/tusok_01.sub")
  3676.             elif (int(race) == 3) or (int(race) == 7):
  3677.                 if int(group) == 1:
  3678.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/shaman/boho_01.sub")
  3679.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/shaman/boho_01.sub")
  3680.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/shaman/boho_01.sub")
  3681.                 elif int(group) == 2:
  3682.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/shaman/kwaesok_01.sub")
  3683.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/shaman/kwaesok_01.sub")
  3684.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/shaman/kwaesok_01.sub")
  3685.         elif SkillLevel5 < 30 and SkillLevel5 >= 20:
  3686.             if ((int(race) == 0) or ((int(race) == 4))):
  3687.                 if int(group) == 1:
  3688.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/warrior/tanhwan_02.sub")
  3689.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/warrior/tanhwan_02.sub")
  3690.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/warrior/tanhwan_02.sub")
  3691.                 elif int(group) == 2:
  3692.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/warrior/geompung_02.sub")
  3693.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/warrior/geompung_02.sub")
  3694.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/warrior/geompung_02.sub")
  3695.             elif (int(race) == 1) or (int(race) == 5):
  3696.                 if int(group) == 1:
  3697.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/assassin/sangong_02.sub")
  3698.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/assassin/sangong_02.sub")
  3699.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/assassin/sangong_02.sub")
  3700.                 elif int(group) == 2:
  3701.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/assassin/gigung_02.sub")
  3702.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/assassin/gigung_02.sub")
  3703.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/assassin/gigung_02.sub")
  3704.             elif (int(race) == 2) or (int(race) == 6):
  3705.                 if int(group) == 1:
  3706.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/sura/jumagap_02.sub")
  3707.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/sura/jumagap_02.sub")
  3708.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/sura/jumagap_02.sub")
  3709.                 elif int(group) == 2:
  3710.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/sura/tusok_02.sub")
  3711.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/sura/tusok_02.sub")
  3712.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/sura/tusok_02.sub")
  3713.             elif (int(race) == 3) or (int(race) == 7):
  3714.                 if int(group) == 1:
  3715.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/shaman/boho_02.sub")
  3716.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/shaman/boho_02.sub")
  3717.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/shaman/boho_02.sub")
  3718.                 elif int(group) == 2:
  3719.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/shaman/kwaesok_02.sub")
  3720.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/shaman/kwaesok_02.sub")
  3721.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/shaman/kwaesok_02.sub")
  3722.         elif SkillLevel5 >= 30:
  3723.             if ((int(race) == 0) or ((int(race) == 4))):
  3724.                 if int(group) == 1:
  3725.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/warrior/tanhwan_03.sub")
  3726.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/warrior/tanhwan_03.sub")
  3727.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/warrior/tanhwan_03.sub")
  3728.                 elif int(group) == 2:
  3729.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/warrior/geompung_03.sub")
  3730.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/warrior/geompung_03.sub")
  3731.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/warrior/geompung_03.sub")
  3732.             elif (int(race) == 1) or (int(race) == 5):
  3733.                 if int(group) == 1:
  3734.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/assassin/sangong_03.sub")
  3735.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/assassin/sangong_03.sub")
  3736.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/assassin/sangong_03.sub")
  3737.                 elif int(group) == 2:
  3738.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/assassin/gigung_03.sub")
  3739.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/assassin/gigung_03.sub")
  3740.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/assassin/gigung_03.sub")
  3741.             elif (int(race) == 2) or (int(race) == 6):
  3742.                 if int(group) == 1:
  3743.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/sura/jumagap_03.sub")
  3744.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/sura/jumagap_03.sub")
  3745.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/sura/jumagap_03.sub")
  3746.                 elif int(group) == 2:
  3747.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/sura/tusok_03.sub")
  3748.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/sura/tusok_03.sub")
  3749.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/sura/tusok_03.sub")
  3750.             elif (int(race) == 3) or (int(race) == 7):
  3751.                 if int(group) == 1:
  3752.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/shaman/boho_03.sub")
  3753.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/shaman/boho_03.sub")
  3754.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/shaman/boho_03.sub")
  3755.                 elif int(group) == 2:
  3756.                     self.AutoSkillUse5.SetUpVisual("d:/ymir work/ui/skill/shaman/kwaesok_03.sub")
  3757.                     self.AutoSkillUse5.SetOverVisual("d:/ymir work/ui/skill/shaman/kwaesok_03.sub")
  3758.                     self.AutoSkillUse5.SetDownVisual("d:/ymir work/ui/skill/shaman/kwaesok_03.sub")
  3759.         if SkillLevel6 < 20:
  3760.             if ((int(race) == 0) or ((int(race) == 4))):
  3761.                 if int(group) == 1:
  3762.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/warrior/gihyeol_01.sub")
  3763.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/warrior/gihyeol_01.sub")
  3764.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/warrior/gihyeol_01.sub")
  3765.                 elif int(group) == 2:
  3766.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/warrior/noegeom_01.sub")
  3767.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/warrior/noegeom_01.sub")
  3768.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/warrior/noegeom_01.sub")
  3769.             elif (int(race) == 1) or (int(race) == 5):
  3770.                 if int(group) == 1:
  3771.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/assassin/seomjeon_01.sub")
  3772.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/assassin/seomjeon_01.sub")
  3773.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/assassin/seomjeon_01.sub")
  3774.                 elif int(group) == 2:
  3775.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/assassin/seomgwang_01.sub")
  3776.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/assassin/seomgwang_01.sub")
  3777.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/assassin/seomgwang_01.sub")
  3778.             elif (int(race) == 2) or (int(race) == 6):
  3779.                 if int(group) == 1:
  3780.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/sura/pabeop_01.sub")
  3781.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/sura/pabeop_01.sub")
  3782.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/sura/pabeop_01.sub")
  3783.                 elif int(group) == 2:
  3784.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/sura/geomhwan_01.sub")
  3785.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/sura/geomhwan_01.sub")
  3786.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/sura/geomhwan_01.sub")
  3787.             elif (int(race) == 3) or (int(race) == 7):
  3788.                 if int(group) == 1:
  3789.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/shaman/gicheon_01.sub")
  3790.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/shaman/gicheon_01.sub")
  3791.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/shaman/gicheon_01.sub")
  3792.                 elif int(group) == 2:
  3793.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/shaman/jeungryeok_01.sub")
  3794.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/shaman/jeungryeok_01.sub")
  3795.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/shaman/jeungryeok_01.sub")
  3796.         elif SkillLevel6 < 30 and SkillLevel6 >= 20:
  3797.             if ((int(race) == 0) or ((int(race) == 4))):
  3798.                 if int(group) == 1:
  3799.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/warrior/gihyeol_02.sub")
  3800.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/warrior/gihyeol_02.sub")
  3801.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/warrior/gihyeol_02.sub")
  3802.                 elif int(group) == 2:
  3803.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/warrior/noegeom_02.sub")
  3804.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/warrior/noegeom_02.sub")
  3805.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/warrior/noegeom_02.sub")
  3806.             elif (int(race) == 1) or (int(race) == 5):
  3807.                 if int(group) == 1:
  3808.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/assassin/seomjeon_02.sub")
  3809.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/assassin/seomjeon_02.sub")
  3810.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/assassin/seomjeon_02.sub")
  3811.                 elif int(group) == 2:
  3812.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/assassin/seomgwang_02.sub")
  3813.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/assassin/seomgwang_02.sub")
  3814.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/assassin/seomgwang_02.sub")
  3815.             elif (int(race) == 2) or (int(race) == 6):
  3816.                 if int(group) == 1:
  3817.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/sura/pabeop_02.sub")
  3818.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/sura/pabeop_02.sub")
  3819.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/sura/pabeop_02.sub")
  3820.                 elif int(group) == 2:
  3821.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/sura/geomhwan_02.sub")
  3822.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/sura/geomhwan_02.sub")
  3823.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/sura/geomhwan_02.sub")
  3824.             elif (int(race) == 3) or (int(race) == 7):
  3825.                 if int(group) == 1:
  3826.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/shaman/gicheon_02.sub")
  3827.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/shaman/gicheon_02.sub")
  3828.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/shaman/gicheon_02.sub")
  3829.                 elif int(group) == 2:
  3830.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/shaman/jeungryeok_02.sub")
  3831.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/shaman/jeungryeok_02.sub")
  3832.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/shaman/jeungryeok_02.sub")
  3833.         elif SkillLevel6 >= 30:
  3834.             if ((int(race) == 0) or ((int(race) == 4))):
  3835.                 if int(group) == 1:
  3836.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/warrior/gihyeol_03.sub")
  3837.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/warrior/gihyeol_03.sub")
  3838.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/warrior/gihyeol_03.sub")
  3839.                 elif int(group) == 2:
  3840.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/warrior/noegeom_03.sub")
  3841.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/warrior/noegeom_03.sub")
  3842.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/warrior/noegeom_03.sub")
  3843.             elif (int(race) == 1) or (int(race) == 5):
  3844.                 if int(group) == 1:
  3845.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/assassin/seomjeon_03.sub")
  3846.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/assassin/seomjeon_03.sub")
  3847.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/assassin/seomjeon_03.sub")
  3848.                 elif int(group) == 2:
  3849.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/assassin/seomgwang_03.sub")
  3850.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/assassin/seomgwang_03.sub")
  3851.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/assassin/seomgwang_03.sub")
  3852.             elif (int(race) == 2) or (int(race) == 6):
  3853.                 if int(group) == 1:
  3854.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/sura/pabeop_03.sub")
  3855.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/sura/pabeop_03.sub")
  3856.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/sura/pabeop_03.sub")
  3857.                 elif int(group) == 2:
  3858.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/sura/geomhwan_03.sub")
  3859.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/sura/geomhwan_03.sub")
  3860.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/sura/geomhwan_03.sub")
  3861.             elif (int(race) == 3) or (int(race) == 7):
  3862.                 if int(group) == 1:
  3863.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/shaman/gicheon_03.sub")
  3864.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/shaman/gicheon_03.sub")
  3865.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/shaman/gicheon_03.sub")
  3866.                 elif int(group) == 2:
  3867.                     self.AutoSkillUse6.SetUpVisual("d:/ymir work/ui/skill/shaman/jeungryeok_03.sub")
  3868.                     self.AutoSkillUse6.SetOverVisual("d:/ymir work/ui/skill/shaman/jeungryeok_03.sub")
  3869.                     self.AutoSkillUse6.SetDownVisual("d:/ymir work/ui/skill/shaman/jeungryeok_03.sub")
  3870.  
  3871.         if int(group) == 0:
  3872.             self.AutoSkillUse1.Hide()
  3873.             self.AutoSkillUse2.Hide()
  3874.             self.AutoSkillUse3.Hide()
  3875.             self.AutoSkillUse4.Hide()
  3876.             self.AutoSkillUse5.Hide()
  3877.             self.AutoSkillUse6.Hide()
  3878.            
  3879.             self.ErrorLog = ui.TextLine()
  3880.             self.ErrorLog.SetParent(self)
  3881.             self.ErrorLog.SetDefaultFontName()
  3882.             self.ErrorLog.SetPosition(30, 84)
  3883.             self.ErrorLog.SetFeather()
  3884.             self.ErrorLog.SetText("No skills learned yet!")
  3885.             self.ErrorLog.SetFontColor(0.2, 0.4, 1.0)
  3886.             self.ErrorLog.SetOutline()
  3887.             self.ErrorLog.Show()
  3888.            
  3889.         if AutoSkillUse1 != "":
  3890.             self.AutoSkillUse1Activated.Show()
  3891.         elif AutoSkillUse1 == "":
  3892.             self.AutoSkillUse1Activated.Hide()
  3893.         if AutoSkillUse2 != "":
  3894.             self.AutoSkillUse2Activated.Show()
  3895.         elif AutoSkillUse2 == "":
  3896.             self.AutoSkillUse2Activated.Hide()
  3897.         if AutoSkillUse3 != "":
  3898.             self.AutoSkillUse3Activated.Show()
  3899.         elif AutoSkillUse3 == "":
  3900.             self.AutoSkillUse3Activated.Hide()
  3901.         if AutoSkillUse4 != "":
  3902.             self.AutoSkillUse4Activated.Show()
  3903.         elif AutoSkillUse4 == "":
  3904.             self.AutoSkillUse4Activated.Hide()
  3905.         if AutoSkillUse5 != "":
  3906.             self.AutoSkillUse5Activated.Show()
  3907.         elif AutoSkillUse5 == "":
  3908.             self.AutoSkillUse5Activated.Hide()
  3909.         if AutoSkillUse6 != "":
  3910.             self.AutoSkillUse6Activated.Show()
  3911.         elif AutoSkillUse6 == "":
  3912.             self.AutoSkillUse6Activated.Hide()
  3913.         if AutoPottRed != "":
  3914.             self.AutoPottRedButtonActivated.Show()
  3915.             self.AutoPottRedImageActivated.Show()
  3916.         elif AutoPottRed == "":
  3917.             self.AutoPottRedButtonActivated.Hide()
  3918.             self.AutoPottRedImageActivated.Hide()
  3919.         if AutoPottBlue != "":
  3920.             self.AutoPottBlueButtonActivated.Show()
  3921.             self.AutoPottBlueImageActivated.Show()
  3922.         elif AutoPottBlue == "":
  3923.             self.AutoPottBlueButtonActivated.Hide()
  3924.             self.AutoPottBlueImageActivated.Hide()
  3925.         if TapferkeitsUmhange != "":
  3926.             self.TapferkeitsUmhangeButtonActivated.Show()
  3927.             self.TapferkeitsUmhangeImageActivated.Show()
  3928.         elif TapferkeitsUmhange == "":
  3929.             self.TapferkeitsUmhangeButtonActivated.Hide()
  3930.             self.TapferkeitsUmhangeImageActivated.Hide()
  3931.         if AutoRevive != "":
  3932.             self.AutoReviveButton.SetUpVisual("d:/ymir work/ui/public/xlarge_button_03.sub")
  3933.         if TransferMobs != "":
  3934.             self.TransferMobsButton.SetUpVisual("d:/ymir work/ui/public/large_button_03.sub")
  3935.         if LevelbotConfig == 0:
  3936.             self.TeleportToMobsManyButton.SetUpVisual("d:/ymir work/ui/public/large_button_03.sub")
  3937.         elif LevelbotConfig == 1:
  3938.             self.AttackAndStandButton.SetUpVisual("d:/ymir work/ui/public/large_button_03.sub")
  3939.         if AutoPickUp != "":
  3940.             self.AutoPickUpButton.SetUpVisual("d:/ymir work/ui/public/large_button_03.sub")
  3941.         if AttackSpeedHack != "":
  3942.             self.AttackSpeedStatusButton.SetUpVisual("d:/ymir work/ui/public/middle_button_03.sub")
  3943.             self.AttackSpeedStatusButton.SetText("Aktiviert")
  3944.         if MoveSpeedHack != "":
  3945.             self.MoveSpeedStatusButton.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  3946.             self.MoveSpeedStatusButton.SetText("Aktiviert")
  3947.            
  3948.         self.TeleportXEditLine.SetText(str(int(x/100)))        
  3949.         self.TeleportYEditLine.SetText(str(int(y/100)))        
  3950.         self.TeleportZEditLine.SetText("0")
  3951.  
  3952.         self.AttackSpeedStats.SetText((str(player.GetStatus(player.ATT_SPEED))))       
  3953.         self.MoveSpeedStats.SetText((str(player.GetStatus(player.MOVING_SPEED))))
  3954. #       self.TeleportZEditLine.SetText(str(int(z/100)))    
  3955.    
  3956.     def OnRender(self):
  3957.         global telestep
  3958.         global teleport_mode
  3959.         global last_teleport_time
  3960.         telestep = 0
  3961.         if teleport_mode == 1 and app.GetTime() > last_teleport_time + 5:
  3962.             last_teleport_time = app.GetTime()
  3963.             self.TeleportToCoordinates()       
  3964.  
  3965.     def OnUpdate(self):
  3966.         global x1
  3967.         global y1
  3968.         global x2
  3969.         global y2
  3970.         global SetBase
  3971.         global AutoSkillUse1
  3972.         global AutoSkillUse2
  3973.         global AutoSkillUse3
  3974.         global AutoSkillUse4
  3975.         global AutoSkillUse5
  3976.         global AutoSkillUse6
  3977.         global AutoPottRed
  3978.         global AutoPottBlue
  3979.         global AutoPickUp
  3980.         global AttackSpeedHack
  3981.         global DoublePrevent
  3982.         global Levelbot
  3983.         if int(player.GetStatus(player.HP)) <= 0 and str(DoublePrevent) == "inaktiv":
  3984.             self.AutoReviveDelay()
  3985.             DoublePrevent = "aktiv"
  3986.         CurrentAttackSpeedHack = self.AttackSpeedStats.GetText()
  3987.         (x, y, z) = player.GetMainCharacterPosition()
  3988.         if Levelbot != "":
  3989.             if AutoSkillUse1 != "":
  3990.                 if skill.CanUseSkill(1):
  3991.                     player.ClickSkillSlot(1)
  3992.             if AutoSkillUse2 != "":
  3993.                 if skill.CanUseSkill(2):
  3994.                     player.ClickSkillSlot(2)
  3995.             if AutoSkillUse3 != "":
  3996.                 if skill.CanUseSkill(3):
  3997.                     player.ClickSkillSlot(3)
  3998.             if AutoSkillUse4 != "":
  3999.                 if skill.CanUseSkill(4):
  4000.                     player.ClickSkillSlot(4)
  4001.             if AutoSkillUse5 != "":
  4002.                 if skill.CanUseSkill(5):
  4003.                     player.ClickSkillSlot(5)
  4004.             if AutoSkillUse6 != "":
  4005.                 if skill.CanUseSkill(6):
  4006.                     player.ClickSkillSlot(6)
  4007.         if AutoPottRed != "":
  4008.             self.AutoPottRed()
  4009.         if AutoPottBlue != "":
  4010.             self.AutoPottBlue()
  4011.         if ((x1 > x) or (x2 < x) or (y2 < y) or (y1 > y)) and SetBase != "":
  4012.             self.TransferBasePosition()
  4013.         if AutoPickUp != "":
  4014.             player.PickCloseItem()
  4015.         if AttackSpeedHack != "":
  4016.             chr.SetAttackSpeed(int(CurrentAttackSpeedHack))
  4017.    
  4018.     def Show(self):
  4019.         ui.ThinBoard.Show(self)
  4020.        
  4021.     def Close(self):
  4022.         global SetBase
  4023.         SetBase = ""
  4024.         self.Hide()
  4025.         return TRUE
  4026.        
  4027.     def OnPressEscapeKey(self):
  4028.         self.Hide()
  4029.         return TRUE
  4030.        
  4031. Bonus0 = 0
  4032. Bonus1 = 0
  4033. Bonus2 = 0
  4034. Bonus3 = 0
  4035. Bonus4 = 0
  4036. SwitchButton = 0   
  4037. Boniswitchvalue = 71084
  4038. PRESSWISH0 = 0
  4039. PRESSWISH1 = 0
  4040. PRESSWISH2 = 0
  4041. PRESSWISH3 = 0
  4042. PRESSWISH4 = 0
  4043.  
  4044. class SwitchBotDialog(ui.ThinBoard):
  4045.     def __init__(self):
  4046.         ui.ThinBoard.__init__(self)
  4047.         self.__Load_SwitchBotDialog()
  4048.        
  4049.     def __del__(self):
  4050.         ui.ThinBoard.__del__(self)
  4051.  
  4052.     def Destroy(self):
  4053.         self.Hide()
  4054.         return TRUE
  4055.        
  4056.     def Bonuschangevalue(self):
  4057.         global Boniswitchvalue
  4058.         for i in xrange(player.INVENTORY_PAGE_SIZE*2):
  4059.             itemIndex = player.GetItemIndex(i)
  4060.             item.SelectItem(itemIndex)
  4061.             ItemValue = player.GetItemIndex(i)
  4062.             if item.IsAntiFlag(74112) and item.IsFlag(8196) and item.GetItemSubType() == 18:
  4063.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Gegenstand verzaubern liegt auf Value: " + str(ItemValue))
  4064.                 Boniswitchvalue = int(ItemValue)
  4065.                 break
  4066.             elif str(item.GetItemName()) == "Gegenstand verzaubern":
  4067.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Gegenstand verzaubern liegt auf Value: " + str(ItemValue))
  4068.                 Boniswitchvalue = int(ItemValue)
  4069.                 break
  4070.        
  4071.     def __Load_SwitchBotDialog(self):
  4072.         self.SetCenterPosition()
  4073.         self.SetSize(410, 265)
  4074.         self.Show()
  4075.         self.AddFlag("movable")
  4076.         self.AddFlag("float")
  4077.         snd.PlaySound("sound/ui/type.wav")
  4078.        
  4079.         self.LoadTextLines()
  4080.         self.LoadButtons()
  4081.         self.LoadEditLines()
  4082.         self.Bonuschangevalue()
  4083.        
  4084.         self.BoardMessage = uiTip.BigBoard()
  4085.    
  4086.     def LoadEditLines(self):
  4087.         self.SlotwahlSlotBar = ui.SlotBar()
  4088.         self.SlotwahlSlotBar.SetParent(self)
  4089.         self.SlotwahlSlotBar.SetSize(29, 14)
  4090.         self.SlotwahlSlotBar.SetPosition(172, 110)
  4091.         self.SlotwahlSlotBar.SetWindowHorizontalAlignCenter()
  4092.         self.SlotwahlSlotBar.Show()
  4093.        
  4094.         self.Slotbar = ui.EditLine()
  4095.         self.Slotbar.SetParent(self.SlotwahlSlotBar)
  4096.         self.Slotbar.SetSize(29, 18)
  4097.         self.Slotbar.SetPosition(6, 0)
  4098.         self.Slotbar.SetMax(2)
  4099.         self.Slotbar.SetNumberMode()
  4100.         self.Slotbar.SetText("0")
  4101.         self.Slotbar.SetTabEvent(ui.__mem_func__(self.StartSwitchBot))
  4102.         self.Slotbar.SetReturnEvent(ui.__mem_func__(self.StartSwitchBot))
  4103.         self.Slotbar.Show()
  4104.        
  4105.         self.BonusValue5SlotBar = ui.SlotBar()
  4106.         self.BonusValue5SlotBar.SetParent(self)
  4107.         self.BonusValue5SlotBar.SetSize(29, 14)
  4108.         self.BonusValue5SlotBar.SetPosition(172, 79)
  4109.         self.BonusValue5SlotBar.SetWindowHorizontalAlignCenter()
  4110.         self.BonusValue5SlotBar.Show()
  4111.        
  4112.         self.Bvalue5 = ui.EditLine()
  4113.         self.Bvalue5.SetParent(self.BonusValue5SlotBar)
  4114.         self.Bvalue5.SetSize(29, 18)
  4115.         self.Bvalue5.SetPosition(6, 0)
  4116.         self.Bvalue5.SetMax(4)
  4117.         self.Bvalue5.SetNumberMode()
  4118.         self.Bvalue5.SetText("0")
  4119.         self.Bvalue5.SetTabEvent(ui.__mem_func__(self.Slotbar.SetFocus))
  4120.         self.Bvalue5.SetReturnEvent(ui.__mem_func__(self.Slotbar.SetFocus))
  4121.         self.Bvalue5.Show()
  4122.  
  4123.         self.BonusValue4SlotBar = ui.SlotBar()
  4124.         self.BonusValue4SlotBar.SetParent(self)
  4125.         self.BonusValue4SlotBar.SetSize(29, 14)
  4126.         self.BonusValue4SlotBar.SetPosition(172, 44)
  4127.         self.BonusValue4SlotBar.SetWindowHorizontalAlignCenter()
  4128.         self.BonusValue4SlotBar.Show()
  4129.        
  4130.         self.Bvalue4 = ui.EditLine()
  4131.         self.Bvalue4.SetParent(self.BonusValue4SlotBar)
  4132.         self.Bvalue4.SetSize(29, 18)
  4133.         self.Bvalue4.SetPosition(6, 0)
  4134.         self.Bvalue4.SetMax(4)
  4135.         self.Bvalue4.SetNumberMode()
  4136.         self.Bvalue4.SetFocus()
  4137.         self.Bvalue4.SetText("0")
  4138.         self.Bvalue4.SetTabEvent(ui.__mem_func__(self.Bvalue5.SetFocus))
  4139.         self.Bvalue4.SetReturnEvent(ui.__mem_func__(self.Bvalue5.SetFocus))
  4140.         self.Bvalue4.Show()
  4141.  
  4142.         self.BonusValue3SlotBar = ui.SlotBar()
  4143.         self.BonusValue3SlotBar.SetParent(self)
  4144.         self.BonusValue3SlotBar.SetSize(29, 14)
  4145.         self.BonusValue3SlotBar.SetPosition(-27, 110)
  4146.         self.BonusValue3SlotBar.SetWindowHorizontalAlignCenter()
  4147.         self.BonusValue3SlotBar.Show()
  4148.        
  4149.         self.Bvalue3 = ui.EditLine()
  4150.         self.Bvalue3.SetParent(self.BonusValue3SlotBar)
  4151.         self.Bvalue3.SetSize(29, 18)
  4152.         self.Bvalue3.SetPosition(6, 0)
  4153.         self.Bvalue3.SetMax(4)
  4154.         self.Bvalue3.SetNumberMode()
  4155.         self.Bvalue3.SetText("0")
  4156.         self.Bvalue3.SetTabEvent(ui.__mem_func__(self.Bvalue4.SetFocus))
  4157.         self.Bvalue3.SetReturnEvent(ui.__mem_func__(self.Bvalue4.SetFocus))
  4158.         self.Bvalue3.Show()
  4159.  
  4160.         self.BonusValue2SlotBar = ui.SlotBar()
  4161.         self.BonusValue2SlotBar.SetParent(self)
  4162.         self.BonusValue2SlotBar.SetSize(29, 14)
  4163.         self.BonusValue2SlotBar.SetPosition(-27, 79)
  4164.         self.BonusValue2SlotBar.SetWindowHorizontalAlignCenter()
  4165.         self.BonusValue2SlotBar.Show()
  4166.        
  4167.         self.Bvalue2 = ui.EditLine()
  4168.         self.Bvalue2.SetParent(self.BonusValue2SlotBar)
  4169.         self.Bvalue2.SetSize(29, 18)
  4170.         self.Bvalue2.SetPosition(6, 0)
  4171.         self.Bvalue2.SetMax(4)
  4172.         self.Bvalue2.SetNumberMode()
  4173.         self.Bvalue2.SetText("0")
  4174.         self.Bvalue2.SetTabEvent(ui.__mem_func__(self.Bvalue3.SetFocus))
  4175.         self.Bvalue2.SetReturnEvent(ui.__mem_func__(self.Bvalue3.SetFocus))
  4176.         self.Bvalue2.Show()
  4177.  
  4178.         self.BonusValue1SlotBar = ui.SlotBar()
  4179.         self.BonusValue1SlotBar.SetParent(self)
  4180.         self.BonusValue1SlotBar.SetSize(29, 14)
  4181.         self.BonusValue1SlotBar.SetPosition(-27, 44)
  4182.         self.BonusValue1SlotBar.SetWindowHorizontalAlignCenter()
  4183.         self.BonusValue1SlotBar.Show()
  4184.        
  4185.         self.Bvalue1 = ui.EditLine()
  4186.         self.Bvalue1.SetParent(self.BonusValue1SlotBar)
  4187.         self.Bvalue1.SetSize(29, 18)
  4188.         self.Bvalue1.SetPosition(6, 0)
  4189.         self.Bvalue1.SetMax(4)
  4190.         self.Bvalue1.SetNumberMode()
  4191.         self.Bvalue1.SetText("0")
  4192.         self.Bvalue1.SetFocus()
  4193.         self.Bvalue1.SetTabEvent(ui.__mem_func__(self.Bvalue2.SetFocus))
  4194.         self.Bvalue1.SetReturnEvent(ui.__mem_func__(self.Bvalue2.SetFocus))
  4195.         self.Bvalue1.Show()
  4196.        
  4197.     def LoadButtons(self):
  4198.         self.CloseButton = ui.Button()
  4199.         self.CloseButton.SetParent(self)
  4200.         self.CloseButton.SetPosition(378, 18)
  4201.         self.CloseButton.SetUpVisual("d:/ymir work/ui/public/close_button_01.sub")
  4202.         self.CloseButton.SetOverVisual("d:/ymir work/ui/public/close_button_02.sub")
  4203.         self.CloseButton.SetDownVisual("d:/ymir work/ui/public/close_button_03.sub")
  4204.         self.CloseButton.SetToolTipText(locale.UI_CLOSE, 0, - 23)
  4205.         self.CloseButton.SetEvent(ui.__mem_func__(self.Close))
  4206.         self.CloseButton.Show()
  4207.  
  4208.         self.Wunschbonus01 = ui.Button()
  4209.         self.Wunschbonus01.SetParent(self)
  4210.         self.Wunschbonus01.SetPosition(15, 40)
  4211.         self.Wunschbonus01.SetUpVisual("d:/ymir work/ui/public/Large_Button_01.sub")
  4212.         self.Wunschbonus01.SetOverVisual("d:/ymir work/ui/public/Large_Button_02.sub")
  4213.         self.Wunschbonus01.SetDownVisual("d:/ymir work/ui/public/Large_Button_03.sub")
  4214.         self.Wunschbonus01.SetText("1.Bonus")
  4215.         self.Wunschbonus01.SetEvent(ui.__mem_func__(self.__Wish_1_Option))
  4216.         self.Wunschbonus01.Show()
  4217.  
  4218.         self.Wunschbonus02 = ui.Button()
  4219.         self.Wunschbonus02.SetParent(self)
  4220.         self.Wunschbonus02.SetPosition(15, 75)
  4221.         self.Wunschbonus02.SetUpVisual("d:/ymir work/ui/public/Large_Button_01.sub")
  4222.         self.Wunschbonus02.SetOverVisual("d:/ymir work/ui/public/Large_Button_02.sub")
  4223.         self.Wunschbonus02.SetDownVisual("d:/ymir work/ui/public/Large_Button_03.sub")
  4224.         self.Wunschbonus02.SetText("2.Bonus")
  4225.         self.Wunschbonus02.SetEvent(ui.__mem_func__(self.__Wish_2_Option))
  4226.         self.Wunschbonus02.Show()
  4227.  
  4228.         self.Wunschbonus03 = ui.Button()
  4229.         self.Wunschbonus03.SetParent(self)
  4230.         self.Wunschbonus03.SetPosition(15, 110)
  4231.         self.Wunschbonus03.SetUpVisual("d:/ymir work/ui/public/Large_Button_01.sub")
  4232.         self.Wunschbonus03.SetOverVisual("d:/ymir work/ui/public/Large_Button_02.sub")
  4233.         self.Wunschbonus03.SetDownVisual("d:/ymir work/ui/public/Large_Button_03.sub")
  4234.         self.Wunschbonus03.SetText("3.Bonus")
  4235.         self.Wunschbonus03.SetEvent(ui.__mem_func__(self.__Wish_3_Option))
  4236.         self.Wunschbonus03.Show()
  4237.  
  4238.         self.Wunschbonus04 = ui.Button()
  4239.         self.Wunschbonus04.SetParent(self)
  4240.         self.Wunschbonus04.SetPosition(15 + 180 + 21, 40)
  4241.         self.Wunschbonus04.SetUpVisual("d:/ymir work/ui/public/Large_Button_01.sub")
  4242.         self.Wunschbonus04.SetOverVisual("d:/ymir work/ui/public/Large_Button_02.sub")
  4243.         self.Wunschbonus04.SetDownVisual("d:/ymir work/ui/public/Large_Button_03.sub")
  4244.         self.Wunschbonus04.SetText("4.Bonus")
  4245.         self.Wunschbonus04.SetEvent(ui.__mem_func__(self.__Wish_4_Option))
  4246.         self.Wunschbonus04.Show()
  4247.  
  4248.         self.Wunschbonus05 = ui.Button()
  4249.         self.Wunschbonus05.SetParent(self)
  4250.         self.Wunschbonus05.SetPosition(15 + 180 + 21, 75)
  4251.         self.Wunschbonus05.SetUpVisual("d:/ymir work/ui/public/Large_Button_01.sub")
  4252.         self.Wunschbonus05.SetOverVisual("d:/ymir work/ui/public/Large_Button_02.sub")
  4253.         self.Wunschbonus05.SetDownVisual("d:/ymir work/ui/public/Large_Button_03.sub")
  4254.         self.Wunschbonus05.SetText("5.Bonus")
  4255.         self.Wunschbonus05.SetEvent(ui.__mem_func__(self.__Wish_5_Option))
  4256.         self.Wunschbonus05.Show()
  4257.  
  4258.         self.ResetbonusallButton = ui.Button()
  4259.         self.ResetbonusallButton.SetParent(self)
  4260.         self.ResetbonusallButton.SetPosition(90 + 45 + 80, 225)
  4261.         self.ResetbonusallButton.SetUpVisual("d:/ymir work/ui/public/XLarge_Button_01.sub")
  4262.         self.ResetbonusallButton.SetOverVisual("d:/ymir work/ui/public/XLarge_Button_02.sub")
  4263.         self.ResetbonusallButton.SetDownVisual("d:/ymir work/ui/public/XLarge_Button_03.sub")
  4264.         self.ResetbonusallButton.SetText("Bonis löschen")
  4265.         self.ResetbonusallButton.SetEvent(ui.__mem_func__(self.__Resetbonusall))
  4266.         self.ResetbonusallButton.Show()
  4267.  
  4268.         self.Switchtingabbruchbutton = ui.Button()
  4269.         self.Switchtingabbruchbutton.SetParent(self)
  4270.         self.Switchtingabbruchbutton.SetPosition(90 + 45 + 80, 195)
  4271.         self.Switchtingabbruchbutton.SetUpVisual("d:/ymir work/ui/public/XLarge_Button_01.sub")
  4272.         self.Switchtingabbruchbutton.SetOverVisual("d:/ymir work/ui/public/XLarge_Button_02.sub")
  4273.         self.Switchtingabbruchbutton.SetDownVisual("d:/ymir work/ui/public/XLarge_Button_03.sub")
  4274.         self.Switchtingabbruchbutton.SetEvent(ui.__mem_func__(self.__BreakSwitching))
  4275.         self.Switchtingabbruchbutton.SetText("Abbrechen")
  4276.         self.Switchtingabbruchbutton.Show()
  4277.  
  4278.         self.StartButton = ui.Button()
  4279.         self.StartButton.SetParent(self)
  4280.         self.StartButton.SetPosition(90 + 45 - 122, 225)
  4281.         self.StartButton.SetUpVisual("d:/ymir work/ui/public/XLarge_Button_01.sub")
  4282.         self.StartButton.SetOverVisual("d:/ymir work/ui/public/XLarge_Button_02.sub")
  4283.         self.StartButton.SetDownVisual("d:/ymir work/ui/public/XLarge_Button_03.sub")
  4284.         self.StartButton.SetEvent(ui.__mem_func__(self.StartSwitchBot))
  4285.         self.StartButton.SetText("Start")
  4286.         self.StartButton.Show()
  4287.  
  4288.         self.SlotButton = ui.Button()
  4289.         self.SlotButton.SetParent(self)
  4290.         self.SlotButton.SetPosition(15 + 201, 110)
  4291.         self.SlotButton.SetUpVisual("d:/ymir work/ui/public/Large_Button_01.sub")
  4292.         self.SlotButton.SetOverVisual("d:/ymir work/ui/public/Large_Button_01.sub")
  4293.         self.SlotButton.SetDownVisual("d:/ymir work/ui/public/Large_Button_01.sub")
  4294.         self.SlotButton.SetText("Slotauswahl")
  4295.         self.SlotButton.Show()     
  4296.        
  4297.     def LoadTextLines(self):
  4298.         self.Headline = ui.TextLine()
  4299.         self.Headline.SetParent(self)
  4300.         self.Headline.SetDefaultFontName()
  4301.         self.Headline.SetPosition(150, 15)
  4302.         self.Headline.SetFeather()
  4303.         self.Headline.SetText("Switchbot v2.0 by RealFreak")
  4304.         self.Headline.SetFontColor(1.0, 0.5, 0.5)
  4305.         self.Headline.SetOutline()
  4306.         self.Headline.Show()
  4307.  
  4308.         self.LastChangeText = ui.TextLine()
  4309.         self.LastChangeText.SetParent(self)
  4310.         self.LastChangeText.SetDefaultFontName()
  4311.         self.LastChangeText.SetPosition(220, 142)
  4312.         self.LastChangeText.SetFeather()
  4313.         self.LastChangeText.SetText("Change Log:")
  4314.         self.LastChangeText.SetFontColor(0.6, 0.7, 1)
  4315.         self.LastChangeText.SetOutline()
  4316.         self.LastChangeText.Show() 
  4317.  
  4318.         self.LastChange = ui.TextLine()
  4319.         self.LastChange.SetParent(self)
  4320.         self.LastChange.SetDefaultFontName()
  4321.         self.LastChange.SetPosition(220, 165)
  4322.         self.LastChange.SetFeather()
  4323.         self.LastChange.SetText("leer")
  4324.         self.LastChange.SetFontColor(1.0, 1.0, 1.0)
  4325.         self.LastChange.SetOutline()
  4326.         self.LastChange.Show() 
  4327.  
  4328.         self.SlotwahlText = ui.TextLine()
  4329.         self.SlotwahlText.SetParent(self)
  4330.         self.SlotwahlText.SetPosition(15 + 112 + 201, 110)
  4331.         self.SlotwahlText.SetFeather()
  4332.         self.SlotwahlText.SetDefaultFontName()
  4333.         self.SlotwahlText.SetText("Slot:")
  4334.         self.SlotwahlText.SetFontColor(1.0, 1.0, 1.0)
  4335.         self.SlotwahlText.SetOutline()
  4336.         self.SlotwahlText.Show()   
  4337.  
  4338.         self.BonusValue1Text = ui.TextLine()
  4339.         self.BonusValue1Text.SetParent(self)
  4340.         self.BonusValue1Text.SetPosition(15 + 92, 44)
  4341.         self.BonusValue1Text.SetFeather()
  4342.         self.BonusValue1Text.SetDefaultFontName()
  4343.         self.BonusValue1Text.SetText("Mind. Wert:")
  4344.         self.BonusValue1Text.SetFontColor(1.0, 1.0, 1.0)
  4345.         self.BonusValue1Text.SetOutline()
  4346.         self.BonusValue1Text.Show()
  4347.  
  4348.         self.BonusValue2Text = ui.TextLine()
  4349.         self.BonusValue2Text.SetParent(self)
  4350.         self.BonusValue2Text.SetPosition(15 + 92, 79)
  4351.         self.BonusValue2Text.SetFeather()
  4352.         self.BonusValue2Text.SetDefaultFontName()
  4353.         self.BonusValue2Text.SetText("Mind. Wert:")
  4354.         self.BonusValue2Text.SetFontColor(1.0, 1.0, 1.0)
  4355.         self.BonusValue2Text.SetOutline()
  4356.         self.BonusValue2Text.Show()
  4357.  
  4358.         self.BonusValue3Text = ui.TextLine()
  4359.         self.BonusValue3Text.SetParent(self)
  4360.         self.BonusValue3Text.SetPosition(15 + 92, 110)
  4361.         self.BonusValue3Text.SetFeather()
  4362.         self.BonusValue3Text.SetDefaultFontName()
  4363.         self.BonusValue3Text.SetText("Mind. Wert:")
  4364.         self.BonusValue3Text.SetFontColor(1.0, 1.0, 1.0)
  4365.         self.BonusValue3Text.SetOutline()
  4366.         self.BonusValue3Text.Show()
  4367.  
  4368.         self.BonusValue4Text = ui.TextLine()
  4369.         self.BonusValue4Text.SetParent(self)
  4370.         self.BonusValue4Text.SetPosition(15 + 272 + 21, 44)
  4371.         self.BonusValue4Text.SetFeather()
  4372.         self.BonusValue4Text.SetDefaultFontName()
  4373.         self.BonusValue4Text.SetText("Mind. Wert:")
  4374.         self.BonusValue4Text.SetFontColor(1.0, 1.0, 1.0)
  4375.         self.BonusValue4Text.SetOutline()
  4376.         self.BonusValue4Text.Show()
  4377.  
  4378.         self.BonusValue5Text = ui.TextLine()
  4379.         self.BonusValue5Text.SetParent(self)
  4380.         self.BonusValue5Text.SetPosition(15 + 272 + 21, 79)
  4381.         self.BonusValue5Text.SetFeather()
  4382.         self.BonusValue5Text.SetDefaultFontName()
  4383.         self.BonusValue5Text.SetText("Mind. Wert:")
  4384.         self.BonusValue5Text.SetFontColor(1.0, 1.0, 1.0)
  4385.         self.BonusValue5Text.SetOutline()
  4386.         self.BonusValue5Text.Show()
  4387.  
  4388.         self.BonusHeadline = ui.TextLine()
  4389.         self.BonusHeadline.SetParent(self)
  4390.         self.BonusHeadline.SetDefaultFontName()
  4391.         self.BonusHeadline.SetPosition(18, 142)
  4392.         self.BonusHeadline.SetFeather()
  4393.         self.BonusHeadline.SetText("Gewünschte Bonis:")
  4394.         self.BonusHeadline.SetFontColor(0.6, 0.7, 1)
  4395.         self.BonusHeadline.SetOutline()
  4396.         self.BonusHeadline.Show()  
  4397.  
  4398.         self.Bonus1Attr = ui.TextLine()
  4399.         self.Bonus1Attr.SetParent(self)
  4400.         self.Bonus1Attr.SetDefaultFontName()
  4401.         self.Bonus1Attr.SetPosition(18, 157 + 13*0)
  4402.         self.Bonus1Attr.SetFeather()
  4403.         self.Bonus1Attr.SetText("-")
  4404.         self.Bonus1Attr.SetFontColor(1.0, 1.0, 1.0)
  4405.         self.Bonus1Attr.SetOutline()
  4406.         self.Bonus1Attr.Show() 
  4407.  
  4408.         self.Bonus1Var = ui.TextLine()
  4409.         self.Bonus1Var.SetParent(self)
  4410.         self.Bonus1Var.SetDefaultFontName()
  4411.         self.Bonus1Var.SetPosition(168, 157 + 13*0)
  4412.         self.Bonus1Var.SetFeather()
  4413.         self.Bonus1Var.SetText("0")
  4414.         self.Bonus1Var.SetFontColor(1.0, 1.0, 1.0)
  4415.         self.Bonus1Var.SetOutline()
  4416.         self.Bonus1Var.Show()  
  4417.  
  4418.         self.Bonus2Attr = ui.TextLine()
  4419.         self.Bonus2Attr.SetParent(self)
  4420.         self.Bonus2Attr.SetDefaultFontName()
  4421.         self.Bonus2Attr.SetPosition(18, 157 + 13*1)
  4422.         self.Bonus2Attr.SetFeather()
  4423.         self.Bonus2Attr.SetText("-")
  4424.         self.Bonus2Attr.SetFontColor(1.0, 1.0, 1.0)
  4425.         self.Bonus2Attr.SetOutline()
  4426.         self.Bonus2Attr.Show() 
  4427.  
  4428.         self.Bonus2Var = ui.TextLine()
  4429.         self.Bonus2Var.SetParent(self)
  4430.         self.Bonus2Var.SetDefaultFontName()
  4431.         self.Bonus2Var.SetPosition(168, 157 + 13*1)
  4432.         self.Bonus2Var.SetFeather()
  4433.         self.Bonus2Var.SetText("0")
  4434.         self.Bonus2Var.SetFontColor(1.0, 1.0, 1.0)
  4435.         self.Bonus2Var.SetOutline()
  4436.         self.Bonus2Var.Show()  
  4437.  
  4438.         self.Bonus3Attr = ui.TextLine()
  4439.         self.Bonus3Attr.SetParent(self)
  4440.         self.Bonus3Attr.SetDefaultFontName()
  4441.         self.Bonus3Attr.SetPosition(18, 157 + 13*2)
  4442.         self.Bonus3Attr.SetFeather()
  4443.         self.Bonus3Attr.SetText("-")
  4444.         self.Bonus3Attr.SetFontColor(1.0, 1.0, 1.0)
  4445.         self.Bonus3Attr.SetOutline()
  4446.         self.Bonus3Attr.Show() 
  4447.  
  4448.         self.Bonus3Var = ui.TextLine()
  4449.         self.Bonus3Var.SetParent(self)
  4450.         self.Bonus3Var.SetDefaultFontName()
  4451.         self.Bonus3Var.SetPosition(168, 157 + 13*2)
  4452.         self.Bonus3Var.SetFeather()
  4453.         self.Bonus3Var.SetText("0")
  4454.         self.Bonus3Var.SetFontColor(1.0, 1.0, 1.0)
  4455.         self.Bonus3Var.SetOutline()
  4456.         self.Bonus3Var.Show()  
  4457.  
  4458.         self.Bonus4Attr = ui.TextLine()
  4459.         self.Bonus4Attr.SetParent(self)
  4460.         self.Bonus4Attr.SetDefaultFontName()
  4461.         self.Bonus4Attr.SetPosition(18, 157 + 13*3)
  4462.         self.Bonus4Attr.SetFeather()
  4463.         self.Bonus4Attr.SetText("-")
  4464.         self.Bonus4Attr.SetFontColor(1.0, 1.0, 1.0)
  4465.         self.Bonus4Attr.SetOutline()
  4466.         self.Bonus4Attr.Show() 
  4467.  
  4468.         self.Bonus4Var = ui.TextLine()
  4469.         self.Bonus4Var.SetParent(self)
  4470.         self.Bonus4Var.SetDefaultFontName()
  4471.         self.Bonus4Var.SetPosition(168, 157 + 13*3)
  4472.         self.Bonus4Var.SetFeather()
  4473.         self.Bonus4Var.SetText("0")
  4474.         self.Bonus4Var.SetFontColor(1.0, 1.0, 1.0)
  4475.         self.Bonus4Var.SetOutline()
  4476.         self.Bonus4Var.Show()  
  4477.  
  4478.         self.Bonus5Attr = ui.TextLine()
  4479.         self.Bonus5Attr.SetParent(self)
  4480.         self.Bonus5Attr.SetDefaultFontName()
  4481.         self.Bonus5Attr.SetPosition(18, 157 + 13*4)
  4482.         self.Bonus5Attr.SetFeather()
  4483.         self.Bonus5Attr.SetText("-")
  4484.         self.Bonus5Attr.SetFontColor(1.0, 1.0, 1.0)
  4485.         self.Bonus5Attr.SetOutline()
  4486.         self.Bonus5Attr.Show() 
  4487.  
  4488.         self.Bonus5Var = ui.TextLine()
  4489.         self.Bonus5Var.SetParent(self)
  4490.         self.Bonus5Var.SetDefaultFontName()
  4491.         self.Bonus5Var.SetPosition(168, 157 + 13*4)
  4492.         self.Bonus5Var.SetFeather()
  4493.         self.Bonus5Var.SetText("0")
  4494.         self.Bonus5Var.SetFontColor(1.0, 1.0, 1.0)
  4495.         self.Bonus5Var.SetOutline()
  4496.         self.Bonus5Var.Show()  
  4497.        
  4498.     def __BreakSwitching(self):
  4499.         global SwitchButton
  4500.         if SwitchButton == 1:
  4501.             self.LastChange.SetText("Switchvorgang wurde abgebrochen")
  4502.             self.Switchtingabbruchbutton.SetText("Abbrechen")
  4503.             SwitchButton = 0       
  4504.         else:
  4505.             self.Hide()
  4506.            
  4507.     def StartSwitchBot(self):
  4508.         global SwitchButton
  4509.         SwitchButton = 1       
  4510.         self.LastChange.SetText("Switchvorgang gestartet")
  4511.         self.Switchtingabbruchbutton.SetText("Switchen Stoppen")
  4512.         self.__Switchtingdialog()
  4513.        
  4514.     def __Switchtingdialog(self):
  4515.         global BoniSwitchvalue
  4516.         global Bonus0
  4517.         global Bonus1
  4518.         global Bonus2
  4519.         global Bonus3
  4520.         global Bonus4
  4521.         global SwitchButton
  4522.         Slot = self.Slotbar.GetText()
  4523.         val0, bon0 = player.GetItemAttribute((int(Slot)), 0) #(itemposition, atrribute)
  4524.         val1, bon1 = player.GetItemAttribute((int(Slot)), 1) #(itemposition, atrribute)
  4525.         val2, bon2 = player.GetItemAttribute((int(Slot)), 2) #(itemposition, atrribute)
  4526.         val3, bon3 = player.GetItemAttribute((int(Slot)), 3) #(itemposition, atrribute)
  4527.         val4, bon4 = player.GetItemAttribute((int(Slot)), 4) #(itemposition, atrribute)
  4528.         Switchvalue = Boniswitchvalue
  4529.         Search0 = self.Bvalue1.GetText()
  4530.         Search1 = self.Bvalue2.GetText()
  4531.         Search2 = self.Bvalue3.GetText()
  4532.         Search3 = self.Bvalue4.GetText()
  4533.         Search4 = self.Bvalue5.GetText()
  4534.         DELAY_SEC = 0.3
  4535.  
  4536. #1 Bonus switchen:
  4537.         if SwitchButton == 1:
  4538.             if (int(Bonus1) == 0) and (val0 == int(Bonus0) and bon0 >= int(Search0) or (val1 == int(Bonus0) and bon1 >= int(Search0)) or (val2 == int(Bonus0) and bon2 >= int(Search0)) or (val3 == int(Bonus0) and bon3 >= int(Search0)) or (val4 == int(Bonus0) and bon4 >= int(Search0))):
  4539.                 self.BoardMessage.SetTip("Switching erfolgreich")
  4540.                 self.BoardMessage.SetTop()
  4541.                 self.LastChange.SetText("Switchbot sucessfull")
  4542.                 self.Switchtingabbruchbutton.SetText("Abbrechen")
  4543.                 SwitchButton = 0       
  4544. #2 Bonis switchen:
  4545.             elif (int(Bonus2) == 0) and (val0 == int(Bonus0) and bon0 >= int(Search0) or (val1 == int(Bonus0) and bon1 >= int(Search0)) or (val2 == int(Bonus0) and bon2 >= int(Search0)) or (val3 == int(Bonus0) and bon3 >= int(Search0)) or (val4 == int(Bonus0) and bon4 >= int(Search0))) and ((val0 == int(Bonus1) and bon0 >= int(Search1)) or (val1 == int(Bonus1) and bon1 >= int(Search1)) or (val2 == int(Bonus1) and bon2 >= int(Search1)) or (val3 == int(Bonus1) and bon3 >= int(Search1)) or (val4 == int(Bonus1) and bon4 >= int(Search1))):
  4546.                 self.BoardMessage.SetTip("Switching erfolgreich")
  4547.                 self.BoardMessage.SetTop()
  4548.                 self.LastChange.SetText("Switchbot sucessfull")
  4549.                 self.Switchtingabbruchbutton.SetText("Abbrechen")
  4550.                 SwitchButton = 0       
  4551. #3 Bonis switchen:
  4552.             elif (int(Bonus3) == 0) and (val0 == int(Bonus0) and bon0 >= int(Search0) or (val1 == int(Bonus0) and bon1 >= int(Search0)) or (val2 == int(Bonus0) and bon2 >= int(Search0)) or (val3 == int(Bonus0) and bon3 >= int(Search0)) or (val4 == int(Bonus0) and bon4 >= int(Search0))) and ((val0 == int(Bonus1) and bon0 >= int(Search1)) or (val1 == int(Bonus1) and bon1 >= int(Search1)) or (val2 == int(Bonus1) and bon2 >= int(Search1)) or (val3 == int(Bonus1) and bon3 >= int(Search1)) or (val4 == int(Bonus1) and bon4 >= int(Search1))) and ((val0 == int(Bonus2) and bon0 >= int(Search2)) or (val1 == int(Bonus2) and bon1 >= int(Search2)) or (val2 == int(Bonus2) and bon2 >= int(Search2)) or (val3 == int(Bonus2) and bon3 >= int(Search2)) or (val4 == int(Bonus2) and bon4 >= int(Search2))):
  4553.                 self.BoardMessage.SetTip("Switching erfolgreich")
  4554.                 self.BoardMessage.SetTop()
  4555.                 self.LastChange.SetText("Switchbot sucessfull")
  4556.                 self.Switchtingabbruchbutton.SetText("Abbrechen")
  4557.                 SwitchButton = 0       
  4558. #4 Bonis switchen:
  4559.             elif (int(Bonus4) == 0) and (val0 == int(Bonus0) and bon0 >= int(Search0) or (val1 == int(Bonus0) and bon1 >= int(Search0)) or (val2 == int(Bonus0) and bon2 >= int(Search0)) or (val3 == int(Bonus0) and bon3 >= int(Search0)) or (val4 == int(Bonus0) and bon4 >= int(Search0))) and ((val0 == int(Bonus1) and bon0 >= int(Search1)) or (val1 == int(Bonus1) and bon1 >= int(Search1)) or (val2 == int(Bonus1) and bon2 >= int(Search1)) or (val3 == int(Bonus1) and bon3 >= int(Search1)) or (val4 == int(Bonus1) and bon4 >= int(Search1))) and ((val0 == int(Bonus2) and bon0 >= int(Search2)) or (val1 == int(Bonus2) and bon1 >= int(Search2)) or (val2 == int(Bonus2) and bon2 >= int(Search2)) or (val3 == int(Bonus2) and bon3 >= int(Search2)) or (val4 == int(Bonus2) and bon4 >= int(Search2))) and ((val0 == int(Bonus3) and bon0 >= int(Search3)) or (val1 == int(Bonus3) and bon1 >= int(Search3)) or (val2 == int(Bonus3) and bon2 >= int(Search3)) or (val3 == int(Bonus3) and bon3 >= int(Search3)) or (val4 == int(Bonus3) and bon4 >= int(Search3))):
  4560.                 self.BoardMessage.SetTip("Switching erfolgreich")
  4561.                 self.BoardMessage.SetTop()
  4562.                 self.LastChange.SetText("Switchbot sucessfull")
  4563.                 self.Switchtingabbruchbutton.SetText("Abbrechen")
  4564.                 SwitchButton = 0       
  4565. #5 Bonis switchen:
  4566.             elif (int(Bonus4) != 0) and (val0 == int(Bonus0) and bon0 >= int(Search0) or (val1 == int(Bonus0) and bon1 >= int(Search0)) or (val2 == int(Bonus0) and bon2 >= int(Search0)) or (val3 == int(Bonus0) and bon3 >= int(Search0)) or (val4 == int(Bonus0) and bon4 >= int(Search0))) and ((val0 == int(Bonus1) and bon0 >= int(Search1)) or (val1 == int(Bonus1) and bon1 >= int(Search1)) or (val2 == int(Bonus1) and bon2 >= int(Search1)) or (val3 == int(Bonus1) and bon3 >= int(Search1)) or (val4 == int(Bonus1) and bon4 >= int(Search1))) and ((val0 == int(Bonus2) and bon0 >= int(Search2)) or (val1 == int(Bonus2) and bon1 >= int(Search2)) or (val2 == int(Bonus2) and bon2 >= int(Search2)) or (val3 == int(Bonus2) and bon3 >= int(Search2)) or (val4 == int(Bonus2) and bon4 >= int(Search2))) and ((val0 == int(Bonus3) and bon0 >= int(Search3)) or (val1 == int(Bonus3) and bon1 >= int(Search3)) or (val2 == int(Bonus3) and bon2 >= int(Search3)) or (val3 == int(Bonus3) and bon3 >= int(Search3)) or (val4 == int(Bonus3) and bon4 >= int(Search3))) and ((val0 == int(Bonus4) and bon0 >= int(Search4)) or (val1 == int(Bonus4) and bon1 >= int(Search4)) or (val2 == int(Bonus4) and bon2 >= int(Search4)) or (val3 == int(Bonus4) and bon3 >= int(Search4)) or (val4 == int(Bonus4) and bon4 >= int(Search4))):
  4567.                 self.BoardMessage.SetTip("Switching erfolgreich")
  4568.                 self.BoardMessage.SetTop()
  4569.                 self.LastChange.SetText("Switchbot sucessfull")
  4570.                 self.Switchtingabbruchbutton.SetText("Abbrechen")
  4571.                 SwitchButton = 0       
  4572.             elif Bonus0 == 0:
  4573.                 self.Switchtingabbruchbutton.SetText("Abbrechen")
  4574.                 SwitchButton = 0       
  4575.                 self.LastChange.SetText("Switchvorgang wurde abgebrochen")
  4576.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Bitte trage Bonis ein oder trage sie")       
  4577.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "der Reihenfolge nach richtig ein!")      
  4578.             else:
  4579.                 self.WaitingDelay = WaitingDialog()
  4580.                 self.WaitingDelay.Open(float(DELAY_SEC))
  4581.                 self.WaitingDelay.SAFE_SetTimeOverEvent(self.__Switchtingdialog)
  4582.                 for eachSlot in xrange(player.INVENTORY_PAGE_SIZE*2):
  4583.                     itemVNum = player.GetItemIndex(eachSlot)
  4584.  
  4585.                     if itemVNum == int(Switchvalue):
  4586.                         net.SendItemUseToItemPacket(eachSlot, (int(Slot)))
  4587.                         break
  4588.             if player.GetItemCountByVnum(int(Switchvalue)) <= 0:
  4589.                 for eachSlot in xrange(shop.SHOP_SLOT_COUNT):
  4590.                     getShopItemID = shop.GetItemID(eachSlot)
  4591.                     if getShopItemID == int(Switchvalue) and not itemVNum == int(Switchvalue):
  4592.                         net.SendShopBuyPacket(eachSlot)
  4593.            
  4594.     def __Resetbonusall(self):
  4595.         global Bonus0
  4596.         global Bonus1
  4597.         global Bonus2
  4598.         global Bonus3
  4599.         global Bonus4
  4600.         Bonus0 = 0
  4601.         Bonus1 = 0
  4602.         Bonus2 = 0
  4603.         Bonus3 = 0
  4604.         Bonus4 = 0
  4605.         self.Bvalue1.SetText("0")
  4606.         self.Bvalue2.SetText("0")
  4607.         self.Bvalue3.SetText("0")
  4608.         self.Bvalue4.SetText("0")
  4609.         self.Bvalue5.SetText("0")
  4610.         self.Bonus1Attr.SetText("-")
  4611.         self.Bonus2Attr.SetText("-")
  4612.         self.Bonus3Attr.SetText("-")
  4613.         self.Bonus4Attr.SetText("-")
  4614.         self.Bonus5Attr.SetText("-")
  4615.         self.LastChange.SetText("Deleted saved Bonis")
  4616.    
  4617.     def __Wish_1_Option(self):
  4618.         global Bonus0
  4619.         global PRESSWISH0
  4620.         PRESSWISH0 = 1
  4621.         self.BonusListBox = FileListDialog()
  4622.        
  4623.     def __Wish_2_Option(self):
  4624.         global Bonus1
  4625.         global PRESSWISH1
  4626.         PRESSWISH1 = 1
  4627.         self.BonusListBox = FileListDialog()
  4628.        
  4629.     def __Wish_3_Option(self):
  4630.         global Bonus2
  4631.         global PRESSWISH2
  4632.         PRESSWISH2 = 1
  4633.         self.BonusListBox = FileListDialog()
  4634.  
  4635.     def __Wish_4_Option(self):
  4636.         global Bonus3
  4637.         global PRESSWISH3
  4638.         PRESSWISH3 = 1
  4639.         self.BonusListBox = FileListDialog()
  4640.        
  4641.     def __Wish_5_Option(self):
  4642.         global Bonus4
  4643.         global PRESSWISH4
  4644.         PRESSWISH4 = 1
  4645.         self.BonusListBox = FileListDialog()
  4646.    
  4647.     def OnUpdate(self):
  4648.         global Bonus0
  4649.         global Bonus1
  4650.         global Bonus2
  4651.         global Bonus3
  4652.         global Bonus4
  4653.         if self.Bonus1Attr.GetText() != str(BonusListe[int(Bonus0)]) and int(Bonus0) != 0:
  4654.             self.Bonus1Attr.SetText(str(BonusListe[int(Bonus0)]))
  4655.         elif self.Bonus1Attr.GetText() != "" and int(Bonus0) == 0:
  4656.             self.Bonus1Attr.SetText("-")       
  4657.         if self.Bonus2Attr.GetText() != str(BonusListe[int(Bonus1)]) and int(Bonus1) != 0:
  4658.             self.Bonus2Attr.SetText(str(BonusListe[int(Bonus1)]))
  4659.         elif self.Bonus2Attr.GetText() != "" and int(Bonus1) == 0:
  4660.             self.Bonus2Attr.SetText("-")       
  4661.         if self.Bonus3Attr.GetText() != str(BonusListe[int(Bonus2)]) and int(Bonus2) != 0:
  4662.             self.Bonus3Attr.SetText(str(BonusListe[int(Bonus2)]))
  4663.         elif self.Bonus3Attr.GetText() != "" and int(Bonus2) == 0:
  4664.             self.Bonus3Attr.SetText("-")       
  4665.         if self.Bonus4Attr.GetText() != str(BonusListe[int(Bonus3)]) and int(Bonus3) != 0:
  4666.             self.Bonus4Attr.SetText(str(BonusListe[int(Bonus3)]))
  4667.         elif self.Bonus4Attr.GetText() != "" and int(Bonus3) == 0:
  4668.             self.Bonus4Attr.SetText("-")       
  4669.         if self.Bonus5Attr.GetText() != str(BonusListe[int(Bonus4)]) and int(Bonus4) != 0:
  4670.             self.Bonus5Attr.SetText(str(BonusListe[int(Bonus4)]))
  4671.         elif self.Bonus5Attr.GetText() != "" and int(Bonus4) == 0:
  4672.             self.Bonus5Attr.SetText("-")
  4673.            
  4674.         if self.Bonus1Var.GetText() != self.Bvalue1.GetText():
  4675.             self.Bonus1Var.SetText(str(self.Bvalue1.GetText()))
  4676.         if self.Bonus2Var.GetText() != self.Bvalue2.GetText():
  4677.             self.Bonus2Var.SetText(str(self.Bvalue2.GetText()))
  4678.         if self.Bonus3Var.GetText() != self.Bvalue3.GetText():
  4679.             self.Bonus3Var.SetText(str(self.Bvalue3.GetText()))
  4680.         if self.Bonus4Var.GetText() != self.Bvalue4.GetText():
  4681.             self.Bonus4Var.SetText(str(self.Bvalue4.GetText()))
  4682.         if self.Bonus5Var.GetText() != self.Bvalue5.GetText():
  4683.             self.Bonus5Var.SetText(str(self.Bvalue5.GetText()))
  4684.        
  4685.     def Show(self):
  4686.         ui.ThinBoard.Show(self)
  4687.        
  4688.     def Close(self):
  4689.         self.Hide()
  4690.         return TRUE
  4691.        
  4692.     def OnPressEscapeKey(self):
  4693.         self.Hide()
  4694.         return TRUE
  4695.  
  4696. FILE_NAME_LEN = 40
  4697.  
  4698. class Item(ui.ListBoxEx.Item):
  4699.     def __init__(self, fileName):
  4700.         ui.ListBoxEx.Item.__init__(self)
  4701.         self.canLoad=0
  4702.         self.text=fileName
  4703.         self.textLine=self.__CreateTextLine(fileName[:FILE_NAME_LEN])          
  4704.  
  4705.     def __del__(self):
  4706.         ui.ListBoxEx.Item.__del__(self)
  4707.  
  4708.     def GetText(self):
  4709.         return self.text
  4710.  
  4711.     def SetSize(self, width, height):
  4712.         ui.ListBoxEx.Item.SetSize(self, 6*len(self.textLine.GetText()) + 4, height)
  4713.  
  4714.     def __CreateTextLine(self, fileName):
  4715.         textLine=ui.TextLine()
  4716.         textLine.SetParent(self)
  4717.         textLine.SetPosition(0, 0)
  4718.         textLine.SetText(fileName)
  4719.         textLine.Show()
  4720.         return textLine
  4721.  
  4722. class ExtractList(ui.ListBoxEx.Item):
  4723.     def __init__(self, fileName):
  4724.         ui.ListBoxEx.Item.__init__(self)
  4725.         self.canLoad=0
  4726.         self.text=fileName
  4727.         self.textLine=self.__CreateTextLine(fileName)          
  4728.  
  4729.     def __del__(self):
  4730.         ui.ListBoxEx.Item.__del__(self)
  4731.  
  4732.     def GetText(self):
  4733.         return self.text
  4734.  
  4735.     def SetSize(self, width, height):
  4736.         ui.ListBoxEx.Item.SetSize(self, 6*len(self.textLine.GetText()) + 4, height)
  4737.  
  4738.     def __CreateTextLine(self, fileName):
  4739.         textLine=ui.TextLine()
  4740.         textLine.SetParent(self)
  4741.         textLine.SetPosition(0, 0)
  4742.         textLine.SetText(fileName)
  4743.         textLine.Show()
  4744.         return textLine
  4745.  
  4746. BonusListe = (
  4747.     "",
  4748.     "Max. TP",
  4749.     "Max. MP",
  4750.     "Vitalität",
  4751.     "Intelligenz",
  4752.     "Stärke",
  4753.     "Ausweichwert",
  4754.     "Angriffsgeschwindigkeit",
  4755.     "Bewegungsgeschwindigkeit",
  4756.     "Zaubergeschwindigkeit",
  4757.     "TP-Regeneration",
  4758.     "MP-Regeneration",
  4759.     "Vergiftungschance",
  4760.     "Ohnmachtschance",
  4761.     "Verlangsamungschance",
  4762.     "Kritischer Treffer",
  4763.     "Durchbohrender Treffer",
  4764.     "Stark ggn Halbmenschen",
  4765.     "Stark ggn Tiere",
  4766.     "Stark ggn Orks",
  4767.     "Stark ggn Esoterische",
  4768.     "Stark ggn Untote",
  4769.     "Stark ggn Teufel",
  4770.     "TP-Absorbierung",
  4771.     "MP-Absorbierung",
  4772.     "Chance auf Manaraub",
  4773.     "Chance MP-Regeneration",
  4774.     "Nahkampf-Angriff blocken",
  4775.     "Pfeilangriff ausweichen",
  4776.     "Schwertverteidigung",
  4777.     "Zweihandverteidigung",
  4778.     "Dolchverteidigung",
  4779.     "Glockenverteidigung",
  4780.     "Fächerverteidigung",
  4781.     "Pfeilwiderstand",
  4782.     "Feuerwiderstand",
  4783.     "Blitzwiderstand",
  4784.     "Magieverteidigung",
  4785.     "Windverteidigung",
  4786.     "Nahkampftreffer reflektieren",
  4787.     "Fluch reflektieren",
  4788.     "Giftverteidigung",
  4789.     "Chance MP wiederherzustellen",
  4790.     "Exp-Bonus",
  4791.     "Yang-Drop",
  4792.     "Item-Drop",
  4793.     "steigernde Trankwirkung",
  4794.     "Chance TP wiederherzustellen",
  4795.     "Immun gegen Ohnmacht",
  4796.     "Immun gegen Verlangsamung",
  4797.     "Immun gegen Stürzen",
  4798.     "APPLY_SKILL",
  4799.     "Pfeilreichweite",
  4800.     "Angriffswert",
  4801.     "Verteidigungswert",
  4802.     "Magischer Angriffswert",
  4803.     "Magischer Verteidigungswert",
  4804.     "",
  4805.     "Max. Ausdauer",
  4806.     "Stark gegen Krieger",
  4807.     "Stark gegen Ninjas",
  4808.     "Stark gegen Suras",
  4809.     "Stark gegen Schamanen",
  4810.     "Stark gegen Monster",
  4811.     "Itemshop Angriffswert",
  4812.     "Itemshop Verteidigungswert",
  4813.     "Itemshop Exp-Bonus",
  4814.     "Itemshop Item-Bonus",
  4815.     "Itemshop Yang-Bonus",
  4816.     "APPLY_MAX_HP_PCT",
  4817.     "APPLY_MAX_SP_PCT",
  4818.     "Fertigkeitsschaden",
  4819.     "Durchschn. Schaden",
  4820.     "Fertigkeitsschaden Widerstand",
  4821.     "Durchschn. Schadenswiderstand",
  4822.     "",
  4823.     "iCafe EXP-Bonus",
  4824.     "iCafe Item-Bonus",
  4825.     "Abwehr ggn Krieger",
  4826.     "Abwehr ggn Ninjas",
  4827.     "Abwehr ggn Suras",
  4828.     "Abwehr ggn Schamanen",
  4829.     )
  4830.  
  4831. BonusIDListe = {
  4832.     "" : 0,
  4833.     "Max. TP" : 1,
  4834.     "Max. MP" : 2,
  4835.     "Vitalität" : 3,
  4836.     "Intelligenz" : 4,
  4837.     "Stärke" : 5,
  4838.     "Ausweichwert" : 6,
  4839.     "Angriffsgeschwindigkeit" : 7,
  4840.     "Bewegungsgeschwindigkeit" : 8,
  4841.     "Zaubergeschwindigkeit" : 9,
  4842.     "TP-Regeneration" : 10,
  4843.     "MP-Regeneration" : 11,
  4844.     "Vergiftungschance" : 12,
  4845.     "Ohnmachtschance" : 13,
  4846.     "Verlangsamungschance" : 14,
  4847.     "Kritischer Treffer" : 15,
  4848.     "Durchbohrender Treffer" : 16,
  4849.     "Stark ggn Halbmenschen" : 17,
  4850.     "Stark ggn Tiere" : 18,
  4851.     "Stark ggn Orks" : 19,
  4852.     "Stark ggn Esoterische" : 20,
  4853.     "Stark ggn Untote" : 21,
  4854.     "Stark ggn Teufel" : 22,
  4855.     "TP-Absorbierung" : 23,
  4856.     "MP-Absorbierung" : 24,
  4857.     "Chance auf Manaraub" : 25,
  4858.     "Chance MP-Regeneration" : 26,
  4859.     "Nahkampf-Angriff blocken" : 27,
  4860.     "Pfeilangriff ausweichen" : 28,
  4861.     "Schwertverteidigung" : 29,
  4862.     "Zweihandverteidigung" : 30,
  4863.     "Dolchverteidigung" : 31,
  4864.     "Glockenverteidigung" : 32,
  4865.     "Fächerverteidigung" : 33,
  4866.     "Pfeilwiderstand" : 34,
  4867.     "Feuerwiderstand" : 35,
  4868.     "Blitzwiderstand" : 36,
  4869.     "Magieverteidigung" : 37,
  4870.     "Windverteidigung" : 38,
  4871.     "Nahkampftreffer reflektieren" : 39,
  4872.     "Fluch reflektieren" : 40,
  4873.     "Giftverteidigung" : 41,
  4874.     "Chance MP wiederherzustellen" : 42,
  4875.     "Exp-Bonus" : 43,
  4876.     "Yang-Drop" : 44,
  4877.     "Item-Drop" : 45,
  4878.     "steigernde Trankwirkung" : 46,
  4879.     "Chance TP wiederherzustellen" : 47,
  4880.     "Immun gegen Ohnmacht" : 48,
  4881.     "Immun gegen Verlangsamung" : 49,
  4882.     "Immun gegen Stürzen" : 50,
  4883.     "APPLY_SKILL" : 51,
  4884.     "Pfeilreichweite" : 52,
  4885.     "Angriffswert" : 53,
  4886.     "Verteidigungswert" : 54,
  4887.     "Magischer Angriffswert" : 55,
  4888.     "Magischer Verteidigungswert" : 56,
  4889.     "" : 57,
  4890.     "Max. Ausdauer" : 58,
  4891.     "Stark gegen Krieger" : 59,
  4892.     "Stark gegen Ninjas" : 60,
  4893.     "Stark gegen Suras" : 61,
  4894.     "Stark gegen Schamanen" : 62,
  4895.     "Stark gegen Monster" : 63,
  4896.     "Itemshop Angriffswert" : 64,
  4897.     "Itemshop Verteidigungswert" : 65,
  4898.     "Itemshop Exp-Bonus" : 66,
  4899.     "Itemshop Item-Bonus" : 67,
  4900.     "Itemshop Yang-Bonus" : 68,
  4901.     "APPLY_MAX_HP_PCT" : 69,
  4902.     "APPLY_MAX_SP_PCT" : 70,
  4903.     "Fertigkeitsschaden" : 71,
  4904.     "Durchschn. Schaden" : 72,
  4905.     "Fertigkeitsschaden Widerstand" : 73,
  4906.     "Durchschn. Schadenswiderstand" : 74,
  4907.     "" : 75,
  4908.     "iCafe EXP-Bonus" : 76,
  4909.     "iCafe Item-Bonus" : 77,
  4910.     "Abwehr ggn Krieger" : 78,
  4911.     "Abwehr ggn Ninjas" : 79,
  4912.     "Abwehr ggn Suras" : 80,
  4913.     "Abwehr ggn Schamanen" : 81,
  4914.     }
  4915.    
  4916. class FileListDialog(ui.ThinBoard):
  4917.     def __init__(self):
  4918.         ui.ThinBoard.__init__(self)
  4919.  
  4920.         self.isLoaded=0
  4921.         self.selectEvent=None
  4922.         self.fileListBox=None
  4923.  
  4924.         self.SetCenterPosition()
  4925.         self.SetSize(170, 305)
  4926.         self.Show()
  4927.         self.AddFlag("movable")
  4928.         self.AddFlag("float")
  4929.        
  4930.     def __del__(self):
  4931.         ui.ThinBoard.__del__(self)
  4932.  
  4933.     def Show(self):
  4934.         if self.isLoaded==0:
  4935.             self.isLoaded=1
  4936.  
  4937.             self.__Load()
  4938.  
  4939.         ui.ThinBoard.Show(self)
  4940.  
  4941.     def Open(self):
  4942.         self.Show()
  4943.  
  4944.         self.SetCenterPosition()
  4945.         self.SetTop()
  4946.         self.UpdateFileList()
  4947.  
  4948.     def Close(self):
  4949.         self.Hide()
  4950.  
  4951.     def OnPressEscapeKey(self):
  4952.         self.Close()
  4953.         return TRUE
  4954.  
  4955.     def __CreateFileListBox(self):
  4956.         fileListBox = ui.ListBoxEx()
  4957.         fileListBox.SetParent(self)
  4958.         fileListBox.SetPosition(15, 50)
  4959.         fileListBox.Show()
  4960.         return fileListBox
  4961.  
  4962.     def __Load(self):
  4963.         self.__Load_BindObject()
  4964.  
  4965.         self.UpdateFileList()
  4966.  
  4967.     def __Load_BindObject(self):
  4968.         self.fileListBox = self.__CreateFileListBox()
  4969.         self.LoadFuckingScrollBar()
  4970.         self.LoadTextLines()
  4971.         self.fileListBox.SetScrollBar(self.ScrollBar)
  4972.  
  4973.         self.UpdateButton = ui.Button()
  4974.         self.UpdateButton.SetParent(self)
  4975.         self.UpdateButton.SetUpVisual("d:/ymir work/ui/public/Large_button_01.sub")
  4976.         self.UpdateButton.SetOverVisual("d:/ymir work/ui/public/Large_button_02.sub")
  4977.         self.UpdateButton.SetDownVisual("d:/ymir work/ui/public/Large_button_03.sub")
  4978.         self.UpdateButton.SetText("Aktualisieren")
  4979.         self.UpdateButton.SetPosition(15, 265)
  4980.         self.UpdateButton.SetEvent(ui.__mem_func__(self.UpdateFileList))
  4981.         self.UpdateButton.Show()
  4982.         self.UpdateButton.Hide()
  4983.        
  4984.         self.SelectBonus = ui.Button()
  4985.         self.SelectBonus.SetParent(self)
  4986.         self.SelectBonus.SetPosition(19, 265)
  4987.         self.SelectBonus.SetUpVisual("d:/ymir work/ui/public/Middle_Button_01.sub")
  4988.         self.SelectBonus.SetOverVisual("d:/ymir work/ui/public/Middle_Button_02.sub")
  4989.         self.SelectBonus.SetDownVisual("d:/ymir work/ui/public/Middle_Button_03.sub")
  4990.         self.SelectBonus.SetText("OK")
  4991.         self.SelectBonus.SetEvent(ui.__mem_func__(self.SetBonis))
  4992.         self.SelectBonus.Show()
  4993.  
  4994.         self.CancelBonus = ui.Button()
  4995.         self.CancelBonus.SetParent(self)
  4996.         self.CancelBonus.SetPosition(89, 265)
  4997.         self.CancelBonus.SetUpVisual("d:/ymir work/ui/public/Middle_Button_01.sub")
  4998.         self.CancelBonus.SetOverVisual("d:/ymir work/ui/public/Middle_Button_02.sub")
  4999.         self.CancelBonus.SetDownVisual("d:/ymir work/ui/public/Middle_Button_03.sub")
  5000.         self.CancelBonus.SetText("Abbrechen")
  5001.         self.CancelBonus.SetEvent(ui.__mem_func__(self.Close))
  5002.         self.CancelBonus.Show()
  5003.  
  5004.        
  5005.     def LoadTextLines(self):
  5006.         self.copyright = ui.TextLine()
  5007.         self.copyright.SetParent(self)
  5008.         self.copyright.SetDefaultFontName()
  5009.         self.copyright.SetPosition(50, 29)
  5010.         self.copyright.SetFeather()
  5011.         self.copyright.SetText("Bonus wählen:")
  5012.         self.copyright.SetFontColor(0.2, 0.2, 1.0)
  5013.         self.copyright.SetOutline()
  5014.         self.copyright.Show()
  5015.  
  5016.  
  5017.     def LoadFuckingScrollBar(self):
  5018.         self.ScrollBar = ui.ScrollBar()
  5019.         self.ScrollBar.SetParent(self)
  5020.         self.ScrollBar.SetPosition(140, 40)
  5021.         self.ScrollBar.SetScrollBarSize(220)
  5022.         self.ScrollBar.Show()
  5023.  
  5024.     def CancelGuildName(self):
  5025.         self.guildNameBoard.Close()
  5026.         self.guildNameBoard = None
  5027.         return TRUE
  5028.  
  5029.     def UpdateFileList(self):
  5030.         self.__RefreshFileList()
  5031.         for BonusType in BonusListe:
  5032.             if BonusType == "":
  5033.                 self.fileListBox.AppendItem(Item("keiner"))
  5034.             elif BonusType != "":
  5035.                 self.fileListBox.AppendItem(Item(BonusType))
  5036.             #chat.AppendChat(chat.CHAT_TYPE_INFO, str(BonusIDListe[BonusType]))    
  5037.        
  5038.     def __RefreshFileList(self):
  5039.         self.fileListBox.RemoveAllItems()
  5040.        
  5041.     def SetBonis(self):
  5042.         global Bonus0
  5043.         global Bonus1
  5044.         global Bonus2
  5045.         global Bonus3
  5046.         global Bonus4
  5047.         global PRESSWISH0
  5048.         global PRESSWISH1
  5049.         global PRESSWISH2
  5050.         global PRESSWISH3
  5051.         global PRESSWISH4
  5052.         SelectedIndex = self.fileListBox.GetSelectedItem()
  5053.         SelectedIndex = SelectedIndex.GetText()
  5054.         if str(SelectedIndex) != "keiner" and str(SelectedIndex) != "":
  5055.             if PRESSWISH0 == 1:
  5056.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "1.Bonus " + str(SelectedIndex))
  5057.                 Bonus0 = BonusIDListe[str(SelectedIndex)]
  5058.                 PRESSWISH0 = 0
  5059.             elif PRESSWISH1 == 1:
  5060.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "2.Bonus " + str(SelectedIndex))
  5061.                 Bonus1 = int(BonusIDListe[SelectedIndex])
  5062.                 PRESSWISH1 = 0
  5063.             elif PRESSWISH2 == 1:
  5064.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "3.Bonus " + str(SelectedIndex))
  5065.                 Bonus2 = int(BonusIDListe[SelectedIndex])
  5066.                 PRESSWISH2 = 0
  5067.             elif PRESSWISH3 == 1:
  5068.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "4.Bonus " + str(SelectedIndex))
  5069.                 Bonus3 = int(BonusIDListe[SelectedIndex])
  5070.                 PRESSWISH3 = 0
  5071.             elif PRESSWISH4 == 1:
  5072.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "5.Bonus " + str(SelectedIndex))
  5073.                 Bonus4 = int(BonusIDListe[SelectedIndex])
  5074.                 PRESSWISH4 = 0
  5075.                
  5076.         elif str(SelectedIndex) == "keiner" and str(SelectedIndex) != "":
  5077.             if PRESSWISH0 == 1:
  5078.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "1.Bonus wurde gelöscht")
  5079.                 Bonus0 = 0
  5080.                 PRESSWISH0 = 0
  5081.             elif PRESSWISH1 == 1:
  5082.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "2.Bonus wurde gelöscht")
  5083.                 Bonus1 = 0
  5084.                 PRESSWISH1 = 0
  5085.             elif PRESSWISH2 == 1:
  5086.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "3.Bonus wurde gelöscht")
  5087.                 Bonus2 = 0
  5088.                 PRESSWISH2 = 0
  5089.             elif PRESSWISH3 == 1:
  5090.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "4.Bonus wurde gelöscht")
  5091.                 Bonus3 = 0
  5092.                 PRESSWISH3 = 0
  5093.             elif PRESSWISH4 == 1:
  5094.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "5.Bonus wurde gelöscht")
  5095.                 Bonus4 = 0
  5096.                 PRESSWISH4 = 0 
  5097.                
  5098.         else:
  5099.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Kein Bonus ausgewählt")     
  5100.         self.Close()
  5101.        
  5102. class SelectModDialog(ui.ThinBoard):
  5103.     MOD_LIST = ( "Script Stealer",
  5104.                 "Levelbot",
  5105.                 "Chatspammer",
  5106.                 "Whisperspammer",
  5107.                 "Switchbot",
  5108.                 "Inventarmanager",
  5109.                 "Map Loader",
  5110.                 "Item Creator",
  5111.                 "Item Board",)
  5112.  
  5113.     def __init__(self):
  5114.         ui.ThinBoard.__init__(self)
  5115.         self.__Load_ModDialog()
  5116.        
  5117.     def __del__(self):
  5118.         ui.ThinBoard.__del__(self)
  5119.  
  5120.     def Destroy(self):
  5121.         self.Hide()
  5122.         return TRUE
  5123.        
  5124.     def __Load_ModDialog(self):
  5125.         self.SetPosition(wndMgr.GetScreenWidth() - 170, wndMgr.GetScreenHeight() / 2 - 60)
  5126.         self.SetSize(150, 294)
  5127.         self.Show()
  5128.         self.AddFlag("float")
  5129.         snd.PlaySound("sound/ui/type.wav")
  5130.        
  5131.         self.LoadTextLines()
  5132.         self.LoadButtons()
  5133.        
  5134.     def LoadButtons(self):
  5135.         self.CloseButton = ui.Button()
  5136.         self.CloseButton.SetParent(self)
  5137.         self.CloseButton.SetPosition(125, 13)
  5138.         self.CloseButton.SetUpVisual("d:/ymir work/ui/public/close_button_01.sub")
  5139.         self.CloseButton.SetOverVisual("d:/ymir work/ui/public/close_button_02.sub")
  5140.         self.CloseButton.SetDownVisual("d:/ymir work/ui/public/close_button_03.sub")
  5141.         self.CloseButton.SetToolTipText(locale.UI_CLOSE, 0, - 23)
  5142.         self.CloseButton.SetEvent(ui.__mem_func__(self.Close))
  5143.         self.CloseButton.Show()
  5144.        
  5145.         self.ModList = []
  5146.  
  5147.         x = 33
  5148.         i = 0
  5149.         y = 40
  5150.         for Modname in self.MOD_LIST:
  5151.             SelectModButton = ui.Button()
  5152.             SelectModButton.SetParent(self)
  5153.             SelectModButton.SetPosition(x, y)
  5154.             SelectModButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  5155.             SelectModButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  5156.             SelectModButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  5157.             SelectModButton.SetText(Modname)
  5158.             SelectModButton.Show()
  5159.  
  5160.             Mod = self.MOD_LIST[i]
  5161.             SelectModButton.SetEvent(lambda arg = Mod: self.SelectMod(arg))
  5162.             SelectModButton.SetEvent(lambda arg = Mod: self.SelectMod(arg))
  5163.             self.ModList.append(SelectModButton)
  5164.             x += 0
  5165.             y += 24
  5166.             i += 1
  5167.        
  5168.     def LoadTextLines(self):
  5169.         self.WhisperSpamTitle = ui.TextLine()
  5170.         self.WhisperSpamTitle.SetParent(self)
  5171.         self.WhisperSpamTitle.SetPosition(47, 13)
  5172.         self.WhisperSpamTitle.SetFeather()
  5173.         self.WhisperSpamTitle.SetDefaultFontName()
  5174.         self.WhisperSpamTitle.SetText("Modselection")
  5175.         self.WhisperSpamTitle.SetFontColor(0.6, 0.7, 1.0)
  5176.         self.WhisperSpamTitle.SetOutline()
  5177.         self.WhisperSpamTitle.Show()   
  5178.  
  5179.         self.CreatorText = ui.TextLine()
  5180.         self.CreatorText.SetParent(self)
  5181.         self.CreatorText.SetDefaultFontName()
  5182.         self.CreatorText.SetPosition(71, 190 + 79)
  5183.         self.CreatorText.SetFeather()
  5184.         self.CreatorText.SetText("by Waynetrain")
  5185.         self.CreatorText.SetFontColor(1.0, 0.5, 0.5)
  5186.         self.CreatorText.SetOutline()
  5187.         self.CreatorText.Show()
  5188.        
  5189.     def SelectMod(self, mod):          
  5190.         if str(mod) == "Script Stealer":
  5191.             self.ScriptStealer = ScriptStealerDialog()
  5192.             self.ScriptStealer.Show()
  5193.         elif str(mod) == "Levelbot":
  5194.             self.Levelbot = LevelBotDialog()
  5195.             self.Levelbot.Show()
  5196.         elif str(mod) == "Chatspammer":
  5197.             self.ChatSpammer = ChatSpammerDialog()
  5198.             self.ChatSpammer.Show()
  5199.         elif str(mod) == "Whisperspammer":
  5200.             self.WhisperSpammer = WhisperSpammerDialog()
  5201.             self.WhisperSpammer.Show()
  5202.         elif str(mod) == "Switchbot":
  5203.             self.SwitchBot = SwitchBotDialog()
  5204.             self.SwitchBot.Show()
  5205.         elif str(mod) == "Inventarmanager":
  5206.             self.InventoryManager = InventoryManagerDialog()
  5207.             self.InventoryManager.Show()
  5208.         elif str(mod) == "Map Loader":
  5209.             self.MapList = MapListDialog()
  5210.             self.MapList.Show()        
  5211.         elif str(mod) == "Item Creator":
  5212.             self.ItemCreator = CreateItemDialog()
  5213.             self.ItemCreator.Show()
  5214.         elif str(mod) == "Item Board":
  5215.             self.ItemBoard = ItemBoardDialog()
  5216.             self.ItemBoard.Show()
  5217.            
  5218.     def Show(self):
  5219.         ui.ThinBoard.Show(self)
  5220.        
  5221.     def Close(self):
  5222.         self.Hide()
  5223.         return TRUE
  5224.        
  5225.     def OnPressEscapeKey(self):
  5226.         self.Hide()
  5227.         return TRUE
  5228.  
  5229. class WaitingDialog(ui.ScriptWindow):
  5230.  
  5231.     def __init__(self):
  5232.         ui.ScriptWindow.__init__(self)
  5233.         self.eventTimeOver = lambda *arg: None
  5234.         self.eventExit = lambda *arg: None
  5235.  
  5236.     def __del__(self):
  5237.         ui.ScriptWindow.__del__(self)
  5238.  
  5239.     def Open(self, waitTime):
  5240.         curTime = time.clock()
  5241.         self.endTime = curTime + waitTime
  5242.  
  5243.         self.Show()    
  5244.  
  5245.     def Close(self):
  5246.         self.Hide()
  5247.  
  5248.     def Destroy(self):
  5249.         self.Hide()
  5250.  
  5251.     def SAFE_SetTimeOverEvent(self, event):
  5252.         self.eventTimeOver = ui.__mem_func__(event)
  5253.  
  5254.     def SAFE_SetExitEvent(self, event):
  5255.         self.eventExit = ui.__mem_func__(event)
  5256.        
  5257.     def OnUpdate(self):
  5258.         lastTime = max(0, self.endTime - time.clock())
  5259.         if 0 == lastTime:
  5260.             self.Close()
  5261.             self.eventTimeOver()
  5262.         else:
  5263.             return
  5264.        
  5265.     def OnPressExitKey(self):
  5266.         self.Close()
  5267.         return TRUE
  5268.  
  5269. class InventoryManagerDialog(ui.ThinBoard):
  5270.     def __init__(self):
  5271.         ui.ThinBoard.__init__(self)
  5272.  
  5273.         self.isLoaded=0
  5274.         self.selectEvent=None
  5275.         self.fileListBox=None
  5276.  
  5277.         self.SetCenterPosition()
  5278.         self.SetSize(278, 370)
  5279.         self.Show()
  5280.         self.AddFlag("movable")
  5281.         self.AddFlag("float")
  5282.        
  5283.     def __del__(self):
  5284.         ui.ThinBoard.__del__(self)
  5285.  
  5286.     def Show(self):
  5287.         if self.isLoaded==0:
  5288.             self.isLoaded=1
  5289.  
  5290.             self.__Load()
  5291.  
  5292.         ui.ThinBoard.Show(self)
  5293.  
  5294.     def Close(self):
  5295.         self.Hide()
  5296.  
  5297.     def OnPressEscapeKey(self):
  5298.         self.Close()
  5299.         return TRUE
  5300.  
  5301.     def __CreateFileListBox(self):
  5302.         fileListBox = ui.ListBoxEx()
  5303.         fileListBox.SetParent(self)
  5304.         fileListBox.SetPosition(15, 50)
  5305.         fileListBox.Show()
  5306.         return fileListBox
  5307.  
  5308.     def __Load(self):
  5309.         self.__Load_BindObject()
  5310.         self.UpdateFileList()
  5311.  
  5312.     def __Load_BindObject(self):
  5313.         self.fileListBox = self.__CreateFileListBox()
  5314.         self.LoadFuckingScrollBar()
  5315.         self.LoadTextLines()
  5316.         self.LoadEditLines()
  5317.         self.LoadButtons()
  5318.         self.fileListBox.SetScrollBar(self.ScrollBar)
  5319.        
  5320.         self.ImageButton = self.CreateImageButtons("", "", "", "icon/item/00010.tga", 137, 150, self.NewAppendFunc)
  5321.        
  5322.     def CreateImageButtons(self, UpVisual, OverVisual, DownVisual, Image, XPosition, YPosition, event):
  5323.         self.SpecialImageBox = ui.ExpandedImageBox()
  5324.         self.SpecialImageBox.SetParent(self)
  5325.         self.SpecialImageBox.SetPosition(int(XPosition), int(YPosition))
  5326.         if str(Image) != "":
  5327.             self.SpecialImageBox.LoadImage(str(Image))
  5328.         self.SpecialImageBox.Show()
  5329.        
  5330.         self.ImageBoxButton = ui.Button()
  5331.         if str(UpVisual) != "":
  5332.             self.ImageBoxButton.SetUpVisual(str(UpVisual))
  5333.         if str(OverVisual) != "":
  5334.             self.ImageBoxButton.SetOverVisual(str(OverVisual))
  5335.         if str(DownVisual) != "":
  5336.             self.ImageBoxButton.SetDownVisual(str(DownVisual))
  5337.         self.ImageBoxButton.SetText("Abbrechen")
  5338.         self.ImageBoxButton.SetParent(self.SpecialImageBox)
  5339.         self.ImageBoxButton.SetPosition(20, 10)
  5340.         self.ImageBoxButton.SetSize(70, 40)
  5341.         self.ImageBoxButton.SetEvent(ui.__mem_func__(event))
  5342.         self.ImageBoxButton.Show()
  5343.        
  5344.     def NewAppendFunc(self):
  5345.         self.fileListBox.AppendItem(Item("It works!"))
  5346.        
  5347.     def LoadEditLines(self):
  5348.         self.InputUpGradeSlotBar = ui.SlotBar()
  5349.         self.InputUpGradeSlotBar.SetParent(self)
  5350.         self.InputUpGradeSlotBar.SetSize(15, 18)
  5351.         self.InputUpGradeSlotBar.SetPosition(73, 265)
  5352.         self.InputUpGradeSlotBar.SetWindowHorizontalAlignCenter()
  5353.         self.InputUpGradeSlotBar.Show()
  5354.        
  5355.         self.InputUpGradeEditLine = ui.EditLine()
  5356.         self.InputUpGradeEditLine.SetParent(self.InputUpGradeSlotBar)
  5357.         self.InputUpGradeEditLine.SetSize(15, 17)
  5358.         self.InputUpGradeEditLine.SetPosition(6, 2)
  5359.         self.InputUpGradeEditLine.SetMax(1)
  5360.         self.InputUpGradeEditLine.SetFocus()
  5361.         self.InputUpGradeEditLine.SetNumberMode()
  5362.         self.InputUpGradeEditLine.Show()
  5363.        
  5364.         self.LevelLimitTextLine = ui.TextLine()
  5365.         self.LevelLimitTextLine.SetParent(self)
  5366.         self.LevelLimitTextLine.SetDefaultFontName()
  5367.         self.LevelLimitTextLine.SetPosition(211, 343)
  5368.         self.LevelLimitTextLine.SetFeather()
  5369.         self.LevelLimitTextLine.SetText("Level:")
  5370.         self.LevelLimitTextLine.SetFontColor(1.0, 1.0, 1.0)
  5371.         self.LevelLimitTextLine.SetOutline()
  5372.         self.LevelLimitTextLine.Show()
  5373.        
  5374.         self.InputItemLevelSlotBar = ui.SlotBar()
  5375.         self.InputItemLevelSlotBar.SetParent(self)
  5376.         self.InputItemLevelSlotBar.SetSize(19, 18)
  5377.         self.InputItemLevelSlotBar.SetPosition(113, 340)
  5378.         self.InputItemLevelSlotBar.SetWindowHorizontalAlignCenter()
  5379.         self.InputItemLevelSlotBar.Show()
  5380.        
  5381.         self.InputItemLevelEditLine = ui.EditLine()
  5382.         self.InputItemLevelEditLine.SetParent(self.InputItemLevelSlotBar)
  5383.         self.InputItemLevelEditLine.SetSize(15, 17)
  5384.         self.InputItemLevelEditLine.SetPosition(2, 2)
  5385.         self.InputItemLevelEditLine.SetMax(3)
  5386.         self.InputItemLevelEditLine.SetFocus()
  5387.         self.InputItemLevelEditLine.SetNumberMode()
  5388.         self.InputItemLevelEditLine.Show()
  5389.        
  5390.     def LoadButtons(self):
  5391.         self.CloseButton = ui.Button()
  5392.         self.CloseButton.SetParent(self)
  5393.         self.CloseButton.SetPosition(243, 18)
  5394.         self.CloseButton.SetUpVisual("d:/ymir work/ui/public/close_button_01.sub")
  5395.         self.CloseButton.SetOverVisual("d:/ymir work/ui/public/close_button_02.sub")
  5396.         self.CloseButton.SetDownVisual("d:/ymir work/ui/public/close_button_03.sub")
  5397.         self.CloseButton.SetToolTipText(locale.UI_CLOSE, 0, - 23)
  5398.         self.CloseButton.SetEvent(ui.__mem_func__(self.Close))
  5399.         self.CloseButton.Show()
  5400.  
  5401.         self.RefreshButton = ui.Button()
  5402.         self.RefreshButton.SetParent(self)
  5403.         self.RefreshButton.SetPosition(218, 16)
  5404.         self.RefreshButton.SetUpVisual("d:/ymir work/ui/game/guild/Refresh_Button_01.sub")
  5405.         self.RefreshButton.SetOverVisual("d:/ymir work/ui/game/guild/Refresh_Button_02.sub")
  5406.         self.RefreshButton.SetDownVisual("d:/ymir work/ui/game/guild/Refresh_Button_03.sub")
  5407.         self.RefreshButton.SetToolTipText("Refresh List")
  5408.         self.RefreshButton.SetEvent(ui.__mem_func__(self.UpdateFileList))
  5409.         self.RefreshButton.Show()
  5410.    
  5411.         self.UpgradeButton = ui.Button()
  5412.         self.UpgradeButton.SetParent(self)
  5413.         self.UpgradeButton.SetUpVisual("d:/ymir work/ui/public/Large_button_01.sub")
  5414.         self.UpgradeButton.SetOverVisual("d:/ymir work/ui/public/Large_button_02.sub")
  5415.         self.UpgradeButton.SetDownVisual("d:/ymir work/ui/public/Large_button_03.sub")
  5416.         self.UpgradeButton.SetText("Upgrade")
  5417.         self.UpgradeButton.SetPosition(15, 265)
  5418.         self.UpgradeButton.SetToolTipText("Schmied: Gegenstand aufwerten")
  5419.         self.UpgradeButton.SetEvent(ui.__mem_func__(self.UpgradeItem))
  5420.         self.UpgradeButton.Show()
  5421.        
  5422.         self.UpgradeTowerButton = ui.Button()
  5423.         self.UpgradeTowerButton.SetParent(self)
  5424.         self.UpgradeTowerButton.SetPosition(110, 265)
  5425.         self.UpgradeTowerButton.SetUpVisual("d:/ymir work/ui/public/Large_button_01.sub")
  5426.         self.UpgradeTowerButton.SetOverVisual("d:/ymir work/ui/public/Large_button_02.sub")
  5427.         self.UpgradeTowerButton.SetDownVisual("d:/ymir work/ui/public/Large_button_03.sub")
  5428.         self.UpgradeTowerButton.SetText("Upgrade DT")
  5429.         self.UpgradeTowerButton.SetToolTipText("Schmied: Verbessert Items auf der Schmied-Ebene")
  5430.         self.UpgradeTowerButton.SetEvent(ui.__mem_func__(self.UpgradeItemDeviltower))
  5431.         self.UpgradeTowerButton.Show()
  5432.  
  5433.         self.DropButton = ui.Button()
  5434.         self.DropButton.SetParent(self)
  5435.         self.DropButton.SetPosition(15, 290)
  5436.         self.DropButton.SetUpVisual("d:/ymir work/ui/public/Large_button_01.sub")
  5437.         self.DropButton.SetOverVisual("d:/ymir work/ui/public/Large_button_02.sub")
  5438.         self.DropButton.SetDownVisual("d:/ymir work/ui/public/Large_button_03.sub")
  5439.         self.DropButton.SetText("Drop Selected")
  5440.         self.DropButton.SetEvent(ui.__mem_func__(self.DropItem))
  5441.         self.DropButton.Show()
  5442.  
  5443.         self.DropAllButton = ui.Button()
  5444.         self.DropAllButton.SetParent(self)
  5445.         self.DropAllButton.SetPosition(110, 290)
  5446.         self.DropAllButton.SetUpVisual("d:/ymir work/ui/public/Large_button_01.sub")
  5447.         self.DropAllButton.SetOverVisual("d:/ymir work/ui/public/Large_button_02.sub")
  5448.         self.DropAllButton.SetDownVisual("d:/ymir work/ui/public/Large_button_03.sub")
  5449.         self.DropAllButton.SetText("Drop All")
  5450.         self.DropAllButton.SetEvent(ui.__mem_func__(self.DropAllItemsRequest))
  5451.         self.DropAllButton.Show()
  5452.  
  5453.         self.SellButton = ui.Button()
  5454.         self.SellButton.SetParent(self)
  5455.         self.SellButton.SetPosition(15, 315)
  5456.         self.SellButton.SetUpVisual("d:/ymir work/ui/public/Large_button_01.sub")
  5457.         self.SellButton.SetOverVisual("d:/ymir work/ui/public/Large_button_02.sub")
  5458.         self.SellButton.SetDownVisual("d:/ymir work/ui/public/Large_button_03.sub")
  5459.         self.SellButton.SetText("Sell Selected")
  5460.         self.SellButton.SetEvent(ui.__mem_func__(self.SellItem))
  5461.         self.SellButton.Show()
  5462.  
  5463.         self.SellAllButton = ui.Button()
  5464.         self.SellAllButton.SetParent(self)
  5465.         self.SellAllButton.SetPosition(110, 315)
  5466.         self.SellAllButton.SetUpVisual("d:/ymir work/ui/public/Large_button_01.sub")
  5467.         self.SellAllButton.SetOverVisual("d:/ymir work/ui/public/Large_button_02.sub")
  5468.         self.SellAllButton.SetDownVisual("d:/ymir work/ui/public/Large_button_03.sub")
  5469.         self.SellAllButton.SetText("Sell All")
  5470.         self.SellAllButton.SetEvent(ui.__mem_func__(self.SellAllItems))
  5471.         self.SellAllButton.Show()
  5472.  
  5473.         self.DropLevelButtonOn = ui.Button()
  5474.         self.DropLevelButtonOn.SetParent(self)
  5475.         self.DropLevelButtonOn.SetPosition(15, 340)
  5476.         self.DropLevelButtonOn.SetUpVisual("d:/ymir work/ui/public/Large_button_01.sub")
  5477.         self.DropLevelButtonOn.SetOverVisual("d:/ymir work/ui/public/Large_button_02.sub")
  5478.         self.DropLevelButtonOn.SetDownVisual("d:/ymir work/ui/public/Large_button_03.sub")
  5479.         self.DropLevelButtonOn.SetText("Itemdrop On")
  5480.         self.DropLevelButtonOn.SAFE_SetEvent(self.DropItems)
  5481.         self.DropLevelButtonOn.Show()
  5482.  
  5483.         self.DropLevelButtonOff = ui.Button()
  5484.         self.DropLevelButtonOff.SetParent(self)
  5485.         self.DropLevelButtonOff.SetPosition(110, 340)
  5486.         self.DropLevelButtonOff.SetUpVisual("d:/ymir work/ui/public/Large_button_01.sub")
  5487.         self.DropLevelButtonOff.SetOverVisual("d:/ymir work/ui/public/Large_button_02.sub")
  5488.         self.DropLevelButtonOff.SetDownVisual("d:/ymir work/ui/public/Large_button_03.sub")
  5489.         self.DropLevelButtonOff.SetText("Itemdrop Off")
  5490.         self.DropLevelButtonOff.SAFE_SetEvent(self.DropItemsOff)
  5491.         self.DropLevelButtonOff.Show()
  5492.  
  5493.         self.ConfigButton = ui.Button()
  5494.         self.ConfigButton.SetParent(self)
  5495.         self.ConfigButton.SetPosition(227, 265)
  5496.         self.ConfigButton.SetUpVisual("d:/ymir work/ui/public/Small_button_01.sub")
  5497.         self.ConfigButton.SetOverVisual("d:/ymir work/ui/public/Small_button_02.sub")
  5498.         self.ConfigButton.SetDownVisual("d:/ymir work/ui/public/Small_button_03.sub")
  5499.         self.ConfigButton.SetText("Config")
  5500.         self.ConfigButton.SetToolTipText("Configure your Ugrade Hack")
  5501.         #self.ConfigButton.SetEvent(ui.__mem_func__(self.UpdateFileList))
  5502.         self.ConfigButton.Show()
  5503.        
  5504.     def LoadTextLines(self):
  5505.         self.ItemManager = ui.TextLine()
  5506.         self.ItemManager.SetParent(self)
  5507.         self.ItemManager.SetDefaultFontName()
  5508.         self.ItemManager.SetPosition(135 - 50, 18)
  5509.         self.ItemManager.SetFeather()
  5510.         self.ItemManager.SetText("Inventory Manager")
  5511.         self.ItemManager.SetFontColor(0.4, 0.7, 1.0)
  5512.         self.ItemManager.SetOutline()
  5513.         self.ItemManager.Show()
  5514.  
  5515.         self.PositionText = ui.TextLine()
  5516.         self.PositionText.SetParent(self)
  5517.         self.PositionText.SetDefaultFontName()
  5518.         self.PositionText.SetPosition(10, 37)
  5519.         self.PositionText.SetFeather()
  5520.         self.PositionText.SetText("         ID:         Name:")
  5521.         self.PositionText.SetFontColor(0.2, 0.2, 1.0)
  5522.         self.PositionText.SetOutline()
  5523.         self.PositionText.Show()
  5524.  
  5525.     def LoadFuckingScrollBar(self):
  5526.         self.ScrollBar = ui.ScrollBar()
  5527.         self.ScrollBar.SetParent(self)
  5528.         self.ScrollBar.SetPosition(180, 40)
  5529.         self.ScrollBar.SetScrollBarSize(220)
  5530.         self.ScrollBar.Show()
  5531.  
  5532.     def UpdateFileList(self):
  5533.         self.fileListBox.RemoveAllItems()
  5534.         for i in xrange(94):
  5535.             ItemIndex = player.GetItemIndex(i)
  5536.             if ItemIndex != 0:
  5537.                 item.SelectItem(ItemIndex)
  5538.                 item.GetItemName(ItemIndex)
  5539.                 ItemName = item.GetItemName()
  5540.                 self.fileListBox.AppendItem(Item(str(i) + " " + str(ItemIndex) + "  " + ItemName))
  5541.  
  5542.     def DropItems(self):
  5543.         self.defaultTimer = WaitingDialog()
  5544.         self.defaultTimer.Open(1.5)
  5545.         self.defaultTimer.SAFE_SetTimeOverEvent(self.DropItems)
  5546.         self.defaultTimer.SAFE_SetExitEvent(self.TimerCancel)
  5547.         LevelLimit = int(self.InputItemLevelEditLine.GetText())
  5548.         for i in xrange(90):
  5549.             itemIndex = player.GetItemIndex(i)
  5550.             item.SelectItem(itemIndex)
  5551.             itemType = item.GetItemType()
  5552.             if item.ITEM_TYPE_WEAPON == itemType or item.ITEM_TYPE_ARMOR == itemType:
  5553.                 (limitType, limitValue) = item.GetLimit(0)
  5554.                 if limitValue < LevelLimit:
  5555.                     net.SendItemDropPacket(i)
  5556.        
  5557.     def DropItemsOff(self):
  5558.         self.TimerCancel()
  5559.  
  5560.     def TimerCancel(self):
  5561.         if self.defaultTimer:
  5562.             self.defaultTimer.Close()
  5563.         self.defaultTimer = None
  5564.        
  5565.     def UpgradeItem(self):
  5566.         ItemIndex = self.fileListBox.GetSelectedItem()
  5567.         if ItemIndex:
  5568.             pass
  5569.         else:
  5570.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Kein Item ausgewählt!")
  5571.         SelectedItem = ItemIndex.GetText().split("  ")
  5572.         Count = int(self.InputUpGradeEditLine.GetText())
  5573.         for i in xrange(Count):
  5574.             #Normal Upgrade
  5575.             net.SendRefinePacket(int(SelectedItem[0]), 0)
  5576.            
  5577.             #Guild Blacksmith Upgrade
  5578.             #net.SendRefinePacket(int(SelectedItem[0]), 1)
  5579.             #Magic Metal Upgrade
  5580.             #net.SendRefinePacket(int(SelectedItem[0]), 2)
  5581.             #Bless Scroll Upgrade
  5582.             #net.SendRefinePacket(int(SelectedItem[0]), 3)
  5583.             #Deviltower Upgrade
  5584.             #net.SendRefinePacket(int(SelectedItem[0]), 4)
  5585.            
  5586.     def UpgradeItemDeviltower(self):
  5587.         ItemIndex = self.fileListBox.GetSelectedItem()
  5588.         if ItemIndex:
  5589.             pass
  5590.         else:
  5591.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Kein Item ausgewählt!")
  5592.         SelectedItem = ItemIndex.GetText().split("  ")
  5593.         Count = int(self.InputUpGradeEditLine.GetText())
  5594.         for i in xrange(Count):
  5595.             #Deviltower Upgrade
  5596.             net.SendRefinePacket(int(SelectedItem[0]), 4)
  5597.        
  5598.     def SellItem(self):
  5599.         ItemIndex = self.fileListBox.GetSelectedItem()
  5600.         if ItemIndex:
  5601.             pass
  5602.         else:
  5603.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Kein Item ausgewählt!")
  5604.         SelectedItem = ItemIndex.GetText().split("  ")
  5605.         net.SendShopSellPacket(int(SelectedItem[0]))
  5606.  
  5607.     def SellAllItems(self):
  5608.         self.QuestionDialog = uiCommon.QuestionDialog()
  5609.         self.QuestionDialog.SetText("Willst du alle deine Items verkaufen?")
  5610.         self.QuestionDialog.SetAcceptEvent(ui.__mem_func__(self.SellAll))
  5611.         self.QuestionDialog.SetCancelEvent(ui.__mem_func__(self.CancelQuestionDialog))
  5612.         self.QuestionDialog.Open()
  5613.        
  5614.     def SellAll(self):
  5615.         for i in xrange(90):
  5616.             net.SendShopSellPacket(i)
  5617.         self.CancelQuestionDialog()
  5618.    
  5619.     def DropItem(self):
  5620.         ItemIndex = self.fileListBox.GetSelectedItem()
  5621.         if ItemIndex:
  5622.             pass
  5623.         else:
  5624.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Kein Item ausgewählt!")
  5625.         SelectedItem = ItemIndex.GetText().split("  ")
  5626.         net.SendItemDropPacket(int(SelectedItem[0]))
  5627.        
  5628.     def DropAllItemsRequest(self):
  5629.         self.QuestionDialog = uiCommon.QuestionDialog()
  5630.         self.QuestionDialog.SetText("Möchtest du all deine Items fallen lassen?")
  5631.         self.QuestionDialog.SetAcceptEvent(ui.__mem_func__(self.DropAllItems))
  5632.         self.QuestionDialog.SetCancelEvent(ui.__mem_func__(self.CancelQuestionDialog))
  5633.         self.QuestionDialog.Open()
  5634.            
  5635.     def DropAllItems(self):
  5636.         for i in xrange(90):
  5637.             net.SendItemDropPacket(i)
  5638.         self.CancelQuestionDialog()
  5639.        
  5640.     def CancelQuestionDialog(self):
  5641.         self.QuestionDialog.Close()
  5642.         self.QuestionDialog = None
  5643.        
  5644. class ConfigurationInventoryManager(ui.ScriptWindow):
  5645.  
  5646.     def __init__(self):
  5647.         ui.ScriptWindow.__init__(self)
  5648.  
  5649.         self.__CreateDialog()
  5650.  
  5651.     def __del__(self):
  5652.         ui.ScriptWindow.__del__(self)
  5653.  
  5654.     def __CreateDialog(self):
  5655.         self.Board = ui.BoardWithTitleBar()
  5656.         self.Board.SetSize(293, 180)
  5657.         self.Board.SetPosition(wndMgr.GetScreenWidth() / 2 - 293, wndMgr.GetScreenHeight() / 2 - 180)
  5658.         self.Board.AddFlag("movable")
  5659.         self.Board.SetTitleName("Replace Files")
  5660.         self.Board.Show()
  5661.        
  5662.         self.ReplaceExisting = ui.TextLine()
  5663.         self.ReplaceExisting.SetParent(self.Board)
  5664.         self.ReplaceExisting.SetDefaultFontName()
  5665.         self.ReplaceExisting.SetPosition(20, 40)
  5666.         self.ReplaceExisting.SetFeather()
  5667.         self.ReplaceExisting.SetText("Existing Text:")
  5668.         self.ReplaceExisting.SetFontColor(0.6, 0.7, 1)
  5669.         self.ReplaceExisting.SetOutline()
  5670.         self.ReplaceExisting.Show()
  5671.    
  5672.         self.ReplaceExistingSlotBar = ui.SlotBar()
  5673.         self.ReplaceExistingSlotBar.SetParent(self.Board)
  5674.         self.ReplaceExistingSlotBar.SetSize(250, 18)
  5675.         self.ReplaceExistingSlotBar.SetPosition(0, 60)
  5676.         self.ReplaceExistingSlotBar.SetWindowHorizontalAlignCenter()
  5677.         self.ReplaceExistingSlotBar.Show()
  5678.        
  5679.         self.ReplaceExistingEditLine = ui.EditLine()
  5680.         self.ReplaceExistingEditLine.SetParent(self.ReplaceExistingSlotBar)
  5681.         self.ReplaceExistingEditLine.SetSize(250, 17)
  5682.         self.ReplaceExistingEditLine.SetPosition(10, 2)
  5683.         self.ReplaceExistingEditLine.SetMax(64)
  5684.         self.ReplaceExistingEditLine.SetFocus()
  5685.         self.ReplaceExistingEditLine.Show()
  5686.        
  5687.         self.ReplaceText = ui.TextLine()
  5688.         self.ReplaceText.SetParent(self.Board)
  5689.         self.ReplaceText.SetDefaultFontName()
  5690.         self.ReplaceText.SetPosition(20, 85)
  5691.         self.ReplaceText.SetFeather()
  5692.         self.ReplaceText.SetText("New Text:")
  5693.         self.ReplaceText.SetFontColor(0.6, 0.7, 1)
  5694.         self.ReplaceText.SetOutline()
  5695.         self.ReplaceText.Show()
  5696.    
  5697.         self.ReplaceSlotBar = ui.SlotBar()
  5698.         self.ReplaceSlotBar.SetParent(self.Board)
  5699.         self.ReplaceSlotBar.SetSize(250, 18)
  5700.         self.ReplaceSlotBar.SetPosition(0, 105)
  5701.         self.ReplaceSlotBar.SetWindowHorizontalAlignCenter()
  5702.         self.ReplaceSlotBar.Show()
  5703.        
  5704.         self.ReplaceEditLine = ui.EditLine()
  5705.         self.ReplaceEditLine.SetParent(self.ReplaceSlotBar)
  5706.         self.ReplaceEditLine.SetSize(250, 17)
  5707.         self.ReplaceEditLine.SetPosition(10, 2)
  5708.         self.ReplaceEditLine.SetMax(64)
  5709.         self.ReplaceEditLine.Show()
  5710.  
  5711.         self.ReplaceEditLine.SetTabEvent(ui.__mem_func__(self.ReplaceExistingEditLine.SetFocus))
  5712.         self.ReplaceEditLine.SetReturnEvent(ui.__mem_func__(self.ReplaceExistingEditLine.SetFocus))
  5713.         self.ReplaceExistingEditLine.SetTabEvent(ui.__mem_func__(self.ReplaceEditLine.SetFocus))
  5714.         self.ReplaceExistingEditLine.SetReturnEvent(ui.__mem_func__(self.ReplaceEditLine.SetFocus))
  5715.  
  5716.         self.ClickReplaceButton = ui.Button()
  5717.         self.ClickReplaceButton.SetParent(self.Board)
  5718.         self.ClickReplaceButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  5719.         self.ClickReplaceButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  5720.         self.ClickReplaceButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  5721.         self.ClickReplaceButton.SetText("Suchen & Ersetzen")
  5722.         self.ClickReplaceButton.SetPosition(50, 137)
  5723.         self.ClickReplaceButton.Show()
  5724.  
  5725.         self.ClickBreakButton = ui.Button()
  5726.         self.ClickBreakButton.SetParent(self.Board)
  5727.         self.ClickBreakButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  5728.         self.ClickBreakButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  5729.         self.ClickBreakButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  5730.         self.ClickBreakButton.SetText("Abbrechen")
  5731.         self.ClickBreakButton.SetPosition(150, 137)
  5732.         #self.ClickBreakButton.Show()
  5733.  
  5734.         self.Test = ui.Button()
  5735.         self.Test.SetParent(self.Board)
  5736.         #self.Test.SetText("Abbrechen")
  5737.         #self.Test.LoadImage("icon/item/00010.tga")
  5738.         self.Test.SetPosition(150, 137)
  5739.         self.Test.Show()
  5740.  
  5741.     def Open(self):
  5742.         self.SetCenterPosition()
  5743.         self.SetTop()
  5744.         self.Show()
  5745.  
  5746.     def Close(self):
  5747.         self.ClearDictionary()
  5748.         self.Board = None
  5749.         self.ClickReplaceButton = None
  5750.         self.ClickBreakButton = None
  5751.         self.ReplaceExistingSlotBar = None
  5752.         self.ReplaceExistingEditLine = None
  5753.         self.ReplaceSlotBar = None
  5754.         self.ReplaceEditLine = None
  5755.         self.Hide()
  5756.  
  5757.     def SetTitle(self, name):
  5758.         self.Board.SetTitleName(name)
  5759.  
  5760.     def SetNumberMode(self):
  5761.         self.ReplaceExistingEditLine.SetNumberMode()
  5762.         self.ReplaceEditLine.SetNumberMode()
  5763.  
  5764.     def SetSecretMode(self):
  5765.         self.ReplaceExistingEditLine.SetSecret()
  5766.         self.ReplaceEditLine.SetSecret()
  5767.  
  5768.     def SetFocus(self):
  5769.         self.ReplaceExistingEditLine.SetFocus()
  5770.  
  5771.     def SetMaxLength(self, length):
  5772.         width = length * 6 + 10
  5773.         self.ReplaceExistingEditLine.SetMax(length)
  5774.         self.ReplaceEditLine.SetMax(length)
  5775.         self.SetSlotWidth(width)
  5776.         self.SetBoardWidth(max(width + 50, 160))
  5777.  
  5778.     def SetSlotWidth(self, width):
  5779.         self.ReplaceExistingSlotBar.SetSize(width, self.ReplaceExistingSlotBar.GetHeight())
  5780.         self.ReplaceSlotBar.SetSize(width, self.ReplaceSlotBar.GetHeight())
  5781.         self.ReplaceExistingEditLine.SetSize(width, self.ReplaceExistingEditLine.GetHeight())
  5782.         self.ReplaceEditLine.SetSize(width, self.ReplaceEditLine.GetHeight())
  5783.  
  5784.     def SetBoardWidth(self, width):
  5785.         self.Board.SetSize(max(width + 50, 160), self.GetHeight())
  5786.         self.SetSize(max(width + 50, 160), self.GetHeight())
  5787.         self.UpdateRect()
  5788.  
  5789.     def SetAcceptEvent(self, event):
  5790.         self.ClickReplaceButton.SetEvent(event)
  5791.         self.ReplaceExistingEditLine.OnIMEReturn = event
  5792.         self.ReplaceEditLine.OnIMEReturn = event
  5793.  
  5794.     def SetCancelEvent(self, event):
  5795.         self.Board.SetCloseEvent(event)
  5796.         self.ClickBreakButton.SetEvent(event)
  5797.         self.ReplaceExistingEditLine.OnPressEscapeKey = event
  5798.         self.ReplaceEditLine.OnPressEscapeKey = event
  5799.  
  5800.     def GetText(self):
  5801.         return self.ReplaceExistingEditLine.GetText() + "%&/" + self.ReplaceEditLine.GetText()
  5802.  
  5803.        
  5804. BUILDING_LIST = []
  5805. VID = 200000
  5806. MapName = ""
  5807.  
  5808. class IngameEditorDialog(ui.ScriptWindow):
  5809.  
  5810.     GUILD_CATEGORY_LIST = (
  5811.             ("HEADQUARTER",     "Hauptgebäude"),
  5812.             ("SNOW", "Schneegebäude"),
  5813.             ("DESERT", "Wüstengebäude"),
  5814.             ("GUILD", "Gildengebäude"),
  5815.             ("GHOST",   "Zerstöre Gebäude"),
  5816.             ("WALL",    "Walls"),
  5817.             ("DOOR",    "Türen"),
  5818.             ("TREE",    "Bäume"),         
  5819.             ("BRIDGE",  "Bridges"),
  5820.             ("ACCESSOIRES",     "Accessoires"),
  5821.             ("SPECIAL",     "Speziell"),           
  5822.             ("NEW",     "Eigene Gebäude"),        
  5823.             ("NPC",     "Npc's"),
  5824.         )
  5825.  
  5826.     MODE_VIEW = 0
  5827.     MODE_POSITIONING = 1
  5828.     MODE_PREVIEW = 2
  5829.  
  5830.     BUILDING_ALPHA = 0.55
  5831.  
  5832.     ENABLE_COLOR = grp.GenerateColor(0.7607, 0.7607, 0.7607, 1.0)
  5833.     DISABLE_COLOR = grp.GenerateColor(0.9, 0.4745, 0.4627, 1.0)
  5834.  
  5835.     START_INSTANCE_INDEX = 123450
  5836.     #WALL_SET_INSTANCE = 14105
  5837.  
  5838.     def __init__(self):
  5839.         File = open("Metin2MapEditorObjectList.py", "r+")
  5840.         FileString = File.read()
  5841.         Count = int(str(FileString).count(",\n"))
  5842.         LineSplit = str(FileString).split(",\n")
  5843.  
  5844.         self.BUILDING_LIST = []
  5845.        
  5846.         for i in xrange(int(Count)):           
  5847.             TabSplit = str(LineSplit[i]).split("\t")
  5848.             vnum = int(TabSplit[0])
  5849.             type = str(TabSplit[1])
  5850.             name = str(TabSplit[2])
  5851.             modelpath = str(TabSplit[3])
  5852.             localname = str(TabSplit[4])
  5853.             state = str(TabSplit[5])
  5854.            
  5855.             folderName = str(type).lower()
  5856.        
  5857.             if str(type) != "NPC":
  5858.                 import chrmgr
  5859.                 chrmgr.RegisterRaceName(int(vnum), str(name))
  5860.            
  5861.     #       chrmgr.RegisterRaceSrcName("horse_member", "horse")
  5862.     #       chrmgr.RegisterRaceName(19000, "horse_member")
  5863.        
  5864.             appendingData = {
  5865.                 "VNUM":vnum,
  5866.                 "TYPE":type,
  5867.                 "NAME":name,
  5868.                 "MODEL_PATH":modelpath,
  5869.                 "LOCAL_NAME":localname,
  5870.                 "SHOW":state,
  5871.                 }
  5872.             if str(state) == "TRUE":
  5873.                 self.BUILDING_LIST.append(appendingData)
  5874.    
  5875.         ui.ScriptWindow.__init__(self)
  5876.         self.__LoadWindow()
  5877.  
  5878.         self.closeEvent = None
  5879.         self.popup = None
  5880.         self.mode = self.MODE_VIEW
  5881.         self.race = 0
  5882.         self.type = None
  5883.         self.x = 0
  5884.         self.y = 0
  5885.         self.z = 0
  5886.         self.rot_x = 0
  5887.         self.rot_y = 0
  5888.         self.rot_z = 0
  5889.         self.rot_x_limit = 0
  5890.         self.rot_y_limit = 0
  5891.         self.rot_z_limit = 0
  5892.         self.needMoney = 0
  5893.         self.needStoneCount = 0
  5894.         self.needLogCount = 0
  5895.         self.needPlywoodCount = 0
  5896.  
  5897.         #self.index = 0
  5898.         self.indexList = []
  5899.         self.raceList = []
  5900.         self.posList = []
  5901.         self.PlaceObjectList = []
  5902.         self.rotList = []
  5903.  
  5904.         index = 0
  5905.         for category in self.GUILD_CATEGORY_LIST:
  5906.             self.SelectCategoryList.InsertItem(index, category[1])
  5907.             index += 1
  5908.            
  5909.         if self.SelectCategoryList.GetItemCount() < self.SelectCategoryList.GetViewItemCount():
  5910.             self.SelectCategoryList.SetSize(100, self.SelectCategoryList.GetHeight())
  5911.             self.SelectCategoryList.LocateItem()
  5912.             self.CategoryListScrollBar.Hide()
  5913.         else:
  5914.             self.SelectCategoryList.SetSize(100, self.SelectCategoryList.GetHeight())
  5915.             self.SelectCategoryList.LocateItem()
  5916.             self.CategoryListScrollBar.Show()
  5917.            
  5918.     def __del__(self):
  5919.         ui.ScriptWindow.__del__(self)
  5920.  
  5921.     def __LoadWindow(self):        
  5922.         self.Board = ui.BoardWithTitleBar()
  5923.         self.Board.SetSize(465, 505)
  5924.         self.Board.SetCenterPosition()
  5925.         self.Board.AddFlag("movable")
  5926.         self.Board.SetTitleName("Object Editor")
  5927.         self.Board.SetCloseEvent(self.OnPressEscapeKey)
  5928.         self.Board.Show()
  5929.    
  5930.         self.BuildingCategoryBar = ui.SlotBar()
  5931.         self.BuildingCategoryBar.SetParent(self.Board)
  5932.         self.BuildingCategoryBar.SetSize(100, 176)
  5933.         self.BuildingCategoryBar.SetPosition(15, 50)
  5934.         self.BuildingCategoryBar.Show()
  5935.        
  5936.         self.SelectCategoryList = ui.ListBox()
  5937.         self.SelectCategoryList.SetParent(self.BuildingCategoryBar)
  5938.         self.SelectCategoryList.SetSize(100, 172)
  5939.         self.SelectCategoryList.SetPosition(0, 5)
  5940.         self.SelectCategoryList.SetEvent(ui.__mem_func__(self.__OnSelectCategory))
  5941.         self.SelectCategoryList.Show()
  5942.        
  5943.         self.CategoryListScrollBar = ui.ScrollBar()
  5944.         self.CategoryListScrollBar.SetParent(self.BuildingCategoryBar)
  5945.         self.CategoryListScrollBar.SetPosition(35, 2)
  5946.         self.CategoryListScrollBar.SetScrollBarSize(170)
  5947.         self.CategoryListScrollBar.SetWindowHorizontalAlignCenter()
  5948.         self.CategoryListScrollBar.Show()
  5949.         self.CategoryListScrollBar.SetScrollEvent(ui.__mem_func__(self.__OnScrollCategoryList))
  5950.        
  5951.         self.BuildingListBar = ui.SlotBar()
  5952.         self.BuildingListBar.SetParent(self.Board)
  5953.         self.BuildingListBar.SetSize(200, 176)
  5954.         self.BuildingListBar.SetPosition(15 + 110, 50)
  5955.         self.BuildingListBar.Show()
  5956.        
  5957.         self.SelectBuildingList = ui.ListBox()
  5958.         self.SelectBuildingList.SetParent(self.BuildingListBar)
  5959.         self.SelectBuildingList.SetSize(182, 170)
  5960.         self.SelectBuildingList.SetPosition(43, 5)
  5961.         self.SelectBuildingList.SetEvent(ui.__mem_func__(self.__OnSelectBuilding))
  5962.         self.SelectBuildingList.Show()
  5963.        
  5964.         self.BuildingListScrollBar = ui.ScrollBar()
  5965.         self.BuildingListScrollBar.SetParent(self.BuildingListBar)
  5966.         self.BuildingListScrollBar.SetPosition(85, 2)
  5967.         self.BuildingListScrollBar.SetScrollBarSize(170)
  5968.         self.BuildingListScrollBar.SetWindowHorizontalAlignCenter()
  5969.         self.BuildingListScrollBar.Show()
  5970.         self.BuildingListScrollBar.SetScrollEvent(ui.__mem_func__(self.__OnScrollBuildingList))
  5971.    
  5972.         self.XKoordinateSlider = ui.SliderBar()
  5973.         self.XKoordinateSlider.SetParent(self.Board)
  5974.         self.XKoordinateSlider.SetPosition(158 - 110, 115 + 140)
  5975.         self.XKoordinateSlider.SetEvent(ui.__mem_func__(self.__OnChangeRotation))
  5976.         self.XKoordinateSlider.SetSliderPos(0.5)
  5977.         self.XKoordinateSlider.Show()
  5978.        
  5979.         self.YKoordinateSlider = ui.SliderBar()
  5980.         self.YKoordinateSlider.SetParent(self.Board)
  5981.         self.YKoordinateSlider.SetPosition(158 - 110, 135 + 140)
  5982.         self.YKoordinateSlider.SetEvent(ui.__mem_func__(self.__OnChangeRotation))
  5983.         self.YKoordinateSlider.SetSliderPos(0.5)
  5984.         self.YKoordinateSlider.Show()
  5985.        
  5986.         self.ZKoordinateSlider = ui.SliderBar()
  5987.         self.ZKoordinateSlider.SetParent(self.Board)
  5988.         self.ZKoordinateSlider.SetPosition(158 - 110, 155 + 140)
  5989.         self.ZKoordinateSlider.SetEvent(ui.__mem_func__(self.__OnChangeRotation))
  5990.         self.ZKoordinateSlider.SetSliderPos(0.5)
  5991.         self.ZKoordinateSlider.Show()
  5992.  
  5993.         self.HeightKoordinateSlider = ui.SliderBar()
  5994.         self.HeightKoordinateSlider.SetParent(self.Board)
  5995.         self.HeightKoordinateSlider.SetPosition(158 - 110, 175 + 140)
  5996.         self.HeightKoordinateSlider.SetEvent(ui.__mem_func__(self.ChangeHeight))
  5997.         self.HeightKoordinateSlider.SetSliderPos(0.5)
  5998.         self.HeightKoordinateSlider.Show()
  5999.        
  6000.         self.PlaceExampleObjectButton = ui.Button()
  6001.         self.PlaceExampleObjectButton.SetParent(self.Board)
  6002.         self.PlaceExampleObjectButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  6003.         self.PlaceExampleObjectButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  6004.         self.PlaceExampleObjectButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  6005.         self.PlaceExampleObjectButton.SetText("Move")
  6006.         self.PlaceExampleObjectButton.SetPosition(348, 49)
  6007.         self.PlaceExampleObjectButton.SetEvent(ui.__mem_func__(self.__OnSelectPositioningMode))
  6008.         self.PlaceExampleObjectButton.Show()
  6009.        
  6010.         self.PreviewButton = ui.ToggleButton()
  6011.         self.PreviewButton.SetParent(self.Board)
  6012.         self.PreviewButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  6013.         self.PreviewButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  6014.         self.PreviewButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  6015.         self.PreviewButton.SetText("Preview")
  6016.         self.PreviewButton.SetPosition(348, 79)
  6017.         self.PreviewButton.SetToggleDownEvent(ui.__mem_func__(self.__OnEnterPreviewMode))
  6018.         self.PreviewButton.SetToggleUpEvent(ui.__mem_func__(self.__OnLeavePreviewMode))
  6019.         self.PreviewButton.Show()
  6020.        
  6021.         self.PlaceObjectButton = ui.Button()
  6022.         self.PlaceObjectButton.SetParent(self.Board)
  6023.         self.PlaceObjectButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  6024.         self.PlaceObjectButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  6025.         self.PlaceObjectButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  6026.         self.PlaceObjectButton.SetText("Place Object")
  6027.         self.PlaceObjectButton.SetPosition(348, 109)
  6028.         self.PlaceObjectButton.SetEvent(ui.__mem_func__(self.PlaceObject))
  6029.         self.PlaceObjectButton.Show()
  6030.  
  6031.         self.WriteObjectToFileButton = ui.Button()
  6032.         self.WriteObjectToFileButton.SetParent(self.Board)
  6033.         self.WriteObjectToFileButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  6034.         self.WriteObjectToFileButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  6035.         self.WriteObjectToFileButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  6036.         self.WriteObjectToFileButton.SetText("Write areadata")
  6037.         self.WriteObjectToFileButton.SetPosition(348, 139)
  6038.         self.WriteObjectToFileButton.SetEvent(ui.__mem_func__(self.WriteNewFile))
  6039.         self.WriteObjectToFileButton.Show()
  6040.  
  6041.         self.BackwardButton = ui.Button()
  6042.         self.BackwardButton.SetParent(self.Board)
  6043.         self.BackwardButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  6044.         self.BackwardButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  6045.         self.BackwardButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  6046.         self.BackwardButton.SetText("Reverse")
  6047.         self.BackwardButton.SetPosition(348, 169)
  6048.         self.BackwardButton.SetEvent(ui.__mem_func__(self.ReverseBuilding))
  6049.         self.BackwardButton.Show()
  6050.  
  6051.         self.DeleteAllButton = ui.Button()
  6052.         self.DeleteAllButton.SetParent(self.Board)
  6053.         self.DeleteAllButton.SetUpVisual("d:/ymir work/ui/public/large_button_01.sub")
  6054.         self.DeleteAllButton.SetOverVisual("d:/ymir work/ui/public/large_button_02.sub")
  6055.         self.DeleteAllButton.SetDownVisual("d:/ymir work/ui/public/large_button_03.sub")
  6056.         self.DeleteAllButton.SetText("Delete buildings")
  6057.         self.DeleteAllButton.SetPosition(348, 199)
  6058.         self.DeleteAllButton.SetEvent(ui.__mem_func__(self.__DeleteInstance))
  6059.         self.DeleteAllButton.Show()
  6060.        
  6061.         (ax, ay, az) = player.GetMainCharacterPosition()
  6062.         import uiScriptLocale
  6063.         self.BuildingRotationTitle = ui.TextLine()
  6064.         self.BuildingRotationTitle.SetParent(self.Board)
  6065.         self.BuildingRotationTitle.SetPosition(270 - 155, 235)
  6066.         self.BuildingRotationTitle.SetFeather()
  6067.         self.BuildingRotationTitle.SetDefaultFontName()
  6068.         self.BuildingRotationTitle.SetText("Rotation")
  6069.         self.BuildingRotationTitle.SetFontColor(0.6, 0.7, 1)
  6070.         self.BuildingRotationTitle.SetOutline()
  6071.         self.BuildingRotationTitle.Show()
  6072.  
  6073.         self.XKoordinateTitle = ui.TextLine()
  6074.         self.XKoordinateTitle.SetParent(self.Board)
  6075.         self.XKoordinateTitle.SetDefaultFontName()
  6076.         self.XKoordinateTitle.SetPosition(150 - 125, 253)
  6077.         self.XKoordinateTitle.SetFeather()
  6078.         self.XKoordinateTitle.SetText("X")
  6079.         self.XKoordinateTitle.SetFontColor(1.0, 1.0, 1.0)
  6080.         self.XKoordinateTitle.SetOutline()
  6081.         self.XKoordinateTitle.Show()   
  6082.  
  6083.         self.YKoordinateTitle = ui.TextLine()
  6084.         self.YKoordinateTitle.SetParent(self.Board)
  6085.         self.YKoordinateTitle.SetDefaultFontName()
  6086.         self.YKoordinateTitle.SetPosition(150 - 125, 273)
  6087.         self.YKoordinateTitle.SetFeather()
  6088.         self.YKoordinateTitle.SetText("Y")
  6089.         self.YKoordinateTitle.SetFontColor(1.0, 1.0, 1.0)
  6090.         self.YKoordinateTitle.SetOutline()
  6091.         self.YKoordinateTitle.Show()   
  6092.        
  6093.         self.ZKoordinateTitle = ui.TextLine()
  6094.         self.ZKoordinateTitle.SetParent(self.Board)
  6095.         self.ZKoordinateTitle.SetDefaultFontName()
  6096.         self.ZKoordinateTitle.SetPosition(150 - 125, 293)
  6097.         self.ZKoordinateTitle.SetFeather()
  6098.         self.ZKoordinateTitle.SetText("Z")
  6099.         self.ZKoordinateTitle.SetFontColor(1.0, 1.0, 1.0)
  6100.         self.ZKoordinateTitle.SetOutline()
  6101.         self.ZKoordinateTitle.Show()   
  6102.  
  6103.         self.HeightKoordinateTitle = ui.TextLine()
  6104.         self.HeightKoordinateTitle.SetParent(self.Board)
  6105.         self.HeightKoordinateTitle.SetDefaultFontName()
  6106.         self.HeightKoordinateTitle.SetPosition(150 - 135, 313)
  6107.         self.HeightKoordinateTitle.SetFeather()
  6108.         self.HeightKoordinateTitle.SetText("Height")
  6109.         self.HeightKoordinateTitle.SetFontColor(1.0, 1.0, 1.0)
  6110.         self.HeightKoordinateTitle.SetOutline()
  6111.         self.HeightKoordinateTitle.Show()  
  6112.  
  6113.         self.XRotationTitle = ui.TextLine()
  6114.         self.XRotationTitle.SetParent(self.Board)
  6115.         self.XRotationTitle.SetDefaultFontName()
  6116.         self.XRotationTitle.SetPosition(150 + 110, 253)
  6117.         self.XRotationTitle.SetFeather()
  6118.         self.XRotationTitle.SetText("Horizontal:")
  6119.         self.XRotationTitle.SetFontColor(1.0, 1.0, 1.0)
  6120.         self.XRotationTitle.SetOutline()
  6121.         self.XRotationTitle.Show()
  6122.        
  6123.         self.XRotationSlotBar = ui.SlotBar()
  6124.         self.XRotationSlotBar.SetParent(self.Board)
  6125.         self.XRotationSlotBar.SetSize(103, 18)
  6126.         self.XRotationSlotBar.SetPosition(220 + 110, 251)
  6127.         self.XRotationSlotBar.Show()
  6128.  
  6129.         self.XRotationValue = ui.TextLine()
  6130.         self.XRotationValue.SetParent(self.Board)
  6131.         self.XRotationValue.SetDefaultFontName()
  6132.         self.XRotationValue.SetPosition(225 + 110, 253)
  6133.         self.XRotationValue.SetFeather()
  6134.         self.XRotationValue.SetText("0.0")
  6135.         self.XRotationValue.SetFontColor(1.0, 1.0, 1.0)
  6136.         self.XRotationValue.SetOutline()
  6137.         self.XRotationValue.Show()
  6138.        
  6139.         self.YRotationTitle = ui.TextLine()
  6140.         self.YRotationTitle.SetParent(self.Board)
  6141.         self.YRotationTitle.SetDefaultFontName()
  6142.         self.YRotationTitle.SetPosition(150 + 110, 273)
  6143.         self.YRotationTitle.SetFeather()
  6144.         self.YRotationTitle.SetText("Vertical:")
  6145.         self.YRotationTitle.SetFontColor(1.0, 1.0, 1.0)
  6146.         self.YRotationTitle.SetOutline()
  6147.         self.YRotationTitle.Show()
  6148.        
  6149.         self.YRotationSlotBar = ui.SlotBar()
  6150.         self.YRotationSlotBar.SetParent(self.Board)
  6151.         self.YRotationSlotBar.SetSize(103, 18)
  6152.         self.YRotationSlotBar.SetPosition(220 + 110, 271)
  6153.         self.YRotationSlotBar.Show()
  6154.        
  6155.         self.YRotationValue = ui.TextLine()
  6156.         self.YRotationValue.SetParent(self.Board)
  6157.         self.YRotationValue.SetDefaultFontName()
  6158.         self.YRotationValue.SetPosition(225 + 110, 273)
  6159.         self.YRotationValue.SetFeather()
  6160.         self.YRotationValue.SetText("0.0")
  6161.         self.YRotationValue.SetFontColor(1.0, 1.0, 1.0)
  6162.         self.YRotationValue.SetOutline()
  6163.         self.YRotationValue.Show()
  6164.  
  6165.         self.ZRotationTitle = ui.TextLine()
  6166.         self.ZRotationTitle.SetParent(self.Board)
  6167.         self.ZRotationTitle.SetDefaultFontName()
  6168.         self.ZRotationTitle.SetPosition(150 + 110, 293)
  6169.         self.ZRotationTitle.SetFeather()
  6170.         self.ZRotationTitle.SetText("Rotation:")
  6171.         self.ZRotationTitle.SetFontColor(1.0, 1.0, 1.0)
  6172.         self.ZRotationTitle.SetOutline()
  6173.         self.ZRotationTitle.Show() 
  6174.        
  6175.         self.ZRotationSlotBar = ui.SlotBar()
  6176.         self.ZRotationSlotBar.SetParent(self.Board)
  6177.         self.ZRotationSlotBar.SetSize(103, 18)
  6178.         self.ZRotationSlotBar.SetPosition(220 + 110, 291)
  6179.         self.ZRotationSlotBar.Show()
  6180.        
  6181.         self.ZRotationValue = ui.TextLine()
  6182.         self.ZRotationValue.SetParent(self.Board)
  6183.         self.ZRotationValue.SetDefaultFontName()
  6184.         self.ZRotationValue.SetPosition(225 + 110, 293)
  6185.         self.ZRotationValue.SetFeather()
  6186.         self.ZRotationValue.SetText("0.0")
  6187.         self.ZRotationValue.SetFontColor(1.0, 1.0, 1.0)
  6188.         self.ZRotationValue.SetOutline()
  6189.         self.ZRotationValue.Show()
  6190.  
  6191.         self.HeightTitle = ui.TextLine()
  6192.         self.HeightTitle.SetParent(self.Board)
  6193.         self.HeightTitle.SetDefaultFontName()
  6194.         self.HeightTitle.SetPosition(150 + 110, 313)
  6195.         self.HeightTitle.SetFeather()
  6196.         self.HeightTitle.SetText("Height:")
  6197.         self.HeightTitle.SetFontColor(1.0, 1.0, 1.0)
  6198.         self.HeightTitle.SetOutline()
  6199.         self.HeightTitle.Show()
  6200.        
  6201.         self.HeightSlotBar = ui.SlotBar()
  6202.         self.HeightSlotBar.SetParent(self.Board)
  6203.         self.HeightSlotBar.SetSize(103, 18)
  6204.         self.HeightSlotBar.SetPosition(220 + 110, 311)
  6205.         self.HeightSlotBar.Show()
  6206.        
  6207.         self.HeightValue = ui.TextLine()
  6208.         self.HeightValue.SetParent(self.Board)
  6209.         self.HeightValue.SetDefaultFontName()
  6210.         self.HeightValue.SetPosition(225 + 110, 313)
  6211.         self.HeightValue.SetFeather()
  6212.         self.HeightValue.SetText("0.0")
  6213.         self.HeightValue.SetFontColor(1.0, 1.0, 1.0)
  6214.         self.HeightValue.SetOutline()
  6215.         self.HeightValue.Show()
  6216.        
  6217.         self.BuildingListHeadline = ui.TextLine()
  6218.         self.BuildingListHeadline.SetParent(self.Board)
  6219.         self.BuildingListHeadline.SetDefaultFontName()
  6220.         self.BuildingListHeadline.SetPosition(75 + 110, 33)
  6221.         self.BuildingListHeadline.SetHorizontalAlignCenter()
  6222.         self.BuildingListHeadline.SetText("Gebäudeliste")
  6223.         self.BuildingListHeadline.SetFontColor(0.6, 0.7, 1)
  6224.         self.BuildingListHeadline.Show()   
  6225.  
  6226.         self.BuildingCategoryTitle = ui.TextLine()
  6227.         self.BuildingCategoryTitle.SetParent(self.Board)
  6228.         self.BuildingCategoryTitle.SetDefaultFontName()
  6229.         self.BuildingCategoryTitle.SetPosition(65, 33)
  6230.         self.BuildingCategoryTitle.SetHorizontalAlignCenter()
  6231.         self.BuildingCategoryTitle.SetText("Gebäudekategorien")
  6232.         self.BuildingCategoryTitle.SetFontColor(0.6, 0.7, 1)
  6233.         self.BuildingCategoryTitle.Show()
  6234.        
  6235.         self.CoordinatesHeadline = ui.TextLine()
  6236.         self.CoordinatesHeadline.SetParent(self.Board)
  6237.         self.CoordinatesHeadline.SetDefaultFontName()
  6238.         self.CoordinatesHeadline.SetPosition(150 - 125, 150 + 190)
  6239.         self.CoordinatesHeadline.SetFeather()
  6240.         self.CoordinatesHeadline.SetText("Placement")
  6241.         self.CoordinatesHeadline.SetFontColor(0.6, 0.7, 1)
  6242.         self.CoordinatesHeadline.SetOutline()
  6243.         self.CoordinatesHeadline.Show()
  6244.  
  6245.         self.XCoordinateTitle = ui.TextLine()
  6246.         self.XCoordinateTitle.SetParent(self.Board)
  6247.         self.XCoordinateTitle.SetDefaultFontName()
  6248.         self.XCoordinateTitle.SetPosition(150 - 125, 150 + 205)
  6249.         self.XCoordinateTitle.SetFeather()
  6250.         self.XCoordinateTitle.SetText("X Koordinate:")
  6251.         self.XCoordinateTitle.SetFontColor(1.0, 1.0, 1.0)
  6252.         self.XCoordinateTitle.SetOutline()
  6253.         self.XCoordinateTitle.Show()
  6254.        
  6255.         self.XCoordinateSlotBar = ui.SlotBar()
  6256.         self.XCoordinateSlotBar.SetParent(self.Board)
  6257.         self.XCoordinateSlotBar.SetSize(85, 18)
  6258.         self.XCoordinateSlotBar.SetPosition(150 - 125, 165 + 205)
  6259.         self.XCoordinateSlotBar.Show()
  6260.  
  6261.         self.XCoordinateValue = ui.EditLine()
  6262.         self.XCoordinateValue.SetParent(self.XCoordinateSlotBar)
  6263.         self.XCoordinateValue.SetSize(80, 17)
  6264.         self.XCoordinateValue.SetPosition(5, 2)
  6265.         self.XCoordinateValue.SetMax(16)
  6266.         self.XCoordinateValue.SetText(str(ax))
  6267.         self.XCoordinateValue.SetNumberMode()
  6268.         self.XCoordinateValue.Show()
  6269.  
  6270.         self.SetXCoordinateButton = ui.Button()
  6271.         self.SetXCoordinateButton.SetParent(self.Board)
  6272.         self.SetXCoordinateButton.SetUpVisual("d:/ymir work/ui/public/small_button_01.sub")
  6273.         self.SetXCoordinateButton.SetOverVisual("d:/ymir work/ui/public/small_button_02.sub")
  6274.         self.SetXCoordinateButton.SetDownVisual("d:/ymir work/ui/public/small_button_03.sub")
  6275.         self.SetXCoordinateButton.SetText("Set")
  6276.         self.SetXCoordinateButton.SetPosition(120, 370)
  6277.         self.SetXCoordinateButton.SetEvent(ui.__mem_func__(self.ChanceXCoordinate))
  6278.         self.SetXCoordinateButton.Show()
  6279.        
  6280.         self.YCoordinateTitle = ui.TextLine()
  6281.         self.YCoordinateTitle.SetParent(self.Board)
  6282.         self.YCoordinateTitle.SetDefaultFontName()
  6283.         self.YCoordinateTitle.SetPosition(150 - 125, 150 + 40 + 205)
  6284.         self.YCoordinateTitle.SetFeather()
  6285.         self.YCoordinateTitle.SetText("Y Koordinate:")
  6286.         self.YCoordinateTitle.SetFontColor(1.0, 1.0, 1.0)
  6287.         self.YCoordinateTitle.SetOutline()
  6288.         self.YCoordinateTitle.Show()
  6289.        
  6290.         self.YCoordinateSlotBar = ui.SlotBar()
  6291.         self.YCoordinateSlotBar.SetParent(self.Board)
  6292.         self.YCoordinateSlotBar.SetSize(85, 18)
  6293.         self.YCoordinateSlotBar.SetPosition(150 - 125, 165 + 40 + 205)
  6294.         self.YCoordinateSlotBar.Show()
  6295.  
  6296.         self.YCoordinateValue = ui.EditLine()
  6297.         self.YCoordinateValue.SetParent(self.YCoordinateSlotBar)
  6298.         self.YCoordinateValue.SetSize(80, 17)
  6299.         self.YCoordinateValue.SetPosition(5, 2)
  6300.         self.YCoordinateValue.SetMax(16)
  6301.         self.YCoordinateValue.SetText(str(ay))
  6302.         self.YCoordinateValue.SetNumberMode()
  6303.         self.YCoordinateValue.Show()
  6304.        
  6305.         self.SetYCoordinateButton = ui.Button()
  6306.         self.SetYCoordinateButton.SetParent(self.Board)
  6307.         self.SetYCoordinateButton.SetUpVisual("d:/ymir work/ui/public/small_button_01.sub")
  6308.         self.SetYCoordinateButton.SetOverVisual("d:/ymir work/ui/public/small_button_02.sub")
  6309.         self.SetYCoordinateButton.SetDownVisual("d:/ymir work/ui/public/small_button_03.sub")
  6310.         self.SetYCoordinateButton.SetText("Set")
  6311.         self.SetYCoordinateButton.SetPosition(120, 410)
  6312.         self.SetYCoordinateButton.SetEvent(ui.__mem_func__(self.ChanceYCoordinate))
  6313.         self.SetYCoordinateButton.Show()
  6314.  
  6315.         self.ZCoordinateTitle = ui.TextLine()
  6316.         self.ZCoordinateTitle.SetParent(self.Board)
  6317.         self.ZCoordinateTitle.SetDefaultFontName()
  6318.         self.ZCoordinateTitle.SetPosition(150 - 125, 150 + 80 + 205)
  6319.         self.ZCoordinateTitle.SetFeather()
  6320.         self.ZCoordinateTitle.SetText("Height Koordinate:")
  6321.         self.ZCoordinateTitle.SetFontColor(1.0, 1.0, 1.0)
  6322.         self.ZCoordinateTitle.SetOutline()
  6323.         self.ZCoordinateTitle.Show()
  6324.        
  6325.         self.ZCoordinateSlotBar = ui.SlotBar()
  6326.         self.ZCoordinateSlotBar.SetParent(self.Board)
  6327.         self.ZCoordinateSlotBar.SetSize(85, 18)
  6328.         self.ZCoordinateSlotBar.SetPosition(25, 165 + 80 + 205)
  6329.         self.ZCoordinateSlotBar.Show()
  6330.  
  6331.         self.ZCoordinateValue = ui.EditLine()
  6332.         self.ZCoordinateValue.SetParent(self.ZCoordinateSlotBar)
  6333.         self.ZCoordinateValue.SetSize(80, 17)
  6334.         self.ZCoordinateValue.SetPosition(5, 2)
  6335.         self.ZCoordinateValue.SetMax(16)
  6336.         self.ZCoordinateValue.SetText(str(az))
  6337.         self.ZCoordinateValue.SetNumberMode()
  6338.         self.ZCoordinateValue.Show()
  6339.        
  6340.         self.SetZCoordinateButton = ui.Button()
  6341.         self.SetZCoordinateButton.SetParent(self.Board)
  6342.         self.SetZCoordinateButton.SetUpVisual("d:/ymir work/ui/public/small_button_01.sub")
  6343.         self.SetZCoordinateButton.SetOverVisual("d:/ymir work/ui/public/small_button_02.sub")
  6344.         self.SetZCoordinateButton.SetDownVisual("d:/ymir work/ui/public/small_button_03.sub")
  6345.         self.SetZCoordinateButton.SetText("Set")
  6346.         self.SetZCoordinateButton.SetPosition(120, 450)
  6347.         self.SetZCoordinateButton.SetEvent(ui.__mem_func__(self.ChanceZCoordinate))
  6348.         self.SetZCoordinateButton.Show()
  6349.  
  6350.     ##Camera Settings:
  6351.         self.CameraSettingsHeadline = ui.TextLine()
  6352.         self.CameraSettingsHeadline.SetParent(self.Board)
  6353.         self.CameraSettingsHeadline.SetDefaultFontName()
  6354.         self.CameraSettingsHeadline.SetPosition(125 + 60, 340)
  6355.         self.CameraSettingsHeadline.SetFeather()
  6356.         self.CameraSettingsHeadline.SetText("Camera Settings")
  6357.         self.CameraSettingsHeadline.SetFontColor(0.6, 0.7, 1)
  6358.         self.CameraSettingsHeadline.SetOutline()
  6359.         self.CameraSettingsHeadline.Show()
  6360.  
  6361.         self.ZoomTitle = ui.TextLine()
  6362.         self.ZoomTitle.SetParent(self.Board)
  6363.         self.ZoomTitle.SetDefaultFontName()
  6364.         self.ZoomTitle.SetPosition(125 + 60, 355)
  6365.         self.ZoomTitle.SetFeather()
  6366.         self.ZoomTitle.SetText("Zoom")
  6367.         self.ZoomTitle.SetFontColor(1.0, 1.0, 1.0)
  6368.         self.ZoomTitle.SetOutline()
  6369.         self.ZoomTitle.Show()
  6370.        
  6371.         self.ZoomSlotBar = ui.SlotBar()
  6372.         self.ZoomSlotBar.SetParent(self.Board)
  6373.         self.ZoomSlotBar.SetSize(85, 18)
  6374.         self.ZoomSlotBar.SetPosition(125 + 60, 370)
  6375.         self.ZoomSlotBar.Show()
  6376.  
  6377.         self.ZoomValue = ui.EditLine()
  6378.         self.ZoomValue.SetParent(self.ZoomSlotBar)
  6379.         self.ZoomValue.SetSize(60, 17)
  6380.         self.ZoomValue.SetPosition(5, 2)
  6381.         self.ZoomValue.SetMax(5)
  6382.         self.ZoomValue.SetText("nichts")
  6383.         self.ZoomValue.SetNumberMode()
  6384.         self.ZoomValue.Show()
  6385.  
  6386.         self.SetZoomButton = ui.Button()
  6387.         self.SetZoomButton.SetParent(self.Board)
  6388.         self.SetZoomButton.SetUpVisual("d:/ymir work/ui/public/small_button_01.sub")
  6389.         self.SetZoomButton.SetOverVisual("d:/ymir work/ui/public/small_button_02.sub")
  6390.         self.SetZoomButton.SetDownVisual("d:/ymir work/ui/public/small_button_03.sub")
  6391.         self.SetZoomButton.SetText("Set")
  6392.         self.SetZoomButton.SetPosition(220 + 60, 370)
  6393.         self.SetZoomButton.SetEvent(ui.__mem_func__(self.SetZoomSetting))
  6394.         self.SetZoomButton.Show()
  6395.        
  6396.         self.CameraSettingTitle = ui.TextLine()
  6397.         self.CameraSettingTitle.SetParent(self.Board)
  6398.         self.CameraSettingTitle.SetDefaultFontName()
  6399.         self.CameraSettingTitle.SetPosition(125 + 60, 395)
  6400.         self.CameraSettingTitle.SetFeather()
  6401.         self.CameraSettingTitle.SetText("Flexible Camera:")
  6402.         self.CameraSettingTitle.SetFontColor(1.0, 1.0, 1.0)
  6403.         self.CameraSettingTitle.SetOutline()
  6404.         self.CameraSettingTitle.Show()
  6405.    
  6406.         self.CameraSettingButton = ui.ToggleButton()
  6407.         self.CameraSettingButton.SetParent(self.Board)
  6408.         self.CameraSettingButton.SetUpVisual("d:/ymir work/ui/public/middle_button_01.sub")
  6409.         self.CameraSettingButton.SetOverVisual("d:/ymir work/ui/public/middle_button_02.sub")
  6410.         self.CameraSettingButton.SetDownVisual("d:/ymir work/ui/public/middle_button_03.sub")
  6411.         self.CameraSettingButton.SetText("Flexible")
  6412.         self.CameraSettingButton.SetPosition(125 + 60, 410)
  6413.         self.CameraSettingButton.SetToggleDownEvent(ui.__mem_func__(self.EnableFlexCam))
  6414.         self.CameraSettingButton.SetToggleUpEvent(ui.__mem_func__(self.DisableFlexCam))
  6415.         self.CameraSettingButton.Show()
  6416.        
  6417.     #Saving Settings
  6418.         self.SavePathHeadline = ui.TextLine()
  6419.         self.SavePathHeadline.SetParent(self.Board)
  6420.         self.SavePathHeadline.SetDefaultFontName()
  6421.         self.SavePathHeadline.SetPosition(225 + 120, 340)
  6422.         self.SavePathHeadline.SetFeather()
  6423.         self.SavePathHeadline.SetText("File Settings")
  6424.         self.SavePathHeadline.SetFontColor(0.6, 0.7, 1)
  6425.         self.SavePathHeadline.SetOutline()
  6426.         self.SavePathHeadline.Show()
  6427.        
  6428.         self.SavePathTitle = ui.TextLine()
  6429.         self.SavePathTitle.SetParent(self.Board)
  6430.         self.SavePathTitle.SetDefaultFontName()
  6431.         self.SavePathTitle.SetPosition(225 + 120, 355)
  6432.         self.SavePathTitle.SetFeather()
  6433.         self.SavePathTitle.SetText("Read & Save Map")
  6434.         self.SavePathTitle.SetFontColor(1.0, 1.0, 1.0)
  6435.         self.SavePathTitle.SetOutline()
  6436.         self.SavePathTitle.Show()
  6437.        
  6438.         self.SavePathBar = ui.SlotBar()
  6439.         self.SavePathBar.SetParent(self.Board)
  6440.         self.SavePathBar.SetSize(98, 18)
  6441.         self.SavePathBar.SetPosition(225 + 120, 370)
  6442.         self.SavePathBar.Show()
  6443.  
  6444.         global MapName
  6445.         self.FolderPath = ui.EditLine()
  6446.         self.FolderPath.SetParent(self.SavePathBar)
  6447.         self.FolderPath.SetSize(98, 17)
  6448.         self.FolderPath.SetPosition(5, 2)
  6449.         self.FolderPath.SetMax(34)
  6450.         self.FolderPath.SetText("pack/" + str(MapName) + "/")
  6451.         self.FolderPath.Show()
  6452.        
  6453.     def EnableFlexCam(self):
  6454.         return
  6455.        
  6456.     def DisableFlexCam(self):
  6457.         return
  6458.        
  6459.     def ReverseBuilding(self):
  6460.         global VID
  6461.         VID -= 1
  6462.        
  6463.         DeleteIndex = self.indexList[len(self.indexList) - 1]
  6464.         for index in self.indexList:
  6465.             if index == DeleteIndex:
  6466.                 chr.DeleteInstance(index)
  6467.         self.indexList.remove(DeleteIndex)
  6468.  
  6469.         ReverseObject = self.raceList[len(self.raceList) - 1]
  6470.         self.raceList.remove(ReverseObject)
  6471.  
  6472.         ReversePosition = self.posList[len(self.posList) - 1]
  6473.         self.posList.remove(ReversePosition)
  6474.  
  6475.         ReverseRotation = self.rotList[len(self.rotList) - 1]
  6476.         self.rotList.remove(ReverseRotation)
  6477.  
  6478.         self.__OnSelectBuilding()
  6479.        
  6480.     def SetZoomSetting(self):
  6481.         app.SetCameraMaxDistance(int(self.ZoomValue.GetText()))
  6482.         app.SetMinFog(1280000)
  6483.    
  6484.     def ChanceXCoordinate(self):
  6485.         X = self.XCoordinateValue.GetText()
  6486.         if str(X).find(".") != -1:
  6487.             XSplit = str(X).split(".")
  6488.             X = int(XSplit[0])
  6489.         self.SetBuildingPosition(int(X), int(self.y), int(self.z))
  6490.        
  6491.     def ChanceYCoordinate(self):
  6492.         Y = self.YCoordinateValue.GetText()
  6493.         if str(Y).find(".") != -1:
  6494.             YSplit = str(Y).split(".")
  6495.             Y = int(YSplit[0])
  6496.         self.SetBuildingPosition(int(self.x), int(Y), int(self.z))     
  6497.        
  6498.     def ChanceZCoordinate(self):
  6499.         Height = self.ZCoordinateValue.GetText()
  6500.         if str(Height).find(".") != -1:
  6501.             HeightSplit = str(Height).split(".")
  6502.             Height = int(HeightSplit[0])
  6503.         self.SetBuildingPosition(int(self.x), int(self.y), int(Height))    
  6504.        
  6505.     def __GetBuildInPosition(self):
  6506.         zList = []
  6507.         zList.append( background.GetHeight(self.x+self.sxPos, self.y+self.syPos) )     
  6508.         zList.append( background.GetHeight(self.x+self.sxPos, self.y+self.eyPos) )
  6509.         zList.append( background.GetHeight(self.x+self.exPos, self.y+self.syPos) )
  6510.         zList.append( background.GetHeight(self.x+self.exPos, self.y+self.eyPos) )
  6511.         zList.append( background.GetHeight(self.x+(self.exPos+self.sxPos)/2, self.y+(self.eyPos+self.syPos)/2) )
  6512.         zList.sort()
  6513.         return zList[3]
  6514.  
  6515.     def __DeleteInstance(self):
  6516.         global VID
  6517.         VID = 200000
  6518.         if not self.indexList:
  6519.             return
  6520.  
  6521.         for index in self.indexList:
  6522.             chr.DeleteInstance(index)
  6523.  
  6524.         self.indexList = []
  6525.         self.raceList = []
  6526.         self.posList = []
  6527.         self.PlaceObjectList = []
  6528.         self.rotList = []
  6529.         self.__OnSelectBuilding()
  6530.  
  6531.     def __CreateInstance(self, race):
  6532.         global VID
  6533.         self.race = race
  6534.  
  6535.         idx = self.START_INSTANCE_INDEX + int(VID)
  6536.        
  6537.         self.indexList.append(idx)
  6538.         self.posList.append((0, 0, 0))
  6539.         self.rotList.append(0)
  6540.        
  6541.         chr.CreateInstance(idx)
  6542.         chr.SelectInstance(idx)
  6543.         chr.SetVirtualID(idx)
  6544.         chr.SetInstanceType(chr.INSTANCE_TYPE_OBJECT)
  6545.  
  6546.         chr.SetRace(race)
  6547.         chr.SetArmor(0)
  6548.         chr.Refresh()
  6549.         chr.SetLoopMotion(chr.MOTION_WAIT)
  6550.         chr.SetBlendRenderMode(idx, self.BUILDING_ALPHA)
  6551.        
  6552.         self.SetBuildingPosition(int(self.x), int(self.y), 0)
  6553.         self.XKoordinateSlider.SetSliderPos(0.5)
  6554.         self.YKoordinateSlider.SetSliderPos(0.5)
  6555.         self.ZKoordinateSlider.SetSliderPos(0.5)
  6556.         self.HeightKoordinateSlider.SetSliderPos(0.5)
  6557.         self.XRotationValue.SetText("0.0")
  6558.         self.YRotationValue.SetText("0.0")
  6559.         self.ZRotationValue.SetText("0.0")
  6560.         self.HeightValue.SetText(str(self.z))
  6561.         self.ZCoordinateValue.SetText(str(self.z))
  6562.  
  6563.     def SetCloseEvent(self, event):
  6564.         self.closeEvent = event
  6565.        
  6566.     def WriteNewFile(self):
  6567.         import os
  6568.         global MapName
  6569.         for data in self.PlaceObjectList:
  6570.             ValueX = str(data["X"])
  6571.             ValueY = str(data["Y"])
  6572.             if str(data["X"]).find(".") != -1:
  6573.                 ValueX = str(data["X"]).split(".")
  6574.                 ValueX = int(ValueX[0])
  6575.             if str(data["Y"]).find(".") != -1:
  6576.                 ValueY = str(data["Y"]).split(".")
  6577.                 ValueY = int(ValueY[0])
  6578.             FoldernameX = int(int(ValueX) / 25500)
  6579.             FoldernameY = int(int(ValueY) / 25500)
  6580.             Path = str(self.FolderPath.GetText())
  6581.             if str(str(Path)[len(Path) - 1:]) != "/":
  6582.                 Path = str(Path) + "/"
  6583.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Speicherpfad: " + str(Path) + str(MapName) + "/00" + str(FoldernameX) + "00" + str(FoldernameY) + "/areadata.txt")
  6584.             if not os.path.exists(str(Path) + str(MapName) + "/00" + str(FoldernameX) + "00" + str(FoldernameY)):
  6585.                 self.CreatePath(str(Path) + str(MapName) + "/00" + str(FoldernameX) + "00" + str(FoldernameY))
  6586.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "Neuer Pfad musste angelegt werden!")
  6587.             f = open(str(Path) + str(MapName) + "/00" + str(FoldernameX) + "00" + str(FoldernameY) + "/areadata.txt", "r")
  6588.             Filestring = f.read()
  6589.             f.close()
  6590.             if str(Filestring).find("ObjectCount") != -1:
  6591.                 f = open(str(Path) + str(MapName) + "/00" + str(FoldernameX) + "00" + str(FoldernameY) + "/areadata.txt", "w+")
  6592.                 Filesplit = str(Filestring).split("ObjectCount")
  6593.                 Objects = str(Filesplit[0])
  6594.                 Objectscount = str(Filestring).count("Start")
  6595.                 ObjectcountNumber = str(int(Filesplit[1]))
  6596.                 index = int(ObjectcountNumber)
  6597.                 f.write(str(Objects))
  6598.                 for data in self.PlaceObjectList:
  6599.                     ObjectNum = "00" + str(int(index))
  6600.                     if int(index) > 9 and int(index) < 100:
  6601.                         ObjectNum = "0" + str(int(index))
  6602.                     elif int(index) > 99:
  6603.                         ObjectNum = str(int(index))
  6604.                     f.write("Start Object" + str(ObjectNum) + "\n")
  6605.                     f.write("   " + str(data["X"]) + " -" + str(data["Y"]) + " " + str(data["Z"]) + "\n")
  6606.                     f.write("   " + str(data["MODEL_PATH"]) + "\n")
  6607.                     f.write("   " + str(data["HORIZONTAL"]) + "#" + str(data["VERTICAL"]) + "#" + str(data["ROTATION"]) + "\n")
  6608.                     f.write("   0.000000\n")
  6609.                     f.write("End Object\n")
  6610.                     index += 1
  6611.                 f.write("ObjectCount " + str(int(ObjectcountNumber) + len(self.PlaceObjectList)))
  6612.                 f.close()
  6613.             self.PlaceObjectList = []
  6614.        
  6615.     def CreatePath(self, Path):
  6616.         import os
  6617.         os.makedirs(Path)
  6618.         f = open(str(Path) + "/areadata.txt", "w+")
  6619.         f.write("AreaDataFile\n\nObjectCount 0")
  6620.         f.close()
  6621.        
  6622.     def Open(self):
  6623.         global VID
  6624.         VID = 200000
  6625.         x, y, z = player.GetMainCharacterPosition()
  6626.         app.SetCameraSetting(int(x), int(-y), int(z), 3000, 0, 30)
  6627.         (cameraDistance, cameraPitch, cameraRotation, cameraHeight) = app.GetCamera()
  6628.         self.ZoomValue.SetText(str(int(cameraDistance)))
  6629.  
  6630.         self.x = x
  6631.         self.y = y
  6632.         self.z = z
  6633.         self.SelectCategoryList.SelectItem(0)
  6634.         self.SelectBuildingList.SelectItem(0)
  6635.         self.SetTop()
  6636.         self.Show()
  6637.         self.__DisablePCBlocker()
  6638.  
  6639.     def Close(self):
  6640.         (cameraDistance, cameraPitch, cameraRotation, cameraHeight) = app.GetCamera()
  6641.         app.SetCameraMaxDistance(int(cameraDistance))
  6642.  
  6643.         ##Deleting Instances:
  6644.         if not self.indexList:
  6645.             return
  6646.  
  6647.         for index in self.indexList:
  6648.             chr.DeleteInstance(index)
  6649.  
  6650.         self.indexList = []
  6651.         self.raceList = []
  6652.         self.posList = []
  6653.         self.PlaceObjectList = []
  6654.         self.rotList = []
  6655.         ##
  6656.        
  6657.         self.Board.Hide()
  6658.         self.Hide()
  6659.         self.__OnClosePopupDialog()
  6660.         self.__EnablePCBlocker()
  6661.         self.__UnlockCameraMoving()
  6662.  
  6663.         if self.closeEvent:
  6664.             self.closeEvent()
  6665.        
  6666.     def Destory(self):
  6667.         self.Close()
  6668.  
  6669.         self.ClearDictionary()
  6670.         self.Board = None
  6671.         self.SelectCategoryList = None
  6672.         self.SelectBuildingList = None
  6673.         self.BuildingListScrollBar = None
  6674.         self.PlaceExampleObjectButton = None
  6675.         self.PreviewButton = None
  6676.         self.XCoordinateValue = None
  6677.         self.YCoordinateValue = None
  6678.         self.XKoordinateSlider = None
  6679.         self.YKoordinateSlider = None
  6680.         self.ZKoordinateSlider = None
  6681.         self.XRotationValue = None
  6682.         self.YRotationValue = None
  6683.         self.ZRotationValue = None
  6684.         self.closeEvent = None
  6685.  
  6686.     def __PopupDialog(self, text):
  6687.         popup = uiCommon.PopupDialog()
  6688.         popup.SetText(text)
  6689.         popup.SetAcceptEvent(self.__OnClosePopupDialog)
  6690.         popup.Open()
  6691.         self.popup = popup
  6692.  
  6693.     def __OnClosePopupDialog(self):
  6694.         self.popup = None
  6695.  
  6696.     def __EnablePCBlocker(self):
  6697.         chr.SetInstanceType(chr.INSTANCE_TYPE_BUILDING)
  6698.  
  6699.         for idx in self.indexList:
  6700.             chr.SetBlendRenderMode(idx, 1.0)
  6701.  
  6702.     def __DisablePCBlocker(self):
  6703.         chr.SetInstanceType(chr.INSTANCE_TYPE_OBJECT)
  6704.  
  6705.         for idx in self.indexList:
  6706.             chr.SetBlendRenderMode(idx, self.BUILDING_ALPHA)
  6707.  
  6708.     def __OnSelectPositioningMode(self):       
  6709.         if self.MODE_PREVIEW == self.mode:
  6710.             self.PlaceExampleObjectButton.SetUp()
  6711.             return
  6712.  
  6713.         self.mode = self.MODE_POSITIONING
  6714.         self.HeightKoordinateSlider.SetSliderPos(0.5)
  6715.         self.Hide()
  6716.  
  6717.     def PlaceObject(self):
  6718.         global VID
  6719.         VID += 1
  6720.    
  6721.     ##Appending temporaray Save
  6722.         XCoordinate = str(self.XCoordinateValue.GetText())
  6723.         YCoordinate = str(self.YCoordinateValue.GetText())
  6724.         ZCoordinate = str(self.ZCoordinateValue.GetText())
  6725.         XRotation = str(self.XRotationValue.GetText())
  6726.         YRotation = str(self.YRotationValue.GetText())
  6727.         ZRotation = str(self.ZRotationValue.GetText())
  6728.        
  6729.         buildingIndex = self.SelectBuildingList.GetSelectedItem()
  6730.         categoryIndex = self.SelectCategoryList.GetSelectedItem()
  6731.         selectedType = self.GUILD_CATEGORY_LIST[categoryIndex][0]
  6732.  
  6733.         index = 0
  6734.         for data in self.BUILDING_LIST:
  6735.             type = data["TYPE"]
  6736.             vnum = data["VNUM"]
  6737.             if selectedType != type:
  6738.                 continue
  6739.            
  6740.             if index == buildingIndex:
  6741.                 vnum = data["VNUM"] #Race Index Vnum
  6742.                 type = data["TYPE"] #Type
  6743.                 name = data["NAME"] #Folder/Msm
  6744.                 modelpath = data["MODEL_PATH"] #Object/NPC ID
  6745.                 localname = data["LOCAL_NAME"] #List Name
  6746.                 state = data["SHOW"] #State
  6747.             index += 1
  6748.            
  6749.         ModelData = {
  6750.             "VNUM":vnum,
  6751.             "TYPE":type,
  6752.             "NAME":name,
  6753.             "MODEL_PATH":modelpath,
  6754.             "LOCAL_NAME":localname,
  6755.             "SHOW":state,
  6756.             "X":XCoordinate,
  6757.             "Y":YCoordinate,
  6758.             "Z":ZCoordinate,
  6759.             "HORIZONTAL":XRotation,
  6760.             "VERTICAL":YRotation,
  6761.             "ROTATION":ZRotation,
  6762.             }  
  6763.         self.PlaceObjectList.append(ModelData)
  6764.     ##
  6765.        
  6766.         self.__OnSelectBuilding()
  6767.  
  6768.     def __OnEnterPreviewMode(self):
  6769.  
  6770.         if self.MODE_POSITIONING == self.mode:
  6771.             self.PreviewButton.SetUp()
  6772.             return
  6773.  
  6774.         self.mode = self.MODE_PREVIEW
  6775.         self.PlaceExampleObjectButton.SetUp()
  6776.         self.__UnlockCameraMoving()
  6777.         self.__EnablePCBlocker()
  6778.  
  6779.     def __OnLeavePreviewMode(self):
  6780.         self.__RestoreViewMode()
  6781.  
  6782.     def __RestoreViewMode(self):
  6783.         self.__DisablePCBlocker()
  6784.         self.__LockCameraMoving()
  6785.         self.mode = self.MODE_VIEW
  6786.         self.PlaceExampleObjectButton.SetUp()
  6787.         self.PreviewButton.SetUp()
  6788.  
  6789.     def __OnSelectCategory(self):
  6790.         self.BuildingListScrollBar.SetPos(0.0)
  6791.         self.__RefreshItem()
  6792.  
  6793.     def __OnSelectBuilding(self):
  6794.         buildingIndex = self.SelectBuildingList.GetSelectedItem()
  6795.         if buildingIndex >= len(self.BUILDING_LIST):
  6796.             return
  6797.  
  6798.         categoryIndex = self.SelectCategoryList.GetSelectedItem()
  6799.         if categoryIndex >= len(self.GUILD_CATEGORY_LIST):
  6800.             return
  6801.         selectedType = self.GUILD_CATEGORY_LIST[categoryIndex][0]
  6802.  
  6803.         index = 0
  6804.         for data in self.BUILDING_LIST:
  6805.             type = data["TYPE"]
  6806.             vnum = data["VNUM"]
  6807.             if selectedType != type:
  6808.                 continue
  6809.            
  6810.             if index == buildingIndex:
  6811.                 self.__CreateInstance(vnum)
  6812.  
  6813.             index += 1
  6814.  
  6815.     def __OnScrollBuildingList(self):
  6816.         viewItemCount = self.SelectBuildingList.GetViewItemCount()
  6817.         itemCount = self.SelectBuildingList.GetItemCount()
  6818.         pos = self.BuildingListScrollBar.GetPos() * (itemCount-viewItemCount)
  6819.         self.SelectBuildingList.SetBasePos(int(pos))
  6820.  
  6821.     def __OnScrollCategoryList(self):
  6822.         viewItemCount = self.SelectCategoryList.GetViewItemCount()
  6823.         itemCount = self.SelectCategoryList.GetItemCount()
  6824.         pos = self.CategoryListScrollBar.GetPos() * (itemCount-viewItemCount)
  6825.         self.SelectCategoryList.SetBasePos(int(pos))
  6826.  
  6827.     def __OnChangeRotation(self):
  6828.         self.rot_x = self.XKoordinateSlider.GetSliderPos() * 360 - 180
  6829.         self.rot_y = self.YKoordinateSlider.GetSliderPos() * 360 - 180
  6830.         self.rot_z = (self.ZKoordinateSlider.GetSliderPos() * 360 + 180) % 360
  6831.         chr.SetRotationAll(self.rot_x, self.rot_y, self.rot_z)
  6832.         self.XRotationValue.SetText(str(self.rot_x))
  6833.         self.YRotationValue.SetText(str(self.rot_y))
  6834.         self.ZRotationValue.SetText(str(self.rot_z))
  6835.  
  6836.     def ChangeHeight(self):
  6837.         self.height = self.HeightKoordinateSlider.GetSliderPos() * 4000 - 2000
  6838.         self.HeightValue.SetText(str(int(self.height) + (self.z)))
  6839.         self.SetBuildingPosition(int(self.x), int(self.y), (int(self.z) + int(self.height)))
  6840.         #chat.AppendChat(chat.CHAT_TYPE_INFO, "Additional Height: " + str(int(self.height)))
  6841.  
  6842.     def __LockCameraMoving(self):
  6843.         app.SetCameraSetting(int(self.x), int(-self.y), int(self.z), 3000, 0, 30)
  6844.  
  6845.     def __UnlockCameraMoving(self):
  6846.         app.SetDefaultCamera()
  6847.  
  6848.     def __RefreshItem(self):
  6849.  
  6850.         self.SelectBuildingList.ClearItem()
  6851.  
  6852.         categoryIndex = self.SelectCategoryList.GetSelectedItem()
  6853.         if categoryIndex >= len(self.GUILD_CATEGORY_LIST):
  6854.             return
  6855.         selectedType = self.GUILD_CATEGORY_LIST[categoryIndex][0]
  6856.  
  6857.         index = 0
  6858.         for data in self.BUILDING_LIST:
  6859.             if selectedType != data["TYPE"]:
  6860.                 continue
  6861.  
  6862.             if data["SHOW"]:
  6863.                 self.SelectBuildingList.InsertItem(index, data["LOCAL_NAME"])
  6864.  
  6865.             index += 1
  6866.  
  6867.         self.SelectBuildingList.SelectItem(0)
  6868.  
  6869.         if self.SelectBuildingList.GetItemCount() < self.SelectBuildingList.GetViewItemCount():
  6870.             self.SelectBuildingList.SetSize(120, self.SelectBuildingList.GetHeight())
  6871.             self.SelectBuildingList.LocateItem()
  6872.             self.BuildingListScrollBar.Hide()
  6873.         else:
  6874.             self.SelectBuildingList.SetSize(105, self.SelectBuildingList.GetHeight())
  6875.             self.SelectBuildingList.LocateItem()
  6876.             self.BuildingListScrollBar.Show()
  6877.  
  6878.     def SettleCurrentPosition(self):
  6879.         self.__RestoreViewMode()
  6880.         self.__LockCameraMoving()
  6881.         self.Show()
  6882.  
  6883.     def SetBuildingPosition(self, x, y, z):
  6884.         global VID
  6885.         self.x = x
  6886.         self.y = y
  6887.         self.XCoordinateValue.SetText(str(x))
  6888.         self.YCoordinateValue.SetText(str(y))
  6889.         self.ZCoordinateValue.SetText(str(z))
  6890.         self.HeightValue.SetText(str(z))
  6891.         test = self.indexList[len(self.indexList) - 1]
  6892.         for i in xrange(len(self.indexList)):
  6893.             idx = self.indexList[i]
  6894.             if int(test) == int(idx):
  6895.                 xPos, yPos, zPos = self.posList[i]
  6896.                
  6897.                 chr.SelectInstance(idx)
  6898.                 if 0 != z:
  6899.                     chr.SetPixelPosition(int(x+xPos), int(y+yPos), int(z+zPos))
  6900.                 else:
  6901.                     chr.SetPixelPosition(int(x+xPos), int(y+yPos))
  6902.  
  6903. #   def OnUpdate(self):
  6904. #       chat.AppendChat(chat.CHAT_TYPE_INFO, "Mode: " + str(int(self.mode)))
  6905.            
  6906.     def IsPositioningMode(self):
  6907.         if self.MODE_POSITIONING == self.mode:
  6908.             return TRUE
  6909.         return FALSE
  6910.  
  6911.     def IsPreviewMode(self):
  6912.         if self.MODE_PREVIEW == self.mode:
  6913.             return TRUE
  6914.         return FALSE
  6915.  
  6916.     def OnPressEscapeKey(self):
  6917.         self.Close()
  6918.         return TRUE
  6919.        
  6920. class SpecialListBox(ui.Window):
  6921.  
  6922.     class Item(ui.Window):
  6923.         def __init__(self):
  6924.             ui.Window.__init__(self)
  6925.  
  6926.         def __del__(self):
  6927.             ui.Window.__del__(self)
  6928.  
  6929.         def SetParent(self, parent):
  6930.             ui.Window.SetParent(self, parent)
  6931.             self.parent=proxy(parent)
  6932.  
  6933.         def OnMouseLeftButtonDown(self):
  6934.             self.parent.SelectItem(self)
  6935.  
  6936.         def OnRender(self):
  6937.             if self.parent.GetSelectedItem()==self:
  6938.                 self.OnSelectedRender()
  6939.  
  6940.         def OnSelectedRender(self):
  6941.             x, y = self.GetGlobalPosition()
  6942.             grp.SetColor(grp.GenerateColor(0.0, 0.0, 0.7, 0.7))
  6943.             grp.RenderBar(x, y, self.GetWidth(), self.GetHeight())
  6944.  
  6945.     def __init__(self):
  6946.         ui.Window.__init__(self)
  6947.  
  6948.         self.viewItemCount=10
  6949.         self.basePos=0
  6950.         self.itemWidth=100
  6951.         self.itemHeight=16
  6952.         self.itemStep=20
  6953.         self.selItem=0
  6954.         self.itemList=[]
  6955.         self.onSelectItemEvent = lambda *arg: None
  6956.  
  6957.         self.scrollBar=None
  6958.         self.__UpdateSize()
  6959.  
  6960.     def __del__(self):
  6961.         ui.Window.__del__(self)
  6962.  
  6963.     def __UpdateSize(self):
  6964.         height=self.itemStep*self.GetViewItemCount()
  6965.  
  6966.         self.SetSize(self.itemWidth, height)
  6967.  
  6968.     def IsEmpty(self):
  6969.         if len(self.itemList)==0:
  6970.             return 1
  6971.         return 0
  6972.  
  6973.     def SetItemStep(self, itemStep):
  6974.         self.itemStep=itemStep
  6975.         self.__UpdateSize()
  6976.  
  6977.     def SetItemSize(self, itemWidth, itemHeight):
  6978.         self.itemWidth=itemWidth
  6979.         self.itemHeight=itemHeight
  6980.         self.__UpdateSize()
  6981.  
  6982.     def SetViewItemCount(self, viewItemCount):
  6983.         self.viewItemCount=viewItemCount
  6984.  
  6985.     def SetSelectEvent(self, event):
  6986.         self.onSelectItemEvent = event
  6987.  
  6988.     def SetBasePos(self, basePos):
  6989.         for oldItem in self.itemList[self.basePos:self.basePos+self.viewItemCount]:
  6990.             oldItem.Hide()
  6991.  
  6992.         self.basePos=basePos
  6993.  
  6994.         pos=basePos
  6995.         for newItem in self.itemList[self.basePos:self.basePos+self.viewItemCount]:
  6996.             (x, y)=self.GetItemViewCoord(pos)
  6997.             newItem.SetPosition(x, y)
  6998.             newItem.Show()
  6999.             pos+=1
  7000.  
  7001.     def GetItemIndex(self, argItem):
  7002.         return self.itemList.index(argItem)
  7003.  
  7004.     def GetFirstItemName(self):
  7005.         if not self.IsEmpty():
  7006.             self.FirstItem = self.itemList[0]
  7007.         else:
  7008.             self.FirstItem = "leer"
  7009.         return self.FirstItem
  7010.  
  7011.     def GetSelectedItem(self):
  7012.         return self.selItem
  7013.  
  7014.     def SelectIndex(self, index):
  7015.  
  7016.         if index >= len(self.itemList) or index < 0:
  7017.             self.selItem = None
  7018.             return
  7019.  
  7020.         try:
  7021.             self.selItem=self.itemList[index]
  7022.         except:
  7023.             pass
  7024.  
  7025.     def SelectItem(self, selItem):
  7026.         self.selItem=selItem
  7027.         self.onSelectItemEvent(selItem)
  7028.  
  7029.     def RemoveAllItems(self):
  7030.         self.selItem=None
  7031.         self.itemList=[]
  7032.  
  7033.         if self.scrollBar:
  7034.             self.scrollBar.SetPos(0)
  7035.  
  7036.     def RemoveItem(self, delItem):
  7037.         if delItem==self.selItem:
  7038.             self.selItem=None
  7039.  
  7040.         self.itemList.remove(delItem)
  7041.  
  7042.     def AppendItem(self, newItem):
  7043.         newItem.SetParent(self)
  7044.         newItem.SetSize(self.itemWidth, self.itemHeight)
  7045.  
  7046.         pos=len(self.itemList)
  7047.         if self.__IsInViewRange(pos):
  7048.             (x, y)=self.GetItemViewCoord(pos)
  7049.             newItem.SetPosition(x, y)
  7050.             newItem.Show()
  7051.         else:
  7052.             newItem.Hide()
  7053.  
  7054.         self.itemList.append(newItem)
  7055.  
  7056.     def SetScrollBar(self, scrollBar):
  7057.         scrollBar.SetScrollEvent(ui.__mem_func__(self.__OnScroll))
  7058.         self.scrollBar=scrollBar
  7059.  
  7060.     def __OnScroll(self):
  7061.         self.SetBasePos(int(self.scrollBar.GetPos()*self.__GetScrollLen()))
  7062.  
  7063.     def __GetScrollLen(self):
  7064.         scrollLen=self.GetItemCount()-self.GetViewItemCount()
  7065.         if scrollLen<0:
  7066.             return 0
  7067.  
  7068.         return scrollLen
  7069.  
  7070.     def GetViewItemCount(self):
  7071.         return self.viewItemCount
  7072.  
  7073.     def GetItemCount(self):
  7074.         return len(self.itemList)
  7075.  
  7076.     def GetItemViewCoord(self, pos):
  7077.         return (0, (pos-self.basePos)*self.itemStep)
  7078.  
  7079.     def __IsInViewRange(self, pos):
  7080.         if pos<self.basePos:
  7081.             return 0
  7082.         if pos>=self.basePos+self.viewItemCount:
  7083.             return 0
  7084.         return 1
  7085.        
  7086. class ListBoxPrb(ui.Window):
  7087.     def __init__(self):
  7088.         ui.Window.__init__(self)
  7089.        
  7090.         f = open("prblist.py", "r+")
  7091.         filestring = f.read()
  7092.         Testlists = str(filestring).split("\n")
  7093.         f.close()
  7094.         index = 18000
  7095.         for a in Testlists:
  7096.             f = open("pack/property/" + str(a), "r+")
  7097.             Filestring = f.read()
  7098.             Filestring = str(Filestring).split("YPRT\n")
  7099.             ObjectID = str(Filestring[1]).split("\nbuildingfile")
  7100.             CountSubFolder = str(a).count("/")
  7101.             FileName = str(a).split("/")
  7102.             FileName = str(FileName[int(CountSubFolder)])
  7103.             FileName = str(FileName).replace(".prb", "")
  7104.             SpecialName = str(a).replace(".prb", "")
  7105.             SpecialName = str(SpecialName).replace("/", "   ")
  7106.             SpecialName = str(SpecialName).replace("property   ", "")
  7107.             FilePath = "source/ymir work/npc/" + str(SpecialName)
  7108.             Gr2PathSplit = str(Filestring).split("\"")
  7109.             Gr2Path = str(Gr2PathSplit[1]).replace(".gr2", "")
  7110.             File = (str(FilePath) + "/" + str(SpecialName) + ".msm")
  7111.             f.close()
  7112.            
  7113.             f = open("filelist.txt", "a+")
  7114.             f.write("Object ID: " + str(ObjectID[0]) + "\n")
  7115.             f.write("Object Directory: " + str(a) + "\n")
  7116.             f.write("File Path: " + str(File) + "\n")
  7117.             f.write("File Name: " + str(FileName) + "\n")
  7118.             f.write("Race Index: " + str(int(index)) + "\n")
  7119.             f.write("Gr2 Path: " + str(Gr2Path) + "\n")
  7120.             f.write("Special Name: " + str(SpecialName) + "\n")
  7121.             f.write("\n")
  7122.             f.close()
  7123.            
  7124.             if not os.path.exists(str(FilePath)):
  7125.                 os.makedirs(FilePath)
  7126.  
  7127.             f = open("pack/mapeditor/ymir work/npc/a1_018-stonelight/a1_018-stonelight.msm", "r+")
  7128.             ExistingMSM = f.read()
  7129.             f.close()
  7130.                
  7131.             f = open(str(File), "w+")
  7132.             NewMSM = ExistingMSM.replace("d:/ymir work/zone/a/building/a1_018-stonelight", str(Gr2Path))
  7133.             f.write(str(NewMSM))
  7134.             f.close()
  7135.            
  7136.             f = open("Metin2MapEditorTestObjectList.py", "a+")
  7137.             f.write(str(int(index)) + " OBJECT  " + str(SpecialName) + "    " + str(ObjectID[0]) + "    " + str(a) + "  TRUE,\n")
  7138.             f.close()
  7139.            
  7140.             index += 1
  7141.            
  7142. class ListBoxPrt(ui.Window):
  7143.     def __init__(self):
  7144.         ui.Window.__init__(self)
  7145.        
  7146.         f = open("prdlist.py", "r+")
  7147.         filestring = f.read()
  7148.         Testlists = str(filestring).split("\n")
  7149.         f.close()
  7150.         index = 31000
  7151.         for a in Testlists:
  7152.             f = open("pack/property/" + str(a), "r+")
  7153.             Filestring = f.read()
  7154.             Filestring = str(Filestring).split("YPRT\n")
  7155.             ObjectID = str(Filestring[1]).split("\npropertyname")
  7156.             Splittext = str(Filestring[1]).split("\"")
  7157.             File = str(Splittext[5])
  7158.             CountSubFolder = str(File).count("/")
  7159.             FileName = str(File).split("/")
  7160.             FileName = str(FileName[int(CountSubFolder)])
  7161.             FileName = str(FileName).replace(".spt", "")
  7162.             SptPath = "source/ymir work/npc2/" + str(FileName)
  7163.             Test = "source/ymir work/npc2/" + str(FileName) + "/" + str(FileName) + ".msm"
  7164.             f.close()
  7165.            
  7166.             f = open("filelist.txt", "a+")
  7167.             f.write("Object ID: " + str(ObjectID[0]) + "\n")
  7168.             f.write("Object Directory: " + str(a) + "\n")
  7169.             f.write("File Path: " + str(File) + "\n")
  7170.             f.write("File Name: " + str(FileName) + "\n")
  7171.             f.write("Sub Folder: " + str(int(CountSubFolder)) + "\n")
  7172.             f.write("Race Index: " + str(int(index)) + "\n")
  7173.             f.write("Spt Path: " + str(SptPath) + "\n")
  7174.             f.write("Test: " + str(Test) + "\n")
  7175.             f.write("\n")
  7176.             f.close()
  7177.            
  7178.             if not os.path.exists(str(SptPath)):
  7179.                 os.makedirs(SptPath)
  7180.  
  7181.             f = open("pack/mapeditor/ymir work/npc2/b1_pagodatree_rt/b1_pagodatree_rt.msm", "r+")
  7182.             ExistingMSM = f.read()
  7183.             f.close()
  7184.                
  7185.             f = open(str(Test), "w+")
  7186.             NewMSM = ExistingMSM.replace("d:/ymir work/tree/B1_PagodaTree_RT.spt", str(File))
  7187.             f.write(str(NewMSM))
  7188.             f.close()
  7189.            
  7190.             f = open("Metin2MapEditorTREEObjectList.py", "a+")
  7191.             f.write(str(int(index)) + " TREE    " + str(FileName) + "   " + str(ObjectID[0]) + "    " + str(a) + "  TRUE,\n")
  7192.             f.close()
  7193.            
  7194.             index += 1
  7195.        
  7196.     def __del__(self):
  7197.         ui.Window.__del__(self)
  7198.        
  7199. class MapListDialog(ui.Window):
  7200.     def __init__(self):
  7201.         ui.Window.__init__(self)
  7202.  
  7203.         self.isLoaded=0
  7204.         self.selectEvent=None
  7205.         self.fileListBox=None
  7206.  
  7207.         self.Board = ui.BoardWithTitleBar()
  7208.         self.Board.SetSize(240, 335)
  7209.         self.Board.SetCenterPosition()
  7210.         self.Board.AddFlag("movable")
  7211.         self.Board.AddFlag("float")
  7212.         self.Board.SetTitleName("Select Map")
  7213.         self.Board.SetCloseEvent(self.Close)
  7214.         self.Board.Show()
  7215.        
  7216.     def __del__(self):
  7217.         ui.Window.__del__(self)
  7218.  
  7219.     def Show(self):
  7220.         if self.isLoaded==0:
  7221.             self.isLoaded=1
  7222.  
  7223.             self.__Load()
  7224.  
  7225.         ui.Window.Show(self)
  7226.  
  7227.     def Open(self):
  7228.         self.Show()
  7229.  
  7230.         self.SetCenterPosition()
  7231.         self.SetTop()
  7232.         self.UpdateFileList()
  7233.  
  7234.     def Close(self):
  7235.         self.Board.Hide()
  7236.         self.XCoordinateValue = None
  7237.         self.YCoordinateValue = None
  7238.         return TRUE
  7239.  
  7240.     def OnPressEscapeKey(self):
  7241.         self.Close()
  7242.         return TRUE
  7243.  
  7244.     def __CreateFileListBox(self):
  7245.         fileListBox = ui.ListBoxEx()
  7246.         fileListBox.SetParent(self.Board)
  7247.         fileListBox.SetSelectEvent(self.UpdateMapInfo)
  7248.         fileListBox.SetPosition(15, 50)
  7249.         fileListBox.Show()
  7250.         return fileListBox
  7251.  
  7252.     def __Load(self):
  7253.         self.__Load_BindObject()
  7254.  
  7255.         self.UpdateFileList()
  7256.  
  7257.     def __Load_BindObject(self):
  7258.         self.fileListBox = self.__CreateFileListBox()
  7259.         self.LoadFuckingScrollBar()
  7260.         self.LoadTextLines()
  7261.         self.fileListBox.SetScrollBar(self.ScrollBar)
  7262.  
  7263.         self.SelectMap = ui.Button()
  7264.         self.SelectMap.SetParent(self.Board)
  7265.         self.SelectMap.SetPosition(55, 295)
  7266.         self.SelectMap.SetUpVisual("d:/ymir work/ui/public/Middle_Button_01.sub")
  7267.         self.SelectMap.SetOverVisual("d:/ymir work/ui/public/Middle_Button_02.sub")
  7268.         self.SelectMap.SetDownVisual("d:/ymir work/ui/public/Middle_Button_03.sub")
  7269.         self.SelectMap.SetText("OK")
  7270.         self.SelectMap.SetEvent(ui.__mem_func__(self.LoadMap))
  7271.         self.SelectMap.Show()
  7272.  
  7273.         self.CancelBonus = ui.Button()
  7274.         self.CancelBonus.SetParent(self.Board)
  7275.         self.CancelBonus.SetPosition(125, 295)
  7276.         self.CancelBonus.SetUpVisual("d:/ymir work/ui/public/Middle_Button_01.sub")
  7277.         self.CancelBonus.SetOverVisual("d:/ymir work/ui/public/Middle_Button_02.sub")
  7278.         self.CancelBonus.SetDownVisual("d:/ymir work/ui/public/Middle_Button_03.sub")
  7279.         self.CancelBonus.SetText("Abbrechen")
  7280.         self.CancelBonus.SetEvent(ui.__mem_func__(self.Close))
  7281.         self.CancelBonus.Show()
  7282.  
  7283.         self.XCoordinateSlotBar = ui.SlotBar()
  7284.         self.XCoordinateSlotBar.SetParent(self.Board)
  7285.         self.XCoordinateSlotBar.SetSize(85, 18)
  7286.         self.XCoordinateSlotBar.SetPosition(15, 270)
  7287.         self.XCoordinateSlotBar.Show()
  7288.  
  7289.         self.XCoordinateValue = ui.EditLine()
  7290.         self.XCoordinateValue.SetParent(self.XCoordinateSlotBar)
  7291.         self.XCoordinateValue.SetSize(60, 17)
  7292.         self.XCoordinateValue.SetPosition(5, 2)
  7293.         self.XCoordinateValue.SetMax(4)
  7294.         self.XCoordinateValue.SetText("0")
  7295.         self.XCoordinateValue.SetNumberMode()
  7296.         self.XCoordinateValue.Show()
  7297.  
  7298.         self.YCoordinateSlotBar = ui.SlotBar()
  7299.         self.YCoordinateSlotBar.SetParent(self.Board)
  7300.         self.YCoordinateSlotBar.SetSize(85, 18)
  7301.         self.YCoordinateSlotBar.SetPosition(110, 270)
  7302.         self.YCoordinateSlotBar.Show()
  7303.  
  7304.         self.YCoordinateValue = ui.EditLine()
  7305.         self.YCoordinateValue.SetParent(self.YCoordinateSlotBar)
  7306.         self.YCoordinateValue.SetSize(60, 17)
  7307.         self.YCoordinateValue.SetPosition(5, 2)
  7308.         self.YCoordinateValue.SetMax(4)
  7309.         self.YCoordinateValue.SetText("0")
  7310.         self.YCoordinateValue.SetNumberMode()
  7311.         self.YCoordinateValue.Show()
  7312.        
  7313.     def LoadTextLines(self):
  7314.         self.Headline = ui.TextLine()
  7315.         self.Headline.SetParent(self.Board)
  7316.         self.Headline.SetDefaultFontName()
  7317.         self.Headline.SetPosition(80, 29)
  7318.         self.Headline.SetFeather()
  7319.         self.Headline.SetText("Wähle deine Map:")
  7320.         self.Headline.SetFontColor(0.2, 0.2, 1.0)
  7321.         self.Headline.SetOutline()
  7322.         self.Headline.Show()
  7323.  
  7324.         self.XKoordinate = ui.TextLine()
  7325.         self.XKoordinate.SetParent(self.Board)
  7326.         self.XKoordinate.SetDefaultFontName()
  7327.         self.XKoordinate.SetPosition(15, 250)
  7328.         self.XKoordinate.SetFeather()
  7329.         self.XKoordinate.SetText("X Koordinate:")
  7330.         self.XKoordinate.SetFontColor(0.6, 0.7, 1)
  7331.         self.XKoordinate.SetOutline()
  7332.         self.XKoordinate.Show()
  7333.  
  7334.         self.YKoordinate = ui.TextLine()
  7335.         self.YKoordinate.SetParent(self.Board)
  7336.         self.YKoordinate.SetDefaultFontName()
  7337.         self.YKoordinate.SetPosition(110, 250)
  7338.         self.YKoordinate.SetFeather()
  7339.         self.YKoordinate.SetText("Y Koordinate:")
  7340.         self.YKoordinate.SetFontColor(0.6, 0.7, 1)
  7341.         self.YKoordinate.SetOutline()
  7342.         self.YKoordinate.Show()
  7343.  
  7344.     def LoadFuckingScrollBar(self):
  7345.         self.ScrollBar = ui.ScrollBar()
  7346.         self.ScrollBar.SetParent(self.Board)
  7347.         self.ScrollBar.SetPosition(210, 40)
  7348.         self.ScrollBar.SetScrollBarSize(220)
  7349.         self.ScrollBar.Show()
  7350.        
  7351.     def UpdateMapInfo(self, name):
  7352.         SelectedIndex = self.fileListBox.GetSelectedItem()
  7353.         SelectedIndex = SelectedIndex.GetText()
  7354.        
  7355.         lines = pack_open("atlasinfo.txt", "r").readlines()
  7356.         for line in lines:
  7357.             tokens = line[:-1].split("\t")
  7358.             if str(SelectedIndex) == str(tokens[0]):
  7359.                 XKoordinate = int(int(tokens[3]) * 25500 / 2) / 100
  7360.                 YKoordinate = int(int(tokens[4]) * 25500 / 2) / 100
  7361.                 self.XCoordinateValue.SetText(str(XKoordinate))
  7362.                 self.YCoordinateValue.SetText(str(YKoordinate))
  7363.        
  7364.     def UpdateFileList(self):
  7365.         self.__RefreshFileList()
  7366.         try:
  7367.             lines = pack_open("atlasinfo.txt", "r").readlines()
  7368.         except IOError:
  7369.             import dbg
  7370.             dbg.LogBox("Load Atlasinfo Error")
  7371.             app.Abort()
  7372.  
  7373.         for line in lines:
  7374.             tokens = line[:-1].split("\t")
  7375.             if len(tokens) == 0 or not tokens[0]:
  7376.                 continue
  7377.                
  7378.             mapname = str(tokens[0])
  7379.             if mapname:
  7380.                 self.fileListBox.AppendItem(Item(mapname))
  7381.            
  7382.     def __RefreshFileList(self):
  7383.         self.fileListBox.RemoveAllItems()
  7384.        
  7385.     def LoadMap(self):
  7386.         import background
  7387.         SelectedIndex = self.fileListBox.GetSelectedItem()
  7388.         SelectedIndex = SelectedIndex.GetText()
  7389.         XKoordinate = int(self.XCoordinateValue.GetText()) * 100
  7390.         YKoordinate = int(self.YCoordinateValue.GetText()) * 100
  7391.         background.LoadMap(str(SelectedIndex), XKoordinate, YKoordinate, 0)
  7392.         chr.SetPixelPosition(int(XKoordinate), int(YKoordinate))
  7393.    
  7394. ChangedValue = "FALSE"
  7395.  
  7396. class ItemListDialog(ui.Window):
  7397.     def __init__(self):
  7398.         ui.Window.__init__(self)
  7399.  
  7400.         self.Board = ui.BoardWithTitleBar()
  7401.         self.Board.SetSize(170, 335)
  7402.         self.Board.SetCenterPosition()
  7403.         self.Board.AddFlag("movable")
  7404.         self.Board.AddFlag("float")
  7405.         self.Board.SetTitleName("Item List")
  7406.         self.Board.SetCloseEvent(self.Close)
  7407.         self.Board.Show()
  7408.        
  7409.         self.__Load_BindObject()
  7410.  
  7411.         self.UpdateFileList()
  7412.        
  7413.     def __del__(self):
  7414.         ui.Window.__del__(self)
  7415.  
  7416.     def Show(self):
  7417.         ui.Window.Show(self)
  7418.  
  7419.     def Close(self):
  7420.         self.Board.Hide()
  7421.  
  7422.     def OnPressEscapeKey(self):
  7423.         self.Board.Close()
  7424.         return TRUE
  7425.  
  7426.     def __CreateFileListBox(self):
  7427.         fileListBox = ui.ListBoxEx()
  7428.         fileListBox.SetParent(self.Board)
  7429.         fileListBox.SetPosition(15, 80)
  7430.         fileListBox.Show()
  7431.         return fileListBox
  7432.  
  7433.     def __Load_BindObject(self):
  7434.         self.fileListBox = self.__CreateFileListBox()
  7435.         self.LoadFuckingScrollBar()
  7436.         self.fileListBox.SetScrollBar(self.ScrollBar)
  7437.    
  7438.         self.SelectBonus = ui.Button()
  7439.         self.SelectBonus.SetParent(self.Board)
  7440.         self.SelectBonus.SetPosition(19, 295)
  7441.         self.SelectBonus.SetUpVisual("d:/ymir work/ui/public/Middle_Button_01.sub")
  7442.         self.SelectBonus.SetOverVisual("d:/ymir work/ui/public/Middle_Button_02.sub")
  7443.         self.SelectBonus.SetDownVisual("d:/ymir work/ui/public/Middle_Button_03.sub")
  7444.         self.SelectBonus.SetText("OK")
  7445.         self.SelectBonus.SetEvent(ui.__mem_func__(self.SetBonis))
  7446.         self.SelectBonus.Show()
  7447.  
  7448.         self.CancelBonus = ui.Button()
  7449.         self.CancelBonus.SetParent(self.Board)
  7450.         self.CancelBonus.SetPosition(89, 295)
  7451.         self.CancelBonus.SetUpVisual("d:/ymir work/ui/public/Middle_Button_01.sub")
  7452.         self.CancelBonus.SetOverVisual("d:/ymir work/ui/public/Middle_Button_02.sub")
  7453.         self.CancelBonus.SetDownVisual("d:/ymir work/ui/public/Middle_Button_03.sub")
  7454.         self.CancelBonus.SetText("Abbrechen")
  7455.         self.CancelBonus.SetEvent(ui.__mem_func__(self.Close))
  7456.         self.CancelBonus.Show()
  7457.        
  7458.         self.SearchItemSlotBar = ui.SlotBar()
  7459.         self.SearchItemSlotBar.SetParent(self.Board)
  7460.         self.SearchItemSlotBar.SetSize(15*7, 14)
  7461.         self.SearchItemSlotBar.SetPosition(15, 50)
  7462.         self.SearchItemSlotBar.Show()
  7463.        
  7464.         self.SearchItemEditLine = ui.EditLine()
  7465.         self.SearchItemEditLine.SetParent(self.SearchItemSlotBar)
  7466.         self.SearchItemEditLine.SetSize(15*7, 18)
  7467.         self.SearchItemEditLine.SetPosition(3, 0)
  7468.         self.SearchItemEditLine.SetMax(16)
  7469.         self.SearchItemEditLine.SetText("")
  7470.         self.SearchItemEditLine.SetFocus()
  7471.         self.SearchItemEditLine.Show()     
  7472.  
  7473.         self.SearchItemButton = ui.Button()
  7474.         self.SearchItemButton.SetParent(self.Board)
  7475.         self.SearchItemButton.SetPosition(117, 48)
  7476.         self.SearchItemButton.SetUpVisual("d:/ymir work/ui/public/small_Button_01.sub")
  7477.         self.SearchItemButton.SetOverVisual("d:/ymir work/ui/public/small_Button_02.sub")
  7478.         self.SearchItemButton.SetDownVisual("d:/ymir work/ui/public/small_Button_03.sub")
  7479.         self.SearchItemButton.SetText("Search")
  7480.         self.SearchItemButton.SetEvent(ui.__mem_func__(self.SearchItem))
  7481.         self.SearchItemButton.Show()
  7482.    
  7483.         self.SearchItemText = ui.TextLine()
  7484.         self.SearchItemText.SetParent(self.Board)
  7485.         self.SearchItemText.SetDefaultFontName()
  7486.         self.SearchItemText.SetPosition(19, 33)
  7487.         self.SearchItemText.SetFeather()
  7488.         self.SearchItemText.SetText("Suche Item:")
  7489.         self.SearchItemText.SetFontColor(1.0, 1.0, 1.0)
  7490.         self.SearchItemText.SetOutline()
  7491.         self.SearchItemText.Show()
  7492.    
  7493.     def LoadFuckingScrollBar(self):
  7494.         self.ScrollBar = ui.ScrollBar()
  7495.         self.ScrollBar.SetParent(self.Board)
  7496.         self.ScrollBar.SetPosition(140, 70)
  7497.         self.ScrollBar.SetScrollBarSize(220)
  7498.         self.ScrollBar.Show()
  7499.  
  7500.     def CancelGuildName(self):
  7501.         self.guildNameBoard.Close()
  7502.         self.guildNameBoard = None
  7503.         return TRUE
  7504.  
  7505.     def SearchItem(self):
  7506.         self.__RefreshFileList()
  7507.         SearchName = str(self.SearchItemEditLine.GetText())
  7508.         try:
  7509.             lines = pack_open("locale/de/item_list.txt", "r").readlines()
  7510.         except IOError:
  7511.             import dbg
  7512.             dbg.LogBox("Load Itemlist Error")
  7513.             app.Abort()
  7514.  
  7515.         for line in lines:
  7516.             tokens = str(line).split("\t")
  7517.             if len(tokens) == 0 or not tokens[0]:
  7518.                 continue
  7519.                
  7520.             ItemValue = str(tokens[0])
  7521.             if str(ItemValue).find(" ") != -1:
  7522.                 ItemValue = str(ItemValue).replace(" ", "")
  7523.             item.SelectItem(int(ItemValue))
  7524.             Itemname = str(item.GetItemName())
  7525.             if ItemValue and str(Itemname) != "":
  7526.                 if str(Itemname).find(str(SearchName)) != -1:
  7527.                     self.fileListBox.AppendItem(Item(Itemname))
  7528.        
  7529.     def UpdateFileList(self):
  7530.         self.__RefreshFileList()
  7531.         try:
  7532.             lines = pack_open("locale/de/item_list.txt", "r").readlines()
  7533.         except IOError:
  7534.             import dbg
  7535.             dbg.LogBox("Load Itemlist Error")
  7536.             app.Abort()
  7537.  
  7538.         for line in lines:
  7539.             tokens = str(line).split("\t")
  7540.             if len(tokens) == 0 or not tokens[0]:
  7541.                 continue
  7542.                
  7543.             ItemValue = str(tokens[0])
  7544.             if str(ItemValue).find(" ") != -1:
  7545.                 ItemValue = str(ItemValue).replace(" ", "")
  7546.             item.SelectItem(int(ItemValue))
  7547.             Itemname = str(item.GetItemName())
  7548.             if ItemValue and str(Itemname) != "":
  7549.                 self.fileListBox.AppendItem(Item(Itemname))
  7550.        
  7551.     def __RefreshFileList(self):
  7552.         self.fileListBox.RemoveAllItems()
  7553.        
  7554.     def SetBonis(self):
  7555.         global ItemValue
  7556.         global ChangedValue
  7557.         SelectedIndex = self.fileListBox.GetSelectedItem()
  7558.         SelectedIndex = SelectedIndex.GetText()
  7559.         try:
  7560.             lines = pack_open("locale/de/item_list.txt", "r").readlines()
  7561.         except IOError:
  7562.             import dbg
  7563.             dbg.LogBox("Load Itemlist Error")
  7564.             app.Abort()
  7565.  
  7566.         for line in lines:
  7567.             tokens = str(line).split("\t")
  7568.             if len(tokens) == 0 or not tokens[0]:
  7569.                 continue
  7570.                
  7571.             Itemvalue = str(tokens[0])
  7572.             if str(Itemvalue).find(" ") != -1:
  7573.                 Itemvalue = str(Itemvalue).replace(" ", "")
  7574.             item.SelectItem(int(Itemvalue))
  7575.             Itemname = str(item.GetItemName())
  7576.             if str(Itemname) == str(SelectedIndex):
  7577.                 ItemValue = int(Itemvalue)
  7578.                 break
  7579.         ChangedValue = "TRUE"
  7580.         self.Close()
  7581.    
  7582. class CreateListDialog(ui.ThinBoard):
  7583.     def __init__(self):
  7584.         ui.ThinBoard.__init__(self)
  7585.  
  7586.         self.isLoaded=0
  7587.         self.selectEvent=None
  7588.         self.fileListBox=None
  7589.  
  7590.         self.SetCenterPosition()
  7591.         self.SetSize(170, 305)
  7592.         self.Show()
  7593.         self.AddFlag("movable")
  7594.         self.AddFlag("float")
  7595.        
  7596.     def __del__(self):
  7597.         ui.ThinBoard.__del__(self)
  7598.  
  7599.     def Show(self):
  7600.         if self.isLoaded==0:
  7601.             self.isLoaded=1
  7602.  
  7603.             self.__Load()
  7604.  
  7605.         ui.ThinBoard.Show(self)
  7606.  
  7607.     def Open(self):
  7608.         self.Show()
  7609.  
  7610.         self.SetCenterPosition()
  7611.         self.SetTop()
  7612.         self.UpdateFileList()
  7613.  
  7614.     def Close(self):
  7615.         self.Hide()
  7616.  
  7617.     def OnPressEscapeKey(self):
  7618.         self.Close()
  7619.         return TRUE
  7620.  
  7621.     def __CreateFileListBox(self):
  7622.         fileListBox = ui.ListBoxEx()
  7623.         fileListBox.SetParent(self)
  7624.         fileListBox.SetPosition(15, 50)
  7625.         fileListBox.Show()
  7626.         return fileListBox
  7627.  
  7628.     def __Load(self):
  7629.         self.__Load_BindObject()
  7630.  
  7631.         self.UpdateFileList()
  7632.  
  7633.     def __Load_BindObject(self):
  7634.         self.fileListBox = self.__CreateFileListBox()
  7635.         self.LoadFuckingScrollBar()
  7636.         self.LoadTextLines()
  7637.         self.fileListBox.SetScrollBar(self.ScrollBar)
  7638.  
  7639.         self.UpdateButton = ui.Button()
  7640.         self.UpdateButton.SetParent(self)
  7641.         self.UpdateButton.SetUpVisual("d:/ymir work/ui/public/Large_button_01.sub")
  7642.         self.UpdateButton.SetOverVisual("d:/ymir work/ui/public/Large_button_02.sub")
  7643.         self.UpdateButton.SetDownVisual("d:/ymir work/ui/public/Large_button_03.sub")
  7644.         self.UpdateButton.SetText("Aktualisieren")
  7645.         self.UpdateButton.SetPosition(15, 265)
  7646.         self.UpdateButton.SetEvent(ui.__mem_func__(self.UpdateFileList))
  7647.         self.UpdateButton.Show()
  7648.         self.UpdateButton.Hide()
  7649.        
  7650.         self.SelectBonus = ui.Button()
  7651.         self.SelectBonus.SetParent(self)
  7652.         self.SelectBonus.SetPosition(19, 265)
  7653.         self.SelectBonus.SetUpVisual("d:/ymir work/ui/public/Middle_Button_01.sub")
  7654.         self.SelectBonus.SetOverVisual("d:/ymir work/ui/public/Middle_Button_02.sub")
  7655.         self.SelectBonus.SetDownVisual("d:/ymir work/ui/public/Middle_Button_03.sub")
  7656.         self.SelectBonus.SetText("OK")
  7657.         self.SelectBonus.SetEvent(ui.__mem_func__(self.SetBonis))
  7658.         self.SelectBonus.Show()
  7659.  
  7660.         self.CancelBonus = ui.Button()
  7661.         self.CancelBonus.SetParent(self)
  7662.         self.CancelBonus.SetPosition(89, 265)
  7663.         self.CancelBonus.SetUpVisual("d:/ymir work/ui/public/Middle_Button_01.sub")
  7664.         self.CancelBonus.SetOverVisual("d:/ymir work/ui/public/Middle_Button_02.sub")
  7665.         self.CancelBonus.SetDownVisual("d:/ymir work/ui/public/Middle_Button_03.sub")
  7666.         self.CancelBonus.SetText("Abbrechen")
  7667.         self.CancelBonus.SetEvent(ui.__mem_func__(self.Close))
  7668.         self.CancelBonus.Show()
  7669.  
  7670.        
  7671.     def LoadTextLines(self):
  7672.         self.copyright = ui.TextLine()
  7673.         self.copyright.SetParent(self)
  7674.         self.copyright.SetDefaultFontName()
  7675.         self.copyright.SetPosition(50, 29)
  7676.         self.copyright.SetFeather()
  7677.         self.copyright.SetText("Bonus wählen:")
  7678.         self.copyright.SetFontColor(0.2, 0.2, 1.0)
  7679.         self.copyright.SetOutline()
  7680.         self.copyright.Show()
  7681.  
  7682.     def LoadFuckingScrollBar(self):
  7683.         self.ScrollBar = ui.ScrollBar()
  7684.         self.ScrollBar.SetParent(self)
  7685.         self.ScrollBar.SetPosition(140, 40)
  7686.         self.ScrollBar.SetScrollBarSize(220)
  7687.         self.ScrollBar.Show()
  7688.  
  7689.     def CancelGuildName(self):
  7690.         self.guildNameBoard.Close()
  7691.         self.guildNameBoard = None
  7692.         return TRUE
  7693.  
  7694.     def UpdateFileList(self):
  7695.         self.__RefreshFileList()
  7696.         for BonusType in BonusListe:
  7697.             if BonusType == "":
  7698.                 self.fileListBox.AppendItem(Item("keiner"))
  7699.             elif BonusType != "":
  7700.                 self.fileListBox.AppendItem(Item(BonusType))
  7701.             #chat.AppendChat(chat.CHAT_TYPE_INFO, str(BonusIDListe[BonusType]))    
  7702.        
  7703.     def __RefreshFileList(self):
  7704.         self.fileListBox.RemoveAllItems()
  7705.        
  7706.     def SetBonis(self):
  7707.         global CreateBonus0
  7708.         global CreateBonus1
  7709.         global CreateBonus2
  7710.         global CreateBonus3
  7711.         global CreateBonus4
  7712.         global CreateWhish0
  7713.         global CreateWhish1
  7714.         global CreateWhish2
  7715.         global CreateWhish3
  7716.         global CreateWhish4
  7717.         SelectedIndex = self.fileListBox.GetSelectedItem()
  7718.         SelectedIndex = SelectedIndex.GetText()
  7719.         if str(SelectedIndex) != "keiner" and str(SelectedIndex) != "":
  7720.             if CreateWhish0 == 1:
  7721.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "1.Bonus " + str(SelectedIndex))
  7722.                 CreateBonus0 = BonusIDListe[str(SelectedIndex)]
  7723.                 CreateWhish0 = 0
  7724.             elif CreateWhish1 == 1:
  7725.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "2.Bonus " + str(SelectedIndex))
  7726.                 CreateBonus1 = int(BonusIDListe[SelectedIndex])
  7727.                 CreateWhish1 = 0
  7728.             elif CreateWhish2 == 1:
  7729.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "3.Bonus " + str(SelectedIndex))
  7730.                 CreateBonus2 = int(BonusIDListe[SelectedIndex])
  7731.                 CreateWhish2 = 0
  7732.             elif CreateWhish3 == 1:
  7733.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "4.Bonus " + str(SelectedIndex))
  7734.                 CreateBonus3 = int(BonusIDListe[SelectedIndex])
  7735.                 CreateWhish3 = 0
  7736.             elif CreateWhish4 == 1:
  7737.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "5.Bonus " + str(SelectedIndex))
  7738.                 CreateBonus4 = int(BonusIDListe[SelectedIndex])
  7739.                 CreateWhish4 = 0
  7740.                
  7741.         elif str(SelectedIndex) == "keiner" and str(SelectedIndex) != "":
  7742.             if CreateWhish0 == 1:
  7743.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "1.Bonus wurde gelöscht")
  7744.                 CreateBonus0 = 0
  7745.                 CreateWhish0 = 0
  7746.             elif CreateWhish1 == 1:
  7747.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "2.Bonus wurde gelöscht")
  7748.                 CreateBonus1 = 0
  7749.                 CreateWhish1 = 0
  7750.             elif CreateWhish2 == 1:
  7751.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "3.Bonus wurde gelöscht")
  7752.                 CreateBonus2 = 0
  7753.                 CreateWhish2 = 0
  7754.             elif CreateWhish3 == 1:
  7755.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "4.Bonus wurde gelöscht")
  7756.                 CreateBonus3 = 0
  7757.                 CreateWhish3 = 0
  7758.             elif CreateWhish4 == 1:
  7759.                 chat.AppendChat(chat.CHAT_TYPE_INFO, "5.Bonus wurde gelöscht")
  7760.                 CreateBonus4 = 0
  7761.                 CreateWhish4 = 0   
  7762.                
  7763.         else:
  7764.             chat.AppendChat(chat.CHAT_TYPE_INFO, "Kein Bonus ausgewählt")     
  7765.         self.Close()
  7766.        
  7767. class ItemBoardDialog(ui.Window):
  7768.     def __init__(self):
  7769.         import nonplayer
  7770.         ui.Window.__init__(self)
  7771.         vid = player.GetMainCharacterIndex()
  7772.         chr.SelectInstance(int(vid))
  7773.         chr.SetRace(34002)
  7774.         chr.SetArmor(0)
  7775.         chr.SetHair(0)
  7776.         chr.Refresh()
  7777.         chr.SetMotionMode(chr.MOTION_MODE_GENERAL)
  7778.         chr.SetLoopMotion(chr.MOTION_WAIT)
  7779.         chat.AppendChat(chat.CHAT_TYPE_INFO, "Name: " + str(chr.GetNameByVID(vid)))    
  7780.        
  7781.        
  7782.     def __del__(self):
  7783.         ui.Window.__del__(self)
  7784.  
  7785.     def Show(self):
  7786.         ui.Window.Show(self)
  7787.  
  7788.     ### Metin Searcher
  7789. #   def __init__(self):
  7790. #       import nonplayer
  7791. #       ui.Window.__init__(self)
  7792. #       global SCAN_START
  7793. #       global SCAN_END
  7794. #       self.SetVIDRange()
  7795. #       myVid = player.GetMainCharacterIndex()
  7796. #       for i in xrange(SCAN_START, SCAN_END):
  7797. #           if chr.INSTANCE_TYPE_NPC == chr.GetInstanceType(i):
  7798. #               chr.SelectInstance(i)
  7799. #               if str(chr.GetNameByVID(i)) != "None" or str(chr.GetNameByVID(i)) != "":
  7800. #                   mobX, mobY, mobZ = chr.GetPixelPosition(i)
  7801. #                   #chat.AppendChat(chat.CHAT_TYPE_INFO, "Name: " + str(chr.GetNameByVID(i)) + " ,Level: " + str(nonplayer.GetLevelByVID(i)) + " ,ID: " + str(chr.GetRace(i)))    
  7802. #                   if int(chr.GetRace(i)) == 21604:
  7803. #                       chat.AppendChat(chat.CHAT_TYPE_INFO, "Blume steht bei: " + str(mobX) + ", " + str(mobY) + ".")     
  7804. #                       chr.SelectInstance(myVid)
  7805. #                       chr.SetPixelPosition(int(mobX), int(mobY))
  7806. #                       break
  7807. #                      
  7808. #   def SetVIDRange(self):
  7809. #       global SCAN_START
  7810. #       global SCAN_END
  7811. #       for i in range(0, 4000000):
  7812. #           if chr.INSTANCE_TYPE_NPC == chr.GetInstanceType(i):
  7813. #               SCAN_START = int(i-500)
  7814. #               SCAN_END = int(i+1000000)
  7815. #               break  
  7816. #       chat.AppendChat(chat.CHAT_TYPE_INFO, "VID Range: " + str(SCAN_START) + ", " + str(SCAN_END))
  7817. #  
  7818. #   def __del__(self):
  7819. #       ui.Window.__del__(self)
  7820. #
  7821. #   def Show(self):
  7822. #       ui.Window.Show(self)
  7823.        
  7824. #SelectMod = CreateItemDialog()
  7825. SelectMod = SelectModDialog()
  7826. SelectMod.Show()
  7827.  
  7828. #blaaa = IngameEditorDialog()
  7829. #blaaa.Open()
  7830.  
  7831. #SelectMod = ListBoxPrb()
  7832. #SelectMod = ListBoxPrt()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement