Jypeli 10
The simple game programming library
Time.cs
Siirry tämän tiedoston dokumentaatioon.
1using System.ComponentModel;
2using Microsoft.Xna.Framework;
3
4namespace Jypeli
5{
6 public partial class Game
7 {
8 // Real time passed, including paused time
9 private static Time currentRealTime = new Time();
10
11 // Game time passed
12 private static Time currentTime = new Time();
13
17 public bool IsPaused { get; set; }
18
24 public static Time Time
25 {
26 get { return currentTime; }
27 }
28
34 public static Time RealTime
35 {
36 get { return currentTime; }
37 }
38
43 public void Pause()
44 {
46 }
47
51 public void ClearTimers()
52 {
54 }
55
59 protected virtual void PausedUpdate( Time time )
60 {
61 foreach ( var layer in Layers )
62 {
63 // Update the UI components only
64 layer.Objects.Update( time, o => o is Widget );
65 }
66
67 Timer.UpdateAll( time, t => t.IgnorePause );
68 }
69
74 protected virtual void Update( Time time )
75 {
76 this.Camera.Update( time );
77 Layers.Update( time );
78 Timer.UpdateAll( time );
79 UpdateHandlers( time );
81 }
82
87 [EditorBrowsable( EditorBrowsableState.Never )]
88 protected override void Update( GameTime gameTime )
89 {
91 {
92 // No updates until both LoadContent and Begin have been called
93 base.Update( gameTime );
94 return;
95 }
96
97 currentRealTime.Advance( gameTime );
98
99#if ANDROID
100 if (IsActive && !VirtualKeyboard.Visible)
101#else
102 if (IsActive)
103#endif
105
106 /*if ( DataStorage.IsUpdated )
107 DataStorage.Update( currentRealTime );*/
108
109 // The update in derived classes.
110 if ( !IsPaused )
111 {
112 currentTime.Advance( gameTime );
113 this.Update( currentTime );
114 }
115 else
116 {
117 this.PausedUpdate( currentRealTime );
118 }
119
121
122 base.Update( gameTime );
123 }
124 }
125}
Kamera. Määrittää mikä osa pelitasosta on kerralla näkyvissä.
Definition: Camera.cs:40
void Update(Time time)
Ajetaan kun pelitilannetta päivitetään.
Definition: Camera.cs:414
bool loadContentHasBeenCalled
Definition: Game.cs:51
static Time RealTime
Todellinen peliaika. Sisältää tiedon siitä, kuinka kauan peliä on pelattu (Time.SinceStartOfGame) ja ...
Definition: Time.cs:35
static Time Time
Peliaika. Sisältää tiedon siitä, kuinka kauan peliä on pelattu (Time.SinceStartOfGame) ja kuinka kaua...
Definition: Time.cs:25
override void Update(GameTime gameTime)
Ajetaan kun pelin tilannetta päivitetään.
Definition: Time.cs:88
virtual void PausedUpdate(Time time)
Ajetaan Updaten sijaan kun peli on pysähdyksissä.
Definition: Time.cs:59
void UpdateDebugScreen(Time time)
Definition: DebugScreen.cs:151
void UpdateControls(Time gameTime)
Definition: Controls.cs:150
virtual void Update(Time time)
Ajetaan kun pelin tilannetta päivitetään. Päivittämisen voi toteuttaa perityssä luokassa toteuttamall...
Definition: Time.cs:74
bool beginHasBeenCalled
Definition: Game.cs:52
void ExecutePendingActions()
bool IsPaused
Onko peli pysähdyksissä.
Definition: Time.cs:17
void ClearTimers()
Poistaa kaikki ajastimet.
Definition: Time.cs:51
SynchronousList< Layer > Layers
Kerrokset, joilla pelioliot viihtyvät.
Definition: Layers.cs:14
void UpdateHandlers(Time time)
Kutsuu tapahtumankäsittelijöitä.
Definition: Events.cs:127
void Pause()
Asettaa pelin pauselle, tai jatkaa peliä. Toimii samoin kuin IsPaused-ominaisuus
Definition: Time.cs:43
static Time currentTime
Definition: Time.cs:12
static Time currentRealTime
Definition: Time.cs:9
Ajastin, joka voidaan asettaa laukaisemaan tapahtumia tietyin väliajoin.
Definition: Timer.cs:38
static void ClearAll()
Poistaa kaikki ajastimet.
Definition: Timer.cs:322
static void UpdateAll(Time time)
Definition: Timer.cs:366
Käyttöliittymän komponentti.
Definition: Appearance.cs:6
Sisältää tiedon ajasta, joka on kulunut pelin alusta ja viime päivityksestä.
Definition: Time.cs:14