diff --git a/public/matchmaking/igametypes.h b/public/matchmaking/igametypes.h index a2c5bc92..ce7f4fed 100644 --- a/public/matchmaking/igametypes.h +++ b/public/matchmaking/igametypes.h @@ -56,11 +56,23 @@ public: virtual bool IsInitialized() const = 0; virtual bool SetGameTypeAndMode( const char *gameType, const char *gameMode ) = 0; + + // Gets the game type and mode mapped to an alias. + // Currently available aliases at time of doc: competitive, comp, casual, armsrace, arms, gungame, gg, + // demolition, demo, deathmatch, dm, training, custom, default, auto. + virtual bool GetGameTypeAndModeFromAlias( const char *alias, int &gameType, int &gameMode ) = 0; + + virtual bool SetGameTypeAndMode( int gameType, int gameMode ) = 0; + virtual void SetAndParseExtendedServerInfo( KeyValues *pExtendedServerInfo ) = 0; + virtual bool CheckShouldSetDefaultGameModeAndType( const char *mapName ) = 0; + virtual int GetCurrentGameType() const = 0; virtual int GetCurrentGameMode() const = 0; + virtual const char *GetCurrentMapName() = 0; + virtual const char *GetCurrentGameTypeNameID() = 0; virtual const char *GetCurrentGameModeNameID() = 0; @@ -79,6 +91,10 @@ public: virtual bool GetGameModeAndTypeIntsFromStrings( const char *szGameType, const char *szGameMode, int &iOutGameType, int &iOutGameMode ) = 0; virtual bool GetGameModeAndTypeNameIdsFromStrings( const char *szGameType, const char *szGameMode, const char * &szOutGameTypeNameId, const char * &szOutGameModeNameId ) = 0; + // mapGroup here is also the Workshop Collection ID (as a string) + virtual void CreateOrUpdateWorkshopMapGroup( const char *mapGroup, const CUtlStringList &mapList) = 0; + virtual bool IsWorkshopMapGroup( const char *mapGroup ) = 0; + virtual const char *GetRandomMapGroup( const char *gameType, const char *gameMode ) = 0; virtual const char *GetFirstMap( const char *mapGroup ) = 0; @@ -99,11 +115,20 @@ public: virtual const CUtlStringList *GetCTModelsForMap( const char *mapName ) = 0; virtual const CUtlStringList *GetHostageModelsForMap( const char *mapName ) = 0; + virtual int GetDefaultGameTypeForMap( const char *mapName ) = 0; + virtual int GetDefaultGameModeForMap( const char *mapName ) = 0; + virtual const char *GetTViewModelArmsForMap( const char *mapName ) = 0; virtual const char *GetCTViewModelArmsForMap( const char *mapName ) = 0; virtual const CUtlStringList *GetMapGroupMapList( const char *mapGroup ) = 0; + virtual bool GetRunMapWithDefaultGametype() = 0; + virtual void SetRunMapWithDefaultGameType( bool bUseDefault ) = 0; + + virtual bool GetLoadingScreenDataIsCorrect() = 0; + virtual void SetLoadingScreenDataIsCorrect( bool bIsCorrect ) = 0; + virtual bool SetCustomBotDifficulty( int botDiff ) = 0; virtual int GetCustomBotDifficulty() = 0; @@ -116,6 +141,7 @@ public: virtual float GetCurrentELOExpDenom() = 0; virtual float GetCurrentELOExpScalar() = 0; virtual bool GetCurrentELOBracketDisplay() = 0; + virtual int GetCurrentServerNumSlots() = 0; };