358 lines
9.5 KiB
XML
Executable File
358 lines
9.5 KiB
XML
Executable File
USING "script_MATHS.sch" //need my bits defined but get cycle header include cause of taxi_globals.sch
|
|
|
|
CONST_FLOAT TAXIOJ_DIALOGUE_Q_DELAY_BEFORE_RESUME_LINE 1.5
|
|
CONST_INT CONST_TAXIOJ_SIZE_Q 5
|
|
CONST_INT CONST_TAXI_OJ_NUM_RESUME_INTERRUPT_LINES 5
|
|
CONST_INT CONST_TAXI_OJ_LINE_NUM_TO_CLOSE_DIALOGUE_Q 15 //Use this when you don't want the dialogue queue playing anymore lines period in conjunction with
|
|
//Example: CLEAR_DIALOGUE_QUEUE(tDialogueLine)
|
|
// CLOSE_DIALOGUE_QUEUE(tTaxiOJ_DQ_Data,CONST_TAXI_OJ_LINE_NUM_TO_CLOSE_DIALOGUE_Q)
|
|
|
|
// Different States for Dialogue Q
|
|
ENUM TAXIOJ_DIALOGUE_Q_STATES
|
|
TDQ_STOPPED = -1,
|
|
TDQ_CLOSED,
|
|
TDQ_PLAY_LINE,
|
|
TDQ_CONFIRM_LINE_IS_PLAYING,
|
|
TDQ_WAIT_FOR_INTERRUPTION,
|
|
TDQ_ADD_DELAY_BEFORE_RESUME,
|
|
TDQ_RESUME_FROM_INTERUPTION,
|
|
TDQ_RESUME_CONVERSATION,
|
|
TDQ_SPECIAL_CASE_FOR_LAST_LINE_IN_CONVERSATION_INTERRUPTION,
|
|
TDQ_TOTAL_NUM_STATES
|
|
|
|
ENDENUM
|
|
|
|
ENUM TAXI_DQ_LINE_BIT_FLAGS
|
|
TAXI_DQL_TIME_SENSITIVE = BIT0, //whether this is time sensitive otherwise it's just MISSION CRITICAL
|
|
TAXI_DQL_VALID = BIT1, //if this is a valid spot in the queue
|
|
TAXI_DQL_CURRENTLY_PLAYING = BIT2, //is this line currently playing
|
|
TAXI_DQL_DONE_PLAYING = BIT3, //is this line done playing
|
|
|
|
TAXI_DQL_TOTAL = BIT30
|
|
|
|
ENDENUM
|
|
|
|
STRUCT TAXI_OJ_DQ_CONVERSATION_LINE
|
|
TEXT_LABEL_23 sLineToSay
|
|
INT tTimeStamp
|
|
INT iDQFlagBits //See TAXI_DQ_LINE_BIT_FLAGS above
|
|
ENDSTRUCT
|
|
|
|
STRUCT TAXI_OJ_DIALOGUE_Q_DATA
|
|
TAXIOJ_DIALOGUE_Q_STATES tDialogueQStates = TDQ_STOPPED
|
|
|
|
TEXT_LABEL_23 sResumeLabel //the line to resume from
|
|
TEXT_LABEL_23 sTexLabelCurrentlyPlaying //the line Root to check if it's playing using
|
|
TEXT_LABEL_23 sCurrentConvoPlaying //keeps track of the conversation playing so we can see how many lines are remaining before it is completey finished
|
|
TEXT_LABEL_23 sLabelNowPlaying //this stores the label currently playing NOTE * Label is the line, where Root is the entire conversation
|
|
INT iResumeDXBitMask // needed by GET_TAXI_OJ_LINE_TO_SAY to loop through all the different resume one-offs
|
|
INT iDialogueQBITS //this Bitmask can be used as a way to verify that a line has played in global space(currently NOT USED)
|
|
INT iCurrentDQLine = 0 //the iterator into the dialogueQ array
|
|
INT iSpecialMissionBits
|
|
BOOL bPlayerWasInterupted //use this flag to track whether or not the player was the last one talking before an interuption kicked in
|
|
ENDSTRUCT
|
|
ENUM TAXI_SPECIAL_DQ_BITS
|
|
TAXI_SQB_TTB_BUMP_DROPPED = BIT0,
|
|
|
|
TAXI_SQB_NUM = BIT30
|
|
ENDENUM
|
|
ENUM TAXI_GATE_BITS
|
|
TAXI_GATE_CLEAR_PICKUP = BIT0,
|
|
TAXI_GATE_CLEAR_DROPOFF = BIT1,
|
|
TAXI_GATE_RETURN_TO_TAXI = BIT2,
|
|
TAXI_GATE_REGIVE_OBJ = BIT3,
|
|
|
|
TAXI_GATE_CYI_WAIT_PASS = BIT28,
|
|
TAXI_GATE_CYI_RETURN_RENDEVOUS = BIT29,
|
|
|
|
TAXI_GATES_NUM = BIT30
|
|
ENDENUM
|
|
|
|
ENUM TAXI_DIALOGUE_MISSION_SPECIFIC_FLAG_BITS
|
|
TAXI_DMSFB_BIT0 = BIT0,
|
|
TAXI_DMSFB_BIT1 = BIT1,
|
|
TAXI_DMSFB_BIT2 = BIT2,
|
|
TAXI_DMSFB_TOTAL = BIT30
|
|
ENDENUM
|
|
ENUM TAXI_DIALOGUE_FLAG_BITS
|
|
TAXI_DXF_SICK1 = BIT0,
|
|
TAXI_DXF_SICK2 = BIT1,
|
|
TAXI_DXF_TURNS1 = BIT2,
|
|
TAXI_DXF_TURNS2 = BIT3,
|
|
TAXI_DXF_CARHIT1 = BIT4,
|
|
TAXI_DXF_CARHIT2 = BIT5,
|
|
// TAXI_DXF_AIR1 = BIT6,
|
|
// TAXI_DXF_AIR2 = BIT7,
|
|
// TAXI_DXF_HITNR1 = BIT8,
|
|
// TAXI_DXF_HITNR2 = BIT9,
|
|
// TAXI_DXF_NEARMISS1 = BIT10,
|
|
// TAXI_DXF_NEARMISS2 = BIT11,
|
|
TAXI_DXF_SIDEWALK1 = BIT12,
|
|
TAXI_DXF_SIDEWALK2 = BIT13,
|
|
TAXI_DXF_LANE1 = BIT14,
|
|
TAXI_DXF_LANE2 = BIT15,
|
|
TAXI_DXF_LIGHT1 = BIT16,
|
|
TAXI_DXF_LIGHT2 = BIT17,
|
|
TAXI_DXF_RADIO_CHANGE = BIT18,
|
|
//TAXI_DXF_RADIO_LIKE = BIT19,
|
|
TAXI_DXF_RADIO_CHANGE2 = BIT20,
|
|
TAXI_DXF_THANKS = BIT21,
|
|
TAXI_DXF_MAKEPAY = BIT22,
|
|
TAXI_DXF_FORGOT = BIT23,
|
|
TAXI_DXF_RETURN = BIT24,
|
|
TAXI_DXF_RUNOFF = BIT25,
|
|
TAXI_DXF_BANTER = BIT26,
|
|
TAXI_DXF_BANTER2 = BIT27,
|
|
TAXI_DXF_KILLEDTHIEF = BIT28,
|
|
TAXI_DXF_REMINDCYIWAIT = BIT29,
|
|
TAXI_DXF_TOTAL_CLEAR = BIT30
|
|
ENDENUM
|
|
|
|
ENUM TAXI_REACT_DIALOGUE_FLAGS
|
|
TAXI_DXF_AIR1 = BIT0,
|
|
TAXI_DXF_AIR2 = BIT1,
|
|
TAXI_DXF_AIR3 = BIT2,
|
|
TAXI_DXF_HITNR1 = BIT3,
|
|
TAXI_DXF_HITNR2 = BIT4,
|
|
TAXI_DXF_HITNR3 = BIT5,
|
|
TAXI_DXF_HITNR4 = BIT6,
|
|
TAXI_DXF_NEARMISS1 = BIT7,
|
|
TAXI_DXF_NEARMISS2 = BIT8,
|
|
TAXI_DXF_NEARMISS3 = BIT9,
|
|
TAXI_DXF_SWRV1 = BIT10,
|
|
TAXI_DXF_SWRV2 = BIT11,
|
|
TAXI_DXF_SWRV3 = BIT12
|
|
ENDENUM
|
|
|
|
ENUM TAXI_DIALOGUE_FLAG_BITS_2
|
|
TAXI_DXF2_STOP_CLOSE1 = BIT0,
|
|
TAXI_DXF2_STOP_CLOSE2 = BIT1,
|
|
TAXI_DXF2_STOP_CLOSE3 = BIT2,
|
|
TAXI_DXF_BORED1 = BIT3,
|
|
TAXI_DXF_BORED2 = BIT4,
|
|
TAXI_DXF_BORED3 = BIT5,
|
|
TAXI_DRB_ROLLED1 = BIT6,
|
|
TAXI_DRB_ROLLED2 = BIT7,
|
|
// TAXI_DXF_SWRV1 = BIT8,
|
|
// TAXI_DXF_SWRV2 = BIT9,
|
|
TAXI_DXF_RVRS1 = BIT10,
|
|
TAXI_DXF_RVRS2 = BIT11,
|
|
TAXI_DXF_BANTER3 = BIT12,
|
|
TAXI_DXF_DEST_BANT = BIT13,
|
|
TAXI_DXF_SEEN_DEST = BIT14,
|
|
TAXI_DXF_SEEN_DEST_2 = BIT15,
|
|
TAXI_DXF_CC_BANTER = BIT16,
|
|
TAXI_DXF_CC_BANTER2 = BIT17,
|
|
TAXI_DXF_CC_TTB_BANTER = BIT18,
|
|
TAXI_DXF_BANTER4 = BIT19,
|
|
TAXI_DXF_CARHIT3 = BIT20,
|
|
TAXI_DXF_NOPUKE1 = BIT21,
|
|
TAXI_DXF_NOPUKE2 = BIT22,
|
|
TAXI_DXF_CC_CLOSE1 = BIT23,
|
|
TAXI_DXF_CC_CLOSE2 = BIT24,
|
|
TAXI_DXF_CC_CLOSE3 = BIT25,
|
|
TAXI_DXF_RADIO_LIKE = BIT26,
|
|
TAXI_DXF_RADIO_LIKE2 = BIT27,
|
|
TAXI_DXF_CC_DROPOFF = BIT28,
|
|
// TAXI_DXF_NEARMISS2 = BIT11,
|
|
// TAXI_DXF_SIDEWALK1 = BIT12,
|
|
// TAXI_DXF_SIDEWALK2 = BIT13,
|
|
// TAXI_DXF_LANE1 = BIT14,
|
|
// TAXI_DXF_LANE2 = BIT15,
|
|
// TAXI_DXF_LIGHT1 = BIT16,
|
|
// TAXI_DXF_LIGHT2 = BIT17,
|
|
// TAXI_DXF_RADIO_CHANGE = BIT18,
|
|
// TAXI_DXF_RADIO_LIKE = BIT19,
|
|
// TAXI_DXF_RADIO_CHANGE2 = BIT20,
|
|
// TAXI_DXF_THANKS = BIT21,
|
|
// TAXI_DXF_MAKEPAY = BIT22,
|
|
// TAXI_DXF_FORGOT = BIT23
|
|
// TAXI_DXF_RETURN = BIT24
|
|
// TAXI_DXF_RUNOFF = BIT25
|
|
// TAXI_DXF_BANTER = BIT26
|
|
TAXI_DXF2_TOTAL_CLEAR = BIT30
|
|
ENDENUM
|
|
|
|
ENUM TAXI_DIALOGUE_INDEX
|
|
TAXI_DISPATCH_DIRECTIONS = 0,
|
|
TAXI_OBJ_PICKUP, //Obj - "Pick up ~yPassenger"
|
|
TAXI_OBJ_LEFT_CAR,
|
|
TAXI_OBJ_RETURN,
|
|
TAXI_DI_HAIL, //Dialogue- "Taxi!"
|
|
TAXI_OBJ_PU_PASSENGER,
|
|
TAXI_DI_RATE_PICKUP,
|
|
TAXI_DI_TTB_SHOP,
|
|
TAXI_DI_OBJ,
|
|
TAXI_DI_GREET,
|
|
TAXI_OBJ_GIVE_MAIN,
|
|
TAXI_OBJ_GYN,
|
|
TAXI_OBJ_GYB,
|
|
TAXI_DI_FOLLOW_CAR_BARKS,
|
|
TAXI_DI_VARIABLE_BANTER,
|
|
TAXI_DI_BANTER, //10
|
|
TAXI_DI_BANTER_2,
|
|
TAXI_DI_BANTER_3,
|
|
TAXI_DI_BANTER_4,
|
|
TAXI_DI_BANTER_5,
|
|
TAXI_DI_TTB_BANTER,
|
|
|
|
TAXI_DI_SICK_WHOA,
|
|
TAXI_DI_DIDNT_PUKE,
|
|
TAXI_DI_IKW_SEEPT,
|
|
|
|
TAXI_OBJ_IKW_DROPOFF,
|
|
|
|
TAXI_DI_GET_CLOSER,
|
|
TAXI_DI_TIME_FAST,
|
|
TAXI_DI_TIME_BAD,
|
|
|
|
TAXI_DI_1ST_STOP,
|
|
TAXI_OBJ_WAIT_PASS, //20
|
|
|
|
TAXI_DI_TO_AIRPORT_AMAZING,
|
|
TAXI_DI_TO_AIRPORT_AVG,
|
|
TAXI_DI_TO_AIRPORT_ASS,
|
|
|
|
TAXI_OBJ_GO_AIRPORT,
|
|
TAXI_DI_AIRPORT_BANTER,
|
|
TAXI_DI_SEEN_DESTINATION,
|
|
TAXI_DI_SEEN_DESTINATION_2,
|
|
TAXI_DI_DROP_OFF,
|
|
|
|
|
|
TAXI_DI_GROUP_DROPOFF,
|
|
TAXI_DI_GROUP_DROPOFF_ASS,
|
|
TAXI_DI_GROUP_DROPOFF2,
|
|
TAXI_DI_GROUP_DROPOFF2_GOOD,
|
|
TAXI_DI_GROUP_DROPOFF2_BAD,
|
|
TAXI_DI_GROUP_DROPOFF3,
|
|
|
|
TAXI_OBJ_CC_2, //30
|
|
TAXI_OBJ_CC_3,
|
|
|
|
TAXI_OBJ_DROP,
|
|
TAXI_DI_HORN_HONK,
|
|
TAXI_DI_COMPLETE_STOP,
|
|
TAXI_LOSE_JEWELRY_POL,
|
|
TAXI_DI_WENT_WANTED,
|
|
TAXI_DI_ESCAPE_POLICE, //36
|
|
TAXI_OBJ_POLICE,
|
|
TAXI_DI_POLICE_LOST,
|
|
TAXI_DI_POLICE_ARREST,
|
|
|
|
TAXI_DI_CYI_GET_BACK_TO_CAR,
|
|
TAXI_DI_CYI_DONT_FOLLOW_ME,
|
|
TAXI_OBJ_CYI_RETURN_WAIT,
|
|
|
|
TAXI_DI_ENEMY_KILL,
|
|
TAXI_DI_ENEMY_EVADED,
|
|
TAXI_DI_PICKUP_MONEY,
|
|
|
|
TAXI_DI_PUKE,
|
|
TAXI_DI_PUKE_REACT_GOOD,
|
|
TAXI_DI_PUKE_REACT_BAD,
|
|
TAXI_DI_PUKE_PLAYER_REACT,
|
|
|
|
TAXI_DI_AGGRO,
|
|
TAXI_DI_SHOOTING,
|
|
TAXI_DI_OFFROAD,
|
|
TAXI_DI_OFFROAD_CHALLENGE,
|
|
TAXI_DI_REVERSE,
|
|
TAXI_DI_SWERVE,
|
|
TAXI_DI_POWERSLIDING,
|
|
TAXI_DI_COLLISION,
|
|
TAXI_DI_COLLISION_BIG,
|
|
TAXI_DI_ROLLED,
|
|
TAXI_DI_NEARMISS,
|
|
TAXI_DI_AIRBORN,
|
|
TAXI_DI_QUICKSTOP,
|
|
TAXI_DI_SPEEDING,
|
|
TAXI_DI_SIDEWALKIN,
|
|
TAXI_DI_OPPLANE,
|
|
TAXI_DI_RANRED,
|
|
TAXI_DI_HITNRUN,
|
|
TAXI_DI_BORING,
|
|
TAXI_DI_RADIO_CHANGE,
|
|
TAXI_DI_RADIO_LIKE,
|
|
TAXI_DI_RADIO_CHANGE_NEUTRAL,
|
|
TAXI_DI_RADIO_HINT,
|
|
TAXI_DI_FLEE,
|
|
TAXI_DI_AMBUSHED,
|
|
TAXI_DI_AMBUSHED_TALK,
|
|
TAXI_DI_AMBUSH_EXTRA_BANTER,
|
|
|
|
TAXI_DI_EXCITED_TO_BORED,
|
|
TAXI_DI_BORED_TO_EXCITED,
|
|
|
|
//Clown car banters
|
|
TAXI_DI_BUILD_HOTBOX,
|
|
TAXI_DI_BUILD_HOTBOX_ONE_LINE,
|
|
TAXI_DI_INIT_HOTBOX,
|
|
TAXI_DI_CC_BANTER,
|
|
TAXI_DI_CC_BANTER2,
|
|
TAXI_DI_CC_CLOSE,
|
|
|
|
TAXI_OBJ_RETURN_TO_PED,
|
|
|
|
//Tip ratings
|
|
TAXI_DI_RATE_TIP_AMAZING,
|
|
TAXI_DI_RATE_TIP_AVERAGE,
|
|
TAXI_DI_RATE_TIP_ASS,
|
|
|
|
TAXI_DI_JOKE,
|
|
|
|
TAXI_DI_RUNOFF,
|
|
TAXI_DI_RUNOFF_SHOUTS,
|
|
TAXI_DI_KILLED_THIEF,
|
|
|
|
TAXI_OBJ_RUNOFF,
|
|
|
|
TAXI_DI_MAKE_PAY,
|
|
TAXI_DI_MAKE_PAY_END,
|
|
|
|
TAXI_OBJ_GET_RUNAWAY_MONEY,
|
|
|
|
TAXI_DI_FORGOT,
|
|
TAXI_DI_CUTSCENE,
|
|
TAXI_DI_POST_CUTSCENE,
|
|
TAXI_DI_ENEMY_EGG_ON,
|
|
TAXI_DI_ENEMY_EGG_ON_2,
|
|
TAXI_DI_ENEMY_FIRES,
|
|
TAXI_DI_PLAYER_RUNS,
|
|
TAXI_DI_PLAYER_WINS_FAIR_FIGHT,
|
|
TAXI_DI_PUT_GUN_AWAY,
|
|
|
|
TAXI_DI_GIRL_NOTICE,
|
|
TAXI_DI_START_FIGHT,
|
|
TAXI_DI_GIRL_EGGON_PLAYER_NO_HIT,
|
|
TAXI_DI_GIRL_EGGON_BF,
|
|
TAXI_DI_GIRL_EGGON_PLAYER_WINNING,
|
|
TAXI_DI_GIRL_LEAVE,
|
|
TAXI_DI_GIRL_BF_KILLED,
|
|
TAXI_DI_GIRL_KOD,
|
|
TAXI_DI_GIRL_HELP,
|
|
TAXI_DI_GIRL_DEST,
|
|
TAXI_DI_GIRL_BANTER,
|
|
TAXI_DI_GIRL_THANKS,
|
|
|
|
TAXI_DI_GET_CAR,
|
|
TAXI_OBJ_GET_CAR,
|
|
TAXI_DI_JACKED_CAR,
|
|
TAXI_DI_WRONG_WAY,
|
|
|
|
TAXI_OBJ_FORGOT,
|
|
|
|
TAXI_DI_FOLLOW,
|
|
TAXI_OBJ_FTC2,
|
|
|
|
TAXI_DI_SHOOT,
|
|
|
|
TAXI_DI_RETURN,
|
|
TAXI_DI_EXCEPTION_DISABLED,
|
|
TAXI_DI_EMPTY, //Send here for debug only
|
|
TAXI_DI_NUM_DIALOGUE
|
|
|
|
ENDENUM
|
|
|
|
//EOF
|