187 lines
4.3 KiB
Python
Executable File
187 lines
4.3 KiB
Python
Executable File
#IF IS_FINAL_BUILD
|
|
SCRIPT
|
|
ENDSCRIPT
|
|
#ENDIF
|
|
|
|
#IF IS_DEBUG_BUILD
|
|
|
|
USING "rage_builtins.sch"
|
|
USING "script_xml.sch"
|
|
USING "commands_ped.sch"
|
|
USING "commands_task.sch"
|
|
USING "commands_streaming.sch"
|
|
USING "commands_graphics.sch"
|
|
USING "commands_cutscene.sch"
|
|
USING "commands_debug.sch"
|
|
USING "test_tools.sch"
|
|
USING "commands_vehicle.sch"
|
|
USING "commands_camera.sch"
|
|
USING "commands_player.sch"
|
|
USING "script_DEBUG.sch"
|
|
USING "commands_script.sch"
|
|
USING "commands_entity.sch"
|
|
USING "commands_event.sch"
|
|
USING "commands_decorator.sch"
|
|
|
|
bool bSpawn = FALSE
|
|
bool bDelete = FALSE
|
|
|
|
INT iSelectedScript = 0
|
|
|
|
ENUM TestScriptEnum
|
|
GTEST_AIRPLANE,
|
|
GTEST_AVOIDANCE,
|
|
GTEST_BOATS,
|
|
GTEST_HELICOPTERS,
|
|
SUPPRESS_BREAKOUTS,
|
|
NEAR_MISS_VIA_CAR,
|
|
DIVING_AWAY_FROM_CAR,
|
|
DIVING_AWAY_FROM_CAR_WHILE_FLEEING,
|
|
NUM_TESTSCRIPTS
|
|
ENDENUM
|
|
|
|
PROC SET_SCRIPT_CAN_START (string current_Script, int current_Script_Hash)
|
|
|
|
int iCurrent_Script
|
|
iCurrent_Script = GET_NUMBER_OF_THREADS_RUNNING_THE_SCRIPT_WITH_THIS_HASH(current_Script_Hash)
|
|
|
|
IF (iCurrent_Script = 0)
|
|
REQUEST_SCRIPT(current_Script)
|
|
WHILE NOT HAS_SCRIPT_LOADED(current_Script)
|
|
WAIT(0)
|
|
ENDWHILE
|
|
START_NEW_SCRIPT(current_Script, DEFAULT_STACK_SIZE)
|
|
|
|
IF DOES_ENTITY_EXIST(GET_PLAYER_PED(GET_PLAYER_INDEX()))
|
|
IF NOT IS_PED_INJURED(GET_PLAYER_PED(GET_PLAYER_INDEX()))
|
|
DECOR_SET_BOOL(GET_PLAYER_PED(GET_PLAYER_INDEX()),"rsne_testscript_active",TRUE)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
PRINTSTRING("Launching ")
|
|
PRINTSTRING(current_Script)
|
|
PRINTSTRING(" script")
|
|
PRINTNL()
|
|
|
|
ENDIF
|
|
//ENDIF
|
|
ENDPROC
|
|
|
|
|
|
PROC CREATE_TEST_SCRIPT ( TestScriptEnum eTestScript )
|
|
|
|
SWITCH eTestScript
|
|
CASE GTEST_AIRPLANE
|
|
SET_SCRIPT_CAN_START ("gtest_airplane", HASH("gtest_airplane"))
|
|
BREAK
|
|
CASE GTEST_AVOIDANCE
|
|
SET_SCRIPT_CAN_START ("gtest_avoidance", HASH("gtest_avoidance"))
|
|
BREAK
|
|
CASE SUPPRESS_BREAKOUTS
|
|
SET_SCRIPT_CAN_START ("SuppressBreakout", HASH("SuppressBreakout"))
|
|
BREAK
|
|
CASE NEAR_MISS_VIA_CAR
|
|
SET_SCRIPT_CAN_START("gtest_NearlyMissedByCar", HASH("gtest_NearlyMissedByCar"))
|
|
BREAK
|
|
CASE DIVING_AWAY_FROM_CAR
|
|
SET_SCRIPT_CAN_START("gtest_DivingFromCar", HASH("gtest_DivingFromCar"))
|
|
BREAK
|
|
CASE GTEST_HELICOPTERS
|
|
SET_SCRIPT_CAN_START("gtest_helicopter", HASH("gtest_helicopter"))
|
|
BREAK
|
|
CASE GTEST_BOATS
|
|
SET_SCRIPT_CAN_START("gtest_boat", HASH("gtest_boat"))
|
|
BREAK
|
|
CASE DIVING_AWAY_FROM_CAR_WHILE_FLEEING
|
|
SET_SCRIPT_CAN_START("gtest_DivingFromCarWhileFleeing", HASH("gtest_DivingFromCarWhileFleeing"))
|
|
BREAK
|
|
ENDSWITCH
|
|
|
|
ENDPROC
|
|
|
|
PROC CLEANUP_TEST_SCRIPT ( )
|
|
|
|
IF DOES_ENTITY_EXIST(GET_PLAYER_PED(GET_PLAYER_INDEX()))
|
|
IF NOT IS_PED_INJURED(GET_PLAYER_PED(GET_PLAYER_INDEX()))
|
|
DECOR_SET_BOOL(GET_PLAYER_PED(GET_PLAYER_INDEX()),"rsne_testscript_active",FALSE)
|
|
ENDIF
|
|
ENDIF
|
|
|
|
ENDPROC
|
|
|
|
|
|
PROC CLEANUP()
|
|
|
|
CLEANUP_TEST_SCRIPT()
|
|
CLEAR_PRINTS()
|
|
CLEAR_HELP()
|
|
TERMINATE_THIS_THREAD ()
|
|
|
|
ENDPROC
|
|
|
|
PROC CREATE_WIDGETS()
|
|
|
|
START_WIDGET_GROUP ("RSNE_TEST_SCRIPT")
|
|
|
|
START_NEW_WIDGET_COMBO()
|
|
ADD_TO_WIDGET_COMBO ("gtest_airplane")
|
|
ADD_TO_WIDGET_COMBO ("gtest_avoidance")
|
|
ADD_TO_WIDGET_COMBO ("gtest_boats")
|
|
ADD_TO_WIDGET_COMBO ("gtest_helicopter")
|
|
ADD_TO_WIDGET_COMBO ("SuppressBreakout")
|
|
ADD_TO_WIDGET_COMBO ("gtest_NearlyMissedByCar")
|
|
ADD_TO_WIDGET_COMBO ("gtest_DivingFromCar")
|
|
ADD_TO_WIDGET_COMBO ("gtest_DivingFromCarWhileFleeing")
|
|
STOP_WIDGET_COMBO("Scripts", iSelectedScript)
|
|
|
|
ADD_WIDGET_BOOL ("Spawn", bSpawn)
|
|
ADD_WIDGET_BOOL ("Delete", bDelete)
|
|
|
|
STOP_WIDGET_GROUP()
|
|
|
|
ENDPROC
|
|
|
|
PROC PROCESS_WIDGETS()
|
|
|
|
IF bSpawn
|
|
|
|
CLEANUP_TEST_SCRIPT()
|
|
CREATE_TEST_SCRIPT(INT_TO_ENUM(TestScriptEnum, iSelectedScript))
|
|
|
|
bSpawn = FALSE
|
|
ENDIF
|
|
|
|
IF bDelete
|
|
CLEANUP_TEST_SCRIPT()
|
|
bDelete = FALSE
|
|
ENDIF
|
|
|
|
ENDPROC
|
|
|
|
SCRIPT
|
|
|
|
IF HAS_FORCE_CLEANUP_OCCURRED(FORCE_CLEANUP_FLAG_SP_TO_MP)
|
|
CLEANUP()
|
|
ENDIF
|
|
|
|
SET_DEBUG_ACTIVE (TRUE)
|
|
SET_DEBUG_LINES_AND_SPHERES_DRAWING_ACTIVE(TRUE)
|
|
|
|
DECOR_REGISTER_UNLOCK()
|
|
DECOR_REGISTER("rsne_testscript_active", DECOR_TYPE_BOOL)
|
|
DECOR_REGISTER_LOCK()
|
|
|
|
CREATE_WIDGETS()
|
|
|
|
WHILE TRUE
|
|
PROCESS_WIDGETS()
|
|
|
|
WAIT(0)
|
|
ENDWHILE
|
|
|
|
CLEANUP()
|
|
|
|
ENDSCRIPT
|
|
|
|
#ENDIF // IS_DEBUG_BUILD
|