113 lines
2.8 KiB
Python
Executable File
113 lines
2.8 KiB
Python
Executable File
|
|
|
|
//Compile out Title Update changes to header functions.
|
|
//Must be before includes.
|
|
//CONST_INT USE_TU_CHANGES 0 // Removed by Kenneth R.
|
|
|
|
|
|
//Taxi Tutorial - Post Family 1.
|
|
//Ross Wallace, Ben Rollinson - 19/04/2012
|
|
|
|
USING "rage_builtins.sch"
|
|
USING "globals.sch"
|
|
USING "savegame_public.sch"
|
|
USING "mission_stat_public.sch"
|
|
USING "flow_help_public.sch"
|
|
USING "taxi_functions.sch"
|
|
|
|
|
|
ENUM TaxiTutorialStage
|
|
WAIT_FOR_SAFE,
|
|
SPAWN_TAXI,
|
|
DISPLAY_HELP_1,
|
|
DISPLAY_HELP_2,
|
|
END_TUTORIAL
|
|
ENDENUM
|
|
TaxiTutorialStage eStage = WAIT_FOR_SAFE
|
|
|
|
|
|
PROC CLEANUP()
|
|
IF IS_FLOW_HELP_MESSAGE_QUEUED("AM_H_TAXI1")
|
|
REMOVE_HELP_FROM_FLOW_QUEUE("AM_H_TAXI1")
|
|
ENDIF
|
|
IF IS_FLOW_HELP_MESSAGE_QUEUED("AM_H_TAXI2")
|
|
REMOVE_HELP_FROM_FLOW_QUEUE("AM_H_TAXI2")
|
|
ENDIF
|
|
CPRINTLN(DEBUG_FLOW, "<FAM1TAXI> Cleaned up.")
|
|
TERMINATE_THIS_THREAD()
|
|
ENDPROC
|
|
|
|
|
|
PROC RUN_TAXI_TUTORIAL()
|
|
|
|
SWITCH eStage
|
|
CASE WAIT_FOR_SAFE
|
|
IF NOT IS_ENTITY_DEAD(PLAYER_PED_ID())
|
|
AND NOT IS_AUTO_SAVE_IN_PROGRESS()
|
|
AND NOT IS_AUTOSAVE_REQUEST_IN_PROGRESS()
|
|
AND NOT IS_RESULT_SCREEN_DISPLAYING()
|
|
CPRINTLN(DEBUG_FLOW, "<FAM1TAXI> It is now safe to run tutorial.")
|
|
REQUEST_SCRIPT("taxiService")
|
|
eStage = SPAWN_TAXI
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE SPAWN_TAXI
|
|
IF HAS_SCRIPT_LOADED("taxiService")
|
|
CPRINTLN(DEBUG_FLOW, "<FAM1TAXI> Spawned taxi.")
|
|
START_NEW_SCRIPT("taxiService", SPECIAL_ABILITY_STACK_SIZE)
|
|
SET_SCRIPT_AS_NO_LONGER_NEEDED("taxiService")
|
|
eStage = DISPLAY_HELP_1
|
|
ENDIF
|
|
BREAK
|
|
|
|
CASE DISPLAY_HELP_1
|
|
SWITCH GET_FLOW_HELP_MESSAGE_STATUS("AM_H_TAXI1")
|
|
CASE FHS_EXPIRED
|
|
ADD_HELP_TO_FLOW_QUEUE("AM_H_TAXI1", FHP_HIGH, 0, 1000, DEFAULT_HELP_TEXT_TIME, BIT_MICHAEL)
|
|
BREAK
|
|
CASE FHS_DISPLAYED
|
|
CPRINTLN(DEBUG_FLOW, "<FAM1TAXI> Help message 1 displayed.")
|
|
eStage = DISPLAY_HELP_2
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE DISPLAY_HELP_2
|
|
SWITCH GET_FLOW_HELP_MESSAGE_STATUS("AM_H_TAXI2")
|
|
CASE FHS_EXPIRED
|
|
ADD_HELP_TO_FLOW_QUEUE("AM_H_TAXI2", FHP_HIGH, 0, 1000, DEFAULT_HELP_TEXT_TIME, BIT_MICHAEL)
|
|
BREAK
|
|
CASE FHS_DISPLAYED
|
|
CPRINTLN(DEBUG_FLOW, "<FAM1TAXI> Help message 2 displayed.")
|
|
eStage = END_TUTORIAL
|
|
BREAK
|
|
ENDSWITCH
|
|
BREAK
|
|
|
|
CASE END_TUTORIAL
|
|
CPRINTLN(DEBUG_FLOW, "<FAM1TAXI> Tutorial finished.")
|
|
CLEANUP()
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
ENDPROC
|
|
|
|
|
|
SCRIPT
|
|
CPRINTLN(DEBUG_FLOW, "<FAM1TAXI> Started.")
|
|
|
|
IF HAS_FORCE_CLEANUP_OCCURRED(FORCE_CLEANUP_FLAG_DEBUG_MENU|FORCE_CLEANUP_FLAG_SP_TO_MP)
|
|
CPRINTLN(DEBUG_FLOW, "<FAM1TAXI> Being forced to clean up.")
|
|
CLEANUP()
|
|
ENDIF
|
|
|
|
WHILE NOT GET_MISSION_COMPLETE_STATE(SP_MISSION_FAMILY_2) //If the flow has progressed just clean up.
|
|
RUN_TAXI_TUTORIAL()
|
|
WAIT(0)
|
|
ENDWHILE
|
|
|
|
CPRINTLN(DEBUG_FLOW, "<FAM1TAXI> Flow progressed without tutorial running. Cleaning up")
|
|
CLEANUP()
|
|
ENDSCRIPT
|