点击这里给我发消息 点击这里给我发消息
首页 > 行业资讯 > flash>详细内容

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

添加时间:2010-1-5
    相关阅读: flash 制作

点击这里下载源文件

 首先:将背景改成大小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);
}
}
}


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

本文作者:
咨询热线:020-85648757 85648755 85648616 0755-27912581 客服:020-85648756 0755-27912581 业务传真:020-32579052
广州市网景网络科技有限公司 Copyright◎2003-2008 Veelink.com. All Rights Reserved.
广州商务地址:广东省广州市黄埔大道中203号(海景园区)海景花园C栋501室
= 深圳商务地址:深圳市宝源路华丰宝源大厦606
研发中心:广东广州市天河软件园海景园区 粤ICP备05103322号 工商注册