我正在编写一个《魔兽世界》插件,希望插件能够根据按键或按键组合执行某些功能。现在大多数按键状态都是受保护的WoW API函数,但以下函数仍可被插件使用:
IsAltKeyDown()
IsControlKeyDown()
IsShiftKeyDown()
我希望能够根据任何一个按下的键或其中的组合执行函数。
目前已经实现了以下功能:
function KeyCombos()
total = 0
if IsShiftKeyDown() then
total = total + 1
end
if IsControlKeyDown() then
total = total + 2
end
if IsAltKeyDown() then
total = total + 4
end
end
现在我的问题并不是关于Lua的,因为上面的函数已经可以工作了,我可以检查总数是否等于6,例如检查Control和Alt是否同时按下。我的问题更多的是算法问题。有没有更好的方法来进行编程?