宜昌本地软件开发与弱电工程服务商
项目咨询 · 快速响应

[AS3]as3中键盘按键控制影片拖动源代码实例

2016-10-13 00:16:48 点击量:78 标签: 收藏本文

[AS3]as3中键盘按键控制影片拖动源代码实例

  1. package 
  2. { 
  3.     import flash.display.Sprite; 
  4.     import flash.events.Event; 
  5.     import flash.events.KeyboardEvent; 
  6.     import flash.events.TimerEvent; 
  7.     import flash.utils.Timer; 
  8.     import flash.utils.getTimer; 
  9.      
  10.     public class Main extends Sprite 
  11.     {     
  12.         var mascot:Bo = new Bo(); 
  13.         var leftArrow:Boolean = false; 
  14.         var rightArrow:Boolean = false; 
  15.         var upArrow:Boolean = false; 
  16.         var downArrow:Boolean = false; 
  17.          
  18.         public function Main():void 
  19.         { 
  20.             init(); 
  21.         } 
  22.         private function init():void 
  23.         { 
  24.             this.addChild(mascot); 
  25.             stage.addEventListener(KeyboardEvent.KEY_DOWN,downs); 
  26.             stage.addEventListener(KeyboardEvent.KEY_UP,ups); 
  27.             stage.addEventListener(Event.ENTER_FRAME,moves); 
  28.         } 
  29.          
  30.         public function downs(e:KeyboardEvent):void 
  31.         { 
  32.             if(e.keyCode == 37) 
  33.             { 
  34.                 leftArrow = true; 
  35.             } 
  36.             else if(e.keyCode == 38) 
  37.             { 
  38.                 upArrow = true; 
  39.             } 
  40.             else if(e.keyCode == 39) 
  41.             { 
  42.                 rightArrow = true; 
  43.             } 
  44.             else if(e.keyCode == 40) 
  45.             { 
  46.                 downArrow = true; 
  47.             } 
  48.         } 
  49.          
  50.         public function ups(e:KeyboardEvent):void 
  51.         { 
  52.             if(e.keyCode == 37) 
  53.             { 
  54.                 leftArrow = false; 
  55.             } 
  56.             else if(e.keyCode == 38) 
  57.             { 
  58.                 upArrow = false; 
  59.             } 
  60.             else if(e.keyCode == 39) 
  61.             { 
  62.                 rightArrow = false; 
  63.             } 
  64.             else if(e.keyCode == 40) 
  65.             { 
  66.                 downArrow = false; 
  67.             } 
  68.         } 
  69.          
  70.         public function moves(e:Event):void 
  71.         { 
  72.             var speed:Number = 15; 
  73.              
  74.             if(leftArrow && upArrow) 
  75.             { 
  76.                 mascot.x -= speed; 
  77.                 mascot.y -= speed; 
  78.             } 
  79.              
  80.             if(leftArrow) 
  81.             { 
  82.                 mascot.x -= speed; 
  83.             } 
  84.             else if(upArrow) 
  85.             { 
  86.                 mascot.y -= speed; 
  87.             } 
  88.              
  89.             if(rightArrow && downArrow) 
  90.             { 
  91.                 mascot.x += speed; 
  92.                 mascot.y += speed; 
  93.             } 
  94.              
  95.             if(rightArrow) 
  96.             { 
  97.                 mascot.x += speed; 
  98.             } 
  99.             else if(downArrow) 
  100.             { 
  101.                 mascot.y += speed; 
  102.             } 
  103.         } 
  104.          
  105.     } 
  106. }