Im Versuch, es so eine Tür in der Einheit zu machen, öffnet sich, wenn Sie 20 Münzen gesammelt haben. und dann öffnet es sich, wenn Sie es berühren. aber aus irgendeinem Grund. Wenn ich es mit 0, 1, 2 usw. Münzen berühre, öffnet es sich immer noch. Wie verhindere ich das?Offene Tür, wenn mehr als 20 Münzen
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class Player_Controller : MonoBehaviour {
public float speed;
public Text countText;
private Rigidbody rb;
private int count;
public float volume;
public Text eye;
AudioSource audio;
void Start()
{
audio = GetComponent<AudioSource>();
rb = GetComponent<Rigidbody>();
count = 0;
SetCountText();
eye.text = "";
}
void FixedUpdate()
{
float moveHorizonal = Input.GetAxis("Horizontal");
float moveVertical = Input.GetAxis("Vertical");
Vector3 movement = new Vector3(moveHorizonal, 0.0f, moveVertical);
rb.AddForce(movement * speed);
}
void OnTriggerEnter(Collider other)
{
if (other.gameObject.CompareTag("pickup"))
{
audio.Play(); //Play it
other.gameObject.SetActive(false);
count = count + 1;
SetCountText();
}
else if (other.gameObject.CompareTag("pickup2"))
{
audio.Play(); //Play it
other.gameObject.SetActive(false);
count = count + 10;
SetCountText();
}
else if (other.gameObject.CompareTag("eye"))
{
audio.Play(); //Play it
other.gameObject.SetActive(false);
count = count + 9999999;
SetCountText();
}
else if (other.gameObject.CompareTag("door") && count <= 20)
{
other.gameObject.SetActive(false);
count = 0;
}
}
void SetCountText()
{
countText.text = "Count: " + count.ToString();
if (count >= 9001)
{
eye.text = "You hit the bull's eye! ALL THE POINTS!";
}
}
}
Update: Ich habe das falsche Zeichen hier verwendet. die < soll> sein. aber das Problem ist jetzt, dass, da es ein Auslöser ist, Sie durch rollen. Wie kann ich es solide machen, aber immer noch ein Auslöser?
Ja, dachte ich, ich habe so etwas falsch. aber das Ding ist jetzt. Dass ich durch die Tür rollen kann, egal ob ich die 20 Punkte habe oder nicht. Ich weiß, das ist, weil es ein Auslöser ist. Gibt es also einen Weg, um einen Auslöser noch Kollisionen zu machen? –
@MichaDeHaan Ich fürchte, ich bin nicht in der Lage, diese Frage zu beantworten. Ich würde empfehlen, hier zu suchen/sie als separate Frage zu stellen; Ich habe gerade ein C# -Problem gesehen: P – Clint
Eigentlich habe ich es herausgefunden: Ich musste nur ein Kind an die solide Tür anhängen. Seit dem Entfernen des Elternteils werden auch alle Childs entfernt. trotzdem danke! –