366 lines
14 KiB
XML
Executable File
366 lines
14 KiB
XML
Executable File
//////////////////////////////////////////////////////////////////////////////////////////
|
|
// //
|
|
// SCRIPT NAME : properties_globals.sch //
|
|
// AUTHOR : Rob Bray //
|
|
// DESCRIPTION : Globals dealing with SP property purchases //
|
|
// //
|
|
//////////////////////////////////////////////////////////////////////////////////////////
|
|
|
|
USING "charsheet_global_definitions.sch"
|
|
USING "model_enums.sch"
|
|
|
|
CONST_INT NUMBER_PROPERTY_MANAGEMENT_VEHICLES 2
|
|
CONST_INT NUMBER_PROPERTY_MANAGEMENT_PEDS 8
|
|
|
|
ENUM PROPERTY_MANAGEMENT_STATE_ENUM
|
|
PROPERTY_MANAGEMENT_STATE_WAITING = 0,
|
|
PROPERTY_MANAGEMENT_STATE_GIVE_NOTIFICATION,
|
|
PROPERTY_MANAGEMENT_STATE_PENDING,
|
|
PROPERTY_MANAGEMENT_STATE_LAUNCHING,
|
|
PROPERTY_MANAGEMENT_STATE_RUNNING
|
|
ENDENUM
|
|
|
|
ENUM PROPERTY_MANAGEMENT_MISSION_ENUM
|
|
PROPERTY_MANAGEMENT_MISSION_NONE = 0,
|
|
PROPERTY_MANAGEMENT_MISSION_DELIVERY,
|
|
PROPERTY_MANAGEMENT_MISSION_DEFEND,
|
|
PROPERTY_MANAGEMENT_MISSION_TAXI,
|
|
PROPERTY_MANAGEMENT_MISSION_RECOVER_STOLEN,
|
|
PROPERTY_MANAGEMENT_MISSION_GANG_ATTACK,
|
|
PROPERTY_MANAGEMENT_MISSION_PLANE_PROMOTION
|
|
ENDENUM
|
|
|
|
ENUM PROPERTY_MANAGEMENT_RESULT_ENUM
|
|
PROPERTY_MANAGEMENT_RESULT_NONE = 0,
|
|
PROPERTY_MANAGEMENT_RESULT_SUCCESS,
|
|
PROPERTY_MANAGEMENT_RESULT_FAILURE
|
|
ENDENUM
|
|
|
|
ENUM DELIVERY_MISSION_VARIATION_ENUM
|
|
DELIVERY_MISSION_VARIATION_TIMED_1 = 0,
|
|
DELIVERY_MISSION_VARIATION_TIMED_2,
|
|
DELIVERY_MISSION_VARIATION_TIMED_3,
|
|
DELIVERY_MISSION_VARIATION_LOSE_COPS,
|
|
DELIVERY_MISSION_VARIATION_LOSE_COPS_2,
|
|
DELIVERY_MISSION_VARIATION_RECOVER_VAN,
|
|
DELIVERY_MISSION_VARIATION_RECOVER_VAN_2,
|
|
DELIVERY_MISSION_VARIATION_BREAKABLE_CARGO_COUNTRY,
|
|
DELIVERY_MISSION_VARIATION_BREAKABLE_CARGO_VINYARD,
|
|
DELIVERY_MISSION_VARIATION_BREAKABLE_CARGO_LIQUOR_MARKET,
|
|
DELIVERY_MISSION_VARIATION_BREAKABLE_CARGO_LIQUOR_MARKET_2,
|
|
DELIVERY_MISSION_VARIATION_BREAKABLE_CARGO_LIQUOR_MARKET_3,
|
|
DELIVERY_MISSION_VARIATION_BREAKABLE_CARGO_PISSWASSER_1,
|
|
DELIVERY_MISSION_VARIATION_BREAKABLE_CARGO_PISSWASSER_2
|
|
ENDENUM
|
|
|
|
ENUM DEFEND_MISSION_VARIATION_ENUM
|
|
DEFEND_MISSION_VARIATION_1 = 0,
|
|
DEFEND_MISSION_VARIATION_2
|
|
ENDENUM
|
|
|
|
ENUM TAXI_MISSION_VARIATION_ENUM
|
|
TAXI_MISSION_VARIATION_CLOWN_CAR = 0,
|
|
TAXI_MISSION_VARIATION_CUT_YOU_IN,
|
|
TAXI_MISSION_VARIATION_DEADLINE,
|
|
TAXI_MISSION_VARIATION_FOLLOW_CAR,
|
|
TAXI_MISSION_VARIATION_GOT_YOU_NOW,
|
|
TAXI_MISSION_VARIATION_GOT_YOUR_BACK,
|
|
TAXI_MISSION_VARIATION_NEEDS_EXCITEMENT,
|
|
TAXI_MISSION_VARIATION_TAKE_IT_EASY,
|
|
TAXI_MISSION_VARIATION_TAKE_TO_BEST
|
|
ENDENUM
|
|
|
|
ENUM RECOVER_STOLEN_MISSION_VARIATION_ENUM
|
|
RECOVER_STOLEN_MISSION_VARIATION_TAKINGS = 0,
|
|
RECOVER_STOLEN_MISSION_VARIATION_PAP
|
|
ENDENUM
|
|
|
|
ENUM GANG_ATTACK_MISSION_VARIATION_ENUM
|
|
GANG_ATTACK_MISSION_VARIATION_STAYS_AND_FIGHTS = 0,
|
|
GANG_ATTACK_MISSION_VARIATION_FLEES_ON_SIGHT
|
|
ENDENUM
|
|
|
|
ENUM HOSE_DOWN_PROTESTORS_MISSION_VARIATION_ENUM
|
|
HOSE_DOWN_PROTESTORS_MISSION_VARIATION_1 = 0
|
|
ENDENUM
|
|
|
|
ENUM PLANE_PROMOTION_MISSION_VARIATION_ENUM
|
|
PLANE_PROMOTION_MISSION_VARIATION_1 = 0
|
|
ENDENUM
|
|
|
|
ENUM PROPERTY_ACTION_ENUM
|
|
PROPERTY_ACTION_FINISHED_MANAGEMENT_EVENT = 0,
|
|
PROPERTY_ACTION_IGNORED_MANAGEMENT_EVENT,
|
|
PROPERTY_ACTION_DELAY_FOR_MISSION,
|
|
PROPERTY_ACTION_GENERAL_DELAY,
|
|
PROPERTY_ACTION_PURCHASED_PROPERTY
|
|
ENDENUM
|
|
|
|
ENUM PROPERTY_MISSION_PASSED_SCREEN_STATE_ENUM
|
|
PROPERTY_MISSION_PASSED_SCREEN_STATE_NOT_STARTED = 0,
|
|
PROPERTY_MISSION_PASSED_SCREEN_STATE_LOADING,
|
|
PROPERTY_MISSION_PASSED_SCREEN_STATE_DISPLAYING,
|
|
PROPERTY_MISSION_PASSED_SCREEN_STATE_CLEANUP
|
|
ENDENUM
|
|
|
|
ENUM PROPERTY_STAT_ENUM
|
|
PROPERTY_STAT_BOUGHT = 0,
|
|
PROPERTY_STAT_EARNINGS,
|
|
PROPERTY_STAT_MISSIONS_TRIGGERED
|
|
ENDENUM
|
|
|
|
ENUM PROPERTY_BIT_ENUM
|
|
PROPERTY_BIT_SHOULD_RECEIVE_PAYMENT_THIS_WEEK = BIT0,
|
|
PROPERTY_BIT_IS_NEW_PROPERTY = BIT1,
|
|
PROPERTY_BIT_SENT_EMAIL = BIT2
|
|
ENDENUM
|
|
|
|
ENUM PROPERTY_SYSTEM_BIT_ENUM
|
|
// REMEMBER TO ADD TO CLEAR ALL SYSTEM BITS
|
|
PROPERTY_SYSTEM_BIT_SEND_FAIL_TEXT = BIT1,
|
|
PROPERTY_SYSTEM_BIT_SEND_PASS_TEXT = BIT2,
|
|
PROPERTY_SYSTEM_BIT_DISPLAY_MISSION_PASS = BIT3,
|
|
PROPERTY_SYSTEM_BIT_RUN_CUTSCENE = BIT4,
|
|
PROPERTY_SYSTEM_BIT_SETUP_CUTSCENE = BIT5,
|
|
PROPERTY_SYSTEM_BIT_PLAYING_MOCAP = BIT6,
|
|
PROPERTY_SYSTEM_BIT_CLEARED_FOR_MOCAP = BIT7,
|
|
PROPERTY_SYSTEM_BIT_DONE_PURCHASE_SOUND = BIT8,
|
|
PROPERTY_SYSTEM_BIT_BLIPPED_MANAGEMENT_EVENT = BIT9,
|
|
PROPERTY_SYSTEM_BIT_WAITING_ON_CALL_RESPOND = BIT10,
|
|
PROPERTY_SYSTEM_BIT_RECEIVED_CALL = BIT11,
|
|
PROPERTY_SYSTEM_BIT_LAUNCH_AMBIENT_SCRIPT = BIT12,
|
|
PROPERTY_SYSTEM_BIT_DISPLAYED_PURCHASE_HELP = BIT13,
|
|
PROPERTY_SYSTEM_BIT_DISPLAYED_NO_MONEY_HELP = BIT14,
|
|
PROPERTY_SYSTEM_BIT_DISPLAYED_CONFIRM_HELP = BIT15,
|
|
PROPERTY_SYSTEM_BIT_DISPLAYED_WRONG_CHAR_HELP = BIT16,
|
|
PROPERTY_SYSTEM_BIT_CONFIRM_PURCHASE = BIT17,
|
|
PROPERTY_SYSTEM_BIT_SUPPRESS_FOR_SALE_SIGNS = BIT18,
|
|
PROPERTY_SYSTEM_BIT_PLAYED_PASS_SOUND = BIT19,
|
|
PROPERTY_SYSTEM_BIT_SUPPRESS_AIRPORT_RESTRICTED = BIT20,
|
|
PROPERTY_SYSTEM_BIT_REQUESTED_TRAFFICKING_ASSETS = BIT21,
|
|
PROPERTY_SYSTEM_BIT_DO_RESET_TO_WAITING = BIT22,
|
|
PROPERTY_SYSTEM_BIT_WAITING_ON_TEXT_VIEW = BIT23,
|
|
PROPERTY_SYSTEM_BIT_DISPLAY_PURCHASED = BIT24,
|
|
PROPERTY_SYSTEM_BIT_REQUESTED_TOWING_ASSETS = BIT25,
|
|
PROPERTY_SYSTEM_BIT_RESET_FOR_MULTIPLAYER = BIT26,
|
|
PROPERTY_SYSTEM_BIT_FORCED_MISSION_START = BIT27,
|
|
PROPERTY_SYSTEM_BIT_REQUESTED_GOLF_CLUB_ASSETS = BIT28,
|
|
PROPERTY_SYSTEM_BIT_PLAYED_BOUGHT_SOUND = BIT29
|
|
ENDENUM
|
|
|
|
ENUM PROPERTY_SAVED_BIT_ENUM
|
|
PROPERTY_SAVED_BIT_INCOME_PAID_THIS_WEEK = BIT1,
|
|
PROPERTY_SAVED_BIT_DONE_EVENT_FOR_NEW_PROPERTY = BIT2,
|
|
PROPERTY_SAVED_BIT_OFFERED_TOWING_IMPOUND = BIT3,
|
|
PROPERTY_SAVED_BIT_ENABLED_TOWING_VEH_GEN = BIT4,
|
|
|
|
PROPERTY_SAVED_BIT_VAR_TRACK_WEED_TIMED = BIT5,
|
|
PROPERTY_SAVED_BIT_VAR_TRACK_WEED_LOSE_COPS = BIT6,
|
|
PROPERTY_SAVED_BIT_VAR_TRACK_WEED_RECOVER_VAN = BIT7,
|
|
PROPERTY_SAVED_BIT_VAR_TRACK_BAR_RECOVER_STOLEN = BIT8,
|
|
PROPERTY_SAVED_BIT_VAR_TRACK_BAR_GANG_ATTACK = BIT9,
|
|
PROPERTY_SAVED_BIT_VAR_TRACK_BAR_DELIVERY = BIT10,
|
|
PROPERTY_SAVED_BIT_VAR_TRACK_CINEMA_RECOVER_STOLEN = BIT11,
|
|
PROPERTY_SAVED_BIT_VAR_TRACK_CINEMA_PLANE_PROMOTION = BIT13,
|
|
PROPERTY_SAVED_BIT_VAR_TRACK_NO_TRACK = BIT14,
|
|
|
|
PROPERTY_SAVED_BIT_RESET_TIME_AFTER_ARMENIAN_1 = BIT15
|
|
ENDENUM
|
|
|
|
ENUM PROPERTY_MISSION_SUB_VAR_ENUM
|
|
PROPERTY_MISSION_SUB_VAR_WEED_TIMED_1 = BIT1,
|
|
PROPERTY_MISSION_SUB_VAR_WEED_TIMED_2 = BIT2,
|
|
PROPERTY_MISSION_SUB_VAR_WEED_TIMED_3 = BIT3,
|
|
PROPERTY_MISSION_SUB_VAR_WEED_LOSE_COPS_1 = BIT4,
|
|
PROPERTY_MISSION_SUB_VAR_WEED_LOSE_COPS_2 = BIT5,
|
|
PROPERTY_MISSION_SUB_VAR_WEED_RECOVER_VAN_1 = BIT6,
|
|
PROPERTY_MISSION_SUB_VAR_WEED_RECOVER_VAN_2 = BIT7,
|
|
|
|
PROPERTY_MISSION_SUB_VAR_TAXI_CLOWN_CAR = BIT8,
|
|
PROPERTY_MISSION_SUB_VAR_TAXI_CUT_YOU_IN = BIT9,
|
|
PROPERTY_MISSION_SUB_VAR_TAXI_DEADLINE = BIT10,
|
|
PROPERTY_MISSION_SUB_VAR_TAXI_FOLLOW_CAR = BIT11,
|
|
PROPERTY_MISSION_SUB_VAR_TAXI_GOT_YOU_NOW = BIT12,
|
|
PROPERTY_MISSION_SUB_VAR_TAXI_GOT_YOUR_BACK = BIT13,
|
|
PROPERTY_MISSION_SUB_VAR_TAXI_NEEDS_EXCITEMENT = BIT14,
|
|
PROPERTY_MISSION_SUB_VAR_TAXI_TAKE_IT_EASY = BIT15,
|
|
PROPERTY_MISSION_SUB_VAR_TAXI_TAKE_TO_BEST = BIT16,
|
|
|
|
PROPERTY_MISSION_SUB_VAR_GANG_ATTACK_STAYS_AND_FIGHTS = BIT17,
|
|
PROPERTY_MISSION_SUB_VAR_GANG_ATTACK_FLEES_ON_SIGHT = BIT18,
|
|
|
|
PROPERTY_MISSION_SUB_VAR_BAR_RECOVER_STOLEN_PAPARAZZI = BIT19,
|
|
PROPERTY_MISSION_SUB_VAR_BAR_RECOVER_STOLEN_TAKINGS = BIT20,
|
|
|
|
PROPERTY_MISSION_SUB_VAR_CINEMA_RECOVER_STOLEN_TAKINGS = BIT21,
|
|
|
|
PROPERTY_MISSION_SUB_VAR_DEFEND_1 = BIT23,
|
|
PROPERTY_MISSION_SUB_VAR_DEFEND_2 = BIT24,
|
|
|
|
PROPERTY_MISSION_SUB_VAR_NO_TRACK = BIT25
|
|
ENDENUM
|
|
|
|
ENUM PROPERTY_UNSAVED_BIT_ENUM
|
|
PROPERTY_UNSAVED_BIT_AVAILABLE_FOR_SALE = BIT1,
|
|
PROPERTY_UNSAVED_BIT_RUN_LOCATE_CHECK = BIT2,
|
|
PROPERTY_UNSAVED_BIT_BLIPPED_AVAILABLE = BIT3,
|
|
PROPERTY_UNSAVED_BIT_BLIPPED_UNAVAILABLE = BIT4,
|
|
PROPERTY_UNSAVED_BIT_BLIPPED_OWNED = BIT5,
|
|
PROPERTY_UNSAVED_BIT_CREATED_FOR_SALE_SIGN = BIT6
|
|
ENDENUM
|
|
|
|
ENUM CREATE_MANAGEMENT_EVENT_STATE_NOT_STARTED_ENUM
|
|
CREATE_MANAGEMENT_EVENT_STATE_NOT_STARTED = 0,
|
|
CREATE_MANAGEMENT_EVENT_STATE_LOADING_ASSETS,
|
|
CREATE_MANAGEMENT_EVENT_STATE_DONE
|
|
ENDENUM
|
|
|
|
ENUM CREATE_FOR_SALE_SIGN_STATE_ENUM
|
|
CREATE_FOR_SALE_SIGN_STATE_NOT_STARTED = 0,
|
|
CREATE_FOR_SALE_SIGN_STATE_LOADING_MODEL,
|
|
CREATE_FOR_SALE_SIGN_STATE_DONE
|
|
ENDENUM
|
|
|
|
ENUM PROPERTY_MISSION_FAIL_REASON_OVERRIDE_ENUM
|
|
PROPERTY_MISSION_FAIL_REASON_OVERRIDE_NONE = 0,
|
|
PROPERTY_MISSION_FAIL_REASON_OVERRIDE_PAPS_KILLED,
|
|
PROPERTY_MISSION_FAIL_REASON_OVERRIDE_IGNORED
|
|
ENDENUM
|
|
|
|
ENUM PROPERTY_MISSION_PASS_REASON_OVERRIDE_ENUM
|
|
PROPERTY_MISSION_PASS_REASON_OVERRIDE_NONE = 0,
|
|
PROPERTY_MISSION_PASS_REASON_OVERRIDE_NOT_GREAT
|
|
ENDENUM
|
|
|
|
ENUM PROPERTY_GANG_ENUM
|
|
PROPERTYGANG_INVALID = -1,
|
|
PROPERTYGANG_VAGOS,
|
|
PROPERTYGANG_BALLAS,
|
|
PROPERTYGANG_TRIAD
|
|
ENDENUM
|
|
|
|
CONST_INT NUM_PROPERTY_GANG_ENEMIES 6
|
|
CONST_INT NUM_PROPERTY_GANG_VEHS 2
|
|
|
|
// management vehicle consts
|
|
CONST_INT PROPERTY_MANAGEMENT_VEHICLE_DELIVERY_VEHICLE 0
|
|
CONST_INT PROPERTY_MANAGEMENT_VEHICLE_PLANE_PROMOTION_VEHICLE 0
|
|
|
|
// management ped consts
|
|
CONST_INT PROPERTY_MANAGEMENT_PED_TAXI_CUSTOMER_1 0
|
|
CONST_INT PROPERTY_MANAGEMENT_PED_TAXI_CUSTOMER_2 1
|
|
CONST_INT PROPERTY_MANAGEMENT_PED_TAXI_CUSTOMER_3 2
|
|
|
|
CONST_INT NUMBER_PROPERTY_FOR_SALE_SIGNS 2
|
|
|
|
STRUCT PROPERTY_OWNERSHIP_DATA
|
|
enumCharacterList charOwner
|
|
TIMEOFDAY nextManagementEventTime
|
|
INT iBit
|
|
INT iLastIncome
|
|
ENDSTRUCT
|
|
|
|
STRUCT PROPERTY_SYSTEM_DATA
|
|
INT iTick
|
|
INT iLastIncomeCheckTime
|
|
|
|
INT iPropertyBit[COUNT_OF(PROPERTY_ENUM)]
|
|
|
|
PROPERTY_MANAGEMENT_STATE_ENUM propertyManagementState
|
|
PROPERTY_ENUM currentPropertyManagementProperty
|
|
PROPERTY_MANAGEMENT_MISSION_ENUM currentPropertyManagementMission
|
|
PROPERTY_MANAGEMENT_RESULT_ENUM currentPropertyManagementResult
|
|
CREATE_MANAGEMENT_EVENT_STATE_NOT_STARTED_ENUM createManagementEventState
|
|
PROPERTY_MISSION_PASSED_SCREEN_STATE_ENUM missionPassedScreenState
|
|
CREATE_FOR_SALE_SIGN_STATE_ENUM createForSaleSignState
|
|
|
|
OBJECT_INDEX signObject[NUMBER_PROPERTY_FOR_SALE_SIGNS]
|
|
|
|
INT iCurrentPropertyManagementVariation
|
|
INT iCandidateID
|
|
BLIP_INDEX propertyManagementBlip
|
|
INT iPendingPropertyManagementTimeOut
|
|
INT iManagementEventEndTime
|
|
INT iNextPushEventTime
|
|
INT iSystemBit
|
|
CC_CommID sManagementCommsID
|
|
SCALEFORM_INDEX passedScaleform
|
|
VEHICLE_INDEX veh[2]
|
|
PED_INDEX ped
|
|
|
|
PROPERTY_ENUM runCutsceneProperty
|
|
INT iCutsceneStartTime
|
|
INT iNextCutsceneShotTime
|
|
INT iCutsceneShot
|
|
INT iCutsceneHelp
|
|
BOOL bDone1stPersonFlash
|
|
CAMERA_INDEX camIndex1
|
|
CAMERA_INDEX camIndex2
|
|
THREADID propertyManagementThreadID
|
|
structPedsForConversation conversation
|
|
|
|
PROPERTY_ENUM ambientScriptProperty
|
|
PROPERTY_ENUM handlePurchaseProperty
|
|
|
|
STREAMVOL_ID streamVolume
|
|
INTERIOR_INSTANCE_INDEX interior
|
|
|
|
PROPERTY_MISSION_FAIL_REASON_OVERRIDE_ENUM failReasonOverride
|
|
PROPERTY_MISSION_PASS_REASON_OVERRIDE_ENUM passReasonOverride
|
|
|
|
// create entities in world
|
|
VEHICLE_INDEX managementEventVehicle[NUMBER_PROPERTY_MANAGEMENT_VEHICLES]
|
|
PED_INDEX managementEventPed[NUMBER_PROPERTY_MANAGEMENT_PEDS]
|
|
MODEL_NAMES managementEventModel
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
INT iDebugUpdateWidgetTime
|
|
BOOL bDebugSetAsOwner[COUNT_OF(PROPERTY_ENUM)]
|
|
INT iDebugOwner[COUNT_OF(PROPERTY_ENUM)]
|
|
INT iDebugNextManagementYear
|
|
INT iDebugNextManagementMonth
|
|
INT iDebugNextManagementDay
|
|
INT iDebugNextManagementHour
|
|
INT iDebugNextManagementMinute
|
|
INT iDebugNextManagementSecond
|
|
BOOL bDebugAdvanceNextPropertyManagementTime
|
|
BOOL bDebugForcePropertiesAvailable
|
|
BOOL bDebugSetTonyaMissionsComplete
|
|
BOOL bDebugPrintCurrentTimeOfDay
|
|
BOOL bDebugRequeue
|
|
|
|
INT iDebugThisPropertyNextManagementDay[COUNT_OF(PROPERTY_ENUM)]
|
|
INT iDebugThisPropertyNextManagementHour[COUNT_OF(PROPERTY_ENUM)]
|
|
BOOL bDebugAdvanceNextThisPropertyManagementTime[COUNT_OF(PROPERTY_ENUM)]
|
|
BOOL bDebugWarpToThisPropertyPurchaseCutscene[COUNT_OF(PROPERTY_ENUM)]
|
|
#ENDIF
|
|
ENDSTRUCT
|
|
|
|
|
|
//═══════════════════════════════════════════════════════════════════════════════
|
|
//═════════════════════════════╡ Unsaved data ╞══════════════════════════════════
|
|
//═══════════════════════════════════════════════════════════════════════════════
|
|
PROPERTY_SYSTEM_DATA g_PropertySystemData
|
|
|
|
|
|
//═══════════════════════════════════════════════════════════════════════════════
|
|
//════════════════════════════╡ Data to be saved ╞═══════════════════════════════
|
|
//═══════════════════════════════════════════════════════════════════════════════
|
|
STRUCT PropertySaved
|
|
PROPERTY_OWNERSHIP_DATA propertyOwnershipData[COUNT_OF(PROPERTY_ENUM)]
|
|
INT iBit
|
|
INT iSubVarBit
|
|
TIMEOFDAY nextCheckManagementEventTime
|
|
|
|
// specific data for various properties that cannot be saved in bits
|
|
INT iTotalCarsDestroyed // car scrapyard
|
|
|
|
INT iCashFromSonarThisWeek // sonar collections
|
|
INT iCashFromTraffickingThisWeek // trafficking
|
|
INT iCashFromTowingThisWeek // towing
|
|
ENDSTRUCT
|
|
|
|
|
|
|
|
|