- 最后登录
- 2022-10-8
- 注册时间
- 2010-12-6
- 阅读权限
- 100
- 积分
- 14150
- 纳金币
- 76544
- 精华
- 23
|
步骤7:控制角色运动状态YellowPlanet_07.as 包含本节描述的代码。
本节描述的概念与开发任何其它 Flash 游戏使用的概念类似。 在本步骤中,我们的目的是让宇航员能够跳过 Y 轴。
由于宇航员位于容器对象的内部,所以无论容器的方位如何变化均无关紧要。 宇航员总是沿着其自己的 Y 轴上下移动。在完成这一步骤之后,你需要更新游戏的逻辑。 为了管理游戏播放的流程,添加一些状态变量非常必要。 此外,你必须添加函数gameLogics 以便在播放游戏过程中更新所有游戏状态。
管理状态和游戏变量
添加下列给出的代码以便实现一些游戏逻辑。 为了控制宇航员角色的行为,你需要保存角色的状态。 此外,为了控制宇航员的动量,你必须添加一个名称为 jumpValue 的新变量。 // Game logics variables.private var state:String = "***n";private var jumpValue:Number = 0;
使用 gameLogics 方法
在每次 Update 重复操作时均调用 gamesLogic 方法。 gamesLogic方法能够核查宇航员的状态。 如有必要,你可以修改游戏行为以改变其工作方式。 例如,如果用户按下 Space 键,则它将激活FireEmiter 并且更新角色的动画效果。 下面是一个范例:
private function gameLogics():void{ switch( state ) { case "***n":if ( Input3D.keyHit( Input3D.SPACE ) ){ jumpValue = 4;fireEmiter.emitParticlesPerFrame= 25;state = "jump";container.gotoAndPlay( "jump",3 );}break;case "jump":if ( astronaut.y == 0 ){ state = "***n";container.gotoAndPlay( "***n", 3 );}break;}}
|
|