示例#1
0
        public void ReceiveKeyEvent(KeyMessageID m, KeyEventArgs e)
        {
            if ((drawingCounter >= maxCounter) && (start))
            {
                start = false;

                if (OnHalfCompleted != null)
                {
                    OnHalfCompleted(this, new EventArgs());
                }
            }
        }
示例#2
0
        // Processes key press:
        public override void ProcessKeys(KeyMessageID m, KeyEventArgs e)
        {
            // When key pressed, processing key adapters:
            foreach (CKeyPressAdapter keyadapter in keyPressAdapters)
            {
                keyadapter.ProcessKeys(m, e);
            }

            if (level != null)
            {
                level.ReceiveKeyEvent(m, e);
            }
        }
示例#3
0
        // *********************************
        // Methods:
        // *********************************

        public void ProcessKeys(KeyMessageID m, KeyEventArgs e)
        {
            KeyIndex keyindex = (KeyIndex)GetKeyIndex(e.KeyCode);

            switch (m)
            {
            case KeyMessageID.KeyDown:
                // If KeyDown event occured:
                if (!Receiver.Destroyed && Receiver.Enabled)
                {
                    switch ((KeyIndex)keyindex)
                    {
                    case KeyIndex.Up: Receiver.Direction = Directions.Up; KeysBuffer |= 0x01; break;

                    case KeyIndex.Down: Receiver.Direction = Directions.Down; KeysBuffer |= 0x02; break;

                    case KeyIndex.Left: Receiver.Direction = Directions.Left; KeysBuffer |= 0x04; break;

                    case KeyIndex.Right: Receiver.Direction = Directions.Right; KeysBuffer |= 0x08; break;

                    case KeyIndex.Shoot: Receiver.Shoot(); break;

                    default: break;
                    }
                }
                break;

            case KeyMessageID.KeyUp:
                // If KeyUp event occured:
                if (!Receiver.Destroyed)
                {
                    switch ((KeyIndex)keyindex)
                    {
                    case KeyIndex.Up: KeysBuffer &= 0x0e; break;

                    case KeyIndex.Down: KeysBuffer &= 0x0d; break;

                    case KeyIndex.Left: KeysBuffer &= 0x0b; break;

                    case KeyIndex.Right: KeysBuffer &= 0x07; break;

                    //case KeyIndex.Shoot: KeysBuffer &= 0x0e; break;

                    default: break;
                    }
                }
                break;
            }
        }
示例#4
0
        public void ReceiveKeyEvent(KeyMessageID m, KeyEventArgs e)
        {
            if (m == KeyMessageID.KeyDown)
            {
                switch (e.KeyCode)
                {
                case Keys.Home: cursor.Move(Directions.Up); this.changeBlock = false; break;

                case Keys.End: cursor.Move(Directions.Down); this.changeBlock = false; break;

                case Keys.Delete: cursor.Move(Directions.Left); this.changeBlock = false; break;

                case Keys.PageDown: cursor.Move(Directions.Right); this.changeBlock = false; break;

                case Keys.Space:

                    if (this.changeBlock)
                    {
                        CurrentBlockIndex++;
                    }

                    SetBlock(CurrentBlock, cursor.X, cursor.Y);

                    this.changeBlock = true;

                    break;

                case Keys.Escape:
                {
                    SaveMapToBMP(1);

                    OnLevelExit(this, new ConstructionEventArgs(this.mapBuffer)); break;
                }
                }

                //
            }
        }
示例#5
0
        public override void ProcessKeys(KeyMessageID m, KeyEventArgs e)
        {
            if (m == KeyMessageID.KeyDown)
            {
                if (mainMenu.Y > 0)
                {
                    mainMenu.Y = 0;

                    menuCursor.Y = 247;
                }
                else
                {
                    switch (e.KeyCode)
                    {
                    case Keys.Home: menuCursor.MoveUp();
                        break;

                    case Keys.End: menuCursor.MoveDown();
                        break;

                    case Keys.Enter:

                        SelectedGameMode = menuCursor.SelectedGameMode;

                        if (OnSelectGameMode != null)
                        {
                            OnSelectGameMode(this, new EventArgs());
                        }

                        break;

                    default: break;
                    }
                }
            }
        }
示例#6
0
 public override void ProcessKeys(KeyMessageID m, KeyEventArgs e)
 {
     constructionLevel.ReceiveKeyEvent(m, e);
 }
示例#7
0
 // - - - - - - - - -
 // Key processor :
 // - - - - - - - - -
 public void ReceiveKeyEvent(KeyMessageID m, KeyEventArgs e)
 {
     KeyEventReceivers.ForEach((receiver) => receiver.ReceiveKeyEvent(m, e));
 }
示例#8
0
        // *********************************
        // Methods:
        // *********************************

        // Receives a key:
        public void ProcessKeys(KeyMessageID m, KeyEventArgs e)
        {
            gameMode.ProcessKeys(m, e);
        }
示例#9
0
 public abstract void ProcessKeys(KeyMessageID m, KeyEventArgs e);