コード例 #1
0
ファイル: Simulation.cs プロジェクト: JMS-1/Jump-And-Run
        /// <summary>
        /// Beendet die Spielsimulation.
        /// </summary>
        /// <param name="ergebnis">Das Ergebnis des Spiels.</param>
        public void UnterbrechenOderBeenden( SimulationsStand ergebnis )
        {
            // Prüfen
            if (ergebnis == SimulationsStand.Läuft)
                throw new ArgumentException( "ergebnis" );

            // Nur, wenn wir  aktiv sind
            if (m_stand != SimulationsStand.Läuft)
                return;

            // Zeitgeber stoppen
            using (m_ticker)
                m_ticker = null;

            // Gesamtzeit ermitteln
            m_zeitBasis = VerbrauchteZeit;

            // Zustand ändern
            m_stand = ergebnis;

            // Veränderung melden
            SpielZustandVerändert();
        }
コード例 #2
0
ファイル: Simulation.cs プロジェクト: JMS-1/Jump-And-Run
        /// <summary>
        /// Beginnt mit der Spielsimulation.
        /// </summary>
        public void StartenOderFortsetzen()
        {
            // Nur, wenn wir nicht aktiv sind
            if (m_stand != SimulationsStand.Angehalten)
                return;

            // Startzeit dieses Laufs
            m_letzerStart = DateTime.UtcNow;

            // Zustand ändern
            m_stand = SimulationsStand.Läuft;

            // Zeitgeber starten
            using (m_ticker)
                m_ticker = new Timer( SimulationAusführen, new object(), TimeSpan.Zero, TimeSpan.FromMilliseconds( 10 ) );

            // Veränderung melden
            SpielZustandVerändert();
        }