601 lines
19 KiB
XML
Executable File
601 lines
19 KiB
XML
Executable File
USING "globals_sp_dlc_feature_flags.sch"
|
|
|
|
// *****************************************************************************************
|
|
// *****************************************************************************************
|
|
// *****************************************************************************************
|
|
//
|
|
// MISSION NAME : ambient_globals.sch
|
|
// AUTHOR : Keith
|
|
// DESCRIPTION : This is the globals file containing all single player ambient globals.
|
|
// It will be automatically included when Globals.sch is used
|
|
// within any single player scripts.
|
|
//
|
|
// Any global scripts included within here should split it's data
|
|
// into saved and unsaved data. The saved data should be packaged
|
|
// up in one struct so that it can be easily added to the Saved
|
|
// Globals struct contained within SP_Globals_Saved.sch.
|
|
//
|
|
// *****************************************************************************************
|
|
// *****************************************************************************************
|
|
// *****************************************************************************************
|
|
|
|
// Global BOOL to indicate that the player is currently on a rampage mission
|
|
// IS_CURRENTLY_ON_MISSION_TO_TYPE() will be TRUE
|
|
BOOL g_bIsOnRampage = FALSE
|
|
|
|
// Global BOOL used to force shutdown the cable car script externally
|
|
BOOL g_bForceNoCableCar = FALSE
|
|
|
|
// Global BOOL used to force shutdown the ambient ufo script externally
|
|
BOOL g_bForceNoAmbientUFO = FALSE
|
|
|
|
// Global BOOL used by the Chop ambient script to detect when the player is about to ride the cable car
|
|
BOOL g_bIsOnCableCar = FALSE
|
|
|
|
// Global BOOL to allow a debug HOLD state for Random Event worldpoint scripts
|
|
BOOL g_bHoldRandomEventForSelection = FALSE
|
|
|
|
// Global BOOL to disable the military base script
|
|
BOOL g_bDisableArmyBase = FALSE
|
|
|
|
// Global BOOL to disable the Prison script
|
|
BOOL g_bDisablePrison = FALSE
|
|
|
|
// Global BOOL used to check the medals. This has to be used or i'll have to include loads of stuff from achievement controller into mission_stat_public.sch
|
|
// This gets set back to false once the achievement_controller has checked it - this is not saved
|
|
BOOL g_bCheckSolidGoldBabyAchievement = FALSE
|
|
|
|
// Disabled calls to REGISTER_NOIR_LENS_EFFECT in noirEffects.sch
|
|
BOOL g_bDisableNoirLensEffect = FALSE
|
|
|
|
// Debug global bools
|
|
#IF IS_DEBUG_BUILD
|
|
BOOL g_bDontResetCompletionOnDebugLaunch = FALSE
|
|
BOOL can_cleanup_script_for_debug // Used so random scipts can instantly clean up assets for the debug menu
|
|
#ENDIF
|
|
|
|
|
|
MODEL_NAMES g_eAmbientModelSuppress[10]
|
|
BOOL g_bAmbientModelSuppressVehicle[10]
|
|
INT g_iAmbientModelSuppressTimer[10]
|
|
BOOL g_bAmbientModelSuppressActive
|
|
|
|
// Stores the current active safehouse activity
|
|
ENUM SAFEHOUSE_ACTIVITY_STATE
|
|
SA_NONE,
|
|
SA_FRANKLIN_SOFA,
|
|
SA_MICHAEL_BEER,
|
|
SA_MICHAEL_SOFA,
|
|
SA_TREVOR_BEER,
|
|
SA_MICHAEL_SHOTS,
|
|
SA_TREVOR_SHOTS
|
|
ENDENUM
|
|
SAFEHOUSE_ACTIVITY_STATE g_eCurrentSafehouseActivity = SA_NONE
|
|
CONST_FLOAT SOFA_TRIGGER_DIST 3.0
|
|
|
|
// Random event globals
|
|
CONST_INT TEMP_DELAY -1
|
|
FLOAT RE_BLIP_SCALE = 0.6
|
|
|
|
//Time delay for update
|
|
CONST_INT CONST_AmbEventUpdate 600
|
|
|
|
// Timestamp to limit number of ambient events running
|
|
INT g_iLastSuccessfulAmbientLaunchTime
|
|
|
|
// for stepping through each variation when launched through the debug menu
|
|
//INT g_iDrunkDriverEventVariation = 0
|
|
//INT g_iGangVictimEventVariation = 0
|
|
//INT g_iShopRobberyEventVariation = 0
|
|
//INT g_iHitchLiftsEventVariation = 0
|
|
//INT g_single_player_basejump = 0
|
|
//INT g_iPrisonerLiftEventVariation = 0
|
|
//INT g_iSecurityVanEventVariation = 0
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
TEXT_LABEL_23 g_sLastRandomEventScript = "NULL"
|
|
#ENDIF
|
|
|
|
//BOOL g_bKillAllAmbience = TRUE
|
|
|
|
BOOL g_bMilitaryWantedLevelSuppressedByMenu
|
|
|
|
// Activity globals
|
|
BOOL g_bActivityLaunchedFromDebugMenu
|
|
|
|
// Global INT for re_hitch_lift mission
|
|
//INT g_iHitchLiftStage = 0
|
|
|
|
// Tasklist mission globals
|
|
//BOOL CONTACT_1_ACTIVATED = FALSE, TREVOR_GOALS_ACTIVATED = FALSE
|
|
BOOL CHECKED_OFF_KILLS[3]
|
|
BOOL CHECKED_OFF_GANG_PHOTOS[3]
|
|
//BOOL SHOOT_PEDS_FROM_BIKE[3]
|
|
|
|
// Global to force emrgencyCall onto answer phone/engaged
|
|
BOOL g_bForceEmergencyCallAnswerphone
|
|
|
|
INT g_iRECandidateID = -1
|
|
|
|
// Global enum to check current TV channel
|
|
ENUM TV_CHANNEL
|
|
TV_CHANNEL_NONE,
|
|
|
|
TV_CHANNEL_CNT,
|
|
TV_CHANNEL_WEAZEL,
|
|
|
|
TV_CHANNEL_END
|
|
ENDENUM
|
|
|
|
ENUM TV_LOCATION
|
|
TV_LOC_NONE = -1,
|
|
|
|
TV_LOC_FRANKLIN_LIVING = 0,
|
|
TV_LOC_FRANKLIN_VINEWOOD = 1,
|
|
|
|
TV_LOC_TREVOR_TRAILER = 2,
|
|
TV_LOC_TREVOR_VENICE = 3,
|
|
|
|
TV_LOC_MICHAEL_PROJECTOR = 4,
|
|
TV_LOC_JIMMY_BEDROOM = 5,
|
|
|
|
TV_LOC_GUN_CLUB = 6,
|
|
|
|
TV_LOC_END = 7
|
|
ENDENUM
|
|
|
|
/// PURPOSE: Holds global variables to control and query TV functionality. STEVE R. LDS
|
|
STRUCT TV_STRUCT
|
|
|
|
INT iTVChannelType // Stored TV channel type for this TV
|
|
INT iTVChannelPlaylist // Stored TV channel playlist for this TV
|
|
BOOL bIsTVOn // TRUE if this TV is on and displaying programmes.
|
|
BOOL bForceStartTV // Set this to TRUE to force a TV on (May be redundant - see bForceStartAmbientTV)
|
|
BOOL bForceStopTV // Set this to TRUE to force a TV off.
|
|
BOOL bForceStartAmbientTV // Set this to TRUE to force a TV on and playing TV ambiently.
|
|
BOOL bAvailableForUse // TRUE if the TV script is initialised, and ready for use.
|
|
BOOL bIsPlayerControlled // TRUE if the player turned on the TV.
|
|
BOOL bTVControlsDisabled // Set this to TRUE to disable the TV's controls, so the player can't manipulate it.
|
|
BOOL bStartPlaylistFromBeginning // Set this to TRUE to start a playlist from the beginning.
|
|
BOOL bIsIndestructible // Set this to TRUE to make a TV indestructible.
|
|
|
|
ENDSTRUCT
|
|
|
|
// Array of TV structures. One for each TV location.
|
|
TV_STRUCT g_TVStruct[TV_LOC_END]
|
|
|
|
// New TV globals
|
|
TEXT_LABEL_23 g_sTVPlaybackStartedByThisScript = "NULL"
|
|
|
|
//BOOL ambient_sprite_blip_active = FALSE
|
|
|
|
// Forces the current minigame stat tracker to kill itself...can probably go away if/when we move it to use the mission tracker one
|
|
BOOL g_bForceKillMGStatTracker
|
|
|
|
// B*1186007 - Used to reset Chop's happiness if the player kills him
|
|
BOOL g_bPlayerHasKilledChop
|
|
|
|
// B*1502616 - Used by scripts other than chop.sc to check if Franklin is currently interacting with Chop
|
|
BOOL g_bPlayerInteractingWithChop
|
|
|
|
// B*1334659 - Used to tell the Chop script when a safehouse tutorial is active
|
|
BOOL g_bSafehouseTutorialIsActive = FALSE
|
|
|
|
// B*2019260 - Used to tell the Chop script when the player is in a cinema
|
|
BOOL g_bPlayerIsInCinema = FALSE
|
|
|
|
// ------------------------------------------------------------
|
|
//
|
|
// GLOBALS THAT WILL BE SAVED
|
|
//
|
|
// ------------------------------------------------------------
|
|
|
|
STRUCT STUNT_JUMPS
|
|
INT iStuntJumpsCompleted
|
|
ENDSTRUCT
|
|
|
|
/*
|
|
STRUCT RE_ARREST
|
|
BOOL g_cop_killer
|
|
ENDSTRUCT
|
|
*/
|
|
|
|
//Kevin Bolt's Garage Door Variables.
|
|
INT g_propGarDoorBit // A bit to store locked state of various garage doors for script control.
|
|
|
|
//Prostitute globals
|
|
//═══════════════════════════════════════════════════════════════════════════════
|
|
//═════════════════════════════╡ Unsaved data ╞══════════════════════════════════
|
|
//═══════════════════════════════════════════════════════════════════════════════
|
|
|
|
BOOL g_bPlayerHasActiveProstitute
|
|
BOOL g_bPlayerCanCallProstitute
|
|
BOOL g_bIsProstituteAICustomerActive
|
|
//BOOL g_bIsProstitutePimpActive //In a group of prostitutes, keep track if any of them are talking to a pimp
|
|
FLOAT g_fDistToClosestProstitute // When near more then one prostitute this will keep track of the closest one
|
|
THREADID g_threadIDOfClosestProstitute
|
|
|
|
ENUM PROSTITUTE_UNIQUE_ENUM
|
|
PUN_UNDEFINED = -1,
|
|
PUN_BABS = 0,
|
|
PUN_DANA,
|
|
PUN_LIZZIE,
|
|
PUN_AMANDA,
|
|
PUN_ASHLEY,
|
|
PUN_KRISTEN,
|
|
PUN_SASHA,
|
|
PUN_JACQUELINE,
|
|
|
|
MAX_UNIQUE_PROSTITUTES //8
|
|
ENDENUM
|
|
|
|
ENUM UNIQUE_PROSTITUTE_DRAWABLE_COMPONENTS
|
|
PRO_COMP_HEAD = 0, //only care about the head texture
|
|
PRO_COMP_HAIR, //hair texture
|
|
// PRO_COMP_TORSO,
|
|
// PRO_COMP_LEG,
|
|
|
|
NUM_PRO_COMPONENTS
|
|
|
|
ENDENUM
|
|
|
|
ENUM UNIQUE_PROSTITUTE_TEXTURE_VARIATIONS
|
|
PRO_TEXT_VAR_HEAD = 0, //only care about the head texture
|
|
PRO_TEXT_VAR_HAIR, //hair texture
|
|
|
|
NUM_PRO_TEXTURE_VARIATIONS
|
|
|
|
ENDENUM
|
|
|
|
CONST_INT CONST_iMaxNumStoryLines 6 //Num of lines to trigger in D*
|
|
|
|
//Peyote Animal Pickups
|
|
ENUM AnimalPickup
|
|
AP_INVALID = -1,
|
|
|
|
AP_LOWLAND_BOAR,
|
|
AP_LOWLAND_CAT,
|
|
AP_LOWLAND_COW,
|
|
AP_LOWLAND_COYOTE,
|
|
AP_LOWLAND_DEER,
|
|
AP_LOWLAND_HUSKY,
|
|
AP_LOWLAND_MTLION,
|
|
AP_LOWLAND_PIG,
|
|
AP_LOWLAND_POODLE,
|
|
AP_LOWLAND_PUG,
|
|
AP_LOWLAND_RABBIT,
|
|
AP_LOWLAND_RETRIEVER,
|
|
AP_LOWLAND_ROTTWEILER,
|
|
AP_LOWLAND_SHEPHERD,
|
|
AP_LOWLAND_WESTY,
|
|
|
|
AP_HIGHLAND_CHICKENHAWK,
|
|
AP_HIGHLAND_CORMORANT,
|
|
AP_HIGHLAND_CROW,
|
|
AP_HIGHLAND_HEN,
|
|
AP_HIGHLAND_PIGEON,
|
|
AP_HIGHLAND_SEAGULL,
|
|
|
|
AP_UNDERWATER_DOLPHIN,
|
|
AP_UNDERWATER_FISH,
|
|
AP_UNDERWATER_KILLERWHALE,
|
|
AP_UNDERWATER_SHARKHAMMER,
|
|
AP_UNDERWATER_SHARKTIGER,
|
|
AP_UNDERWATER_STINGRAY,
|
|
|
|
AP_SECRET_SASQUATCH,
|
|
AP_SECRET_CHOP, // 28
|
|
AP_UNDERWATER_HUMPBACKWHALE,
|
|
AP_COUNT
|
|
ENDENUM
|
|
|
|
ENUM AnimalPickupType
|
|
APT_INVALID = -1,
|
|
|
|
APT_LOWLAND = 0,
|
|
APT_HIGHLAND,
|
|
APT_UNDERWATER,
|
|
APT_SECRET,
|
|
|
|
APT_COUNT
|
|
ENDENUM
|
|
|
|
INT g_iAnimalShockingEvent = 0
|
|
INT g_iAnimalWaterTimer = 0
|
|
BOOL g_bAnimalControllerFakeDeath = FALSE
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
BOOL g_bDebugPeyoteResetProgression = FALSE
|
|
BOOL g_bDebugPeyotePickupLabels[APT_COUNT]
|
|
BOOL g_bDebugPeyotePickupBlips[APT_COUNT]
|
|
AnimalPickup g_eDebugPeyoteAnimalLowland = AP_INVALID
|
|
AnimalPickup g_eDebugPeyoteAnimalHighland = AP_INVALID
|
|
AnimalPickup g_eDebugPeyoteAnimalUnderwater = AP_INVALID
|
|
AnimalPickup g_eDebugPeyoteAnimalSecret = AP_INVALID
|
|
AnimalPickupType g_eDebugPeyoteType = APT_INVALID
|
|
INT g_iDebugPeyoteIndex = -1
|
|
INT g_iDebugPeyoteBlockControllerUntil = 0
|
|
#ENDIF
|
|
|
|
//═══════════════════════════════════════════════════════════════════════════════
|
|
//════════════════════════════╡ Data to be saved ╞═══════════════════════════════
|
|
//═══════════════════════════════════════════════════════════════════════════════
|
|
|
|
|
|
|
|
STRUCT ProstituteSaved
|
|
|
|
INT iNumTimesEncounteredByPlayer[NUM_OF_PLAYABLE_PEDS]
|
|
INT iComponentDrawableVariation[NUM_PRO_COMPONENTS]
|
|
INT iComponentTextureVariation[NUM_PRO_TEXTURE_VARIATIONS]
|
|
INT iModelType
|
|
ENDSTRUCT
|
|
//End Prostitute Data
|
|
|
|
CONST_INT MAX_HUNT_CHALLENGE 3
|
|
CONST_INT NUMBER_OF_LETTER_SCRAPS 50 // Hidden packages
|
|
CONST_INT NUMBER_OF_SPACESHIP_PARTS 50
|
|
|
|
// Hidden packages globals
|
|
STRUCT GLOBAL_SCRAP_DATA
|
|
INT iScrap0to31
|
|
INT iScrap32to63
|
|
BOOL bMissionActive
|
|
ENDSTRUCT
|
|
|
|
ENUM NOIR_EFFECTS_STATUS
|
|
NOIR_OFF,
|
|
NOIR_FILTER_0,
|
|
NOIR_FILTER_1
|
|
ENDENUM
|
|
|
|
STRUCT g_ambientSavedData
|
|
|
|
// RE_ARREST ReArrest
|
|
STUNT_JUMPS stuntJumps
|
|
|
|
ProstituteSaved sProstituteData[MAX_UNIQUE_PROSTITUTES] //These are the 8 UNIQUE BACKSTORY Prostitues
|
|
|
|
INT iNumTimesPlayerPaidForProstituteServices[3] //B*1416861 - This is all time prostitutes
|
|
INT iChopHintsDisplayed
|
|
|
|
INT iWardrobeHintsDisplayed
|
|
|
|
INT iBridgesFlownUnderFlags
|
|
INT iBridgesFlownUnderFlags2
|
|
INT iBridgesFlownUnderFlags3
|
|
|
|
INT iWildlifePhotographsFlags
|
|
|
|
INT iChaseHelpTextDisplayed_mission
|
|
INT iChaseHelpTextDisplayed_RC
|
|
INT iChaseHelpTextDisplayed_RE
|
|
|
|
INT iEpsilonCarStage // Epsilon 3
|
|
INT iEpsilonLastEmailSentDay // Epsilon 3
|
|
INT iEpsilonRobesHours // Epsilon 5
|
|
INT iEpsilonRobesDeliveryTime // Epsilon 5 (Expected Robes Delivery Time)
|
|
FLOAT fDistRunInDesert // Epsilon 7
|
|
INT iForSaleSignDestroyedFlags // Josh 1
|
|
INT iHighScoreFreeMode // Ambient Hunting
|
|
INT iLowestGoldTime // Ambient Hunting
|
|
INT iChallengeRankFreeMode[MAX_HUNT_CHALLENGE]
|
|
BOOL bChallengeHelpDisplayed // Ambient Hunting
|
|
TIMEOFDAY todHuntedWeekExp // Ambient Hunting
|
|
|
|
INT iVehiclesRepairedByFranklin
|
|
INT iVehiclesRepairedByMichael
|
|
INT iVehiclesRepairedByTrevor
|
|
|
|
BOOL bTaxiHailingHelpDisplayed
|
|
INT iTaxiEnterPromptDisplayed
|
|
|
|
GLOBAL_SCRAP_DATA sLetterScrapData // Hidden packages (used by Chop)
|
|
GLOBAL_SCRAP_DATA sSpaceshipPartData
|
|
|
|
INT iGetawayState
|
|
|
|
BOOL bWebsiteSubscription[3] // Website subscription for Reality Mill
|
|
|
|
INT iMurderMysteryFlags // Murder mystery easter egg
|
|
NOIR_EFFECTS_STATUS eNoirEffectState // Saves the type of filter to be used by the noir effects header
|
|
INT iPhotographyMonkeyFlags[2] // Bit flags for photographyMonkey
|
|
|
|
INT iPeyotePickupOfTypeFound[APT_COUNT]
|
|
INT iPeyoteAnimalSeen
|
|
BOOL bPeyoteProgressionComplete
|
|
ENDSTRUCT
|
|
|
|
// Restricted Area Globals
|
|
CONST_INT TOTAL_AC_AREAS 9 //ENUM_TO_INT(AC_END)
|
|
INT g_iRestrictedAreaBitSet
|
|
TEXT_LABEL_23 g_sAreaSuppressedByThisScript[TOTAL_AC_AREAS]
|
|
BOOL g_bPlayerIsActiveInRestrictedArea[TOTAL_AC_AREAS]
|
|
|
|
// Emergency Calls Globals
|
|
BOOL g_bEmergencyCallsSuppressed = FALSE
|
|
TEXT_LABEL_31 g_sEmergencyCallsSuppressedByThisScript = "NULL"
|
|
|
|
BOOL g_bEmergencyCallPriorityIsHigh = FALSE
|
|
|
|
// Fly Under Bridges
|
|
INT g_bCompletedBridgesCount
|
|
|
|
// Wildlife Photography
|
|
INT g_bCompletedAnimalPhotosCount
|
|
|
|
// Monkey Photography None Saved
|
|
#IF IS_DEBUG_BUILD
|
|
INT g_iDebugMosaicToJumpTo = -1
|
|
BOOL g_bDebugJumpToMosaic = FALSE
|
|
BOOL g_bDebugCompleteAllMosaics = FALSE
|
|
#ENDIF
|
|
|
|
// Gate Controller Globals
|
|
BOOL g_bDocksBackGatesIgnoreTrevorsUniform = FALSE
|
|
|
|
CONST_INT ciSINGLE_PLAYER_SJS_GROUP 0
|
|
CONST_INT ciFREEMODE_PLAYER_SJS_GROUP 1
|
|
CONST_INT ciUGC_PLAYER_SJS_GROUP 2
|
|
CONST_INT ciRC_TIME_TRIALS_SJS_GROUP 3
|
|
|
|
// Altrusit Cult Globals
|
|
BOOL g_bDeliverCurrentGroupMembersToCult = FALSE
|
|
BOOL g_bCurrentGroupMembersHaveBeenDeliveredToCult = FALSE
|
|
BOOL g_bAltruistCultHelpHasDisplayed = FALSE
|
|
BOOL g_bAltruistCultDialogueHasPlayed = FALSE
|
|
BOOL g_bAltruistCultFinalDialogueHasPlayed = FALSE
|
|
BOOL g_bAltruistCultExitMusicPlayed = FALSE
|
|
//BOOL g_bThisPedHasBeenDeliveredToCult[7]
|
|
|
|
// Pickup controller query system
|
|
ENUM PICKUP_QUERY
|
|
PC_QUERY_INACTIVE,
|
|
PC_QUERY_REQUEST,
|
|
PC_QUERY_RESULT,
|
|
PC_QUERY_RESET
|
|
ENDENUM
|
|
|
|
ENUM QUERY_TYPE
|
|
PC_QUERY_TYPE_ARMOUR,
|
|
PC_QUERY_TYPE_HEALTH,
|
|
PC_QUERY_TYPE_WEAPON,
|
|
PC_QUERY_TYPE_INVALID
|
|
ENDENUM
|
|
|
|
PICKUP_QUERY g_ePickupQuery = PC_QUERY_INACTIVE
|
|
QUERY_TYPE g_eQueryType = PC_QUERY_TYPE_INVALID
|
|
INT g_iPickupIndex
|
|
BOOL g_bPickupCollected
|
|
|
|
// Cheat controller
|
|
INT g_iBitsetCheatsCurrentlyDisabled // Bitset which tells the cheat controller which cheats are disabled this frame.
|
|
INT g_iBitsetCheatsCurrentlyActive // Bitset which keeps track of which cheats are currently active.
|
|
INT g_iBitsetCheatsUsedThisSession // Bitset which keeps track of which cheats were used this session.
|
|
INT g_iCheatTriggerBitset // Bitset for triggering cheats, e.g. from phone.
|
|
MODEL_NAMES g_eCheatVehicleModelName // Model name of phone cheat vehicle.
|
|
BOOL g_bHasAnyCheatBeenUsed // Bool for the stats guys to check if a cheat has been used. Must be reset to FALSE when starting checking.
|
|
|
|
STRUCT PHYSICS_PERF_STRUCT
|
|
VECTOR vInput
|
|
FLOAT fInput
|
|
ENDSTRUCT
|
|
|
|
//Are the vending machines active.
|
|
BOOL g_bVendingMachinesActive = TRUE
|
|
BOOL g_bCurrentlyUsingVendingMachine = FALSE // B*1567131 Prevent Chop running off when using a vending machine
|
|
|
|
BOOL g_bCurrentlyUsingTelescope = FALSE // Prevent Chop running off when using a telescope
|
|
|
|
BOOL g_bCurrentlyBuyingProperty = FALSE // Prevent Chop running off when showing the buying property cutscene
|
|
|
|
//Peyote conversation bitsets
|
|
INT g_iBitsetPeyoteFranklin
|
|
INT g_iBitsetPeyoteMichael
|
|
INT g_iBitsetPeyoteTrevor
|
|
INT g_iBitsetPeyoteFranklinSecond
|
|
INT g_iBitsetPeyoteMichaelSecond
|
|
INT g_iBitsetPeyoteTrevorSecond
|
|
|
|
//Ped brain timer.
|
|
CONST_INT PED_BRAIN_LOAD_COOLDOWN 10000
|
|
INT g_iPedBrainLastLoaded = -PED_BRAIN_LOAD_COOLDOWN
|
|
|
|
|
|
// Grass cull spheres
|
|
CONST_INT NUMBER_AVAILABLE_CULLSPHERES 8
|
|
|
|
// Used to stop ambient assets loading while the player is moving at speed.
|
|
// Helps relieve pressure on the streaming engine.
|
|
CONST_INT AMBIENT_LOAD_PLAYER_SPEED_CUTOFF 1369 // 37^2 m/s
|
|
|
|
//Previous number of completed stunt jumps
|
|
INT g_iPreviousNumberOfStuntJumps = -1
|
|
|
|
INT g_iLuxeLatestScriptInstanceID = -1
|
|
INT g_iLuxeBootVerifyBS
|
|
BOOL g_bInLuxeVehicle = FALSE // True when the local player is inside a luxe vehicle.
|
|
|
|
BOOL g_BInYachtJacuzzi = FALSE // True when player is using the Jacuzzi
|
|
BOOL g_bInRadioLocate = FALSE
|
|
BOOL g_bRadioActTriggered = FALSE
|
|
BOOL g_bInTVLocate = FALSE
|
|
BOOL g_bCanPlayerUseSafehouseActivity = FALSE
|
|
BOOL g_bUsingBarmaidActivity = FALSE
|
|
|
|
ENUM OFFICE_SEAT_ACT_STATE
|
|
OFFICE_SEAT_INIT = 0,
|
|
OFFICE_SEAT_LOCATECHECK,
|
|
OFFICE_SEAT_PROMPT,
|
|
OFFICE_SEAT_REQUEST,
|
|
OFFICE_SEAT_APPROACH,
|
|
OFFICE_SEAT_RUN_ENTER_ANIM,
|
|
OFFICE_SEAT_CHECK_ENTER_OR_IDLE_ANIM,
|
|
OFFICE_SEAT_CHECK_BASE_ANIM,
|
|
OFFICE_SEAT_RUNANIM,
|
|
OFFICE_SEAT_EXIT_TURN,
|
|
OFFICE_SEAT_ENTER_TURN,
|
|
OFFICE_SEAT_EXIT,
|
|
OFFICE_SEAT_CLEANUP,
|
|
OFFICE_SEAT_EXIT_INTERRUPT,
|
|
OFFICE_SEAT_TV_EXIT_SEAT,
|
|
OFFICE_SEAT_PUT_ON_CLOTHES,
|
|
OFFICE_SEAT_PLAY_COMPUTER_ENTER,
|
|
OFFICE_SEAT_PLAY_COMPUTER_IDLE,
|
|
OFFICE_SEAT_PLAY_COMPUTER_EXIT,
|
|
OFFICE_SEAT_SWITCH_TO_GAME_ANIM,
|
|
OFFICE_SEAT_SWITCH_FROM_GAME_ANIM_TO_SEAT,
|
|
OFFICE_SEAT_SWITCH_FROM_GAME_ANIM_TO_STAND,
|
|
OFFICE_SEAT_PLAY_LAPTOP_INTERNET_ENTER,
|
|
OFFICE_SEAT_PLAY_GAME_STANDING_ENTER,
|
|
OFFICE_SEAT_SPAWN_ACTIVITY,
|
|
OFFICE_SEAT_CLEANUP_WAIT
|
|
,OFFICE_SEAT_RESET_AFTER_QUITTING_SMV
|
|
ENDENUM
|
|
|
|
OFFICE_SEAT_ACT_STATE g_OfficeArmChairState = OFFICE_SEAT_INIT
|
|
|
|
INT g_iDayOfWeek
|
|
|
|
BOOL g_b_ScriptMPBlock = FALSE
|
|
|
|
/* *\
|
|
*********** Global cache for specific events *************
|
|
See event_listener.sc
|
|
\* */
|
|
STRUCT EVENT_CACHE_ITEM
|
|
INT iEventName
|
|
INT iFrame
|
|
INT iScriptNameHash
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
INT iDebugCount
|
|
#ENDIF //IS_DEBUG_BUILD
|
|
ENDSTRUCT
|
|
|
|
CONST_INT EVENT_CACHE_SIZE 20
|
|
|
|
STRUCT EVENT_CACHE
|
|
EVENT_CACHE_ITEM events[EVENT_CACHE_SIZE]
|
|
INT iLength
|
|
ENDSTRUCT
|
|
EVENT_CACHE g_eventCache
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
STRUCT SCRIPT_EVENT_FATAL_ERROR_DATA
|
|
EVENT_NAMES eEvent
|
|
INT iFrame
|
|
TEXT_LABEL_31 txtScriptName
|
|
TEXT_LABEL_23 txt23FatalPlayer
|
|
ENDSTRUCT
|
|
STRUCT GLOBAL_NET_FATAL_ERROR_DATA
|
|
PLAYER_INDEX iPlayerIndex
|
|
SCRIPT_EVENT_FATAL_ERROR_DATA data
|
|
INT iFrameReceived
|
|
ENDSTRUCT
|
|
GLOBAL_NET_FATAL_ERROR_DATA g_netFatalError
|
|
BOOL g_bReceivedNetFatalError
|
|
BOOL g_bBroadcastNetFatalError
|
|
#ENDIF //IS_DEBUG_BUILD
|
|
/********************************************************/
|