Files
source/Tactical/interface Dialogue.h
T
BeatAroundTheBuscherandGitHub ed00830202 Fixes Upper/Lower Casing for include paths (#487)
* Fixing upper/lower case for includes

types.h, zconf.h and zlib.h were renamed so that global includes like Types.h
are not used.
2025-08-16 22:01:12 -03:00

424 lines
14 KiB
C

#ifndef __INTERFACE_DIALOGUE_H
#define __INTERFACE_DIALOGUE_H
#include "mousesystem.h"
#include "NPC.h"
extern UINT8 gubSrcSoldierProfile;
// Structure used in Tactical display of NPC dialogue
typedef struct
{
INT32 iFaceIndex;
INT16 sX;
INT16 sY;
INT16 sPopupX;
INT16 sPopupY;
UINT8 ubPopupOrientation;
UINT8 ubCharNum;
UINT32 uiPanelVO;
INT32 iButtonImages;
UINT32 uiCancelButton;
INT8 bCurSelect;
INT8 bOldCurSelect;
UINT16 usWidth;
UINT16 usHeight;
MOUSE_REGION Regions[ 6 ];
MOUSE_REGION BackRegion;
MOUSE_REGION NameRegion;
MOUSE_REGION ScreenRegion;
MOUSE_REGION TextRegion;
BOOLEAN fTextRegionOn;
BOOLEAN fOnName;
BOOLEAN fDirtyLevel;
UINT32 uiSaveBuffer;
BOOLEAN fHandled;
BOOLEAN fHandledTalkingVal;
BOOLEAN fHandledCanDeleteVal;
BOOLEAN fRenderSubTitlesNow;
BOOLEAN fSetupSubTitles;
CHAR16 zQuoteStr[ 480 ]; //QIALOGUE_SIZE is in dialog control which includes this file...
} NPC_DIALOGUE_TYPE;
// GLOBAL NPC STRUCT
extern NPC_DIALOGUE_TYPE gTalkPanel;
BOOLEAN InitiateConversation( SOLDIERTYPE *pDestSoldier, SOLDIERTYPE *pSrcSoldier, INT8 bApproach, UINT32 uiApproachData );
// THis fuction will allocate and setup an NPCDiaogue structure. Loads the face for the character..
BOOLEAN InitTalkingMenu( UINT8 ubCharacterNum, INT32 sGridNo );
// Begins quote of NPC Dialogue
BOOLEAN TalkingMenuDialogue( UINT16 usQuoteNum );
// Removes memory allocated for structure, removes face...
void DeleteTalkingMenu( );
// Dirty menu
void SetTalkingMenuDirty( BOOLEAN fDirtyLevel );
BOOLEAN HandleTalkingMenu( );
void RenderTalkingMenu( );
BOOLEAN HandleTalkingMenuEscape( BOOLEAN fCanDelete , BOOLEAN fFromEscKey );
// Gices an item to buddy
BOOLEAN TalkingMenuGiveItem( UINT8 ubNPC, OBJECTTYPE *pObject, INT8 bInvPos );
// Triggers an NPC record
BOOLEAN NPCTriggerNPC( UINT8 ubTargetNPC, UINT8 ubTargetRecord, UINT8 ubTargetApproach, BOOLEAN fShowDialogueMenu );
// NPC goto gridno
BOOLEAN NPCGotoGridNo( UINT8 ubTargetNPC, INT32 usGridNo, UINT8 ubQuoteNum );
// NPC Do action
BOOLEAN NPCDoAction( UINT8 ubTargetNPC, UINT16 usActionCode, UINT8 ubQuoteNum );
BOOLEAN NPCClosePanel( );
void HandleWaitTimerForNPCTrigger( );
void HandleNPCClosePanel( );
void HandleNPCItemGiven( UINT8 ubNPC, OBJECTTYPE *pObject, INT8 bInvPos );
void HandleNPCTriggerNPC( UINT8 ubTargetNPC, UINT8 ubTargetRecord, BOOLEAN fShowDialogueMenu, UINT8 ubTargetApproach );
void HandleNPCGotoGridNo( UINT8 ubTargetNPC, INT32 usGridNo, UINT8 ubRecordNum );
void HandleNPCDoAction( UINT8 ubTargetNPC, UINT16 usActionCode, UINT8 ubQuoteNum );
BOOLEAN ProfileCurrentlyTalkingInDialoguePanel( UINT8 ubProfile );
BOOLEAN InternalInitTalkingMenu( UINT8 ubCharacterNum, INT16 sX, INT16 sY );
void HandleFactForNPCUnescorted( UINT8 ubNPC );
enum
{
NPC_ACTION_NONE = 0,
NPC_ACTION_DONT_ACCEPT_ITEM,
NPC_ACTION_FACE_CLOSEST_PLAYER,
NPC_ACTION_OPEN_CLOSEST_DOOR,
NPC_ACTION_RECRUIT,
NPC_ACTION_THREATENINGLY_RAISE_GUN,
NPC_ACTION_LOWER_GUN,
NPC_ACTION_READY_GUN,
NPC_ACTION_START_RUNNING,
NPC_ACTION_STOP_RUNNING,
NPC_ACTION_BOOST_TOWN_LOYALTY, // 10
NPC_ACTION_PENALIZE_TOWN_LOYALTY,
NPC_ACTION_STOP_PLAYER_GIVING_FIRST_AID,
NPC_ACTION_FACE_NORTH,
NPC_ACTION_FACE_NORTH_EAST,
NPC_ACTION_FACE_EAST,
NPC_ACTION_FACE_SOUTH_EAST,
NPC_ACTION_FACE_SOUTH,
NPC_ACTION_FACE_SOUTH_WEST,
NPC_ACTION_FACE_WEST,
NPC_ACTION_FACE_NORTH_WEST, // 20
NPC_ACTION_TRIGGER_FRIEND_WITH_HOSTILE_QUOTE,
NPC_ACTION_BECOME_ENEMY,
NPC_ACTION_RECRUIT_WITH_SALARY,
NPC_ACTION_CLOSE_DIALOGUE_PANEL,
NPC_ACTION_ENTER_COMBAT, // 25
NPC_ACTION_TERRORIST_REVEALS_SELF,
NPC_ACTION_OPEN_CLOSEST_CABINET,
NPC_ACTION_SLAP,
NPC_ACTION_TRIGGER_QUEEN_BY_CITIES_CONTROLLED,
NPC_ACTION_SEND_SOLDIERS_TO_DRASSEN, // 30
NPC_ACTION_SEND_SOLDIERS_TO_BATTLE_LOCATION,
NPC_ACTION_TRIGGER_QUEEN_BY_SAM_SITES_CONTROLLED,
NPC_ACTION_PUNCH_PC_SLOT_0,
NPC_ACTION_PUNCH_PC_SLOT_1,
NPC_ACTION_PUNCH_PC_SLOT_2, // 35
NPC_ACTION_FRUSTRATED_SLAP,
NPC_ACTION_PUNCH_FIRST_LIVING_PC,
NPC_ACTION_SHOOT_ELLIOT,
NPC_ACTION_PLAYER_SAYS_NICE_LATER,
NPC_ACTION_GET_ITEMS_FROM_CLOSEST_CABINET, // 40
NPC_ACTION_INITIATE_SHOPKEEPER_INTERFACE,
NPC_ACTION_GET_OUT_OF_WHEELCHAIR,
NPC_ACTION_GET_OUT_OF_WHEELCHAIR_AND_BECOME_HOSTILE,
NPC_ACTION_PLAYER_SAYS_NASTY_LATER, // 44
NPC_ACTION_GRANT_EXPERIENCE_1 = 50,
NPC_ACTION_GRANT_EXPERIENCE_2,
NPC_ACTION_GRANT_EXPERIENCE_3,
NPC_ACTION_GRANT_EXPERIENCE_4,
NPC_ACTION_GRANT_EXPERIENCE_5,
NPC_ACTION_GOTO_HIDEOUT = 100,
NPC_ACTION_FATIMA_GIVE_LETTER,
NPC_ACTION_LEAVE_HIDEOUT,
NPC_ACTION_TRAVERSE_MAP_EAST,
NPC_ACTION_TRAVERSE_MAP_SOUTH,
NPC_ACTION_TRAVERSE_MAP_WEST,
NPC_ACTION_TRAVERSE_MAP_NORTH,
NPC_ACTION_REPORT_SHIPMENT_SIZE,
NPC_ACTION_RETURN_STOLEN_SHIPMENT_ITEMS,
NPC_ACTION_SET_PABLO_BRIBE_DELAY,
NPC_ACTION_ASK_ABOUT_ESCORTING_EPC, // 110
NPC_ACTION_DRINK_DRINK_DRINK,
NPC_ACTION_TRIGGER_END_OF_FOOD_QUEST,
NPC_ACTION_SEND_PACOS_INTO_HIDING,
NPC_ACTION_HAVE_PACOS_FOLLOW,
NPC_ACTION_SET_DELAYED_PACKAGE_TIMER, // 115
NPC_ACTION_SET_RANDOM_PACKAGE_DAMAGE_TIMER,
NPC_ACTION_FREE_KIDS,
NPC_ACTION_CHOOSE_DOCTOR,
NPC_ACTION_REPORT_BALANCE,
NPC_ACTION_ASK_ABOUT_PAYING_RPC,
NPC_ACTION_DELAYED_MAKE_BRENDA_LEAVE,
NPC_ACTION_SEX,
NPC_ACTION_KYLE_GETS_MONEY,
NPC_ACTION_LAYLA_GIVEN_WRONG_AMOUNT_OF_CASH, // 124
NPC_ACTION_SET_GIRLS_AVAILABLE,
NPC_ACTION_SET_DELAY_TILL_GIRLS_AVAILABLE,
NPC_ACTION_SET_WAITED_FOR_GIRL_FALSE,
NPC_ACTION_TRIGGER_LAYLA_13_14_OR_15,
NPC_ACTION_OPEN_CARLAS_DOOR,
NPC_ACTION_OPEN_CINDYS_DOOR, // 130
NPC_ACTION_OPEN_BAMBIS_DOOR,
NPC_ACTION_OPEN_MARIAS_DOOR,
NPC_ACTION_POSSIBLY_ADVERTISE_CINDY,
NPC_ACTION_POSSIBLY_ADVERTISE_BAMBI,
NPC_ACTION_DARREN_REQUESTOR, // 135
NPC_ACTION_ADD_JOEY_TO_WORLD,
NPC_ACTION_MARK_KINGPIN_QUOTE_0_USED,
NPC_ACTION_START_BOXING_MATCH,
NPC_ACTION_ENABLE_CAMBRIA_DOCTOR_BONUS,// OBSOLETE, NO LONGER DELAYED
NPC_ACTION_MARTHA_DIES, // 140
NPC_ACTION_DARREN_GIVEN_CASH,
NPC_ACTION_ANGEL_GIVEN_CASH,
NPC_ACTION_TRIGGER_ANGEL_17_OR_18,
NPC_ACTION_BUY_LEATHER_KEVLAR_VEST,
NPC_ACTION_TRIGGER_MARIA, // 145
NPC_ACTION_TRIGGER_ANGEL_16_OR_19,
NPC_ACTION_ANGEL_LEAVES_DEED,
NPC_ACTION_TRIGGER_ANGEL_21_OR_22,
NPC_ACTION_UN_RECRUIT_EPC,
NPC_ACTION_TELEPORT_NPC, // 150
NPC_ACTION_REMOVE_DOREEN,
NPC_ACTION_RESET_SHIPMENT_ARRIVAL_STUFF,
// 153 Fix helicopter by next morning?
NPC_ACTION_WALDO_START_REPAIRS = 153,// anv: added this
NPC_ACTION_DECIDE_ACTIVE_TERRORISTS = 154,
NPC_ACTION_TRIGGER_FATHER_18_20_OR_15,
NPC_ACTION_CHECK_LAST_TERRORIST_HEAD,
NPC_ACTION_CARMEN_LEAVES_FOR_C13,
NPC_ACTION_CARMEN_LEAVES_FOR_GOOD,
NPC_ACTION_CARMEN_LEAVES_ON_NEXT_SECTOR_LOAD,
NPC_ACTION_TRIGGER_VINCE_BY_LOYALTY, // 160
NPC_ACTION_MEDICAL_REQUESTOR,
NPC_ACTION_MEDICAL_REQUESTOR_2,
NPC_ACTION_CHECK_DOCTORING_MONEY_GIVEN, // handled in NPC.c
NPC_ACTION_START_DOCTORING,
NPC_ACTION_VINCE_UNRECRUITABLE, // 165
NPC_ACTION_END_COMBAT,
NPC_ACTION_BECOME_FRIENDLY_END_COMBAT,
NPC_ACTION_SET_EPC_TO_NPC,
NPC_ACTION_BUY_VEHICLE_REQUESTOR,
NPC_ACTION_END_MEANWHILE,// 170
NPC_ACTION_START_BLOODCAT_QUEST,
NPC_ACTION_START_MINE,
NPC_ACTION_STOP_MINE,
NPC_ACTION_RESET_MINE_CAPTURED,
NPC_ACTION_SET_OSWALD_RECORD_13_USED, // 175
NPC_ACTION_SET_CALVIN_RECORD_13_USED,
NPC_ACTION_SET_CARL_RECORD_13_USED,
NPC_ACTION_SET_FRED_RECORD_13_USED,
NPC_ACTION_SET_MATT_RECORD_13_USED,
NPC_ACTION_TRIGGER_MATT, // 180
NPC_ACTION_REDUCE_CONRAD_SALARY_CONDITIONS,
NPC_ACTION_REMOVE_CONRAD,
NPC_ACTION_KROTT_REQUESTOR,
NPC_ACTION_KROTT_ALIVE_LOYALTY_BOOST, /* Delayed loyalty effects elimininated. Sep.12/98. ARM */
NPC_ACTION_TRIGGER_YANNI, // 185
NPC_ACTION_TRIGGER_MARY_OR_JOHN_RECORD_9,
NPC_ACTION_TRIGGER_MARY_OR_JOHN_RECORD_10,
NPC_ACTION_ADD_JOHNS_GUN_SHIPMENT,
// 189 ??
NPC_ACTION_TRIGGER_KROTT_11_OR_12 = 190, // 190 Trigger record 11 or 12 for Krott
NPC_ACTION_MADLAB_GIVEN_GUN = 191,
NPC_ACTION_MADLAB_GIVEN_CAMERA,
NPC_ACTION_MADLAB_ATTACHES_GOOD_CAMERA,
NPC_ACTION_READY_ROBOT,
NPC_ACTION_WALTER_GIVEN_MONEY_INITIALLY,
NPC_ACTION_WALTER_GIVEN_MONEY,
NPC_ACTION_MAKE_NPC_FIRST_BARTENDER = 197,
NPC_ACTION_MAKE_NPC_SECOND_BARTENDER,
NPC_ACTION_MAKE_NPC_THIRD_BARTENDER,
NPC_ACTION_MAKE_NPC_FOURTH_BARTENDER,//200
NPC_ACTION_GERARD_GIVEN_CASH,
NPC_ACTION_FILL_UP_CAR, // obsolete?
NPC_ACTION_JOE_GIVEN_CASH,
NPC_ACTION_TRIGGER_ELLIOT_9_OR_10 = 204, // obsolete?
NPC_ACTION_HANDLE_END_OF_FIGHT,// 205
NPC_ACTION_DARREN_PAYS_PLAYER,
NPC_ACTION_FIGHT_AGAIN_REQUESTOR,
NPC_ACTION_TRIGGER_SPIKE_OR_DARREN,
// 209 is blank
NPC_ACTION_CHANGE_MANNY_POSITION = 210,
NPC_ACTION_TIMER_FOR_VEHICLE, // 211
NPC_ACTION_ASK_ABOUT_PAYING_RPC_WITH_DAILY_SALARY,//212
NPC_ACTION_TRIGGER_MICKY_BY_SCI_FI, // 213
// 214 is blank
NPC_ACTION_TRIGGER_ELLIOT_BY_BATTLE_RESULT = 215,
NPC_ACTION_TRIGGER_ELLIOT_BY_SAM_DISABLED,
NPC_ACTION_LAYLAS_NEXT_LINE_AFTER_CARLA,
NPC_ACTION_LAYLAS_NEXT_LINE_AFTER_CINDY,
NPC_ACTION_LAYLAS_NEXT_LINE_AFTER_BAMBI,
NPC_ACTION_LAYLAS_NEXT_LINE_AFTER_MARIA,
NPC_ACTION_PROMPT_PLAYER_TO_LIE, // 221
NPC_ACTION_REMOVE_JOE_QUEEN, // 222
NPC_ACTION_REMOVE_ELLIOT_END_MEANWHILE, // 223
NPC_ACTION_NO_SCI_FI_END_MEANWHILE, //224
// 225 is obsolete
NPC_ACTION_TRIGGER_MARRY_DARYL_PROMPT = 226,
NPC_ACTION_HAVE_MARRIED_NPC_LEAVE_TEAM,
NPC_ACTION_KINGPIN_GIVEN_MONEY, // actually handled in item-acceptance code, NPC.c
NPC_ACTION_KINGPIN_TRIGGER_25_OR_14,
NPC_ACTION_SEND_ENRICO_MIGUEL_EMAIL,
NPC_ACTION_END_DEMO,// 231,
NPC_ACTION_INVOKE_CONVERSATION_MODE, // 232
// 233 is obsolete
NPC_ACTION_START_TIMER_ON_KEITH_GOING_OUT_OF_BUSINESS = 234,
NPC_ACTION_KEITH_GOING_BACK_IN_BUSINESS,
NPC_ACTION_MAKE_RAT_DISAPPEAR,
NPC_ACTION_DOCTOR_ESCORT_PATIENTS,
NPC_ACTION_ELLIOT_DECIDE_WHICH_QUOTE_FOR_PLAYER_ATTACK,
NPC_ACTION_QUEEN_DECIDE_WHICH_QUOTE_FOR_PLAYER_ATTACK,
NPC_ACTION_CANCEL_WAYPOINTS, // 240
// 241 currently obsolete, CJC Oct 14
NPC_ACTION_SHOW_TIXA = 242,
NPC_ACTION_SHOW_ORTA,
NPC_ACTION_DRINK_WINE,
NPC_ACTION_DRINK_BOOZE,
NPC_ACTION_TRIGGER_ANGEL_22_OR_24,
NPC_ACTION_SET_FACT_105_FALSE, // 247
NPC_ACTION_MAKE_BRENDA_STATIONARY, // 248
NPC_ACTION_TRIGGER_DARREN_OR_KINGPIN_IMPRESSED = 249,
NPC_ACTION_TRIGGER_KINGPIN_IMPRESSED, // 250
NPC_ACTION_ADD_RAT,
NPC_ACTION_ENDGAME_STATE_1 = 253,
NPC_ACTION_ENDGAME_STATE_2,
NPC_ACTION_MAKE_MIGUEL_STATIONARY,
NPC_ACTION_MAKE_ESTONI_A_FUEL_SITE, // 256
NPC_ACTION_24_HOURS_SINCE_JOEY_RESCUED,// 257
NPC_ACTION_24_HOURS_SINCE_DOCTORS_TALKED_TO,// 258
NPC_ACTION_SEND_SOLDIERS_TO_OMERTA,// 259
NPC_ACTION_ADD_MORE_ELITES,// 260
NPC_ACTION_GIVE_KNOWLEDGE_OF_ALL_MERCS,// 261
NPC_ACTION_REMOVE_MERC_FOR_MARRIAGE,
NPC_ACTION_TRIGGER_JOE_32_OR_33,
NPC_ACTION_REMOVE_NPC,
NPC_ACTION_HISTORY_GOT_ROCKET_RIFLES,
NPC_ACTION_HISTORY_DEIDRANNA_DEAD_BODIES,
NPC_ACTION_HISTORY_BOXING_MATCHES,
NPC_ACTION_HISTORY_SOMETHING_IN_MINES,
NPC_ACTION_HISTORY_DEVIN,
NPC_ACTION_HISTORY_MIKE,// 270
NPC_ACTION_HISTORY_TONY,
NPC_ACTION_HISTORY_KROTT,
NPC_ACTION_HISTORY_KYLE,
NPC_ACTION_HISTORY_MADLAB,
NPC_ACTION_HISTORY_GABBY,
NPC_ACTION_HISTORY_KEITH_OUT_OF_BUSINESS,
NPC_ACTION_HISTORY_HOWARD_CYANIDE,
NPC_ACTION_HISTORY_KEITH,
NPC_ACTION_HISTORY_HOWARD,
NPC_ACTION_HISTORY_PERKO,// 280
NPC_ACTION_HISTORY_SAM,
NPC_ACTION_HISTORY_FRANZ,
NPC_ACTION_HISTORY_ARNOLD,
NPC_ACTION_HISTORY_FREDO,
NPC_ACTION_HISTORY_RICHGUY_BALIME,// 285
NPC_ACTION_HISTORY_JAKE,
NPC_ACTION_HISTORY_BUM_KEYCARD,
NPC_ACTION_HISTORY_WALTER,
NPC_ACTION_HISTORY_DAVE,
NPC_ACTION_HISTORY_PABLO,// 290
NPC_ACTION_HISTORY_KINGPIN_MONEY,
NPC_ACTION_SEND_TROOPS_TO_SAM,
NPC_ACTION_PUT_PACOS_IN_BASEMENT,
NPC_ACTION_HISTORY_ASSASSIN,
NPC_ACTION_TRIGGER_HANS_BY_ROOM, // 295
NPC_ACTION_TRIGGER_MADLAB_31,
NPC_ACTION_TRIGGER_MADLAB_32,
NPC_ACTION_TRIGGER_BREWSTER_BY_WARDEN_PROXIMITY, // 298
#ifdef JA2UB
//JA25
NPC_ACTION_TRIGGER_JERRY_CONVERSATION_WITH_PGC_1 = 301,
NPC_ACTION_TRIGGER_JERRY_CONVERSATION_WITH_PGC_2,
NPC_ACTION_LEAVING_NPC_TALK_MENU = 304,
NPC_ACTION_BIGGENS_DETONATES_BOMBS = 305,
NPC_ACTION_RAUL_BLOWS_HIMSELF_UP=306,
NPC_ACTION_TEX_FLUSHES_TOILET=307,
NPC_ACTION_MARK_TEX_AS_ALREADY_INTRODUCED_HIMSELF=308,
NPC_ACTION_MAKE_TEX_CAMOED=309,
NPC_ACTION_HAVE_DEALER_OPEN_BUY_SELL_SCREEN=310,
#endif
// WDS - New AI
NPC_ACTION_SEND_WEIGHTED_ASSAULT_TO_LOCATION, // 1st optional parm is "direness: rating
NPC_ACTION_SEND_SPECIFIC_ASSAULT_TO_LOCATION, // 1st option parm is # of soldiers to send, 2nd is composition
// anv: Waldo The Mechanic
NPC_ACTION_WALDO_REPAIR_REQUESTOR,
NPC_ACTION_TURN_TO_FACE_NEAREST_MERC = 500,
NPC_ACTION_TURN_TO_FACE_PROFILE_ID_0,
NPC_ACTION_LAST_TURN_TO_FACE_PROFILE = 650,
// Flugente: counterattacks for all cities
NPC_ACTION_SEND_SOLDIERS_TO_CHITZENA,
NPC_ACTION_SEND_SOLDIERS_TO_GRUMM,
NPC_ACTION_SEND_SOLDIERS_TO_CAMBRIA,
NPC_ACTION_SEND_SOLDIERS_TO_ALMA,
NPC_ACTION_SEND_SOLDIERS_TO_BALIME,
NPC_ACTION_GLOBAL_OFFENSIVE_1,
NPC_ACTION_GLOBAL_OFFENSIVE_2,
// rftr: transport groups
NPC_ACTION_DEPLOY_TRANSPORT_GROUP,
NPC_ACTION_RETURN_TRANSPORT_GROUP,
NPC_ACTION_RECRUIT_PROFILE_TO_EPC = 700,
NPC_ACTION_UNRECRUIT_EPC = 701,
};
#define HOSPITAL_PATIENT_DISTANCE 9
extern INT32 giHospitalTempBalance;
extern INT32 giHospitalRefund;
extern INT8 gbHospitalPriceModifier;
extern UINT32 CalcPatientMedicalCost( SOLDIERTYPE * pSoldier );
extern UINT32 CalcMedicalCost( UINT8 ubId );
extern void StartDialogueMessageBox( UINT8 ubProfileID, UINT16 usMessageBoxType );
extern BOOLEAN gfInTalkPanel;
#ifdef JA2UB
//JA25 ub
void DelayedSayingOfMercQuote( UINT32 uiParam );
void DelayedMercQuote( UINT16 usProfileID, UINT32 uiQuoteNum, UINT32 uiTimeTillQuoteSaid );
void CheckForValidQuotesWhenLeavingDealer( UINT8 ubProfile );
void HaveBiggensDetonatingExplosivesByTheMine();
// This function checks if we should replace the mine entrance graphic
BOOLEAN IsMineEntranceInSectorI13AtThisGridNo( UINT32 sGridNo );
void ReplaceMineEntranceGraphicWithCollapsedEntrance();
#endif
#endif