作成中のゲームについてサポートが必要です。私は Unity エンジンを使用してゲームを作成しており、C# コーディングは初めてです。プレーヤーが正方形の色を制御し、特定の色のオブジェクトを通過するときに正しい色に変更する必要がある 2D ゲームを作成しています。プレーヤーの色が大きく変化し、オブジェクトがトリガーになります。プレイヤーが正しい色でない場合にトリガーを通過すると、プレイヤーは死亡します。それは完璧に機能しますが、オブジェクトが死亡したプレイヤーの色に関係なく、最初のオブジェクトに対してのみ次のオブジェクトが死亡します。if ステートメントで if を試してみましたが、それ以外の場合はわかりません。あなたの助けは大歓迎です!
プレイヤーコードはこちら
void OnTriggerEnter (Collider other)
{
if (other.transform.tag == "Blue") {
blue = true;
}
else {
blue=false;
}
if (other.transform.tag == "Red") {
red = true;
}
else {
red =false;
}
if (other.transform.tag == "Blue" && GameObject.Find ("Blue").GetComponent<Blue> ().mb == false) {
yield return 0;
Die ();
} else if (other.transform.tag == "Red" && GameObject.Find ("Red").GetComponent<Red> ().mr == false) {
Die ();
}
}
以下は、異なる色のオブジェクトごとのコードです。これはたまたま青です。
void Update () {
if (GameObject.Find ("Player").GetComponent<Movement> ().blue == true && GameObject.Find ("Player").GetComponent<Movement> ().playerBlue == true) {
mb = true;
} else {
mb = false;
}
if (!GameObject.Find("Player").GetComponent<Movement>().blue) {
mb = false;
}
}