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) анимирует движение полоски "жизни" при повреждении/лечении.