Unity 2D实战小游戏开发跳跳鸟 - 计分逻辑开发
上文对障碍物的碰撞逻辑进行了开发,接下来就是进行跳跳鸟成功穿越过障碍物进行计分的逻辑开发,同时将对应的分数以UI的形式显示告诉玩家。
计分逻辑
在跳跳鸟通过障碍物的一瞬间就进行一次计分,计分后会同步更新分数的UI显示来告知玩家当前获得的分数。
首先我们创建一个用于管理游戏计分逻辑的类叫GameScoreManager,这个类会对计分的逻辑做统一的处理。
通过障碍物计分逻辑
选中障碍物Obstacle预制体,在其上挂载一个BoxCollider 2D,并将其设置为Trigger,调整其位置在障碍物最末端,并设置大小参数为合适的数值,如下所示。
然后打开Obstacle脚本,在脚本中添加检测跳跳鸟通过触发器的检测事件OnTriggerEnter2D,并检测进入触发器的是Tag是玩家Player,并声明一个OnAddScore事件用来告诉类的外部需要加分,代码如下。
public event Action OnAddScore;
private void OnTriggerEnter2D(Collider2D other)
{
if (other.gameObject.CompareTag("Player&#