【发布时间】:2016-07-22 14:21:34
【问题描述】:
我想在不破坏任何物体的情况下将我的玩家重生到他在游戏开始时开始的位置,并在与物体撞击后结束游戏。我的玩家死前有三个hearts。当我的玩家失去heart(与标签对象发生碰撞后)时,我想将我的玩家重新生成到他在游戏开始时开始的位置。
这是我播放器的健康码:
public class PlayerHealth : MonoBehaviour {
//Stats
public int curHealth;
public int maxHealth = 3;
void Start ()
{
curHealth = maxHealth;
}
void Update ()
{
if (curHealth > maxHealth) {
curHealth = maxHealth;
}
if (curHealth <= 0) {
Die ();
}
}
void Die ()
{
//Restart
Application.LoadLevel (Application.loadedLevel);
}
public void Damage(int dmg)
{
curHealth -= dmg;
}
}
而且这个脚本是用在我的对象上来伤害他(带走他的心)
public class Damage : MonoBehaviour {
private PlayerHealth player;
void Start ()
{
player = GameObject.FindGameObjectWithTag ("Player").GetComponent<PlayerHealth> ();
}
void OnTriggerEnter2D (Collider2D other)
{
if (other.CompareTag ("Player"))
{
player.Damage(1);
}
}
}
谢谢,所以总的来说,我想在与我的对象发生碰撞后将我的玩家重生到游戏开始时的位置,我不希望在失去一颗心后重新开始游戏我想继续直到所有的心都失去了,那就是游戏重新开始的时候。
【问题讨论】:
标签: unity3d