Beispiel #1
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();
    }