罗技鼠标 if (if eventt == "M_RELEASED" and arg == 3) then 什么意思 中间的M_RELEA

您现在的位置:&>>&&>>&
罗技鼠标宏+脚本大型傻瓜教程
文章来源:网络
发布时间: 22:17:43
作者:网络
罗技鼠标宏+脚本大型傻瓜教程
  在玩家询问D3中是否允许使用宏按键的帖子中,暴雪对宏按键作了回复,原帖地址[暴雪关于D3中使用宏按键的态度]
  It does't matter what device or program is used. If it performs a task that automates portions of the game, it could be in violation of the Terms of Use/End User License Agreement and result in an account closure, if detected. I can not give you permission to use any such device or application. If you choose to use it, you do it at your own risk.
  翻译:不管你用的是硬件设备还是程序,当他自动执行游戏中的一些操作的时候,这就有可能违反用户协议,如果被检测到就会导致帐户封停。我不会说这类硬件或是程序是被许可使用的。如果你想用的话,你必须自己承担可能的风险。
  No one's going to be banned for using a macro keyboard or any macro-capable device or application as long as they don't use them to automate gameplay. If that's detected, and I'm not even saying it can be detected, it would be a violation of the Terms of Use.
  翻译:没人会因为使用硬件设备或者程序宏功能被封号,只要他们不用硬件设备或者程序自动游戏。如果自动游戏被检测到,我甚至不说它可以被检测到,这将是违反使用条款的。
  至于我这帖子说的内容是不是automate gameplay,那就见仁见智了
  楼主坐标美服,属于手残到极点的玩家,没这个脚本根本不能愉快的玩耍,反正我是会一直用到afk的
  为方便程序员同学们,下面先贴脚本:
  Code lua:
  ---- click utilities ----
  modifier_check_table={
  ["shift"] = function() return IsModifierPressed("shift") end,
  ["lshift"] = function() return IsModifierPressed("lshift") end,
  ["rshift"] = function() return IsModifierPressed("rshift") end,
  ["ctrl"] = function() return IsModifierPressed("ctrl") end,
  ["lctrl"] = function() return IsModifierPressed("lctrl") end,
  ["rctrl"] = function() return IsModifierPressed("rctrl") end,
  ["alt"] = function() return IsModifierPressed("alt") end,
  ["lalt"] = function() return IsModifierPressed("lalt") end,
  ["ralt"] = function() return IsModifierPressed("ralt") end,
  ["numlock"] = function() return IsKeyLockOn("numlock") end,
  ["capslock"] = function() return IsKeyLockOn("capslock") end,
  ["scrolllock"] = function() return IsKeyLockOn("scrolllock") end,
  ["mouseleft"] = function() return IsMouseButtonPressed(1) end,
  ["mousemid"] = function() return IsMouseButtonPressed(2) end,
  ["mouseright"] = function() return IsMouseButtonPressed(3) end,
  mouse_map={
  ["mouseleft"] = 1,
  ["mousemid"] = 2,
  ["mouseright"] = 3,
  lock_keys={
  ["scrolllock"] = 1,
  ["capslock"] = 1,
  ["numlock"] = 1,
  function is_on(flag, true_callback, false_callback)
  if modifier_check_table[flag]() then
  if true_callback ~= nil then
  true_callback()
  return true
  if false_callback ~= nil then
  false_callback()
  return false
  function is_off(flag, true_callback, false_callback)
  return not is_on(flag, false_callback, true_callback)
  function release_list(keys)
  for i, key in ipairs(keys) do
  if mouse_map[key] == nil then
  ReleaseKey(key)
  ReleaseMouseButton(mouse_map[key])
  function release(...)
  release_list(arg)
  function callback_release(...)
  function callback()
  release_list(arg)
  return callback
  function press(...)
  for i, key in ipairs(arg) do
  if mouse_map[key] == nil then
  PressKey(key)
  PressMouseButton(mouse_map[key])
  function click(...)
  for i, key in ipairs(arg) do
  if mouse_map[key] == nil then
  PressAndReleaseKey(key)
  PressAndReleaseMouseButton(mouse_map[key])
  function set_on_list(keys)
  for i, key in ipairs(keys) do
  if lock_keys[key] ~= nil then
  if is_off(key) then
  click(key)
  release(key)
  press(key)
  function set_on(...)
  set_on_list(arg)
  function callback_set_on(...)
  function callback()
  set_on_list(arg)
  return callback
  function set_off_list(keys)
  for i, key in ipairs(keys) do
  if lock_keys[key] ~= nil then
  if is_on(key) then
  click(key)
  release(key)
  function set_off(...)
  set_off_list(arg)
  function callback_set_off(...)
  function callback()
  set_off_list(arg)
  return callback
  function callback_set_off_map(key_cd_map)
  function callback()
  for key, cd in pairs(key_cd_map) do
  if cd == -1 then
  set_off(key)
  return callback
  ---- cooldown click functions ----
  key_times={}
  function last_key_time(key_code)
  last_key=key_times[key_code]
  if (last_key == nil) then
  -- return a large negative number to prevent cooldown
  return -
  return last_key
  function cd_click(key_code, cd)
  curr_time = GetRunningTime()
  if curr_time - last_key_time(key_code) &= cd then
  click(key_code)
  key_times[key_code] = GetRunningTime()
  return true
  return false
  function check_cooldown(key_code, cd)
  curr_time = GetRunningTime()
  if curr_time - last_key_time(key_code) &= cd then
  return true
  return false
  ---- D3 specific functions ----
  function loop_operations(key_cd_map)
  for key, cd in pairs(key_cd_map) do
  if cd == -1 then
  set_on(key)
  while true do
  for key, cd in pairs(key_cd_map) do
  if cd ~= -1 then
  cd_click(key, cd)
  Sleep(50)
  if is_off("shift", callback_set_off_map(key_cd_map)) then
  return
  function switch_operations(key_cd_map)
  for key, cd in pairs(key_cd_map) do
  if cd == -1 then
  set_on(key)
  set_on("capslock")
  while true do
  for key, cd in pairs(key_cd_map) do
  if cd ~= -1 then
  cd_click(key, cd)
  Sleep(100)
  if is_off("scrolllock", callback_set_off_map(key_cd_map)) then
  caps_on = is_on("capslock")
  if caps_on ~= running then
  running = caps_on
  if running then
  for key, cd in pairs(key_cd_map) do
  if cd == -1 then
  set_on(key)
  for key, cd in pairs(key_cd_map) do
  if cd == -1 then
  set_off(key)
  set_off("capslock")
  -- 此处是shift控制的脚本
  -- 用--关掉不需要的按键
  -- 其他按键 = 号后的数字表示按键间隔的毫秒数,500 即 0.5 秒
  -- 用 -1 表示此键一直按住
  -- mouseleft表示鼠标左键
  -- mouseright表示鼠标右键
  -- 这个脚本表示 一直按住1,每2.5秒按一次2,3.5秒按一次3,1秒按一次4,0.5秒按一次鼠标左键,不按右键
  function shift_example()
  loop_operations({
  ["1"] = -1,
  ["2"] = 2500,
  ["3"] = 3500,
  ["4"] = 1000,
  ["mouseleft"] = 500,
  -- ["mouseright"] = 500,
  -- 此处是scrolllock控制的脚本
  -- 用--关掉不需要的按键
  -- 其他按键 = 号后的数字表示按键间隔的毫秒数,500 即 0.5 秒
  -- 用 -1 表示此键一直按住
  -- mouseleft表示鼠标左键
  -- mouseright表示鼠标右键
  -- 这个脚本表示 一直按住1,每0.5秒按一次234
  function scrolllock_example()
  switch_operations({
  ["1"] = -1,
  ["2"] = 500,
  ["3"] = 500,
  ["4"] = 500,
  -- ["mouseleft"] = -1,
  -- ["mouseright"] = 500,
  function OnEvent(event, arg)
  OutputLogMessage("event = %s, arg = %s\n", event, arg)
  -- 此处 arg == 8 将 8 替换为你刚才分配了 scrolllock 键的按键编号
  if (event == "MOUSE_BUTTON_PRESSED" and arg == 8) then
  scrolllock_example()
  -- 此处 arg == 3 将 3 替换为你刚才分配了 shift 键的按键编号
  if (event == "MOUSE_BUTTON_PRESSED" and arg == 3) then
  shift_example()
  首先,介绍一下这个脚本的功能:
  脚本启动时,会自动按住你设定的技能(通常是主力输出技能),并以一定的间隔点击你设定的其他技能(通常是buff,每个技能的间隔彼此独立)
  脚本启动的方式有两种:
  1. 当你按住鼠标上某个键时启动,松开时关闭
  2. 以鼠标上某个键作为开关,按一下启动,再按一下关闭
  2.1 功能2同时提供一个高级功能,那就是脚本启动状态下(键盘上scroll lock灯亮),你手动按键盘的caps lock把灯熄灭,脚本进入暂停状态,此时不会按住,但是会继续放buff,主要作用是小米停下来捡东西。。
  这脚本能做到什么呢,我拿丹弩手雷的猎魔刷大米,进去的时候开脚本,全程只需要按右键翻滚,打完boss关脚本。。。
  好,现在进入正题:
  当然,你得有一个罗技G系列游戏鼠标,然后在这个链接下载鼠标驱动(或者自行搜索“Logitech 游戏软件”):
  [.cn/zh_cn/software/lgs]
  (楼主为啥不做别的鼠标?因为只握得惯罗技,家里只有罗技……雷蛇全系列我都觉得太扁。有人赞助开发设备我可以做一个)
  /read.php?&tid=[攻略心得] 罗技鼠标宏+脚本大型傻瓜教程(3月24日更新2.0)
[h][color=red]NGA免责声明[/color][/h] [quote][b][color=red]使用宏及脚本的风险请自行承担,NGA将不会对其后果负任何责任[/color][/b][/quote][h][color=red]暴雪D3官方观点和理解[/color][/h] [quote]在玩家询问D3中是否允许使用宏按键的帖子中,暴雪对宏按键作了回复,原帖地址[url=http://us.battle.net/forums/en/d3/topic/][b]暴雪关于D3中使用宏按键的态度[/b][/url][color=blue]It does't matter what device or program is used. If it performs a task that automates portions of the game, it could be in violation of the Terms of Use/End User License Agreement and result in an account closure, if detected. I can not give you permission to use any such device or application. If you choose to use it, you do it at your own risk.[/color][b]翻译[/b]:[color=red]不管你用的是硬件设备还是程序,当他自动执行游戏中的一些操作的时候,这就有可能违反用户协议,如果被检测到就会导致帐户封停。我不会说这类硬件或是程序是被许可使用的。如果你想用的话,你必须自己承担可能的风险。[/color][color=blue]No one's going to be banned for using a macro keyboard or any macro-capable device or application [b]as long as they don't use them to automate gameplay[/b]. If that's detected, and I'm not even saying it can be detected, it would be a violation of the Terms of Use.[/color][b]翻译[/b]:[color=red]没人会因为使用硬件设备或者程序宏功能被封号,只要他们不用硬件设备或者程序自动游戏。如果自动游戏被检测到,我甚至不说它可以被检测到,这将是违反使用条款的。[/color][/quote]至于我这帖子说的内容是不是automate gameplay,那就见仁见智了楼主坐标美服,属于手残到极点的玩家,没这个脚本根本不能愉快的玩耍,反正我是会一直用到afk的[b]2.0版已更新, 1.0版脚本备份与功能介绍见[/b][url]/read.php?pid=[/url][b]2.0功能说明[/b]2.0更新内容:[quote]删除了“按住某个键启动,松开时关闭”功能。做出强制移动之后,我自己已经彻底放弃原来的用法了,你们试一下就知道了使用例子见[url]/read.php?pid=[/url]非常适合的build包括:不洁榴弹,不洁多重,圣光锤,塔套电刑其他可用的build还有:掠夺集束,暗影三刀,玉魂,旋风蛮[b]新功能:鼠标左键强制移动[/b][list][*] 当你按住鼠标左键时,人物会进行强制移动。此时会松开原本被脚本按下的键(例如攻击技能),并且不会自动点击左键,直到你放开鼠标左键为止[*] 如果你将鼠标左键设定为“始终按下”,那么强制移动功能不会启用[*] 强制移动大大提升在怪堆里移动的方便程度,但是导致捡东西/点塔/过门变得更加困难[*] 强制移动状态下切出游戏回到桌面偶尔会导致罗技鼠标驱动进程崩溃,并且空格键被锁定为按下状态。解决方案:在你的桌面放一个罗技鼠标驱动快捷方式,如果出现问题,使用win+d切换到桌面,然后双击快捷方式重启驱动,再回到游戏。[/list][b]改进功能:脚本暂停[/b][list][*] 现在当你按下ctrl,按下alt,或是点亮caps lock时(满足三者任意一个条件即可),脚本进入“暂停”状态,并在条件不满足时自动回到执行状态。[*] “暂停”状态的脚本仍然会点击那些你设定了点击间隔的按键[*] “暂停”状态的脚本会松开所有你设定为“始终按下”的按键[*] “暂停”状态的脚本不会触发强制移动功能[/list][/quote]脚本功能:[quote]你可以设置脚本,设定一部分按键为“始终按下”(通常是主力输出技能),另一些按键为“以一定的间隔点击”(通常是buff,每个技能的间隔彼此独立),并且配置一个强制移动键。脚本以鼠标上某个键作为开关,并以scroll lock键作为指示,按一下启动,再按一下关闭。(脚本暂时不支持mac,因为mac没有scroll lock键...)脚本启动时,会自动按住你设定为“始终按下”的技能,并以设定的间隔点击你设定的其他技能。脚本提供暂停和强制移动功能(见上述2.0更新内容)。[/quote]强制移动键设置:[img]./mon_/8uQ2g-hd43Z1hT3cS11t-ii.png[/img]此处设置为空格键,也可以改为其他键,见代码里的注释先放出2.0脚本(如何配置在后面):[code=lua]function print(name, value)
OutputLogMessage(&%s = %s\n&, tostring(name), tostring(value))end---- click utilities ----modifier_check_table={
[&shift&] = function() return IsModifierPressed(&shift&) end,
[&lshift&] = function() return IsModifierPressed(&lshift&) end,
[&rshift&] = function() return IsModifierPressed(&rshift&) end,
[&ctrl&] = function() return IsModifierPressed(&ctrl&) end,
[&lctrl&] = function() return IsModifierPressed(&lctrl&) end,
[&rctrl&] = function() return IsModifierPressed(&rctrl&) end,
[&alt&] = function() return IsModifierPressed(&alt&) end,
[&lalt&] = function() return IsModifierPressed(&lalt&) end,
[&ralt&] = function() return IsModifierPressed(&ralt&) end,
[&numlock&] = function() return IsKeyLockOn(&numlock&) end,
[&capslock&] = function() return IsKeyLockOn(&capslock&) end,
[&scrolllock&] = function() return IsKeyLockOn(&scrolllock&) end,
[&mouseleft&] = function() return IsMouseButtonPressed(1) end,
[&mousemid&] = function() return IsMouseButtonPressed(2) end,
[&mouseright&] = function() return IsMouseButtonPressed(3) end,}mouse_map={
[&mouseleft&] = 1,
[&mousemid&] = 2,
[&mouseright&] = 3,}lock_keys={
[&scrolllock&] = 1,
[&capslock&] = 1,
[&numlock&] = 1,}function is_on(flag, true_callback, false_callback)
if modifier_check_table[flag]() then
if true_callback ~= nil then
true_callback()
return true
if false_callback ~= nil then
false_callback()
return false
endendfunction is_off(flag, true_callback, false_callback)
return not is_on(flag, false_callback, true_callback)endfunction release_list(keys)
for i, key in ipairs(keys) do
if mouse_map[key] == nil then
ReleaseKey(key)
ReleaseMouseButton(mouse_map[key])
endendfunction release(...)
release_list(arg)endfunction callback_release(...)
function callback()
release_list(arg)
return callbackendfunction press(...)
for i, key in ipairs(arg) do
if mouse_map[key] == nil then
PressKey(key)
PressMouseButton(mouse_map[key])
endendfunction click(...)
for i, key in ipairs(arg) do
if mouse_map[key] == nil then
PressAndReleaseKey(key)
PressAndReleaseMouseButton(mouse_map[key])
endendfunction set_on_list(keys)
for i, key in ipairs(keys) do
if lock_keys[key] ~= nil then
if is_off(key) then
click(key)
release(key)
press(key)
endendfunction set_on(...)
set_on_list(arg)endfunction set_off_list(keys)
for i, key in ipairs(keys) do
if lock_keys[key] ~= nil then
if is_on(key) then
click(key)
release(key)
endendfunction set_off(...)
set_off_list(arg)endfunction set_on_map(key_cd_map)
for key, cd in pairs(key_cd_map) do
if cd == -1 then
set_on(key)
endendfunction set_off_map(key_cd_map)
for key, cd in pairs(key_cd_map) do
if cd == -1 then
set_off(key)
endendfunction callback_set_on(...)
function callback()
set_on_list(arg)
return callbackendfunction callback_set_on_map(key_cd_map)
function callback()
set_on_map(key_cd_map)
return callbackendfunction callback_set_off(...)
function callback()
set_off_list(arg)
return callbackendfunction callback_set_off_map(key_cd_map)
function callback()
set_off_map(key_cd_map)
return callbackend---- cooldown click functions ----key_times={}function last_key_time(key_code)
last_key=key_times[key_code]
if (last_key == nil) then
-- return a large negative number to prevent cooldown
return last_keyendfunction cd_click(key_code, cd)
curr_time = GetRunningTime()
if curr_time - last_key_time(key_code) &= cd then
click(key_code)
key_times[key_code] = GetRunningTime()
return true
return false
endendfunction check_cooldown(key_code, cd)
curr_time = GetRunningTime()
if curr_time - last_key_time(key_code) &= cd then
return true
return false
endend---- D3 specific functions ----function click_key_cd_map(key_cd_map, avoid_map)
for key, cd in pairs(key_cd_map) do
-- only click when avoid_map[key] is nil or false
if cd ~= -1 and (avoid_map == nil or not avoid_map[key])then
cd_click(key, cd)
endendfunction edge_trigger(old_val, new_val, up_func, down_func)
if old_val ~= new_val then
if new_val then
down_func()
return new_valendfunction switch_operations(key_cd_map, replace_key)
set_off(&capslock&)
set_on_map(key_cd_map)
running = true
replace_mouseleft = false
replace_enabled = replace_key ~= nil and key_cd_map[&mouseleft&] ~= -1
while true do
avoid_map = {
[&mouseleft&] = replace_mouseleft,
click_key_cd_map(key_cd_map, avoid_map)
if is_off(&scrolllock&, callback_set_off_map(key_cd_map)) then
running = edge_trigger(
not (is_on(&ctrl&) or is_on(&alt&) or is_on(&capslock&)),
callback_set_on_map(key_cd_map),
callback_set_off_map(key_cd_map)
if replace_enabled then
replace_mouseleft = edge_trigger(
replace_mouseleft,
running and is_on(&mouseleft&),
callback_set_on(replace_enabled),
callback_set_off(replace_enabled)
if replace_enabled then
set_off(replace_enabled)
set_off(&capslock&)endfunction switch_operations(key_cd_map, replace_key)
set_off(&capslock&)
set_on_map(key_cd_map)
running = true
do_replace = false
enable_replace = replace_key ~= nil and key_cd_map[&mouseleft&] ~= -1
while true do
avoid_map = {
[&mouseleft&] = do_replace,
click_key_cd_map(key_cd_map, avoid_map)
if is_off(&scrolllock&, callback_set_off_map(key_cd_map)) then
running = edge_trigger(
not (is_on(&ctrl&) or is_on(&alt&) or is_on(&capslock&)),
callback_set_on_map(key_cd_map),
callback_set_off_map(key_cd_map)
if enable_replace then
do_replace = edge_trigger(
do_replace,
running and is_on(&mouseleft&),
callback_set_on(replace_key),
callback_set_off(replace_key)
if enable_replace then
set_off(replace_key)
set_off(&capslock&)end-- 此处是scrolllock控制的脚本-- 用--关掉不需要的按键-- 其他按键 = 号后的数字表示按键间隔的毫秒数,500 即 0.5 秒-- 用 -1 表示此键一直按住-- mouseleft表示鼠标左键-- mouseright表示鼠标右键-- 这个脚本表示 一直按住1,每0.5秒按一次34function scrolllock_example()
switch_operations({
[&1&] = -1,
-- [&2&] = 500,
[&3&] = 500,
[&4&] = 500,
-- [&mouseleft&] = -1,
-- [&mouseright&] = 500,
-- 此处spacebar表示将空格当作强制移动键
}, &spacebar&)endlast_release_switch=-1function OnEvent(event, arg)
OutputLogMessage(&event = %s, arg = %s\n&, event, arg)
-- 此处 arg == 8 将 8 替换为你刚才分配了 scrolllock 键的按键编号
if (arg == 8) then
if (event == &MOUSE_BUTTON_PRESSED&) then
if GetRunningTime()-last_release_switch &= 5 then
scrolllock_example()
if (event == &MOUSE_BUTTON_RELEASED&) then
last_release_switch=GetRunningTime()
end end[/code]下面是如何配置脚本:当然,你得有一个罗技G系列游戏鼠标,然后在这个链接下载鼠标驱动(或者自行搜索“Logitech 游戏软件”):[url].cn/zh_cn/software/lgs[/url](楼主为啥不做别的鼠标?因为只握得惯罗技,家里只有罗技……雷蛇全系列我都觉得太扁。有人赞助开发设备我可以做一个)装好驱动运行应该是这个样子(楼主是G602,不同型号的鼠标形状可能不同):[img]./mon_/b0Q2g-cSry-ku.png[/img]先点电脑图标(应该是默认选中的),点完应该看到显示“自动游戏检测”,然后点左面的大鼠标,进入下一个界面[img]./mon_/b0Q2g-j7fbZ1pT3cSry-ku.png[/img]然后我们可以给暗黑3设置专门的配置文件,这样我们添加的脚本和改键就不会影响平时的鼠标使用了。点加号新增配置文件:[img]./mon_/b0Q2g-jj08KxT1kSf1-d6.png[/img]这里点加号添加游戏程序,建议添加两个,把32位和64位程序都加上。我自己的电脑里路径如下:[img]./mon_/b0Q2g-5kpiK2iT3cSmc-cu.png[/img][img]./mon_/b0Q2g-936hK28T3cSlt-cz.png[/img]点确定回到刚才的界面,然后找一个顺手又不会误触的键作为脚本启动的开关。右键点击这个键,然后点“分配新命令”,把这个键分配成Scroll Lock。[img]./mon_/b0Q2g-gaioZ14T3cSis-do.png[/img][img]./mon_/b0Q2g-7bz2K1jT1kSgv-ju.png[/img]点确定回到刚才的界面,然后右键点击刚才创建的配置文件,点“编写脚本”。[img]./mon_/b0Q2g-cgdxZ18T3cSiz-hf.png[/img]把里面的脚本全部删除,用脚本的内容替换。拖到最下面,阅读绿字注释说明,按需要进行修改。改完以后记得ctrl+s保存,然后进入游戏即可启用脚本。[img]./mon_/8uQ2g-9y3oK2bT3cSm4-rt.png[/img]已知的bug: 有时候关掉脚本的时候关不掉caps lock,你要打字之前需要手动按一下。如果懂编程的同学可以自行随意修改。不懂编程的千万不要乱改,否则就不能运行了……=== 08:52===[size=150%]原帖超过修改时限,2.1版脚本见[url=][url]/read.php?&tid=&pid=&to=1[/url][/url][/size]2.1 更新内容:加入了对鼠标按键4/5的支持加入了对鼠标滚轮的支持加入了多个键控制不同脚本的例子添加了禁用强制移动功能的例子=== 09:01===[size=150%]原帖超过修改时限,2.1版脚本见[url=][url]/read.php?&tid=&pid=&to=1[/url][/url][/size]2.1 更新内容:加入了对鼠标按键4/5的支持加入了对鼠标滚轮的支持加入了多个键控制不同脚本的例子添加了禁用强制移动功能的例子=== 09:01===test
不小心发到猎魔区了。。这个能编辑么。。
嗯,略做改动就能用于奶僧了感谢楼主。
卧槽,真牛逼,谢谢楼主!
但是为啥要2套按键,是方便2个不同职业?
楼主你太强大了,虽然我没罗技鼠,但还是要支持呀。
谢谢楼主,对于我这种新手很有用,稍稍改改可以用于其他BD了。
[b]Reply to [pid=]Reply[/pid] Post by [uid=3558481]warrior_info[/uid] ( 08:52)[/b]方便不同的习惯开关式的给不耗能的技能用就很爽,但是如果耗能的技能,像多重这样,一会开一会关我就感觉很麻烦,不如按键式的
牛逼啊,楼主。好久没看到干货帖子了。
昨天看到你发帖问是不是该发,今天干货就来了,给666不怕你骄傲。
罗技g102是不是没法用脚本?我都没找到。
[b]Reply to [pid=]Reply[/pid] Post by [uid=]我怎能不hentai[/uid] ( 11:25)[/b]我搜G102能搜出来一个G102 Prodigy ,那个鼠标是可以的,但我怀疑罗技还有旧版的G102...
试了一下,shift的那个要按住才能循环执行,scrolllock那个按一下就能循环执行如果想让shift的那个也能按一下就循环执行的话应该怎么写,再写一个is_clicked()吗
[quote][pid=]Reply[/pid] [b]Post by [uid=]FXcoin[/uid] ( 13:01):[/b][b]Reply to [pid=]Reply[/pid] Post by [uid=]我怎能不hentai[/uid] ( 11:25)[/b]我搜G102能搜出来一个G102 Prodigy ,那个鼠标是可以的,但我怀疑罗技还有旧版的G102...[/quote]惭愧,找到了可以用。谢谢,还是要认真看图才能找到。
我能问一下,这个贴子算是NGA官方态度吗?那边贴蓝贴封了300多,这边就放个大招教别人怎么打擦边球。你这有点嚣张得不要不要的啊~~
[b]Reply to [pid=]Reply[/pid] Post by [uid=1282806]可能有暗伤[/uid] ( 13:53)[/b]人贵自知,请先搞清楚bot和宏的区别。
暴雪:你用脚本自动游戏了。玩家:瞎说,我分明每十分钟按了一下shift。暴雪:好吧,看在硬件厂商的面子上,你是对的。
[b]Reply to [pid=]Reply[/pid] Post by [uid=]FrozenPlace[/uid] ( 13:55)[/b]你这自知之明相当牵强啊,就跟偷牛的说:我只是捡了条绑在树上的绳子,谁想到绳子那头有头牛。
[b]Reply to [pid=]Reply[/pid] Post by [uid=1282806]可能有暗伤[/uid] ( 13:57)[/b]真正的自动游戏是可以自动进大米自动寻路自动打怪自动复活自动升级宝石自动完成任务自动修装备自动分解硫磺的[s:a2:你为猴这么]
多谢楼主,楼主辛苦了。
先收藏再学习,给楼主赞一个

我要回帖

更多关于 js event 鼠标位置 的文章

 

随机推荐