首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Flash >

从浅到深学习Flash制作赛车游戏教程

2012-11-23 
由浅入深学习Flash制作赛车游戏教程?赛车游戏我们总是遇到!今天给大家简单讲解一下。 先测试效果:[urlhttp

由浅入深学习Flash制作赛车游戏教程

?赛车游戏我们总是遇到!今天给大家简单讲解一下。
先测试效果:
[url=http://www.webjx.com/download.php?url=http://www.webjx.com/upfiles/20070517/20070517114146_webjx_com_1.fla]
[1b]点击这里下载源文件[/1b]
[/url]
首先新建立一个赛车影片剪辑,由6个图层组成一个基本的赛车。放到舞台上的时候命名实例名为car1。

然后根据上面的车,制作一个赛车阴影影片剪辑。拖放到舞台上的时候命名实例名为shadow1。

然后建立一个新的空的影片剪辑。拖放到舞台上的时候命名实例名stepper。

然后选中该空影片剪辑输入下面代码:
onClipEvent(load){
?speed1 = 0;
}
onClipEvent(enterFrame){
?_root.step(1);
}
然后新建立一个层Action,输入下面代码:
function step(who) {
?//check to see if the car in question is controlled by the player or by the computer
?if (_root["car"+who].code == "player") {
??//we will constantly decrease speed by multiplying it with a number below 1
??if (this["speed"+who]>0.3) {
???this["speed"+who] *= _root.speedDecay;
??} else {
???this["speed"+who] = 0;
??}
??//the car will react to certain keys
??//accelerate
??if (Key.isDown(Key.UP) && this["speed"+who]0.3) {
???_root["car"+who]._rotation -= _root.rotationStep*(this["speed"+who]/_root.maxSpeed);
??}
??//steer right
??if (Key.isDown(Key.RIGHT) && this["speed"+who]>0.3) {
???_root["car"+who]._rotation += _root.rotationStep*(this["speed"+who]/_root.maxSpeed);
??}
??this["rotation"+who] = _root["car"+who]._rotation;
??//we calculate the two components of speed (X axis and Y axis)
??this["speedx"+who] = Math.sin(this["rotation"+who]*(Math.PI/180))*this["speed"+who];
??this["speedy"+who] = Math.cos(this["rotation"+who]*(Math.PI/180))*this["speed"+who]*-1;
??//apply the components on the actual position of the car
??_root["car"+who]._x += this["speedx"+who];
??_root["car"+who]._y += this["speedy"+who];
??//position the shadow of the car
??_root["shadow"+who]._x = _root["car"+who]._x-4;
??_root["shadow"+who]._y = _root["car"+who]._y+2;
??_root["shadow"+who]._rotation = _root["car"+who]._rotation;
本文转自:http://www.5uflash.com/flashjiaocheng/Flashyingyongkaifa/959.html

热点排行