################################################ ### ### ####### Hauptprogramm ####### ### ### ####### ####### ### (c) 2008 Team Sokobana ### ####### http://forum.pocketnavigation.de ####### ### http://www.varioskin.de ### ################################################ ############################################################ ### Anwendung auf eigene Gefahr und ohne Gewährleistung! ### ### Dieses Programm unterliegt den Rechten der ### ###Creative Commons Attribut Non-Commercial Share Alike 3### ### Lizenz. Genaue Angaben finden Sie beiliegend ### ### in der Datei Lizenz_VarioSkin3.txt ### ############################################################ # Version 4.7 vom 26.3.2010 ErrorLevel ("syntax") Kill( "sokobana_service.exe" ) Kill( "startfrommenu.exe" ) # --- Variablen Ausgangszustand herstellen ROI = 5 timer20 = 0 #timer60 = 40 RememberNaviMode = 0 timer120 = 0 timer300 = 0 timerPOIW = 0 SPEAKM = 0 NewTA = 0 uml = 0 LEDx = 0 FL = 1 ABMarker = 0 RHMarker = 0 BTEnde = 0 PAUSEx = 1 TMCx = 5 tumlx = 6 GLOPUSSTART = 0 orange = 36607 RDSVarx = 3 #VetoTimer = -1 TMCPreviewStartTimer = TimeStamp() If ( RegValueExists ("HKCU", "Software\Koord\Server_Audio", "KoordServ")) Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "Window=0 KoordServ=1 ClassName=Audio| RORegKeys=0") EndIf # --- Glopus-Autostart ausführen--- sokobana ----------------------------------------------------- GLOPUSSTART = ( RegRead ("HKCU", "Software\sokobana", "GLOPUSSTART")) If ( GLOPUSSTART > 0 ) CallScript ("\My Flash Disk\Sokobana\MortScript\Glopusactiv.mscr","AUTO") Sleep ( 10000 ) If WndExists ("GoPal Navigator") Show ( "GoPal Navigator" ) EndIf EndIf # --- ZoomActive --- sokobana -------------------------------------------------------------------------- If (RegValueExists ("HKCU", "Software\sokobana", "PleaseWait")) RegDelete ("HKCU", "Software\sokobana", "PleaseWait") EndIf # --- Hauptschleife Hintergrunddienst --- sokobana -------------------------------------- HS = 1 While ( HS = 1 ) farbe479 = ColorAt (479,0) If ( farbe479 = 255 ) If ( RegValueExists ("HKCU", "Software\sokobana", "FARBWERT")) Call Farbwert rot = ( RegRead ("HKCU", "Software\sokobana", "ROTWERT" ) ) weiss = ( RegRead ("HKCU", "Software\sokobana", "WEISSWERT" ) ) EndIf If ( ( RegRead ("HKCU", "Software\sokobana", "TUNNEL") eq 1 ) ) Call GyroSimBeenden Else Call GyroLoop EndIf Call TBT Call MoveMap Call LED Call RouteOptionInfo Call AutoNWP #Sleep ( 1100 ) Call AudioMute Call TelMode Call SimuPause Call WndRefresh Call KoordinatenButton Call BTNEW Else #Sleep ( 1100 ) If ( farbe479 = 16711680 ) Call SPEAKMANAGER1 Else If ( farbe479 = 16776960 ) If ( SPEAKM = 1 ) Call SPEAKMANAGER2 EndIf Else If ( farbe479 = 65280 ) Call BAT EndIf EndIf EndIf EndIf Call TMCPreview #Sleep ( 1000 ) Call TMCManager #Sleep ( 1000 ) Call VetoView Call BT Call MEMWATCH Call RouteViewStart Call FindMyCar Sleep ( 3000 ) If NOT ( WndExists ("GoPal Navigator")) HS = 0 EndIf EndWhile # --- Startmenü-Schleife --- sokobana ------------------------------------------------- If NOT ( WndExists ( "Menu" )) ErrorLevel ("off") Run ( "\My Flash Disk\Menu.exe" ) If ProcExists ("poi-warner.exe") kill ("poi-warner.exe") EndIf If ProcExists ("poiwarner.exe") kill ("poiwarner.exe") EndIf WaitFor ( "X10-Control", 4 ) If ( WndExists ( "X10-Control" )) SendOK ( "X10-Control" ) EndIf # --- Glopus --- athos -------------------------------------------------------- GLOPUSSTART = ( RegRead ("HKCU", "Software\sokobana", "GLOPUSSTART")) If ( GLOPUSSTART = 1 ) If (ProcExists ("glopus.exe")) kill ("glopus.exe") RegWriteString( "HKCU", "Software\PkSoft\GpsLog", "CurrentView","Übersicht") EndIf Else Sleep ( 5000 ) Show ("glopus") EndIf EndIf Sub TMCPreview # --- 10 Minuten-Schleife "Manueller Mode" --> Route neu berechnen ----------------- If ( RegValueExists ("HKCU", "Software\sokobana", "TMCReRoute" ) ) If ( ( TMC = 2 ) OR ( TMC = 4 ) ) TimerVetoManuell = TimeStamp() If ( TimerVetoManuell - StartVetoManuell > 100 ) If ( RegValueExists ("HKCU", "Software\sokobana", "VSDauerInfo" ) ) RouteCheck = 1 Else MouseClick ( 330, 240 ) StartVetoManuell = TimeStamp() EndIf EndIf EndIf EndIf # --- Ausblendung der rechten Anzeigen nach 20 Sekunden -------- TMCPreviewTimer = TimeStamp() If ( RegValueExists ("HKCU", "Software\sokobana", "VSDauerInfo" ) ) # --- bei Stauanzeige in Map VSDauerInfo verhindern) If ( SignPost = 255 ) Call StopKoordServer EndIf If ( ColorAt (479,0) = 255 ) If ( TMCPreviewTimer - TMCPreviewStartTimer > 20 ) Call StopKoordServer EndIf If ( ( TMCPreviewTimer - TMCPreviewStartTimer > 300 ) AND ( SignPost ne 255 ) AND ( NOT RegValueExists ("HKCU", "Software\Koord\Server_Audio", "KoordServ"))) # --- Trigger für Routenprüfung im Modus manuelle Stauumfahrung If ( ( RouteCheck = 1 ) AND( RegValueExists ("HKCU","Software\sokobana", "TMCReRoute" ) ) ) MouseClick ( 330, 240 ) StartVetoManuell = TimeStamp() RouteCheck = 0 EndIf # --- Neustart Timer und Anzeige Störungsdetails etc. TMCPreviewStartTimer = TimeStamp() RememberVSDauerInfoOff = 0 # --- Ansage nur alle 10 MINUTEN -------- MuteCounter = MuteCounter + 1 If ( ( MuteCounter > 4 ) OR ( RouteCheck = 1 ) ) MuteCounter = 0 mute = 0 Else mute = 1 EndIf If ( ColorAt ( 479,0 ) = 255 ) MouseClick ( 130, 240 ) EndIf Call TMCCountTA # --- zur Detailansicht wechseln ------------------------------------------ If ( ( VS > 0 ) AND( RegValueExists ("HKCU","Software\sokobana", "VSDauerInfo" ) ) ) #Sleep ( 400 ) MouseClick ( 50, 50 ) Time8 = TimeStamp() Detail = 0 While ( Detail = 0 ) Sleep ( 300 ) If ( ColorAt (479,130) = 255 ) Detail = 1 Else Time9 = TimeStamp() If ( Time9 - Time8 > 10 ) Detail = 2 EndIf EndIf EndWhile If ( Detail = 1 ) run ("\My Flash Disk\Sokobana\MortScript\scrsht.exe", "\My Flash Disk\Sokobana\koord2\Veto\Screen\VSDetail.bmp") SendSpecial ( "F2" ) Call StopKoordServer # --- E+V Ermittlung --------------------------------------------- If ( ColorAt (5,181) = 16777215 ) XCopy ("\My Flash Disk\Sokobana\koord2\Veto\E+V\*.*", "\My Flash Disk\Sokobana\koord2\Veto", TRUE ) Else If ( ColorAt (5,158) = 16777215 ) XCopy ("\My Flash Disk\Sokobana\koord2\Veto\V\*.*", "\My Flash Disk\Sokobana\koord2\Veto", TRUE ) Else If ( ColorAt (15,158) = 16777215 ) XCopy ("\My Flash Disk\Sokobana\koord2\Veto\E\*.*", "\My Flash Disk\Sokobana\koord2\Veto", TRUE ) Else XCopy ("\My Flash Disk\Sokobana\koord2\Veto\E\*.*", "\My Flash Disk\Sokobana\koord2\Veto", TRUE ) EndIf EndIf EndIf # --- Ansicht VSDauerInfo ---------------------------------------- PlaySound ("\My Flash Disk\Sokobana\MortScript\Bingbong.wav" ) Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "window=0 KoordServ=1 RORegKeys=0 include=\My Flash Disk\Sokobana\koord2\Veto\VS_Dauer_Info.txt") #RestTATimer = TimeStamp() + 30 EndIf Else SendSpecial ( "F2" ) EndIf EndIf #EndIf EndIf EndIf EndSub # --- VetoMode --- sokobana ----------------------------------------------------------- Sub TMCManager # --- TMC-Map-Simulation-Anzeige --- sokobana ------------------------------------ RDSVar = 0 RDS = ( RegRead ("HKCU","Software\3SOFT\Pathfinder\CommonSettings", "RdsTmcPort") ) If ( RDS eq "simulation" ) RDSVar = 1 If NOT ( RegValueExists ("HKCU","Software\sokobana", "TMCSimulation" ) ) RegWriteString ("HKCU","Software\sokobana", "TMCSimulation", "1") EndIf Else If ( RegValueExists ("HKCU","Software\sokobana", "TMCSimulation" ) ) RegDelete ("HKCU","Software\sokobana", "TMCSimulation") EndIf EndIf If ( RDS eq "com1_record" ) RDSVar = 2 If NOT ( RegValueExists ("HKCU","Software\sokobana", "TMCcom1_record" ) ) RegWriteString ("HKCU","Software\sokobana", "TMCcom1_record", "1") EndIf Else If ( RegValueExists ("HKCU","Software\sokobana", "TMCcom1_record" ) ) RegDelete ("HKCU","Software\sokobana", "TMCcom1_record") EndIf EndIf If NOT ( RDSVar eq RDSVarx ) RDSVarx = RDSVar Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\rds_tmc_port_" &RDS& ".png","\My Flash Disk\Navigation\skin480x272\PPSkin\rds_tmc_port.png",1) RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf # --- TMC-Map-Anzeige --- sokobana ----------------------------------------------- Call CheckTmcModus If NOT ( TMC eq TMCx ) TMCx = TMC Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\tmc_modemap_" &TMC& ".png","\My Flash Disk\Navigation\skin480x272\PPSkin\tmc_modemap.png",1) RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) # --- VetoManuell-Timer starten ---------------------------- If ( TMC = 4 ) StartVetoManuell = TimeStamp() #RegWriteString ("HKCU","Software\sokobana\Veto", "ClearVeto", "1" ) #RegWriteString ("HKCU","Software\sokobana\VetoView", "ClearVetoView", "1" ) EndIf EndIf # --- Mapanzeige "neue Störung" --- bei manuell (Gopal) oder VetoMode (Auto und manuell) ------------- # Indikator für neuen Stau: rot bei 479,120 If (( ColorAt (479,120) = rot ) AND ( TMC > 2 )) # TATimer siehe auch TAOnTour-Schleife NewTATimer = TimeStamp() TimeShowVetoView = TimeStamp() + 600 RegWriteString ("HKCU","Software\sokobana\Veto", "AltRoute", "1") RegWriteString ("HKCU","Software\sokobana\Veto", "Umleitung", "1") TMCPreviewStartTimer = TimeStamp() # Screenshot VS anfertigen ---------- For i = 1 to 19 SendSpecial( "F11" ) Next For i = 1 to 10 SendSpecial( "F12" ) Next Sleep ( 2000 ) runwait ("\My Flash Disk\Sokobana\MortScript\scrsht.exe", "\My Flash Disk\Sokobana\koord2\Veto\Screen\VS.bmp") # Anzahl Störungen VS auf der Route ermitteln TTIOverviewArea WindowCode 250 -------------------------------- scrsht = 1 mute = 1 Call StopKoordServer If ( ColorAt ( 479,0 ) = 255 ) MouseClick ( 130, 240 ) EndIf Call TMCCountTA # --- zur Detailansicht wechseln ------------------------------------------ MouseClick ( 50, 50 ) Time8 = TimeStamp() Detail = 0 While (( ColorAt (479,130) ne 255 ) AND ( Detail = 0 )) Sleep ( 300 ) Time9 = TimeStamp() If ( Time9 - Time8 > 10 ) Detail = 1 EndIf EndWhile If ( Detail = 0 ) runwait ("\My Flash Disk\Sokobana\MortScript\scrsht.exe", "\My Flash Disk\Sokobana\koord2\Veto\Screen\VSDetail.bmp") Call StopKoordServer # --- E+V Ermittlung --------------------------------------------- If ( ColorAt (5,181) = 16777215 ) XCopy ("\My Flash Disk\Sokobana\koord2\Veto\E+V\*.*", "\My Flash Disk\Sokobana\koord2\Veto", TRUE ) Else If ( ColorAt (5,158) = 16777215 ) XCopy ("\My Flash Disk\Sokobana\koord2\Veto\V\*.*", "\My Flash Disk\Sokobana\koord2\Veto", TRUE ) Else If ( ColorAt (15,158) = 16777215 ) XCopy ("\My Flash Disk\Sokobana\koord2\Veto\E\*.*", "\My Flash Disk\Sokobana\koord2\Veto", TRUE ) Else XCopy ("\My Flash Disk\Sokobana\koord2\Veto\0\*.*", "\My Flash Disk\Sokobana\koord2\Veto", TRUE ) EndIf EndIf EndIf # --- neue Detailansicht 1 ---------------------------------------- Sleep ( 300 ) If ( TMC = 3 ) #SendSpecial( "F2" ) Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "window=0 KoordServ=1 RORegKeys=0 include=\My Flash Disk\Sokobana\koord2\Veto\VS_Detail.txt") Else Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "window=0 KoordServ=1 RORegKeys=0 include=\My Flash Disk\Sokobana\koord2\Veto\VS_kurz_Info.txt") EndIf PlaySound ("\My Flash Disk\Sokobana\MortScript\beep_high.wav" ) # --- Wartezeit Detailansicht 1 ----------------------------------- If ( SignPost = 255 ) Detail = 10 Else Detail = 20 EndIf While ( Detail > 5 ) sleep ( 1000 ) Detail = Detail - 1 EndWhile If ( TMC = 3 ) RegWriteString ("HKCU","Software\sokobana\VetoView", "VetoView3", "1") Call StopKoordServer If ( ColorAt ( 479,130 ) = 255 ) MouseClick ( 10, 240 ) Else If ( ColorAt ( 479,0 ) = 255 ) MouseClick ( 130, 240 ) EndIf EndIf scrsht = 0 TMCPreviewStartTimer = TimeStamp() Call TMCCountTA SendSpecial( "F2" ) Else If ( ColorAt (479,0) ne 255 ) PlaySound ("\My Flash Disk\Sokobana\MortScript\success.wav" ) EndIf If ( ColorAt ( 479,130 ) = 255 ) While ( Detail > 0 ) sleep ( 500 ) Detail = Detail - 0.5 If ( ColorAt (479,0) = 255 ) Detail = 0 Call StopKoordServer Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "window=0 KoordServ=1 RORegKeys=0 include=\My Flash Disk\Sokobana\koord2\Veto\VS_Dauer_Info.txt") EndIf EndWhile If ( ColorAt ( 479,130 ) = 255 ) MouseClick ( 479, 240 ) Call StopKoordServer Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "window=0 KoordServ=1 RORegKeys=0 include=\My Flash Disk\Sokobana\koord2\Veto\VS_Dauer_Info.txt") EndIf EndIf If ( SignPost = 255 ) TMCPreviewStartTimer = TimeStamp() - 110 Else TMCPreviewStartTimer = TimeStamp() EndIf EndIf EndIf EndIf EndSub Sub CheckTmcModus # TMC 0=AUS 1=AUTO 2=MANUELL 3=AUTO+VETO 4=MANUELL+VETO UDI = ( RegRead ("HKCU","Software\3SOFT\Pathfinder\RouteOptions", "UseDynamicInfo") ) If ( UDI eq 0 ) TMC = 0 Else DYN = ( RegRead ("HKCU","Software\3SOFT\Pathfinder\RouteOptions", "DynamicMode") ) NAVIMODE = ( RegRead ("HKCU","Software\3SOFT\Pathfinder\RouteOptions", "NaviMode") ) If ( DYN eq 0 ) TMC = 1 # --- PKW und Mofa ---------------------- If ( RegValueExists ("HKCU","Software\sokobana", "VetoMode" ) ) If (( NAVIMODE = 0 ) OR ( NAVIMODE = 3 )) RegWriteDWord ("HKCU","Software\3SOFT\Pathfinder\CommonSettings", "ShowTrafficAlert", 1) TMC = 3 EndIf EndIf Else TMC = 2 If ( RegValueExists ("HKCU","Software\sokobana", "VetoMode" ) ) TMC = 4 EndIf EndIf EndIf EndSub Sub TMCCountTA # Marker TMC-Liste: 6,31 6,105 6,179 # --- AudioCenter abschalten ------------------------------------ If ( RegValueExists ("HKCU", "Software\Koord\Server_Audio", "KoordServ")) Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "Window=0 KoordServ=1 ClassName=Audio| RORegKeys=0") EndIf Detail = 0 Time3 = TimeStamp() While ( Detail = 0 ) Sleep ( 500 ) Time4 = TimeStamp() If ( Time4 - Time3 > 5 ) # --- Fehler, Detailansicht nicht geöffnet ------ Detail = 2 EndIf If ( ColorAt (1,6) = 255 ) # --- ok, Detailansicht geöffnet ---------------- Detail = 1 EndIf Endwhile If (( scrsht = 1 ) AND ( Detail = 1 )) runwait ("\My Flash Disk\Sokobana\MortScript\scrsht.exe", "\My Flash Disk\Sokobana\koord2\Veto\Screen\Overview.bmp") EndIf VS = 0 If (( ColorAt (6,31) = 255 ) AND ( Detail = 1 )) VS = 1 VSa = 1 ClickUp = 0 While ( VSa = 1 ) If ( ColorAt (6,105) = 255 ) VS = VS + 1 EndIf If ( ColorAt (6,179) = 255 ) VS = VS + 1 MouseClick ( 479, 240 ) ClickUp = ClickUp + 1 Sleep ( 500 ) Else VSa = 0 EndIf EndWhile If ( VS > 9 ) VS = 9 EndIf If ( scrsht = 1 ) scrsht = 0 Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\uml_" & VS & ".png","\My Flash Disk\Navigation\skin480x272\PPSkin\umleitung.png",1) Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\ta_ontour_" & VS & ".png","\My Flash Disk\Navigation\skin480x272\PPSkin\ta_ontour.png",1) Else Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\ta_ontour_" & VS & ".png","\My Flash Disk\Navigation\skin480x272\PPSkin\ta_ontour.png",1) EndIf # --- VSDetail --- Anzeige Rest-Anzahl in Detailansicht If ( VS > 0 ) Copy ("\My Flash Disk\Sokobana\koord2\Veto\ta_ontour_" & VS & ".bmp","\My Flash Disk\Sokobana\koord2\Veto\Screen\ta_ontour.bmp",1) Else If (FileExists ("\My Flash Disk\Sokobana\koord2\Veto\Screen\ta_ontour.bmp")) Delete ("\My Flash Disk\Sokobana\koord2\Veto\Screen\ta_ontour.bmp") EndIf EndIf While ( Clickup > 0 ) MouseClick ( 479, 10 ) Sleep ( 200 ) ClickUp = ClickUp - 1 EndWhile Sleep ( 400 ) #MouseClick ( 10, 240 ) Else Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\ta_ontour_0.png","\My Flash Disk\Navigation\skin480x272\PPSkin\ta_ontour.png",1) Sleep ( 400 ) EndIf # --- Anzahl Störungen ansagen -------------------------------------------------- If ( ( mute ne 1 ) AND ( Detail = 1 ) ) voldelay = RegRead ("HKCU","Software\sokobana", "VOLDELAY") SetVolume ( voldelay ) #Sleep ( 400 ) If ( VS = 0 ) PlaySound ("\My Flash Disk\Sokobana\MortScript\keineVS.wav" ) Else If ( VS = 1 ) PlaySound ("\My Flash Disk\Sokobana\MortScript\eineVS.wav" ) Else PlaySound ("\My Flash Disk\Sokobana\MortScript\stoerungen_1.wav" ) PlaySound ("\My Flash Disk\navigation\res\de\audio\num_" & VS & ".wav" ) PlaySound ("\My Flash Disk\Sokobana\MortScript\stoerungen_2.wav" ) EndIf EndIf SetVolume ( 255 ) Else mute = 0 EndIf EndSub # --- MapMode --- sokobana -------------- MapMode 1 = 2D Mapmode 2 = 3D Mapmode 3 = Auto3D Sub TBT # --- TBT-EIN --- sokobana --------------------------- If (RegValueExists ("HKCU", "Software\sokobana", "TBTtrigger")) RegDelete ("HKCU", "Software\sokobana", "TBTtrigger")) Sleep ( 6000 ) TBT = ( ColorAt ( 479, 11 ) ) If ( TBT eq 255 ) RegWriteString ("HKCU", "Software\sokobana", "TBT", "1")) voldelay = RegRead ("HKCU","Software\sokobana", "VOLDELAY") SetVolume ( voldelay ) PlaySound ("\My Flash Disk\Sokobana\MortScript\pfeilmodus.wav" ) SetVolume ( 255 ) EndIf EndIf # --- TBT-Vorrang --- sokobana --------------------------- TBT = ( ColorAt ( 479, 11 ) ) If (RegValueExists ("HKCU", "Software\sokobana", "TBT")) If ( ( TBT ne 255 ) AND ( ColorAt ( 217, 260 ) = weiss ) ) SendSpecial( "F1" ) EndIf Else Call 2D3D EndIf EndSub Sub 2D3D MapMode = ( RegRead ("HKCU", "Software\sokobana", "MapMode" ) ) Map3D = ( RegRead ("HKCU", "Software\sokobana", "Map3D" ) ) FixZoom = ( RegRead ("HKCU", "Software\sokobana", "FixZoom" ) ) SignPost = ( ColorAt ( 479, 9 ) ) SignPostAB = ( ColorAt ( 440, 30 ) ) ABfarbe = ( RegRead ("HKCU", "Software\sokobana", "ABfarbe" ) ) # --- Invers-Mode ein/aus --- sokobana ------------ If ( ColorAt ( 479, 75 ) = rot ) Sleep ( 500 ) If ( ColorAt ( 479, 75 ) = rot ) RegWriteString ("HKCU","Software\sokobana", "INVERS", "1") voldelay = RegRead ("HKCU","Software\sokobana", "VOLDELAY") SetVolume ( voldelay ) PlaySound ("\My Flash Disk\Sokobana\MortScript\modus_invertieren.wav" ) SendSpecial( "F9" ) SetVolume ( 255 ) EndIf EndIf # ------------------------------------------------- If ( SignPost = 255 ) #If ( TMCMarker > 1 ) # TMCMarker = TMCMarker - 1 #EndIf If ( FixZoom > 0 ) If ( FixZoom = 1 ) SendSpecial( "F5" ) FixZoom = FixZoom + 1 RegWriteDWord ("HKCU","Software\sokobana", "FixZoom", FixZoom) # --- Zoom-Manager Stufe 0 --- sokobana --- ABMarker = 0 Zoompreset = 0 # --- Zoom-Warning beenden --- sokobana --- If (RegValueExists ("HKCU", "Software\sokobana", "ZOOMWARNING")) If (RegValueExists ("HKCU", "Software\sokobana", "ZOOMACTIVE")) RegDelete ("HKCU","Software\sokobana", "ZOOMACTIVE") RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf EndIf EndIf EndIf If ( ( SignPostAB = ABfarbe ) AND ( ( RegRead ("HKCU", "Software\sokobana", "ABPreset") ) > 0 ) ) ABMarker = 1 ZoomPreset = ( RegRead ("HKCU", "Software\sokobana", "ABPreset") ) RegWriteDWord ("HKCU", "Software\sokobana", "RememberZoomPreset", ZoomPreset ) ) Else If ( ( RegRead ("HKCU", "Software\sokobana", "BSPreset") ) > 0 ) ABMarker = 1 ZoomPreset = ( RegRead ("HKCU", "Software\sokobana", "BSPreset") ) RegWriteDWord ("HKCU", "Software\sokobana", "RememberZoomPreset", ZoomPreset ) ) EndIf EndIf # ------------------------------------------ If ( Map3D = 0 ) If ( MapMode > 1 ) RegWriteDWord ("HKCU","Software\sokobana", "Map3D", 1) SendSpecial( "F9" ) EndIf Else If ( MapMode = 1 ) SendSpecial( "F9" ) RegWriteDWord ("HKCU","Software\sokobana", "Map3D", 0) EndIf EndIf Else If ( FixZoom > 1 ) FixZoom = 1 RegWriteDWord ("HKCU","Software\sokobana", "FixZoom", FixZoom) EndIf # --- Zoom-Manager Stufe 1 --- sokobana --- If ( ABMarker = 1 ) # --- Zoom-Warning starten --- sokobana --- If (RegValueExists ("HKCU", "Software\sokobana", "ZOOMWARNING")) If NOT (RegValueExists ("HKCU", "Software\sokobana", "ZOOMACTIVE")) RegWriteString ("HKCU","Software\sokobana", "ZOOMACTIVE", "1") RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf EndIf # ----------------------------------------- ABMarker = 2 For i = 1 to 13 SendSpecial( "F11" ) Next For i = 1 to 3 SendSpecial( "F12" ) Next EndIf # ------------------------------------------ If ( Map3D = 0 ) If ( MapMode = 2 ) RegWriteDWord ("HKCU","Software\sokobana", "Map3D", 1) SendSpecial( "F9" ) EndIf Else If NOT ( MapMode = 2 ) SendSpecial( "F9" ) RegWriteDWord ("HKCU","Software\sokobana", "Map3D", 0) EndIf EndIf EndIf Endsub # --- GyroSimulation --- sokobana ------------------------------------------------------- Sub GyroSimBeenden If ( ColorAt ( 476, 0 ) = rot ) If ( ColorAt ( 360, 271 ) = rot ) If (RegValueExists ("HKCU", "Software\sokobana", "SimuPause")) RegDelete ("HKCU", "Software\sokobana", "SimuPause") RegWriteString ("HKCU","Software\sokobana", "NoSimuPause", "1") EndIf Sleep ( 1000 ) EndIf Else # Auto-Stop RegWriteString ("HKCU","Software\sokobana", "TUNNEL", "0") SendSpecial( "F3" ) If (RegValueExists ("HKCU", "Software\sokobana", "SimuPause")) RegDelete ("HKCU", "Software\sokobana", "SimuPause") RegWriteString ("HKCU","Software\sokobana", "NoSimuPause", "1") EndIf voldelay = RegRead ("HKCU","Software\sokobana", "VOLDELAY") SetVolume ( voldelay ) PlaySound ("\My Flash Disk\Sokobana\MortScript\gyrosim_end.wav") SetVolume ( 255 ) EndIf # Abfrage Routensimulationsbutton If ( ColorAt ( 360, 271 ) = rot ) RegWriteString ("HKCU","Software\sokobana", "TUNNEL", "0") EndIf Endsub Sub GyroLoop # --- "GyroModus umschalten verhindern" zurücksetzen ------- If (RegValueExists ("HKCU", "Software\sokobana", "NoGyroChange")) RegDelete ("HKCU", "Software\sokobana", "NoGyroChange") EndIf # --- Abfrage: GPS-Abriss ------- ODER: Map/TBT und geplante Route ------ FL = ( RegRead ("HKCU", "Software\sokobana", "FirstLoop" ) ) If (( ColorAt ( 360, 271 ) = rot ) OR (( ColorAt ( 476, 0 ) = rot ) And ( FL = 0 ))) # --- GyroModus umschalten verhindern (lange rot) ------- If ( ColorAt ( 360, 271 ) = rot ) If NOT (RegValueExists ("HKCU", "Software\sokobana", "NoGyroChange")) RegWriteString ("HKCU","Software\sokobana", "NoGyroChange", "1") EndIf EndIf # --- Abfrage: AUTOGYRO? --------------------------- If ( ( RegValueExists ("HKCU", "Software\sokobana", "AUTOGYRO")) AND ( ( ColorAt ( 217, 260 ) = weiss ) ) ) If NOT (RegValueExists ("HKCU", "Software\sokobana", "AUTOGYROWAIT")) RegWriteString ("HKCU","Software\sokobana", "TUNNEL", "1") SendSpecial( "F4" ) voldelay = RegRead ("HKCU","Software\sokobana", "VOLDELAY") SetVolume ( voldelay ) PlaySound ("\My Flash Disk\Sokobana\MortScript\gyrosim_start.wav") RegWriteDWord ("HKCU", "Software\sokobana", "FirstLoop", "0") SetVolume ( 255 ) EndIf EndIf Else If (RegValueExists ("HKCU", "Software\sokobana", "AUTOGYROWAIT")) RegDelete ("HKCU", "Software\sokobana", "AUTOGYROWAIT") EndIf EndIf EndSub # --- WindowRefresh --- sokobana ------------------------------------------------------------ Sub WndRefresh WndRefresh = ( RegRead ("HKCU", "Software\sokobana", "WndRefresh") ) If ( WndRefresh = 1 ) If WndActive ("GoPal Navigator") If (RegValueExists ("HKCU", "Software\sokobana", "TBT")) SendSpecial( "F2" ) SendSpecial( "F1" ) Else SendSpecial( "F1" ) SendSpecial( "F2" ) EndIf RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 0) EndIf EndIf EndSub # --- LED-Management --- sokobana -------------------------------------------------------- Sub LED DESIGN = ( RegRead ("HKCU","Software\3Soft\Pathfinder\MapConfig", "Design") ) If NOT ( DESIGN eq DESIGNx ) DESIGNx = DESIGN If ( DESIGN = 3 ) RegWriteString ("HKCU","Software\sokobana", "NACHTDESIGN", "1") Else If (RegValueExists ("HKCU", "Software\sokobana", "NACHTDESIGN")) RegDelete("HKCU","Software\sokobana", "NACHTDESIGN") EndIf EndIf RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf LED = ( RegRead ("HKCU","Software\3SOFT\Pathfinder\PowerManagement\Backlight", "ACBrightness" )) RegWriteDWord ("HKCU","Software\sokobana", "BackLight", LED) If NOT ( LED = LEDx ) LEDx = LED If ( LED > 6 ) Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\led_3.png","\My Flash Disk\Navigation\skin480x272\PPSkin\led.png",1) Else If ( LED > 2 ) Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\led_2.png","\My Flash Disk\Navigation\skin480x272\PPSkin\led.png",1) Else Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\led_1.png","\My Flash Disk\Navigation\skin480x272\PPSkin\led.png",1) EndIf EndIf RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf EndSub # --- BT-Management --- sokobana ------------------------------------------------------------------ Sub BTNEW GetBT = 0 If ( ColorAt ( 479, 176 ) = rot ) Sleep ( 500 ) If ( ColorAt ( 479, 176 ) = rot ) GetBT = 1 PlaySound ("\My Flash Disk\Sokobana\MortScript\bt_beenden.wav" ) Sleep ( 1000 ) If ( ColorAt ( 479, 176 ) = rot ) GetBT = 2 PlaySound ("\My Flash Disk\Sokobana\MortScript\treiber_entfernen.wav" ) Sleep ( 1000 ) If ( ColorAt ( 479, 176 ) = rot ) GetBT = 3 PlaySound ("\My Flash Disk\Sokobana\MortScript\success.wav" ) Endif Endif Endif Endif Switch ( GetBT ) Case ( 1 ) # --- temporäres Abschalten (blaue LED erlischt) ------------------ WaitFor ( "Tastatur", 15 ) Sleep ( 300 ) MouseClick ( 416, 20 ) Waitfor ( "Bluetooth-HF-Telefon", 10 ) Sleep ( 100 ) MouseClick ( 240, 180 ) Waitfor ( "Bluetooth Manager", 10 ) Sleep ( 100 ) MouseClick ( 300, 240 ) Waitfor ( "Bluetooth-HF-Telefon", 10 ) Sleep ( 100 ) MouseClick ( 395, 190 ) Case ( 2 ) # --- Treiber entfernen (blaue LED erlischt) ------------------ If (ProcExists ("IVTDialor.exe")) Kill ( "IVTDialor.exe") Kill ( "BlueSoleil.exe") BTEnde = 1 Endif Case ( 3 ) # --- NoAction ------------------ SendSpecial( "F1" ) SendSpecial( "F2" ) EndSwitch EndSub Sub BT If WndActive ( "Tastatur" ) If ( BTEnde < 2 ) If NOT (RegValueExists("HKCU", "\Software\3SOFT\Pathfinder\CommonSettings" , "DialerActive")) voldelay = RegRead ("HKCU","Software\sokobana", "VOLDELAY") SetVolume ( voldelay ) PlaySound ("\My Flash Disk\Sokobana\MortScript\bt_connect.wav") SetVolume ( 255 ) MouseClick ( 416, 20 ) If ( BTEnde = 1 ) BTEnde = 2 EndIf EndIf EndIf EndIf If WndActive ( "Bluetooth-HF-Telefon" ) MouseClick ( 240, 85 ) Sleep ( 8000 ) If WndActive ( "Bluetooth-HF-Telefon" ) MouseClick ( 395, 190 ) EndIf EndIf If ( RegValueExists ("HKCU", "Software\sokobana", "NoBTDriver")) If (ProcExists ("IVTDialor.exe")) RegDelete ("HKCU", "Software\sokobana", "NoBTDriver") RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf Else If NOT (ProcExists ("IVTDialor.exe")) RegWriteString ("HKCU","Software\sokobana", "NoBTDriver", "\Windows\IVTDialor.exe") RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf EndIf EndSub # --- Batterie-Ansage --- PrinzEmu ---------------------------------------------------------------- Sub BAT CallScript ("\My Flash Disk\Sokobana\MortScript\batterie.mscr") If ( ( ColorAt (479,0) = 65280 ) ) MouseClick ( 450, 230 ) EndIf EndSub # --- Sprachsteuerung Zieleingabe --- sokobana ---------------------------------------------------- Sub SPEAKMANAGER1 Sleep ( 3000 ) If ( ColorAt ( 479, 0 ) = RGB ( 0, 0, 255 ) ) MouseClick ( 10, 45 ) EndIf SPEAKM = 1 timer20 = 1 EndSub Sub SPEAKMANAGER2 voldelay = RegRead ("HKCU","Software\sokobana", "VOLDELAY") SetVolume ( voldelay ) PlaySound ("\My Flash Disk\Sokobana\MortScript\success.wav") SetVolume ( 255 ) Sleep ( 5000 ) If ( ColorAt ( 479, 0 ) = RGB ( 0, 255, 255 ) ) MouseClick ( 450, 230 ) EndIf timer20 = 1 EndSub Sub MEMWATCH # --- langsame Überwachungsschleifen ---------------------------------------- timer20 = timer20 + 3 If ( timer20 > 16 ) SPEAKM = 0 timer20 = 1 # --- 60 Minuten-Schleife "Umleitung" ---------------------------------------------------------- If ( RegValueExists ("HKCU","Software\sokobana\Veto", "Umleitung" ) ) TimerUmleitung = TimeStamp() tuml = 0 # --- Veto löschen ------------------------------------------------ If ( TimerUmleitung - NewTATimer > 3600 ) #TimerUmleitung = 0 RegWriteString ("HKCU","Software\sokobana\Veto", "ClearVeto", "1" ) Else # --- Timer-Balken-Anzeige ---------------------------- If ( TimerUmleitung - NewTATimer > 3000 ) tuml = 5 Else If ( TimerUmleitung - NewTATimer > 2400 ) tuml = 4 Else If ( TimerUmleitung - NewTATimer > 1800 ) tuml = 3 Else If ( TimerUmleitung - NewTATimer > 1200 ) tuml = 2 Else If ( TimerUmleitung - NewTATimer > 600 ) tuml = 1 EndIf EndIf EndIf EndIf EndIf If NOT ( tuml eq tumlx ) tumlx = tuml Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\timer_umleitung_" &tuml& ".png","\My Flash Disk\Navigation\skin480x272\PPSkin\timer_umleitung.png",1) RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf EndIf EndIf # --- TAOnTour-Schleife "Umleitung" -------------------------------------------- # --- POIW-Timer für Start ----------------------------------------------------- If ( RegValueExists ("HKCU","Software\sokobana", "POIWEIN" ) ) timerPOIW = timerPOIW + 20 If ( timerPOIW > 30 If (( NOT RegValueExists ("HKCU", "Software\Koord\Server_Veto", "KoordServ")) AND ( ColorAt ( 479, 0 ) = 255 )) # --- POI Warner starten --------------------------------------- Regdelete ("HKCU","Software\sokobana", "POIWEIN" ) CallScript ("\My Flash Disk\Sokobana\MortScript\poi-warner_einaus.mscr") EndIf EndIf EndIf # --- letzter Sat-Kontakt --- sokobana ----------------------------- If NOT ( ColorAt ( 476, 0 ) = rot ) If ( farbe479 = 255 ) # PlaySound ("\Windows\menusel.wav") LastSatTime = TimeStamp() RegWriteDWord ("HKCU","Software\sokobana", "LASTSATTIME", LastSatTime ) # Message ("letzter Sat-Kontakt: " & LastSatTime ) EndIf EndIf # --- Storage Card2-Fehler --- PrinzEmu --------------------------------------- If (NOT DirExists("\Storage Card")) SetVolume ( 180 ) PlaySound ("\My Flash Disk\Sokobana\MortScript\kartenfehler.wav") SetVolume ( 255 ) RunWait ("\My Flash Disk\Sokobana\MortScript\sokobana_auto_restart.mscr") EndIf # --- Progs schließen --- sokobana --- PrinzEmu --------------------------------- If WndActive ("GoPal Navigator") If WndExists ("Menu") Close ( "Menu" ) EndIf If WndExists ("Settings") Close ( "Settings" ) EndIf If WndExists ("ContactViewer") Close ( "ContactViewer" ) EndIf If WndExists ("TelephoneBook") Close ( "TelephoneBook" ) EndIf EndIf # --- RouteViewTMC-Button löschen If ( RegValueExists ("HKCU","Software\sokobana", "ROUTEVIEWTMC" )) Regdelete ("HKCU","Software\sokobana", "ROUTEVIEWTMC") EndIf # --- Zoom-Manager Stufe 2 --- sokobana ------------------------------------------------- If NOT (RegValueExists ("HKCU", "Software\sokobana", "TBT")) If ( ABMarker > 1 ) If (( Zoompreset > 0 ) AND ( ColorAt ( 479, 128 ) = rot )) SendSpecial( "F12" ) Zoompreset = Zoompreset - 1 If ( ( Zoompreset = 0 ) AND (RegValueExists ("HKCU", "Software\sokobana", "ZOOMACTIVE"))) RegDelete ("HKCU", "Software\sokobana", "ZOOMACTIVE") RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf Else ABMarker = 0 Zoompreset = 0 If (RegValueExists ("HKCU", "Software\sokobana", "ZOOMWARNING")) If (RegValueExists ("HKCU", "Software\sokobana", "ZOOMACTIVE")) RegDelete ("HKCU","Software\sokobana", "ZOOMACTIVE") RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf EndIf EndIf EndIf EndIf # --- Zoom-Warning beenden --- sokobana --- Sleep ( 1000 ) If NOT ( ColorAt ( 479, 128 ) = rot ) If (RegValueExists ("HKCU", "Software\sokobana", "ZOOMWARNING")) If (RegValueExists ("HKCU", "Software\sokobana", "ZOOMACTIVE")) RegDelete ("HKCU","Software\sokobana", "ZOOMACTIVE") RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf EndIf EndIf # --- Rush Hour --- PrinzEmu --------------------------------------- akt_tag = FormatTime("w") akt_stunde = FormatTime("H")*1 start1 = RegRead("HKCU","Software\sokobana", "RushHour_Start1") stop1 = RegRead("HKCU","Software\sokobana", "RushHour_Stop1") start2 = RegRead("HKCU","Software\sokobana", "RushHour_Start2") stop2 = RegRead("HKCU","Software\sokobana", "RushHour_Stop2") tag = RegRead("HKCU","Software\sokobana", "RushHour_Tag") RushHour = RegRead("HKCU","Software\sokobana", "RushHour") Auto = RegRead("HKCU","Software\sokobana", "RushHour_Auto") #--- Abfrage ob Tag ungültig If {akt_tag = 6 && tag = 1} UserRushHour = 0 Else If {akt_tag = 0 && tag < 2} UserRushHour = 0 Else # --- Abfrage wenn Tag gültig, ob UserRushHour auch gültig? If {akt_stunde >= start1 && akt_stunde < stop1} UserRushHour = 1 Else If {akt_stunde >= start2 && akt_stunde < stop2} UserRushHour = 1 Else UserRushHour = 0 EndIf EndIf EndIf EndIf If ( UserRushHour = 0 ) If (RegValueExists ("HKCU", "Software\sokobana", "UserRushHour")) RegDelete ("HKCU", "Software\sokobana", "UserRushHour") EndIf Else If NOT (RegValueExists ("HKCU", "Software\sokobana", "UserRushHour")) RegWriteString ("HKCU","Software\sokobana", "UserRushHour", "UserRushHour") EndIf EndIf #--- Abfrage ob TMC3 schon aktiv If NOT (RegValueExists ("HKCU", "Software\sokobana", "TMC_3")) no_TMC3 = 1 EndIf If { Auto = 1 } If { UserRushHour = 1 } If {RushHour = 2 && no_TMC3 = 1} If ( RHMarker = 0 ) # Rush Hour_On Button anzeigen RegWriteString ("HKCU","Software\sokobana", "RushHour_Push", "\My Flash Disk\Sokobana\MortScript\sokobana_auto_restart.mscr") Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\rushhour_on.png","\My Flash Disk\Navigation\skin480x272\PPSkin\rushhour.png",1) RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) PlaySound ("\My Flash Disk\Sokobana\MortScript\RushHour_On.wav" ) RHMarker = 1 EndIf Else If {RushHour = 1} RHMarker = 0 If (RegValueExists ("HKCU", "Software\sokobana", "RushHour_Push")) RegDelete ("HKCU", "Software\sokobana", "RushHour_Push") RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf EndIf EndIf Else If {RushHour = 1} If ( RHMarker = 0 ) # Rush Hour_Off Button anzeigen RegWriteString ("HKCU","Software\sokobana", "RushHour_Push", "\My Flash Disk\Sokobana\MortScript\sokobana_auto_restart.mscr") Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\rushhour_off.png","\My Flash Disk\Navigation\skin480x272\PPSkin\rushhour.png",1) RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) PlaySound ("\My Flash Disk\Sokobana\MortScript\RushHour_Off.wav" ) RHMarker = 1 EndIf Else If {RushHour = 2} RHMarker = 0 If (RegValueExists ("HKCU", "Software\sokobana", "RushHour_Push")) RegDelete ("HKCU", "Software\sokobana", "RushHour_Push") RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf EndIf EndIf EndIf EndIf EndIf EndSub # --- Statusanzeige Routenoptionen --- Dosenpfand -------------------------------------- Sub RouteOptionInfo If (RegValueExists ("HKCU","Software\3SOFT\Pathfinder\RouteOptions","RouteOptimation")) RegReadDWord( "HKCU","Software\3SOFT\Pathfinder\RouteOptions","RouteOptimation", ROIV ) If NOT (ROIV = ROI) Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\routeopt_" & ROIV & ".png","\My Flash Disk\Navigation\skin480x272\PPSkin\routeopt.png",1) Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\RVM_" & ROIV & ".png","\My Flash Disk\Navigation\skin480x272\PPSkin\RVM.png",1) Switch ( ROIV ) Case (0) XCopy ("\My Flash Disk\navigation\Skin480x272\vehicle_kurz\*.*", "\My Flash Disk\navigation\Skin480x272\PPSkin", TRUE ) Case (1) XCopy ("\My Flash Disk\navigation\Skin480x272\vehicle_schnell\*.*", "\My Flash Disk\navigation\Skin480x272\PPSkin", TRUE ) Case (2) XCopy ("\My Flash Disk\navigation\Skin480x272\vehicle_oeko\*.*", "\My Flash Disk\navigation\Skin480x272\PPSkin", TRUE ) EndSwitch ROI = ROIV RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf EndIf EndSub # --- AUTO-NWP --- Dosenpfand --------------------------------------------- Sub AutoNWP If(RegValueExists("HKCU","Software","Koord_Route")) If (IsEmpty(NWPA)) Run("\My Flash Disk\Sokobana\MortScript\NWP_Auto.exe") NWPA=1 EndIf Else If(NWPA=1) Clear(NWPA) EndIf EndIf EndSub Sub AudioMute # --- AudioCenter --- sokobana -------------------------------------- If ( RegValueExists ("HKCU", "Software\sokobana", "ClearAudio" )) If ( RegRead ("HKCU", "Software\sokobana", "ClearAudio" ) eq "1" ) ClearAudio = ClearAudio + 1 If ( ClearAudio > 3 ) ClearAudio = 0 RegDelete ("HKCU", "Software\sokobana", "ClearAudio" ) If ( RegValueExists ("HKCU", "Software\Koord\Server_Audio", "KoordServ")) Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "Window=0 KoordServ=1 ClassName=Audio| RORegKeys=0") EndIf EndIf Else RegwriteString ("HKCU", "Software\sokobana", "ClearAudio", "1" ) ClearAudio = 0 EndIf EndIf # --- AudioMute-Anzeige --- Dosenpfand -------------------------------------- RegReadDWord( "HKCU","Software\3SOFT\Pathfinder\Audio","Audio1_0", Audio ) If (IsEmpty(AudioIcon)) AudioIcon=Audio Else If Not (AudioIcon = Audio) If (Audio=0) Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\new_icons2b.png","\My Flash Disk\Navigation\skin480x272\PPSkin\new_icons2.png",1) RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) ElseIf (AudioIcon=0) Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\new_icons2a.png","\My Flash Disk\Navigation\skin480x272\PPSkin\new_icons2.png",1) RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf AudioIcon=Audio EndIf EndIf EndSub # --- TelMode --- Dosenpfand ------------------------------------------------- Sub TelMode If ((SignPost=255) or (TMCMarker=1)) If (TelModeVar=0) If (Audio=0) RegReadDWord ("HKCU","Software\sokobana", "TelMode", TelMode) If (TelMode=1) voldelay = RegRead ("HKCU","Software\sokobana", "VOLDELAY") If (voldelay=0) voldelay = 255 EndIf SetVolume (voldelay) PlaySound ("\My Flash Disk\Sokobana\MortScript\TelMode.wav") SetVolume ( 255 ) TelModeVar=1 EndIf EndIf EndIf ElseIf (TelModeVar=1) TelModeVar=0 EndIf EndSub # --- Sonnenbrillenkorrektur --- sokobana ----------------------------------------- Sub Farbwert If ( RegRead ("HKCU", "Software\sokobana", "FARBWERT") eq "1" ) ROTWERTold = ColorAt (479,20) Run ("\My Flash Disk\Sokobana\Koord\koord465.exe", "Window=0 sonnenbrille=2") EndIf If (RegValueExists ("HKCU", "Software\sokobana", "TBT")) SendSpecial( "F2" ) SendSpecial( "F1" ) Else SendSpecial( "F1" ) SendSpecial( "F2" ) EndIf ROTWERT = ColorAt (479,20) While ( ROTWERTold eq ROTWERT ) Sleep ( 500 ) ROTWERT = ColorAt (479,20) EndWhile If NOT ( ROTWERT > 255 ) RegWriteDWord ("HKCU","Software\sokobana", "ROTWERT", ROTWERT) WEISSWERT = ColorAt (425,244) RegWriteDWord ("HKCU","Software\sokobana", "WEISSWERT", WEISSWERT) ABfarbe = ColorAt (479,18) RegWriteDWord ("HKCU","Software\sokobana", "ABfarbe", ABfarbe) RegDelete ("HKCU", "Software\sokobana", "FARBWERT") EndIf EndSub # --- KoordinatenButton --- sokobana ----------------------------------------------- Sub KoordinatenButton If NOT (RegValueExists ("HKCU", "Software\sokobana", "KoordinatenButton")) RegWriteString ("HKCU","Software\sokobana", "KoordinatenButton", "1") EndIf EndSub # --- Simulationspause --- sokobana ----------------------------------------------- Sub SimuPause If (RegValueExists ("HKCU", "Software\sokobana", "NoSimuPause")) PAUSE = 1 Else PAUSE = 2 EndIf If NOT ( PAUSE = PAUSEx ) PAUSEx = PAUSE If ( PAUSE = 1 ) Copy ("\My Flash Disk\Navigation\Skin480x272\PPSkin\brs_nsp.png","\My Flash Disk\Navigation\Skin480x272\PPSkin\button_route_simulation2.png",1) PlaySound ("\My Flash Disk\Sokobana\MortScript\fortsetzen.wav" ) Else Copy ("\My Flash Disk\Navigation\Skin480x272\PPSkin\brs_sp.png","\My Flash Disk\Navigation\Skin480x272\PPSkin\button_route_simulation2.png",1) PlaySound ("\My Flash Disk\Sokobana\MortScript\pause.wav" ) EndIf RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf If ( PAUSE = 2 ) RegWriteDWord ("HKCU","Software\sokobana", "WndRefresh", 1) EndIf EndSub # --- Karte verschieben --- sokobana ------------------------------------------------ Sub MoveMap If ( ColorAt ( 0,130 ) = rot ) Sleep ( 300 ) If ( ColorAt ( 0,130 ) = rot ) voldelay = RegRead ("HKCU","Software\sokobana", "VOLDELAY") SetVolume (voldelay) If NOT (RegValueExists ("HKCU", "Software\sokobana", "MOVEMAP")) RegWriteString ("HKCU","Software\sokobana", "MOVEMAP", "1") Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\movemap_icon.png","\My Flash Disk\Navigation\skin480x272\PPSkin\movemap.png",1) PlaySound ("\My Flash Disk\Sokobana\MortScript\movemap_ein.wav" ) Else RegDelete ("HKCU", "Software\sokobana", "MOVEMAP") Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\dummy.png","\My Flash Disk\Navigation\skin480x272\PPSkin\movemap.png",1) PlaySound ("\My Flash Disk\Sokobana\MortScript\movemap_aus.wav" ) EndIf SetVolume ( 255 ) RunWait("\My Flash Disk\Sokobana\MortScript\movemap.exe") EndIf EndIf EndSub # --- RouteView --- sokobana -------------------------------------------------------- Sub RouteViewStart # --- Mode 1 aktiv --> ohne Kartenausschnitt --------------------------------- If (RegValueExists ("HKCU", "Software\sokobana\RouteView", "StartRouteView3Mode1")) RegWriteString ("HKCU","Software\sokobana\RouteView", "StartRouteView3", "1") RegWriteDWord ("HKCU","Software\sokobana", "View3Tempo", 1) Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\RouteView_Mode_1.png","\My Flash Disk\Navigation\skin480x272\PPSkin\RouteView_Mode.png",1) voldelay = RegRead ("HKCU","Software\sokobana", "VOLDELAY") SetVolume ( voldelay ) PlaySound ("\My Flash Disk\Sokobana\MortScript\View3_fast.wav" ) SetVolume ( 255 ) Else # --- Mode 2 aktiv --> mit Karte ----------------------------------------------- If (RegValueExists ("HKCU", "Software\sokobana\RouteView", "StartRouteView3Mode2")) RegWriteString ("HKCU","Software\sokobana\RouteView", "StartRouteView3", "2") RegWriteDWord ("HKCU","Software\sokobana", "View3Tempo", 2) Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\RouteView_Mode_2.png","\My Flash Disk\Navigation\skin480x272\PPSkin\RouteView_Mode.png",1) voldelay = RegRead ("HKCU","Software\sokobana", "VOLDELAY") SetVolume ( voldelay ) PlaySound ("\My Flash Disk\Sokobana\MortScript\View3_slow.wav" ) SetVolume ( 255 ) EndIf EndIf If (RegValueExists ("HKCU", "Software\sokobana\RouteView", "StartRouteView3")) RegWriteString ("HKCU","Software\sokobana\RouteView", "StartRouteView3", "\My Flash Disk\sokobana\MortScript\STOPRouteView.exe") Call RouteView3 EndIf If (RegValueExists ("HKCU", "Software\sokobana\RouteView", "ShowRouteView3")) RegDelete ("HKCU", "Software\sokobana\RouteView", "ShowRouteView3") View3Tempo = 1 View3Tempo = ( RegRead ("HKCU", "Software\sokobana", "View3Tempo" ) ) Call RouteViewCopy Call StopKoordServer Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "window=0 KoordServ=1 RORegKeys=0 include=\My Flash Disk\Sokobana\koord2\View_3\View_3_compact.txt") Sleep ( 20000 ) EndIf EndSub Sub RouteView3 If ( RegValueExists ("HKCU", "Software\Koord\Server_Audio", "KoordServ")) Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "Window=0 KoordServ=1 ClassName=Audio| RORegKeys=0") EndIf Call StopKoordServer #PlaySound ("\My Flash Disk\Sokobana\MortScript\success.wav" ) # --- andere Programme beenden ------------------------------- If ( ( ProcExists ("poiwarner.exe")) OR ( ProcExists ("poi-warner.exe"))) If ProcExists ("poiwarner.exe") kill ("poiwarner.exe") RegWriteString ("HKCU","Software\sokobana", "POIWEIN", "1") timerPOIW = 0 EndIf If ProcExists ("poi-warner.exe") kill ("poi-warner.exe") RegWriteString ("HKCU","Software\sokobana", "POIWEIN", "1") timerPOIW = 0 EndIf EndIf If WndExists ("GoPal Navigator") If WndExists ("Menu") Close ( "Menu" ) EndIf if (ProcExists( "SystemInformation.exe") ) kill ("SystemInformation.exe") endif If WndExists ("Settings") Close ( "Settings" ) EndIf If WndExists ("ContactViewer") Close ( "ContactViewer" ) EndIf If WndExists ("TelephoneBook") Close ( "TelephoneBook" ) EndIf EndIf # --- alte bmp und Stau-Marker löschen --------------------------------------- ForEach bmp in files ( "\My Flash Disk\Sokobana\koord2\View_3\Screen\*.bmp" ) delete ( %bmp% ) EndForEach If (RegValueExists ("HKCU", "Software\sokobana\RouteView", "STAU")) RegDelete ("HKCU", "Software\sokobana\RouteView", "STAU") EndIf For j = 1 to 3 If (RegValueExists ("HKCU", "Software\sokobana\RouteView", "StartRouteView3")) View3Tempo = 1 View3Tempo = ( RegRead ("HKCU", "Software\sokobana", "View3Tempo" ) ) If ( j = 1 ) # --- Koord-Server-Dateien je nach Mode nach View_3 kopieren --- Call RouteViewCopy # --- auf Map warten ---------------------------------- MaxMapWait = 20 CyclusTime = 1000 Call MapWaitRouteView3 EndIf # --- RouteOptimation weiterschalten und neue Route berechnen --------------------------- Run ("\My Flash Disk\Sokobana\Koord\koord465.exe", "window=0 RoRegKeys=2048 SendKey=\s1000\119\c200,440,240|") # --- neu: Koord-Server-Anzeige beim Berechnen Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "window=0 KoordServ=1 RORegKeys=0 include=\My Flash Disk\Sokobana\koord2\View_3\View_3_compact.txt") Call RV-Kontrolle # --- KSO in Map erneuern --------------------------------------------------------------- ROI = 5 Call RouteOptionInfo If ( View3Tempo = 1 ) Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\RVM.png","\My Flash Disk\Navigation\skin480x272\PPSkin\Function_button_80_RVM1.png",1) Else Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\RVM.png","\My Flash Disk\Navigation\skin480x272\PPSkin\Function_button_80_RVM2.png",1) EndIf EndIf If (RegValueExists ("HKCU", "Software\sokobana\RouteView", "StartRouteView3")) # --- auf Route-berechnen-Seite warten ---------------------------------------------------------- Time0 = TimeStamp() Color = ColorAt (479,16) While ( Color ne 255 ) #PlaySound ("\My Flash Disk\navigation\res\de\audio\num_4.wav" ) Call RV-Kontrolle # --- Abfrage Routenberechnenseite ---------------------- Color = ColorAt (479,16) Time1 = TimeStamp() If ( Time1 - Time0 > 15 ) PlaySound ("\My Flash Disk\Sokobana\MortScript\fehler.wav" ) Call CloseRouteView Color = 255 EndIf Endwhile EndIf If (RegValueExists ("HKCU", "Software\sokobana\RouteView", "StartRouteView3")) # --- Routenberechnungszeit RBZ ermitteln Time1 -> Time2 -------------- Color = ColorAt (479,16) While ( Color eq 255 ) Call RV-Kontrolle # --- Abfrage Routenberechnenseite | Zeitermittlung ---------------------- Color = ColorAt (479,16) Time2 = TimeStamp() RBZ = Time2 - Time1 IniWrite ("\Storage Card\BackupV3\RouteView.log","RouteView3","RBZ",RBZ) If ( RBZ > 60 ) Color = 0 PlaySound ("\My Flash Disk\Sokobana\MortScript\fehler.wav" ) PlaySound ("\My Flash Disk\Sokobana\MortScript\fehler.wav" ) EndIf Endwhile EndIf # --- auf Map warten --------------------------------------------------- MaxMapWait = 20 CyclusTime = 200 Call MapWaitRouteView3 If (RegValueExists ("HKCU", "Software\sokobana\RouteView", "StartRouteView3")) # --- Zuschlag für erste Routen-Berechnung ---- ZUSCHLAG1 = 0 If ( j = 1 ) ZUSCHLAG1 = 2 + ( RBZ / 10 ) EndIf # --- Mode 1+2 ------------------------------------------------------------- FAKTOR = 1 If (( View3Tempo > 1 ) AND ( RBZ > 6 )) FAKTOR = 1.8 EndIf GRAFIKDELAY1 = ( ZUSCHLAG1 + Time2 - Time1 ) * FAKTOR If (( View3Tempo = 1 ) AND ( GRAFIKDELAY1 > 2 )) GRAFIKDELAY1 = 2 EndIf CONTROLDELAY = GRAFIKDELAY1 Call StauDelay # --- Zoom out 'F10' --------------------------------------------------------- If ( View3Tempo > 1 ) MaxMapWait = 5 CyclusTime = 200 Call MapWaitRouteView3 SendSpecial( "F10" ) SendSpecial( "F12" ) # --- Zeitbegrenzung ----------------------------- CONTROLDELAY = GRAFIKDELAY1 If ( CONTROLDELAY > 20 ) CONTROLDELAY = 20 EndIf Call StauDelay EndIf EndIf If (RegValueExists ("HKCU", "Software\sokobana\RouteView", "StartRouteView3")) # --- Abfrage: Routendaten(!) in der Map(!) vorhanden? ----------------------- While NOT ( ColorAt(216,260) = ColorAt(425,244)) Call RV-Kontrolle EndWhile # --- Screenshot speichern --------------------------------------------- Call StopKoordServer ROUTEOPT = ( RegRead ("HKCU","Software\3SOFT\Pathfinder\RouteOptions","RouteOptimation")) MaxMapWait = 10 CyclusTime = 300 Call MapWaitRouteView3 Switch ( ROUTEOPT ) Case ( 0 ) run ("\My Flash Disk\Sokobana\MortScript\scrsht.exe", "\My Flash Disk\Sokobana\koord2\View_3\Screen\kurz.bmp") Case ( 1 ) run ("\My Flash Disk\Sokobana\MortScript\scrsht.exe", "\My Flash Disk\Sokobana\koord2\View_3\Screen\schnell.bmp") Case ( 2 ) run ("\My Flash Disk\Sokobana\MortScript\scrsht.exe", "\My Flash Disk\Sokobana\koord2\View_3\Screen\oeko.bmp") EndSwitch Sleep ( 500 ) EndIf Next Call RV-Kontrolle RegWriteString ("HKCU","Software\sokobana\RouteView", "ShowRouteView3", "1") Call VetoView # --- Auswahl anzeigen ---------------------------------------------------- If (RegValueExists ("HKCU", "Software\sokobana\RouteView", "StartRouteView3")) RegWriteString ("HKCU","Software\sokobana", "WndRefresh", "1") RegDeleteKey ("HKCU", "Software\sokobana\RouteView", "1", "1") Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "window=0 KoordServ=1 RORegKeys=0 include=\My Flash Disk\Sokobana\koord2\View_3\View_3_compact.txt") PlaySound ("\My Flash Disk\Sokobana\MortScript\success.wav" ) Sleep ( 20000 ) EndIf Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\Function_button_80.png","\My Flash Disk\Navigation\skin480x272\PPSkin\Function_button_80_RVM2.png",1) Copy ("\My Flash Disk\Navigation\skin480x272\PPSkin\Function_button_80.png","\My Flash Disk\Navigation\skin480x272\PPSkin\Function_button_80_RVM1.png",1) IniWrite ("\Storage Card\BackupV3\RouteView.log","RouteView3","Ergebnis","Anzeige") EndSub # --- Warteschleife für Map-Grafik ----------------------------------------------------- # Stauanfang = aktueller Stau Stauende= vorheriger Stau Sub StauDelay MAXSTAUDELAY = 30 Stau = 0 Stauende = 0 While ( CONTROLDELAY >= 0 ) # --- Stau wird gefunden ---------------------------------------------------- #If ( TMC = 3 ) Call RV-Kontrolle #EndIf If (RegValueExists ("HKCU", "Software\sokobana\RouteView", "STAU")) RegDelete ("HKCU", "Software\sokobana\RouteView", "STAU") CONTROLDELAY = GRAFIKDELAY1 Stau = Stau + 1 If ( Stau = 1 ) Stauanfang = TimeStamp() # --- Zeitdiff. zur 2. Staumeldung ------------------------------------------- If ( Stauanfang - Stauende >= 0 ) If ( Stauanfang - Stauende < 4 ) Stauende = TimeStamp() # --- Stauanzeige löschen --> keine Ausweichroute ---------------------------- MaxMapWait = 20 CyclusTime = 200 Call MapWaitRouteView3 If ( ColorAt (479,120) = rot ) MouseClick ( 479, 130 ) Sleep ( 500 ) MouseClick ( 10, 240 ) Sleep ( 2000 ) EndIf EndIf EndIf Else Stauende = TimeStamp() EndIf # --- Ende-Kriterium, wenn Stau nicht verschwindet --> keine Ausweichroute-------- MAXSTAUDELAY = MAXSTAUDELAY - 0.2 If ( MAXSTAUDELAY < 0 ) MaxMapWait = 20 CyclusTime = 200 Call MapWaitRouteView3 If ( ColorAt (479,120) = rot ) MouseClick ( 479, 130 ) Sleep ( 500 ) MouseClick ( 10, 240 ) Sleep ( 2000 ) EndIf CONTROLDELAY = GRAFIKDELAY1 EndIf Else # --- normale Wartezeitkontrolle ohne Stau ------------------------------------------- CONTROLDELAY = CONTROLDELAY - 1 MAXSTAUDELAY = 30 EndIf EndWhile EndSub Sub CloseRouteView RegWriteString ("HKCU","Software\sokobana", "WndRefresh", "1") RegDeleteKey ("HKCU", "Software\sokobana\RouteView", "1", "1") Call StopKoordServer Endsub Sub RouteViewCopy GetRO = ( RegRead ("HKCU","Software\3SOFT\Pathfinder\RouteOptions", "RouteOptimation") ) If ( View3Tempo = 1 ) Switch ( GetRO ) Case ( 0 ) XCopy ("\My Flash Disk\Sokobana\koord2\View_3\fast_kurz\*.*", "\My Flash Disk\Sokobana\koord2\View_3", TRUE ) Case ( 1 ) XCopy ("\My Flash Disk\Sokobana\koord2\View_3\fast_schnell\*.*", "\My Flash Disk\Sokobana\koord2\View_3", TRUE ) Case ( 2 ) XCopy ("\My Flash Disk\Sokobana\koord2\View_3\fast_oeko\*.*", "\My Flash Disk\Sokobana\koord2\View_3", TRUE ) EndSwitch Else Switch ( GetRO ) Case ( 0 ) XCopy ("\My Flash Disk\Sokobana\koord2\View_3\main_kurz\*.*", "\My Flash Disk\Sokobana\koord2\View_3", TRUE ) Case ( 1 ) XCopy ("\My Flash Disk\Sokobana\koord2\View_3\main_schnell\*.*", "\My Flash Disk\Sokobana\koord2\View_3", TRUE ) Case ( 2 ) XCopy ("\My Flash Disk\Sokobana\koord2\View_3\main_oeko\*.*", "\My Flash Disk\Sokobana\koord2\View_3", TRUE ) EndSwitch EndIf EndSub Sub StopKoordServer If ( RegValueExists ("HKCU", "Software\Koord\Server", "KoordServ")) Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "Window=0 KoordServ=1 RORegKeys=0") Sleep ( 1000 ) EndIf EndSub Sub RV-Kontrolle # --- Abbruch RouteView / RV-Kontrolle ob Stau --------------------------------------------------------- If (RegValueExists ("HKCU", "Software\sokobana\RouteView", "StartRouteView3")) Call CheckTmcModus If ( ( TMC = 3 ) And ( ColorAt (479,120) = rot ) ) RegWriteString ("HKCU","Software\sokobana\RouteView", "STAU", "1") Sleep ( 200 ) Else Sleep ( 1000 ) Stau = 0 EndIf Else Call CloseRouteView EndIf EndSub Sub MapWaitRouteView3 # --- auf Map warten -------------------------------------------------------------------------- # MaxMapWait --> Sekunden CyclusTime --> Tausendstel Sek. If (RegValueExists ("HKCU", "Software\sokobana\RouteView", "StartRouteView3")) Time3 = TimeStamp() While ( ColorAt (479,0) ne 255 ) Sleep ( CyclusTime ) Time4 = TimeStamp() If ( Time4 - Time3 > MaxMapWait ) Call CloseRouteView EndIf Endwhile EndIf EndSub Sub MapWaitVetoView3 # --- auf Map warten -------------------------------------------------------------------------- # MaxMapWait --> Sekunden CyclusTime --> Tausendstel Sek. If ( RegValueExists ("HKCU", "Software\sokobana\VetoView", "StartVetoView3")) Time3 = TimeStamp() While ( ColorAt (479,0) ne 255 ) Sleep ( CyclusTime ) Time4 = TimeStamp() If ( Time4 - Time3 > MaxMapWait ) RegWriteString ("HKCU","Software\sokobana\VetoView", "ClearVetoView", "1" ) EndIf Endwhile EndIf EndSub Sub VetoView # --- Route geplant? ----------------------------------------------------------- If ( RegValueExists ("HKCU","Software\sokobana", "VetoMode" ) ) If ( RegValueExists ("HKCU","Software\sokobana\Veto", "Umleitung")) If ( ColorAt (479,0) = 255 ) If NOT ( ColorAt(216,260) = ColorAt(425,244)) Sleep ( 5000 ) If NOT ( ColorAt(216,260) = ColorAt(425,244)) #PlaySound ("\My Flash Disk\Sokobana\MortScript\fehler.wav" ) RegWriteString ("HKCU","Software\sokobana\Veto", "ClearVeto", "1" ) EndIf EndIf EndIf # --- ClearVeto ----------------------------------------------------------- If ( RegValueExists ("HKCU", "Software\sokobana\Veto", "ClearVeto" )) Call StopKoordServer RegDeleteKey ("HKCU", "Software\sokobana\Veto", "1", "1") RegWriteDWord ("HKCU", "Software\sokobana", "WndRefresh", 1) uml = 0 EndIf # --- ShowVetoView-Countdown --------------------------------------------------------------- If ( RegValueExists ("HKCU","Software\sokobana\VetoView", "ClearDelay" ) ) Regdelete ("HKCU", "Software\sokobana\VetoView", "ClearDelay" ) TimeShowVetoView = TimeStamp() EndIf If ( RegValueExists ("HKCU","Software\sokobana\VetoView", "ShowVetoView3" ) ) VetoViewTime = TimeStamp() If ( VetoViewTime - TimeShowVetoView > 30 ) RegWriteString ("HKCU","Software\sokobana\VetoView", "ClearVetoView", "1" ) EndIf # --- VSDauerInfo pausieren lassen ---------------------------------------- TMCPreviewStartTimer = TimeStamp() EndIf # --- ClearVetoView ------------------------------------------------------------------------ If ( RegValueExists ("HKCU", "Software\sokobana\VetoView", "ClearVetoView" )) RegDeleteKey ("HKCU", "Software\sokobana\VetoView", "1", "1") RegWriteDWord ("HKCU", "Software\sokobana", "WndRefresh", 1) Call StopKoordServer # --- alte bmp löschen --------------------------------------- #ForEach bmp in files ( "\My Flash Disk\Sokobana\koord2\Veto\Screen\*.bmp" ) #delete ( %bmp% ) #EndForEach EndIf #voldelay = RegRead ("HKCU","Software\sokobana", "VOLDELAY") #SetVolume ( voldelay ) # --- Neustart von VetoView erkennen ---------------------------------------------------------- If (RegValueExists ("HKCU", "Software\sokobana\VetoView", "VetoView3")) RegDeleteKey ("HKCU", "Software\sokobana\VetoView", "1", "1") RegWriteString ("HKCU","Software\sokobana\VetoView", "StartVetoView3", "1") # VetoTimer = 0 # --- VSDauerInfo pausieren lassen ---------------------------------------- TMCPreviewStartTimer = TimeStamp() # --- Screenshot nachVS anfertigen ------------------------------------------ MaxMapWait = 20 CyclusTime = 1000 Call MapWaitVetoView3 For i = 1 to 19 SendSpecial( "F11" ) Next For i = 1 to 10 SendSpecial( "F12" ) Next Sleep ( 2000 ) run ("\My Flash Disk\Sokobana\MortScript\scrsht.exe", "\My Flash Disk\Sokobana\koord2\Veto\Screen\nachVS.bmp") # --- Hintergrundbild kopieren ---------------------------------------------- GetRO = ( RegRead ("HKCU","Software\3SOFT\Pathfinder\RouteOptions", "RouteOptimation") ) Copy ("\My Flash Disk\Sokobana\koord2\Veto\Triple_background_" &GetRO& ".bmp","\My Flash Disk\Sokobana\koord2\Veto\Triple_background.bmp",1) # --- Ergebnis anzeigen ----------------------------------------------------- Call StopKoordServer Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "window=0 KoordServ=1 RORegKeys=0 include=\My Flash Disk\Sokobana\koord2\Veto\Veto_3_compact.txt") PlaySound ("\My Flash Disk\Sokobana\MortScript\success.wav" ) TimeShowVetoView = TimeStamp() RegWriteString ("HKCU","Software\sokobana\VetoView", "ShowVetoView3", "1") EndIf EndIf EndIf EndSub Sub FindMyCar # --- Navimode 0=Pkw 1=Fußgänger 2=Fahrrad 3=Motorrad -------------------------- If ( ( RememberNaviMode = 1 ) AND ( ColorAt (479,0) = 255 ) ) NaviModeTimer = TimeStamp() If ( NaviModeTimer - NaviModeTimerStart > 60 ) PlaySound ("\My Flash Disk\Sokobana\MortScript\beep_high.wav" ) Switch ( REMNaviMode ) Case ( 0 ) PlaySound ("\My Flash Disk\navigation\res\de\audio\num_9.wav" ) Run ("\My Flash Disk\Sokobana\Koord\koord465.exe", "Window=0 RORegKeys=32768 SendKey=\119\s1000\c200,10,230|") Case ( 1 ) PlaySound ("\My Flash Disk\navigation\res\de\audio\num_1.wav" ) Case ( 2 ) PlaySound ("\My Flash Disk\navigation\res\de\audio\num_2.wav" ) Run ("\My Flash Disk\Sokobana\Koord\koord465.exe", "Window=0 RORegKeys=65536 SendKey=\119\s1000\c200,10,230|") Case ( 3 ) PlaySound ("\My Flash Disk\navigation\res\de\audio\num_3.wav" ) Run ("\My Flash Disk\Sokobana\Koord\koord465.exe", "Window=0 RORegKeys=81920 SendKey=\119\s1000\c200,10,230|") EndSwitch RememberNaviMode = 0 EndIf EndIf # --- FindMyCar-Modus ----------------------------------------------------------- Findx = 0 If (RegValueExists ("HKCU", "Software\sokobana", "FINDMYCARPP")) RegDelete ("HKCU", "Software\sokobana", "FINDMYCARPP") Findx = 1 Else If (RegValueExists ("HKCU", "Software\sokobana", "FINDMYCARPPAUTO")) RegDelete ("HKCU", "Software\sokobana", "FINDMYCARPPAUTO") Findx = 2 RememberNaviMode = 1 NaviModeTimerStart = TimeStamp() EndIf EndIf If ( Findx > 0 ) If ( RegValueExists ("HKCU","Software\sokobana", "FmcLat")) PlaySound ("\My Flash Disk\Sokobana\MortScript\beep_high.wav" ) Lat = RegRead ("HKCU","Software\sokobana", "FmcLat") Lon = RegRead ("HKCU","Software\sokobana", "FmcLon") # --- NaviMode merken und umschalten auf Fahrrad-Modus --------------------------- REMNaviMode = ( RegRead ("HKCU","Software\3SOFT\Pathfinder\RouteOptions", "NaviMode") ) Run ("\My Flash Disk\Sokobana\koord2\koord465.exe", "Window=0 RORegKeys=49152 SendKey=\119\s1000\c200,425,230|goto=$FindMyCar Lat="&%Lat% & " Lon="&%Lon% )") Else PlaySound ("\My Flash Disk\Sokobana\MortScript\fehler.wav") EndIf EndIf EndSub