129 lines
3.9 KiB
Scheme
Executable File
129 lines
3.9 KiB
Scheme
Executable File
|
|
CONST_INT TENNIS_MP_MISSION_ID 27
|
|
CONST_INT TENNIS_MP_MAX_PARTICIPANTS 2
|
|
|
|
ENUM TENNIS_GLOBAL_FLAGS_ENUM
|
|
TGF_READY_FOR_FM_INTRO = 1,
|
|
TGF_START_AMBIENT_TENNIS = 2,
|
|
TGF_AMANDA_IS_OPP = 4,
|
|
TGF_AMBIENT_SHUTDOWN = 8,
|
|
TGF_DEFAULT_CAM_DYNA = 16,
|
|
TGF_ONE_SET_FINISHED = 32,
|
|
TGF_STR_INFO_SHOWN = 64,
|
|
TGF_PRELOADED_PLAYER_OUTFIT = 128,
|
|
TGF_TREVOR_MEETS_MICHAEL = 256,
|
|
TGF_QUIT_FROM_TENNIS_MP = 512
|
|
ENDENUM
|
|
|
|
FUNC STRING GET_STRING_FROM_TENNIS_GLOBAL_FLAG(TENNIS_GLOBAL_FLAGS_ENUM eFlag)
|
|
SWITCH eFlag
|
|
CASE TGF_READY_FOR_FM_INTRO RETURN "TGF_READY_FOR_FM_INTRO"
|
|
CASE TGF_START_AMBIENT_TENNIS RETURN "TGF_START_AMBIENT_TENNIS"
|
|
CASE TGF_AMANDA_IS_OPP RETURN "TGF_AMANDA_IS_OPP"
|
|
CASE TGF_AMBIENT_SHUTDOWN RETURN "TGF_AMBIENT_SHUTDOWN"
|
|
CASE TGF_DEFAULT_CAM_DYNA RETURN "TGF_DEFAULT_CAM_DYNA"
|
|
CASE TGF_ONE_SET_FINISHED RETURN "TGF_ONE_SET_FINISHED"
|
|
CASE TGF_STR_INFO_SHOWN RETURN "TGF_STR_INFO_SHOWN"
|
|
CASE TGF_PRELOADED_PLAYER_OUTFIT RETURN "TGF_PRELOADED_PLAYER_OUTFIT"
|
|
CASE TGF_TREVOR_MEETS_MICHAEL RETURN "TGF_TREVOR_MEETS_MICHAEL"
|
|
CASE TGF_QUIT_FROM_TENNIS_MP RETURN "TGF_QUIT_FROM_TENNIS_MP"
|
|
ENDSWITCH
|
|
RETURN "Unknown TENNIS_GLOBAL_FLAGS_ENUM"
|
|
ENDFUNC
|
|
|
|
STRUCT TennisDataSaved
|
|
INT iTotalAces
|
|
INT iTotalAced
|
|
INT iTotalPoints
|
|
INT iHighestDeuce
|
|
INT iGamesWon
|
|
INT iGamesLost
|
|
INT iSetsWon
|
|
INT iSetsLost
|
|
INT iMatchesWon
|
|
INT iMatchesLost
|
|
INT iTotalOOB
|
|
INT iTotalFaults
|
|
INT iSwingsForStrength
|
|
INT iSavedFlags
|
|
ENDSTRUCT
|
|
|
|
ENUM TENNISCOURT_LOCATION
|
|
TC_VENICE_1 = 0, // Player's court.
|
|
TC_VENICE_2,
|
|
TC_VENICE_3,
|
|
TC_VENICE_4,
|
|
TC_VENICE_5,
|
|
TC_VENICE_6,
|
|
TC_VENICE_7,
|
|
TC_VENICE_8,
|
|
TC_POSH_THEFT_MISSION,
|
|
|
|
TC_MICHAELS // Mike's house.
|
|
ENDENUM
|
|
|
|
STRUCT TennisLaunchData
|
|
TENNISCOURT_LOCATION eCourtToLaunch
|
|
BOOL bFreemodeIntro = FALSE // Flag to determine if the game is launching regularly or in the freemode intro
|
|
FLOAT fMaxDistForIntro // The distance used to terminate if the game is in the freemode intro
|
|
INT iStartDelay // The delay of the first serve if the game is in the freemode intro
|
|
ENDSTRUCT
|
|
|
|
TENNIS_GLOBAL_FLAGS_ENUM TENNIS_GLOBAL_FLAGS
|
|
/// PURPOSE:
|
|
/// These flags ARE NOT saved in save game data
|
|
/// PARAMS:
|
|
/// eFlag -
|
|
PROC SET_TENNIS_GLOBAL_FLAG(TENNIS_GLOBAL_FLAGS_ENUM eFlag)
|
|
CDEBUG2LN(DEBUG_TENNIS, "SET_TENNIS_GLOBAL_FLAG :: setting ", GET_STRING_FROM_TENNIS_GLOBAL_FLAG(eFlag))
|
|
TENNIS_GLOBAL_FLAGS |= eFlag
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// These flags ARE NOT saved in save game data
|
|
/// PARAMS:
|
|
/// eFlag -
|
|
PROC CLEAR_TENNIS_GLOBAL_FLAG(TENNIS_GLOBAL_FLAGS_ENUM eFlag)
|
|
CDEBUG2LN(DEBUG_TENNIS, "CLEAR_TENNIS_GLOBAL_FLAG :: clearing ", GET_STRING_FROM_TENNIS_GLOBAL_FLAG(eFlag))
|
|
TENNIS_GLOBAL_FLAGS -= TENNIS_GLOBAL_FLAGS & eFlag
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// These flags ARE NOT saved in save game data
|
|
/// PARAMS:
|
|
/// eFlag -
|
|
/// RETURNS:
|
|
///
|
|
FUNC BOOL IS_TENNIS_GLOBAL_FLAG_SET(TENNIS_GLOBAL_FLAGS_ENUM eFlag)
|
|
RETURN (ENUM_TO_INT(TENNIS_GLOBAL_FLAGS) & ENUM_TO_INT(eFlag)) <> 0
|
|
ENDFUNC
|
|
/// PURPOSE:
|
|
/// These flags ARE saved in save game data
|
|
/// PARAMS:
|
|
/// eFlag -
|
|
PROC SET_TENNIS_SAVED_GLOBAL_FLAG(TennisDataSaved &sSaved, TENNIS_GLOBAL_FLAGS_ENUM eFlag)
|
|
sSaved.iSavedFlags = sSaved.iSavedFlags | ENUM_TO_INT(eFlag)
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// These flags ARE saved in save game data
|
|
/// PARAMS:
|
|
/// sSaved -
|
|
/// eFlag -
|
|
PROC CLEAR_TENNIS_SAVED_GLOBAL_FLAG(TennisDataSaved &sSaved, TENNIS_GLOBAL_FLAGS_ENUM eFlag)
|
|
sSaved.iSavedFlags -= sSaved.iSavedFlags & ENUM_TO_INT(eFlag)
|
|
ENDPROC
|
|
|
|
/// PURPOSE:
|
|
/// These flags ARE saved in save game data
|
|
/// PARAMS:
|
|
/// sSaved -
|
|
/// eFlag -
|
|
/// RETURNS:
|
|
///
|
|
FUNC BOOL IS_TENNIS_SAVED_GLOBAL_FLAG_SET(TennisDataSaved &sSaved, TENNIS_GLOBAL_FLAGS_ENUM eFlag)
|
|
RETURN (ENUM_TO_INT(sSaved.iSavedFlags) & ENUM_TO_INT(eFlag)) <> 0
|
|
ENDFUNC
|
|
|
|
|