昨晚搞到近 2 點(diǎn),終于把相關(guān)部分搞完了,放出個(gè)預(yù)覽版玩玩。這一版本將支持組合鍵,比如,可以分別改Q、Ctrl+Q、Alt+Q 等,也將支持所有鼠標(biāo)操作。此外,增加了一個(gè)腳本系統(tǒng),允許用戶進(jìn)行更大程度上的自定義。
猛擊這里下載
腳本使用 lua 語(yǔ)言,格式大致為(正式版出來(lái)之前可能還會(huì)有改動(dòng)):
目前支持的 API 有:
void PressKey(number vkcode [, boolean ctrl [, boolean shift [, boolean alt [, boolean win]]]]) | 按下某鍵。 第一個(gè)參數(shù)為虛擬鍵碼,也就是 Windows 的 VK_*,腳本里給出了一個(gè) Keys 變量,可以直接使用 Keys.VK_*。其中 0 - 9 用 Keys.VK_0、……、Keys.VK_9,字母鍵用 Keys.VK_A、……、Keys.VK_Z。 后面四個(gè)表示狀態(tài)鍵是否被按下。默認(rèn) false。 若要按下 Ctrl+1,可寫(xiě)成 PressKey(Keys.VK_1, true, false, false, false); 也可簡(jiǎn)寫(xiě)為 PressKey(Keys.VK_1, true)。 |
void ReleaseKey(number vkcode [, boolean ctrl [, boolean shift [, boolean alt [, boolean win]]]]) | 同上,放開(kāi)某鍵。
|
void MoveMouse(number x, number y) | 移動(dòng)鼠標(biāo)到 (x, y) 位置。此坐標(biāo)是相對(duì)于屏幕上最前面的那個(gè)窗口的客戶區(qū)的左上角的(以后將相對(duì)于魔獸窗口)。 |
void PressMouseButton(number button) button: 1 - Left 2 - Right 3 - XButton1 4 - XButton2 | 按下鼠標(biāo)按鈕 |
void ReleaseMouseButton(number button) button: 1 - Left 2 - Right 3 - XButton1 4 - XButton2
| 放開(kāi)鼠標(biāo)按鈕 |
void MouseWheel(number button, number delta) button: 1 - VWheel 2 - HWheel
| 滾動(dòng)鼠標(biāo)滾輪 |
void SetClipboard(string str)
| 將一個(gè)字符串放到剪貼板 |
string AnsiToUtf8(string ansi) | 將 Ansi 字符串轉(zhuǎn)換為 UTF-8 |
width, height GetClientSize()
| 取客戶區(qū)大小。目前是取屏幕上最前面的那個(gè)窗口的客戶區(qū)的大?。ㄒ院髮?huì)是魔獸窗口的大?。?/p>
|
x, y GetCursorPosition() | 取鼠標(biāo)光標(biāo)當(dāng)前位置。此坐標(biāo)是相對(duì)于屏幕上最前面的那個(gè)窗口的客戶區(qū)的左上角的(以后將相對(duì)于魔獸窗口)。 |
void Delay(number milliseconds)
| 等待一段時(shí)間,參數(shù)的單位是毫秒。 |
上面附件中的示例腳本實(shí)現(xiàn)了一次性扔掉物品欄所有物品的功能。請(qǐng)打開(kāi)魔獸,然后按 Alt+1 來(lái)看效果。
論壇相應(yīng)主題:http://forum.streamlet.org/thread-236-1-1.html
介紹到此結(jié)束。
最后,如果有興趣的,希望探討下,目前的腳本格式定義是否合理,API 設(shè)置是否合理,腳本安全性如何控制,等等。
歡迎在下面評(píng)論中跟帖。
posted on 2010-05-10 13:46
溪流 閱讀(2640)
評(píng)論(7) 編輯 收藏 引用 所屬分類:
C++