mirror of
https://github.com/celisej567/source-engine.git
synced 2026-01-05 22:09:59 +03:00
1
This commit is contained in:
57
common/ServerBrowser/IServerBrowser.h
Normal file
57
common/ServerBrowser/IServerBrowser.h
Normal file
@@ -0,0 +1,57 @@
|
||||
//========= Copyright Valve Corporation, All rights reserved. ============//
|
||||
//
|
||||
// Purpose:
|
||||
//
|
||||
// $NoKeywords: $
|
||||
//=============================================================================//
|
||||
|
||||
#ifndef ISERVERBROWSER_H
|
||||
#define ISERVERBROWSER_H
|
||||
#ifdef _WIN32
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
#include "interface.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Purpose: Interface to server browser module
|
||||
//-----------------------------------------------------------------------------
|
||||
abstract_class IServerBrowser
|
||||
{
|
||||
public:
|
||||
// activates the server browser window, brings it to the foreground
|
||||
virtual bool Activate() = 0;
|
||||
|
||||
// joins a game directly
|
||||
virtual bool JoinGame( uint32 unGameIP, uint16 usGamePort, const char *pszConnectCode ) = 0;
|
||||
|
||||
// joins a specified game - game info dialog will only be opened if the server is fully or passworded
|
||||
virtual bool JoinGame( uint64 ulSteamIDFriend, const char *pszConnectCode ) = 0;
|
||||
|
||||
// opens a game info dialog to watch the specified server; associated with the friend 'userName'
|
||||
virtual bool OpenGameInfoDialog( uint64 ulSteamIDFriend, const char *pszConnectCode ) = 0;
|
||||
|
||||
// forces the game info dialog closed
|
||||
virtual void CloseGameInfoDialog( uint64 ulSteamIDFriend ) = 0;
|
||||
|
||||
// closes all the game info dialogs
|
||||
virtual void CloseAllGameInfoDialogs() = 0;
|
||||
|
||||
/// Given a map name, strips off some stuff and returns the "friendly" name of the map.
|
||||
/// Returns the cleaned out map name into the caller's buffer, and returns the friendly
|
||||
/// game type name.
|
||||
virtual const char *GetMapFriendlyNameAndGameType( const char *pszMapName, char *szFriendlyMapName, int cchFriendlyName ) = 0;
|
||||
|
||||
// Enable filtering of workshop maps, requires the game/tool loading us to feed subscription data. This is a
|
||||
// slightly ugly workaround to TF2 not yet having native workshop UI in quickplay, once that is in place this should
|
||||
// either be stripped back out or expanded to be directly aware of the steam workshop without being managed.
|
||||
virtual void SetWorkshopEnabled( bool bManaged ) = 0;
|
||||
virtual void AddWorkshopSubscribedMap( const char *pszMapName ) = 0;
|
||||
virtual void RemoveWorkshopSubscribedMap( const char *pszMapName ) = 0;
|
||||
};
|
||||
|
||||
#define SERVERBROWSER_INTERFACE_VERSION "ServerBrowser005"
|
||||
|
||||
|
||||
|
||||
#endif // ISERVERBROWSER_H
|
||||
Reference in New Issue
Block a user