【9RIA—iloveas】— AS3游戏实用技巧(2):一行代码远离数字键盘上NumLock的困扰
本帖最后由 TKCB 于 2019-3-19 09:08 编辑转载:9RIA游戏开发者社区(天地会)
作者:iloveas(大神)
总目录:[原创]AS3游戏开发实用技巧汇总
昨天我给大家分享了键盘操作与中文输入法冲突的解决方案,该方法主要针对键盘中的英文按键。今天我再来讲讲右侧的数字键盘,在双人游戏中,2P(玩家2)的各种功能操作(如发射、出拳、防御、跳跃、使用技能等)一般都会集中在这一区域。
虽然这类按键一般不易受输入法的影响,但它们却存在另一个蛋疼的问题。如果数字键盘上方的NumLock灯处于熄灭的状态(不小心按了NumLock键,系统异常,一些软件的设置都有可能导致该灯被灭掉),那么问题就来了:原有的数字按键操作将会失效,因为此时的KeyboardEvent.keyCode和charCode都会被改掉(5和加减乘除这几个键除外)。
更蛋疼的是,如果游戏中用到了方向键,那么2468这四个数字键将会触发角色移动,此时玩家将会更加抓狂,好比错将油门当作刹车一样,你懂的。
这个问题有办法解决么?答案是肯定的,核心代码也是一行,只是后续的处理要比输入法的问题稍稍复杂一些,现分析如下:**** Hidden Message *****
按照国际惯例,为了让更多的人看到,我又设置了回复可见。
有时间的话,iloveas会持续更新这样的一些小技巧,欢迎继续关注!
这是TKCB根据格美的代码进行的一个小练习(我觉得还不错):
http://www.11ria.com/forum.php?mod=viewthread&tid=1494
看一看,学习下 学习学习,感谢分享
页:
[1]