Flash CS4三维游戏设计(赛车)(12)
时间:2016-11-25 19:00 来源:毕业论文 作者:毕业论文 点击:次
图3.7 遮罩层 图3.8 标题层 3.2.3 游戏流程图设计 本次设计的游戏包含了4个管理类,分别是:CarBase(赛车的基类)、ComCar(对应计算机赛车元件)、PlayerCar(对应玩家赛车元件)、RacingGame(对应游戏舞台)。赛车的基类这一部分需要考虑的是赛车在游戏中的特性即能前后左右移动即可,不应超过游戏场地的范围。计算机赛车元件是需要通过电脑来控制赛车的移动走向的,这是比较复杂的。而玩家赛车元件需要考虑的则是用户该用什么按键来控制赛车的方向即可。对应游戏舞台类是比较复杂的。CarBase、RacingGame类的程序流程图如图3.9、图3.10所示。 图3.9 ComCar类流程图 图3.10 RacingGame类流程图 3.2.4 游戏代码设计 (1) CarBase类的代码 玩家赛车和计算机赛车具有很多相同的特性: A 每辆赛车都可沿X或Z轴运动; B 当赛车沿X轴左右运动时,需要调整赛车的显示图像; C 当赛车碰撞是,需要向后退。 根据上面总结的这些特性,编写的CarBase类代码如下: package classes { import flash.display.MovieClip; public class CarBase extends MovieClip { private var m_nLastX:int=0; protected var m_nSpeedX:int=0; public var m_nSpeedZ:int=0; public function CarBase() { this.gotoAndStop(4); } public function MoveBack() { this.x=m_nLastX; } public function getSpeedZ():int { return m_nSpeedZ; } public function Logic() { if(m_nSpeedX<0) this.prevFrame(); if(m_nSpeedX>0) this.nextFrame(); if(m_nSpeedX==0) { if(this.currentFrame<4) this.nextFrame(); if(this.currentFrame>4) this.prevFrame(); } m_nLastX=this.x; this.x=this.x+m_nSpeedX; if(this.x<80) this.x=80; (责任编辑:qin) |