ħÓò×Ô¶¯´ò¹Ö½Å±¾µÄºËÐÄÊÇÄ£Äâ°´¼ü¾«ÁéµÄ¼üÅÌÊó±ê²Ù×÷£¬°ÑÑ¡¹Ö¡¢·Å¼¼ÄÜ¡¢Ê°È¡¡¢ºÈÒ©Õ⼸¸ö¶¯×÷´®³ÉÎÞÏÞÑ»·¡£°´¼ü¾«ÁéµÄQÓïÑÔ£¨VBScriptÓï·¨£©ÊÇ×î³£ÓõÄʵÏÖ·½Ê½£¬½Å±¾Îļþ±£´æÎª.q¸ñʽºóÔÚ°´¼ü¾«ÁéÖмÓÔØÔËÐС£Õû¸ö½Å±¾ÓÉ´°¿ÚËø¶¨¡¢´ò¹ÖÑ»·¡¢ÑªÁ¿¼ì²â¡¢Ê°È¡´¦ÀíËĸöÄ£¿é×é³É£¬ÏÂÃæ°´Êµ¼Ê±àд˳ÐòÕ¹¿ª¡£
ÔËÐл·¾³Óë¼üλÉ趨
ÓÎÏ·±ØÐë´°¿Ú»¯ÔËÐУ¬·Ö±æÂÊËø¶¨ÔÚ1024×768»ò1280×720¡£È«ÆÁģʽϰ´¼ü¾«Áé»ñÈ¡µÄ×ø±ê»áÆ¯ÒÆ£¬½Å±¾µã»÷λÖÃÓëʵ¼Ê½çÃæÔªËØ¶Ô²»ÉÏ¡£´°¿Ú»¯ºó¼Ç¼¿Í»§¶Ë×óÉϽÇÔÚÆÁÄ»ÉϵÄλÖ㬺óÐøËùÓÐ×ø±ê¶¼»ùÓÚÕâ¸ö»ù×¼¼ÆËã¡£
ÓÎÏ·ÄÚ¼üλͳһÉ趨£ºÖ÷¹¥¼¼ÄÜ·ÅÊý×Ö¼ü1£¬Èº¹¥»òµÚ¶þ¸öÊä³ö¼¼ÄÜ·ÅÊý×Ö¼ü2£¬ºìÒ©°ó¶¨F2£¬À¶Ò©°ó¶¨F3£¬Ê°È¡¼üÉèΪF»ò¿Õ¸ñ¼ü¡£»ÃÊÞÉèÖÃΪ×Ô¶¯³öÕ÷¹¥»÷ģʽ¡£Tab¼üÓÃÓÚÇл»Ñ¡ÖÐÄ¿±ê£¬ÔÚ¶àÊýħÓò°æ±¾ÖпÉÓá£
°´¼ü¾«ÁéÆô¶¯ºó£¬ÓÒ¼üÑ¡ÔñÒÔ¹ÜÀíÔ±Éí·ÝÔËÐУ¬·ñÔòÄ£ÄâµÄ¼üÅÌÊó±êʼþ¿ÉÄܱ»ÏµÍ³À¹½Ø¡£½Å±¾±à¼½çÃæÇе½Ô´ÎļþÊÓͼ£¬Ö±½ÓÕ³Ìù´úÂë¡£½¨Ò齫Æô¶¯ÈȼüÉèΪF10£¬ÖÐÖ¹ÈȼüÉèΪF12£¬·½±ãËæÊ±ÆôÍ£¡£
»ù´¡´ò¹ÖÑ»·µÄÍêÕû´úÂë
ÒÔÏÂÊÇÒ»¶Î¿ÉÒÔÖ±½ÓʹÓõÄħÓò×Ô¶¯´ò¹Ö½Å±¾£¬°üº¬Ñ¡¹Ö¡¢·Å¼¼ÄÜ¡¢Ê°È¡¡¢ÑªÁ¿¼ì²âºÍËæ»ú΢×ßλ£º
```
Hwnd = Plugin.Window.Find(0, "ħÓò")
Call Plugin.Window.Active(Hwnd)
Delay 3000
Rem Ö÷Ñ»·´ò¹Ö
KeyPress "Tab", 1
Delay 300 + Int(200 * Rnd())
KeyPress "1", 1
Delay 1200 + Int(500 * Rnd())
KeyPress "2", 1
Delay 1500
KeyPress "F", 1
Delay 400 + Int(300 * Rnd())
color = GetPixelColor(120, 680)
If color <> "FF0000" Then
KeyPress "F2", 1
Delay 200
End If
If Int(10 * Rnd()) > 8 Then
KeyPress "Up", 1
Delay 500
KeyPress "Down", 1
End If
If GetPixelColor(640, 500) = "FFFFFF" Then
MoveTo 640, 500
LeftClick 1
Delay 8000
KeyPress "H", 1
Delay 5000
End If
Goto Ö÷Ñ»·´ò¹Ö
```
¿ªÍ·ÓÃPlugin.Window.Find²éÕÒ´°¿Ú±êÌ⺬“ħÓò”µÄ¾ä±ú²¢¼¤»î£¬È·±£°´¼ü·¢Ë͵½ÓÎÏ·´°¿Ú¶ø²»ÊÇÆäËû³ÌÐò¡£Æô¶¯ºóµÄ3ÃëÑÓʱÁô¸øÍæ¼ÒÇлØÓÎÏ·»Ãæ¡£
ѪÁ¿¼ì²âµÄ×ø±ê120,680ºÍÑÕɫֵFF0000ÐèÒªÓð´¼ü¾«ÁéµÄ×¥µã¹¤¾ßÔÚʵ¼ÊÓÎÏ·ÖÐץȡ¡£×¥µã·½·¨ÊÇ´ò¿ª×¥×¥¹¤¾ß£¬Êó±êÒÆµ½½ÇɫѪÌõÖжΣ¬¼ÇÂ¼×ø±êºÍÑÕɫֵ¡£ÂúѪʱѪÌõÏÔʾΪºìÉ«FF0000£¬µôѪºóÑÕÉ«»á±ä»¯£¬½Å±¾¼ì²âµ½ÑÕÉ«²»µÈÓÚÂúѪֵ¾Í´¥·¢ºÈÒ©¡£
ËÀÍö¼ì²âµÄ×ø±ê640,500ÊǸ´»î½çÃæµÄ°×É«ÌáʾÎÄ×ÖλÖã¬Í¬ÑùÐèÒªÓÃ×¥µã¹¤¾ßÈ·ÈÏ¡£¼ì²âµ½°×É«ÏñËØ¾ÍÄ£Äâµã»÷¸´»î°´Å¥£¬È»ºó°´»Ø³Ç¼ü¡£
ÕÒɫʶ±ð¹ÖÎïµÄ½ø½×·½°¸
Tab¼üÑ¡¹ÖÔÚ²¿·ÖħÓò°æ±¾»òÌØ¶¨¸±±¾Öв»Îȶ¨£¬½Å±¾¿ÉÄÜÑ¡ÖÐÁË´íÎóÄ¿±ê»òÕßÑ¡²»Öй֡£¸ÄÓÃFindColorËÑË÷¹ÖÎïѪÌõÑÕÉ«¸ü¿É¿¿£º
```
Do
FindColor 0, 0, 1280, 720, "FF0000", intX, intY, 1
If intX > 0 And intY > 0 Then
MoveTo intX + 10, intY + 10
LeftClick 1
Delay 300
KeyPress "1", 1
Delay 1000
KeyPress "Space", 1
Else
KeyPress "W", 1
Delay 1500
End If
Randomize
Delay Int(Rnd * 500) + 800
Loop
```
FindColorÔÚÆÁÄ»·¶Î§0,0µ½1280,720ÄÚËÑË÷ºìÉ«ÏñËØ£¬ÕÒµ½ºó·µ»Ø×ø±êµ½intXºÍintY¡£Êó±êÒÆ¶¯µ½ÑªÌõ×ø±êÆ«ÒÆ10¸öÏñËØµÄλÖõã»÷Ñ¡ÖйÖÎȻºó°´¼¼Äܼü¹¥»÷¡£Èç¹ûûÕÒµ½¹Ö£¬½Å±¾°´W¼üÏòǰ×ßÒ»¶Î¾àÀ룬À©´óËÑË÷·¶Î§¡£ÕâÀïµÄFF0000ÊǹÖÎïѪÌõµÄºìɫֵ£¬ÐèÒªÓÃץɫ¹¤¾ß¶Ô׏ÖÎïѪÌõʵ¼ÊÎüÈ¡£¬²»Í¬Ä§Óò°æ±¾µÄ¹ÖÎïѪÌõÑÕÉ«¿ÉÄÜÂÔÓвîÒ죬ÓÐµÄÆ«³Èºì£¬ÓÐµÄÆ«Éîºì¡£
ʰȡÎïÆ·µÄ´¦ÀíÂß¼
µØÃæµôÂäÎïµÄʰȡÓÐÈýÖÖʵÏÖ·½Ê½¡£×î¼òµ¥µÄÊǶ¨Ê±°´Ê°È¡¼ü£º
```
KeyPress "F", 1
Delay 400
KeyPress "F", 1
Delay 300
```
Á¬Ðø°´Á½´Îʰȡ¼ü£¬Ìá¸ß¸²¸Ç·¶Î§¡£ÕâÖÖ·½Ê½²»ÐèÒªÅжϵØÉÏÓÐûÓÐÎïÆ·£¬½Å±¾Ò»Ö±ÔÚ°´Ê°È¡¼ü£¬ÔÚÎïÆ·µôÂ䯵·±µÄµØÍ¼ÖÐЧÂÊ¿ÉÒÔ½ÓÊÜ¡£
½ø½×·½Ê½ÊÇÓÃGetPixelColor¼ì²âµØÃæÌض¨Î»ÖÃÊÇ·ñÓÐÎïÆ·¹âµã¡£Ä§Ê¯ÔÚµØÃæÏÔʾΪ×ÏÉ«¹âµã£¬ÑÕɫֵ´óÔ¼ÔÚ800080¸½½ü£º
```
If GetPixelColor(640, 512) = "800080" Then
KeyPress "F3", 1
Delay 500
End If
```
ʰȡ¼ì²â×ø±êÓ¦¸²¸Ç½ÇÉ«ÖÜΧ3Ã×·¶Î§£¬¿ÉÒÔÉèÖöà¸ö¼ì²âµã¡£±ÈÈçÔÚ640,512Ö®Í⣬ÔÙ¼Ó620,530ºÍ660,490Á½¸ö±¸Ñ¡Î»Öã¬ÒÀ´ÎÅжϣ¬ÈÎһλÖüì²âµ½×ÏÉ«¾Í´¥·¢Ê°È¡¡£
×î¸ßЧµÄ·½Ê½ÊÇÓÃFindPicÕÒµôÂäÎïͼ±ê¡£ÏȽØÈ¡ÎïÆ·ÔÚµØÃæÉϵÄÌØÕ÷ͼ±ê£¬±£´æÎª24λBMP¸ñʽ£¬È»ºóÔڽű¾ÖÐÓÃFindPicÔÚÆÁĻϰ벿·ÖËÑË÷¡£ÕÒͼ±ÈÕÒÉ«¸ü׼ȷ£¬µ«ÐèÒªÕë¶ÔÿÖÖµôÂäÎïµ¥¶ÀÖÆ×÷Ä£°åͼƬ£¬Î¬»¤³É±¾¸ü¸ß¡£
´°¿ÚËø¶¨Óëºǫ́ÔËÐеÄʵÏÖ
ǰ̨½Å±¾ÒªÇóÓÎÏ·´°¿ÚʼÖÕ´¦ÓÚ¼¤»î״̬£¬Íæ¼ÒÇгöÈ¥¿´ÍøÒ³»òÁÄÌ죬½Å±¾µÄ°´¼ü¾Í»á·¢µ½ÆäËû´°¿Ú¡£½â¾ö·½·¨ÊÇʹÓôóÄ®²å¼þ½øÐд°¿Ú°ó¶¨£¬ÊµÏÖºǫ́ÔËÐУº
```
dm = CreateObject("dm.dmsoft")
Hwnd = dm.FindWindow("", "ħÓò")
dm.BindWindow Hwnd, "dx", "dx", "dx", 0
dm_ret = dm.FindColor(0, 0, 1024, 768, "FF0000", 1, 0.9, intX, intY)
If intX > 0 Then
dm.MoveTo intX, intY
dm.LeftClick
End If
dm.UnBindWindow
```
´óÄ®²å¼þµÄdm.dllÐèÒªÏÈ×¢²áµ½ÏµÍ³ÖУ¬ÒÔ¹ÜÀíÔ±Éí·Ý´ò¿ªÃüÁîÌáʾ·ûÖ´ÐÐregsvr32ÃüÁָ¶¨dm.dllµÄÍêÕû·¾¶¡£°ó¶¨Ä£Ê½ÖеÚÒ»¸ö²ÎÊý“dx”±íʾÓÃDirectX·½Ê½°ó¶¨´°¿Ú£¬Èç¹û°ó¶¨Ê§°Ü¿ÉÒÔ»»³É“gdi”»ò“windows”ģʽÖð¸ö²âÊÔ¡£ºǫ́°ó¶¨ºó½Å±¾¿ÉÒÔÔÚÓÎÏ·´°¿Ú²»¼¤»îµÄÇé¿öÏÂÔËÐУ¬Êʺ϶࿪¹Ò»ú³¡¾°¡£
°´¼ü¾«Áé±¾ÉíÒ²Ö§³Ö²¿·Öºǫ́ÃüÁµ«Ä§Óò¶Ôºǫ́¼üÅÌÖ¸ÁîÓÐÆÁ±Î£¬Ö±½ÓʹÓÃPluginºǫ́°´¼ü¿ÉÄÜÎÞЧ£¬ÐèÒªÓôóÄ®²å¼þ»òÀàËÆÇý¶¯¼¶²å¼þ²ÅÄÜʵÏÖÎȶ¨µÄºǫ́²Ù×÷¡£
Ëæ»úÑÓʱÓëÐÐΪģÄâ
ËùÓвÙ×÷Ö®¼äµÄÑÓʱ²»ÄÜд³É¹Ì¶¨Öµ¡£°´¼ü¾«ÁéµÄDelayÃüÁîÈç¹ûÿ´Î¶¼¾«È·µÈ´ýͬÑùµÄºÁÃëÊý£¬ÐÐΪģʽ¹ýÓÚ¹æÂÉ£¬ÈÝÒ×±»ÏµÍ³Ê¶±ð¡£ÕýÈ·µÄд·¨ÊÇÔÚ»ù´¡ÑÓʱÉϵþ¼ÓËæ»úÁ¿£º
```
Delay 800 + Int(400 * Rnd())
```
800ºÁÃëµÄ»ù´¡ÑÓʱ¼ÓÉÏ0µ½400ºÁÃëµÄËæ»úÆ«ÒÆ£¬Ã¿´ÎÑ»·µÄ½Ú×à¶¼Óб仯¡£¼¼ÄÜÖ®¼äµÄ¼ä¸ô¡¢Ê°È¡Ö®¼äµÄ¼ä¸ô¡¢Ñ»·Ä©Î²µÄµÈ´ýʱ¼ä¶¼ÐèÒª¼ÓÈëÕâÖÖËæ»ú»¯´¦Àí¡£
Êó±êµã»÷×ø±êͬÑù¼ÓÈëÎ¢Ð¡Æ«ÒÆ¡£MoveToºóÃæ½ÓµÄ×ø±ê²»ÒªÃ¿´Î¶¼ÊÇÍêÈ«ÏàͬµÄÊýÖµ£º
```
MoveTo 640 + Int(10 * Rnd()) - 5, 580 + Int(10 * Rnd()) - 5
LeftClick 1
```
Õâ¶Î´úÂëÈÃÊó±êÂäµãÔÚ640,580¸½½ü5¸öÏñËØµÄ·¶Î§ÄÚËæ»ú¸¡¶¯£¬Ä£ÄâÈËÊÖµã»÷µÄ¶¨Î»Îó²î¡£
Ëæ»ú΢×ßλÊÇ·ÀÖ¹½ÇÉ«³¤Ê±¼äÕ¾ÔÚͬһλÖñ»¼ì²âµÄÓÐЧÊֶΡ£ÔÚ´ò¹ÖÑ»·ÖÐÿ¸ô¼¸ÂÖ²åÈëÒ»´ÎËæ»ú·½ÏòÒÆ¶¯£º
```
If Int(10 * Rnd()) > 7 Then
KeyPress "W", 1
Delay 300
KeyPress "A", 1
Delay 200
KeyPress "S", 1
Delay 300
KeyPress "D", 1
End If
```
´óԼÿ10ÂÖÑ»·ÓÐ2µ½3´Î»áÖ´ÐÐÕâ¶Î×ßλ´úÂ룬½ÇÉ«»áÏòËæ»ú·½ÏòÒÆ¶¯¼¸²½Ôٻص½Ôλ¸½½ü¡£ÕâÄ£ÄâÁËÍæ¼ÒÔÚ´ò¹Öʱµ÷ÕûվλµÄ×ÔÈ»ÐÐΪ¡£
½Å±¾µ÷ÊÔÓë³£¼û¹ÊÕÏÅŲé
½Å±¾Õ³Ìùµ½°´¼ü¾«ÁéºóÏȲ»ÒªÖ±½Ó¹Ò»úÔËÐУ¬Ôڽű¾±à¼½çÃæ°´µ÷ÊÔ°´Å¥µ¥²½Ö´ÐС£¹Û²ìÿһ²½µÄÊó±êλÖúͰ´¼üÊÇ·ñÓëÔ¤ÆÚÒ»Ö¡£×î³£³öÏÖµÄÎÊÌâÊÇ×ø±ê´í룬ÓÎÏ·´°¿ÚÔÚÆÁÄ»Éϱ»Òƶ¯¹ý£¬»òÕß·Ö±æÂÊÉèÖÃÓë½Å±¾±àдʱ²»Ò»Ö¡£½â¾ö°ì·¨ÊǰÑÓÎÏ·´°¿ÚÍϵ½ÆÁÄ»×óÉϽǹ̶¨Î»Öã¬ÖØÐÂÓÃ×¥µã¹¤¾ß»ñÈ¡ËùÓÐ×ø±ê¡£
ѪÌõÑÕÉ«¼ì²âʧЧҲÊÇ¸ßÆµÎÊÌâ¡£²»Í¬³¡¾°µÄ¹âÏßäÖȾ¿ÉÄÜÈÃѪÌõÑÕÉ«²úÉúϸ΢±ä»¯£¬ÂúѪÑÕÉ«ÔÚ³ÇÕòµØÍ¼ºÍ¸±±¾Àï¿ÉÄܲ»ÍêȫһÑù¡£°ÑÑÕɫֵÈݲîµ÷´óһЩ£¬»òÕßÔÚ¶à¸ö×ø±êµãÈ¡ÑùÅжϡ£Èç¹ûGetPixelColor·µ»ØµÄÖµÓëÔ¤ÆÚʼÖղ¸öÉ«½×£¬Ê¹ÓýüËÆ±È½Ï¶ø²»ÊǾ«È·Æ¥Åä¡£
ʰȡ¼üÎÞЧʱ£¬È·ÈÏÓÎÏ·ÄÚµÄʰȡ¿ì½Ý¼üÉèÖá£Ä§ÓòĬÈÏʰȡ¼ü¿ÉÄÜÊǿոñ¡¢Z¼ü»òF¼ü£¬²»Í¬°æ±¾ÓвîÒì¡£ÓÃ×¥µã¹¤¾ßÎÞ·¨È·¶¨Ê°È¡¼üµÄÇé¿öÏ£¬¿ÉÒÔÔÚÓÎÏ·ÉèÖÃÖв鿴¿ì½Ý¼üÅäÖ㬻òÕßÓð´¼ü¾«ÁéÂ¼ÖÆÒ»¶ÎÊÖ¶¯Ê°È¡µÄ²Ù×÷£¬»Ø·Åʱ¹Û²ì½Å±¾¼Ç¼µÄ¼üÂë¡£
½Å±¾ÔËÐÐÒ»¶Îʱ¼äºó¿¨×¡²»¶¯£¬¼ì²éÑ»·ÖÐÊÇ·ñÓÐij¸öFindColor»òFindPicÃüÁʱ¼äÕÒ²»µ½Ä¿±ê£¬µ¼Ö½ű¾¿¨Ôڵȴý״̬¡£ÔÚÕÒͼÕÒÉ«ÃüÁîÍâÃæ¼Ó¼ÆÊýÆ÷£¬³¬¹ýÒ»¶¨´ÎÊý»¹Ã»ÕÒµ½¾ÍÖ´Ðб¸ÓòÙ×÷£¬±ÈÈç°´Tab¼üÖØÐÂÑ¡¹Ö»òÕßÏòËæ»ú·½ÏòÒÆ¶¯Ò»²½£¬±ÜÃâ½Å±¾ÔÚÒ»¸öËÀÑ»·Àï¿Õת¡£
ÔËÐл·¾³Óë¼üλÉ趨
ÓÎÏ·±ØÐë´°¿Ú»¯ÔËÐУ¬·Ö±æÂÊËø¶¨ÔÚ1024×768»ò1280×720¡£È«ÆÁģʽϰ´¼ü¾«Áé»ñÈ¡µÄ×ø±ê»áÆ¯ÒÆ£¬½Å±¾µã»÷λÖÃÓëʵ¼Ê½çÃæÔªËØ¶Ô²»ÉÏ¡£´°¿Ú»¯ºó¼Ç¼¿Í»§¶Ë×óÉϽÇÔÚÆÁÄ»ÉϵÄλÖ㬺óÐøËùÓÐ×ø±ê¶¼»ùÓÚÕâ¸ö»ù×¼¼ÆËã¡£
ÓÎÏ·ÄÚ¼üλͳһÉ趨£ºÖ÷¹¥¼¼ÄÜ·ÅÊý×Ö¼ü1£¬Èº¹¥»òµÚ¶þ¸öÊä³ö¼¼ÄÜ·ÅÊý×Ö¼ü2£¬ºìÒ©°ó¶¨F2£¬À¶Ò©°ó¶¨F3£¬Ê°È¡¼üÉèΪF»ò¿Õ¸ñ¼ü¡£»ÃÊÞÉèÖÃΪ×Ô¶¯³öÕ÷¹¥»÷ģʽ¡£Tab¼üÓÃÓÚÇл»Ñ¡ÖÐÄ¿±ê£¬ÔÚ¶àÊýħÓò°æ±¾ÖпÉÓá£
°´¼ü¾«ÁéÆô¶¯ºó£¬ÓÒ¼üÑ¡ÔñÒÔ¹ÜÀíÔ±Éí·ÝÔËÐУ¬·ñÔòÄ£ÄâµÄ¼üÅÌÊó±êʼþ¿ÉÄܱ»ÏµÍ³À¹½Ø¡£½Å±¾±à¼½çÃæÇе½Ô´ÎļþÊÓͼ£¬Ö±½ÓÕ³Ìù´úÂë¡£½¨Ò齫Æô¶¯ÈȼüÉèΪF10£¬ÖÐÖ¹ÈȼüÉèΪF12£¬·½±ãËæÊ±ÆôÍ£¡£
»ù´¡´ò¹ÖÑ»·µÄÍêÕû´úÂë
ÒÔÏÂÊÇÒ»¶Î¿ÉÒÔÖ±½ÓʹÓõÄħÓò×Ô¶¯´ò¹Ö½Å±¾£¬°üº¬Ñ¡¹Ö¡¢·Å¼¼ÄÜ¡¢Ê°È¡¡¢ÑªÁ¿¼ì²âºÍËæ»ú΢×ßλ£º
```
Hwnd = Plugin.Window.Find(0, "ħÓò")
Call Plugin.Window.Active(Hwnd)
Delay 3000
Rem Ö÷Ñ»·´ò¹Ö
KeyPress "Tab", 1
Delay 300 + Int(200 * Rnd())
KeyPress "1", 1
Delay 1200 + Int(500 * Rnd())
KeyPress "2", 1
Delay 1500
KeyPress "F", 1
Delay 400 + Int(300 * Rnd())
color = GetPixelColor(120, 680)
If color <> "FF0000" Then
KeyPress "F2", 1
Delay 200
End If
If Int(10 * Rnd()) > 8 Then
KeyPress "Up", 1
Delay 500
KeyPress "Down", 1
End If
If GetPixelColor(640, 500) = "FFFFFF" Then
MoveTo 640, 500
LeftClick 1
Delay 8000
KeyPress "H", 1
Delay 5000
End If
Goto Ö÷Ñ»·´ò¹Ö
```
¿ªÍ·ÓÃPlugin.Window.Find²éÕÒ´°¿Ú±êÌ⺬“ħÓò”µÄ¾ä±ú²¢¼¤»î£¬È·±£°´¼ü·¢Ë͵½ÓÎÏ·´°¿Ú¶ø²»ÊÇÆäËû³ÌÐò¡£Æô¶¯ºóµÄ3ÃëÑÓʱÁô¸øÍæ¼ÒÇлØÓÎÏ·»Ãæ¡£
ѪÁ¿¼ì²âµÄ×ø±ê120,680ºÍÑÕɫֵFF0000ÐèÒªÓð´¼ü¾«ÁéµÄ×¥µã¹¤¾ßÔÚʵ¼ÊÓÎÏ·ÖÐץȡ¡£×¥µã·½·¨ÊÇ´ò¿ª×¥×¥¹¤¾ß£¬Êó±êÒÆµ½½ÇɫѪÌõÖжΣ¬¼ÇÂ¼×ø±êºÍÑÕɫֵ¡£ÂúѪʱѪÌõÏÔʾΪºìÉ«FF0000£¬µôѪºóÑÕÉ«»á±ä»¯£¬½Å±¾¼ì²âµ½ÑÕÉ«²»µÈÓÚÂúѪֵ¾Í´¥·¢ºÈÒ©¡£
ËÀÍö¼ì²âµÄ×ø±ê640,500ÊǸ´»î½çÃæµÄ°×É«ÌáʾÎÄ×ÖλÖã¬Í¬ÑùÐèÒªÓÃ×¥µã¹¤¾ßÈ·ÈÏ¡£¼ì²âµ½°×É«ÏñËØ¾ÍÄ£Äâµã»÷¸´»î°´Å¥£¬È»ºó°´»Ø³Ç¼ü¡£
ÕÒɫʶ±ð¹ÖÎïµÄ½ø½×·½°¸
Tab¼üÑ¡¹ÖÔÚ²¿·ÖħÓò°æ±¾»òÌØ¶¨¸±±¾Öв»Îȶ¨£¬½Å±¾¿ÉÄÜÑ¡ÖÐÁË´íÎóÄ¿±ê»òÕßÑ¡²»Öй֡£¸ÄÓÃFindColorËÑË÷¹ÖÎïѪÌõÑÕÉ«¸ü¿É¿¿£º
```
Do
FindColor 0, 0, 1280, 720, "FF0000", intX, intY, 1
If intX > 0 And intY > 0 Then
MoveTo intX + 10, intY + 10
LeftClick 1
Delay 300
KeyPress "1", 1
Delay 1000
KeyPress "Space", 1
Else
KeyPress "W", 1
Delay 1500
End If
Randomize
Delay Int(Rnd * 500) + 800
Loop
```
FindColorÔÚÆÁÄ»·¶Î§0,0µ½1280,720ÄÚËÑË÷ºìÉ«ÏñËØ£¬ÕÒµ½ºó·µ»Ø×ø±êµ½intXºÍintY¡£Êó±êÒÆ¶¯µ½ÑªÌõ×ø±êÆ«ÒÆ10¸öÏñËØµÄλÖõã»÷Ñ¡ÖйÖÎȻºó°´¼¼Äܼü¹¥»÷¡£Èç¹ûûÕÒµ½¹Ö£¬½Å±¾°´W¼üÏòǰ×ßÒ»¶Î¾àÀ룬À©´óËÑË÷·¶Î§¡£ÕâÀïµÄFF0000ÊǹÖÎïѪÌõµÄºìɫֵ£¬ÐèÒªÓÃץɫ¹¤¾ß¶Ô׏ÖÎïѪÌõʵ¼ÊÎüÈ¡£¬²»Í¬Ä§Óò°æ±¾µÄ¹ÖÎïѪÌõÑÕÉ«¿ÉÄÜÂÔÓвîÒ죬ÓÐµÄÆ«³Èºì£¬ÓÐµÄÆ«Éîºì¡£
ʰȡÎïÆ·µÄ´¦ÀíÂß¼
µØÃæµôÂäÎïµÄʰȡÓÐÈýÖÖʵÏÖ·½Ê½¡£×î¼òµ¥µÄÊǶ¨Ê±°´Ê°È¡¼ü£º
```
KeyPress "F", 1
Delay 400
KeyPress "F", 1
Delay 300
```
Á¬Ðø°´Á½´Îʰȡ¼ü£¬Ìá¸ß¸²¸Ç·¶Î§¡£ÕâÖÖ·½Ê½²»ÐèÒªÅжϵØÉÏÓÐûÓÐÎïÆ·£¬½Å±¾Ò»Ö±ÔÚ°´Ê°È¡¼ü£¬ÔÚÎïÆ·µôÂ䯵·±µÄµØÍ¼ÖÐЧÂÊ¿ÉÒÔ½ÓÊÜ¡£
½ø½×·½Ê½ÊÇÓÃGetPixelColor¼ì²âµØÃæÌض¨Î»ÖÃÊÇ·ñÓÐÎïÆ·¹âµã¡£Ä§Ê¯ÔÚµØÃæÏÔʾΪ×ÏÉ«¹âµã£¬ÑÕɫֵ´óÔ¼ÔÚ800080¸½½ü£º
```
If GetPixelColor(640, 512) = "800080" Then
KeyPress "F3", 1
Delay 500
End If
```
ʰȡ¼ì²â×ø±êÓ¦¸²¸Ç½ÇÉ«ÖÜΧ3Ã×·¶Î§£¬¿ÉÒÔÉèÖöà¸ö¼ì²âµã¡£±ÈÈçÔÚ640,512Ö®Í⣬ÔÙ¼Ó620,530ºÍ660,490Á½¸ö±¸Ñ¡Î»Öã¬ÒÀ´ÎÅжϣ¬ÈÎһλÖüì²âµ½×ÏÉ«¾Í´¥·¢Ê°È¡¡£
×î¸ßЧµÄ·½Ê½ÊÇÓÃFindPicÕÒµôÂäÎïͼ±ê¡£ÏȽØÈ¡ÎïÆ·ÔÚµØÃæÉϵÄÌØÕ÷ͼ±ê£¬±£´æÎª24λBMP¸ñʽ£¬È»ºóÔڽű¾ÖÐÓÃFindPicÔÚÆÁĻϰ벿·ÖËÑË÷¡£ÕÒͼ±ÈÕÒÉ«¸ü׼ȷ£¬µ«ÐèÒªÕë¶ÔÿÖÖµôÂäÎïµ¥¶ÀÖÆ×÷Ä£°åͼƬ£¬Î¬»¤³É±¾¸ü¸ß¡£
´°¿ÚËø¶¨Óëºǫ́ÔËÐеÄʵÏÖ
ǰ̨½Å±¾ÒªÇóÓÎÏ·´°¿ÚʼÖÕ´¦ÓÚ¼¤»î״̬£¬Íæ¼ÒÇгöÈ¥¿´ÍøÒ³»òÁÄÌ죬½Å±¾µÄ°´¼ü¾Í»á·¢µ½ÆäËû´°¿Ú¡£½â¾ö·½·¨ÊÇʹÓôóÄ®²å¼þ½øÐд°¿Ú°ó¶¨£¬ÊµÏÖºǫ́ÔËÐУº
```
dm = CreateObject("dm.dmsoft")
Hwnd = dm.FindWindow("", "ħÓò")
dm.BindWindow Hwnd, "dx", "dx", "dx", 0
dm_ret = dm.FindColor(0, 0, 1024, 768, "FF0000", 1, 0.9, intX, intY)
If intX > 0 Then
dm.MoveTo intX, intY
dm.LeftClick
End If
dm.UnBindWindow
```
´óÄ®²å¼þµÄdm.dllÐèÒªÏÈ×¢²áµ½ÏµÍ³ÖУ¬ÒÔ¹ÜÀíÔ±Éí·Ý´ò¿ªÃüÁîÌáʾ·ûÖ´ÐÐregsvr32ÃüÁָ¶¨dm.dllµÄÍêÕû·¾¶¡£°ó¶¨Ä£Ê½ÖеÚÒ»¸ö²ÎÊý“dx”±íʾÓÃDirectX·½Ê½°ó¶¨´°¿Ú£¬Èç¹û°ó¶¨Ê§°Ü¿ÉÒÔ»»³É“gdi”»ò“windows”ģʽÖð¸ö²âÊÔ¡£ºǫ́°ó¶¨ºó½Å±¾¿ÉÒÔÔÚÓÎÏ·´°¿Ú²»¼¤»îµÄÇé¿öÏÂÔËÐУ¬Êʺ϶࿪¹Ò»ú³¡¾°¡£
°´¼ü¾«Áé±¾ÉíÒ²Ö§³Ö²¿·Öºǫ́ÃüÁµ«Ä§Óò¶Ôºǫ́¼üÅÌÖ¸ÁîÓÐÆÁ±Î£¬Ö±½ÓʹÓÃPluginºǫ́°´¼ü¿ÉÄÜÎÞЧ£¬ÐèÒªÓôóÄ®²å¼þ»òÀàËÆÇý¶¯¼¶²å¼þ²ÅÄÜʵÏÖÎȶ¨µÄºǫ́²Ù×÷¡£
Ëæ»úÑÓʱÓëÐÐΪģÄâ
ËùÓвÙ×÷Ö®¼äµÄÑÓʱ²»ÄÜд³É¹Ì¶¨Öµ¡£°´¼ü¾«ÁéµÄDelayÃüÁîÈç¹ûÿ´Î¶¼¾«È·µÈ´ýͬÑùµÄºÁÃëÊý£¬ÐÐΪģʽ¹ýÓÚ¹æÂÉ£¬ÈÝÒ×±»ÏµÍ³Ê¶±ð¡£ÕýÈ·µÄд·¨ÊÇÔÚ»ù´¡ÑÓʱÉϵþ¼ÓËæ»úÁ¿£º
```
Delay 800 + Int(400 * Rnd())
```
800ºÁÃëµÄ»ù´¡ÑÓʱ¼ÓÉÏ0µ½400ºÁÃëµÄËæ»úÆ«ÒÆ£¬Ã¿´ÎÑ»·µÄ½Ú×à¶¼Óб仯¡£¼¼ÄÜÖ®¼äµÄ¼ä¸ô¡¢Ê°È¡Ö®¼äµÄ¼ä¸ô¡¢Ñ»·Ä©Î²µÄµÈ´ýʱ¼ä¶¼ÐèÒª¼ÓÈëÕâÖÖËæ»ú»¯´¦Àí¡£
Êó±êµã»÷×ø±êͬÑù¼ÓÈëÎ¢Ð¡Æ«ÒÆ¡£MoveToºóÃæ½ÓµÄ×ø±ê²»ÒªÃ¿´Î¶¼ÊÇÍêÈ«ÏàͬµÄÊýÖµ£º
```
MoveTo 640 + Int(10 * Rnd()) - 5, 580 + Int(10 * Rnd()) - 5
LeftClick 1
```
Õâ¶Î´úÂëÈÃÊó±êÂäµãÔÚ640,580¸½½ü5¸öÏñËØµÄ·¶Î§ÄÚËæ»ú¸¡¶¯£¬Ä£ÄâÈËÊÖµã»÷µÄ¶¨Î»Îó²î¡£
Ëæ»ú΢×ßλÊÇ·ÀÖ¹½ÇÉ«³¤Ê±¼äÕ¾ÔÚͬһλÖñ»¼ì²âµÄÓÐЧÊֶΡ£ÔÚ´ò¹ÖÑ»·ÖÐÿ¸ô¼¸ÂÖ²åÈëÒ»´ÎËæ»ú·½ÏòÒÆ¶¯£º
```
If Int(10 * Rnd()) > 7 Then
KeyPress "W", 1
Delay 300
KeyPress "A", 1
Delay 200
KeyPress "S", 1
Delay 300
KeyPress "D", 1
End If
```
´óԼÿ10ÂÖÑ»·ÓÐ2µ½3´Î»áÖ´ÐÐÕâ¶Î×ßλ´úÂ룬½ÇÉ«»áÏòËæ»ú·½ÏòÒÆ¶¯¼¸²½Ôٻص½Ôλ¸½½ü¡£ÕâÄ£ÄâÁËÍæ¼ÒÔÚ´ò¹Öʱµ÷ÕûվλµÄ×ÔÈ»ÐÐΪ¡£
½Å±¾µ÷ÊÔÓë³£¼û¹ÊÕÏÅŲé
½Å±¾Õ³Ìùµ½°´¼ü¾«ÁéºóÏȲ»ÒªÖ±½Ó¹Ò»úÔËÐУ¬Ôڽű¾±à¼½çÃæ°´µ÷ÊÔ°´Å¥µ¥²½Ö´ÐС£¹Û²ìÿһ²½µÄÊó±êλÖúͰ´¼üÊÇ·ñÓëÔ¤ÆÚÒ»Ö¡£×î³£³öÏÖµÄÎÊÌâÊÇ×ø±ê´í룬ÓÎÏ·´°¿ÚÔÚÆÁÄ»Éϱ»Òƶ¯¹ý£¬»òÕß·Ö±æÂÊÉèÖÃÓë½Å±¾±àдʱ²»Ò»Ö¡£½â¾ö°ì·¨ÊǰÑÓÎÏ·´°¿ÚÍϵ½ÆÁÄ»×óÉϽǹ̶¨Î»Öã¬ÖØÐÂÓÃ×¥µã¹¤¾ß»ñÈ¡ËùÓÐ×ø±ê¡£
ѪÌõÑÕÉ«¼ì²âʧЧҲÊÇ¸ßÆµÎÊÌâ¡£²»Í¬³¡¾°µÄ¹âÏßäÖȾ¿ÉÄÜÈÃѪÌõÑÕÉ«²úÉúϸ΢±ä»¯£¬ÂúѪÑÕÉ«ÔÚ³ÇÕòµØÍ¼ºÍ¸±±¾Àï¿ÉÄܲ»ÍêȫһÑù¡£°ÑÑÕɫֵÈݲîµ÷´óһЩ£¬»òÕßÔÚ¶à¸ö×ø±êµãÈ¡ÑùÅжϡ£Èç¹ûGetPixelColor·µ»ØµÄÖµÓëÔ¤ÆÚʼÖղ¸öÉ«½×£¬Ê¹ÓýüËÆ±È½Ï¶ø²»ÊǾ«È·Æ¥Åä¡£
ʰȡ¼üÎÞЧʱ£¬È·ÈÏÓÎÏ·ÄÚµÄʰȡ¿ì½Ý¼üÉèÖá£Ä§ÓòĬÈÏʰȡ¼ü¿ÉÄÜÊǿոñ¡¢Z¼ü»òF¼ü£¬²»Í¬°æ±¾ÓвîÒì¡£ÓÃ×¥µã¹¤¾ßÎÞ·¨È·¶¨Ê°È¡¼üµÄÇé¿öÏ£¬¿ÉÒÔÔÚÓÎÏ·ÉèÖÃÖв鿴¿ì½Ý¼üÅäÖ㬻òÕßÓð´¼ü¾«ÁéÂ¼ÖÆÒ»¶ÎÊÖ¶¯Ê°È¡µÄ²Ù×÷£¬»Ø·Åʱ¹Û²ì½Å±¾¼Ç¼µÄ¼üÂë¡£
½Å±¾ÔËÐÐÒ»¶Îʱ¼äºó¿¨×¡²»¶¯£¬¼ì²éÑ»·ÖÐÊÇ·ñÓÐij¸öFindColor»òFindPicÃüÁʱ¼äÕÒ²»µ½Ä¿±ê£¬µ¼Ö½ű¾¿¨Ôڵȴý״̬¡£ÔÚÕÒͼÕÒÉ«ÃüÁîÍâÃæ¼Ó¼ÆÊýÆ÷£¬³¬¹ýÒ»¶¨´ÎÊý»¹Ã»ÕÒµ½¾ÍÖ´Ðб¸ÓòÙ×÷£¬±ÈÈç°´Tab¼üÖØÐÂÑ¡¹Ö»òÕßÏòËæ»ú·½ÏòÒÆ¶¯Ò»²½£¬±ÜÃâ½Å±¾ÔÚÒ»¸öËÀÑ»·Àï¿Õת¡£

