Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 09/10/2014 in all areas

  1. Ha, I got it... #include <array.au3> Local $sSourceString = 'ab1234567890cd' local $cnt = 4 local $aRET = stringregexp($sSourceString,'(?=(\d{' & $cnt & '}))',3) ConsoleWrite($aRET & @CRLF) _arraydisplay($aRET)
    4 points
  2. Here a proof of concept version. ;coded by UEZ build 2014-09-10 -> proof of concept version! #include <GUIConstantsEx.au3> #include <WinAPIConstants.au3> #include <GDIPlus.au3> #include <Misc.au3> #include <WindowsConstants.au3> AutoItSetOption("MouseCoordMode", 2) _GDIPlus_Startup() Global Const $iW = 678, $iH = 368 Global Const $hGUI = GUICreate("Test", $iW + 100, $iH) GUISetBkColor(0xFFFFFF) Global Const $iPic_WorldMap = GUICtrlCreatePic("", 0, 0, $iW, $iH) GUICtrlSetState(-1, $GUI_DISABLE) Global Const $iPic_Pin = GUICtrlCreatePic("", $iW + 20, 20, 26, 66), $hPic_Pin = GUICtrlGetHandle($iPic_Pin) Global Const $iBtn_Start = GUICtrlCreateButton("Start", $iW + 20, $iH - 80, 60, 60) GUISetState() Global $hBitmap_World = _GDIPlus_BitmapCreateFromMemory(_World_Map(), True) _WinAPI_DeleteObject(GUICtrlSendMsg($iPic_WorldMap, 0x0172, $IMAGE_BITMAP, $hBitmap_World)) ; $STM_SETIMAGE = 0x0172 Global $hBitmap_Pin = _GDIPlus_BitmapCreateFromMemory(_Pin(), True) _WinAPI_DeleteObject(GUICtrlSendMsg($iPic_Pin, 0x0172, $IMAGE_BITMAP, $hBitmap_Pin)) Global $aPaths[7] = [_GDIPlus_PathCreate(), _GDIPlus_PathCreate(), _GDIPlus_PathCreate(), _GDIPlus_PathCreate(), _GDIPlus_PathCreate(), _GDIPlus_PathCreate(), _GDIPlus_PathCreate()] Convert(_Africa(), $aPaths[0]) Convert(_Antarctica(), $aPaths[1]) Convert(_Asia(), $aPaths[2]) Convert(_Australia(), $aPaths[3]) Convert(_Europe(), $aPaths[4]) Convert(_NorthAmerica(), $aPaths[5]) Convert(_SouthAmerica(), $aPaths[6]) Global $aContinents[7] = ["Africa", "Antarctica", "Asia", "Australia", "Europe", "North America", "South America"] Global $hDLL_user32 = DllOpen("user32.dll"), $aCursor, $aPos, $iContinent, $iX_old, $iY_old, $iX, $iY Do Switch GUIGetMsg() Case $GUI_EVENT_Close ExitLoop Case $iBtn_Start $iContinent = Random(0, 6, 1) MsgBox(0, "Start", "Find " & $aContinents[$iContinent] & " by moving the pin to the guessed continent.") Do $aCursor = GUIGetCursorInfo($hGUI) If $aCursor[2] And $aCursor[4] = $iPic_Pin Then While $aCursor[2] $aCursor = GUIGetCursorInfo($hGUI) $iX = MouseGetPos(0) - 15 $iY = MouseGetPos(1) - 13 If $iX <> $iX_old Or $iY <> $iY_old Then ControlMove($hGUI, "", $iPic_Pin, $iX, $iY) _WinAPI_RedrawWindow($hGUI, 0, 0, BitOR($RDW_INVALIDATE, $RDW_UPDATENOW, $RDW_ALLCHILDREN)) $iX_old = $iX $iY_old = $iY EndIf Sleep(50) WEnd ExitLoop EndIf Until False $aPos = ControlGetPos($hGUI, "", $iPic_Pin) If _GDIPlus_PathIsVisiblePoint($aPaths[$iContinent], $aPos[0] + 1, $aPos[1] + 63) Then MsgBox(0, "Great", "Well done.", 30, $hGUI) Else MsgBox(0, "Hmmm", "You should do some exercises in geography!", 30, $hGUI) EndIf ControlMove($hGUI, "", $iPic_Pin, $iW + 20, 20) _WinAPI_DeleteObject(GUICtrlSendMsg($iPic_Pin, 0x0172, $IMAGE_BITMAP, 0)) _WinAPI_RedrawWindow($hGUI, 0, 0, BitOR($RDW_INVALIDATE, $RDW_UPDATENOW, $RDW_ALLCHILDREN)) _WinAPI_DeleteObject(GUICtrlSendMsg($iPic_Pin, 0x0172, $IMAGE_BITMAP, $hBitmap_Pin)) EndSwitch Until False _GDIPlus_PathDispose($aPaths[0]) _GDIPlus_PathDispose($aPaths[1]) _GDIPlus_PathDispose($aPaths[2]) _GDIPlus_PathDispose($aPaths[3]) _GDIPlus_PathDispose($aPaths[4]) _GDIPlus_PathDispose($aPaths[5]) _GDIPlus_PathDispose($aPaths[6]) _WinAPI_DeleteObject($hBitmap_World) _WinAPI_DeleteObject($hBitmap_Pin) _GDIPlus_Shutdown() DllClose($hDLL_user32) GUIDelete() Exit Func Convert($aArrayCoord, ByRef $hPath) Local $aCoords[UBound($aArrayCoord)][2], $i, $aTmp $aCoords[0][0] = UBound($aArrayCoord) - 1 For $i = 1 To UBound($aArrayCoord) - 1 $aTmp = StringSplit($aArrayCoord[$i], ",", 2) _GDIPlus_PathAddRectangle($hPath, $aTmp[0], $aTmp[1], $aTmp[2] - $aTmp[0], $aTmp[3] - $aTmp[1]) Next EndFunc ;Code below was generated by Perforator v1.25 build 2014-09-09 beta Func _Africa() #Region pixel coordinates Local $sPixelRect $sPixelRect &= "678,368;260,107,310,166;281,97,300,107;285,96,287,97;295,96,300,97;300,97,301,98;266,101,281,107;268,98,269,101;279,98,281,101;269,99,270,101;276,100,279,101;278,99,279,100;300,99,301,102;267,100,268,101;270,100,273,101;263,104,266,107;264,103,266,104;300,104,302,107;300,103,301,104;261,105,263,107;302,105,306,107;305,166,359,203;310,111,344,166;319,106,325,111;320,105,323,106;260,106,261,107;306,106,309,107;325,108,331,111;325,107,327,108;246,127,260,154;255,115,260,127;259,108,260,115;318,108,319,109;310,109,312,111;331,109,336,111;338,109,343,111;312,110,315,111;318,110,319,111;336,110,338,111;344,110,346,114;343,110,344,111;346,113,349,116;346,111,348,113;257,114,259,115;258,113,259,114;345,114,346,115;344,130,354,166;344,118,347,130;344,115,345,118;251,118,255,127;253,116,255,118;345,116,346,118;347,116,349,117;252,117,253,118;249,121,251,127;250,120,251,121;347,123,350,130;347,120,348,123;348,121,349,123;247,125,249,127;248,123,249,125;350,125,351,130;351,127,352,130;245,128,246,154;243,132,245,133;244,129,245,132;352,129,353,130;354,143,360,166;354,132,355,143;244,133,245,135;355,138,357,143;355,137,356,138;357,139,358,143;232,141,234,144;358,141,359,143;231,142,232,144;234,142,235,143;244,143,245,153;232,144,233,145;243,145,244,148;359,166,371,178;360,149,366,166;360,146,362,149;360,145,361,146;362,147,364,149;364,148,365,149;243,150,244,152;366,155,369,166;366,152,368,155;366,151,367,152;380,154,384,160;382,153,384,154;251,154,260,163;248,154,251,157;247,154,248,156;369,160,381,166;375,155,380,160;369,156,375,160;384,156,385,158;250,157,251,161;249,157,250,158;381,160,383,162;381,162,382,164;255,163,260,167;253,163,255,165;252,163,253,164;254,165,255,166;260,166,277,169;277,166,281,167;289,166,305,170;287,166,289,167;371,166,377,173;377,166,379,169;379,166,380,167;258,167,260,169;256,167,258,168;277,167,279,168;259,169,267,170;273,169,274,170;377,169,378,171;262,170,263,171;290,170,292,171;298,170,305,186;295,170,298,171;297,171,298,172;295,172,297,173;" $sPixelRect &= "371,173,374,175;374,173,376,174;371,175,373,176;293,176,295,179;371,176,372,177;292,177,293,179;295,177,296,178;297,178,298,185;359,178,366,183;366,178,368,181;368,178,369,179;293,179,294,180;366,181,367,182;296,182,297,183;359,183,364,185;364,183,365,184;359,185,362,188;362,185,363,186;302,186,305,192;300,186,302,188;299,186,300,187;301,188,302,189;359,188,361,189;359,189,360,193;393,191,396,193;394,190,395,191;303,192,305,195;396,192,397,193;394,193,396,194;304,195,305,197;306,203,362,216;359,196,360,203;360,201,361,203;362,205,363,206;367,208,370,210;368,207,369,208;302,216,355,221;303,211,306,216;305,208,306,211;376,213,381,219;378,210,381,213;379,208,380,210;362,209,363,214;366,209,367,210;380,209,381,210;304,210,305,211;367,210,369,211;381,211,382,216;377,212,378,213;369,219,378,227;374,215,376,219;375,214,376,215;302,215,303,216;355,216,360,218;360,216,361,217;370,216,374,219;369,217,370,219;355,218,359,219;355,219,357,220;368,219,369,223;378,219,380,222;314,221,339,251;307,221,314,233;304,221,307,225;303,221,304,223;339,221,350,236;350,221,353,223;353,221,354,222;378,222,379,225;350,223,352,224;350,224,351,225;395,225,398,227;396,224,397,225;306,225,307,229;305,225,306,227;366,230,375,236;367,228,377,230;368,226,369,228;394,226,395,227;369,227,377,228;395,227,397,228;350,231,352,233;350,229,351,231;375,230,377,231;375,231,376,235;309,233,314,243;308,233,309,239;350,233,351,235;339,236,345,244;345,236,349,237;368,236,374,238;367,236,368,237;374,236,375,237;345,237,347,238;370,238,371,239;311,243,314,246;310,243,311,244;339,244,342,248;342,244,344,245;342,245,343,246;313,246,314,250;312,246,313,247;339,248,341,249;339,249,340,250;316,251,331,258;315,251,316,257;331,251,336,254;336,251,338,252;336,252,337,253;331,254,334,256;334,254,335,255;331,256,333,257;317,258,321,259;328,258,329,259" #EndRegion pixel coordinates Local $aPixelRect = StringSplit($sPixelRect, ";", 2) Return $aPixelRect EndFunc ;==>_Africa Func _Antarctica() #Region pixel coordinates Local $sPixelRect $sPixelRect &= "678,368;212,324,215,325;212,325,213,327;214,325,216,327;213,326,214,327;194,327,197,329;191,329,193,330;197,330,202,331;200,329,201,330;197,331,198,333;196,331,197,332;198,332,200,333;199,331,200,332;190,332,192,335;189,333,190,336;347,339,388,368;363,335,370,339;365,334,367,335;190,335,191,336;191,336,193,338;192,335,193,336;420,337,483,368;451,335,460,337;483,338,498,359;483,335,490,338;479,336,483,337;482,335,483,336;361,337,363,339;362,336,363,337;370,336,371,339;422,336,445,337;450,336,451,337;468,336,470,337;471,336,478,337;490,336,495,338;184,337,186,340;190,337,191,339;371,337,377,339;495,337,496,338;183,338,184,340;186,338,187,340;359,338,361,339;377,338,384,339;401,340,420,368;409,338,420,340;498,341,510,354;498,338,502,341;389,339,390,342;388,339,389,340;406,339,409,340;502,339,503,341;154,349,203,368;190,341,197,347;189,340,195,341;321,343,347,368;335,340,337,343;345,340,347,343;503,340,506,341;183,341,187,345;189,341,190,346;187,342,189,343;188,341,189,342;329,342,335,343;334,341,335,342;337,341,339,343;342,342,345,343;344,341,345,342;388,341,389,342;388,344,401,368;397,341,401,344;510,342,518,351;510,341,516,342;182,342,183,345;197,343,200,349;197,342,199,343;339,342,341,343;389,343,397,344;396,342,397,343;187,343,188,345;270,346,321,368;282,343,284,346;518,344,522,350;518,343,519,344;188,344,189,345;200,345,202,349;200,344,201,345;275,344,278,346;281,344,282,346;284,344,285,346;291,344,318,346;318,345,321,346;320,344,321,345;522,345,526,349;522,344,524,345;180,346,183,349;180,345,182,346;278,345,279,346;288,345,291,346;202,346,203,349;526,346,527,348;146,347,150,350;178,347,180,349;183,347,184,349;192,347,197,349;191,347,192,348;258,350,270,368;264,348,270,350;269,347,270,348;144,348,146,350;150,348,151,350;156,348,178,349;184,348,185,349;203,349,205,353;203,348,204,349;106,354,154,368;117,349,121,354;263,349,264,350;121,350,128,354;145,350,149,351;151,351,154,354;152,350,154,351;518,350,521,351;134,351,136,354;251,353,258,368;256,351,258,353;" $sPixelRect &= "510,351,513,352;102,352,112,354;128,352,130,354;136,352,151,354;253,352,256,353;510,352,511,353;92,354,106,357;93,353,96,354;99,353,102,354;112,353,115,354;130,353,134,354;203,353,204,355;90,354,92,356;245,356,251,368;248,355,251,356;250,354,251,355;498,354,506,355;89,355,90,356;498,355,502,356;203,356,217,368;498,356,500,357;501,356,505,359;505,356,506,358;95,357,106,362;217,358,224,368;217,357,221,358;238,358,245,368;240,357,245,358;498,357,499,358;89,360,95,361;91,358,95,360;88,358,90,360;90,358,91,359;83,359,86,361;82,359,83,360;224,359,238,368;483,359,491,361;494,359,498,360;84,361,87,362;86,360,87,361;91,361,95,362;483,361,486,362;102,362,106,366;483,362,484,363;100,363,102,365;101,365,102,366;483,365,496,368;496,365,497,367;104,366,106,367" #EndRegion pixel coordinates Local $aPixelRect = StringSplit($sPixelRect, ";", 2) Return $aPixelRect EndFunc ;==>_Antarctica Func _Asia() #Region pixel coordinates Local $sPixelRect $sPixelRect &= "678,368;404,8,411,11;406,7,408,8;403,9,404,10;411,9,416,12;416,10,417,12;419,10,421,13;409,11,411,12;417,12,419,14;418,11,419,12;384,33,507,119;412,15,440,33;423,11,425,15;421,11,423,13;425,12,428,15;419,13,420,14;428,13,430,15;421,14,423,15;430,14,441,15;440,20,458,33;440,16,443,18;440,15,442,16;488,15,491,19;491,16,496,19;492,15,494,16;370,16,375,19;375,16,376,18;402,19,412,33;407,16,412,19;487,16,488,18;496,16,501,18;363,17,370,20;376,17,377,18;498,18,502,19;501,17,502,18;359,20,364,24;361,18,363,20;441,18,442,20;440,18,441,19;360,19,361,20;442,19,447,20;452,19,454,20;364,20,367,21;397,22,402,33;400,20,402,22;458,21,472,33;459,20,470,21;364,21,365,22;383,22,390,27;384,21,389,22;399,21,400,22;487,22,502,33;488,21,497,22;357,23,359,26;358,22,359,23;472,24,477,33;472,22,473,24;382,23,383,25;387,27,395,33;390,24,392,27;390,23,391,24;393,23,397,27;392,23,393,25;473,23,475,24;477,25,487,33;480,23,482,25;502,24,513,33;502,23,505,24;359,24,363,27;478,24,480,25;482,24,487,25;507,33,540,48;513,25,522,33;518,24,520,25;358,30,369,133;361,27,365,28;363,25,364,27;329,28,336,37;328,27,334,28;331,26,332,27;364,26,365,27;392,26,393,27;522,27,539,33;522,26,525,27;530,26,535,27;540,27,554,42;539,26,548,27;336,28,341,33;335,27,338,28;369,29,384,75;375,27,381,29;385,27,387,28;396,27,397,29;395,27,396,28;327,28,329,30;363,28,366,30;371,28,375,29;381,28,385,29;539,28,540,33;554,30,567,45;554,28,558,30;341,29,344,34;337,38,358,63;351,30,355,38;351,29,354,30;360,29,363,30;366,29,369,30;384,29,387,33;558,29,561,30;344,30,347,33;350,30,351,31;395,30,396,31;355,32,358,38;356,31,358,32;567,32,571,35;567,31,569,32;328,32,329,34;346,34,351,38;347,32,348,34;396,32,397,33;572,32,576,36;339,33,341,34;344,33,346,34;348,33,351,34;571,33,572,36;576,34,579,38;576,33,578,34;332,37,337,56;336,34,337,37;337,35,338,38;341,35,343,37;567,35,568,37;570,35,571,36;579,35,580,37;343,36,346,38;573,36,576,37;580,36,581,37;330,37,332,40;338,37,340,38;342,37,343,38;567,39,572,42;567,38,569,39;572,40,574,42;" $sPixelRect &= "542,42,548,44;540,42,542,43;550,46,556,56;551,42,554,46;550,42,551,44;567,42,569,43;571,42,572,43;329,44,332,54;330,43,332,44;548,43,549,44;327,45,329,46;328,44,329,45;545,44,548,45;556,45,559,47;554,45,556,46;559,45,561,46;564,45,565,47;562,45,564,46;565,45,566,46;328,47,329,51;507,59,529,85;507,48,519,56;519,48,523,49;526,48,530,49;535,48,540,49;519,49,521,50;556,51,560,62;556,49,557,51;519,50,520,54;548,52,550,53;549,50,550,52;557,50,558,51;560,56,563,65;560,53,562,56;560,52,561,53;549,53,550,54;330,54,332,55;336,56,337,59;335,56,336,57;507,56,518,59;552,56,556,58;551,56,552,57;518,57,520,59;563,57,564,58;520,58,523,59;524,58,528,59;554,58,556,60;553,58,554,59;529,66,535,82;529,61,531,66;529,60,530,61;531,62,536,64;532,60,534,62;531,60,532,61;555,60,556,61;534,61,535,62;559,62,560,65;558,62,559,63;345,63,358,67;342,63,345,65;563,63,564,65;531,64,533,66;535,64,538,66;534,64,535,65;344,65,345,66;533,65,534,66;537,66,541,68;538,65,539,66;560,65,562,66;536,66,537,67;351,73,358,81;353,67,358,73;349,67,353,68;535,67,536,80;540,68,542,74;541,67,542,68;352,68,353,69;539,68,540,72;538,68,539,70;542,68,543,71;536,70,537,72;352,72,353,73;541,74,545,75;542,72,543,74;543,73,544,74;536,74,537,77;350,75,351,80;369,75,372,77;372,75,373,76;377,77,384,84;379,75,384,77;377,75,379,76;544,75,545,80;543,75,544,77;542,75,543,76;545,75,546,76;369,77,371,78;349,78,350,79;375,78,377,83;545,80,551,85;545,78,547,80;547,79,548,80;374,80,375,81;355,81,358,83;353,81,355,82;369,95,376,150;369,85,373,95;369,81,370,85;551,81,553,84;529,82,533,84;533,82,534,83;544,82,545,85;553,82,554,84;357,83,358,84;370,83,371,85;376,83,377,84;371,84,372,85;379,84,384,86;378,84,379,85;550,85,552,86;551,84,552,85;334,87,353,98;341,85,348,87;513,85,526,91;507,85,513,89;526,85,528,86;546,85,548,87;545,85,546,86;334,86,335,87;337,86,338,87;339,86,341,87;348,86,350,87;349,98,358,118;353,88,358,98;355,87,358,88;357,86,358,87;373,88,375,93;373,86,374,88;382,88,384,92;383,86,384,88;382,86,383,87;526,87,528,90;" $sPixelRect &= "526,86,527,87;547,87,550,90;330,89,334,92;330,88,333,89;381,88,382,91;380,88,381,89;549,90,553,102;550,88,552,90;507,89,510,91;510,89,511,90;329,90,330,91;548,90,549,92;507,91,509,92;513,91,517,92;521,91,526,95;519,91,521,92;331,92,334,95;383,92,384,95;514,92,515,93;525,95,532,97;526,92,527,95;553,92,554,93;373,93,374,95;507,102,516,129;507,94,510,102;507,93,508,94;520,93,521,94;527,93,529,95;374,94,375,95;510,95,517,98;513,94,515,95;529,94,530,95;332,95,334,97;376,97,384,112;376,95,377,97;517,95,518,97;523,95,525,96;546,97,549,102;547,96,549,97;548,95,549,96;553,97,555,99;553,95,554,97;377,96,379,97;383,96,384,97;527,97,532,102;526,97,527,100;532,97,533,101;336,98,338,99;343,98,346,102;342,98,343,99;510,98,514,102;514,98,516,99;540,99,546,103;544,98,546,99;346,99,347,102;533,99,534,101;553,99,554,101;342,100,343,102;537,101,540,104;539,100,540,101;343,102,345,103;528,102,530,103;536,102,537,107;546,102,548,105;347,108,349,113;348,103,349,108;541,103,544,106;545,103,546,104;516,108,521,124;516,104,517,108;537,105,540,108;537,104,539,105;540,104,541,105;535,105,536,106;517,106,518,108;541,106,543,107;518,107,519,108;538,108,541,109;540,107,541,108;346,109,347,111;538,109,540,110;521,110,522,111;376,112,377,113;380,112,384,115;378,112,380,113;521,112,523,117;348,113,349,117;376,120,384,147;376,115,377,120;381,115,384,117;377,117,378,120;383,117,384,119;382,117,383,118;521,117,522,120;352,118,358,123;350,118,352,120;378,118,379,120;379,119,382,120;427,119,453,138;397,119,411,124;385,119,397,120;417,119,427,128;412,119,417,124;411,119,412,123;472,119,495,143;453,119,472,130;495,119,507,132;351,120,352,121;387,120,390,121;394,120,397,122;392,120,394,121;384,121,385,124;384,126,397,137;390,122,393,126;391,121,393,122;393,122,394,123;395,122,397,123;355,123,358,127;354,123,355,125;353,123,354,124;388,124,390,126;389,123,390,124;522,125,527,127;524,123,526,125;393,124,394,126;415,124,417,127;414,124,415,125;516,124,519,126;519,124,520,125;523,124,524,125;384,125,388,126;" $sPixelRect &= "394,125,396,126;516,126,518,128;357,127,358,130;356,127,357,128;397,128,399,133;397,127,398,128;523,127,526,130;522,127,523,129;399,129,401,131;399,128,400,129;420,128,426,133;419,128,420,132;418,128,419,129;426,128,427,132;516,128,517,129;507,129,514,130;453,130,458,132;458,130,462,131;466,130,472,134;465,130,466,132;507,130,509,131;524,130,525,131;399,131,400,132;453,132,457,135;495,132,497,134;497,132,498,133;501,135,505,138;502,132,504,134;504,132,505,133;363,133,369,140;360,133,363,136;359,133,360,135;397,133,398,135;422,133,425,134;426,134,427,137;469,134,472,136;467,134,469,135;495,134,496,136;503,134,504,135;453,135,455,136;505,135,506,136;362,136,363,138;361,136,362,137;471,136,472,140;470,136,471,138;500,136,501,138;384,137,393,141;393,137,395,139;395,137,396,138;490,143,502,154;495,138,497,143;495,137,496,138;434,138,444,156;429,138,434,145;427,138,429,141;444,138,449,142;449,138,451,140;451,138,452,139;502,138,503,140;501,138,502,139;503,138,504,139;525,140,530,147;526,138,529,140;393,139,394,140;525,139,526,140;366,140,369,148;365,140,366,142;364,140,365,141;497,140,498,143;384,141,389,143;389,141,392,142;428,141,429,143;498,141,500,143;444,142,447,144;447,142,448,143;500,142,501,143;530,142,531,143;384,143,386,145;386,143,387,144;473,143,476,145;472,143,473,144;476,143,477,144;481,143,490,151;479,143,481,148;478,143,479,144;524,143,525,145;444,144,445,145;384,145,385,146;431,145,434,149;430,145,431,147;502,147,504,156;502,145,503,147;376,147,380,149;380,147,382,148;527,150,530,153;527,147,531,149;526,147,527,148;368,148,369,152;367,148,368,150;480,148,481,150;531,148,534,151;376,149,377,150;432,149,434,152;444,149,445,151;528,149,531,150;534,149,535,153;369,150,373,152;373,150,375,151;530,150,531,151;481,155,484,162;482,151,485,155;481,151,482,152;488,151,490,153;487,151,488,152;504,151,505,154;433,152,434,154;532,152,534,154;534,155,540,156;535,152,538,154;529,155,533,156;530,153,532,155;529,153,530,154;536,154,539,155;538,153,539,154;495,154,499,160;" $sPixelRect &= "492,154,495,157;491,154,492,156;499,154,502,157;532,154,533,155;484,155,485,157;525,155,527,158;436,156,441,161;435,156,436,159;441,156,443,159;443,156,444,157;523,157,525,160;524,156,525,157;530,156,533,157;535,156,537,158;493,157,494,158;499,157,500,158;532,157,534,160;536,160,541,165;538,157,539,160;443,160,447,164;444,158,445,160;484,160,486,164;484,158,485,160;521,159,523,162;522,158,523,159;525,158,526,159;531,158,532,159;534,158,535,159;536,158,537,159;539,158,540,160;441,159,442,160;445,159,446,160;537,159,538,160;495,160,497,161;523,160,524,161;532,161,536,164;532,160,533,161;437,161,440,162;444,164,449,165;447,161,448,164;556,162,559,165;556,161,558,162;482,162,484,163;486,164,489,170;486,162,487,164;555,162,556,164;531,163,532,164;541,163,542,166;485,164,486,166;535,164,536,166;444,165,448,167;487,170,494,172;489,166,491,170;489,165,490,166;514,169,523,183;519,166,524,169;520,165,523,166;536,165,539,168;540,165,541,166;539,166,540,168;427,168,431,170;428,167,430,168;476,168,481,170;476,167,478,168;491,167,492,170;515,168,519,169;518,167,519,168;523,169,525,171;524,167,525,169;492,168,493,170;525,168,526,169;480,170,484,174;481,169,482,170;427,170,430,171;478,170,480,172;477,170,478,171;482,174,487,177;484,171,485,174;507,176,514,188;511,173,514,176;513,171,514,173;523,171,524,172;479,172,480,173;490,172,494,176;488,172,490,174;485,173,486,174;492,176,496,178;494,173,495,176;481,174,482,175;489,174,490,175;509,174,511,176;523,176,525,179;523,174,524,176;543,175,546,181;544,174,546,175;486,177,491,183;487,175,488,177;495,175,496,176;546,175,547,176;488,176,490,177;491,176,492,177;505,176,507,184;537,176,539,179;483,177,486,179;525,177,526,178;529,177,534,180;534,178,537,181;535,177,537,178;491,178,495,179;504,178,505,180;526,182,532,188;527,179,529,182;528,178,529,179;485,179,486,181;484,179,485,180;489,183,496,189;491,179,493,183;523,179,524,180;537,179,538,180;542,179,543,180;493,180,494,181;526,181,527,182;544,181,545,182;493,182,495,183;532,182,535,184;" $sPixelRect &= "488,183,489,187;487,183,488,185;515,183,520,189;514,183,515,188;520,183,522,185;506,184,507,186;532,184,533,185;492,189,499,192;496,186,498,189;496,185,497,186;520,185,521,187;525,186,526,190;531,188,534,191;532,186,533,188;544,186,547,189;498,187,499,189;524,187,525,188;547,187,549,189;549,187,550,188;512,188,514,189;526,189,529,193;526,188,528,189;530,188,531,190;491,189,492,191;490,189,491,190;517,189,518,190;525,191,526,193;532,191,533,192;494,192,497,194;493,192,494,193;497,192,498,193;526,193,528,194;498,194,504,198;497,195,498,197;504,195,505,198;506,195,512,199;505,196,506,199;512,197,516,200;512,196,513,197;501,198,504,199;516,198,518,200;527,199,533,201;528,198,530,199;508,199,512,200;520,199,525,201;537,199,542,201;515,200,517,201;519,200,520,201;535,200,537,203;542,200,543,201;521,201,523,202;525,201,527,203;528,201,530,202;534,201,535,204;537,201,540,202;527,202,529,204;537,202,538,203;526,203,527,204;533,203,534,204;535,203,536,204" #EndRegion pixel coordinates Local $aPixelRect = StringSplit($sPixelRect, ";", 2) Return $aPixelRect EndFunc ;==>_Asia Func _Australia() #Region pixel coordinates Local $sPixelRect $sPixelRect &= "678,368;605,162,607,165;634,163,637,165;634,162,636,163;604,163,605,165;607,163,608,164;633,163,634,164;605,165,606,166;635,165,636,166;639,177,642,179;639,176,641,177;638,177,639,178;624,180,627,182;625,179,626,180;640,179,641,180;554,183,557,189;553,181,555,183;627,181,628,182;551,182,553,184;555,182,556,183;625,182,627,183;552,184,554,185;553,183,554,184;561,186,573,192;563,184,568,186;565,183,566,184;557,184,558,190;562,185,563,186;568,185,570,186;558,187,561,190;560,186,561,187;591,186,593,188;553,187,554,188;566,192,583,198;573,188,577,192;573,187,575,188;593,187,594,189;594,189,596,191;594,188,595,189;555,189,557,190;577,189,579,192;559,190,561,191;579,190,580,192;596,190,597,191;580,191,582,192;593,191,595,193;563,192,566,193;591,192,593,194;565,193,566,195;581,198,585,200;583,194,585,196;583,193,584,194;588,193,591,195;593,193,594,194;598,193,599,196;597,193,598,194;587,194,588,195;591,194,592,195;599,194,600,197;589,195,591,196;583,196,584,198;600,196,603,197;564,198,577,199;565,197,566,198;584,197,585,198;602,199,604,200;603,197,604,199;602,197,603,198;579,198,581,199;606,198,607,200;605,198,606,199;566,199,567,200;570,199,576,201;569,199,570,200;583,200,587,203;585,199,586,200;607,199,608,203;582,200,583,201;603,200,605,201;609,200,610,203;572,201,575,202;586,203,590,205;587,201,588,203;610,201,611,205;648,202,651,204;648,201,650,202;588,202,589,203;608,202,609,204;647,202,648,203;584,203,586,204;589,205,592,206;590,204,591,205;611,204,612,206;649,204,650,205;529,220,578,253;549,208,558,220;552,207,558,208;554,206,555,207;570,211,576,220;571,207,575,211;572,206,574,207;558,208,560,211;545,212,549,220;547,209,549,212;570,210,571,211;664,211,667,213;665,210,666,211;536,213,543,220;538,212,542,213;540,211,541,212;546,211,547,212;558,211,559,212;576,213,578,220;576,212,577,213;663,212,664,213;664,213,666,214;543,214,545,220;558,216,560,220;558,214,559,216;621,214,622,217;623,214,625,215;534,216,536,220;535,215,536,216;578,215,579,221;622,216,624,220;" $sPixelRect &= "622,215,623,216;568,218,570,220;569,216,570,218;624,216,625,218;532,217,534,220;560,217,562,220;645,217,648,219;529,219,532,220;530,218,531,219;562,218,563,220;644,218,645,219;563,219,565,220;567,219,568,220;642,219,644,222;645,219,647,220;641,220,642,221;644,220,645,222;516,227,529,255;527,223,529,227;528,221,529,223;578,232,585,251;578,225,581,232;578,223,579,225;612,223,613,226;521,225,527,227;526,224,527,225;579,224,580,225;613,225,615,228;613,224,614,225;655,225,657,228;519,226,521,227;581,228,583,232;581,226,582,228;654,226,655,228;657,226,658,227;614,228,617,229;615,227,616,228;509,232,516,258;512,229,516,232;514,228,516,229;655,228,656,229;616,229,618,231;615,229,616,230;510,230,512,232;583,230,584,232;617,231,619,232;618,230,619,231;508,234,509,236;585,236,588,246;585,234,586,236;586,235,587,236;588,238,589,239;508,239,509,250;585,246,587,248;585,248,586,249;578,251,582,255;582,251,584,252;582,252,583,253;507,255,509,259;508,253,509,255;529,253,533,254;552,253,570,267;545,253,550,257;543,253,545,255;542,253,543,254;550,257,552,260;550,253,552,256;570,253,577,259;577,253,578,258;516,255,524,257;524,255,526,256;544,255,545,256;578,255,581,256;506,256,507,259;551,256,552,257;578,256,579,257;516,257,519,258;545,257,549,258;509,258,512,260;512,258,514,259;545,258,547,259;549,258,550,261;508,259,509,260;570,259,575,261;575,259,576,260;619,260,621,270;619,259,620,260;551,260,552,262;618,260,619,262;570,261,573,263;573,261,574,262;570,263,572,264;551,264,552,266;570,264,571,266;621,266,624,269;621,265,622,266;616,267,619,272;618,266,619,267;624,266,625,268;554,267,559,268;561,267,563,269;560,267,561,268;563,267,564,268;615,268,616,274;614,269,615,271;621,269,622,270;619,270,620,271;555,273,559,279;556,272,557,273;608,273,611,276;609,272,610,273;613,273,615,275;614,272,615,273;616,272,618,273;559,273,562,276;616,273,617,274;562,274,563,275;605,275,608,278;606,274,608,275;611,274,612,275;559,276,561,277;602,277,605,280;604,276,605,277;608,276,610,277;559,277,560,278;" $sPixelRect &= "597,279,602,281;599,278,602,279;605,278,606,280;556,279,557,280;593,281,599,284;595,280,597,281;602,280,604,281;599,281,601,282;590,283,593,286;591,282,593,283;599,282,600,283;593,284,596,286;596,284,598,285" #EndRegion pixel coordinates Local $aPixelRect = StringSplit($sPixelRect, ";", 2) Return $aPixelRect EndFunc ;==>_Australia Func _Europe() #Region pixel coordinates Local $sPixelRect $sPixelRect &= "678,368;305,11,313,14;310,10,311,11;298,12,305,13;299,11,300,12;302,11,303,12;313,11,317,13;317,11,318,12;301,13,305,15;299,13,301,14;305,14,308,16;308,14,309,15;312,14,315,16;311,14,312,15;302,15,305,16;315,15,316,16;304,16,307,17;316,25,328,34;319,24,322,25;325,24,326,25;328,25,330,27;310,27,316,38;314,26,316,27;330,26,331,27;299,38,311,49;306,31,310,38;308,28,310,31;307,29,308,31;321,34,330,46;328,30,329,34;303,34,306,38;304,33,306,34;305,32,306,33;251,34,260,37;257,33,259,34;316,34,318,36;318,34,319,35;320,34,321,35;247,36,251,38;248,35,251,36;260,35,261,37;301,36,303,38;302,35,303,36;316,36,317,37;318,40,321,45;319,38,321,40;320,36,321,38;251,37,258,39;258,37,259,38;300,37,301,38;247,38,248,39;249,38,251,39;311,38,314,40;314,38,315,39;330,40,332,43;330,38,331,40;251,39,254,40;294,40,299,49;297,39,299,40;311,40,312,41;332,40,333,42;291,42,294,48;292,41,294,42;317,41,318,44;330,43,331,44;311,46,314,48;311,45,313,46;319,45,321,46;319,48,329,50;322,46,324,48;321,46,322,47;324,47,329,48;293,48,294,50;292,48,293,49;311,48,313,49;294,49,298,50;302,49,309,54;301,49,302,51;309,49,311,51;273,51,277,57;274,50,276,51;294,50,296,51;308,58,334,81;318,52,329,58;318,51,321,52;319,50,320,51;323,50,329,52;291,60,308,78;296,53,299,60;297,52,300,53;298,51,299,52;309,51,310,53;272,52,273,55;277,52,278,53;299,53,300,54;317,53,318,54;329,54,332,58;329,53,330,54;295,54,296,55;301,54,307,56;307,54,308,55;274,60,281,66;276,57,280,60;277,55,278,57;299,55,301,57;332,55,335,58;265,57,271,62;267,56,271,57;278,56,279,57;301,56,303,57;315,57,318,58;317,56,318,57;334,62,341,75;334,58,337,62;335,56,336,58;271,57,272,58;275,57,276,58;299,57,300,60;310,57,314,58;264,58,265,65;280,58,281,60;300,58,306,60;293,59,296,60;306,59,308,60;337,60,338,61;273,61,274,64;281,61,284,63;283,66,291,83;289,62,291,66;290,61,291,62;263,62,264,64;265,62,269,64;269,62,270,63;272,63,273,64;281,63,283,64;286,64,289,66;288,63,289,64;341,66,347,76;341,63,342,66;265,64,266,65;281,64,282,66;342,64,343,66;271,66,278,67;" $sPixelRect &= "273,65,274,66;282,65,283,66;284,65,286,66;343,65,345,66;347,67,351,74;347,66,348,67;272,67,273,68;277,69,283,88;281,68,283,69;351,68,353,73;273,70,277,73;353,70,354,72;272,71,273,72;275,73,277,74;351,73,352,74;347,74,349,75;334,75,337,77;337,75,339,76;340,75,341,76;342,76,345,79;341,76,342,78;334,77,336,78;345,77,346,79;291,78,303,80;306,78,308,80;305,78,306,79;334,78,335,80;346,78,347,79;343,79,345,80;291,80,295,83;295,80,296,82;300,80,304,84;299,80,300,83;298,80,299,81;263,82,277,96;264,81,270,82;276,81,277,82;302,84,308,87;304,81,305,84;317,81,326,90;312,81,317,84;311,81,312,83;310,81,311,82;326,81,333,88;333,81,334,83;305,82,306,84;262,83,263,84;283,83,286,86;296,87,298,92;296,84,299,86;297,83,298,84;306,83,307,84;301,84,302,85;316,84,317,89;315,84,316,85;307,87,313,89;308,85,309,87;283,86,285,87;297,86,298,87;309,86,311,87;333,86,334,88;261,91,263,93;262,87,263,91;303,87,304,88;305,87,307,88;334,87,335,88;277,88,280,93;280,88,282,89;295,88,296,91;298,88,299,91;313,88,315,90;326,88,327,89;329,88,333,89;280,89,281,90;284,90,288,91;285,89,286,90;287,89,288,90;310,89,312,93;309,89,310,91;312,89,313,90;330,89,331,90;319,90,323,93;318,90,319,92;317,90,318,91;329,90,330,91;282,91,286,92;312,91,313,92;321,93,325,97;323,91,324,93;282,92,283,93;309,92,310,94;324,92,325,93;262,93,263,96;277,93,279,94;304,94,309,96;306,93,307,94;310,93,311,94;277,94,278,95;320,94,321,95;263,96,264,97;267,96,274,98;265,96,267,97;274,96,276,97;306,96,309,97;322,97,324,98;268,98,269,99;306,98,308,101;305,99,306,101;308,99,309,100;326,99,329,102;325,99,326,101;329,100,331,102;306,101,307,102" #EndRegion pixel coordinates Local $aPixelRect = StringSplit($sPixelRect, ";", 2) Return $aPixelRect EndFunc ;==>_Europe Func _NorthAmerica() #Region pixel coordinates Local $sPixelRect $sPixelRect &= "678,368;203,3,205,5;235,4,256,18;248,3,251,4;189,4,199,8;199,4,203,6;256,5,259,11;256,4,258,5;179,5,189,7;203,5,204,6;207,6,226,35;211,5,215,6;226,6,235,30;229,5,235,6;259,6,266,9;259,5,260,6;164,7,169,10;167,6,168,7;174,8,180,14;177,6,179,8;175,6,177,7;199,6,201,7;266,6,268,8;169,7,170,9;175,7,176,8;179,7,184,8;185,7,189,10;203,8,207,18;204,7,207,8;162,8,164,11;180,9,185,12;184,8,185,9;189,8,197,9;192,10,203,15;200,9,203,10;202,8,203,9;161,9,162,10;173,9,174,10;189,9,193,10;259,9,260,10;164,10,167,11;170,11,174,12;171,10,172,11;185,10,187,11;189,11,192,14;256,12,259,14;256,11,258,12;164,13,174,14;165,12,166,13;170,12,171,13;172,12,174,13;180,12,183,13;156,15,163,18;158,14,161,15;166,14,178,15;190,14,192,15;256,14,258,15;163,16,171,19;165,15,167,16;169,15,172,16;174,15,176,16;193,15,195,16;200,15,203,16;256,15,257,16;171,16,173,18;202,16,203,17;108,18,117,23;111,17,113,18;140,19,145,21;144,18,145,19;147,19,153,21;150,18,152,19;162,18,163,19;205,18,207,23;204,18,205,20;235,18,248,24;248,18,253,20;253,18,255,19;105,20,108,23;106,19,108,20;57,33,123,71;115,23,121,29;117,20,120,23;117,19,119,20;153,19,154,20;157,19,161,21;162,20,168,26;165,19,166,20;121,23,130,28;124,20,126,23;129,20,131,23;136,20,138,22;138,21,141,24;139,20,140,21;146,20,147,22;155,21,157,33;156,20,157,21;248,20,251,21;103,21,105,25;120,21,124,23;127,22,129,23;128,21,129,22;141,21,143,23;143,21,144,22;147,21,152,22;157,21,159,26;159,21,160,22;159,23,162,26;160,22,162,23;161,21,162,22;168,22,175,27;168,21,169,22;173,21,174,22;102,22,103,24;101,22,102,23;137,22,138,23;153,22,155,26;248,23,251,26;248,22,250,23;105,23,107,24;109,24,115,25;110,23,111,24;112,23,115,24;141,27,147,35;142,24,147,26;144,23,146,24;152,23,153,25;206,23,207,24;41,26,57,46;49,24,58,26;174,27,181,34;175,24,177,27;235,24,245,29;247,24,248,25;251,24,252,25;42,25,49,26;58,25,66,33;86,26,95,33;92,25,93,26;130,25,132,27;140,25,142,27;177,25,180,27;245,26,248,28;246,25,247,26;31,28,41,45;39,26,41,28;57,26,58,33;66,26,71,33;95,27,104,33;" $sPixelRect &= "97,26,101,27;109,26,115,28;108,26,109,27;136,26,138,29;142,26,146,27;160,26,165,27;180,26,181,27;37,27,39,28;71,28,86,33;71,27,75,28;82,27,86,28;130,27,131,28;134,27,136,29;135,31,141,39;138,27,139,31;157,28,160,30;157,27,159,28;171,27,174,31;170,27,171,29;248,27,249,28;104,28,108,33;108,30,115,33;113,28,115,30;111,28,113,29;124,28,129,29;147,28,149,34;149,28,150,29;151,30,155,34;153,29,155,30;154,28,155,29;201,35,214,42;204,29,207,35;206,28,207,29;245,28,246,29;30,29,31,31;108,29,109,30;115,29,119,30;123,30,129,44;121,29,125,30;135,29,137,30;139,29,141,31;181,30,183,36;181,29,182,30;235,29,241,30;118,30,123,33;129,32,135,41;129,30,133,32;137,30,138,31;157,30,159,31;202,31,204,35;203,30,204,31;226,30,231,32;231,30,233,31;115,31,116,33;117,31,118,33;133,31,134,32;149,31,151,34;157,31,158,32;172,31,174,32;183,32,185,35;183,31,184,32;201,32,202,35;226,32,230,33;22,33,31,36;167,34,178,39;168,33,174,34;226,33,228,34;20,34,22,37;146,36,152,39;147,34,148,36;179,34,181,35;19,35,20,36;141,35,143,38;145,35,146,36;148,35,151,36;160,35,167,37;183,35,184,36;214,35,218,37;218,35,221,36;22,36,26,37;24,38,31,46;27,36,31,38;143,36,144,38;159,36,160,38;23,37,24,38;26,37,27,38;145,37,146,39;152,37,153,40;160,37,163,38;166,37,167,38;178,37,179,38;214,37,216,39;216,37,217,38;200,38,201,39;16,40,24,49;18,39,24,40;135,39,136,40;146,39,147,40;151,39,152,40;168,39,173,41;167,39,168,40;175,39,178,40;214,39,215,41;13,42,16,48;14,41,16,42;15,40,16,41;173,40,175,42;129,41,133,42;151,47,166,67;156,41,162,47;170,41,173,42;129,42,131,43;154,43,156,47;155,42,156,43;162,43,166,47;162,42,164,43;172,42,174,43;205,42,212,45;203,42,205,44;202,42,203,43;212,42,213,44;123,44,126,46;126,44,127,45;166,44,167,47;31,45,36,46;153,45,154,47;207,45,210,46;11,46,13,49;24,46,28,47;30,46,33,47;50,46,57,49;45,46,50,47;123,46,124,48;166,54,177,58;170,48,176,54;173,46,176,48;10,47,11,48;24,47,26,48;48,47,50,48;172,47,173,48;13,48,15,49;143,57,151,81;150,48,151,57;11,51,16,52;13,49,14,51;18,49,19,53;15,49,18,51;" $sPixelRect &= "19,49,22,50;53,57,57,65;54,49,57,57;51,49,54,50;123,53,130,72;123,50,125,53;123,49,124,50;166,50,170,54;166,49,167,50;168,49,170,50;14,50,15,51;19,51,23,52;22,50,23,51;53,50,54,51;50,51,52,53;176,51,177,52;8,52,12,54;12,52,14,53;19,52,20,53;52,52,53,53;125,52,128,53;6,53,8,55;147,55,150,57;149,53,150,55;4,54,6,56;8,54,9,55;51,54,53,57;129,72,143,77;130,56,136,72;130,54,132,56;6,55,7,56;50,55,51,56;132,55,135,56;136,57,138,59;136,56,137,57;145,56,147,57;166,59,182,63;177,56,178,59;140,63,143,72;141,60,143,63;142,58,143,60;166,58,176,59;178,58,181,59;52,59,53,60;136,59,137,61;182,60,183,61;52,63,53,64;136,64,140,72;136,63,137,64;166,63,176,66;176,67,179,74;178,63,179,67;176,63,178,65;179,63,180,64;55,65,57,67;54,65,55,66;179,65,180,67;51,66,54,69;50,66,51,68;166,66,174,67;177,66,178,67;53,69,56,71;54,67,55,69;56,67,57,69;154,71,161,77;151,67,157,70;157,67,162,68;167,67,170,68;158,68,159,71;157,68,158,69;179,69,183,73;179,68,181,69;52,69,53,70;161,69,163,72;159,69,161,71;173,70,176,73;174,69,176,70;151,70,155,71;156,70,158,71;44,83,113,104;50,75,115,83;51,72,55,75;52,71,54,72;56,71,113,75;113,71,119,72;151,72,154,80;151,71,153,72;172,71,173,73;183,71,184,72;113,72,115,73;124,72,129,76;161,72,162,73;55,73,56,75;115,74,119,78;116,73,117,74;179,73,180,74;114,74,115,75;113,86,131,99;119,79,123,86;119,75,123,77;121,74,122,75;123,74,124,75;160,77,166,79;161,75,162,77;125,76,127,77;162,76,168,77;48,78,50,83;49,77,50,78;121,77,125,79;131,82,141,88;130,77,143,80;154,77,159,78;166,77,167,78;115,78,117,79;120,78,121,79;154,78,156,79;158,78,160,81;115,79,116,81;123,79,124,80;125,81,131,84;127,79,130,81;156,80,158,82;157,79,158,80;160,79,163,80;46,81,48,83;47,80,48,81;117,81,119,86;118,80,119,81;130,80,134,81;136,80,143,82;151,80,152,81;123,82,125,85;123,81,124,82;131,81,132,82;135,81,136,82;143,81,147,85;147,81,149,82;45,82,46,83;141,82,143,87;113,83,114,84;116,83,117,86;127,84,131,86;113,85,114,86;115,85,116,86;125,85,127,86;143,85,146,86;42,87,44,102;43,86,44,87;143,86,144,87;" $sPixelRect &= "41,88,42,94;131,88,137,91;137,88,138,90;131,91,135,92;40,92,41,93;131,92,133,94;132,94,133,95;41,95,42,98;113,99,126,104;126,99,129,101;129,99,130,100;126,101,128,102;43,102,44,103;126,102,127,103;53,104,90,114;48,104,50,115;47,104,48,113;46,104,47,106;50,104,53,109;90,104,117,111;117,104,122,106;122,104,123,105;117,106,121,107;117,107,119,108;117,108,118,109;46,109,47,111;50,109,51,110;52,109,53,110;95,111,100,114;90,111,95,113;100,111,103,112;107,111,117,113;105,111,107,112;49,115,52,120;50,112,51,115;100,112,101,113;112,113,117,120;63,114,80,136;57,114,63,122;55,114,57,118;54,114,55,116;80,114,87,116;87,114,88,115;98,114,99,115;48,116,49,119;80,116,83,120;83,116,85,117;51,120,54,124;52,117,53,120;56,118,57,119;119,118,121,120;53,119,54,120;117,119,118,120;122,119,123,121;121,119,122,120;80,120,82,123;113,120,117,122;118,122,121,124;119,120,120,122;123,120,124,121;120,121,122,122;60,122,63,126;59,122,60,124;58,122,59,123;114,122,116,123;80,123,81,126;52,124,55,126;119,124,121,125;125,124,126,128;54,126,56,128;53,126,54,127;62,126,63,130;61,126,62,127;109,127,115,130;107,128,109,130;115,128,118,131;106,129,107,131;118,130,121,135;118,129,120,130;107,130,108,131;114,130,115,131;126,130,127,132;125,130,126,131;127,130,128,131;93,133,99,138;95,131,100,133;117,131,118,133;116,131,117,132;121,132,125,135;121,131,123,132;62,132,63,135;75,136,82,144;80,132,81,136;94,132,95,133;99,133,101,134;100,132,101,133;125,133,126,135;99,134,100,136;126,134,127,135;87,138,96,147;91,136,93,138;92,135,93,136;123,135,124,136;128,135,135,139;67,136,75,140;65,136,67,138;64,136,65,137;135,136,137,139;82,138,87,144;82,137,83,138;89,137,91,138;117,137,119,140;125,137,127,139;137,137,138,138;140,137,142,140;66,138,67,139;96,138,98,141;116,138,117,139;119,138,121,140;124,138,125,139;126,139,128,140;127,138,128,139;139,138,140,139;142,138,143,139;130,139,133,140;149,140,155,142;149,139,151,140;152,139,154,140;71,140,75,142;69,140,71,141;148,140,149,141;96,141,97,143;73,142,75,143;" $sPixelRect &= "150,142,151,143;152,144,154,153;153,142,154,144;99,144,105,154;101,143,103,144;78,144,81,145;85,144,87,145;91,147,99,150;96,144,99,147;105,144,106,153;154,144,155,146;151,145,152,146;106,146,107,147;89,147,91,149;88,147,89,148;150,151,152,155;151,148,152,151;154,148,155,149;156,149,159,151;157,148,158,149;94,150,96,151;97,150,99,152;155,150,156,151;156,151,158,152;98,152,99,153;149,152,150,159;148,153,149,154;152,153,153,154;100,154,105,158;150,156,152,158;150,155,151,156;103,158,107,160;105,156,106,158;148,156,149,158;102,158,103,159;113,158,115,161;150,158,151,159;106,160,112,162;107,159,109,160;110,159,113,160;116,160,118,163;115,159,117,160;104,160,106,161;112,160,113,161;115,160,116,161;110,162,111,164;108,162,110,163;111,162,112,163;115,162,116,164" #EndRegion pixel coordinates Local $aPixelRect = StringSplit($sPixelRect, ";", 2) Return $aPixelRect EndFunc ;==>_NorthAmerica Func _SouthAmerica() #Region pixel coordinates Local $sPixelRect $sPixelRect &= "678,368;127,153,130,157;128,152,131,153;117,165,158,207;131,155,138,165;133,153,135,155;121,157,129,165;124,154,127,157;131,154,133,155;135,154,137,155;122,156,124,157;123,155,124,156;130,155,131,157;138,157,150,165;138,156,142,157;145,156,146,157;148,156,149,157;129,159,131,165;130,158,131,159;150,159,152,165;150,158,151,159;115,162,121,164;116,159,117,162;119,160,121,162;120,159,121,160;117,160,118,162;152,161,155,165;152,160,153,161;118,161,119,162;155,162,156,165;116,164,121,165;156,164,157,165;116,165,117,167;135,207,181,245;158,169,170,207;158,166,161,169;163,166,165,169;161,167,163,169;165,167,168,169;168,168,169,169;111,179,117,195;115,174,117,179;116,170,117,174;170,173,173,180;170,170,171,173;171,171,172,173;113,176,115,179;114,175,115,176;173,176,174,178;112,177,113,179;170,184,185,207;173,180,177,183;174,179,175,180;109,182,111,185;110,180,111,182;170,180,172,181;171,182,173,184;172,181,173,182;178,182,183,184;180,181,181,182;170,183,171,184;173,183,176,184;177,183,178,184;183,183,184,184;110,185,111,186;185,189,198,223;186,186,196,189;187,185,189,186;109,189,111,194;110,187,111,189;185,187,186,189;196,187,197,189;198,191,203,204;198,189,199,191;108,190,109,191;199,190,200,191;203,193,206,200;203,191,204,193;204,192,205,193;110,194,111,195;113,195,117,199;112,195,113,197;206,196,207,197;115,199,117,204;114,199,115,201;203,200,205,201;203,201,204,203;116,204,117,205;198,204,201,208;201,204,202,206;123,207,135,216;120,207,123,212;119,207,120,209;118,207,119,208;181,207,185,235;198,208,200,209;198,209,199,210;122,212,123,215;121,212,122,213;198,214,199,217;129,216,135,219;127,216,129,218;125,216,127,217;132,219,135,222;130,219,132,220;134,222,135,226;133,222,134,223;185,223,195,231;195,223,197,226;195,226,196,229;185,231,192,233;192,231,194,232;185,233,187,234;134,234,135,236;185,234,186,235;181,235,183,236;181,236,182,237;181,241,182,242;137,245,165,268;136,245,137,254;135,245,136,249;165,245,176,255;176,245,179,250;179,245,180,246;176,250,178,251;" $sPixelRect &= "176,251,177,253;167,255,173,259;165,255,167,258;173,255,175,256;173,256,174,258;165,261,168,267;165,259,167,261;169,259,171,260;168,262,169,265;136,263,137,266;165,267,166,268;145,268,156,292;139,268,145,274;137,269,139,271;138,268,139,269;156,268,164,269;156,269,160,273;160,270,161,272;138,271,139,273;158,273,160,274;141,277,145,278;141,274,145,276;140,274,141,275;156,276,158,281;156,275,157,276;142,276,145,277;158,276,159,277;143,278,145,287;142,278,143,280;156,281,157,282;141,284,143,286;147,292,158,294;156,286,158,292;156,285,157,286;144,287,145,289;158,287,159,291;146,292,147,293;150,294,157,298;148,294,150,296;147,294,148,295;149,296,150,297;157,296,158,298;154,298,156,300;151,298,154,299;156,298,157,299;157,299,161,303;158,298,159,299;161,301,164,305;161,300,163,301;156,301,157,302;164,302,166,305;158,303,161,304;166,303,168,305" #EndRegion pixel coordinates Local $aPixelRect = StringSplit($sPixelRect, ";", 2) Return $aPixelRect EndFunc ;==>_SouthAmerica ;Code below was generated by: 'File to Base64 String' Code Generator v1.18 Build 2014-08-02 Func _World_Map($bSaveBinary = False, $sSavePath = @ScriptDir) Local $World_Map $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= 'xLpSoAyLN01Fj+m86Prrkj6/B2I9rCh9XILyU02h535RstGXIqWUxvsHTYyNesrUqx5889Xit0MOfsfxkdgpAg2PULufunbqcDpOMKf6GoDgChWL+J38kGAKF2ORY2oVJExudvWZajIlWkMf6o5UdkCIP3zhurUZZxrmv+2aBCnYnVar1VEyZrX6NmVXt18P4U4zZULTsN234QTmVJ2ga78dzKmKPs/mfi9FcJ2f9woPBaa8Hy9qS/2gkOrKk+LCPrCj10UdV9R+FZh/6ylnR2PvAUBl921cse8LRn3PqVlKxqxWVcRQbM8LQ8qZvLYwd6r9rbJ2jtm5Qopm/qphmIZzmpcz5/OBIhOKTzNDgamAyfkj3O0QubVFf1HdfnKZh6HncWFfKfrCne5wCCjHV39NS3uKxw9R8/yA+HvUwCU1R9fwfQFRgDn5idNv+JgycDCYnMjs6WJ+uLdkrnNcUPXn7fhGY0rP1afQozBMmf12HX559ju5QNWemDiEoUih4OL0dHxhEznti9HVI2ixWEztKpUXZpd6FxzhmV/EraeVMqBVDjiLr64ZTNXVEHzCG3IJU795CGpAj9/ZM5wgUqaqHx55ctqTo4O9kd16gWkvd6V++BP3OV+FKyBZa82jjA5Kns05vvt5zVKaocB0Kfaz2NJCsi+QxpIFRBNN34EmYDyWOgK7d6LoHSATQpBWn7GsegZThafnMa5sdOZ/GGTc438VUW1yZhtNnPhzn3BUNYBOjXLlUtlqJKqcK6fxNU4XzfyWmF+U4O+UletcRB3aG6AFRaapoxuxxRPbiSGd2qLF0aIuOxB8D88WC1WiN7PBCkplWm3GRF73DKaaSc/jw5+tytujg80/I8UhZgR3iZjCf7BghZ7U/TS/QKFMD/whCEMfpOYHxenQXlROQ3uxzaOpr05qTculLSsc0nPUGU2aUNQGJZ6KJS9C70ahOHPaHXNrrNEtZdWGE54A5f4oWxUZ7mSNSX80pXo+4QnAbrUsOlrdC/olMZ/gx5SypY3McGLKBjiHsnSUWjyxPUFQMR2yrBgvUukIqoWQbqVoiPWmrBFU71JZkdf3TZ3/uHiX2lDGOIv3R6esjGJg10znNAhY990mTCPglL0y/emSaROX7gW8pBZI1J4YaR/kz38+MbyY2jB+42hh81lqUgjqV1+tJAscaHbuOf0CIbWaL9rjG6LZrEi7pf5t524Lbsgim3Ki+h1KDb2mP0RO10Spwc1TPmMj6Xk6nP+cEHrnlT0n+IjnL2akLgpTgVUpObyYivHZ2cLRMzaiFmNT4/pic9FBpG+uijIX7dml9BTfk053lfdK/8AtfT+m3ugj9KH8R7tVRFTXSEl5wobktub8Hq7p8/vBaDDlLsHJggh+BR/xgR9CVinFMuJn4KbpkGLK08lXn7VdurIppZyb5FS6U290Ed3uItH6AyMWFyBpP5C6GLeHsWnlvo9TTJPYjeqCae3WZ/0xr57y+/tV7ljxlZbGKCNG9syQ1mBy/B3P7msFAR9iT+/UMF2WXMsnTocA08g7+ldvyPH0LM7pIavjsx0W/dJiFXPbs/8e+l6aDffGfJR66u11LS4drVdSm6NWdqckROWntIFC5p0gKQntv3lWt6ry92d3zs7yG7krwQybJE/l+GKd7rkaTkzhgvV8ldAY50BTs5fmL+D5Hcg8LfrVQ4GxX0pA62vrg8fxjakSaZUZVTroR/yYnvq0U9UqSgOAUjDvPvUIDoPam8tZCQAz686zUUoB5smDCOM0O/W8DKdZwRpT0uoPC6bRy6NiU1PnbizQjOp8673Nyo/SXhXLilk00Ld087O+YlpxfU17jkT5wOcQdJQA5UKV16xJGXXfBCHKb1U/HHtP4qOzrX5L77gRIDPOyS/YM/rTk9e4TK4U2vTXFVMbsp/AMHpTWxaiWWS+cG5q6qIEIRqWqtbLVpxDfYWp0tZHV6l8NbuUGCCmRvnsuSNvrT5CYvk9jx55zbV9rKHS' $World_Map &= 'rB9vkXbHfv6lgFaPqVuQAgH4/IopCHUJKmHWKkrpgnPzjcJ8bdNEtA0JKYYPUxbYP7cVpMQWAVWVBIDc0leTIZ+NTYDY5tI8srzCi4D7+38F+65fUapwffspyO1HdNizN0VGq02nfnW1LPQOP3d3uyQmck7wEKeYyTASurweAmonyZ+T6+7ljknyO0qwfRPRgsajhgxT1vBFodRXUsCCFHAx/YMU1UFj1nXkk02LSselnE9j8EpN/T6nm1D0SfWuV3EHD4n4d8tAFStK7xlWjgg0w2juNuiy1uPHZRC2yPrA0JNENvCKOxNqdulRrwTNhhhQw4T74SjrBoDRlIosBSlCDBrT/lMauyD5y6zMA8ynsGmK7vKj//pFQ8vfIv8JAi8sxT2r/cmehFac6E08fh109ek9vOt51HN/WeZeqhrLH9WFU4KWw9fdsjDbJ9X80HpT09xR+8DFYYtkSbXe2cLU934znIcqTcO7W77VJrbM8NQpCHugmPZ/Vi8p9SUlm/NxaphaV28t3LpqNc6QKP8JcyF79COt6hsBH1SowM8HPd8R7Z3xDioA5V1E0d1Vmn7i1FtTmDKijOo+tOI/k9/YUPzpUSNOoa/5S0pG6hRAW7jknjm/0olwrEKFGouumregQJaD2kwW7CHB1JZpK5IZUpnUbXu6RffJ9RVqLjVgPK/ZtEWfIOV1kZ7nshy6WLw/9rbWl2B1qbJfLN5FibQA2MfPUQtRRLn4wCU3qn0qImrWnvpMyDsbe0iqUoDq5TZiRutBfApQtCbajGRPWccClHOFXhnkj0MnVI0clucETFG/Nk7qOP8jhgNTTp+iyJ/011nEVH5ra+XJ4uXFxeapqP7vLd85aBCQaCm0t1Z9CnUrPSyX30dOPSo52bSYt/jIW2uWpdCZ32q2kNnze05tWEl5KjFB0QC9o6UrZVDkBEvL/Nlye50wNZMmTV/OtJ666Bycv5PINnpOsa5fn58YFkwjcaYr87LmTL8Wx1R+pWXR7rjoP6bl1arXEo+uVW+XRF2Sgud+aR99LHJaEuTpofho7ZHK9zXhRaiBCWTCbl4KzrAoEaeOBs6fRwK13C5omM5hSJ265TB8CJ/bM6NWKuQNzfHNd9vbSICS9hpvmruTz+QyUgw0Nu373PPmkaY9ubAQ981UXaYMfwBBkA2rpCzxD+K57xtMH/5xRwgokvPE+BQEs83uFDnVEqmnQPwKAdnMMvZDs7L284Y5YkZ7tT0tNhaJfCK/t/zGBgtBG5X0dV0+lwGcEyhXjF5fo6rF/uGQOsq3Z6F1edQdCRMTYkgyfYGF/UhsxdJ/J32QYsMJM/wBUMp7IVvmnPkucvOvr4CNsB6MPaD49DSVm2Bfz0pxQwppdYtlkIdyhg9Kc+m8gBnyctwByuXooeaUPkAeMucYJb25LRQ/8sYGYdY2SQoltjsvasIL55RsXUCcT0ghxJAUpIS8EPWUHs+LGsMKqYRBQMqrzFvWRBwgioZS2N4GAm6nXKGOPYMKFUqjOMd3V1fPuDj8tP2tjHOtDhaBmqWLP9e1H13eUL7tGtha8pW4Qs8bj2xTnsq9sfFGTpfcTXx5EguvlOK3N4rtwK2QNiQyWRgSTHmHRE8tNT+42hwC598SsVvRqxT1me8e7PBMlqCyKe3nv/1QVlx2p647VqFdkr+Ly0TrzrIMeTR9YO/hKW6aPPZE5g4x6Jfo6cf02Rt7fM6zF+avE6ExpWexAWHC4cAFUSKDqf+QHPqsMu2lxXwLd/rddvJh6hKlpZ3ycUnUtqJUoC702/We3t0+LpW5zI/7JB+CLeTcr14LUuc1Oss9fbDr8jn83gces2wyGgpc0f9yQ5Ti116s3JfLjgqClfcPwFFQ5TQDw1Hel5u9xBQzp8GdK9x2aqbUGwEB5S/+WHmoMBUVxFSYG/bdVQkgYPsRvmjsHnWvxGFopuJQmT/HwGVAAxC4Q7L2COnB6JRe05NV59xqEHmqNuVzDrfIfKGpqVM4' $World_Map &= '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' $World_Map &= 'z4b+x8hHr/bAM6ea/djJ5hxKfoPKUU4FUyoxcMPW6anaGZ29r5bW8fzegAo/pYe0stXgZt4YI1H2CzzCMdT278/PW1YRHhDI6PLTCfwuy5mbmpXMgnEVZOKDuj2TrzdOUQymvOvEzC2hQtRTyEOJkJp9XKh3FjGlHujbzUoZQdVTHnGEXur8KCr8SRSmNspLCppyTp0+vtYcVZ+aVy3n2hWIuMIRcPRFPYFUfLefWeow+zSGU9bDZx7RdcQnpNnJVdtrcO9sYlqtYEXTwu29vXU95ZFQXU+/PH9yjsw7A8o9/Di5knlm56dnqbNEft/Sj6+WwBrIT8N9KAaYgcv06iNQ+V1NFWX2GXExsxtNRzTD9DSK+Xmzk/Chfe/MYrreVILypnskTfU+h72kxaPNxTKriZqQI2c0ppZdzBWtCEzt3A3zzLKhJgUsUjnlWP0oVpD+n/u+E1x+OtP9bq9r6DK1Izq8lCBO6UvRZupou6N4yp5CU2cTU6rhB1E4lDel+ePALYezoqXnflU1NsFWKPNik/GfwDRFyHJFoC7iWH1hakjNA6XDwVbLsvTFeXa+R8KU6XoyOR8zzBiM3aihkfA+nFFWTD04jLHDJh9TnjEFyOTC0Ewd0Po4i5xtxV3wKuW9oPBZSFX1thZuThqm5AYhdMx14iH+4Vs2WrE8J6AxtX9IbfYvwKYVP5afPjpUUO4XtQJCd55ExqroW8aMGMlGtNayyAqmJE49xdL7sHUErFTa7GCGlCopEc1mxdN1YRLOrZuE6URRalvo4HPXiYf4+YnA1JoHQev0ekPlTsdNTgcHvhJChXHahQJoOh1GKV9gdi50QJS+lToZlRlMSZzSTPJfME5pT85AiilAU62+WKkHgniSbFMhgVJAMMcZ5SDaKTCde++K7Vx5o8MRokXMB740PX68r48OmxPNx49TKABh5bv00nPqy+xgKlSzvCHNbigOK0FqkvWmVMNg6qmJqTeZmrN1ARQ7HMQUT+2Z9645q72o5qjt3rKgYvmoYboM7m54Nz+qfvxLH3pCn9JvNG1nS5oGKx6iMS03Y4ZDoPcFwYIJEaXT10sOHKyJGjGmlnPl3eurq1GkUKcmhdATM6YEKXOXzE6JAEqcUoEytA80vZNuUE92MCXMQJxGFJ+S1o8dDqECTAUcd+zZp29fLeTwFEaMKXF67d3ZuAETODicuuG6iamogZJ9PnZCb3iEOanAKMJ7DDsI2VSB008yJU2xllmorQhxyi1PPjFtsaFWV9WOHHv2SZ/SK6VRK32q9UcnKS6RLqRcDkBF3GLcpejJucF0aD34hwJdXc2wlqwpTNMMYerKjUVw1QUfHa0jU9yP5w2qlWrj7sPvQBPU2ANRmqhCoZjkQlmpXCjyomaFiBOn2/WWrzSoLf/QoKmn7fJlUPzoDmviEwWplqX0mQAfk2k6/p2lEFNCEvVyPC5O4zOhrmqiNG54///xF6tirCr/kg3s0SkVSkXuRfG4aTpZa1+SQu7GIAZa+q/LQsgazuqt16PWOnPYOKk0v/xAB1JNIODgXDdFMV+WMCVnfUtGdfCt399X8W9vlssbSi3s36lLd8ytTx86LwfGadGynP+Cn0cUN6VDvVNuJKdUQQr2Y03QkAD/mQJ/ajgPFYptVPCgwyqn4ZLGNM0YpltlT0VOkqxsyqSWqrsNWX3428YEqHynQJ6+TdV4hRuONaq4KR37snRjBktBvXTveP3Ocmetpnb10JTjXrnHLzTon2iBeRCX+tcwbQvK4mcIU6/cVK5eDJm++kmoHSnv/Pn/gOYxbh6QU84gXFax8ArT66y7NBWmlnNBuGI5htPeAUhTpPQBDukTqt1ut1p+HS/QzKlwKMqJd48h3eeoy5/kb6pl+zTTxJW+L7KDKXhPaJyGcnqi0L0LqG56EuY3PJXjFKYEl6Gw5MQqfotXpnBMuRcVN08SRvYcYkoZKMVVN0GpanDRV3zX9DwnYgpg6trBhHYWHh4TrthF' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= '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' $World_Map &= 'efFRlnr1yw+FKEp1fqzA74Z4U6xCb7w3NUSWelMvrvhbGNwr70MB0/DSLJMGOUovJ/3HqkJqjktsyi/ZZ93TL1mCfnAlzK7JGJgW7Dtb6kMZ1X0sQGFVf3L2hr8opGoYU2fzY9NTUbKe58XJvj4gAYbJsIm1ipR+7uPlZ1CKQ3v9x5uJ6S2mePNJWcqLSfXIUok1kz1g6gNScBr+FEK7lK2pWX1MbzEFiLTjND71BFkqsRmcGv0IlPcpqD/yx7TZRL9ZhXP+86YwctsUb75tTr/t6xrUJYpQuLZrKL0PSrcG09nmY4qdvWpKW/arjqo3MYr7GkqYf12XCu6jsrsFmKIetfF10zJM6cypZzPPhwZ/iBpUbmUvnHztY0xvqzB1VLSlmOK4WQ3BKGvnofyvQnNlzw/vgdKtwXS03ODRE8yejMsxjWtSjDClM/zwpjpajQNT+JUtyPQxebLxmEbqFJjSRtRVLtEXLduuii5CIza9rE8p/y7U7bwpKlJXwJSGpkJfirKwobfShSiYH1tggVKbPX0sQ20DpidXeNmJFm86zQ/tCKbRKbTNqK2bSKQbWy3hk63AtJPvMxUeijQlfmF/cRiavMF6UgpvOixmbuTEdjhbzhy3hoyUBUw55VA4u+t5YwZPPmqn9GwZc0qrN/Zc13FmC3Vt+yMLgSlnTOdPicQpPbvrPWckXUvPmvjhl6B0Hd98d3B3qXLjsFIth1bn9oEpE4PYWVFsCvXyiC2mZvdpDSgFgi65UvLOIAqLEo/rfkiO33WWKtoeTEsL/N5zIYj2HpeSVCrFH+Beydo8+cNctjRwHEdDWlgNGN2dlmM6WBq0bzEVDx8aUIVoKVaP5j0N6Itur91+1MW9kvWwaD5IGR06s+XyHdE8wKFnZ/aBEzwjuNKtwXRcgumzZ50T6PDw4fT4Ua99roytE6TQj3Jd7UOVkrJ8mf/OdHow/P4Dzaf/2Dt/3kaKMA5HukSK6LAsg7CVjqNICqw0dmJauqs5gwTIS3zSSedccx3NrnQK1e9dCY7T1JbuI4wszTcw/gKIiu2QkPgK7DrcvTjRQTYH+J3l9xRu7M6PZub9M++EmwEgJk3rd5yms1Eu/b63tqc6vPqDXUSS6jS+9t2VCP72jRz/ya/vvnG+FP49QSM01RjqmqceJeGfhEBudMfVOSnyzhvnS7Ga9KSJq6mRHlPiNCuwQXLgEWpo2pYG5E0186QY6Ngn+iz5tXMp6tS8Pv0ufk37emfvde89Elt11ZagXntr/JrKUqfzUFPjddX6FVJ9HspFv5pqCKVoDIWwNYh0J1fbpyYrqbsgJz0Rj8jPpq/f9dN0diiBbLWyOk7WtYDqsywIfNvr1gpqHfIfkurp6LbEHenr4fT6fP2jLadMiZNFrzMer16Mk6S1kArU07yT6I2peDWFDPRwqkyPl8u+F4QtQyDivcjifq34Xh8y+aO5RZx9TesfTqdfisCGpAQIAbdZM6SbvOrACtFrqru+2QifuFsnCsYqaZya6lzzdPNcakZTUr9vQRtO8OKzr5LWogGtJwFHLzXV/r0zO4ko4qSoHToFSNcDcpBoySpuTZ0cXbbyqaa5PzWzmBIsJ+U9vrttjzr5gdakJ749Gaul0Wqqnm4M2z3z2sFDTEztTUq6qJNtrUag5d33F4IQu6bq6cZl/ZTpUoOzfFqCWmmopC0QQfTd+wpk+Hi6USI9RDACkYOkTocpZNFKqiSUR4MumehlfZOVfAJfbeA3lM5BFr3y95opbZCmellfH4AyAoFvTzqrG0kHkdVB1QMw/kXQpCt7WtjPhpnJ3D6BLAXuZpesOkkVbo27Et/N0vrBfhrd0ZTp/fVun1wOUFkIGqepzuDPYr0ARdylpOtQS8P7Zmmq90t1xkl8sC1VW/ubqamTL/QZs/gCKPJygl/ytlraPE1xOtM2KZ0LHQnE+ftrSTUh0HBN9d38iCCy6pTo7LOmbvp+o00qHUR1OiUOUqKSNjWEggz+' $World_Map &= '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' $World_Map &= 'akYLIl7a5YImrWkbQ1D0UqXZyIw3yCpmTy/gxWTjJ5PGBCscpmx62tUUudg1iLz8bscWwgCUiUpuY9A10fjJHJ6P9hwXKhiTwmlXU+qeCo/EcwXPGK+qDkw2fqqUPPiJmJ/T7z1tujXGLeTwnw/22FEkyYAW/iT7yJoGEDF9oYRzm93mn4cZ1PcmY0BJlwzNml4EWSlbqa/2/tU0A2LzNkuzpl7Z1Th9Ycbo+aW1R9Z0IMXp9RhkQEt+xjqPUBeXk3Gznxk17LB2yVnTy+x+6npMMvrnbvfjj+RfzXQhkOmOPzMAAAAASUVORK5CYII=' Local $bString = Binary(_WinAPI_Base64Decode($World_Map)) If $bSaveBinary Then Local $hFile = FileOpen($sSavePath & "\_WorldMap.png", 18) FileWrite($hFile, $bString) FileClose($hFile) EndIf Return $bString EndFunc ;==>_World_Map Func _Pin($bSaveBinary = False, $sSavePath = @ScriptDir) Local $Pin $Pin &= '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' $Pin &= '+GPf9/8zcRAzo1qtIo7jJ9O0czUIgth13cmCtNaoVCrCdd3n8vm8ZearYRhuP4NuF9TtdlGr1aaiKHqaiCqe532Uz+d3lK23BVpZWUGn0zkwPz9/uNfrXS8UCiuu604WRESoVqswxjxVKpX8wWDw5k6r6bZAWmtUq1U5NTV1NpPJdJVS7xWLxfWSMDFQkiRoNBqF2dnZ04PB4F++73+Sy+UmDxoMBuh2u4fL5fJCv99/OwzDvhz/dPPlQcYYCCG+EQSBQ0R/CsOQd2vNQ0FEpNK0czebzX6Uz+d37TYgLeX9fh/tdhvdbhc3btwI5+bmTsVx/EGxWKy7rgut9dj3cNsVCQDtdhuLi4u4evUqLl++fLhUKpWTJPljFEW7Duv/AwH/Oz+O4zzl+35fKfWXSYT1A6AkSVCr1VQURd+y1v7D9/1PPc+bPKjT6aDVagXlcvlUHMdvRFGUTISwEcTMqNfrGAwGR2ZmZiJr7VtBEOyot95KHACw1qJarSKXyz2dzWY/V0p9POpER63v6O3JrkCDwQD1et2ZnZ19OgiCP589e3btYU18NpvdHajX62FtbS08cODAY8aYV4rFIk8i7WwUCQwLHTMfKhaLhpmvT5SwEZQkCYrF4pNKqb9ls9n6VwYiIjk7O3vaGHOlWCza3aabsSClVH52dnYfgGtBEEwcAqTB4HnewvT09GdEVN1NZG0J0lofdl33Dd/3zaSS6P0imRlCiD2e570TBMHEctv94hCRCMPwwyNHjlRd1911BhgngtPXl1+F8o3yX0BSPDBaPm9cAAAAAElFTkSuQmCC' Local $bString = Binary(_WinAPI_Base64Decode($Pin)) If $bSaveBinary Then Local $hFile = FileOpen($sSavePath & "\pin_26x66.png", 18) FileWrite($hFile, $bString) FileClose($hFile) EndIf Return $bString EndFunc ;==>_Pin Func _WinAPI_Base64Decode($sB64String) Local $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "ptr", 0, "dword*", 0, "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(1, 0, "") Local $bBuffer = DllStructCreate("byte[" & $aCrypt[5] & "]") $aCrypt = DllCall("Crypt32.dll", "bool", "CryptStringToBinaryA", "str", $sB64String, "dword", 0, "dword", 1, "struct*", $bBuffer, "dword*", $aCrypt[5], "ptr", 0, "ptr", 0) If @error Or Not $aCrypt[0] Then Return SetError(2, 0, "") Return DllStructGetData($bBuffer, 1) EndFunc ;==>_WinAPI_Base64Decode Br, UEZ
    3 points
  3. There was a thread in general support forum the other day about possibility of compiled executable to verify binary integrity of itself when run. I can't find the topic now to link it, but meh never mind. Logical solution is to calculate checksum of the exe and save it somewhere. Later when the executable is run the checksum is calculated again and compared to the saved value. If they match, all is ok, and if they don't the exe was altered and verification fails. The obvious problem is how and where to store the hash value. Alternate data stream seems the simplest solution. That way the hash is bound to the exe only and the risks of unwanted manipulations are relatively low. The problem could be if the exe is saved and run from non-NTFS file systems. Another problem is that any read/write action on exe file usually ends up with ADS being deleted. The other solution is registry writing, but that bounds exe and hash to the system. For another system (or even user) the checking wouldn't be valid. Third solution is using some sort of ini file. But that means ini has to go everywhere exe goes, otherwise again the check wouldn't make sense. And it would be too simple for someone to manipulate data, to the level the check wouldn't make sense. So, this is kind of fourth option. CheckSumVerify2.a3x script below is include file that will calculate the hash of the executable on the first run, save it directly inside that executable using special technique and recheck the hash on every new run. If the new hash wouldn't match the saved one, the script will show message box saying that and further execution will be aborted. CheckSumVerify2.a3x Just to say that I haven't done any complicated tests to see if it would work in outer space, or even on all supported systems. However my guess is it should work. Don't UPX the compiled executables, because I'm calculating checksum of the image on disk and not the one in memory. Here's small example of usage: #include "CheckSumVerify2.a3x" If @Compiled Then MsgBox(64 + 262144, "Aha!", "This is an example exe that does nothing except showing this message." & @CRLF & @CRLF & _ "But if you change the binary of me I will show error message and won't allow further execution." & @CRLF & _ $cmdlineraw) Else MsgBox(64 + 262144, "Hey", "This is an example script that does nothing except showing this message." & @CRLF & @CRLF & _ "But if you compile me I will check binary integrity of the compiled executable every time its run.") EndIf If something wouldn't work, or if you have any questions - simply post here. I'll do my best to answer.
    1 point
  4. Easy explanation: use http://regex101.com/ paste the regexp (?=(d{5})) option g (same as our flag 3), subject ab1234567890cd and hit "regexp debugger" to see the engine working just in front of you. By using such a look-ahead the engine walks until what follows is 5 digits. Since there are capturing parenthesis around d{5} they are captured, yet the matching point in NOT bumped at this point. After the match is recorded, the engine continues from there, well not exactly: it has to skip to the next point in subject for the next match attempt (or else it would enter an endless loop). The following matches in debugger show how things works as well.
    1 point
  5. I must add that I feel very happy to see more and more power users producing non-trivial regexps regularly. While boilling down everything to regexp is obviously wrong, there is still plenty of legitimate, elegant and efficient uses waiting for them.
    1 point
  6. Thank you...glad jchd was at dinner...
    1 point
  7. For now I just have the idea to finish my dinner.
    1 point
  8. PsPad works and is a decent editor as well.
    1 point
  9. Bonus function... Check to see if the spooler is running $sccmpid = Run('sc query spooler', '', @SW_HIDE, 2) local $dataz = "" do $dataz &= StdOutRead($sccmpid) Until @error If StringInStr($dataz, ' 4 RUNNING') then Msgbox(0,"Debug","spooler is running") else Msgbox(0,"Debug","spooler is not running") EndIf
    1 point
  10. darthwhatever

    RPN Calculator

    Reverse Polish Notation (RPN) is a math notation in which each operator follows its two operands. I own an HP 48G calculator which uses RPN, and when I tried to use the windows calculator I had so much trouble that I wrote my own calculator. Basically, it has a stack of numbers; any time an operator is pressed, that operation is carried out immediately on the two items on the bottom of the stack, or the stack and the input if there is anything in the input. This method reduces the requirements for parenthesis and makes calculating equations/functions relatively easy: instead of (sqrt(5+8))/(8*9) you would enter 5 ENTER 8 + SQRT 8 ENTER 9 * / Practical implications Suggestions/advice/criticisms are greatly appreciated! calc2.au3
    1 point
  11. Detefon, Something like this perhaps? #include <GUIConstantsEx.au3> #include <MsgBoxConstants.au3> #include <StaticConstants.au3> $hGUI = GUICreate("Test", 500, 500) $cLabel = GUICtrlCreateLabel("", 200, 10, 100, 100) GUICtrlSetBkColor($cLabel, 0xCCFFCC) $cButton_Top = GUICtrlCreateButton("Top", 210, 200, 80, 30) $cButton_Left = GUICtrlCreateButton("Left", 10, 250, 80, 30) $cButton_Middle = GUICtrlCreateButton("Middle", 210, 250, 80, 30) $cButton_Right = GUICtrlCreateButton("Right", 400, 250, 80, 30) $cButton_Bottom = GUICtrlCreateButton("Bottom", 210, 300, 80, 30) GUISetState() $sMiddle = @CRLF & @CRLF & @CRLF $sBottom = @CRLF & @CRLF & @CRLF & @CRLF & @CRLF & @CRLF While 1 Switch GUIGetMsg() Case $GUI_EVENT_CLOSE Exit Case $cButton_Top GUICtrlSetData($cLabel, "Top") GUICtrlSetStyle($cLabel, BitOR($SS_NOTIFY, $SS_CENTER)) Case $cButton_Left GUICtrlSetData($cLabel, $sMiddle & "Left") GUICtrlSetStyle($cLabel, BitOR($SS_NOTIFY, $SS_LEFT)) Case $cButton_Middle GUICtrlSetData($cLabel, $sMiddle & "Middle") GUICtrlSetStyle($cLabel, BitOR($SS_NOTIFY, $SS_CENTER)) Case $cButton_Right GUICtrlSetData($cLabel, $sMiddle & "Right") GUICtrlSetStyle($cLabel, BitOR($SS_NOTIFY, $SS_RIGHT)) Case $cButton_Bottom GUICtrlSetData($cLabel, $sBottom & "Bottom") GUICtrlSetStyle($cLabel, BitOR($SS_NOTIFY, $SS_CENTER)) Case $cLabel MsgBox($MB_SYSTEMMODAL, "Hi", "Pressed") EndSwitch WEnd M23
    1 point
  12. JohnOne

    alternative to exit

    HotKeySet("{Esc}", "_Exit") While 3 ConsoleWrite("Massive metal fings wiv legs" & @LF) Sleep(333) WEnd Func _Exit() WinClose(AutoItWinGetTitle()) EndFunc ;==>_Exit
    1 point
  13. hello MichaelSO, welcome to AutoIt and to the forum! let's start with a quick overview: if you want to skip the dependencies, what's wrong with just running the installer with the required switches? you don't need any scripting for this, this can be done from any launcher, even at the command prompt: dotNetFx40_Full_x86_x64.exe /q /norestart now, when you describe your issue on a forum, saying something like "it doesn't work" is meaningless. you say: you say "nothing happens" - but have you run it at the console, so you can see the messages generated by the script? have you run it before compilation, so the SciTe output can show you what's going on? if so, what did you see? and Event Viewer is irrelevant here. my guess is that the .NET installer was never launched - it is most likely already installed, and you just missed the console message, and the script itself does not write anything to the Windows Event Log. now, note that the script has its own dependencies: in order to run properly, it must have the .NET installer in the same path. despite it's usage of console output to show you various messages, it ignores the case where that file is absent... somewhat poor error handling, which will definitely be needed when, for example, the script is run from a folder with read-only permissions - which is the common scenario in network deployment. and while we're on the subject of console output, note that when you run the script from the SciTe editor - still not compiled - the console output is displayed in the lower pane. now let's have a look at the script you included. but let's do it right - using the "Code" button at the toolbar of the post editor. you get colouring (for example, comments in green) and proper indentation that shows you exactly where each part of the script begins and ends: #Region ;**** Directives created by AutoIt3Wrapper_GUI **** #AutoIt3Wrapper_icon=..\..\Images\CSO.ico #AutoIt3Wrapper_Compression=4 #AutoIt3Wrapper_Change2CUI=y #EndRegion ;**** Directives created by AutoIt3Wrapper_GUI **** #cs ---------------------------------------------------------------------------- AutoIt Version: 3.3.6.1 Author: Simon McBryde Script Function: Install .NET Framework 4.0 #ce ---------------------------------------------------------------------------- #include <array.au3> ; Check to see if .NET Framework 4.0 is already installed and quit if it is If _CheckDotNet4() = 1 Then ConsoleWrite('.NET Framework 4.0 Extended already installed, terminating operation' & @CRLF) Exit 0 EndIf ; Check to see if Windows Imaging Component is installed and install if not If FileExists(@SystemDir & '\Windowscodecs.dll') Then ConsoleWrite('Windows Imaging Component present, continuing operation' & @CRLF) Else ConsoleWrite('Windows Imaging Component NOT present, attempting installation' & @CRLF) If @OSArch = 'x86' Then ConsoleWrite('32-Bit architecture detected. Installing wic_x86_enu.exe' & @CRLF) FileInstall('wic_x86_enu.exe', @ScriptDir & '\') _CommandExecute('"' & @ScriptDir & '\wic_x86_enu.exe" /q /norestart') EndIf If @OSArch = 'x64' Then ConsoleWrite('64-Bit architecture detected. Installing wic_x64_enu.exe' & @CRLF) FileInstall('wic_x64_enu.exe', @ScriptDir & '\') _CommandExecute('"' & @ScriptDir & '\wic_x64_enu.exe" /q /norestart') EndIf ; Verifty installation of Windows Imaging Component and quit if not successful If FileExists(@SystemDir & '\Windowscodecs.dll') Then ConsoleWrite('Installation of Windows Imaging Component successful, continuing operation' & @CRLF) Else ConsoleWrite('Installation of Windows Imaging Component NOT successful, terminating operation' & @CRLF) Exit 1 EndIf EndIf ; Install .NET Framework 4.0 FileInstall('dotNetFx40_Full_x86_x64.exe', @ScriptDir & '\') _CommandExecute('"' & @ScriptDir & '\dotNetFx40_Full_x86_x64.exe" /q /norestart') ; Check to see if .NET Framework 4.0 installation was successful If _CheckDotNet4() = 1 Then ConsoleWrite('.NET Framework 4.0 Extended installed successfully' & @CRLF) Else ConsoleWrite('.NET Framework 4.0 Extended not present after attempted installation' & @CRLF) Exit 1 EndIf Exit 0 Func _CommandExecute($Command) Local $Pid = Run(@ComSpec & ' /c ' & $Command, '', @SW_HIDE) ProcessWaitClose($Pid) EndFunc ;==>_CommandExecute Func _CheckDotNet4() Local $NETInstalled RegRead('HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full', '') If @error > 0 Then $NETInstalled = 0 Else $NETInstalled = 1 EndIf Return $NETInstalled EndFunc ;==>_CheckDotNet4 this script is exceedingly long and cumbersome, i guess it's because it is written for an older version of AutoIt. for example, it defines its own function _CommandExecute(), which is now built-in to AutoIt, going by the name of RunWait(). it also needlessly includes a bunch of functions related to array management, which bloats the script. however, the script is still capable of running in current AutoIt version without modification (i'm using 3.3.10.2) for non-programmers, the major advantage of AutoIt is that (for the most part) it is written in English, rather than Computerish, so it is quite easy to read and understand. the script performs 4 operations: 1) check if .NET is already installed 2) install dependencies 3) install .NET 4) verify the installation if you want to skip step (2), and step (3) is basically the command line i suggested above, then your script is left only with steps (1), & (4), which are actually the same operation, embodied in the function _CheckDotNet4(). when you get a bit more experienced with AutoIt, you'd probably prefer to rewrite the entire thing in like 10 lines; but for now, check closely the part of the script which begins with the line: ; Check to see if Windows Imaging Component is installed and install if not the following part is actually a single statement of If...Else...EndIf, except that it is spread over 20 lines. see the starting If in the following line (line 19)? find the corresponding EndIf according to indentation (hint: line 40), and this is what you need to remove. try it, let us know if you need further assistance. you'd probably want to have better error handling and reporting, but that's for later.
    1 point
  14. You weren't to know. I just had a hunch that handing out free would code would be a bad idea in this instance. gil900, That really doesn't help the user if they have zero clue of what is happening in AutoIt.
    1 point
  15. Melba23

    Image Search?

    Pan69Stefan, Welcome to the AutoIt forums. Which game are you botting? M23
    1 point
  16. Posting your whole script will also help us help you
    1 point
  17. Why go through all that mess, when you're simply doing a WinActivate off the title? Why not just: While 1 If WinExists("AutoIt Forums -", "") Then WinActivate("AutoIt Forums -", "") Sleep(100) WEnd
    1 point
  18. Did not know there was a best coding practices in help file, I'll take a closer look. But regardless, comments or discussions about a variable prefix is not super secret and by every account has a place in this thread.
    1 point
×
×
  • Create New...