dota吧 关注:4,646,397贴子:155,323,997
  • 1回复贴,共1

溪流 WarKey (xlWarKey) 论坛预览版一 请有空的朋友帮忙测试脚本系

只看楼主收藏回复

注意:此版本仅供预览和测试,不含完整功能。
下载:
http://forum.streamlet.org/thread-236-1-1.html
本版本用于测试脚本系统,已将 Alt+1 关联到了 ext\SampleExtension.lua。
脚本使用 lua 语言,格式大致为(正式版出来之前可能还会有改动):
-----------------------------------------------------------------------------
-- SampleExtension.lua
Extension =
{
      Application = "xlWarKey", --请勿修改
      Version = "3.0", --请勿修改
      NameSpace = "http://www.streamlet.org/api/xlwarkey/3.0", --请勿修改
      ExtensionName = "SampleExtension", --请勿修改
      Description = "This is a sample extension.",
      Configuration =
      {
          setting1 = --设置项1(本例不使用)
          {
              Type = "number",
              Desc = "Please input an integer."
          },
          setting2 = --设置项2(本例不使用)
          {
              Type = "string",
              Desc = "Please input a string."
          }
          --其他设置项
      },
      Entrance = function (id) -- 入口函数
          -- 所有代码都请写在这里
          return true; --必须返回 true 或者 false。返回值意义目前暂未定义。
      end
};
----------------------------------------------------------------------------
复制代码
目前支持的 API 有:
void PressKey(number vkcode [,
                boolean ctrl [, boolean shift [, boolean alt [, boolean win]]]])
按下某键。
第一个参数为虚拟键码,也就是 Windows 的 VK_*,脚本里给出了一个 Keys 变量,可以直接使用 Keys.VK_*。其中 0 - 9 用 Keys.VK_0、……、Keys.VK_9,字母键用 Keys.VK_A、……、Keys.VK_Z。
后面四个表示状态键是否被按下。默认 false。
若要按下 Ctrl+1,可写成 PressKey(Keys.VK_1, true, false, false, false);
也可简写为 PressKey(Keys.VK_1, true)。
void ReleaseKey(number vkcode [,
                  boolean ctrl [, boolean shift [, boolean alt [, boolean win]]]])



1楼2010-05-10 10:34回复
    同上,放开某键。
    void MoveMouse(number x, number y)
    移动鼠标到 (x, y) 位置。此坐标是相对于屏幕上最前面的那个窗口的客户区的左上角的(以后将相对于魔兽窗口)。
    void PressMouseButton(number button)
          button: 1 - Left
                  2 - Right
                  3 - XButton1
                  4 - XButton2
    按下鼠标按钮
    void ReleaseMouseButton(number button)
          button: 1 - Left
                  2 - Right
                  3 - XButton1
                  4 - XButton2
    放开鼠标按钮
    void MouseWheel(number button, number delta)
           button: 1 - VWheel
                   2 - HWheel
    滚动鼠标滚轮
    void SetClipboard(string str)
    将一个字符串放到剪贴板
    string AnsiToUtf8(string ansi)
    将 Ansi 字符串转换为 UTF-8
    width, height GetClientSize()
    取客户区大小。目前是取屏幕上最前面的那个窗口的客户区的大小(以后将会是魔兽窗口的大小)。
    x, y GetCursorPosition()
    取鼠标光标当前位置。此坐标是相对于屏幕上最前面的那个窗口的客户区的左上角的(以后将相对于魔兽窗口)。
    void Delay(number milliseconds)
    等待一段时间,参数的单位是毫秒。
    附带的脚本实现了一次性扔掉物品栏所有物品的功能。请打开魔兽,然后按 Alt+1 来测试效果。
    请发挥您的想象力,来尝试实现不同的功能。
    如有需要更多的 API,请到跟帖反馈。
    如果您创建了一些较好的脚本,在您允许的前提下,可能会包含在溪流 WarKey 中发布。
    最后,本版本只是一个预览版,没有做界面,也没有包含完整的功能,仅用来测试脚本,如果用于实际游戏请谨慎,以免因为功能尚不完善造成您的操作失误。
    


    2楼2010-05-10 10:34
    回复