[AS3]as3的flash游戏处理键盘连招事件处理
[AS3]as3的flash游戏处理键盘连招事件处理
[AS3]as3的flash游戏处理键盘连招事件处理
参考了一个外国人的博客,和天地会一个兄弟的代码。http://rss.9ria.com/?p=2905
引用一下原文:
“大家应该玩过KOF(拳王),连招都是高手们的玩意。最近,我参考国外的代码,自己写了这个组合键类库。可以实现组合键的各种要求,例如连招、同时按下几 个键等等。我还添加了一个功能,就是:可以规定按键之间的时间间隔,当玩家连招时,两次按键之间超过了这个时间间隔,就判断该连招无效。”
而我这个方案,不但可以开出连招,还加入了“双击”功能,例如双击右键,角色就可以跑起来~~~
- package
- {
- import flash.display.Sprite;
- import flash.events.Event;
- import flash.events.KeyboardEvent;
- import flash.text.TextField;
- import flash.ui.Keyboard;
- import keyboard.KKeyAction;
- import keyboard.KSameTimeComboManager;
- import keyboard.KSequenceComboManager;
- public class ComboKeyEvent extends Sprite
- {
- private var sequenceComboManager:KSequenceComboManager;
- private var sameTimeComboManager:KSameTimeComboManager;
- public function ComboKeyEvent()
- {
- sequenceComboManager = new KSequenceComboManager(this.stage,
400, KSequenceComboManager.KEY_UP_DOWN_MODE);- sameTimeComboManager = new KSameTimeComboManager(this.stage, 200);
- var a:Vector.<KKeyAction> = new Vector.<KKeyAction>;
- a.push(new KKeyAction(Keyboard.D, KeyboardEvent.KEY_DOWN));
- a.push(new KKeyAction(Keyboard.D, KeyboardEvent.KEY_UP));
- a.push(new KKeyAction(Keyboard.D, KeyboardEvent.KEY_DOWN));
- a.push(new KKeyAction(Keyboard.D, KeyboardEvent.KEY_UP));
- sequenceComboManager.addSequenceCombo(a, run);
- var b:Vector.<uint> = new Vector.<uint>;
- b.push(Keyboard.J);
- b.push(Keyboard.K);
- sameTimeComboManager.addSameTimeCombo(b, jump);
- }
- private function run():void
- {
- trace("run run run");
- }
- private function jump():void
- {
- trace("jump jump jump jump ");
- }
- }
- }
热门文章推荐
- [HLS]做自己的m3u8点播系统使用HTTP Live Streaming(HLS技术)
- [FMS]FMS流媒体服务器配置与使用相关的介绍
- [AS3]什么是M3U8,与HTML5的区别是什么
- AS2.0 让flash自适应全屏,并且不自动缩放
- [AS3]as3.0的sound类常用技巧整理
- [AS3]as3与ByteArray详解、ByteArray介绍、ByteArray用法
- 关于RTMP,RTMPT,RTMPS,RTMPE,RTMPTE协议的介绍
- [JS]分享浏览器弹出窗口不被拦截JS示例
请稍候...