mirror of
https://github.com/1dot13/source.git
synced 2026-07-22 13:40:22 +02:00
New feature: food system requires mercs to eat and drink in order to survive
- food and water levels are lowered every hour, eat food to survive - not doing so leads to various penalties and ultimately death - added food items for that purpose. Food can degrade over time. Rotten food poisons. - Mercs automatically consume food if hungry/thirsty and food is in their inventories - for more info, see http://www.bears-pit.com/board/ubbthreads.php/topics/307396/Re_Mercs_need_food_and_water_t.html#Post307396 - this feature requires new STI files from the GameDir trunk. - added a bunch of filler variable to the soldier type, so hopefully savegame compatibility can be maintained easier in the future. WARNING: This will break savegame compatibility git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@5411 3b4a5df2-a311-0410-b5c6-a8a6f20db521
This commit is contained in:
+190
-2
@@ -158,6 +158,10 @@
|
||||
#define GIO_OVERHEATING_SETTING_Y GIO_DROPALL_SETTING_Y + CHECK_Y_OFFSET + CORRECTION_Y_OFFSET
|
||||
#define GIO_OVERHEATING_SETTING_WIDTH CHECK_WIDTH
|
||||
|
||||
#define GIO_FOODSYSTEM_SETTING_X SECOND_COLUMN_X + CHECK_X_OFFSET
|
||||
#define GIO_FOODSYSTEM_SETTING_Y GIO_OVERHEATING_SETTING_Y + CHECK_Y_OFFSET + CORRECTION_Y_OFFSET
|
||||
#define GIO_FOODSYSTEM_SETTING_WIDTH CHECK_WIDTH
|
||||
|
||||
/*********************************
|
||||
THIRD COLUMN
|
||||
**********************************/
|
||||
@@ -581,6 +585,7 @@ UINT8 GetCurrentInventoryAPButtonSetting();
|
||||
UINT8 GetCurrentNCTHButtonSetting();
|
||||
UINT8 GetCurrentIISButtonSetting();
|
||||
UINT8 GetCurrentOverheatingButtonSetting();
|
||||
UINT8 GetCurrentFoodSystemButtonSetting();
|
||||
|
||||
void DoneFadeOutForExitGameInitOptionScreen( void );
|
||||
void DoneFadeInForExitGameInitOptionScreen( void );
|
||||
@@ -694,6 +699,7 @@ UINT32 GameInitOptionsScreenInit( void )
|
||||
gGameOptions.fUseNCTH = FALSE;
|
||||
gGameOptions.fImprovedInterruptSystem = FALSE;
|
||||
gGameOptions.fWeaponOverheating = FALSE;
|
||||
gGameOptions.fFoodSystem = FALSE;
|
||||
|
||||
gGameOptions.fAirStrikes = FALSE;
|
||||
gGameOptions.fTurnTimeLimit = FALSE;
|
||||
@@ -1285,7 +1291,36 @@ BOOLEAN EnterGIOScreen()
|
||||
if( gGameOptions.fWeaponOverheating )
|
||||
ButtonList[ guiOverheatingOptionToggles[ GIO_BUTTON_ON ] ]->uiFlags |= BUTTON_CLICKED_ON;
|
||||
else
|
||||
ButtonList[ guiOverheatingOptionToggles[ GIO_BUTTON_OFF ] ]->uiFlags |= BUTTON_CLICKED_ON;
|
||||
ButtonList[ guiOverheatingOptionToggles[ GIO_BUTTON_OFF ] ]->uiFlags |= BUTTON_CLICKED_ON;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// FOOD SYSTEM ON/OFF SETTING
|
||||
|
||||
guiFoodSystemOptionTogglesImage[ GIO_BUTTON_OFF ] = UseLoadedButtonImage( guiTraitsOptionTogglesImage[ GIO_TRAITS_OLD ], -1,1,-1,3,-1 );
|
||||
guiFoodSystemOptionToggles[ GIO_BUTTON_OFF ] = CreateIconAndTextButton( guiFoodSystemOptionTogglesImage[ GIO_BUTTON_OFF ], gzGIOScreenText[ GIO_DROPALL_OFF_TEXT ], GIO_TOGGLE_TEXT_FONT,
|
||||
GIO_TOGGLE_TEXT_COLOR, NO_SHADOW,
|
||||
GIO_TOGGLE_TEXT_COLOR, NO_SHADOW,
|
||||
TEXT_CJUSTIFIED,
|
||||
(GIO_FOODSYSTEM_SETTING_X), (GIO_FOODSYSTEM_SETTING_Y + 10), BUTTON_TOGGLE, MSYS_PRIORITY_HIGH,
|
||||
DEFAULT_MOVE_CALLBACK, BtnGIOFoodSystemOffCallback);
|
||||
|
||||
guiFoodSystemOptionTogglesImage[ GIO_BUTTON_ON ] = UseLoadedButtonImage( guiTraitsOptionTogglesImage[ GIO_TRAITS_OLD ], -1,1,-1,3,-1 );
|
||||
guiFoodSystemOptionToggles[ GIO_BUTTON_ON ] = CreateIconAndTextButton( guiFoodSystemOptionTogglesImage[ GIO_BUTTON_ON ], gzGIOScreenText[ GIO_DROPALL_ON_TEXT ], GIO_TOGGLE_TEXT_FONT,
|
||||
GIO_TOGGLE_TEXT_COLOR, NO_SHADOW,
|
||||
GIO_TOGGLE_TEXT_COLOR, NO_SHADOW,
|
||||
TEXT_CJUSTIFIED,
|
||||
(GIO_FOODSYSTEM_SETTING_X + 74), (GIO_FOODSYSTEM_SETTING_Y + 10), BUTTON_TOGGLE, MSYS_PRIORITY_HIGH,
|
||||
DEFAULT_MOVE_CALLBACK, BtnGIOFoodSystemOnCallback );
|
||||
|
||||
SpecifyButtonSoundScheme( guiFoodSystemOptionToggles[ GIO_BUTTON_OFF ], BUTTON_SOUND_SCHEME_BIGSWITCH3 );
|
||||
SpecifyButtonSoundScheme( guiFoodSystemOptionToggles[ GIO_BUTTON_ON ], BUTTON_SOUND_SCHEME_BIGSWITCH3 );
|
||||
MSYS_SetBtnUserData(guiFoodSystemOptionToggles[ GIO_BUTTON_OFF ],0, 0 );
|
||||
MSYS_SetBtnUserData(guiFoodSystemOptionToggles[ GIO_BUTTON_ON ],0, 1 );
|
||||
|
||||
if( gGameOptions.fFoodSystem )
|
||||
ButtonList[ guiFoodSystemOptionToggles[ GIO_BUTTON_ON ] ]->uiFlags |= BUTTON_CLICKED_ON;
|
||||
else
|
||||
ButtonList[ guiFoodSystemOptionToggles[ GIO_BUTTON_OFF ] ]->uiFlags |= BUTTON_CLICKED_ON;
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -2257,6 +2292,37 @@ void BtnGIOOverheatingOnCallback(GUI_BUTTON *btn,INT32 reason)
|
||||
}
|
||||
}
|
||||
|
||||
void BtnGIOFoodSystemOffCallback(GUI_BUTTON *btn,INT32 reason)
|
||||
{
|
||||
if (!(btn->uiFlags & BUTTON_ENABLED))
|
||||
return;
|
||||
|
||||
if( reason & MSYS_CALLBACK_REASON_LBUTTON_DWN )
|
||||
{
|
||||
RestoreExternBackgroundRect( (GIO_FOODSYSTEM_SETTING_X), (GIO_FOODSYSTEM_SETTING_Y + 10), 230, 40 );
|
||||
|
||||
ButtonList[ guiFoodSystemOptionToggles[ GIO_BUTTON_ON ] ]->uiFlags &= ~BUTTON_CLICKED_ON;
|
||||
btn->uiFlags|=(BUTTON_CLICKED_ON);
|
||||
|
||||
PlayButtonSound( guiFoodSystemOptionToggles[ GIO_BUTTON_OFF ], BUTTON_SOUND_CLICKED_ON );
|
||||
}
|
||||
}
|
||||
void BtnGIOFoodSystemOnCallback(GUI_BUTTON *btn,INT32 reason)
|
||||
{
|
||||
if (!(btn->uiFlags & BUTTON_ENABLED))
|
||||
return;
|
||||
|
||||
if( reason & MSYS_CALLBACK_REASON_LBUTTON_DWN )
|
||||
{
|
||||
RestoreExternBackgroundRect( (GIO_FOODSYSTEM_SETTING_X), (GIO_FOODSYSTEM_SETTING_Y + 10), 230, 40 );
|
||||
|
||||
ButtonList[ guiFoodSystemOptionToggles[ GIO_BUTTON_OFF ] ]->uiFlags &= ~BUTTON_CLICKED_ON;
|
||||
btn->uiFlags|=(BUTTON_CLICKED_ON);
|
||||
|
||||
PlayButtonSound( guiFoodSystemOptionToggles[ GIO_BUTTON_ON ], BUTTON_SOUND_CLICKED_ON );
|
||||
}
|
||||
}
|
||||
|
||||
BOOLEAN ExitGIOScreen()
|
||||
{
|
||||
UINT16 cnt;
|
||||
@@ -2393,6 +2459,13 @@ BOOLEAN ExitGIOScreen()
|
||||
UnloadButtonImage( guiOverheatingOptionTogglesImage[ cnt ] );
|
||||
}
|
||||
|
||||
// Destroy Food System Cost setting buttons
|
||||
for( cnt=0; cnt<GIO_NUM_ONOFF_BUTTONS; cnt++)
|
||||
{
|
||||
RemoveButton( guiFoodSystemOptionToggles[ cnt ] );
|
||||
UnloadButtonImage( guiFoodSystemptionTogglesImage[ cnt ] );
|
||||
}
|
||||
|
||||
gfGIOButtonsAllocated = FALSE;
|
||||
|
||||
//If we are starting the game stop playing the music
|
||||
@@ -2568,6 +2641,8 @@ BOOLEAN RenderGIOScreen()
|
||||
DisplayWrappedString( (GIO_IIS_SETTING_X - 6), (UINT16)(GIO_IIS_SETTING_Y-GIO_GAP_BN_SETTINGS + GIO_TITLE_DISTANCE), GIO_IIS_SETTING_WIDTH + 14, 2, GIO_TOGGLE_TEXT_FONT, GIO_TOGGLE_TEXT_COLOR, gzGIOScreenText[ GIO_IIS_TITLE_TEXT ], FONT_MCOLOR_BLACK, FALSE, CENTER_JUSTIFIED );
|
||||
//Display the Weapon Overheating Settings Title Text
|
||||
DisplayWrappedString( (GIO_OVERHEATING_SETTING_X - 6), (UINT16)(GIO_OVERHEATING_SETTING_Y-GIO_GAP_BN_SETTINGS + GIO_TITLE_DISTANCE), GIO_OVERHEATING_SETTING_WIDTH + 14, 2, GIO_TOGGLE_TEXT_FONT, GIO_TOGGLE_TEXT_COLOR, gzGIOScreenText[ GIO_OVERHEATING_TITLE_TEXT ], FONT_MCOLOR_BLACK, FALSE, CENTER_JUSTIFIED );
|
||||
//Display the Food System Settings Title Text
|
||||
DisplayWrappedString( (GIO_FOODSYSTEM_SETTING_X - 6), (UINT16)(GIO_FOODSYSTEM_SETTING_Y-GIO_GAP_BN_SETTINGS + GIO_TITLE_DISTANCE), GIO_FOODSYSTEM_SETTING_WIDTH + 14, 2, GIO_TOGGLE_TEXT_FONT, GIO_TOGGLE_TEXT_COLOR, gzGIOScreenText[ GIO_FOODSYSTEM_TITLE_TEXT ], FONT_MCOLOR_BLACK, FALSE, CENTER_JUSTIFIED );
|
||||
|
||||
return( TRUE );
|
||||
}
|
||||
@@ -2822,6 +2897,20 @@ UINT8 GetCurrentOverheatingButtonSetting()
|
||||
return( 0 );
|
||||
}
|
||||
|
||||
UINT8 GetCurrentFoodSystemButtonSetting()
|
||||
{
|
||||
UINT8 cnt;
|
||||
|
||||
for( cnt=0; cnt<GIO_NUM_ONOFF_BUTTONS; cnt++)
|
||||
{
|
||||
if( ButtonList[ guiFoodSystemOptionToggles[ cnt ] ]->uiFlags & BUTTON_CLICKED_ON )
|
||||
{
|
||||
return( cnt );
|
||||
}
|
||||
}
|
||||
return( 0 );
|
||||
}
|
||||
|
||||
void DoneFadeOutForExitGameInitOptionScreen( void )
|
||||
{
|
||||
// loop through and get the status of all the buttons
|
||||
@@ -2891,6 +2980,7 @@ void DoneFadeOutForExitGameInitOptionScreen( void )
|
||||
gGameOptions.fUseNCTH = GetCurrentNCTHButtonSetting();
|
||||
gGameOptions.fImprovedInterruptSystem = GetCurrentIISButtonSetting();
|
||||
gGameOptions.fWeaponOverheating = GetCurrentOverheatingButtonSetting();
|
||||
gGameOptions.fFoodSystem = GetCurrentFoodSystemButtonSetting();
|
||||
|
||||
gubGIOExitScreen = INIT_SCREEN;
|
||||
|
||||
@@ -3123,6 +3213,10 @@ void RenderGIOSmallSelectionFrame(INT16 sX, INT16 sY)
|
||||
#define GIO_OVERHEATING_SETTING_Y GIO_DROPALL_SETTING_Y + CHECK_Y_OFFSET + CORRECTION_Y_OFFSET
|
||||
#define GIO_OVERHEATING_SETTING_WIDTH CHECK_WIDTH
|
||||
|
||||
#define GIO_FOODSYSTEM_SETTING_X SECOND_COLUMN_X + CHECK_X_OFFSET
|
||||
#define GIO_FOODSYSTEM_SETTING_Y GIO_OVERHEATING_SETTING_Y + CHECK_Y_OFFSET + CORRECTION_Y_OFFSET
|
||||
#define GIO_FOODSYSTEM_SETTING_WIDTH CHECK_WIDTH
|
||||
|
||||
/*********************************
|
||||
THIRD COLUMN
|
||||
**********************************/
|
||||
@@ -3176,6 +3270,7 @@ void RenderGIOSmallSelectionFrame(INT16 sX, INT16 sY)
|
||||
#define JA2SP_USE_NCTH "USE_NCTH"
|
||||
#define JA2SP_USE_IIS "IMPROVED_INTERRUPT_SYSTEM"
|
||||
#define JA2SP_OVERHEATING "WEAPON_OVERHEATING"
|
||||
#define JA2SP_FOODSYSTEM "FOOD_SYSTEM"
|
||||
|
||||
|
||||
//Difficulty settings
|
||||
@@ -3414,6 +3509,13 @@ UINT32 guiOverheatingOptionToggles[ GIO_NUM_ONOFF_BUTTONS ];
|
||||
void BtnGIOOverheatingOffCallback(GUI_BUTTON *btn,INT32 reason);
|
||||
void BtnGIOOverheatingOnCallback(GUI_BUTTON *btn,INT32 reason);
|
||||
|
||||
// Food System
|
||||
UINT32 guiFoodSystemOptionTogglesImage[ GIO_NUM_ONOFF_BUTTONS ];
|
||||
UINT32 guiFoodSystemOptionToggles[ GIO_NUM_ONOFF_BUTTONS ];
|
||||
void BtnGIOFoodSystemOffCallback(GUI_BUTTON *btn,INT32 reason);
|
||||
void BtnGIOFoodSystemOnCallback(GUI_BUTTON *btn,INT32 reason);
|
||||
|
||||
|
||||
|
||||
UINT32 guiTimedTurnToggles[ GIO_NUM_TIMED_TURN_OPTIONS ];
|
||||
void BtnTimedTurnsTogglesCallback(GUI_BUTTON *btn,INT32 reason);
|
||||
@@ -3444,6 +3546,7 @@ UINT8 GetCurrentInventoryAPButtonSetting();
|
||||
UINT8 GetCurrentNCTHButtonSetting();
|
||||
UINT8 GetCurrentIISButtonSetting();
|
||||
UINT8 GetCurrentOverheatingButtonSetting();
|
||||
UINT8 GetCurrentFoodSystemButtonSetting();
|
||||
|
||||
void DoneFadeOutForExitGameInitOptionScreen( void );
|
||||
void DoneFadeInForExitGameInitOptionScreen( void );
|
||||
@@ -3550,6 +3653,7 @@ UINT32 GameInitOptionsScreenInit( void )
|
||||
gGameOptions.fUseNCTH = (BOOLEAN)props.getIntProperty(JA2SP_INI_INITIAL_SECTION, JA2SP_USE_NCTH, 0);
|
||||
gGameOptions.fImprovedInterruptSystem = (BOOLEAN)props.getIntProperty(JA2SP_INI_INITIAL_SECTION, JA2SP_USE_IIS, 0);
|
||||
gGameOptions.fWeaponOverheating = (BOOLEAN)props.getIntProperty(JA2SP_INI_INITIAL_SECTION, JA2SP_OVERHEATING, 0);
|
||||
gGameOptions.fFoodSystem = (BOOLEAN)props.getIntProperty(JA2SP_INI_INITIAL_SECTION, JA2SP_FOODSYSTEM, 0);
|
||||
|
||||
// Air strikes
|
||||
gGameOptions.fAirStrikes = FALSE;
|
||||
@@ -4140,7 +4244,36 @@ BOOLEAN EnterGIOScreen()
|
||||
if( gGameOptions.fWeaponOverheating )
|
||||
ButtonList[ guiOverheatingOptionToggles[ GIO_BUTTON_ON ] ]->uiFlags |= BUTTON_CLICKED_ON;
|
||||
else
|
||||
ButtonList[ guiOverheatingOptionToggles[ GIO_BUTTON_OFF ] ]->uiFlags |= BUTTON_CLICKED_ON;
|
||||
ButtonList[ guiOverheatingOptionToggles[ GIO_BUTTON_OFF ] ]->uiFlags |= BUTTON_CLICKED_ON;
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
// FOOD SYSTEM ON/OFF SETTING
|
||||
|
||||
guiFoodSystemOptionTogglesImage[ GIO_BUTTON_OFF ] = UseLoadedButtonImage( guiTraitsOptionTogglesImage[ GIO_TRAITS_OLD ], -1,1,-1,3,-1 );
|
||||
guiFoodSystemOptionToggles[ GIO_BUTTON_OFF ] = CreateIconAndTextButton( guiFoodSystemOptionTogglesImage[ GIO_BUTTON_OFF ], gzGIOScreenText[ GIO_DROPALL_OFF_TEXT ], GIO_TOGGLE_TEXT_FONT,
|
||||
GIO_TOGGLE_TEXT_COLOR, NO_SHADOW,
|
||||
GIO_TOGGLE_TEXT_COLOR, NO_SHADOW,
|
||||
TEXT_CJUSTIFIED,
|
||||
(GIO_FOODSYSTEM_SETTING_X), (GIO_FOODSYSTEM_SETTING_Y + 10), BUTTON_TOGGLE, MSYS_PRIORITY_HIGH,
|
||||
DEFAULT_MOVE_CALLBACK, BtnGIOFoodSystemOffCallback);
|
||||
|
||||
guiFoodSystemOptionTogglesImage[ GIO_BUTTON_ON ] = UseLoadedButtonImage( guiTraitsOptionTogglesImage[ GIO_TRAITS_OLD ], -1,1,-1,3,-1 );
|
||||
guiFoodSystemOptionToggles[ GIO_BUTTON_ON ] = CreateIconAndTextButton( guiFoodSystemOptionTogglesImage[ GIO_BUTTON_ON ], gzGIOScreenText[ GIO_DROPALL_ON_TEXT ], GIO_TOGGLE_TEXT_FONT,
|
||||
GIO_TOGGLE_TEXT_COLOR, NO_SHADOW,
|
||||
GIO_TOGGLE_TEXT_COLOR, NO_SHADOW,
|
||||
TEXT_CJUSTIFIED,
|
||||
(GIO_FOODSYSTEM_SETTING_X + 74), (GIO_FOODSYSTEM_SETTING_Y + 10), BUTTON_TOGGLE, MSYS_PRIORITY_HIGH,
|
||||
DEFAULT_MOVE_CALLBACK, BtnGIOFoodSystemOnCallback );
|
||||
|
||||
SpecifyButtonSoundScheme( guiFoodSystemOptionToggles[ GIO_BUTTON_OFF ], BUTTON_SOUND_SCHEME_BIGSWITCH3 );
|
||||
SpecifyButtonSoundScheme( guiFoodSystemOptionToggles[ GIO_BUTTON_ON ], BUTTON_SOUND_SCHEME_BIGSWITCH3 );
|
||||
MSYS_SetBtnUserData(guiFoodSystemOptionToggles[ GIO_BUTTON_OFF ],0, 0 );
|
||||
MSYS_SetBtnUserData(guiFoodSystemOptionToggles[ GIO_BUTTON_ON ],0, 1 );
|
||||
|
||||
if( gGameOptions.fFoodSystem )
|
||||
ButtonList[ guiFoodSystemOptionToggles[ GIO_BUTTON_ON ] ]->uiFlags |= BUTTON_CLICKED_ON;
|
||||
else
|
||||
ButtonList[ guiFoodSystemOptionToggles[ GIO_BUTTON_OFF ] ]->uiFlags |= BUTTON_CLICKED_ON;
|
||||
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////////////////////////////////
|
||||
@@ -5079,6 +5212,37 @@ void BtnGIOOverheatingOnCallback(GUI_BUTTON *btn,INT32 reason)
|
||||
}
|
||||
}
|
||||
|
||||
void BtnGIOFoodSystemOffCallback(GUI_BUTTON *btn,INT32 reason)
|
||||
{
|
||||
if (!(btn->uiFlags & BUTTON_ENABLED))
|
||||
return;
|
||||
|
||||
if( reason & MSYS_CALLBACK_REASON_LBUTTON_DWN )
|
||||
{
|
||||
RestoreExternBackgroundRect( (GIO_FOODSYSTEM_SETTING_X), (GIO_FOODSYSTEM_SETTING_Y + 10), 230, 40 );
|
||||
|
||||
ButtonList[ guiFoodSystemOptionToggles[ GIO_BUTTON_ON ] ]->uiFlags &= ~BUTTON_CLICKED_ON;
|
||||
btn->uiFlags|=(BUTTON_CLICKED_ON);
|
||||
|
||||
PlayButtonSound( guiFoodSystemOptionToggles[ GIO_BUTTON_OFF ], BUTTON_SOUND_CLICKED_ON );
|
||||
}
|
||||
}
|
||||
void BtnGIOFoodSystemOnCallback(GUI_BUTTON *btn,INT32 reason)
|
||||
{
|
||||
if (!(btn->uiFlags & BUTTON_ENABLED))
|
||||
return;
|
||||
|
||||
if( reason & MSYS_CALLBACK_REASON_LBUTTON_DWN )
|
||||
{
|
||||
RestoreExternBackgroundRect( (GIO_FOODSYSTEM_SETTING_X), (GIO_FOODSYSTEM_SETTING_Y + 10), 230, 40 );
|
||||
|
||||
ButtonList[ guiFoodSystemOptionToggles[ GIO_BUTTON_OFF ] ]->uiFlags &= ~BUTTON_CLICKED_ON;
|
||||
btn->uiFlags|=(BUTTON_CLICKED_ON);
|
||||
|
||||
PlayButtonSound( guiFoodSystemOptionToggles[ GIO_BUTTON_ON ], BUTTON_SOUND_CLICKED_ON );
|
||||
}
|
||||
}
|
||||
|
||||
BOOLEAN ExitGIOScreen()
|
||||
{
|
||||
UINT16 cnt;
|
||||
@@ -5215,6 +5379,13 @@ BOOLEAN ExitGIOScreen()
|
||||
UnloadButtonImage( guiOverheatingOptionTogglesImage[ cnt ] );
|
||||
}
|
||||
|
||||
// Destroy Food System Cost setting buttons
|
||||
for( cnt=0; cnt<GIO_NUM_ONOFF_BUTTONS; cnt++)
|
||||
{
|
||||
RemoveButton( guiFoodSystemOptionToggles[ cnt ] );
|
||||
UnloadButtonImage( guiFoodSystemOptionTogglesImage[ cnt ] );
|
||||
}
|
||||
|
||||
gfGIOButtonsAllocated = FALSE;
|
||||
|
||||
//If we are starting the game stop playing the music
|
||||
@@ -5390,6 +5561,8 @@ BOOLEAN RenderGIOScreen()
|
||||
DisplayWrappedString( (GIO_IIS_SETTING_X - 6), (UINT16)(GIO_IIS_SETTING_Y-GIO_GAP_BN_SETTINGS + GIO_TITLE_DISTANCE), GIO_IIS_SETTING_WIDTH + 14, 2, GIO_TOGGLE_TEXT_FONT, GIO_TOGGLE_TEXT_COLOR, gzGIOScreenText[ GIO_IIS_TITLE_TEXT ], FONT_MCOLOR_BLACK, FALSE, CENTER_JUSTIFIED );
|
||||
//Display the Weapon Overheating Settings Title Text
|
||||
DisplayWrappedString( (GIO_OVERHEATING_SETTING_X - 6), (UINT16)(GIO_OVERHEATING_SETTING_Y-GIO_GAP_BN_SETTINGS + GIO_TITLE_DISTANCE), GIO_OVERHEATING_SETTING_WIDTH + 14, 2, GIO_TOGGLE_TEXT_FONT, GIO_TOGGLE_TEXT_COLOR, gzGIOScreenText[ GIO_OVERHEATING_TITLE_TEXT ], FONT_MCOLOR_BLACK, FALSE, CENTER_JUSTIFIED );
|
||||
//Display the Food System Settings Title Text
|
||||
DisplayWrappedString( (GIO_FOODSYSTEM_SETTING_X - 6), (UINT16)(GIO_FOODSYSTEM_SETTING_Y-GIO_GAP_BN_SETTINGS + GIO_TITLE_DISTANCE), GIO_FOODSYSTEM_SETTING_WIDTH + 14, 2, GIO_TOGGLE_TEXT_FONT, GIO_TOGGLE_TEXT_COLOR, gzGIOScreenText[ GIO_FOODSYSTEM_TITLE_TEXT ], FONT_MCOLOR_BLACK, FALSE, CENTER_JUSTIFIED );
|
||||
|
||||
|
||||
return( TRUE );
|
||||
@@ -5631,6 +5804,20 @@ UINT8 GetCurrentOverheatingButtonSetting()
|
||||
return( 0 );
|
||||
}
|
||||
|
||||
UINT8 GetCurrentFoodSystemButtonSetting()
|
||||
{
|
||||
UINT8 cnt;
|
||||
|
||||
for( cnt=0; cnt<GIO_NUM_ONOFF_BUTTONS; cnt++)
|
||||
{
|
||||
if( ButtonList[ guiFoodSystemOptionToggles[ cnt ] ]->uiFlags & BUTTON_CLICKED_ON )
|
||||
{
|
||||
return( cnt );
|
||||
}
|
||||
}
|
||||
return( 0 );
|
||||
}
|
||||
|
||||
void DoneFadeOutForExitGameInitOptionScreen( void )
|
||||
{
|
||||
// loop through and get the status of all the buttons
|
||||
@@ -5690,6 +5877,7 @@ void DoneFadeOutForExitGameInitOptionScreen( void )
|
||||
gGameOptions.fUseNCTH = GetCurrentNCTHButtonSetting();
|
||||
gGameOptions.fImprovedInterruptSystem = GetCurrentIISButtonSetting();
|
||||
gGameOptions.fWeaponOverheating = GetCurrentOverheatingButtonSetting();
|
||||
gGameOptions.fFoodSystem = GetCurrentFoodSystemButtonSetting();
|
||||
|
||||
|
||||
// gubGIOExitScreen = INIT_SCREEN;
|
||||
|
||||
Reference in New Issue
Block a user