USING "rage_builtins.sch" USING "globals.sch" #IF IS_FINAL_BUILD script endscript #endif #IF IS_DEBUG_BUILD USING "locates_public.sch" USING "bitset_widget.sch" CONST_INT STATE_IS_PLAYER_AT_LOCATION_ANY_MEANS 0 CONST_INT STATE_IS_PLAYER_AT_LOCATION_ON_FOOT 1 CONST_INT STATE_IS_PLAYER_AT_LOCATION_IN_ANY_VEHICLE 2 CONST_INT STATE_IS_PLAYER_AT_LOCATION_IN_VEHICLE 3 CONST_INT STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDIES_ANY_MEANS 4 CONST_INT STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDY_ANY_MEANS 5 CONST_INT STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDIES_ON_FOOT 6 CONST_INT STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDY_ON_FOOT 7 CONST_INT STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDIES_IN_ANY_VEHICLE 8 CONST_INT STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDY_IN_ANY_VEHICLE 9 CONST_INT STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDIES_IN_VEHICLE 10 CONST_INT STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDY_IN_VEHICLE 11 BOOL bShowCorona = TRUE BOOL bLoseWantedLevel = TRUE BOOL bShowBuddyRoute = TRUE INT iState INT iGotoState INT iNumberOfBuddies = 3 INT iMinSeats = 0 VECTOR EndLocation = << -1285.1292, -949.9236, 10.0464 >> VECTOR LocateSize = <<5.0, 5.0, 5.0>> VEHICLE_INDEX VehicleID PED_INDEX BuddyID[3] LOCATES_HEADER_DATA locatesData PROC RESET_LOCATES() INT i CLEAR_PRINTS() CLEAR_MISSION_LOCATION_TEXT_AND_BLIPS(locatesData) IF IS_PLAYER_PLAYING(PLAYER_ID()) CLEAR_PED_TASKS_IMMEDIATELY(PLAYER_PED_ID()) SET_ENTITY_COORDS(PLAYER_PED_ID(), << -1233.4377, -1139.0764, 6.7659 >>) SET_ENTITY_HEADING(PLAYER_PED_ID(), 320.0) ENDIF IF DOES_ENTITY_EXIST(VehicleID) DELETE_VEHICLE(VehicleID) ENDIF REQUEST_MODEL(EMPEROR) WHILE NOT HAS_MODEL_LOADED(EMPEROR) WAIT(0) ENDWHILE VehicleID = CREATE_VEHICLE(EMPEROR, << -1230.3617, -1137.0831, 6.6794 >>, 20.0) REPEAT 3 i IF DOES_ENTITY_EXIST(BuddyID[i]) DELETE_PED(BuddyID[i]) ENDIF BuddyID[i] = NULL ENDREPEAT REQUEST_MODEL(G_M_Y_StrPunk_01) WHILE NOT HAS_MODEL_LOADED(G_M_Y_StrPunk_01) WAIT(0) ENDWHILE IF (iNumberOfBuddies >=1) BuddyID[0] = CREATE_PED(PEDTYPE_CIVMALE, G_M_Y_StrPunk_01, << -1244.8727, -1098.7516, 7.1824 >>, 270.0) ENDIF IF (iNumberOfBuddies >=2) BuddyID[1] = CREATE_PED(PEDTYPE_CIVMALE, G_M_Y_StrPunk_01, << -1262.7656, -1057.6354, 7.3697 >>, 270.0) ENDIF IF (iNumberOfBuddies >=3) BuddyID[2] = CREATE_PED(PEDTYPE_CIVMALE, G_M_Y_StrPunk_01, << -1276.5845, -1010.7098, 8.4720 >>, 270.0) ENDIF ENDPROC PROC GOTO_STATE(INT inState) iState = inState RESET_LOCATES() ENDPROC PROC MISSION_CLEANUP() CLEAR_MISSION_LOCATION_TEXT_AND_BLIPS(locatesData) CLEANUP_BITSET_WIDGET() TERMINATE_THIS_THREAD() ENDPROC SCRIPT IF HAS_FORCE_CLEANUP_OCCURRED() MISSION_CLEANUP() ENDIF SET_MISSION_FLAG(TRUE) REQUEST_ADDITIONAL_TEXT("LOCTEST", MISSION_TEXT_SLOT) WHILE NOT HAS_ADDITIONAL_TEXT_LOADED(MISSION_TEXT_SLOT) WAIT(0) ENDWHILE START_WIDGET_GROUP("Locates Tester") ADD_WIDGET_INT_SLIDER("iGotoState", iGotoState, -1, 99, 1) ADD_WIDGET_INT_SLIDER("iNumberOfBuddies", iNumberOfBuddies, 0, 3, 1) ADD_WIDGET_BOOL("bShowCorona", bShowCorona) ADD_WIDGET_BOOL("bLoseWantedLevel", bLoseWantedLevel) ADD_WIDGET_INT_SLIDER("iMinSeats", iMinSeats, 0, 3, 1) ADD_WIDGET_BOOL("bShowBuddyRoute", bShowBuddyRoute) STOP_WIDGET_GROUP() CREATE_BITSET_WIDGET(locatesData.iLocatesBitSet) WHILE (TRUE) WAIT(0) IF NOT (iGotoState = -1) GOTO_STATE(iGotoState) iGotoState = -1 ENDIF UPDATE_BITSET_WIDGET(locatesData.iLocatesBitSet) SWITCH iState CASE STATE_IS_PLAYER_AT_LOCATION_ANY_MEANS IF IS_PLAYER_AT_LOCATION_ANY_MEANS(locatesData, EndLocation, LocateSize, bShowCorona, "GO_LOC_ANY", bLoseWantedLevel) GOTO_STATE(iState) ENDIF BREAK CASE STATE_IS_PLAYER_AT_LOCATION_ON_FOOT IF IS_PLAYER_AT_LOCATION_ON_FOOT(locatesData, EndLocation, LocateSize, bShowCorona, "GO_LOC_FOOT", bLoseWantedLevel) GOTO_STATE(iState) ENDIF BREAK CASE STATE_IS_PLAYER_AT_LOCATION_IN_ANY_VEHICLE IF IS_PLAYER_AT_LOCATION_IN_ANY_VEHICLE(locatesData, EndLocation, LocateSize, bShowCorona, "DRIVE_LOC", "GET_IN_ANY_CAR", bLoseWantedLevel, iMinSeats) GOTO_STATE(iState) ENDIF BREAK CASE STATE_IS_PLAYER_AT_LOCATION_IN_VEHICLE IF IS_PLAYER_AT_LOCATION_IN_VEHICLE(locatesData, EndLocation, LocateSize, bShowCorona, VehicleID, "DRIVE_LOC", "GET_IN_THIS_CAR", "BACKIN_THIS_CAR", bLoseWantedLevel, iMinSeats) GOTO_STATE(iState) ENDIF BREAK CASE STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDIES_ANY_MEANS IF IS_PLAYER_AT_LOCATION_WITH_BUDDIES_ANY_MEANS(locatesData, EndLocation, LocateSize, bShowCorona, BuddyID[0], BuddyID[1], BuddyID[2], "GO_LOC", "DONT_LEAVE_BUD1", "DONT_LEAVE_BUD2", "DONT_LEAVE_BUD3", "PICKUP_ALL_BUDS", bShowBuddyRoute, bLoseWantedLevel) GOTO_STATE(iState) ENDIF BREAK CASE STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDY_ANY_MEANS IF IS_PLAYER_AT_LOCATION_WITH_BUDDY_ANY_MEANS(locatesData, EndLocation, LocateSize, bShowCorona, BuddyID[0], "GO_LOC", "DONT_LEAVE_BUD1", bShowBuddyRoute, bLoseWantedLevel) GOTO_STATE(iState) ENDIF BREAK CASE STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDIES_ON_FOOT IF IS_PLAYER_AT_LOCATION_WITH_BUDDIES_ON_FOOT(locatesData, EndLocation, LocateSize, bShowCorona, BuddyID[0], BuddyID[1], BuddyID[2], "GO_LOC", "DONT_LEAVE_BUD1", "DONT_LEAVE_BUD2", "DONT_LEAVE_BUD3", "PICKUP_ALL_BUDS", bShowBuddyRoute, bLoseWantedLevel) GOTO_STATE(iState) ENDIF BREAK CASE STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDY_ON_FOOT IF IS_PLAYER_AT_LOCATION_WITH_BUDDY_ON_FOOT(locatesData, EndLocation, LocateSize, bShowCorona, BuddyID[0], "GO_LOC", "DONT_LEAVE_BUD1", bShowBuddyRoute, bLoseWantedLevel) GOTO_STATE(iState) ENDIF BREAK CASE STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDIES_IN_ANY_VEHICLE IF IS_PLAYER_AT_LOCATION_WITH_BUDDIES_IN_ANY_VEHICLE(locatesData, EndLocation, LocateSize, bShowCorona, BuddyID[0], BuddyID[1], BuddyID[2], "GO_LOC", "DONT_LEAVE_BUD1", "DONT_LEAVE_BUD2", "DONT_LEAVE_BUD3", "PICKUP_ALL_BUDS", "GET_IN_ANY_CAR", "BACKIN_ANY_CAR", bShowBuddyRoute, bLoseWantedLevel, iMinSeats) GOTO_STATE(iState) ENDIF BREAK CASE STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDY_IN_ANY_VEHICLE IF IS_PLAYER_AT_LOCATION_WITH_BUDDY_IN_ANY_VEHICLE(locatesData, EndLocation, LocateSize, bShowCorona, BuddyID[0], "GO_LOC", "DONT_LEAVE_BUD1", "GET_IN_ANY_CAR", "BACKIN_ANY_CAR", bShowBuddyRoute, bLoseWantedLevel, iMinSeats) GOTO_STATE(iState) ENDIF BREAK CASE STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDIES_IN_VEHICLE IF IS_PLAYER_AT_LOCATION_WITH_BUDDIES_IN_VEHICLE(locatesData, EndLocation, LocateSize, bShowCorona, BuddyID[0], BuddyID[1], BuddyID[2], VehicleID, "GO_LOC", "DONT_LEAVE_BUD1", "DONT_LEAVE_BUD2", "DONT_LEAVE_BUD3", "PICKUP_ALL_BUDS", "GET_IN_THIS_CAR", "BACKIN_THIS_CAR", bShowBuddyRoute, bLoseWantedLevel) GOTO_STATE(iState) ENDIF BREAK CASE STATE_IS_PLAYER_AT_LOCATION_WITH_BUDDY_IN_VEHICLE IF IS_PLAYER_AT_LOCATION_WITH_BUDDY_IN_VEHICLE(locatesData, EndLocation, LocateSize, bShowCorona, BuddyID[0], VeHicleID, "GO_LOC", "DONT_LEAVE_BUD1", "GET_IN_THIS_CAR", "BACKIN_THIS_CAR", bShowBuddyRoute, bLoseWantedLevel) GOTO_STATE(iState) ENDIF BREAK ENDSWITCH ENDWHILE ENDSCRIPT #endif