91 if ( value <= 0 )
throw new ArgumentException(
"Interval cannot be zero or negative!" );
97 catch (OverflowException)
160 public object Tag {
get;
set; }
164 #region Public methods
183 public Timer(
double interval) : this()
194 public Timer(
double interval, Action onTimeout) : this(interval)
220 public static void SingleShot(
double seconds, Action onTimeout )
234 public static Action
Limit( Action action,
double seconds )
237 bool allowInvoke =
true;
241 limiter.
Timeout += () => allowInvoke =
true;
324 timers.ForEach(t => { t.Enabled =
false; });
376 foreach ( var timer
in timers )
378 if ( isUpdated( timer ) )
Mittari, joka mittaa double-tyyppisiä arvoja. Sidottavissa näyttöihin, kuten ValueDisplay ja BarGa...
Mittari, joka mittaa int-tyyppisiä arvoja. Sidottavissa näyttöihin, kuten ValueDisplay ja BarGauge...
void Reset()
Palauttaa mittarin arvon oletusarvoonsa.
ValueType MaxValue
Mittarin suurin sallittu arvo. Kun mittari saavuttaa tämän arvon, laukeaa tapahtuma UpperLimit.
ValueType Value
Mittarin arvo.
ValueType DefaultValue
Mittarin oletusarvo.
ValueType MinValue
Mittarin pienin sallittu arvo. Kun mittari saavuttaa tämän arvon, laukeaa tapahtuma LowerLimit.
Synkroninen lista, eli lista joka päivittyy vasta kun sen Update-metodia kutsutaan....
Ajastin, joka voidaan asettaa laukaisemaan tapahtumia tietyin väliajoin.
object Tag
Vapaasti asetettava muuttuja. Arvo ei muutu, jos sitä ei muuteta.
IntMeter Times
Määrää, kuinka monta kertaa tapahtuma suoritetaan. Kun tapahtumaa on suoritettu tarpeeksi,...
bool Enabled
Ajastin päällä/pois päältä.
static void ClearAll()
Poistaa kaikki ajastimet.
DoubleMeter SecondCounter
Sekuntilaskuri. Voidaan sitoa näyttöihin.
static void UpdateTimer(Timer timer, TimeSpan dt)
static Action Limit(Action action, double seconds)
Rajoittaa aliohjelman toimintaa niin, että se voidaan suorittaa vain tietyin väliajoin.
static void UpdateAll(Time time, Predicate< Timer > isUpdated)
static void SingleShot(double seconds, Action onTimeout)
Kutsuu aliohjelmaa onTimeout annetun ajan kuluttua. Ajastin luodaan automaattisesti.
Timer(double interval, Action onTimeout)
Alustaa uuden ajastimen ja asettaa sille tapahtuma-aikavälin sekä aliohjelman, jota kutsutaan TimeOut...
Timer(double interval)
Alustaa uuden ajastimen ja asettaa sille ajan sekunneissa, jonka välein TimeOut tapahtuu.
double Interval
Aika sekunneissa, jonka välein TimeOut tapahtuu.
void Start(int times)
Käynnistää ajastimen, rajoittaa suorituskerrat.
bool IgnorePause
Ajastin ei pysähdy vaikka peli pysäytettäisiin.
static SynchronousList< Timer > timers
void LimitTimes(int numTimes)
void Stop()
Pysäyttää ajastimen ja nollaa sen tilan.
double CurrentTime
Menossa oleva hetki nollasta väliaikaan (Interval).
static Timer CreateAndStart(double interval, Action onTimeout)
Luo ja käynnistää uuden ajastimen tietyllä tapahtuma-aikavälillä sekä aliohjelmalla,...
static void UpdateAll(Time time)
void Pause()
Pysäyttää ajastimen tallentaen sen tilan.
Action Timeout
Tapahtuu väliajoin.
Timer()
Alustaa uuden ajastinluokan.
void Start()
Käynnistää ajastimen.
void Reset()
Nollaa ajastimen tilan. Myös suorituskerrat nollataan.
bool? TimesLimited
Ajastimen suorituskertojen rajoitus päälle/pois.
double SecondCounterStep
Kuinka monta sekuntia sekuntilaskuri laskee yhden sekunnin aikana. Oletus on 1. Arvolla 2 laskuri las...
Sisältää tiedon ajasta, joka on kulunut pelin alusta ja viime päivityksestä.
TimeSpan SinceLastUpdate
Aika joka on kulunut viime päivityksestä.