オブジェクトを破壊せずに、オブジェクトに衝撃を与えてゲームを終了することなく、プレイヤーをゲームの開始時にどこに開始したかに戻したい。私のプレイヤーは死ぬ前に3つのheartsを持っています。私のプレイヤーがheart(タグオブジェクトとの衝突後)を失ったとき、私はプレイヤーをゲームの始めにどこから始めたのかを再現したい。Unity2D:オブジェクトとの衝突後にプレイヤーを再獲得する
これは私のプレイヤーの健康コードです:
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);
}
}
}
だから、ありがとう一般的には、私のオブジェクトを衝突させた後、ゲームの開始時にプレイヤーを再開させたいのですが、ハートを失った後にゲームを再開したくないので、すべてのh耳が紛失したとき、ゲームが再開されます。
はあなたにその助けをありがとうございましたが、今、私は別の問題を抱えているのに役立ちます願ってい
と:プレイヤーの健康スクリプトでこのような何かを試してみてください私のプレーヤーは、それが最初にあった場所に戻った直後です。私のプレーヤーは、目的地に着くまで移動し続けます。私には分かりませんが、私はそれをもっと明確にしようとします。ありがとうございました:) –
正しい答えを記入してください。あなたが言っていることが分かりました。このためには、プレイヤーの移動スクリプトと一緒に別の質問を投稿する必要がありますので、私は詳細に答えることができます:) –
本当にありがとうございます:http://stackoverflow.com/questions/38533594/unity2d-player-continues 〜へ移動後彼はrespawns :) –