Unity   C# 血條效果

 

  • 此篇效果 –血條效果 * * * * 

 

 

-  接下來進入完整教學   -

 

 

一、首先新增一個Image UI並將它命名為"HealthBar",並將其Height改成"10",再將它的顏色改成黑色

1.    設定HealthBar的寬度為100高度為10

 

2.    更改HealthBar的顏色為黑色



3.     HealthBar在場景中的樣子

 

二、接下來我們複製"HealthBar"並將其命名為"Hurt"(Hurt會將HealthBar蓋過去),並將"Hurt"的顏色改成紅色,並將HurtAnchors改成middle/left

1.    修改Hurt的顏色為紅色

2.    將HurtAnchors改成middle/left(記得要按住Shift再點選)

3.     Hurt在場景中的樣子

 

三、接下來我們複製 "HealthBar" 並將其命名為 "Lifepoint" (Hurt會將HealthBar蓋過去),並將 "LifePoint"   的顏色改成綠色

1.    將  "  LifePoint 的顏色改成   綠色

2.     Hierarchy中的UI

3.     三個UI在場景中的樣子(Lifepoint會蓋過上面兩個)

 

四、接下來我我們新增一段程式碼叫做 "healthBar" ,並加下列程式碼貼在裡面

 

using System.Collections;

using System.Collections.Generic;

using UnityEngine;

 

public class healthBar : MonoBehaviour {

    //血量設定

    public const int maxHealth = 100;

    public int currentHealth = maxHealth;

    //血量條

    public RectTransform HealthBar,Hurt;

    void Update()

    {

        //按下H鈕扣血

        if (Input.GetKeyDown(KeyCode.H))

        {

            //接受傷害

            currentHealth = currentHealth - 10;

        }

        //將綠色血條同步到當前血量長度

        HealthBar.sizeDelta = new Vector2(currentHealth, HealthBar.sizeDelta.y);

        //呈現傷害量

        if (Hurt.sizeDelta.x > HealthBar.sizeDelta.x)

        {

            //讓傷害量(紅色血條)逐漸追上當前血量

            Hurt.sizeDelta += new Vector2(-1, 0)*Time.deltaTime*10;

        }

    }

}

 

五、編輯完成後,我們在場景中新增一個空物件,並將其命名為"HealthController",然後將"HealthBar"程式碼新增給HealthController

 

六、"HealthBar"程式碼新增給HealthController後,我們將剛剛做好HealthBar   與Hurt血條拖曳進"HealthBar"程式碼的對應欄位中

 

七、做到這一步我們大致上就完成囉,接下來按下play後再按下H鍵進行測試即可。

 

 

 

-------------------------------------------------------------------------------------------------------------------------------------

 

我們有粉絲專頁囉!!!       

如果怕有問題連絡不到我們,歡迎隨時私訊FB粉專哦!!!

https://www.facebook.com/Straying2018/

 

●     如果這篇文章有幫助到您,希望您能留言給予我們鼓勵 !  

●     對於文章有任何的建議,非常歡迎留言告訴我們哦 !!!  

●     有任何想知道的功能也歡迎告訴我們,我們會盡快寫成部落格分享給大家 !

 

- By Alex -

 

arrow
arrow

    『迷途』 發表在 痞客邦 留言(3) 人氣()