键盘感应的Flash动画的制作方法

2008-04-02 10:36:36来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折


  首先:将背景改成大小300X301

  

  划一个坦克的形状:

  

  将他选中按F8变成影片剪辑。再新建一个影片剪辑第一帧是空白帧;代码:

  
stop();


  第二帧是这样的:

  

  新建一个影片剪辑,将两个东东从库里拖出来:

  

  那个小点点是开炮用的,将他命名huo。到了最关键的地方了,也是代码最长的地方。将刚做的MC拖入场景,输入代码:

  
onClipEvent (load) {

  Speed = 5;

  }

  onClipEvent (enterFrame) {

  if (Key.isDown(Key.LEFT) and !Key.isDown(Key.RIGHT)) {

  _x -= Speed;

  _rotation = 270;

  }

  if (Key.isDown(Key.RIGHT) and !Key.isDown(Key.LEFT)) {

  _x = Speed;

  _rotation = 90;

  }

  if (Key.isDown(Key.UP) and !Key.isDown(Key.DOWN)) {

  _y -= Speed;

  _rotation = 0;

  }

  if (Key.isDown(Key.DOWN) and !Key.isDown(Key.UP)) {

  _y = Speed;

  _rotation = 180;

  }

  if (Key.isDown(Key.LEFT) and Key.isDown(Key.UP) and !Key.isDown(Key.RIGHT) and !Key.isDown(Key.DOWN)) {

  _rotation = 315;

  }

  if (Key.isDown(Key.RIGHT) and Key.isDown(Key.UP) and !Key.isDown(Key.LEFT) and !Key.isDown(Key.DOWN)) {

  _rotation = 45;

  }

  if (Key.isDown(Key.LEFT) and Key.isDown(Key.DOWN) and !Key.isDown(Key.RIGHT) and !Key.isDown(Key.UP)) {

  _rotation = 225;

  }

  if (Key.isDown(Key.RIGHT) and Key.isDown(Key.DOWN) and !Key.isDown(Key.LEFT) and !Key.isDown(Key.UP)) {

  _rotation = 135;

  }

  if (_x<-5) {

  _x = 301;

  }

  if (_x>306) {

  _x = 0;

  }

  if (_y>305) {

  _y = 0;

  }

  if (_y<-5) {

  _y = 300;

  }

  if (Key.isDown(Key.SPACE)) {

  with (huo) {

  gotoAndPlay(2);

  }

  }

  }


  别怕怕,这么长的代码很简单。下面是注释过的代码:

  


  onClipEvent (load) {

  Speed = 5;

  //始初话Speed(本来想用Sp,一想是骂人,哈哈)

  }

  onClipEvent (enterFrame) {

  if (Key.isDown(Key.LEFT) and !Key.isDown(Key.RIGHT))//避免错误 {

  _x -= Speed;

  _rotation = 270;

  }

  if (Key.isDown(Key.RIGHT) and !Key.isDown(Key.LEFT)) //避免错误{

  _x = Speed;

  _rotation = 90;

  }

  if (Key.isDown(Key.UP) and !Key.isDown(Key.DOWN)) //避免错误{

  _y -= Speed;

  _rotation = 0;

  }

  if (Key.isDown(Key.DOWN) and !Key.isDown(Key.UP)) //避免错误{

  _y = Speed;

  _rotation = 180;

  }

  //下为配置_rotation的代码,只需复制更改一下即可

  if (Key.isDown(Key.LEFT) and Key.isDown(Key.UP) and !Key.isDown(Key.RIGHT) and !Key.isDown(Key.DOWN)) {

  _rotation = 315;

  }

  if (Key.isDown(Key.RIGHT) and Key.isDown(Key.UP) and !Key.isDown(Key.LEFT) and !Key.isDown(Key.DOWN)) {

  _rotation = 45;

  }

  if (Key.isDown(Key.LEFT) and Key.isDown(Key.DOWN) and !Key.isDown(Key.RIGHT) and !Key.isDown(Key.UP)) {

  _rotation = 225;

  }

  if (Key.isDown(Key.RIGHT) and Key.isDown(Key.DOWN) and !Key.isDown(Key.LEFT) and !Key.isDown(Key.UP)) {

  _rotation = 135;

  }

  //一下为转圈代码,为什么要加5呢,因为这5能够使其更自然一点

  if (_x<-5) {

  _x = 301;

  }

  if (_x>306) {

  _x = 0;

  }

  if (_y>305) {

  _y = 0;

  }

  if (_y<-5) {

  _y = 300;

  }

  //一下为开火,所以我刚才教您们做火

  if (Key.isDown(Key.SPACE)) {

  with (huo) {

  gotoAndPlay(2);

  }

  }

  }


  嗯,主要搞完了,美化一下.

  效果如下:

  

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇: FlashPlayer7安全策略解析

下一篇: 教您制作MTV体验精美flash动画