Игрок начинает с 3 сердцами [0], если он получает урон, теряет одно сердце и меняет текстуру на 2 червей 1, если он выиграет одно дополнительное червь обратно в текстуру [0].. Если у вас только одно червь [2] и вы получите травму, игра закончится.
Этот код работает отлично, но я хотел бы преобразовать его в изображение холста пользовательского интерфейса. Как мне это сделать?
Код: Выделить всё
using UnityEngine;
using System.Collections;
public class Hearts : MonoBehaviour {
public Texture2D[]initialHeart;
private int hearts;
private int currentHearts;
// Use this for initialization
void Start () {
GetComponent().texture = initialHeart[0];
hearts = initialHeart.Length;
}
// Update is called once per frame
void Update () {
}
public bool TakeHeart()
{
if (hearts < 0) {
return false;
}
if (currentHearts < (hearts - 1)) {
currentHearts += 1;
GetComponent ().texture = initialHeart [currentHearts];
return true;
} else {
return false;
}
}
public bool AddHeart() {
if (currentHearts > 0) {
currentHearts -= 1;
GetComponent ().texture = initialHeart [currentHearts];
return true;
} else {
return false;
}
}
}
Посмотрите, что происходит:
В инспекторе объектов HealthBar я поместил 3 сердечка в качестве изображения (первое изображение прилагается). Но когда я захожу в скрипт и пытаюсь выбрать изображения, которые будут изменены в соответствии с прогрессом пользователя, мне не разрешено использовать только изображения, объекты (второе изображение прилагается).


Подробнее здесь: https://stackoverflow.com/questions/369 ... nvas-index
Мобильная версия