原文地址:http://www.rocket5studios.com/tutorials/make-a-2d-game-with-unity3d-using-only-free-tools-part-4/
原版翻譯,轉載請註明出處:http://blog.csdn.net/ariel7321/article/details/7816370
本篇文章中,我們將創建一個可以被撿起的物體,並完成計分系統,然後再添加一個文本界面,用來顯示分數、生命和關卡。
點擊這裏查看本節完成後的效果:點我!
添加計分和拾取物腳本
到目前爲止,咱們的遊戲還不錯啊——主角可以移動、爬梯子以及沿着繩子攀巖。現在我們來添加拾取物“金庫”和一個界面,這個界面記錄着分數、主角生命和當前的關卡級別。
- Download scoring and pickup scripts,下載後解壓。
- 將 Scoring.cs 和 Pickup.cs 拷貝到項目的Assets/Scripts目錄下。
對腳本進行修改
- 打開 xa.cs,取消註釋掉下面一行:
public static Scoring sc;
- 在Start函數裏,取消註釋下面一行:
sc = (Scoring)(this.gameObject.GetComponent("Scoring"));
- 打開Player.cs,找到OnTriggerEnter function函數(256行),然後取消註釋下面一段代碼:
if (other.gameObject.CompareTag("Pickup"))
{
if (other.GetComponent<Pickup>())
{
other.GetComponent<Pickup>().PickMeUp();
xa.sc.Pickup();
}
}
製作拾取物精靈
- 將Orthello –> Objects –> Sprites下的Sprite拖放到Hierarchy 或Scene中,重命名爲“pickup”。
- 將OT –> Containers下的level對象拖放到Sprite Container中。
- 將 “Frame Index”改爲16.
- 將Scale裏的x、y改爲1。
調整下碰撞
- 這個精靈是個正方形,但是我們只希望只有當玩家碰到它的白色部分才能撿起它。
- 勾選Collidable ,給精靈添加碰撞檢測。
- 點擊Physics 旁的下拉菜單,選擇Custom。
- 在Box Collider下面,將Center Y改爲-0.15, Size X改爲0.8,Size Y 改爲0.5. 保留Size Z 爲 0.4。
設置標籤
- 我們需要標記拾取物,這樣當玩家碰到它時纔會觸發它碰撞。
- 通過 Edit –> Project Settings –> Tags創建一個新的Tag
- 將新Tag命名爲“Pickup”
- 點選pickup對象,在Tags旁的下拉菜單裏選擇“Pickup”
添加腳本,並將其改爲Prefab
- 將Pickup.cs腳本拖放到pickup對象上
- 將pickup對象拖放到Prefabs文件夾中
根據前面幾節學的知識,將pickup對象放到磚地上吧。如果你根據我的步驟做的,你應該看到下圖結果:
添加界面上的文字
待續。。。