Skip to content

HealthBar

Поставляется вместе с визуальным префабом, отображающим простую полоску жизни над персонажем. С помощью простого скрипта FollowCameraRotation всегда поворачивается, так чтобы из основной камеры был виден текст. Сама логика класса HealtBar описан ниже и может также использоваться в другом префабе с другой жудожественной стилистикой.

Image

Ссылка на юнити canvas-изображение (UnityEngine.UI.Image) визуальной полоски. Его свойство Image.fillAmount используется как отображение оставшегося "количества жизни".

Text

Ссылка на юнити canvas-текст (UnityEngine.UI.Text) внутри визуальной полоски. В качестве текста (свойство .text) помещается процент "оставшейся жизни" (если ShowPercentage == true) или абсолютное число.

ShowText

bool ShowText

Отображать ли в качестве текста "оставшиеся количество жизни". По умолчанию = false, а текст может использовать например, для отображения имени агента.

CurrentHealth

MaxValue CurrentHealth

Позволяет указать текущие значение Current, помнит прошлое значение Previous, рассчитывает процент Percentage от максимума Maximum.

public class MaxValue
{
    public float Current; 
    public float Previous;
    public float Maximum;
    public float Percentage { get { return Current * 100 / Maximum; } }

    public MaxValue(float argCurrentValue, float argPreviousValue, float argMaximumValue)
    {
    Current = argCurrentValue; Previous = argPreviousValue; Maximum = argMaximumValue;
    }
}

ChangeHealth()

ChangeHealth(MaxValue argCurrentHealth)

Изменить текущие и прошлое значения "оставшейся жизни". Запускает кароутин, который с заданной скоростью (AnimationSpeed) анимирует движение полоски "жизни" при повреждении/лечении.