- if (KeyState[vbKeySpace])
- {
- if (KeyState[vbKeyUp])
- {
- DemoKeyCode = keySpaceUp;
- }
- else if (KeyState[vbKeyLeft])
- {
- DemoKeyCode = keySpaceLeft;
- }
- else if (KeyState[vbKeyDown])
- {
- DemoKeyCode = keySpaceDown;
- }
- else if (KeyState[vbKeyRight])
- {
- DemoKeyCode = keySpaceRight;
- }
- else
- {
- DemoKeyCode = keySpace;
- }
-
- }
- else
- {
- if (KeyState[vbKeyUp])
- {
- DemoKeyCode = keyUp;
- }
- else if (KeyState[vbKeyLeft])
- {
- DemoKeyCode = keyLeft;
- }
- else if (KeyState[vbKeyDown])
- {
- DemoKeyCode = keyDown;
- }
- else if (KeyState[vbKeyRight])
- {
- DemoKeyCode = keyRight;
- }
- else
- {
- DemoKeyCode = keyNone;
- }
- }
- }
-
- // demo recording
- if (RecordDemoFlag == 1)
- DemoBuffer.AddDemoKey(DemoKeyCode);
-
- if (DemoKeyCode != LastKey && ! NoDisplayFlag)
- {
-#if 0
- MainForm.ShowKey(DemoKeyCode);
-#endif
- LastKey = DemoKeyCode;
+ return (key & MV_UP ? keyUp :
+ key & MV_LEFT ? keyLeft :
+ key & MV_DOWN ? keyDown :
+ key & MV_RIGHT ? keyRight : keyNone);