[c]
#RequireAdmin
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_icon=D:\Games\Silkroad\Silkroad.ico
#AutoIt3Wrapper_outfile=..\Exe\Silkroad Starter.exe
#AutoIt3Wrapper_Compression=4
#AutoIt3Wrapper_UseUpx=n
#AutoIt3Wrapper_Res_Comment=-
#AutoIt3Wrapper_Res_Description=TheBigX´s Tools
#AutoIt3Wrapper_Res_Fileversion=4.0.7.9
#AutoIt3Wrapper_Res_LegalCopyright=Freeware
#AutoIt3Wrapper_Res_Language=1031
#AutoIt3Wrapper_Run_AU3Check=n
#AutoIt3Wrapper_Tidy_Stop_OnError=n
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
#include <GUIConstantsEx.au3>
#include <IE.au3>
#include <GuiButton.au3>
#include <Misc.au3>
#include <String.au3>
#include <GuiFade.au3>
#include <Constants.au3>
#include <WindowsConstants.au3>
#include <Array.au3>
#include <EditConstants.au3>
#include <StaticConstants.au3>
#include <ProgressConstants.au3>
#include <ComboConstants.au3>
#include <date.au3>
#include <file.au3>
#include <WinAPI.au3>
#include <NomadMemory.au3>
#include <INet.au3>
FileInstall ("F:\AutoIt\Selfcoded\quellcode\verschieben.exe", @ScriptDir & "\verschieben.exe", 1)
FileInstall ("E:\Bilder - Photoshop\PSP\Effekte.jpg", @TempDir & "\Effekte.jpg", 1)
AutoItSetOption ("TrayAutoPause", 0)
;~ Opt ("TrayIconDebug", 1)
Opt ("TrayMenuMode", 1)
Opt ("TrayOnEventMode", 1)
Opt ("GuiOnEventMode", 1)
Opt ("MouseCoordMode", 0)
Opt ("MustDeclareVars", 0)
Global $log
Global $thisver = "4.0.7.9"
Global $Paused
Global $oCLOSE
Global $tCur
Global $base
Global $memopen
Global $PID
Global $swzst = FileRead ("ownserver.txt")
Global $swzst2
;~ Global Const $expmax[141] = ["118","470","1058","1880","2938","5640","9048","13160","17978","23500","34898","47940","62628","78960","96938","127840","161798","198810","238878","282000","351231","427755","512196","605232","707587","820046","943453","1078717","1226815","1388803","1595229","1818827","2060796","2322414","2605043","2910129","3239210","3593924","3976012","4387323","4869381","5382982","5929882","6511920","7131034","7789258","8488730","9231697","10020519","10857676","11857343","12913686","14029449","15207495","16450818","17762545","19145941","20604414","22141527","23760997","25933410","28214785","30609702","39747505","51493509","55474876","59648780","64023195","68606389","73406955","79345238","85573753","92104572","98950215","106123703","113638552","121508783","129748946","138374168","147400127","158227752","169572387","181455292","193898546","206925087","220558723","234824141","249746989","265353867","281672373","369337595","473538898","430636533","688586209","686078166","630281734","843249355","963955058","1322659532","1406035568","1507651756","1614099432","1725577160","1842290785","1964454143","2092289330","2226026602","2365904969","2512172674","2665087076","2850768781","3045192767","3248716461","3461711006","3684561209","3962623419","4254053422","4559402688","4879244274","5214172680","5651667517","6110719303","6592227598","7097126521","7626386625","8181014569","8762056543","9370597975","10007766416","10674731122","11839645448","13064847484","14352905686","15706489007","17128369152","21327974495","25764141377","30447283657","35388227098","40598223991","Nicht eingeloggt"]
;~ Global Const $baseadress = 0x00d79654
;~ Global $xpoff = 0x848
;~ Global $spoff = 0x858
;~ Global $lvloff = 0x840
;~ Global $expproz
;~ Global $lvl
;~ Global $lvlzahl
$s_EncryptPassword = "KopierrechtebeiTheBigXakáDevil"
$i_EncryptLevel = 2
SplashImageOn ("Test", @TempDir & "\Effekte.jpg", "134", "134", "-1", "-1", $DLG_NOTITLE)
_GUIFadeIn ("Test", "15", "0", "255")
Sleep (2000)
_GUIFadeOut ("Test", "15", "255", "0")
SplashOff()
$tray1 = TrayCreateItem("Bugreport", -1, 0)
$tray2 = TrayCreateItem("Hilfe", -1, 1)
$tray3 = TrayCreateItem("Updates", -1, 1)
$tray4 = TrayCreateItem("Ende", -1, 4)
TraySetToolTip ("Das Silkroad Starter Tool by - TheBigX and U17R4")
TrayTip ("-->Achtung!<--", "--> Guckt in die Hilfe! <--", 5000, 1)
$Form1 = GUICreate("Silkroad Starter",800,500)
$ID = GUICtrlCreateInput("", 15, 72, 121, 22)
$PW = GUICtrlCreateInput("", 15, 104, 121, 22, 0x0020)
$SROPfad = GUICtrlCreateInput("", 15, 136, 121, 22)
$reg = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Joymax\Silkroad", "InstallPath")
If $reg <> " " Then GUICtrlSetData($SROPfad, $reg)
$Start = GUICtrlCreateButton("Starten", 225, 80, 99, 49,$BS_DEFPUSHBUTTON)
$Bug = GUICtrlCreateButton("Bugreport", 216, 450, 99, 33, 0)
$hide = GUICtrlCreateButton("Client Verstecken", 3, 470, 99, 25, 0)
$show = GUICtrlCreateButton("Client Zeigen", 102, 470, 99, 25, 0)
$silkexe = GUICtrlCreateButton("SROPfad suchen", 225, 136, 99, 25, 0)
$save = GUICtrlCreateButton("save", 15, 30, 50, 25, 0)
$load = GUICtrlCreateButton("load", 70, 30, 50, 25, 0)
$kill = GUICtrlCreateButton("Client schliessen", 60, 445, 85, 25, 0)
$sw = RegRead("HKEY_CURRENT_USER\Software\Joymax\Silkroad", "RECENTSERVER")
$server = GUICtrlCreateInput($sw, 580, 62, 100, 1
$sws = GUICtrlCreateButton("Speichern", 683, 61, 60, 20)
$liste = GUICtrlCreateCombo("", 578, 82, 121, 266, $WS_VSCROLL + $CBS_DROPDOWN)
$slowpc = GUICtrlCreateCheckbox("", 15, 180, 15, 17)
$ecsro = GUICtrlCreateCheckbox("", 15, 197, 15, 17)
$restart = GUICtrlCreateCheckbox("Restart", 15, 215, 15, 15)
$JMHP = GUICtrlCreateButton("Joymax Homepage", 570, 120, 123, 33, 0)
$JMBAN = GUICtrlCreateButton("Joymax Banliste", 570, 153, 123, 33, 0)
$FORUM = GUICtrlCreateButton("Silkroad Online Forum", 570, 186, 123, 33, 0)
$UPDATE = GUICtrlCreateButton("Updates herunterladen", 570, 219, 123, 33, 0)
$exit = GUICtrlCreateButton("Exit", 625, 455, 75, 25, 0)
$hilfe = GUICtrlCreateButton("Hilfe", 700, 455, 75, 25, 0)
$credits = GUICtrlCreateButton("Credits",480,455,75,25,0)
$swadd = GUICtrlCreateButton("Hinzufügen", 518, 83, 60, 20)
$shortcut = GUICtrlCreateButton("Verknüpfung erstellen",365,455,110,25)
$time = GUICtrlCreateLabel ("",738,35,42,12)
GUICtrlSetColor (-1,0xFF0000)
GUICtrlSetFont ($ID, 8, 400, 0, "Arial")
GUICtrlSetFont ($PW, 8, 400, 0, "Arial")
GUICtrlSetFont ($SROPfad, 8, 400, 0, "Arial")
GUICtrlSetFont ($Start, 8, 400, 0, "Arial")
GUICtrlSetFont ($Bug, 8, 400, 0, "Arial")
GUICtrlSetFont ($silkexe, 8, 400, 0, "Arial")
GUICtrlSetFont ($save, 8, 400, 0, "Arial")
GUICtrlSetFont ($load, 8, 400, 0, "Arial")
GUICtrlSetFont ($kill, 8, 400, 0, "Arial")
GUICtrlSetData ($liste, "|<<EIGENE>>|"&$swzst&"|<<ECSRO>>|ECSRO|ECSRO [Fembria]|ECSRO [VIP]|<<ISRO>>|Aege|Alexander|Alps|Apollo (New)|Ares (New)|Athens|Babel|Eldorado|Eos (New)|Gaia (New)|Greece|Hera (New)|Hercules|Iris (New)|Mars|Mercury|Neptune|Oasis|Odin|Olympus|Pacific|Persia|Phoenix (New)|Pluto|Poseidon|RedSea|Rome|Saturn|Sparta|Tibet|Titan (New)|Troy|Uranus|Venice|Venus|Xian|Zeus",$sw)
GUICtrlSetFont ($JMHP, 8, 400, 0, "Arial")
GUICtrlSetFont ($JMBAN, 8, 400, 0, "Arial")
GUICtrlSetFont ($FORUM, 8, 400, 0, "Arial")
GUICtrlSetFont ($UPDATE, 8, 400, 0, "Arial")
GUICtrlCreateGroup ("Account Daten", 5, 56, 195, 113)
GUICtrlSetFont (-1, 8, 400, 0, "Arial")
GUICtrlCreateLabel ("ECSRO Autopotter starten", 32, 199, 125, 47)
GUICtrlCreateLabel ("Langsamer PC", 32, 182, 70, 17)
GUICtrlCreateLabel ("Serverwahl", 520, 65, 52, 15)
GUICtrlCreateLabel ("ID", 149, 75, 13, 1
GUICtrlSetFont (-1, 8, 400, 0, "Arial")
GUICtrlCreateLabel ("PW", 149, 106, 20, 1
GUICtrlSetFont (-1, 8, 400, 0, "Arial")
GUICtrlCreateLabel ("SROPfad", 149, 139, 48, 1
GUICtrlSetFont (-1, 8, 400, 0, "Arial")
GUICtrlCreateLabel ("Restart", 32, 216, 50, 17)
;~ -------------------------------------------------------------------------------------------------------------
GUICtrlSetOnEvent ($oCLOSE, "beenden")
GUISetOnEvent ($GUI_EVENT_CLOSE, "beenden")
TrayItemSetOnEvent ($tray1, "bug")
TrayItemSetOnEvent ($tray2, "hilfe")
TrayItemSetOnEvent ($tray3, "UPDATE")
TrayItemSetOnEvent ($tray4, "beenden")
GUICtrlSetOnEvent ($Start, "Start")
GUICtrlSetOnEvent ($Bug, "bug")
GUICtrlSetOnEvent ($hide, "hide")
GUICtrlSetOnEvent ($show, "show")
GUICtrlSetOnEvent ($save, "save")
GUICtrlSetOnEvent ($load, "load")
GUICtrlSetOnEvent ($silkexe, "srofolder")
GUICtrlSetOnEvent ($kill, "kill")
GUICtrlSetOnEvent ($sws, "serversave")
GUICtrlSetOnEvent ($ecsro, "ecsro")
GUICtrlSetOnEvent ($JMHP, "JMHP")
GUICtrlSetOnEvent ($JMBAN, "JMBAN")
GUICtrlSetOnEvent ($FORUM, "FORUM")
GUICtrlSetOnEvent ($UPDATE, "UPDATE")
GUICtrlSetOnEvent ($exit, "beenden")
GUICtrlSetOnEvent ($hilfe, "hilfe")
GUICtrlSetOnEvent ($shortcut,"verkn")
GUICtrlSetOnEvent ($liste,"serveractual")
GUICtrlSetOnEvent ($swadd,"serveradd")
GUICtrlSetTip ($credits,"Coder: TheBigX aká Devil"&@LF&"Für die gute Unterstützung meinen Dank an:"&@LF&" U17R4"&@LF&" Coded für das Silkroadonline.de Forum","Credits!",1,1)
GUICtrlSetTip ($UPDATE,"Läd das Aktuellste Update herunter","",1,1)
GUICtrlSetTip ($SROPfad,"Gibt bitte hier deinen Silkroad Pfad an (zb. C:\Programme\Silkroad\Silkroad.exe)","",1,1)
GUICtrlSetTip ($sws,"Speichert den von dir eingegebenen Servernamen","",1,1)
;~ -------------------------------------------------------------------------------------------------------------
InetGet("http://semtexunion.se.funpic.de/srostart/actualver.exe", @TempDir & "\actualver.exe")
If FileGetVersion(@TempDir & "\actualver.exe", "FileVersion") <> $thisver Then GUICtrlCreateLabel ("Aktuellere Version gefunden!"&@LF&"Bitte Starte das Update",570,270,150,50)
GUISetState(@SW_SHOW)
HotKeySet("!^d", "beenden")
HotKeySet("{PAUSE}", "TogglePause")
;~ $expproz = GUICtrlCreateEdit ("",15,10,50,20,$ES_READONLY)
;~ $spproz = GUICtrlCreateEdit ("",65,10,120,20,$ES_READONLY + $ES_CENTER)
;~ $lvlproz = GUICtrlCreateEdit ("",185,10,54,20,$ES_READONLY + $ES_CENTER)
;-----------------<<>>-------------<<>>-----------------<<>>------------------<<>>------------<<>>----------<<>>--------------
While 1
GUICtrlSetData ($time,_NowTime())
;~ If ProcessExists ("sro_client.exe") Then
;~ If $PID = "" Then
;~ $PID = ProcessExists ("sro_client.exe")
;~ $memopen = _MemoryOpen($PID)
;~ $base = _Memoryread($baseadress,$memopen)
;~ Else
;~ EndIf
;~ $lvl = _Memoryread($base+$lvloff,$memopen,"byte")
;~ IF IsNumber($lvl) = 1 Then
;~ Select
;~ Case $lvl < 100
;~ $lvl = 1
;~ Case $lvl > 1
;~ $lvl = 1
;~ EndSelect
;~ $exp = $expmax[$lvl-1]
;~ $xp = _Memoryread($base+$xpoff,$memopen)
;~ $sp = _Memoryread($base+$spoff,$memopen)
;~ GUICtrlSetData ($expproz,Round(($xp / $exp * 100),2)&" %")
;~ GUICtrlSetData ($spproz,$sp&" SP")
;~ GUICtrlSetData ($lvlproz,"Lv "&$lvl)
;~ Else
;~ GUICtrlSetData ($expproz,"Bitte")
;~ GUICtrlSetData ($spproz,"starten sie das")
;~ GUICtrlSetData ($lvlproz,"Update")
;~ EndIf
;~ Else
;~ EndIf
Sleep(1000)
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Form1
EndSwitch
WEnd
;-----------------<<>>-------------<<>>-----------------<<>>------------------<<>>------------<<>>----------<<>>--------------
Func srofolder()
$SROregPfad = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Joymax\Silkroad", "InstallPath")
If @error Then
$actualsropath = FileSelectFolder("Wähle den Ordner aus in dem Silkroad installiert ist:", @HomePath, 0)
RegWrite("HKEY_LOCAL_MACHINE\SOFTWARE\Joymax\Silkroad", "InstallPath", "Reg_SZ", $actualsropath)
If @error Then
GUICtrlSetData($SROPfad, "Silkroad not found.")
Else
GUICtrlSetData($SROPfad, $actualsropath)
EndIf
Else
GUICtrlSetData($SROPfad, $SROregPfad)
EndIf
EndFunc
Func Start()
connect()
TrayTip("Wichtig!", "Damit die Automatische eingabe der ENTER taste / Automatischer Restart vom Clienten endet drücke bitte die ENDE taste nach der Dateneingabe im Clienten", 5)
Run(GUICtrlRead($SROPfad))
Sleep(2000)
If WinExists("Silkroad Online Launcher") Then
Sleep(8000)
ControlClick("Silkroad Online Launcher", "", "[CLASS:Button; INSTANCE:1]")
EndIf
ProcessWait("sro_client.exe")
$handle = WinGetHandle("SRO_Client")
Do
WinGetClientSize ("SRO_Client")
Sleep (1000)
Until WinGetClientSize ("SRO_Client") <= "800x600"
WinSetState("SRO_Client", "", @SW_MAXIMIZE)
Select
Case _GUICtrlButton_GetCheck($slowpc) = $BST_CHECKED
Sleep(20000)
Case _GUICtrlButton_GetCheck($slowpc) = $BST_UNCHECKED
Sleep(10000)
EndSelect
Send("{TAB}{TAB}")
Sleep(250)
ControlSend($handle, "", "", GUICtrlRead($ID))
ControlSend($handle, "", "", "{TAB}")
Sleep(200)
ControlSend($handle, "", "", GUICtrlRead($PW))
$dll = DllOpen("user32.dll")
;~ SPEXP()
Sleep (1000)
Send("{ENTER}")
Sleep(700)
While 1
GUICtrlSetData ($time,_NowTime())
If _IsPressed("23", $dll) Then ExitLoop
If Not WinExists("SRO_Client") Then
TrayTip("Achtung", "DC / Clientfehler festgestellt! Restart...", 3)
Select
Case _GUICtrlButton_GetCheck($restart) = $BST_CHECKED
If Not WinExists("SRO_Client") Then
Sleep(1000)
WinActivate("Silkroad Starter")
Start()
EndIf
Case _GUICtrlButton_GetCheck($restart) = $BST_UNCHECKED
ExitLoop
EndSelect
ExitLoop
EndIf
WEnd
DllClose($dll)
Sleep(1000)
EndFunc
Func save()
$cID = _StringEncrypt(1, GUICtrlRead($ID), $s_EncryptPassword, $i_EncryptLevel)
$cPW = _StringEncrypt(1, GUICtrlRead($PW), $s_EncryptPassword, $i_EncryptLevel)
RegWrite("HKEY_CURRENT_USER\Software\TheBigX", "ID", "REG_SZ", $cID)
RegWrite("HKEY_CURRENT_USER\Software\TheBigX", "PW", "REG_SZ", $cPW)
RegWrite("HKEY_CURRENT_USER\Software\TheBigX", "SROPfad", "REG_SZ", GUICtrlRead($SROPfad))
RegWrite("HKEY_CURRENT_USER\Software\TheBigX", "ECSRO", "REG_SZ", GUICtrlRead($ecsro))
RegWrite("HKEY_CURRENT_USER\Software\TheBigX", "Restart", "REG_SZ", GUICtrlRead($restart))
GUICtrlCreateLabel ("Erfolgreich!"&@LF&"Accountdaten Verschlüsselt und gespeichert!",570,270,150,50)
sleep (2000)
GUICtrlCreateLabel (""&@LF&"",570,270,150,50)
EndFunc
Func load()
$ID2 = RegRead("HKEY_CURRENT_USER\Software\TheBigX", "ID")
$eID = _StringEncrypt(0, $ID2, $s_EncryptPassword, $i_EncryptLevel)
$PW2 = RegRead("HKEY_CURRENT_USER\Software\TheBigX", "PW")
$ePW = _StringEncrypt(0, $PW2, $s_EncryptPassword, $i_EncryptLevel)
$1 = RegRead("HKEY_CURRENT_USER\Software\TheBigX", "SROPfad")
$2 = RegRead("HKEY_CURRENT_USER\Software\TheBigX", "ECSRO")
$3 = RegRead("HKEY_CURRENT_USER\Software\TheBigX", "Restart")
GUICtrlSetData($ID, $eID)
GUICtrlSetData($PW, $ePW)
GUICtrlSetData($SROPfad, $1)
GUICtrlSetState($ecsro, $2)
GUICtrlSetState($restart, $3)
GUICtrlCreateLabel ("Erfolgreich!"&@LF&"Accountdaten Entschlüsselt und gesetzt!",570,270,150,50)
Sleep (2000)
GUICtrlCreateLabel (""&@LF&"",570,270,150,50)
EndFunc
Func bug()
_FileCreate (@DesktopDir &"\Bugreport.tracker")
_FileWriteToLine (@DesktopDir &"\Bugreport.tracker",1,@CPUArch & " CPU VER.")
_FileWriteToLine (@DesktopDir &"\Bugreport.tracker",2,@DesktopHeight &"><"& @DesktopWidth &"><"& " Desktop Auflösung")
_FileWriteToLine (@DesktopDir &"\Bugreport.tracker",3,@OSArch &"><"& @OSBuild &"><"& @OSLang &"><"& @OSServicePack &"><"& @OSType &"><"& " OS DATEN")
_FileWriteToLine (@DesktopDir &"\Bugreport.tracker",4,$thisver& " Version")
_FileWriteToLine (@DesktopDir &"\Bugreport.tracker",5,RegRead("HKEY_CURRENT_USER\Software\TheBigX","Gui")&" Gui-Nummer")
_FileWriteToLine (@DesktopDir &"\Bugreport.tracker",6,GUICtrlRead($ID) & " Name")
MsgBox (48,"Bugreport","Bitte schicke mir die Bugreport.report datei die nun auf deinem Desktop ist zu mir.")
$oIE = _IECreate("http://www.silkroadonline.de/index.php?form=Mail&userID=25108")
EndFunc
Func hide()
Select
Case WinExists("SRO_Client") = 1
$handle = WinGetHandle("[CLASS:CLIENT]")
WinSetState($handle, "", @SW_HIDE)
Case WinExists("SRO_Client") = 0
MsgBox(64, "", "Kein Silkroad Fenster gefunden!", 2)
EndSelect
EndFunc
Func show()
$handle = WinGetHandle("[CLASS:CLIENT]")
WinSetState($handle, "", @SW_SHOW)
EndFunc
Func hilfe()
Opt("GuiOnEventMode", 1)
$secondwindow = GUICreate ("Hilfe",430, 350)
GUISetOnEvent($GUI_EVENT_CLOSE, "Optionenende")
$optend = GUICtrlCreateButton("Hilfe schließen", 190, 300, 80, 30)
GUICtrlSetOnEvent($optend, "Optionenende")
GUICtrlCreateLabel("ID: Bitte gib dort die ID deines Chars ein", 120, 60, 250, 20)
GUICtrlCreateLabel("PW: Bitte gib dort das Passwort deines Chars ein", 120, 80, 250, 20)
GUICtrlCreateLabel("SROPfad: Bitte gib dort den Pfad zum SilkroadClienten ein " & @LF & "(mit silkroad.exe oder loader.exe)", 120, 98, 265, 50)
GUICtrlCreateLabel("Langsamer PC: Das Tool wartet länger auf den Clienten", 120, 140, 250, 50)
GUICtrlCreateLabel("Restart: Das Tool startet den Clienten bei einem DC (beim einloggen) neu und fängt von vorn an", 120, 170, 265, 50)
GUICtrlCreateLabel("Hotkeys:", 120, 200, 250, 30)
GUICtrlCreateLabel("STRG + ALT + D = Tool direkt schließen" & @LF & "Pause-Taste = Script Pausieren (um z.b. zu Chatten)" & @LF &"Ende-Taste = Stoppt die Eingabe der Enter-Taste im Clienten", 120, 220, 265, 65)
GUISetState(@SW_SHOW)
While 0
Sleep(1000)
WEnd
EndFunc
Func kill()
ProcessClose("sro_client.exe")
EndFunc
Func serversave()
RegWrite("HKEY_CURRENT_USER\Software\Joymax\Silkroad", "RECENTSERVER", "REG_SZ", GUICtrlRead($server))
EndFunc
Func ecsro()
While WinExists("[CLASS:CLIENT]")
Run("autopotion.exe")
While ProcessExists("autopotion.exe")
Sleep(100)
WEnd
ExitLoop
WEnd
EndFunc
Func UPDATE()
InetGet("http://semtexunion.se.funpic.de/srostart/actualver.exe", @TempDir & "\actualver.exe")
If FileGetVersion(@TempDir & "\actualver.exe", "FileVersion") < $thisver Then
$size = InetGetSize ("http://semtexunion.se.funpic.de/srostart/Silkroad Starter.exe")
$progproz = InetGet("http://semtexunion.se.funpic.de/srostart/Silkroad Starter.exe", @ScriptDir & "\Silkroad Starter.exe",1,1)
GUICreate(" Fortschritt",350,100,-1,-1)
$progressbar1 = GUICtrlCreateProgress(25, 25, 300, 20)
While @InetGetActive
GUICtrlSetData($progressbar1, INT(@InetGetBytesRead/$size * 100))
GUICtrlCreateLabel (Int (@InetGetBytesRead) & "/" & $size,20,60,100,30)
GUISetState()
Sleep (200)
WEnd
sleep (2500)
Run("verschieben.exe")
Exit
ElseIf FileGetVersion(@TempDir & "\actualver.exe", "FileVersion") >= $thisver Then
GUICtrlCreateLabel ("Kein Update nötig!"&@LF&"Du hast bereits die Aktuellste Version!",570,270,150,50)
EndIf
EndFunc
Func FORUM()
$oIE = _IECreate("www.silkroadonline.de")
EndFunc
Func JMHP()
$oIE = _IECreate("www.silkroadonline.net")
EndFunc
Func JMBAN()
$oIE = _IECreate("http://www.joymax.com/silkroad/Silkroad_Front.jmx?workURL=http://silkroadcp.joymax.com/notarget/punishment/punishment_list.asp?")
EndFunc
Func beenden()
_GUIFadeOut("Silkroad Starter", "25", "255", "0")
Exit
EndFunc
Func Optionenende()
_GUIFadeOut("Hilfe", "15", "255", "0")
GUIDelete("Hilfe")
EndFunc
Func TogglePause()
$Paused = Not $Paused
While $Paused
Sleep(1000)
TrayTip("Pause", "Um weiterzumachen bitte wieder PAUSE drücken aber vorher den Clienten wieder in den Vordergrund holen", 1)
WEnd
TrayTip("", "", 2)
EndFunc
Func connect()
$address01 = "gwgt1.joymax.com"
$address02 = "gwgt2.joymax.com"
$address03 = "gwgt3.joymax.com"
$address04 = "gwgt4.joymax.com"
$port = 15779
TCPStartup()
$address1 = getserverip($address01)
$address2 = getserverip($address02)
$address3 = getserverip($address03)
$address4 = getserverip($address04)
If $address1 <> "" Then
ConsoleWrite("Connecting to " & $address1 & " port " & $port & "..." & @CRLF)
$socket1 = connecttoserver($address1, $port)
If @error Then
ConsoleWriteError("Connection failed.")
Else
ConsoleWrite("Connection OK.")
EndIf
Else
ConsoleWriteError("Error, no IP was found for " & $address01 & ".")
$socket1 = -1
EndIf
If $address2 <> "" Then
ConsoleWrite("Connecting to " & $address2 & " port " & $port & "..." & @CRLF)
$socket2 = connecttoserver($address2, $port)
If @error Then
ConsoleWriteError("Connection failed.")
Else
ConsoleWrite("Connection OK.")
EndIf
Else
ConsoleWriteError("Error, no IP was found for " & $address02 & ".")
$socket2 = -1
EndIf
If $address3 <> "" Then
ConsoleWrite("Connecting to " & $address3 & " port " & $port & "..." & @CRLF)
$socket3 = connecttoserver($address3, $port)
If @error Then
ConsoleWriteError("Connection failed.")
Else
ConsoleWrite("Connection OK.")
EndIf
Else
ConsoleWriteError("Error, no IP was found for " & $address03 & ".")
$socket3 = -1
EndIf
If $address4 <> "" Then
ConsoleWrite("Connecting to " & $address4 & " port " & $port & "..." & @CRLF)
$socket4 = connecttoserver($address4, $port)
If @error Then
ConsoleWriteError("Connection failed.")
Else
ConsoleWrite("Connection OK.")
EndIf
Else
ConsoleWriteError("Error, no IP was found for " & $address04 & ".")
$socket4 = -1
EndIf
If $socket1 <> -1 Or $socket2 <> -1 Or $socket3 <> -1 Or $socket4 <> -1 Then
ConsoleWrite("Connection to server(s) established!")
Else
ConsoleWriteError("Error, could not connect to any server.")
EndIf
EndFunc
Func getserverip($address)
$i = 0
Do
$i += 1
$qaddress = TCPNameToIP($address)
If $qaddress = "" Then ConsoleWriteError("Error, could not get the IP. (failed " & $i & "/3)" & @CRLF)
Until $qaddress <> "" Or $i = 3
If $qaddress = "" Then SetError(1)
Return $qaddress
EndFunc
Func connecttoserver($address, $port)
$i = 0
Do
$i += 1
$socket = TCPConnect($address, $port)
If $socket = -1 Then ConsoleWriteError("Error, could not connect to server. (failed " & $i & "/3)" & @CRLF)
Until $socket <> -1 Or $i = 3
If $socket = -1 Then SetError(1)
Return $socket
EndFunc
Func verkn()
FileCreateShortcut (@ScriptDir & "\Silkroad Starter.exe","Silkroad Starter.lnk",@ScriptDir)
FileMove (@ScriptDir & "\Silkroad Starter.lnk",@DesktopDir,1)
GUICtrlCreateLabel ("Verknüpfung erstellt!"&@LF&"",570,270,150,50)
Sleep (1500)
GUICtrlCreateLabel (""&@LF&"",570,270,150,50)
EndFunc
Func serveractual()
GUICtrlSetData ($server,GuiCtrlRead($liste),"")
serversave()
EndFunc
;~ Func SPEXP()
;~ $PID = ProcessExists ("sro_client.exe")
;~ $memopen = _MemoryOpen($PID)
;~ $base = _Memoryread($baseadress,$memopen)
;~ EndFunc
Func serveradd()
Dim $s1,$s2,$s3,$s4,$s5
Local $toto[5] = [$s1,$s2,$s3,$s4,$s5]
Select
Case $s1 = ""
$s1 = GUICtrlRead($liste)
FileWrite ("ownserver.txt",$s1 & "|")
Case $s2 = ""
$s2 = GUICtrlRead($liste)
FileWrite ("ownserver.txt",$s2 & "|")
Case $s3 = ""
$s3 = GUICtrlRead($liste)
FileWrite ("ownserver.txt",$s3 & "|")
Case $s4 = ""
$s4 = GUICtrlRead($liste)
FileWrite ("ownserver.txt",$s4 & "|")
Case $s5 = ""
$s5 = GUICtrlRead($liste)
FileWrite ("ownserver.txt",$s5 & "|")
EndSelect
GUICtrlSetData($liste, "|<<EIGENE>>|"&$toto&"|"&$swzst&"|<<ECSRO>>|ECSRO|ECSRO [Fembria]|ECSRO [VIP]|<<ISRO>>|Aege|Alexander|Alps|Apollo (New)|Ares (New)|Athens|Babel|Eldorado|Eos (New)|Gaia (New)|Greece|Hera (New)|Hercules|Iris (New)|Mars|Mercury|Neptune|Oasis|Odin|Olympus|Pacific|Persia|Phoenix (New)|Pluto|Poseidon|RedSea|Rome|Saturn|Sparta|Tibet|Titan (New)|Troy|Uranus|Venice|Venus|Xian|Zeus",$sw)
EndFunc
[/c]