Example #1
0
 void Update()
 {
     if (Input.GetButtonDown("Red"))
     {
         cameraPos.position = Vector3.Lerp(cameraPos.position, redPos.position, 10);
         Yellow.GetComponent <YellowController>().yellowInPlay = false;
         Green.GetComponent <GreenController>().greenInPlay    = false;
         Blue.GetComponent <BlueController>().blueInPlay       = false;
         Red.GetComponent <RedController>().redInPlay          = true;
     }
     if (Input.GetButtonDown("Yellow"))
     {
         cameraPos.position = Vector3.Lerp(cameraPos.position, yellowPos.position, 10);
         Yellow.GetComponent <YellowController>().yellowInPlay = true;
         Green.GetComponent <GreenController>().greenInPlay    = false;
         Blue.GetComponent <BlueController>().blueInPlay       = false;
         Red.GetComponent <RedController>().redInPlay          = false;
     }
     if (Input.GetButtonDown("Green"))
     {
         cameraPos.position = Vector3.Lerp(cameraPos.position, greenPos.position, 10);
         Yellow.GetComponent <YellowController>().yellowInPlay = false;
         Green.GetComponent <GreenController>().greenInPlay    = true;
         Blue.GetComponent <BlueController>().blueInPlay       = false;
         Red.GetComponent <RedController>().redInPlay          = false;
     }
     if (Input.GetButtonDown("Blue"))
     {
         cameraPos.position = Vector3.Lerp(cameraPos.position, bluePos.position, 10);
         Yellow.GetComponent <YellowController>().yellowInPlay = false;
         Green.GetComponent <GreenController>().greenInPlay    = false;
         Blue.GetComponent <BlueController>().blueInPlay       = true;
         Red.GetComponent <RedController>().redInPlay          = false;
     }
     if (Input.GetKeyDown(KeyCode.R))
     {
         SceneManager.LoadScene("SampleScene");
     }
 }
Example #2
0
    /// <summary>
    /// Verbindungen herstellen
    ///
    /// Die GameObjects, die die drei Leuchten der Ampel
    /// ausgeben werden als eine Hierarchie erwartet.
    /// Die Wurzel heißt "Ampel", und die drei Leuchten
    /// wie zu erwarten "Rot", "Gelb" und "Grün". Sie werden
    /// mit <code>GameObject.Find</code> mit ihrem Namen, z.b.
    /// "Ampel/Rot", abgefragt.
    /// </summary>
    private void Awake()
    {
        // Das Subject erzeugen und die View-Klasse registrieren
        Model = new TrafficLight(TimeForStop, TimeForWait,
                                 TimeForGo, TimeForAttention,
                                 StateStop.Instance,
                                 LogOutput);
        Model.Attach(this);

        // Wir suchen nach GameObjects mit den Namen
        // Rot, Gelb, Grün, die Kinder des GameObjects
        // mit dem Namen Ampel.
        Red    = GameObject.Find("Ampel/Rot");
        Yellow = GameObject.Find("Ampel/Gelb");
        Green  = GameObject.Find("Ampel/Grün");

        // Materialkomponenten dieser GameObjects abfragen
        RedMaterial    = Red.GetComponent <Renderer>().material;
        YellowMaterial = Yellow.GetComponent <Renderer>().material;
        GreenMaterial  = Green.GetComponent <Renderer>().material;

        // Materialien aus den Resourcen laden
        TrafficColors();
    }