private void MainLoop() { long newTime = stopwatch.ElapsedTicks; delta = newTime - currentTimeEntity.TotalTime.Ticks; currentTimeEntity = new TimeEntity(TimeSpan.FromTicks(delta), TimeSpan.FromTicks(newTime)); RaiseUpdate(new TimedEventArgs { TimeEntity = currentTimeEntity }); Dispatcher.CurrentDispatcher.BeginInvoke(new EmptyEventHandler(MainLoop), DispatcherPriority.ApplicationIdle, null); }
public override void Update(DynamicDataDisplay.Visualization3D.MainLoops.TimeEntity timeEntity) { for (int i = 0; i < numProjectiles; i++) { if (!projectiles[i].Update(timeEntity)) { projectiles[i] = new Projectile( explosionParticleSystem, smokeParticleSystem, projectileParticleSystem, GeneratePosition(), (float)r.NextDouble()); } } this.projectileParticleSystem.Update(timeEntity); this.explosionParticleSystem.Update(timeEntity); this.smokeParticleSystem.Update(timeEntity); }
public TimeManager() { currentTimeEntity = new TimeEntity(TimeSpan.FromMilliseconds(0), TimeSpan.FromMilliseconds(0)); }