예제 #1
0
        internal virtual void InternalUpdate(object sender, FrameEventArgs e)
        {
            GS.Delta = (float)e.Time;
            GS.Total += (float)e.Time;

            InputMgr.Update();

            if(_currentFrame != null)
                _currentFrame.Update(GS.Delta);

            if(_nextFrame != null)
            {
                if(_currentFrame != null)
                    _currentFrame.Unload();
                _currentFrame = _nextFrame;
                _currentFrame.Load();
                _nextFrame = null;
            }
            #if DEBUG
            DiagnosticsCenter.Instance.Update(GS.Delta);
            if (InputMgr.Keyboard[Key.Tilde])
                if (DiagnosticsCenter.Instance.Visible) DiagnosticsCenter.Instance.Hide();
                else DiagnosticsCenter.Instance.Show();
            #endif
            Update();
        }
예제 #2
0
 public void SetFrame(GameFrame frame)
 {
     _nextFrame = frame;
 }