Unity3d官方案例之Flappy Bird(下篇)
在上篇中我们完成了背景布置以及小鸟的操控,本篇我们先完善一下UI再进行滚动背景和障碍添加的讲解。
游戏UI 制作
1、在Hierarchy中右键创建Text,重命名为ScoreText。
2、选中ScoreText,更改Text Component中的属性:
· 将Text修改为Score: 0(非必要,因为在后面我们会在脚本中修改,这里修改只是为了更直观地调整UI位置和观察效果);
· 点击Font更改字体为LuckiestGuy;
· Alignment设置为Center和Middle;
· Color设置为白色(255,255,255,255);
有可能会出现Text内容没有显示出来的情况,这时候你可以调整Font Size属性或者调整Rect Transform Component中的Height属性或者将Text Component下的Horizontal Overflow和Vertical Overflow设置为Overflow即可。
3、选中ScoreText,调整Rect Transform Component中的Anchor
` 按着Shift和Alt,选择Center Bottom;
· 调整一下Font Size和Pos Y,自己觉得差不多即可。
4、选中ScoreText,右键Duplicate拷贝两份,分别重命名为GameOverText和RestartText,
5、同时选中GameOverText和RestartText,修改他们的RectTransform为Center Top(跟上面的一样,同时按着Shift和Alt),然后将RestartText拖拽到GameOverText上,让RestartText成为GameOverText的子物体。调整两个Text的Font size和Pos Y以及Text内容,完成后如图所示:
6、在Hierarchy中右键创建新的空物体命名为GameManager,并添加新C# Script,命名为GameManager,双击Script编辑:
这里我们要实现的功能室:
· 更新得分
· Bird Die后弹出GameOver UI,玩家点击画面后重新加载场景。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.SceneManagement;
public class GameManager : MonoBehaviour {
public static GameManager instance; // single instance
public GameObject gameOverText; // game over UI
public Text scoreText; // score text
private bool gameOver = false;