return subCheckRightMouseButton;
}
-int subProcessKeyboardInput()
+int subProcessKeyboardInput(byte action)
{
int subProcessKeyboardInput;
- int LastKey;
+ static int LastKey = 0;
+
+#if 1
+
+ if (action & KEY_BUTTON)
+ {
+ DemoKeyCode = (action & MV_UP ? keySpaceUp :
+ action & MV_LEFT ? keySpaceLeft :
+ action & MV_DOWN ? keySpaceDown :
+ action & MV_RIGHT ? keySpaceRight : keySpace);
+ }
+ else
+ {
+ DemoKeyCode = (action & MV_UP ? keyUp :
+ action & MV_LEFT ? keyLeft :
+ action & MV_DOWN ? keyDown :
+ action & MV_RIGHT ? keyRight : keyNone);
+ }
+
+ return subProcessKeyboardInput;
+
+#else
// On Error GoTo NoKeyboardAccessEH
// Call DKeyboard.Acquire
if (DemoFlag != 0)
{
subGetNextDemoKey();
+
if (ExitToMenuFlag != 0)
return subProcessKeyboardInput;
-
}
else
{
}
}
+#endif
+
// demo recording
if (RecordDemoFlag == 1)
DemoBuffer.AddDemoKey(DemoKeyCode);
}
else
{
+#if 1
+ printf("::: Input.c: subProcessKeyboardInput(): kill murphy\n");
+#endif
+
KillMurphyFlag = 1;
// ExplodeFieldSP MurphyPosIndex
// LeadOutCounter = &H20