首页  韩国资源  酷站加油  我的展厅  设计名站  古典元素  推荐下载  设计欣赏  每周专访  招募精英  人才专区  网页教程  平面设计  编程开发  设计竞赛
当前位置:首页 > 网页教程 > Flash教程 > 正文
Google
用AS3实再FLASH游戏的上下左右移动
来源:闪吧 作者:ycccc8202(春叶飘零) 2007年11月23日 16:41 网友评论:0条 点击:
发一个按键无按钮的,按下的时候不进行帧的检测,省资源,AS3制作的。试试效果:

/UploadTeach/200711/20071121114725849.swf

//Key.as:
package CYPL.Game{
import flash.display.InteractiveObject;
import flash.events.KeyboardEvent;
import flash.events.Event;
public class Key {
  private static  var keyObj:Object;
  private static  var io:InteractiveObject;
  private static  var keyTestHandler:Function;
  public static function init(io:InteractiveObject,keyTestHandler:Function):void {
   Key.io=io;
   Key.keyTestHandler=keyTestHandler;
   keyObj=new Object  ;
   io.addEventListener(KeyboardEvent.KEY_DOWN,keyDownHandler);
   io.addEventListener(KeyboardEvent.KEY_UP,keyUpHandler);
  }
  public static function isDown(key:int):Boolean {
   return !!keyObj[key];
  }
  private static function keyDownHandler(e:KeyboardEvent):void {
   keyObj[e.keyCode]=true;
   io.addEventListener(Event.ENTER_FRAME,keyTestHandler);
  }
  private static function keyUpHandler(e:KeyboardEvent):void {
   delete keyObj[e.keyCode];
   keyObjHasProperty()?removeKeyTestHandler():null;
  }
  private static function keyObjHasProperty():Boolean {
   for each (var j:Boolean in keyObj) {
    if (j) {
     return false;
    }
   }
   return true;
  }
  private static function removeKeyTestHandler():void {
   io.removeEventListener(Event.ENTER_FRAME,keyTestHandler);
  }
  public static function get KeyObj():Object {
   return Key.keyObj;
  }
}
}
使用:
import CYPL.Game.Key;
var box:Sprite;
with (box=Sprite(addChild(new Sprite))) {
graphics.beginFill(0xff0000);
graphics.drawRect(100,100,100,100);
}
Key.init(stage,keyTestHandler);
function keyTestHandler(e:Event) {
if (Key.isDown(Keyboard.LEFT)) {
  box.x-=5;
}
if (Key.isDown(Keyboard.RIGHT)) {
  box.x+=5;
}
if (Key.isDown(Keyboard.DOWN)) {
  box.y+=5;
}
if (Key.isDown(Keyboard.UP)) {
  box.y-=5;
}
}
附件下载:key.rar
上一篇:通过实例学习AS3.0(五)   下一篇:FLASH CS3中的FLA形式组件制作教程
收藏此页】【打印】【关闭
 相关文章  我要点评
·腾讯所有游戏停止运营三天
·拥有重力的弹性小球(as3.0)
·高清晰游戏场景壁纸
·FLASH推箱子游戏分析(as2.0)
·网页游戏磨砺10余年迎来第二春
·百度游戏娱乐平台上线
·红杉首度投资网页游戏公司51wan.com
·网龙举办首届全国游戏动漫设计大赛

免责声明:本站刊载此文不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。对本文有任何异议,请联络:68design#163.com
转载要求:作者及来源信息必需保留。转载之图片、文件,链接请不要盗链到本站,且不准打上各自站点的水印。



关于我们 | 在线反馈 | 广告报价 | 友情链接 | 联系我们 | 免责声明 | 在线投稿 | 网站地图
Copyright © 2003-2007 68design.net, All Rights Reserve 【找网页设计师,当然上网页设计师联盟】