// callbacks void BtnMilitiaCallback(GUI_BUTTON *btn,INT32 reason) { if(reason & MSYS_CALLBACK_REASON_LBUTTON_DWN ) { CommonBtnCallbackBtnDownChecks(); ToggleShowMilitiaMode( ); } else if(reason & MSYS_CALLBACK_REASON_RBUTTON_DWN ) { CommonBtnCallbackBtnDownChecks(); } }
void HandleContinueOfTownTraining( void ) { SOLDIERTYPE *pSoldier = NULL; INT32 iCounter = 0; BOOLEAN fContinueEventPosted = FALSE; while( giListOfMercsInSectorsCompletedMilitiaTraining[ iCounter ] != -1 ) { // get the soldier pSoldier = &Menptr[ giListOfMercsInSectorsCompletedMilitiaTraining[ iCounter ] ]; if( pSoldier->bActive ) { fContinueEventPosted = TRUE; SpecialCharacterDialogueEvent( DIALOGUE_SPECIAL_EVENT_CONTINUE_TRAINING_MILITIA, pSoldier->ubProfile, 0, 0, 0, 0 ); // now set all of these peoples assignment done too //HandleInterfaceMessageForContinuingTrainingMilitia( pSoldier ); } // next entry iCounter++; } // now clear the list ClearSectorListForCompletedTrainingOfMilitia( ); if( fContinueEventPosted ) { // ATE: If this event happens in tactical mode we will be switching at some time to mapscreen... if ( guiCurrentScreen == GAME_SCREEN ) { gfEnteringMapScreen = TRUE; } //If the militia view isn't currently active, then turn it on when prompting to continue training. if ( !fShowMilitia ) { ToggleShowMilitiaMode(); } } return; }
// HEADROCK HAM 4: Activate "View Mobile Restrictions" mode. void TurnOnMobileFilterMode( void ) { // if mode already on, leave, else set and redraw if( fShowMobileRestrictionsFlag == FALSE ) { fShowMobileRestrictionsFlag = TRUE; MapBorderButtonOn( MAP_BORDER_MOBILE_BTN ); // Also turn on Militia mode fShowMilitia = FALSE; // Fool the function so that it always turns militia ON. ToggleShowMilitiaMode(); if( fShowMineFlag == TRUE ) { fShowMineFlag = FALSE; MapBorderButtonOff( MAP_BORDER_MINE_BTN ); } if( fShowTeamFlag == TRUE ) { fShowTeamFlag = FALSE; MapBorderButtonOff( MAP_BORDER_TEAMS_BTN ); } if( fShowAircraftFlag == TRUE ) { fShowAircraftFlag = FALSE; MapBorderButtonOff( MAP_BORDER_AIRSPACE_BTN ); } // Turn off items if( fShowItemsFlag == TRUE ) { fShowItemsFlag = FALSE; MapBorderButtonOff( MAP_BORDER_ITEM_BTN ); } if( ( bSelectedDestChar != -1 ) || ( fPlotForHelicopter == TRUE ) ) { AbortMovementPlottingMode( ); } else if ( gfInChangeArrivalSectorMode ) { CancelChangeArrivalSectorMode( ); } STR16 pwString = NULL; // check if player has any Mobile militia if ( DoesPlayerHaveAnyMobileMilitia( ) == 1 ) { // say you need to train mobiles first pwString = zMarksMapScreenText[ 25 ]; MapScreenMessage( FONT_MCOLOR_LTYELLOW, MSG_MAP_UI_POSITION_MIDDLE, pwString ); } if ( !gubFact[ FACT_MOBILE_RESTRICTIONS_VIEWED ] ) { // say you need to train mobiles first pwString = zMarksMapScreenText[ 26 ]; MapScreenMessage( FONT_MCOLOR_LTYELLOW, MSG_MAP_UI_POSITION_MIDDLE, pwString ); SetFactTrue( FACT_MOBILE_RESTRICTIONS_VIEWED ); } // dirty regions fMapPanelDirty = TRUE; fTeamPanelDirty = TRUE; fCharacterInfoPanelDirty = TRUE; } }