Control schema shift to Menus + Control Templates.
git-svn-id: svn://svn.code.sf.net/p/sc2/code/trunk@2308 8092fc87-c524-0410-9efc-e669fe64eaf9
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
Changes towards version 0.6:
|
||||
- Control scheme shifted to Menus + Control Templates in preparation for
|
||||
the online keyconfig - Michael
|
||||
- Fixes to logic in the Utwig conversations (Bugs 327, 647), from Nic
|
||||
and Michael
|
||||
- Removed unused and invalid lander font chars - Alex
|
||||
|
||||
+103
-92
@@ -1,7 +1,7 @@
|
||||
# Default UQM input configuration file.
|
||||
|
||||
# This is a VCONTROL version 2 config file (UQM 0.5 or later).
|
||||
version 2
|
||||
# This is a VCONTROL version 3 config file (UQM 0.5.1 or later).
|
||||
version 3
|
||||
|
||||
# Keyboard control definitions follow this point. Most keys can be
|
||||
# described in a straightforward manner; consult the name table in
|
||||
@@ -56,51 +56,34 @@ Menu-Delete: key Keypad-.
|
||||
# Melee and the player in the full game. Again, the player has the
|
||||
# option of using either the number pad or the arrow keys.
|
||||
|
||||
Player-1-Thrust: key Up
|
||||
Player-1-Left: key Left
|
||||
Player-1-Right: key Right
|
||||
Player-1-Weapon: key Return
|
||||
Player-1-Weapon: key RightControl
|
||||
Player-1-Special: key RightShift
|
||||
Player-1-Escape: key Escape
|
||||
Keyboard-1-Up: key Up
|
||||
Keyboard-1-Down: key Down
|
||||
Keyboard-1-Left: key Left
|
||||
Keyboard-1-Right: key Right
|
||||
Keyboard-1-Weapon: key Return
|
||||
Keyboard-1-Weapon: key RightControl
|
||||
Keyboard-1-Special: key RightShift
|
||||
Keyboard-1-Escape: key Escape
|
||||
|
||||
Player-1-Thrust: key Keypad-8
|
||||
Player-1-Left: key Keypad-4
|
||||
Player-1-Right: key Keypad-6
|
||||
Player-1-Weapon: key Keypad-Enter
|
||||
Player-1-Special: key Keypad-0
|
||||
Keyboard-1-Up: key Keypad-8
|
||||
Keyboard-1-Down: key Keypad-2
|
||||
Keyboard-1-Left: key Keypad-4
|
||||
Keyboard-1-Right: key Keypad-6
|
||||
Keyboard-1-Weapon: key Keypad-Enter
|
||||
Keyboard-1-Special: key Keypad-0
|
||||
|
||||
Player-1-Weapon: key ]
|
||||
Player-1-Special: key [
|
||||
|
||||
# Lander controls. These map mostly to Player 1's controls.
|
||||
|
||||
Lander-Thrust: key Up
|
||||
Lander-Left: key Left
|
||||
Lander-Right: key Right
|
||||
Lander-Weapon: key Return
|
||||
Lander-Weapon: key RightControl
|
||||
Lander-Escape: key RightShift
|
||||
Lander-Escape: key Space
|
||||
|
||||
Lander-Thrust: key Keypad-8
|
||||
Lander-Left: key Keypad-4
|
||||
Lander-Right: key Keypad-6
|
||||
Lander-Weapon: key Keypad-Enter
|
||||
Lander-Escape: key Keypad-0
|
||||
|
||||
Lander-Weapon: key ]
|
||||
Lander-Escape: key [
|
||||
Lander-Escape: key Escape
|
||||
Keyboard-1-Weapon: key ]
|
||||
Keyboard-1-Special: key [
|
||||
|
||||
# Player 2's flight controls. We add the key 'd' to let him
|
||||
# move down in the super-melee ship selection.
|
||||
Player-2-Thrust: key e
|
||||
Player-2-Left: key s
|
||||
Player-2-Right: key f
|
||||
Player-2-Down: key d
|
||||
Player-2-Weapon: key q
|
||||
Player-2-Special: key a
|
||||
Keyboard-2-Up: key e
|
||||
Keyboard-2-Down: key d
|
||||
Keyboard-2-Left: key s
|
||||
Keyboard-2-Right: key f
|
||||
Keyboard-2-Weapon: key q
|
||||
Keyboard-2-Special: key a
|
||||
Keyboard-2-Escape: key Escape
|
||||
|
||||
# System utility keys.
|
||||
Pause: key Pause
|
||||
@@ -116,73 +99,101 @@ Exit: key F10
|
||||
# that UQM can handle.
|
||||
|
||||
joystick 0 threshold 10000 # How far to move before it counts; 0-30000
|
||||
Menu-Left: joystick 0 axis 0 negative
|
||||
Player-1-Left: joystick 0 axis 0 negative
|
||||
Lander-Left: joystick 0 axis 0 negative
|
||||
Menu-Right: joystick 0 axis 0 positive
|
||||
Player-1-Right: joystick 0 axis 0 positive
|
||||
Lander-Right: joystick 0 axis 0 positive
|
||||
|
||||
Joystick-1-Up: joystick 0 axis 1 negative
|
||||
Joystick-1-Down: joystick 0 axis 1 positive
|
||||
Joystick-1-Left: joystick 0 axis 0 negative
|
||||
Joystick-1-Right: joystick 0 axis 0 positive
|
||||
|
||||
Joystick-1-Up: joystick 0 hat 0 up
|
||||
Joystick-1-Down: joystick 0 hat 0 down
|
||||
Joystick-1-Left: joystick 0 hat 0 left
|
||||
Joystick-1-Right: joystick 0 hat 0 right
|
||||
|
||||
Joystick-1-Weapon: joystick 0 button 1
|
||||
Joystick-1-Special: joystick 0 button 0
|
||||
Joystick-1-Escape: joystick 0 button 6
|
||||
|
||||
Menu-Up: joystick 0 axis 1 negative
|
||||
Player-1-Thrust: joystick 0 axis 1 negative
|
||||
Lander-Thrust: joystick 0 axis 1 negative
|
||||
Menu-Down: joystick 0 axis 1 positive
|
||||
Menu-Left: joystick 0 axis 0 negative
|
||||
Menu-Right: joystick 0 axis 0 positive
|
||||
|
||||
Menu-Up: joystick 0 hat 0 up
|
||||
Menu-Down: joystick 0 hat 0 down
|
||||
Menu-Left: joystick 0 hat 0 left
|
||||
Menu-Right: joystick 0 hat 0 right
|
||||
|
||||
Menu-Cancel: joystick 0 button 0
|
||||
Player-1-Special: joystick 0 button 0
|
||||
Menu-Select: joystick 0 button 1
|
||||
Player-1-Weapon: joystick 0 button 1
|
||||
Lander-Weapon: joystick 0 button 1
|
||||
Menu-Page-Up: joystick 0 button 4
|
||||
Menu-Page-Down: joystick 0 button 5
|
||||
Menu-Zoom-In: joystick 0 button 6
|
||||
Player-1-Escape: joystick 0 button 6
|
||||
Lander-Escape: joystick 0 button 6
|
||||
Menu-Zoom-Out: joystick 0 button 7
|
||||
|
||||
# And now the POV hat controls.
|
||||
Menu-Left: joystick 0 hat 0 left
|
||||
Player-1-Left: joystick 0 hat 0 left
|
||||
Lander-Left: joystick 0 hat 0 left
|
||||
Menu-Right: joystick 0 hat 0 right
|
||||
Player-1-Right: joystick 0 hat 0 right
|
||||
Lander-Right: joystick 0 hat 0 right
|
||||
Menu-Up: joystick 0 hat 0 up
|
||||
Player-1-Thrust: joystick 0 hat 0 up
|
||||
Lander-Thrust: joystick 0 hat 0 up
|
||||
Menu-Down: joystick 0 hat 0 down
|
||||
|
||||
# Second joystick
|
||||
joystick 1 threshold 10000 # How far to move before it counts; 0-30000
|
||||
Menu-Left: joystick 1 axis 0 negative
|
||||
Player-1-Left: joystick 1 axis 0 negative
|
||||
Lander-Left: joystick 1 axis 0 negative
|
||||
Menu-Right: joystick 1 axis 0 positive
|
||||
Player-1-Right: joystick 1 axis 0 positive
|
||||
Lander-Right: joystick 1 axis 0 positive
|
||||
|
||||
Joystick-2-Up: joystick 1 axis 1 negative
|
||||
Joystick-2-Down: joystick 1 axis 1 positive
|
||||
Joystick-2-Left: joystick 1 axis 0 negative
|
||||
Joystick-2-Right: joystick 1 axis 0 positive
|
||||
|
||||
Joystick-2-Up: joystick 1 hat 0 up
|
||||
Joystick-2-Down: joystick 1 hat 0 down
|
||||
Joystick-2-Left: joystick 1 hat 0 left
|
||||
Joystick-2-Right: joystick 1 hat 0 right
|
||||
|
||||
Joystick-2-Weapon: joystick 1 button 1
|
||||
Joystick-2-Special: joystick 1 button 0
|
||||
Joystick-2-Escape: joystick 1 button 6
|
||||
|
||||
Menu-Up: joystick 1 axis 1 negative
|
||||
Player-1-Thrust: joystick 1 axis 1 negative
|
||||
Lander-Thrust: joystick 1 axis 1 negative
|
||||
Menu-Down: joystick 1 axis 1 positive
|
||||
Menu-Left: joystick 1 axis 0 negative
|
||||
Menu-Right: joystick 1 axis 0 positive
|
||||
|
||||
Menu-Up: joystick 1 hat 0 up
|
||||
Menu-Down: joystick 1 hat 0 down
|
||||
Menu-Left: joystick 1 hat 0 left
|
||||
Menu-Right: joystick 1 hat 0 right
|
||||
|
||||
Menu-Cancel: joystick 1 button 0
|
||||
Player-1-Special: joystick 1 button 0
|
||||
Menu-Select: joystick 1 button 1
|
||||
Player-1-Weapon: joystick 1 button 1
|
||||
Lander-Weapon: joystick 1 button 1
|
||||
Menu-Page-Up: joystick 1 button 4
|
||||
Menu-Page-Down: joystick 1 button 5
|
||||
Menu-Zoom-In: joystick 1 button 6
|
||||
Player-1-Escape: joystick 1 button 6
|
||||
Lander-Escape: joystick 1 button 6
|
||||
Menu-Zoom-Out: joystick 1 button 7
|
||||
|
||||
# POV hat controls for the second joystick
|
||||
Menu-Left: joystick 1 hat 0 left
|
||||
Player-1-Left: joystick 1 hat 0 left
|
||||
Lander-Left: joystick 1 hat 0 left
|
||||
Menu-Right: joystick 1 hat 0 right
|
||||
Player-1-Right: joystick 1 hat 0 right
|
||||
Lander-Right: joystick 1 hat 0 right
|
||||
Menu-Up: joystick 1 hat 0 up
|
||||
Player-1-Thrust: joystick 1 hat 0 up
|
||||
Lander-Thrust: joystick 1 hat 0 up
|
||||
Menu-Down: joystick 1 hat 0 down
|
||||
joystick 2 threshold 10000 # How far to move before it counts; 0-30000
|
||||
|
||||
Joystick-3-Up: joystick 2 axis 1 negative
|
||||
Joystick-3-Down: joystick 2 axis 1 positive
|
||||
Joystick-3-Left: joystick 2 axis 0 negative
|
||||
Joystick-3-Right: joystick 2 axis 0 positive
|
||||
|
||||
Joystick-3-Up: joystick 2 hat 0 up
|
||||
Joystick-3-Down: joystick 2 hat 0 down
|
||||
Joystick-3-Left: joystick 2 hat 0 left
|
||||
Joystick-3-Right: joystick 2 hat 0 right
|
||||
|
||||
Joystick-3-Weapon: joystick 2 button 1
|
||||
Joystick-3-Special: joystick 2 button 0
|
||||
Joystick-3-Escape: joystick 2 button 6
|
||||
|
||||
Menu-Up: joystick 2 axis 1 negative
|
||||
Menu-Down: joystick 2 axis 1 positive
|
||||
Menu-Left: joystick 2 axis 0 negative
|
||||
Menu-Right: joystick 2 axis 0 positive
|
||||
|
||||
Menu-Up: joystick 2 hat 0 up
|
||||
Menu-Down: joystick 2 hat 0 down
|
||||
Menu-Left: joystick 2 hat 0 left
|
||||
Menu-Right: joystick 2 hat 0 right
|
||||
|
||||
Menu-Cancel: joystick 2 button 0
|
||||
Menu-Select: joystick 2 button 1
|
||||
Menu-Page-Up: joystick 2 button 4
|
||||
Menu-Page-Down: joystick 2 button 5
|
||||
Menu-Zoom-In: joystick 2 button 6
|
||||
Menu-Zoom-Out: joystick 2 button 7
|
||||
|
||||
|
||||
+11
-11
@@ -1203,7 +1203,7 @@ SpewPhrases (COUNT wait_track)
|
||||
#endif
|
||||
|
||||
LockMutex (GraphicsLock);
|
||||
if (PulsedInputState.key[KEY_MENU_CANCEL])
|
||||
if (PulsedInputState.menu[KEY_MENU_CANCEL])
|
||||
{
|
||||
SetSliderImage (SetAbsFrameIndex (ActivityFrame, 8));
|
||||
JumpTrack ();
|
||||
@@ -1217,13 +1217,13 @@ SpewPhrases (COUNT wait_track)
|
||||
BOOLEAN left=FALSE, right=FALSE;
|
||||
if (optSmoothScroll == OPT_PC)
|
||||
{
|
||||
left = PulsedInputState.key[KEY_MENU_LEFT];
|
||||
right = PulsedInputState.key[KEY_MENU_RIGHT];
|
||||
left = PulsedInputState.menu[KEY_MENU_LEFT];
|
||||
right = PulsedInputState.menu[KEY_MENU_RIGHT];
|
||||
}
|
||||
else if (optSmoothScroll == OPT_3DO)
|
||||
{
|
||||
left = ImmediateInputState.key[KEY_MENU_LEFT];
|
||||
right = ImmediateInputState.key[KEY_MENU_RIGHT];
|
||||
left = ImmediateInputState.menu[KEY_MENU_LEFT];
|
||||
right = ImmediateInputState.menu[KEY_MENU_RIGHT];
|
||||
}
|
||||
if (right)
|
||||
{
|
||||
@@ -1460,7 +1460,7 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
TimeIn = GetTimeCounter ();
|
||||
// Warning! This used to re-gather input data to check for rewind.
|
||||
UpdateInputState ();
|
||||
if (PulsedInputState.key[KEY_MENU_LEFT])
|
||||
if (PulsedInputState.menu[KEY_MENU_LEFT])
|
||||
{
|
||||
FadeMusic (BACKGROUND_VOL, ONE_SECOND);
|
||||
LockMutex (GraphicsLock);
|
||||
@@ -1491,7 +1491,7 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_SELECT])
|
||||
if (PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
{
|
||||
const unsigned char *end;
|
||||
PTEXT response_text =
|
||||
@@ -1516,7 +1516,7 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
(*pES->response_list[pES->cur_response].response_func)
|
||||
(pES->response_list[pES->cur_response].response_ref);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_CANCEL] &&
|
||||
else if (PulsedInputState.menu[KEY_MENU_CANCEL] &&
|
||||
LOBYTE (GLOBAL (CurrentActivity)) != WON_LAST_BATTLE)
|
||||
{
|
||||
TFB_SoundChain *curr;
|
||||
@@ -1675,7 +1675,7 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
else
|
||||
{
|
||||
response = pES->cur_response;
|
||||
if (PulsedInputState.key[KEY_MENU_LEFT])
|
||||
if (PulsedInputState.menu[KEY_MENU_LEFT])
|
||||
{
|
||||
FadeMusic (BACKGROUND_VOL, ONE_SECOND);
|
||||
LockMutex (GraphicsLock);
|
||||
@@ -1696,10 +1696,10 @@ DoCommunication (PENCOUNTER_STATE pES)
|
||||
CommData.AlienTransitionDesc.AnimFlags |= TALK_DONE;
|
||||
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_UP])
|
||||
else if (PulsedInputState.menu[KEY_MENU_UP])
|
||||
response = (BYTE)((response + (BYTE)(pES->num_responses - 1))
|
||||
% pES->num_responses);
|
||||
else if (PulsedInputState.key[KEY_MENU_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_DOWN])
|
||||
response = (BYTE)((BYTE)(response + 1)
|
||||
% pES->num_responses);
|
||||
|
||||
|
||||
@@ -139,17 +139,17 @@ DoConfirmExit (void)
|
||||
ExitRequested = FALSE;
|
||||
GamePaused = FALSE;
|
||||
UpdateInputState ();
|
||||
if (PulsedInputState.key[KEY_MENU_SELECT])
|
||||
if (PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
{
|
||||
done = TRUE;
|
||||
PlayMenuSound (MENU_SOUND_SUCCESS);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_CANCEL])
|
||||
else if (PulsedInputState.menu[KEY_MENU_CANCEL])
|
||||
{
|
||||
done = TRUE;
|
||||
response = FALSE;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_LEFT] || PulsedInputState.key[KEY_MENU_RIGHT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_LEFT] || PulsedInputState.menu[KEY_MENU_RIGHT])
|
||||
{
|
||||
response = !response;
|
||||
DrawConfirmationWindow (response);
|
||||
|
||||
+24
-21
@@ -25,24 +25,16 @@
|
||||
|
||||
// Enumerated type for controls
|
||||
enum {
|
||||
KEY_P1_THRUST,
|
||||
KEY_P1_LEFT,
|
||||
KEY_P1_RIGHT,
|
||||
KEY_P1_DOWN,
|
||||
KEY_P1_WEAPON,
|
||||
KEY_P1_SPECIAL,
|
||||
KEY_P1_ESCAPE,
|
||||
KEY_P2_THRUST,
|
||||
KEY_P2_LEFT,
|
||||
KEY_P2_RIGHT,
|
||||
KEY_P2_DOWN,
|
||||
KEY_P2_WEAPON,
|
||||
KEY_P2_SPECIAL,
|
||||
KEY_LANDER_THRUST,
|
||||
KEY_LANDER_LEFT,
|
||||
KEY_LANDER_RIGHT,
|
||||
KEY_LANDER_WEAPON,
|
||||
KEY_LANDER_ESCAPE,
|
||||
KEY_UP,
|
||||
KEY_DOWN,
|
||||
KEY_LEFT,
|
||||
KEY_RIGHT,
|
||||
KEY_WEAPON,
|
||||
KEY_SPECIAL,
|
||||
KEY_ESCAPE,
|
||||
NUM_KEYS
|
||||
};
|
||||
enum {
|
||||
KEY_PAUSE,
|
||||
KEY_EXIT,
|
||||
KEY_ABORT,
|
||||
@@ -65,12 +57,23 @@ enum {
|
||||
KEY_MENU_EDIT_CANCEL,
|
||||
KEY_MENU_SEARCH,
|
||||
KEY_MENU_NEXT,
|
||||
KEY_CHARACTER, /* abstract char key */
|
||||
NUM_KEYS
|
||||
KEY_MENU_ANY, /* abstract char key */
|
||||
NUM_MENU_KEYS
|
||||
};
|
||||
|
||||
enum {
|
||||
CONTROL_TEMPLATE_KB_1,
|
||||
CONTROL_TEMPLATE_KB_2,
|
||||
CONTROL_TEMPLATE_KB_3,
|
||||
CONTROL_TEMPLATE_JOY_1,
|
||||
CONTROL_TEMPLATE_JOY_2,
|
||||
CONTROL_TEMPLATE_JOY_3,
|
||||
NUM_TEMPLATES
|
||||
};
|
||||
|
||||
typedef struct _controller_input_state {
|
||||
int key[NUM_KEYS];
|
||||
int key[NUM_TEMPLATES][NUM_KEYS];
|
||||
int menu[NUM_MENU_KEYS];
|
||||
} CONTROLLER_INPUT_STATE;
|
||||
|
||||
typedef UBYTE BATTLE_INPUT_STATE;
|
||||
|
||||
@@ -651,23 +651,23 @@ DoCreditsInput (PVOID pIS)
|
||||
|
||||
if ((GLOBAL (CurrentActivity) & CHECK_ABORT)
|
||||
|| (pCIS->AllowCancel &&
|
||||
(PulsedInputState.key[KEY_MENU_SELECT] ||
|
||||
PulsedInputState.key[KEY_MENU_CANCEL]))
|
||||
(PulsedInputState.menu[KEY_MENU_SELECT] ||
|
||||
PulsedInputState.menu[KEY_MENU_CANCEL]))
|
||||
)
|
||||
{ // aborted
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
if (pCIS->AllowSpeedChange
|
||||
&& (PulsedInputState.key[KEY_MENU_UP]
|
||||
|| PulsedInputState.key[KEY_MENU_DOWN]))
|
||||
&& (PulsedInputState.menu[KEY_MENU_UP]
|
||||
|| PulsedInputState.menu[KEY_MENU_DOWN]))
|
||||
{ // speed adjustment
|
||||
int newrate = CreditsRate;
|
||||
int step = abs (CreditsRate) / 5 + 1;
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_DOWN])
|
||||
if (PulsedInputState.menu[KEY_MENU_DOWN])
|
||||
newrate += step;
|
||||
else if (PulsedInputState.key[KEY_MENU_UP])
|
||||
else if (PulsedInputState.menu[KEY_MENU_UP])
|
||||
newrate -= step;
|
||||
if (newrate < -CREDITS_MAX_RATE)
|
||||
newrate = -CREDITS_MAX_RATE;
|
||||
@@ -695,8 +695,8 @@ DoCreditsInput (PVOID pIS)
|
||||
}
|
||||
|
||||
if (!CreditsRunning
|
||||
&& (PulsedInputState.key[KEY_MENU_SELECT]
|
||||
|| PulsedInputState.key[KEY_MENU_CANCEL]))
|
||||
&& (PulsedInputState.menu[KEY_MENU_SELECT]
|
||||
|| PulsedInputState.menu[KEY_MENU_CANCEL]))
|
||||
{ // credits finished and exit requested
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
@@ -55,7 +55,7 @@ DoSelectAction (PMENU_STATE pMS)
|
||||
pMS->Initialized = TRUE;
|
||||
pMS->InputFunc = DoSelectAction;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_SELECT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
{
|
||||
switch (pMS->CurState)
|
||||
{
|
||||
@@ -652,10 +652,10 @@ UninitEncounter (void)
|
||||
while (!(AnyButtonPress (TRUE)) && GetTimeCounter () < Time)
|
||||
TaskSwitch ();
|
||||
LockMutex (GraphicsLock);
|
||||
if (!CurrentInputState.key[KEY_P1_ESCAPE])
|
||||
if (!CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_ESCAPE])
|
||||
{
|
||||
DrawFadeText (str1, str2, FALSE, &scavenge_r);
|
||||
if (!CurrentInputState.key[KEY_P1_ESCAPE])
|
||||
if (!CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_ESCAPE])
|
||||
{
|
||||
SetContextForeGroundColor (BLACK_COLOR);
|
||||
r.corner.x = scavenge_r.corner.x + 10;
|
||||
@@ -681,7 +681,7 @@ UninitEncounter (void)
|
||||
&& GetTimeCounter () < Time)
|
||||
TaskSwitch ();
|
||||
LockMutex (GraphicsLock);
|
||||
if (!CurrentInputState.key[KEY_P1_ESCAPE])
|
||||
if (!CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_ESCAPE])
|
||||
DrawFadeText (str1, str2, FALSE, &scavenge_r);
|
||||
}
|
||||
}
|
||||
|
||||
+122
-54
@@ -44,7 +44,8 @@ typedef INPUT_STATE_DESC *PINPUT_STATE_DESC;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
DWORD key [NUM_KEYS];
|
||||
DWORD key [NUM_TEMPLATES][NUM_KEYS];
|
||||
DWORD menu [NUM_MENU_KEYS];
|
||||
} MENU_ANNOTATIONS;
|
||||
|
||||
|
||||
@@ -64,12 +65,20 @@ volatile CONTROLLER_INPUT_STATE ImmediateInputState;
|
||||
static void
|
||||
_clear_menu_state (void)
|
||||
{
|
||||
int i;
|
||||
for (i = 0; i < NUM_KEYS; i++)
|
||||
int i, j;
|
||||
for (i = 0; i < NUM_TEMPLATES; i++)
|
||||
{
|
||||
PulsedInputState.key[i] = 0;
|
||||
CachedInputState.key[i] = 0;
|
||||
for (j = 0; j < NUM_KEYS; j++)
|
||||
{
|
||||
PulsedInputState.key[i][j] = 0;
|
||||
CachedInputState.key[i][j] = 0;
|
||||
}
|
||||
}
|
||||
for (i = 0; i < NUM_MENU_KEYS; i++)
|
||||
{
|
||||
PulsedInputState.menu[i] = 0;
|
||||
CachedInputState.menu[i] = 0;
|
||||
}
|
||||
CachedGestalt = FALSE;
|
||||
}
|
||||
|
||||
@@ -77,11 +86,19 @@ void
|
||||
ResetKeyRepeat (void)
|
||||
{
|
||||
DWORD initTime = GetTimeCounter ();
|
||||
int i;
|
||||
for (i = 0; i < NUM_KEYS; i++)
|
||||
int i, j;
|
||||
for (i = 0; i < NUM_TEMPLATES; i++)
|
||||
{
|
||||
RepeatDelays.key[i] = _max_accel;
|
||||
Times.key[i] = initTime;
|
||||
for (j = 0; j < NUM_KEYS; j++)
|
||||
{
|
||||
RepeatDelays.key[i][j] = _max_accel;
|
||||
Times.key[i][j] = initTime;
|
||||
}
|
||||
}
|
||||
for (i = 0; i < NUM_MENU_KEYS; i++)
|
||||
{
|
||||
RepeatDelays.menu[i] = _max_accel;
|
||||
Times.menu[i] = initTime;
|
||||
}
|
||||
GestaltRepeatDelay = _max_accel;
|
||||
GestaltTime = initTime;
|
||||
@@ -114,35 +131,61 @@ _check_for_pulse (int *current, int *cached, int *old, DWORD *accel, DWORD *newt
|
||||
}
|
||||
}
|
||||
|
||||
/* BUG: If a key from a currently unused control template is held,
|
||||
* this will affect the gestalt repeat rate. This isn't a problem
|
||||
* *yet*, but it will be once the user gets to define control
|
||||
* templates on his own --McM */
|
||||
static void
|
||||
_check_gestalt (DWORD NewTime)
|
||||
{
|
||||
BOOLEAN CurrentGestalt;
|
||||
int i;
|
||||
int i,j;
|
||||
OldGestalt = CachedGestalt;
|
||||
|
||||
CachedGestalt = 0;
|
||||
CurrentGestalt = 0;
|
||||
for (i = 0; i < NUM_KEYS; i++)
|
||||
for (i = 0; i < NUM_TEMPLATES; i++)
|
||||
{
|
||||
CachedGestalt |= ImmediateInputState.key[i];
|
||||
CurrentGestalt |= PulsedInputState.key[i];
|
||||
for (j = 0; j < NUM_KEYS; j++)
|
||||
{
|
||||
CachedGestalt |= ImmediateInputState.key[i][j];
|
||||
CurrentGestalt |= PulsedInputState.key[i][j];
|
||||
}
|
||||
}
|
||||
for (i = 0; i < NUM_MENU_KEYS; i++)
|
||||
{
|
||||
CachedGestalt |= ImmediateInputState.menu[i];
|
||||
CurrentGestalt |= PulsedInputState.menu[i];
|
||||
}
|
||||
|
||||
if (OldGestalt && CachedGestalt)
|
||||
{
|
||||
if (NewTime - GestaltTime < GestaltRepeatDelay)
|
||||
{
|
||||
for (i = 0; i < NUM_KEYS; i++)
|
||||
for (i = 0; i < NUM_TEMPLATES; i++)
|
||||
{
|
||||
PulsedInputState.key[i] = 0;
|
||||
for (j = 0; j < NUM_KEYS; j++)
|
||||
{
|
||||
PulsedInputState.key[i][j] = 0;
|
||||
}
|
||||
}
|
||||
for (i = 0; i < NUM_MENU_KEYS; i++)
|
||||
{
|
||||
PulsedInputState.menu[i] = 0;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
for (i = 0; i < NUM_KEYS; i++)
|
||||
for (i = 0; i < NUM_TEMPLATES; i++)
|
||||
{
|
||||
PulsedInputState.key[i] = CachedInputState.key[i];
|
||||
for (j = 0; j < NUM_KEYS; j++)
|
||||
{
|
||||
PulsedInputState.key[i][j] = CachedInputState.key[i][j];
|
||||
}
|
||||
}
|
||||
for (i = 0; i < NUM_MENU_KEYS; i++)
|
||||
{
|
||||
PulsedInputState.menu[i] = CachedInputState.menu[i];
|
||||
}
|
||||
if (GestaltRepeatDelay > _min_accel)
|
||||
GestaltRepeatDelay -= _step_accel;
|
||||
@@ -153,9 +196,16 @@ _check_gestalt (DWORD NewTime)
|
||||
}
|
||||
else
|
||||
{
|
||||
for (i = 0; i < NUM_KEYS; i++)
|
||||
for (i = 0; i < NUM_TEMPLATES; i++)
|
||||
{
|
||||
PulsedInputState.key[i] = CachedInputState.key[i];
|
||||
for (j = 0; j < NUM_KEYS; j++)
|
||||
{
|
||||
PulsedInputState.key[i][j] = CachedInputState.key[i][j];
|
||||
}
|
||||
}
|
||||
for (i = 0; i < NUM_MENU_KEYS; i++)
|
||||
{
|
||||
PulsedInputState.menu[i] = CachedInputState.menu[i];
|
||||
}
|
||||
GestaltTime = NewTime;
|
||||
GestaltRepeatDelay = _max_accel;
|
||||
@@ -189,19 +239,28 @@ UpdateInputState (void)
|
||||
}
|
||||
else
|
||||
{
|
||||
int i;
|
||||
for (i = 0; i < NUM_KEYS; i++)
|
||||
int i, j;
|
||||
for (i = 0; i < NUM_TEMPLATES; i++)
|
||||
{
|
||||
_check_for_pulse (&PulsedInputState.key[i],
|
||||
&CachedInputState.key[i], &OldInputState.key[i],
|
||||
&RepeatDelays.key[i], &NewTime, &Times.key[i]);
|
||||
for (j = 0; j < NUM_KEYS; j++)
|
||||
{
|
||||
_check_for_pulse (&PulsedInputState.key[i][j],
|
||||
&CachedInputState.key[i][j], &OldInputState.key[i][j],
|
||||
&RepeatDelays.key[i][j], &NewTime, &Times.key[i][j]);
|
||||
}
|
||||
}
|
||||
for (i = 0; i < NUM_MENU_KEYS; i++)
|
||||
{
|
||||
_check_for_pulse (&PulsedInputState.menu[i],
|
||||
&CachedInputState.menu[i], &OldInputState.menu[i],
|
||||
&RepeatDelays.menu[i], &NewTime, &Times.menu[i]);
|
||||
}
|
||||
}
|
||||
|
||||
if (CurrentInputState.key[KEY_PAUSE])
|
||||
if (CurrentInputState.menu[KEY_PAUSE])
|
||||
GamePaused = TRUE;
|
||||
|
||||
if (CurrentInputState.key[KEY_EXIT])
|
||||
if (CurrentInputState.menu[KEY_EXIT])
|
||||
ExitRequested = TRUE;
|
||||
}
|
||||
|
||||
@@ -258,21 +317,21 @@ DoInput (PVOID pInputState, BOOLEAN resetInput)
|
||||
#endif /* CREATE_JOURNAL */
|
||||
}
|
||||
|
||||
if (CurrentInputState.key[KEY_EXIT])
|
||||
if (CurrentInputState.menu[KEY_EXIT])
|
||||
ExitState = ConfirmExit ();
|
||||
|
||||
input = MENU_SOUND_NONE;
|
||||
if (PulsedInputState.key[KEY_MENU_UP]) input |= MENU_SOUND_UP;
|
||||
if (PulsedInputState.key[KEY_MENU_DOWN]) input |= MENU_SOUND_DOWN;
|
||||
if (PulsedInputState.key[KEY_MENU_LEFT]) input |= MENU_SOUND_LEFT;
|
||||
if (PulsedInputState.key[KEY_MENU_RIGHT]) input |= MENU_SOUND_RIGHT;
|
||||
if (PulsedInputState.key[KEY_MENU_SELECT]) input |= MENU_SOUND_SELECT;
|
||||
if (PulsedInputState.key[KEY_MENU_CANCEL]) input |= MENU_SOUND_CANCEL;
|
||||
if (PulsedInputState.key[KEY_MENU_SPECIAL]) input |= MENU_SOUND_SPECIAL;
|
||||
if (PulsedInputState.key[KEY_MENU_PAGE_UP]) input |= MENU_SOUND_PAGEUP;
|
||||
if (PulsedInputState.key[KEY_MENU_PAGE_DOWN]) input |= MENU_SOUND_PAGEDOWN;
|
||||
if (PulsedInputState.key[KEY_MENU_DELETE]) input |= MENU_SOUND_DELETE;
|
||||
if (PulsedInputState.key[KEY_MENU_BACKSPACE]) input |= MENU_SOUND_DELETE;
|
||||
if (PulsedInputState.menu[KEY_MENU_UP]) input |= MENU_SOUND_UP;
|
||||
if (PulsedInputState.menu[KEY_MENU_DOWN]) input |= MENU_SOUND_DOWN;
|
||||
if (PulsedInputState.menu[KEY_MENU_LEFT]) input |= MENU_SOUND_LEFT;
|
||||
if (PulsedInputState.menu[KEY_MENU_RIGHT]) input |= MENU_SOUND_RIGHT;
|
||||
if (PulsedInputState.menu[KEY_MENU_SELECT]) input |= MENU_SOUND_SELECT;
|
||||
if (PulsedInputState.menu[KEY_MENU_CANCEL]) input |= MENU_SOUND_CANCEL;
|
||||
if (PulsedInputState.menu[KEY_MENU_SPECIAL]) input |= MENU_SOUND_SPECIAL;
|
||||
if (PulsedInputState.menu[KEY_MENU_PAGE_UP]) input |= MENU_SOUND_PAGEUP;
|
||||
if (PulsedInputState.menu[KEY_MENU_PAGE_DOWN]) input |= MENU_SOUND_PAGEDOWN;
|
||||
if (PulsedInputState.menu[KEY_MENU_DELETE]) input |= MENU_SOUND_DELETE;
|
||||
if (PulsedInputState.menu[KEY_MENU_BACKSPACE]) input |= MENU_SOUND_DELETE;
|
||||
|
||||
if (MenuSounds
|
||||
&& (pSolarSysState == 0
|
||||
@@ -316,24 +375,25 @@ GetMenuSounds (MENU_SOUND_FLAGS *s0, MENU_SOUND_FLAGS *s1)
|
||||
*s1 = sound_1;
|
||||
}
|
||||
|
||||
/* These can really be refactored */
|
||||
|
||||
BATTLE_INPUT_STATE
|
||||
p1_combat_summary (void)
|
||||
{
|
||||
BATTLE_INPUT_STATE InputState = 0;
|
||||
if (CurrentInputState.key[KEY_P1_THRUST])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_UP])
|
||||
InputState |= BATTLE_THRUST;
|
||||
if (CurrentInputState.key[KEY_P1_LEFT])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_LEFT])
|
||||
InputState |= BATTLE_LEFT;
|
||||
if (CurrentInputState.key[KEY_P1_RIGHT])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_RIGHT])
|
||||
InputState |= BATTLE_RIGHT;
|
||||
if (CurrentInputState.key[KEY_P1_WEAPON])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_WEAPON])
|
||||
InputState |= BATTLE_WEAPON;
|
||||
if (CurrentInputState.key[KEY_P1_SPECIAL])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_SPECIAL])
|
||||
InputState |= BATTLE_SPECIAL;
|
||||
if (CurrentInputState.key[KEY_P1_ESCAPE])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_ESCAPE])
|
||||
InputState |= BATTLE_ESCAPE;
|
||||
if (CurrentInputState.key[KEY_P1_DOWN])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_DOWN])
|
||||
InputState |= BATTLE_DOWN;
|
||||
return InputState;
|
||||
}
|
||||
@@ -342,17 +402,17 @@ BATTLE_INPUT_STATE
|
||||
p2_combat_summary (void)
|
||||
{
|
||||
BATTLE_INPUT_STATE InputState = 0;
|
||||
if (CurrentInputState.key[KEY_P2_THRUST])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_2][KEY_UP])
|
||||
InputState |= BATTLE_THRUST;
|
||||
if (CurrentInputState.key[KEY_P2_LEFT])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_2][KEY_LEFT])
|
||||
InputState |= BATTLE_LEFT;
|
||||
if (CurrentInputState.key[KEY_P2_RIGHT])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_2][KEY_RIGHT])
|
||||
InputState |= BATTLE_RIGHT;
|
||||
if (CurrentInputState.key[KEY_P2_WEAPON])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_2][KEY_WEAPON])
|
||||
InputState |= BATTLE_WEAPON;
|
||||
if (CurrentInputState.key[KEY_P2_SPECIAL])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_2][KEY_SPECIAL])
|
||||
InputState |= BATTLE_SPECIAL;
|
||||
if (CurrentInputState.key[KEY_P2_DOWN])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_2][KEY_DOWN])
|
||||
InputState |= BATTLE_DOWN;
|
||||
return InputState;
|
||||
}
|
||||
@@ -360,12 +420,20 @@ p2_combat_summary (void)
|
||||
BOOLEAN
|
||||
AnyButtonPress (BOOLEAN CheckSpecial)
|
||||
{
|
||||
int i;
|
||||
int i, j;
|
||||
(void) CheckSpecial; // Ignored
|
||||
UpdateInputState ();
|
||||
for (i = 0; i < NUM_KEYS; i++)
|
||||
for (i = 0; i < NUM_TEMPLATES; i++)
|
||||
{
|
||||
if (CurrentInputState.key[i])
|
||||
for (j = 0; j < NUM_KEYS; j++)
|
||||
{
|
||||
if (CurrentInputState.key[i][j])
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
for (i = 0; i < NUM_MENU_KEYS; i++)
|
||||
{
|
||||
if (CurrentInputState.menu[i])
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
|
||||
+15
-15
@@ -442,8 +442,8 @@ DoSettings (PMENU_STATE pMS)
|
||||
pMS->Initialized = TRUE;
|
||||
pMS->InputFunc = DoSettings;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_CANCEL]
|
||||
|| (PulsedInputState.key[KEY_MENU_SELECT]
|
||||
else if (PulsedInputState.menu[KEY_MENU_CANCEL]
|
||||
|| (PulsedInputState.menu[KEY_MENU_SELECT]
|
||||
&& pMS->CurState == EXIT_MENU_SETTING))
|
||||
{
|
||||
LockMutex (GraphicsLock);
|
||||
@@ -454,7 +454,7 @@ DoSettings (PMENU_STATE pMS)
|
||||
pMS->InputFunc = DoGameOptions;
|
||||
pMS->Initialized = 0;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_SELECT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
{
|
||||
switch (pMS->CurState)
|
||||
{
|
||||
@@ -513,8 +513,8 @@ DoQuitMenu (PMENU_STATE pMS)
|
||||
pMS->Initialized = TRUE;
|
||||
pMS->InputFunc = DoQuitMenu;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_CANCEL]
|
||||
|| (PulsedInputState.key[KEY_MENU_SELECT]
|
||||
else if (PulsedInputState.menu[KEY_MENU_CANCEL]
|
||||
|| (PulsedInputState.menu[KEY_MENU_SELECT]
|
||||
&& pMS->CurState == NO_QUIT_MENU))
|
||||
{
|
||||
LockMutex (GraphicsLock);
|
||||
@@ -525,7 +525,7 @@ DoQuitMenu (PMENU_STATE pMS)
|
||||
pMS->InputFunc = DoGameOptions;
|
||||
pMS->Initialized = 0;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_SELECT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
{
|
||||
switch (pMS->CurState)
|
||||
{
|
||||
@@ -946,7 +946,7 @@ Restart:
|
||||
pMS->Initialized = TRUE;
|
||||
goto ChangeGameSelection;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_CANCEL])
|
||||
else if (PulsedInputState.menu[KEY_MENU_CANCEL])
|
||||
{
|
||||
LockMutex (GraphicsLock);
|
||||
SetFlashRect (SFR_MENU_3DO, (FRAME)0);
|
||||
@@ -967,7 +967,7 @@ Restart:
|
||||
}
|
||||
return (FALSE);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_SELECT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
{
|
||||
pSD = &((SUMMARY_DESC *)pMS->Extra)[pMS->CurState];
|
||||
prev_save = pMS->CurState;
|
||||
@@ -1029,7 +1029,7 @@ Restart:
|
||||
else
|
||||
{
|
||||
NewState = pMS->CurState;
|
||||
if (PulsedInputState.key[KEY_MENU_LEFT] || PulsedInputState.key[KEY_MENU_PAGE_UP])
|
||||
if (PulsedInputState.menu[KEY_MENU_LEFT] || PulsedInputState.menu[KEY_MENU_PAGE_UP])
|
||||
{
|
||||
if (NewState == 0)
|
||||
NewState = MAX_SAVED_GAMES - 1;
|
||||
@@ -1038,7 +1038,7 @@ Restart:
|
||||
else
|
||||
NewState = 0;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_RIGHT] || PulsedInputState.key[KEY_MENU_PAGE_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_RIGHT] || PulsedInputState.menu[KEY_MENU_PAGE_DOWN])
|
||||
{
|
||||
if (NewState == MAX_SAVED_GAMES - 1)
|
||||
NewState = 0;
|
||||
@@ -1047,14 +1047,14 @@ Restart:
|
||||
else
|
||||
NewState = MAX_SAVED_GAMES - 1;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_UP])
|
||||
else if (PulsedInputState.menu[KEY_MENU_UP])
|
||||
{
|
||||
if (NewState == 0)
|
||||
NewState = MAX_SAVED_GAMES - 1;
|
||||
else
|
||||
NewState--;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_DOWN])
|
||||
{
|
||||
if (NewState == MAX_SAVED_GAMES - 1)
|
||||
NewState = 0;
|
||||
@@ -1300,14 +1300,14 @@ DoGameOptions (PMENU_STATE pMS)
|
||||
pMS->Initialized = 1;
|
||||
pMS->InputFunc = DoGameOptions;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_CANCEL]
|
||||
|| (PulsedInputState.key[KEY_MENU_SELECT]
|
||||
else if (PulsedInputState.menu[KEY_MENU_CANCEL]
|
||||
|| (PulsedInputState.menu[KEY_MENU_SELECT]
|
||||
&& pMS->CurState == SETTINGS + 1))
|
||||
{
|
||||
pMS->CurState = SETTINGS + 1;
|
||||
return (FALSE);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_SELECT] || force_select)
|
||||
else if (PulsedInputState.menu[KEY_MENU_SELECT] || force_select)
|
||||
{
|
||||
switch (pMS->CurState)
|
||||
{
|
||||
|
||||
+17
-17
@@ -194,7 +194,7 @@ DoTextEntry (PTEXTENTRY_STATE pTES)
|
||||
|
||||
// process the pending character buffer
|
||||
ch = GetNextCharacter ();
|
||||
if (!ch && PulsedInputState.key[KEY_CHARACTER])
|
||||
if (!ch && PulsedInputState.menu[KEY_MENU_ANY])
|
||||
{ // keyboard repeat, but only when buffer empty
|
||||
ch = GetLastCharacter ();
|
||||
}
|
||||
@@ -218,7 +218,7 @@ DoTextEntry (PTEXTENTRY_STATE pTES)
|
||||
ch = GetNextCharacter ();
|
||||
}
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_DELETE])
|
||||
if (PulsedInputState.menu[KEY_MENU_DELETE])
|
||||
{
|
||||
if (len)
|
||||
{
|
||||
@@ -230,7 +230,7 @@ DoTextEntry (PTEXTENTRY_STATE pTES)
|
||||
changed = TRUE;
|
||||
}
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_BACKSPACE])
|
||||
else if (PulsedInputState.menu[KEY_MENU_BACKSPACE])
|
||||
{
|
||||
if (pStr > pTES->BaseStr)
|
||||
{
|
||||
@@ -243,7 +243,7 @@ DoTextEntry (PTEXTENTRY_STATE pTES)
|
||||
changed = TRUE;
|
||||
}
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_LEFT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_LEFT])
|
||||
{
|
||||
if (pStr > pTES->BaseStr)
|
||||
{
|
||||
@@ -256,7 +256,7 @@ DoTextEntry (PTEXTENTRY_STATE pTES)
|
||||
changed = TRUE;
|
||||
}
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_RIGHT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_RIGHT])
|
||||
{
|
||||
if (len > 0)
|
||||
{
|
||||
@@ -269,7 +269,7 @@ DoTextEntry (PTEXTENTRY_STATE pTES)
|
||||
changed = TRUE;
|
||||
}
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_HOME])
|
||||
else if (PulsedInputState.menu[KEY_MENU_HOME])
|
||||
{
|
||||
if (pStr > pTES->BaseStr)
|
||||
{
|
||||
@@ -279,7 +279,7 @@ DoTextEntry (PTEXTENTRY_STATE pTES)
|
||||
changed = TRUE;
|
||||
}
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_END])
|
||||
else if (PulsedInputState.menu[KEY_MENU_END])
|
||||
{
|
||||
if (len > 0)
|
||||
{
|
||||
@@ -291,10 +291,10 @@ DoTextEntry (PTEXTENTRY_STATE pTES)
|
||||
}
|
||||
|
||||
if (pTES->JoyAlpha && (
|
||||
PulsedInputState.key[KEY_MENU_UP] ||
|
||||
PulsedInputState.key[KEY_MENU_DOWN] ||
|
||||
PulsedInputState.key[KEY_MENU_PAGE_UP] ||
|
||||
PulsedInputState.key[KEY_MENU_PAGE_DOWN]) )
|
||||
PulsedInputState.menu[KEY_MENU_UP] ||
|
||||
PulsedInputState.menu[KEY_MENU_DOWN] ||
|
||||
PulsedInputState.menu[KEY_MENU_PAGE_UP] ||
|
||||
PulsedInputState.menu[KEY_MENU_PAGE_DOWN]) )
|
||||
{ // do joystick text
|
||||
joy_char_t ch;
|
||||
joy_char_t newch;
|
||||
@@ -314,14 +314,14 @@ DoTextEntry (PTEXTENTRY_STATE pTES)
|
||||
// find current char in the alphabet
|
||||
i = JoyCharFindIn (&cmpch, pTES->JoyAlpha, pTES->JoyAlphaLength);
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_UP])
|
||||
if (PulsedInputState.menu[KEY_MENU_UP])
|
||||
{
|
||||
--i;
|
||||
if (i < 0)
|
||||
i = pTES->JoyAlphaLength - 1;
|
||||
newch = pTES->JoyAlpha[i];
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_DOWN])
|
||||
{
|
||||
++i;
|
||||
if (i >= pTES->JoyAlphaLength)
|
||||
@@ -329,8 +329,8 @@ DoTextEntry (PTEXTENTRY_STATE pTES)
|
||||
newch = pTES->JoyAlpha[i];
|
||||
}
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_PAGE_UP] ||
|
||||
PulsedInputState.key[KEY_MENU_PAGE_DOWN])
|
||||
if (PulsedInputState.menu[KEY_MENU_PAGE_UP] ||
|
||||
PulsedInputState.menu[KEY_MENU_PAGE_DOWN])
|
||||
{
|
||||
if (len)
|
||||
{ // single char change
|
||||
@@ -381,12 +381,12 @@ DoTextEntry (PTEXTENTRY_STATE pTES)
|
||||
}
|
||||
}
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_SELECT])
|
||||
if (PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
{ // done entering
|
||||
pTES->Success = TRUE;
|
||||
return FALSE;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_EDIT_CANCEL])
|
||||
else if (PulsedInputState.menu[KEY_MENU_EDIT_CANCEL])
|
||||
{ // canceled entering
|
||||
pTES->Success = FALSE;
|
||||
return FALSE;
|
||||
|
||||
@@ -276,7 +276,7 @@ DoPresentation (PVOID pIS)
|
||||
{
|
||||
PRESENTATION_INPUT_STATE* pPIS = (PRESENTATION_INPUT_STATE*) pIS;
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_CANCEL]
|
||||
if (PulsedInputState.menu[KEY_MENU_CANCEL]
|
||||
|| (GLOBAL (CurrentActivity) & CHECK_ABORT))
|
||||
return FALSE; /* abort requested - we are done */
|
||||
|
||||
@@ -289,9 +289,9 @@ DoPresentation (PVOID pIS)
|
||||
}
|
||||
|
||||
if (pPIS->TimeOutOnSkip &&
|
||||
(PulsedInputState.key[KEY_MENU_SELECT]
|
||||
|| PulsedInputState.key[KEY_MENU_SPECIAL]
|
||||
|| PulsedInputState.key[KEY_MENU_RIGHT]) )
|
||||
(PulsedInputState.menu[KEY_MENU_SELECT]
|
||||
|| PulsedInputState.menu[KEY_MENU_SPECIAL]
|
||||
|| PulsedInputState.menu[KEY_MENU_RIGHT]) )
|
||||
{ /* skip requested - continue normal ops */
|
||||
pPIS->TimeOut = 0;
|
||||
return TRUE;
|
||||
|
||||
@@ -190,10 +190,10 @@ TFB_ProcessEvents ()
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (ImmediateInputState.key[KEY_ABORT] || abortFlag)
|
||||
if (ImmediateInputState.menu[KEY_ABORT] || abortFlag)
|
||||
exit (0);
|
||||
#if defined(DEBUG) || defined(USE_DEBUG_KEY)
|
||||
if (ImmediateInputState.key[KEY_DEBUG])
|
||||
if (ImmediateInputState.menu[KEY_DEBUG])
|
||||
{
|
||||
FlushInput ();
|
||||
debugKeyPressed ();
|
||||
|
||||
@@ -38,49 +38,73 @@ static BOOLEAN InputInitialized = FALSE;
|
||||
|
||||
static BOOLEAN _in_character_mode = FALSE;
|
||||
|
||||
#define VCONTROL_VERSION 2
|
||||
#define VCONTROL_VERSION 3
|
||||
|
||||
static VControl_NameBinding control_names[] = {
|
||||
{ "Menu-Up", (int *)&ImmediateInputState.key[KEY_MENU_UP] },
|
||||
{ "Menu-Down", (int *)&ImmediateInputState.key[KEY_MENU_DOWN] },
|
||||
{ "Menu-Left", (int *)&ImmediateInputState.key[KEY_MENU_LEFT] },
|
||||
{ "Menu-Right", (int *)&ImmediateInputState.key[KEY_MENU_RIGHT] },
|
||||
{ "Menu-Select", (int *)&ImmediateInputState.key[KEY_MENU_SELECT] },
|
||||
{ "Menu-Cancel", (int *)&ImmediateInputState.key[KEY_MENU_CANCEL] },
|
||||
{ "Menu-Special", (int *)&ImmediateInputState.key[KEY_MENU_SPECIAL] },
|
||||
{ "Menu-Page-Up", (int *)&ImmediateInputState.key[KEY_MENU_PAGE_UP] },
|
||||
{ "Menu-Page-Down", (int *)&ImmediateInputState.key[KEY_MENU_PAGE_DOWN] },
|
||||
{ "Menu-Home", (int *)&ImmediateInputState.key[KEY_MENU_HOME] },
|
||||
{ "Menu-End", (int *)&ImmediateInputState.key[KEY_MENU_END] },
|
||||
{ "Menu-Zoom-In", (int *)&ImmediateInputState.key[KEY_MENU_ZOOM_IN] },
|
||||
{ "Menu-Zoom-Out", (int *)&ImmediateInputState.key[KEY_MENU_ZOOM_OUT] },
|
||||
{ "Menu-Delete", (int *)&ImmediateInputState.key[KEY_MENU_DELETE] },
|
||||
{ "Menu-Backspace", (int *)&ImmediateInputState.key[KEY_MENU_BACKSPACE] },
|
||||
{ "Menu-Edit-Cancel", (int *)&ImmediateInputState.key[KEY_MENU_EDIT_CANCEL] },
|
||||
{ "Menu-Search", (int *)&ImmediateInputState.key[KEY_MENU_SEARCH] },
|
||||
{ "Menu-Next", (int *)&ImmediateInputState.key[KEY_MENU_NEXT] },
|
||||
{ "Player-1-Thrust", (int *)&ImmediateInputState.key[KEY_P1_THRUST] },
|
||||
{ "Player-1-Left", (int *)&ImmediateInputState.key[KEY_P1_LEFT] },
|
||||
{ "Player-1-Right", (int *)&ImmediateInputState.key[KEY_P1_RIGHT] },
|
||||
{ "Player-1-Down", (int *)&ImmediateInputState.key[KEY_P1_DOWN] },
|
||||
{ "Player-1-Weapon", (int *)&ImmediateInputState.key[KEY_P1_WEAPON] },
|
||||
{ "Player-1-Special", (int *)&ImmediateInputState.key[KEY_P1_SPECIAL] },
|
||||
{ "Player-1-Escape", (int *)&ImmediateInputState.key[KEY_P1_ESCAPE] },
|
||||
{ "Player-2-Thrust", (int *)&ImmediateInputState.key[KEY_P2_THRUST] },
|
||||
{ "Player-2-Left", (int *)&ImmediateInputState.key[KEY_P2_LEFT] },
|
||||
{ "Player-2-Right", (int *)&ImmediateInputState.key[KEY_P2_RIGHT] },
|
||||
{ "Player-2-Down", (int *)&ImmediateInputState.key[KEY_P2_DOWN] },
|
||||
{ "Player-2-Weapon", (int *)&ImmediateInputState.key[KEY_P2_WEAPON] },
|
||||
{ "Player-2-Special", (int *)&ImmediateInputState.key[KEY_P2_SPECIAL] },
|
||||
{ "Lander-Thrust", (int *)&ImmediateInputState.key[KEY_LANDER_THRUST] },
|
||||
{ "Lander-Left", (int *)&ImmediateInputState.key[KEY_LANDER_LEFT] },
|
||||
{ "Lander-Right", (int *)&ImmediateInputState.key[KEY_LANDER_RIGHT] },
|
||||
{ "Lander-Weapon", (int *)&ImmediateInputState.key[KEY_LANDER_WEAPON] },
|
||||
{ "Lander-Escape", (int *)&ImmediateInputState.key[KEY_LANDER_ESCAPE] },
|
||||
{ "Pause", (int *)&ImmediateInputState.key[KEY_PAUSE] },
|
||||
{ "Exit", (int *)&ImmediateInputState.key[KEY_EXIT] },
|
||||
{ "Abort", (int *)&ImmediateInputState.key[KEY_ABORT] },
|
||||
{ "Debug", (int *)&ImmediateInputState.key[KEY_DEBUG] },
|
||||
{ "Menu-Up", (int *)&ImmediateInputState.menu[KEY_MENU_UP] },
|
||||
{ "Menu-Down", (int *)&ImmediateInputState.menu[KEY_MENU_DOWN] },
|
||||
{ "Menu-Left", (int *)&ImmediateInputState.menu[KEY_MENU_LEFT] },
|
||||
{ "Menu-Right", (int *)&ImmediateInputState.menu[KEY_MENU_RIGHT] },
|
||||
{ "Menu-Select", (int *)&ImmediateInputState.menu[KEY_MENU_SELECT] },
|
||||
{ "Menu-Cancel", (int *)&ImmediateInputState.menu[KEY_MENU_CANCEL] },
|
||||
{ "Menu-Special", (int *)&ImmediateInputState.menu[KEY_MENU_SPECIAL] },
|
||||
{ "Menu-Page-Up", (int *)&ImmediateInputState.menu[KEY_MENU_PAGE_UP] },
|
||||
{ "Menu-Page-Down", (int *)&ImmediateInputState.menu[KEY_MENU_PAGE_DOWN] },
|
||||
{ "Menu-Home", (int *)&ImmediateInputState.menu[KEY_MENU_HOME] },
|
||||
{ "Menu-End", (int *)&ImmediateInputState.menu[KEY_MENU_END] },
|
||||
{ "Menu-Zoom-In", (int *)&ImmediateInputState.menu[KEY_MENU_ZOOM_IN] },
|
||||
{ "Menu-Zoom-Out", (int *)&ImmediateInputState.menu[KEY_MENU_ZOOM_OUT] },
|
||||
{ "Menu-Delete", (int *)&ImmediateInputState.menu[KEY_MENU_DELETE] },
|
||||
{ "Menu-Backspace", (int *)&ImmediateInputState.menu[KEY_MENU_BACKSPACE] },
|
||||
{ "Menu-Edit-Cancel", (int *)&ImmediateInputState.menu[KEY_MENU_EDIT_CANCEL] },
|
||||
{ "Menu-Search", (int *)&ImmediateInputState.menu[KEY_MENU_SEARCH] },
|
||||
{ "Menu-Next", (int *)&ImmediateInputState.menu[KEY_MENU_NEXT] },
|
||||
{ "Keyboard-1-Up", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_1][KEY_UP] },
|
||||
{ "Keyboard-1-Down", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_1][KEY_DOWN] },
|
||||
{ "Keyboard-1-Left", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_1][KEY_LEFT] },
|
||||
{ "Keyboard-1-Right", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_1][KEY_RIGHT] },
|
||||
{ "Keyboard-1-Weapon", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_1][KEY_WEAPON] },
|
||||
{ "Keyboard-1-Special", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_1][KEY_SPECIAL] },
|
||||
{ "Keyboard-1-Escape", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_1][KEY_ESCAPE] },
|
||||
{ "Keyboard-2-Up", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_2][KEY_UP] },
|
||||
{ "Keyboard-2-Down", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_2][KEY_DOWN] },
|
||||
{ "Keyboard-2-Left", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_2][KEY_LEFT] },
|
||||
{ "Keyboard-2-Right", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_2][KEY_RIGHT] },
|
||||
{ "Keyboard-2-Weapon", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_2][KEY_WEAPON] },
|
||||
{ "Keyboard-2-Special", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_2][KEY_SPECIAL] },
|
||||
{ "Keyboard-2-Escape", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_2][KEY_ESCAPE] },
|
||||
{ "Keyboard-3-Up", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_3][KEY_UP] },
|
||||
{ "Keyboard-3-Down", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_3][KEY_DOWN] },
|
||||
{ "Keyboard-3-Left", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_3][KEY_LEFT] },
|
||||
{ "Keyboard-3-Right", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_3][KEY_RIGHT] },
|
||||
{ "Keyboard-3-Weapon", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_3][KEY_WEAPON] },
|
||||
{ "Keyboard-3-Special", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_3][KEY_SPECIAL] },
|
||||
{ "Keyboard-3-Escape", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_KB_3][KEY_ESCAPE] },
|
||||
{ "Joystick-1-Up", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_1][KEY_UP] },
|
||||
{ "Joystick-1-Down", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_1][KEY_DOWN] },
|
||||
{ "Joystick-1-Left", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_1][KEY_LEFT] },
|
||||
{ "Joystick-1-Right", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_1][KEY_RIGHT] },
|
||||
{ "Joystick-1-Weapon", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_1][KEY_WEAPON] },
|
||||
{ "Joystick-1-Special", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_1][KEY_SPECIAL] },
|
||||
{ "Joystick-1-Escape", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_1][KEY_ESCAPE] },
|
||||
{ "Joystick-2-Up", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_2][KEY_UP] },
|
||||
{ "Joystick-2-Down", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_2][KEY_DOWN] },
|
||||
{ "Joystick-2-Left", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_2][KEY_LEFT] },
|
||||
{ "Joystick-2-Right", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_2][KEY_RIGHT] },
|
||||
{ "Joystick-2-Weapon", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_2][KEY_WEAPON] },
|
||||
{ "Joystick-2-Special", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_2][KEY_SPECIAL] },
|
||||
{ "Joystick-2-Escape", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_2][KEY_ESCAPE] },
|
||||
{ "Joystick-3-Up", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_3][KEY_UP] },
|
||||
{ "Joystick-3-Down", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_3][KEY_DOWN] },
|
||||
{ "Joystick-3-Left", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_3][KEY_LEFT] },
|
||||
{ "Joystick-3-Right", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_3][KEY_RIGHT] },
|
||||
{ "Joystick-3-Weapon", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_3][KEY_WEAPON] },
|
||||
{ "Joystick-3-Special", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_3][KEY_SPECIAL] },
|
||||
{ "Joystick-3-Escape", (int *)&ImmediateInputState.key[CONTROL_TEMPLATE_JOY_3][KEY_ESCAPE] },
|
||||
{ "Pause", (int *)&ImmediateInputState.menu[KEY_PAUSE] },
|
||||
{ "Exit", (int *)&ImmediateInputState.menu[KEY_EXIT] },
|
||||
{ "Abort", (int *)&ImmediateInputState.menu[KEY_ABORT] },
|
||||
{ "Debug", (int *)&ImmediateInputState.menu[KEY_DEBUG] },
|
||||
{ "Illegal", NULL}};
|
||||
|
||||
|
||||
@@ -163,7 +187,7 @@ static void
|
||||
resetKeyboardState (void)
|
||||
{
|
||||
memset (kbdstate, 0, sizeof (kbdstate));
|
||||
ImmediateInputState.key[KEY_CHARACTER] = 0;
|
||||
ImmediateInputState.menu[KEY_MENU_ANY] = 0;
|
||||
}
|
||||
|
||||
int
|
||||
@@ -295,7 +319,7 @@ ProcessInputEvent (const SDL_Event *Event)
|
||||
return;
|
||||
|
||||
kbdstate[k]++;
|
||||
ImmediateInputState.key[KEY_CHARACTER]++;
|
||||
ImmediateInputState.menu[KEY_MENU_ANY]++;
|
||||
|
||||
lastchar = map_key;
|
||||
kbdbuf[kbdtail] = map_key;
|
||||
@@ -308,13 +332,13 @@ ProcessInputEvent (const SDL_Event *Event)
|
||||
if (kbdstate[k] == 0)
|
||||
{ // something is fishy -- better to reset the
|
||||
// repeatable state to avoid big problems
|
||||
ImmediateInputState.key[KEY_CHARACTER] = 0;
|
||||
ImmediateInputState.menu[KEY_MENU_ANY] = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
kbdstate[k]--;
|
||||
if (ImmediateInputState.key[KEY_CHARACTER] > 0)
|
||||
ImmediateInputState.key[KEY_CHARACTER]--;
|
||||
if (ImmediateInputState.menu[KEY_MENU_ANY] > 0)
|
||||
ImmediateInputState.menu[KEY_MENU_ANY]--;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -406,15 +406,15 @@ TFB_DoVideoInput (PVOID pIS)
|
||||
if (!pVIS->CurVideo || !TFB_VideoPlaying (pVIS->CurVideo))
|
||||
return FALSE;
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_SELECT]
|
||||
|| PulsedInputState.key[KEY_MENU_CANCEL]
|
||||
|| PulsedInputState.key[KEY_MENU_SPECIAL]
|
||||
if (PulsedInputState.menu[KEY_MENU_SELECT]
|
||||
|| PulsedInputState.menu[KEY_MENU_CANCEL]
|
||||
|| PulsedInputState.menu[KEY_MENU_SPECIAL]
|
||||
|| (GLOBAL (CurrentActivity) & CHECK_ABORT))
|
||||
{ // abort movie
|
||||
TFB_StopVideo (pVIS->CurVideo);
|
||||
return FALSE;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_LEFT] || PulsedInputState.key[KEY_MENU_RIGHT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_LEFT] || PulsedInputState.menu[KEY_MENU_RIGHT])
|
||||
{
|
||||
if (vid->decoder->audio_synced)
|
||||
{
|
||||
@@ -424,9 +424,9 @@ TFB_DoVideoInput (PVOID pIS)
|
||||
newpos = vid->decoder->pos;
|
||||
UnlockMutex (vid->guard);
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_LEFT])
|
||||
if (PulsedInputState.menu[KEY_MENU_LEFT])
|
||||
newpos -= 2;
|
||||
else if (PulsedInputState.key[KEY_MENU_RIGHT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_RIGHT])
|
||||
newpos += 1;
|
||||
if (newpos < 0)
|
||||
newpos = 0;
|
||||
|
||||
+29
-29
@@ -920,10 +920,10 @@ DoLoadTeam (PMELEE_STATE pMS)
|
||||
pMS->InputFunc = DoLoadTeam;
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_SELECT] |
|
||||
PulsedInputState.key[KEY_MENU_CANCEL])
|
||||
else if (PulsedInputState.menu[KEY_MENU_SELECT] |
|
||||
PulsedInputState.menu[KEY_MENU_CANCEL])
|
||||
{
|
||||
if (!PulsedInputState.key[KEY_MENU_CANCEL])
|
||||
if (!PulsedInputState.menu[KEY_MENU_CANCEL])
|
||||
{
|
||||
pMS->TeamImage[pMS->side] = pMS->FileList[
|
||||
pMS->CurIndex - pMS->TopTeamIndex];
|
||||
@@ -948,7 +948,7 @@ DoLoadTeam (PMELEE_STATE pMS)
|
||||
|
||||
NewTop = pMS->TopTeamIndex;
|
||||
index = old_index = pMS->CurIndex;
|
||||
if (PulsedInputState.key[KEY_MENU_UP])
|
||||
if (PulsedInputState.menu[KEY_MENU_UP])
|
||||
{
|
||||
if (index-- == 0)
|
||||
index = 0;
|
||||
@@ -956,7 +956,7 @@ DoLoadTeam (PMELEE_STATE pMS)
|
||||
if (index < NewTop && (NewTop -= MAX_VIS_TEAMS) < 0)
|
||||
NewTop = 0;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_DOWN])
|
||||
{
|
||||
if ((int)index < (int)GetDirEntryTableCount (pMS->TeamDE) +
|
||||
NUM_PREBUILT - 1)
|
||||
@@ -965,7 +965,7 @@ DoLoadTeam (PMELEE_STATE pMS)
|
||||
if ((int)index > (int)pMS->BotTeamIndex)
|
||||
NewTop = index;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_PAGE_UP])
|
||||
else if (PulsedInputState.menu[KEY_MENU_PAGE_UP])
|
||||
{
|
||||
index -= MAX_VIS_TEAMS;
|
||||
if (index < 0)
|
||||
@@ -980,7 +980,7 @@ DoLoadTeam (PMELEE_STATE pMS)
|
||||
NewTop = 0;
|
||||
}
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_PAGE_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_PAGE_DOWN])
|
||||
{
|
||||
index += MAX_VIS_TEAMS;
|
||||
if ((int) index <
|
||||
@@ -1194,8 +1194,8 @@ DoEdit (PMELEE_STATE pMS)
|
||||
pMS->InputFunc = DoEdit;
|
||||
}
|
||||
else if ((pMS->row < NUM_MELEE_ROWS || pMS->CurIndex == (BYTE)~0)
|
||||
&& (PulsedInputState.key[KEY_MENU_CANCEL]
|
||||
|| (PulsedInputState.key[KEY_MENU_RIGHT]
|
||||
&& (PulsedInputState.menu[KEY_MENU_CANCEL]
|
||||
|| (PulsedInputState.menu[KEY_MENU_RIGHT]
|
||||
&& (pMS->col == NUM_MELEE_COLUMNS - 1 || pMS->row == NUM_MELEE_ROWS))))
|
||||
{
|
||||
LockMutex (GraphicsLock);
|
||||
@@ -1207,16 +1207,16 @@ DoEdit (PMELEE_STATE pMS)
|
||||
InTime = GetTimeCounter ();
|
||||
}
|
||||
else if (pMS->row < NUM_MELEE_ROWS
|
||||
&& (PulsedInputState.key[KEY_MENU_SELECT] || PulsedInputState.key[KEY_MENU_SPECIAL]))
|
||||
&& (PulsedInputState.menu[KEY_MENU_SELECT] || PulsedInputState.menu[KEY_MENU_SPECIAL]))
|
||||
{
|
||||
if (PulsedInputState.key[KEY_MENU_SELECT])
|
||||
if (PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
pMS->Initialized = 0;
|
||||
else
|
||||
pMS->Initialized = -1;
|
||||
TFB_ResetControls ();
|
||||
DoPickShip (pMS);
|
||||
}
|
||||
else if (pMS->row < NUM_MELEE_ROWS && PulsedInputState.key[KEY_MENU_DELETE])
|
||||
else if (pMS->row < NUM_MELEE_ROWS && PulsedInputState.menu[KEY_MENU_DELETE])
|
||||
{
|
||||
DeleteCurrentShip (pMS);
|
||||
AdvanceCursor (pMS);
|
||||
@@ -1231,7 +1231,7 @@ DoEdit (PMELEE_STATE pMS)
|
||||
|
||||
if (row == NUM_MELEE_ROWS)
|
||||
{
|
||||
if (PulsedInputState.key[KEY_MENU_SELECT])
|
||||
if (PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
{
|
||||
TEXTENTRY_STATE tes;
|
||||
|
||||
@@ -1264,18 +1264,18 @@ DoEdit (PMELEE_STATE pMS)
|
||||
}
|
||||
|
||||
{
|
||||
if (PulsedInputState.key[KEY_MENU_LEFT])
|
||||
if (PulsedInputState.menu[KEY_MENU_LEFT])
|
||||
{
|
||||
if (col-- == 0)
|
||||
col = 0;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_RIGHT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_RIGHT])
|
||||
{
|
||||
if (++col == NUM_MELEE_COLUMNS)
|
||||
col = NUM_MELEE_COLUMNS - 1;
|
||||
}
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_UP])
|
||||
if (PulsedInputState.menu[KEY_MENU_UP])
|
||||
{
|
||||
if (row-- == 0)
|
||||
{
|
||||
@@ -1288,7 +1288,7 @@ DoEdit (PMELEE_STATE pMS)
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_DOWN])
|
||||
{
|
||||
if (row++ == NUM_MELEE_ROWS)
|
||||
{
|
||||
@@ -1363,11 +1363,11 @@ DoPickShip (PMELEE_STATE pMS)
|
||||
DrawMeleeShipStrings (pMS, (BYTE)(pMS->CurIndex));
|
||||
}
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_SELECT] || PulsedInputState.key[KEY_MENU_CANCEL])
|
||||
else if (PulsedInputState.menu[KEY_MENU_SELECT] || PulsedInputState.menu[KEY_MENU_CANCEL])
|
||||
{
|
||||
pMS->InputFunc = 0; /* disable ship flashing */
|
||||
|
||||
if (!PulsedInputState.key[KEY_MENU_CANCEL])
|
||||
if (!PulsedInputState.menu[KEY_MENU_CANCEL])
|
||||
{
|
||||
HSTARSHIP hStarShip;
|
||||
|
||||
@@ -1401,7 +1401,7 @@ DoPickShip (PMELEE_STATE pMS)
|
||||
|
||||
return (TRUE);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_SPECIAL])
|
||||
else if (PulsedInputState.menu[KEY_MENU_SPECIAL])
|
||||
{
|
||||
DoShipSpin (pMS->CurIndex, (MUSIC_REF)0);
|
||||
|
||||
@@ -1413,25 +1413,25 @@ DoPickShip (PMELEE_STATE pMS)
|
||||
|
||||
NewStarShip = pMS->CurIndex;
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_LEFT])
|
||||
if (PulsedInputState.menu[KEY_MENU_LEFT])
|
||||
{
|
||||
if (NewStarShip-- % NUM_PICK_COLS == 0)
|
||||
NewStarShip += NUM_PICK_COLS;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_RIGHT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_RIGHT])
|
||||
{
|
||||
if (++NewStarShip % NUM_PICK_COLS == 0)
|
||||
NewStarShip -= NUM_PICK_COLS;
|
||||
}
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_UP])
|
||||
if (PulsedInputState.menu[KEY_MENU_UP])
|
||||
{
|
||||
if (NewStarShip >= NUM_PICK_COLS)
|
||||
NewStarShip -= NUM_PICK_COLS;
|
||||
else
|
||||
NewStarShip += NUM_PICK_COLS * (NUM_PICK_ROWS - 1);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_DOWN])
|
||||
{
|
||||
if (NewStarShip < NUM_PICK_COLS * (NUM_PICK_ROWS - 1))
|
||||
NewStarShip += NUM_PICK_COLS;
|
||||
@@ -1649,7 +1649,7 @@ DoMelee (PMELEE_STATE pMS)
|
||||
}
|
||||
InTime = GetTimeCounter ();
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_CANCEL] || PulsedInputState.key[KEY_MENU_LEFT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_CANCEL] || PulsedInputState.menu[KEY_MENU_LEFT])
|
||||
{
|
||||
LockMutex (GraphicsLock);
|
||||
InTime = GetTimeCounter ();
|
||||
@@ -1657,7 +1657,7 @@ DoMelee (PMELEE_STATE pMS)
|
||||
UnlockMutex (GraphicsLock);
|
||||
pMS->MeleeOption = EDIT_MELEE;
|
||||
pMS->Initialized = FALSE;
|
||||
if (PulsedInputState.key[KEY_MENU_CANCEL])
|
||||
if (PulsedInputState.menu[KEY_MENU_CANCEL])
|
||||
{
|
||||
pMS->side = 0;
|
||||
pMS->row = 0;
|
||||
@@ -1676,13 +1676,13 @@ DoMelee (PMELEE_STATE pMS)
|
||||
MELEE_OPTIONS NewMeleeOption;
|
||||
|
||||
NewMeleeOption = pMS->MeleeOption;
|
||||
if (PulsedInputState.key[KEY_MENU_UP])
|
||||
if (PulsedInputState.menu[KEY_MENU_UP])
|
||||
{
|
||||
InTime = GetTimeCounter ();
|
||||
if (NewMeleeOption-- == CONTROLS_TOP)
|
||||
NewMeleeOption = CONTROLS_TOP;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_DOWN])
|
||||
{
|
||||
InTime = GetTimeCounter ();
|
||||
if (NewMeleeOption++ == CONTROLS_BOT)
|
||||
@@ -1705,7 +1705,7 @@ DoMelee (PMELEE_STATE pMS)
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_SELECT] || force_select)
|
||||
if (PulsedInputState.menu[KEY_MENU_SELECT] || force_select)
|
||||
{
|
||||
switch (pMS->MeleeOption)
|
||||
{
|
||||
|
||||
@@ -398,11 +398,11 @@ DoMenuChooser (PMENU_STATE pMS, BYTE BaseState)
|
||||
BOOLEAN useAltMenu = FALSE;
|
||||
if (optWhichMenu == OPT_PC)
|
||||
useAltMenu = GetAlternateMenu (&BaseState, &NewState);
|
||||
if (PulsedInputState.key[KEY_MENU_LEFT] || PulsedInputState.key[KEY_MENU_UP])
|
||||
if (PulsedInputState.menu[KEY_MENU_LEFT] || PulsedInputState.menu[KEY_MENU_UP])
|
||||
NewState = PreviousMenuState (BaseState, NewState);
|
||||
else if (PulsedInputState.key[KEY_MENU_RIGHT] || PulsedInputState.key[KEY_MENU_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_RIGHT] || PulsedInputState.menu[KEY_MENU_DOWN])
|
||||
NewState = NextMenuState (BaseState, NewState);
|
||||
else if (useAltMenu && PulsedInputState.key[KEY_MENU_SELECT])
|
||||
else if (useAltMenu && PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
{
|
||||
NewState = ConvertAlternateMenu (BaseState, NewState);
|
||||
if (NewState == ALT_MANIFEST)
|
||||
|
||||
@@ -113,8 +113,8 @@ DoMouseError (PMOUSE_ERROR_STATE pInputState)
|
||||
UnbatchGraphics ();
|
||||
SleepThreadUntil (pInputState->NextTime + MENU_FRAME_RATE);
|
||||
pInputState->NextTime = GetTimeCounter ();
|
||||
return !(PulsedInputState.key[KEY_MENU_CANCEL] ||
|
||||
PulsedInputState.key[KEY_MENU_SELECT]);
|
||||
return !(PulsedInputState.menu[KEY_MENU_CANCEL] ||
|
||||
PulsedInputState.menu[KEY_MENU_SELECT]);
|
||||
}
|
||||
|
||||
void
|
||||
|
||||
+18
-18
@@ -179,12 +179,12 @@ DoInstallModule (PMENU_STATE pMS)
|
||||
return (TRUE);
|
||||
}
|
||||
|
||||
select = PulsedInputState.key[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.key[KEY_MENU_CANCEL];
|
||||
motion = PulsedInputState.key[KEY_MENU_LEFT] ||
|
||||
PulsedInputState.key[KEY_MENU_RIGHT] ||
|
||||
PulsedInputState.key[KEY_MENU_UP] ||
|
||||
PulsedInputState.key[KEY_MENU_DOWN];
|
||||
select = PulsedInputState.menu[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.menu[KEY_MENU_CANCEL];
|
||||
motion = PulsedInputState.menu[KEY_MENU_LEFT] ||
|
||||
PulsedInputState.menu[KEY_MENU_RIGHT] ||
|
||||
PulsedInputState.menu[KEY_MENU_UP] ||
|
||||
PulsedInputState.menu[KEY_MENU_DOWN];
|
||||
|
||||
SetMenuSounds (MENU_SOUND_ARROWS, MENU_SOUND_SELECT);
|
||||
|
||||
@@ -391,9 +391,9 @@ DoInstallModule (PMENU_STATE pMS)
|
||||
NewItem = NewState < EMPTY_SLOT ? pMS->CurState : pMS->delta_item;
|
||||
do
|
||||
{
|
||||
if (NewState >= EMPTY_SLOT && (PulsedInputState.key[KEY_MENU_UP] || PulsedInputState.key[KEY_MENU_DOWN]))
|
||||
if (NewState >= EMPTY_SLOT && (PulsedInputState.menu[KEY_MENU_UP] || PulsedInputState.menu[KEY_MENU_DOWN]))
|
||||
{
|
||||
if (PulsedInputState.key[KEY_MENU_UP])
|
||||
if (PulsedInputState.menu[KEY_MENU_UP])
|
||||
{
|
||||
if (NewState-- == EMPTY_SLOT)
|
||||
NewState = EMPTY_SLOT + 3;
|
||||
@@ -407,21 +407,21 @@ DoInstallModule (PMENU_STATE pMS)
|
||||
if (GET_GAME_STATE (CHMMR_BOMB_STATE) == 3)
|
||||
{
|
||||
if (NewState == EMPTY_SLOT + 3)
|
||||
NewState = PulsedInputState.key[KEY_MENU_UP] ?
|
||||
NewState = PulsedInputState.menu[KEY_MENU_UP] ?
|
||||
EMPTY_SLOT + 2 : EMPTY_SLOT;
|
||||
if (NewState == EMPTY_SLOT + 2)
|
||||
NewItem = NUM_BOMB_MODULES;
|
||||
}
|
||||
pMS->delta_item = NewItem;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_LEFT] ||
|
||||
PulsedInputState.key[KEY_MENU_UP])
|
||||
else if (PulsedInputState.menu[KEY_MENU_LEFT] ||
|
||||
PulsedInputState.menu[KEY_MENU_UP])
|
||||
{
|
||||
if (NewItem-- == FirstItem)
|
||||
NewItem = LastItem;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_RIGHT] ||
|
||||
PulsedInputState.key[KEY_MENU_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_RIGHT] ||
|
||||
PulsedInputState.menu[KEY_MENU_DOWN])
|
||||
{
|
||||
if (NewItem++ == LastItem)
|
||||
NewItem = FirstItem;
|
||||
@@ -544,7 +544,7 @@ ChangeFuelQuantity (void)
|
||||
|
||||
r.extent.height = 1;
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_UP])
|
||||
if (PulsedInputState.menu[KEY_MENU_UP])
|
||||
{
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
@@ -574,7 +574,7 @@ ChangeFuelQuantity (void)
|
||||
}
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_DOWN])
|
||||
{
|
||||
LockMutex (GraphicsLock);
|
||||
SetContext (SpaceContext);
|
||||
@@ -718,8 +718,8 @@ DoOutfit (PMENU_STATE pMS)
|
||||
|
||||
SetContext (StatusContext);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_CANCEL]
|
||||
|| (PulsedInputState.key[KEY_MENU_SELECT]
|
||||
else if (PulsedInputState.menu[KEY_MENU_CANCEL]
|
||||
|| (PulsedInputState.menu[KEY_MENU_SELECT]
|
||||
&& pMS->CurState == OUTFIT_EXIT))
|
||||
{
|
||||
if (pMS->CurState == OUTFIT_DOFUEL)
|
||||
@@ -740,7 +740,7 @@ ExitOutfit:
|
||||
return (FALSE);
|
||||
}
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_SELECT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
{
|
||||
switch (pMS->CurState)
|
||||
{
|
||||
|
||||
+24
-24
@@ -76,29 +76,29 @@ DoGetMelee (GETMELEE_STATE *gms)
|
||||
}
|
||||
else if (which_player == 0)
|
||||
{
|
||||
left = PulsedInputState.key[KEY_P1_LEFT] ||
|
||||
PulsedInputState.key[KEY_MENU_LEFT];
|
||||
right = PulsedInputState.key[KEY_P1_RIGHT] ||
|
||||
PulsedInputState.key[KEY_MENU_RIGHT];
|
||||
up = PulsedInputState.key[KEY_P1_THRUST] ||
|
||||
PulsedInputState.key[KEY_MENU_UP];
|
||||
down = PulsedInputState.key[KEY_P1_DOWN] ||
|
||||
PulsedInputState.key[KEY_MENU_DOWN];
|
||||
select = PulsedInputState.key[KEY_P1_WEAPON] ||
|
||||
PulsedInputState.key[KEY_MENU_SELECT];
|
||||
left = PulsedInputState.key[CONTROL_TEMPLATE_KB_1][KEY_LEFT] ||
|
||||
PulsedInputState.menu[KEY_MENU_LEFT];
|
||||
right = PulsedInputState.key[CONTROL_TEMPLATE_KB_1][KEY_RIGHT] ||
|
||||
PulsedInputState.menu[KEY_MENU_RIGHT];
|
||||
up = PulsedInputState.key[CONTROL_TEMPLATE_KB_1][KEY_UP] ||
|
||||
PulsedInputState.menu[KEY_MENU_UP];
|
||||
down = PulsedInputState.key[CONTROL_TEMPLATE_KB_1][KEY_DOWN] ||
|
||||
PulsedInputState.menu[KEY_MENU_DOWN];
|
||||
select = PulsedInputState.key[CONTROL_TEMPLATE_KB_1][KEY_WEAPON] ||
|
||||
PulsedInputState.menu[KEY_MENU_SELECT];
|
||||
}
|
||||
else
|
||||
{
|
||||
left = PulsedInputState.key[KEY_P2_LEFT] ||
|
||||
PulsedInputState.key[KEY_MENU_LEFT];
|
||||
right = PulsedInputState.key[KEY_P2_RIGHT] ||
|
||||
PulsedInputState.key[KEY_MENU_RIGHT];
|
||||
up = PulsedInputState.key[KEY_P2_THRUST] ||
|
||||
PulsedInputState.key[KEY_MENU_UP];
|
||||
down = PulsedInputState.key[KEY_P2_DOWN] ||
|
||||
PulsedInputState.key[KEY_MENU_DOWN];
|
||||
select = PulsedInputState.key[KEY_P2_WEAPON] ||
|
||||
PulsedInputState.key[KEY_MENU_SELECT];
|
||||
left = PulsedInputState.key[CONTROL_TEMPLATE_KB_2][KEY_LEFT] ||
|
||||
PulsedInputState.menu[KEY_MENU_LEFT];
|
||||
right = PulsedInputState.key[CONTROL_TEMPLATE_KB_2][KEY_RIGHT] ||
|
||||
PulsedInputState.menu[KEY_MENU_RIGHT];
|
||||
up = PulsedInputState.key[CONTROL_TEMPLATE_KB_2][KEY_UP] ||
|
||||
PulsedInputState.menu[KEY_MENU_UP];
|
||||
down = PulsedInputState.key[CONTROL_TEMPLATE_KB_2][KEY_DOWN] ||
|
||||
PulsedInputState.menu[KEY_MENU_DOWN];
|
||||
select = PulsedInputState.key[CONTROL_TEMPLATE_KB_2][KEY_WEAPON] ||
|
||||
PulsedInputState.menu[KEY_MENU_SELECT];
|
||||
}
|
||||
|
||||
if (GLOBAL (CurrentActivity) & CHECK_ABORT)
|
||||
@@ -303,13 +303,13 @@ GetMeleeStarShip (STARSHIPPTR LastStarShipPtr, COUNT which_player)
|
||||
SetContext (OldContext);
|
||||
UnlockMutex (GraphicsLock);
|
||||
|
||||
PressState = PulsedInputState.key[KEY_MENU_SELECT] ||
|
||||
PulsedInputState.key[KEY_MENU_CANCEL];
|
||||
PressState = PulsedInputState.menu[KEY_MENU_SELECT] ||
|
||||
PulsedInputState.menu[KEY_MENU_CANCEL];
|
||||
do
|
||||
{
|
||||
UpdateInputState ();
|
||||
ButtonState = PulsedInputState.key[KEY_MENU_SELECT] ||
|
||||
PulsedInputState.key[KEY_MENU_CANCEL];
|
||||
ButtonState = PulsedInputState.menu[KEY_MENU_SELECT] ||
|
||||
PulsedInputState.menu[KEY_MENU_CANCEL];
|
||||
if (PressState)
|
||||
{
|
||||
PressState = ButtonState;
|
||||
|
||||
@@ -59,7 +59,7 @@ DoPickBattleShip (PMENU_STATE pMS)
|
||||
|
||||
goto ChangeSelection;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_SELECT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
{
|
||||
if ((HSTARSHIP)pMS->CurFrame)
|
||||
{
|
||||
@@ -71,10 +71,10 @@ DoPickBattleShip (PMENU_STATE pMS)
|
||||
{
|
||||
COORD new_row, new_col;
|
||||
int dx = 0, dy = 0;
|
||||
if (PulsedInputState.key[KEY_MENU_RIGHT]) dx = 1;
|
||||
if (PulsedInputState.key[KEY_MENU_LEFT]) dx = -1;
|
||||
if (PulsedInputState.key[KEY_MENU_UP]) dy = -1;
|
||||
if (PulsedInputState.key[KEY_MENU_DOWN]) dy = 1;
|
||||
if (PulsedInputState.menu[KEY_MENU_RIGHT]) dx = 1;
|
||||
if (PulsedInputState.menu[KEY_MENU_LEFT]) dx = -1;
|
||||
if (PulsedInputState.menu[KEY_MENU_UP]) dy = -1;
|
||||
if (PulsedInputState.menu[KEY_MENU_DOWN]) dy = 1;
|
||||
|
||||
new_col = pMS->first_item.x + dx;
|
||||
new_row = pMS->first_item.y + dy;
|
||||
|
||||
@@ -279,10 +279,10 @@ DoDiscardCargo (PMENU_STATE pMS)
|
||||
{
|
||||
BYTE NewState;
|
||||
BOOLEAN select, cancel, back, forward;
|
||||
select = PulsedInputState.key[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.key[KEY_MENU_CANCEL];
|
||||
back = PulsedInputState.key[KEY_MENU_UP] || PulsedInputState.key[KEY_MENU_LEFT];
|
||||
forward = PulsedInputState.key[KEY_MENU_DOWN] || PulsedInputState.key[KEY_MENU_RIGHT];
|
||||
select = PulsedInputState.menu[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.menu[KEY_MENU_CANCEL];
|
||||
back = PulsedInputState.menu[KEY_MENU_UP] || PulsedInputState.menu[KEY_MENU_LEFT];
|
||||
forward = PulsedInputState.menu[KEY_MENU_DOWN] || PulsedInputState.menu[KEY_MENU_RIGHT];
|
||||
|
||||
if (GLOBAL (CurrentActivity) & CHECK_ABORT)
|
||||
return (FALSE);
|
||||
|
||||
@@ -426,10 +426,10 @@ DoManipulateDevices (PMENU_STATE pMS)
|
||||
{
|
||||
BYTE NewState;
|
||||
BOOLEAN select, cancel, back, forward;
|
||||
select = PulsedInputState.key[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.key[KEY_MENU_CANCEL];
|
||||
back = PulsedInputState.key[KEY_MENU_UP] || PulsedInputState.key[KEY_MENU_LEFT];
|
||||
forward = PulsedInputState.key[KEY_MENU_DOWN] || PulsedInputState.key[KEY_MENU_RIGHT];
|
||||
select = PulsedInputState.menu[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.menu[KEY_MENU_CANCEL];
|
||||
back = PulsedInputState.menu[KEY_MENU_UP] || PulsedInputState.menu[KEY_MENU_LEFT];
|
||||
forward = PulsedInputState.menu[KEY_MENU_DOWN] || PulsedInputState.menu[KEY_MENU_RIGHT];
|
||||
|
||||
if (GLOBAL (CurrentActivity) & CHECK_ABORT)
|
||||
return (FALSE);
|
||||
|
||||
@@ -1625,7 +1625,7 @@ SetVelocityComponents (
|
||||
}
|
||||
else if (pMS->delta_item == 0
|
||||
|| (HIBYTE (pMS->delta_item)
|
||||
&& (CurrentInputState.key[KEY_LANDER_ESCAPE]
|
||||
&& (CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_ESCAPE]
|
||||
|| ((PPLANETSIDE_DESC)pMenuState->ModuleFrame)->InTransit)))
|
||||
{
|
||||
if (pMS->delta_item || pMS->CurState > EXPLOSION_LIFE + 60)
|
||||
@@ -1686,9 +1686,9 @@ SetVelocityComponents (
|
||||
index = GetFrameIndex (LanderFrame[0]);
|
||||
if (LONIBBLE (pMS->CurState))
|
||||
pMS->CurState -= MAKE_BYTE (1, 0);
|
||||
else if (CurrentInputState.key[KEY_LANDER_LEFT] || CurrentInputState.key[KEY_LANDER_RIGHT])
|
||||
else if (CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_LEFT] || CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_RIGHT])
|
||||
{
|
||||
if (CurrentInputState.key[KEY_LANDER_LEFT])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_LEFT])
|
||||
{
|
||||
dx = -1;
|
||||
--index;
|
||||
@@ -1728,7 +1728,7 @@ SetVelocityComponents (
|
||||
);
|
||||
}
|
||||
|
||||
if (!CurrentInputState.key[KEY_LANDER_THRUST])
|
||||
if (!CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_UP])
|
||||
dx = dy = 0;
|
||||
else
|
||||
GetNextVelocityComponents (
|
||||
@@ -1737,7 +1737,7 @@ SetVelocityComponents (
|
||||
|
||||
if (HINIBBLE (pMS->CurState))
|
||||
pMS->CurState -= MAKE_BYTE (0, 1);
|
||||
else if (CurrentInputState.key[KEY_LANDER_WEAPON])
|
||||
else if (CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_WEAPON])
|
||||
{
|
||||
HELEMENT hWeaponElement;
|
||||
|
||||
@@ -1766,7 +1766,7 @@ SetVelocityComponents (
|
||||
index + ANGLE_TO_FACING (FULL_CIRCLE)
|
||||
);
|
||||
|
||||
if (!CurrentInputState.key[KEY_LANDER_THRUST])
|
||||
if (!CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_UP])
|
||||
wdx = wdy = 0;
|
||||
else
|
||||
GetCurrentVelocityComponents (
|
||||
|
||||
@@ -1131,7 +1131,7 @@ OnStarNameFrame (PTEXTENTRY_STATE pTES)
|
||||
STAR_SEARCH_STATE *pSS = (STAR_SEARCH_STATE *) pTES->CbParam;
|
||||
PMENU_STATE pMS = pSS->pMS;
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_NEXT])
|
||||
if (PulsedInputState.menu[KEY_MENU_NEXT])
|
||||
{ // search for next match
|
||||
STAR_DESCPTR SDPtr;
|
||||
|
||||
@@ -1139,7 +1139,7 @@ OnStarNameFrame (PTEXTENTRY_STATE pTES)
|
||||
|
||||
if (pSS->CurIndex < 0)
|
||||
{ // nothing found
|
||||
if (PulsedInputState.key[KEY_MENU_NEXT])
|
||||
if (PulsedInputState.menu[KEY_MENU_NEXT])
|
||||
PlayMenuSound (MENU_SOUND_FAILURE);
|
||||
return TRUE;
|
||||
}
|
||||
@@ -1225,7 +1225,7 @@ DoMoveCursor (PMENU_STATE pMS)
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_CANCEL])
|
||||
else if (PulsedInputState.menu[KEY_MENU_CANCEL])
|
||||
{
|
||||
if (pMS->flash_task)
|
||||
{
|
||||
@@ -1235,7 +1235,7 @@ DoMoveCursor (PMENU_STATE pMS)
|
||||
|
||||
return (FALSE);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_SELECT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
{
|
||||
GLOBAL (autopilot) = pMS->first_item;
|
||||
#ifdef DEBUG
|
||||
@@ -1267,7 +1267,7 @@ DoMoveCursor (PMENU_STATE pMS)
|
||||
#endif
|
||||
DrawStarMap (0, NULL_PTR);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_SEARCH])
|
||||
else if (PulsedInputState.menu[KEY_MENU_SEARCH])
|
||||
{
|
||||
if (GET_GAME_STATE (ARILOU_SPACE_SIDE) <= 1)
|
||||
{ // HyperSpace search
|
||||
@@ -1297,18 +1297,18 @@ DoMoveCursor (PMENU_STATE pMS)
|
||||
SIZE ZoomIn, ZoomOut;
|
||||
|
||||
ZoomIn = ZoomOut = 0;
|
||||
if (PulsedInputState.key[KEY_MENU_ZOOM_IN])
|
||||
if (PulsedInputState.menu[KEY_MENU_ZOOM_IN])
|
||||
ZoomIn = 1;
|
||||
else if (PulsedInputState.key[KEY_MENU_ZOOM_OUT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_ZOOM_OUT])
|
||||
ZoomOut = 1;
|
||||
|
||||
ZoomStarMap (ZoomIn - ZoomOut);
|
||||
|
||||
sx = sy = 0;
|
||||
if (PulsedInputState.key[KEY_MENU_LEFT]) sx = -1;
|
||||
if (PulsedInputState.key[KEY_MENU_RIGHT]) sx = 1;
|
||||
if (PulsedInputState.key[KEY_MENU_UP]) sy = -1;
|
||||
if (PulsedInputState.key[KEY_MENU_DOWN]) sy = 1;
|
||||
if (PulsedInputState.menu[KEY_MENU_LEFT]) sx = -1;
|
||||
if (PulsedInputState.menu[KEY_MENU_RIGHT]) sx = 1;
|
||||
if (PulsedInputState.menu[KEY_MENU_UP]) sy = -1;
|
||||
if (PulsedInputState.menu[KEY_MENU_DOWN]) sy = 1;
|
||||
|
||||
if (sx != 0 || sy != 0)
|
||||
{
|
||||
@@ -1665,7 +1665,7 @@ DoFlagshipCommands (PMENU_STATE pMS)
|
||||
}
|
||||
else
|
||||
{
|
||||
BOOLEAN select = PulsedInputState.key[KEY_MENU_SELECT];
|
||||
BOOLEAN select = PulsedInputState.menu[KEY_MENU_SELECT];
|
||||
LockMutex (GraphicsLock);
|
||||
if (*(volatile BYTE *)&pMS->CurState == 0
|
||||
&& (*(volatile SIZE *)&pMS->Initialized & 1)
|
||||
|
||||
@@ -205,12 +205,12 @@ DoModifyRoster (PMENU_STATE pMS)
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
select = PulsedInputState.key[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.key[KEY_MENU_CANCEL];
|
||||
up = PulsedInputState.key[KEY_MENU_UP];
|
||||
down = PulsedInputState.key[KEY_MENU_DOWN];
|
||||
horiz = PulsedInputState.key[KEY_MENU_LEFT] ||
|
||||
PulsedInputState.key[KEY_MENU_RIGHT];
|
||||
select = PulsedInputState.menu[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.menu[KEY_MENU_CANCEL];
|
||||
up = PulsedInputState.menu[KEY_MENU_UP];
|
||||
down = PulsedInputState.menu[KEY_MENU_DOWN];
|
||||
horiz = PulsedInputState.menu[KEY_MENU_LEFT] ||
|
||||
PulsedInputState.menu[KEY_MENU_RIGHT];
|
||||
|
||||
if (pMS->Initialized && (pMS->CurState & SHIP_TOGGLE))
|
||||
{
|
||||
|
||||
@@ -666,8 +666,8 @@ static BOOLEAN
|
||||
PickPlanetSide (PMENU_STATE pMS)
|
||||
{
|
||||
BOOLEAN select, cancel;
|
||||
select = PulsedInputState.key[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.key[KEY_MENU_CANCEL];
|
||||
select = PulsedInputState.menu[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.menu[KEY_MENU_CANCEL];
|
||||
if (GLOBAL (CurrentActivity) & CHECK_ABORT)
|
||||
{
|
||||
if (pMenuState->flash_task)
|
||||
@@ -819,10 +819,10 @@ ExitPlanetSide:
|
||||
|
||||
new_pt = pSolarSysState->MenuState.first_item;
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_LEFT]) dx = -1;
|
||||
if (PulsedInputState.key[KEY_MENU_RIGHT]) dx = 1;
|
||||
if (PulsedInputState.key[KEY_MENU_UP]) dy = -1;
|
||||
if (PulsedInputState.key[KEY_MENU_DOWN]) dy = 1;
|
||||
if (PulsedInputState.menu[KEY_MENU_LEFT]) dx = -1;
|
||||
if (PulsedInputState.menu[KEY_MENU_RIGHT]) dx = 1;
|
||||
if (PulsedInputState.menu[KEY_MENU_UP]) dy = -1;
|
||||
if (PulsedInputState.menu[KEY_MENU_DOWN]) dy = 1;
|
||||
|
||||
dx = dx << MAG_SHIFT;
|
||||
if (dx)
|
||||
@@ -951,8 +951,8 @@ DoScan (PMENU_STATE pMS)
|
||||
DWORD TimeIn, WaitTime;
|
||||
BOOLEAN select, cancel;
|
||||
|
||||
select = PulsedInputState.key[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.key[KEY_MENU_CANCEL];
|
||||
select = PulsedInputState.menu[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.menu[KEY_MENU_CANCEL];
|
||||
if (GLOBAL (CurrentActivity) & CHECK_ABORT)
|
||||
return (FALSE);
|
||||
|
||||
|
||||
@@ -810,15 +810,15 @@ ProcessShipControls (void)
|
||||
|
||||
ClockTick ();
|
||||
|
||||
if (CurrentInputState.key[KEY_P1_THRUST])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_UP])
|
||||
delta_y = -1;
|
||||
else
|
||||
delta_y = 0;
|
||||
|
||||
delta_x = 0;
|
||||
if (CurrentInputState.key[KEY_P1_LEFT])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_LEFT])
|
||||
delta_x -= 1;
|
||||
if (CurrentInputState.key[KEY_P1_RIGHT])
|
||||
if (CurrentInputState.key[CONTROL_TEMPLATE_KB_1][KEY_RIGHT])
|
||||
delta_x += 1;
|
||||
|
||||
if (delta_x || delta_y < 0)
|
||||
@@ -1215,8 +1215,8 @@ IP_frame (void)
|
||||
* DoFlagshipCommands, which is running in
|
||||
* parallel with us */
|
||||
// UpdateInputState ();
|
||||
cancel = PulsedInputState.key[KEY_MENU_CANCEL];
|
||||
select = PulsedInputState.key[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.menu[KEY_MENU_CANCEL];
|
||||
select = PulsedInputState.menu[KEY_MENU_SELECT];
|
||||
IP_input_state = (cancel << 1) | select;
|
||||
}
|
||||
// JournalInput (InputState);
|
||||
|
||||
@@ -149,9 +149,9 @@ else if (InputState & DEVICE_EXIT) return (FALSE);
|
||||
{
|
||||
return (FALSE);
|
||||
}
|
||||
else if (!(PulsedInputState.key[KEY_MENU_UP] || PulsedInputState.key[KEY_MENU_DOWN] ||
|
||||
PulsedInputState.key[KEY_MENU_LEFT] || PulsedInputState.key[KEY_MENU_RIGHT] ||
|
||||
PulsedInputState.key[KEY_MENU_SELECT] || MouseButtonDown))
|
||||
else if (!(PulsedInputState.menu[KEY_MENU_UP] || PulsedInputState.menu[KEY_MENU_DOWN] ||
|
||||
PulsedInputState.menu[KEY_MENU_LEFT] || PulsedInputState.menu[KEY_MENU_RIGHT] ||
|
||||
PulsedInputState.menu[KEY_MENU_SELECT] || MouseButtonDown))
|
||||
|
||||
{
|
||||
if (GetTimeCounter () - InTime < InactTimeOut)
|
||||
@@ -164,7 +164,7 @@ else if (InputState & DEVICE_EXIT) return (FALSE);
|
||||
GLOBAL (CurrentActivity) = (ACTIVITY)~0;
|
||||
return (FALSE);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_SELECT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
{
|
||||
BYTE fade_buf[1];
|
||||
|
||||
@@ -214,12 +214,12 @@ else if (InputState & DEVICE_EXIT) return (FALSE);
|
||||
BYTE NewState;
|
||||
|
||||
NewState = pMS->CurState;
|
||||
if (PulsedInputState.key[KEY_MENU_UP])
|
||||
if (PulsedInputState.menu[KEY_MENU_UP])
|
||||
{
|
||||
if (NewState-- == START_NEW_GAME)
|
||||
NewState = QUIT_GAME;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_DOWN])
|
||||
{
|
||||
if (NewState++ == QUIT_GAME)
|
||||
NewState = START_NEW_GAME;
|
||||
|
||||
@@ -280,8 +280,8 @@ SaveProblem (void)
|
||||
{
|
||||
TaskSwitch ();
|
||||
UpdateInputState ();
|
||||
} while (!(PulsedInputState.key[KEY_MENU_SELECT] ||
|
||||
PulsedInputState.key[KEY_MENU_SPECIAL] ||
|
||||
} while (!(PulsedInputState.menu[KEY_MENU_SELECT] ||
|
||||
PulsedInputState.menu[KEY_MENU_SPECIAL] ||
|
||||
(GLOBAL (CurrentActivity) & CHECK_ABORT)));
|
||||
|
||||
LockMutex (GraphicsLock);
|
||||
|
||||
@@ -359,27 +359,27 @@ DoSetupMenu (PSETUP_MENU_STATE pInputState)
|
||||
|
||||
UnbatchGraphics ();
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_UP])
|
||||
if (PulsedInputState.menu[KEY_MENU_UP])
|
||||
{
|
||||
Widget_Event (WIDGET_EVENT_UP);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_DOWN])
|
||||
{
|
||||
Widget_Event (WIDGET_EVENT_DOWN);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_LEFT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_LEFT])
|
||||
{
|
||||
Widget_Event (WIDGET_EVENT_LEFT);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_RIGHT])
|
||||
else if (PulsedInputState.menu[KEY_MENU_RIGHT])
|
||||
{
|
||||
Widget_Event (WIDGET_EVENT_RIGHT);
|
||||
}
|
||||
if (PulsedInputState.key[KEY_MENU_SELECT])
|
||||
if (PulsedInputState.menu[KEY_MENU_SELECT])
|
||||
{
|
||||
Widget_Event (WIDGET_EVENT_SELECT);
|
||||
}
|
||||
if (PulsedInputState.key[KEY_MENU_CANCEL])
|
||||
if (PulsedInputState.menu[KEY_MENU_CANCEL])
|
||||
{
|
||||
Widget_Event (WIDGET_EVENT_CANCEL);
|
||||
}
|
||||
|
||||
@@ -286,7 +286,7 @@ sis_hyper_postprocess (PELEMENT ElementPtr)
|
||||
|
||||
GetElementStarShip (ElementPtr, &StarShipPtr);
|
||||
if (((StarShipPtr->cur_status_flags & WEAPON) ||
|
||||
PulsedInputState.key[KEY_MENU_CANCEL])
|
||||
PulsedInputState.menu[KEY_MENU_CANCEL])
|
||||
&& StarShipPtr->special_counter == 0)
|
||||
{
|
||||
#define MENU_DELAY 10
|
||||
|
||||
@@ -575,10 +575,10 @@ DoModifyShips (PMENU_STATE pMS)
|
||||
#ifdef WANT_SHIP_SPINS
|
||||
BOOLEAN special;
|
||||
|
||||
special = PulsedInputState.key[KEY_MENU_SPECIAL];
|
||||
special = PulsedInputState.menu[KEY_MENU_SPECIAL];
|
||||
#endif /* WANT_SHIP_SPINS */
|
||||
select = PulsedInputState.key[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.key[KEY_MENU_CANCEL];
|
||||
select = PulsedInputState.menu[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.menu[KEY_MENU_CANCEL];
|
||||
|
||||
if (GLOBAL (CurrentActivity) & CHECK_ABORT)
|
||||
{
|
||||
@@ -608,10 +608,10 @@ DoModifyShips (PMENU_STATE pMS)
|
||||
SetMenuSounds (MENU_SOUND_ARROWS, MENU_SOUND_SELECT);
|
||||
}
|
||||
|
||||
if (PulsedInputState.key[KEY_MENU_RIGHT]) dx = 1;
|
||||
if (PulsedInputState.key[KEY_MENU_LEFT]) dx = -1;
|
||||
if (PulsedInputState.key[KEY_MENU_UP]) dy = -1;
|
||||
if (PulsedInputState.key[KEY_MENU_DOWN]) dy = 1;
|
||||
if (PulsedInputState.menu[KEY_MENU_RIGHT]) dx = 1;
|
||||
if (PulsedInputState.menu[KEY_MENU_LEFT]) dx = -1;
|
||||
if (PulsedInputState.menu[KEY_MENU_UP]) dy = -1;
|
||||
if (PulsedInputState.menu[KEY_MENU_DOWN]) dy = 1;
|
||||
NewState = pMS->CurState;
|
||||
if (pMS->delta_item & MODIFY_CREW_FLAG)
|
||||
{
|
||||
@@ -1204,8 +1204,8 @@ DoShipyard (PMENU_STATE pMS)
|
||||
if (GLOBAL (CurrentActivity) & CHECK_ABORT)
|
||||
goto ExitShipyard;
|
||||
|
||||
select = PulsedInputState.key[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.key[KEY_MENU_CANCEL];
|
||||
select = PulsedInputState.menu[KEY_MENU_SELECT];
|
||||
cancel = PulsedInputState.menu[KEY_MENU_CANCEL];
|
||||
|
||||
SetMenuSounds (MENU_SOUND_ARROWS, MENU_SOUND_SELECT);
|
||||
if (!pMS->Initialized)
|
||||
|
||||
@@ -349,7 +349,7 @@ s.origin.x = SAFE_X, s.origin.y = SAFE_Y + 4;
|
||||
"rotate starbase");
|
||||
UnlockMutex (GraphicsLock);
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_SELECT]
|
||||
else if (PulsedInputState.menu[KEY_MENU_SELECT]
|
||||
|| GET_GAME_STATE (MOONBASE_ON_SHIP)
|
||||
|| GET_GAME_STATE (CHMMR_BOMB_STATE) == 2)
|
||||
{
|
||||
@@ -411,12 +411,12 @@ ExitStarBase:
|
||||
STARBASE_STATE NewState;
|
||||
|
||||
NewState = pMS->CurState;
|
||||
if (PulsedInputState.key[KEY_MENU_LEFT] || PulsedInputState.key[KEY_MENU_UP])
|
||||
if (PulsedInputState.menu[KEY_MENU_LEFT] || PulsedInputState.menu[KEY_MENU_UP])
|
||||
{
|
||||
if (NewState-- == TALK_COMMANDER)
|
||||
NewState = DEPART_BASE;
|
||||
}
|
||||
else if (PulsedInputState.key[KEY_MENU_RIGHT] || PulsedInputState.key[KEY_MENU_DOWN])
|
||||
else if (PulsedInputState.menu[KEY_MENU_RIGHT] || PulsedInputState.menu[KEY_MENU_DOWN])
|
||||
{
|
||||
if (NewState++ == DEPART_BASE)
|
||||
NewState = TALK_COMMANDER;
|
||||
|
||||
@@ -186,13 +186,13 @@ PauseGame (void)
|
||||
FlushGraphics ();
|
||||
//LockMutex (GraphicsLock);
|
||||
|
||||
while (ImmediateInputState.key[KEY_PAUSE])
|
||||
while (ImmediateInputState.menu[KEY_PAUSE])
|
||||
TaskSwitch ();
|
||||
|
||||
while (!ImmediateInputState.key[KEY_PAUSE])
|
||||
while (!ImmediateInputState.menu[KEY_PAUSE])
|
||||
TaskSwitch ();
|
||||
|
||||
while (ImmediateInputState.key[KEY_PAUSE])
|
||||
while (ImmediateInputState.menu[KEY_PAUSE])
|
||||
TaskSwitch ();
|
||||
|
||||
GamePaused = FALSE;
|
||||
|
||||
Reference in New Issue
Block a user