摩托皮卡 发表于 2024-5-15 00:39:46

使用IsLeftAltKeyDown()报错的问题

本帖最后由 摩托皮卡 于 2024-5-15 12:43 AM 编辑

脚本中我有这么写到if IsLeftAltKeyDown()==1 then
                local ct="恶魔,亡灵"
                if (BeeStringFind(UnitCreatureType("target"),ct) or BeeRange("target")>8) and BeeIsRun("驱邪术") then
                        BeeRun("/cast 驱邪术")
                end
      end
驱邪是放出来了,可是会报
attempt to call global 'IsLeftCtrlKeyDown' (a nil value)这个错误,使脚本运行中断,有没有高手解答一下怎么才能不报错

图片发不出,只能贴报错信息了

摩托皮卡 发表于 2024-5-15 09:51:54

本帖最后由 摩托皮卡 于 2024-5-15 09:53 AM 编辑

找到原因了,是在 IsLeftAltKeyDown() 为true里需要加return,否则后面语句再用到IsLeftAltKeyDown() 则会报错。或者只写一次IsLeftAltKeyDown,赋值给临时变量,后面重复使用这个临时变量。
然后顺便问一句,ctrl的函数是什么,我试了IsLeftCtrlKeyDown、IsLeftCtrKeyDown和IsCtrlKeyDown都无效

lsm05042211 发表于 2024-5-15 16:56:30

摩托皮卡 发表于 2024-5-15 09:51 AM
找到原因了,是在 IsLeftAltKeyDown() 为true里需要加return,否则后面语句再用到IsLeftAltKeyDown() 则会 ...

CTRL是缩写,要全拼,control

QQ_CAFE57 发表于 2024-5-18 23:07:12

IsLeftAltKeyDown
IsLeftControlKeyDown
IsLeftShiftKeyDown


IsLeftControlKeyDown()-如果当前按下左控制键,则返回true。

zlksdd 发表于 2024-5-20 11:15:23

IsAltKeyDown()
IsControlKeyDown()
IsShiftKeyDown()
魔兽世界3.35的里只有上面三个API函数,没有左右的说法
使用的方法
if IsAltKeyDown() then
......
end
就可以了
页: [1]
查看完整版本: 使用IsLeftAltKeyDown()报错的问题