コード例 #1
0
        public void Update(float delta)
        {
            if (Notifications.Count > 0 && _currentNotification == null)
            {
                _currentNotification          = Notifications.Dequeue();
                _currentNotification.IsActive = true;
            }

            if (_currentNotification != null)
            {
                _currentNotification.Update(delta);

                if (!_currentNotification.IsActive)
                {
                    _currentNotification = null;
                }
            }

            if (Editor.IsVisible)
            {
                Editor.Update(delta);
            }

            Vga.Update(delta);

            Memory.Poke(
                SystemMemoryAddresses.ShiftPressState,
                Keyboard.IsKeyDown(KeyCode.LeftShift) || Keyboard.IsKeyDown(KeyCode.RightShift)
                );

            Memory.Poke(
                SystemMemoryAddresses.CtrlPressState,
                Keyboard.IsKeyDown(KeyCode.LeftControl) || Keyboard.IsKeyDown(KeyCode.RightControl)
                );

            Memory.Poke(
                SystemMemoryAddresses.AltPressState,
                Keyboard.IsKeyDown(KeyCode.LeftAlt) || Keyboard.IsKeyDown(KeyCode.RightAlt)
                );

            Terminal.Update(delta);
        }