第二部分完善游戏逻辑和启动窗口画面
- 角色逻辑处理
- 改变角色动画
- 角色的碰撞检测
敌人场景需要敌人的刚体组件(RigidBody2D),动画图片(AnimationSprite),碰撞图形(CollisitionShape2D),可见控件(VisibilityNotifier2D)
敌人动画
敌人碰撞检测
敌人游戏逻辑
主场景需要3个计时器以及位置控件
- 敌人计时器(Timer)
随机出现敌人 - 分数计时器(Timer)
增加分数 启动计时器(Timer)
开始游戏位置控件(Position2D)
设置角色的初始位置
- 敌人计时器(Timer)
启动窗口画面需要一个消息计时器,两个Label控件,一个是分数显示的和显示游戏信息,最后一个开始按钮的Button空间
- 消息计时器Timer
改变分数计时器 - 分数控件 Label
显示分数 - 开始按钮 Button
启动游戏 - 消息显示 Label
显示游戏的信息
- 消息计时器Timer
以上是我们游戏需要用到的所有控件。现在接着上次我们还没有处理完角色的动画,在player脚本中,我们在创建一个新的函数为change_ani用来改变玩家的角色 。
首先我们要判断玩家的x不等于0 ,改变玩家动画左右翻转,如果y不等于0,就让角色动画上下翻转。如图1-1
然后我们在_process函数中将它连接起来。