forked from Satanic-Spirit/Tickrate-Enabler
/
tickrate_enabler.h
66 lines (63 loc) · 3.14 KB
/
tickrate_enabler.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
/**
* vim: set ts=4 :
* =============================================================================
* Tickrate Enabler
* Copyright (C) 2012 Michael "ProdigySim" Busby
* =============================================================================
*
* This program is free software; you can redistribute it and/or modify it under
* the terms of the GNU General Public License, version 3.0, as published by the
* Free Software Foundation.
*
* This program is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
* FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
* details.
*
* You should have received a copy of the GNU General Public License along with
* this program. If not, see <http://www.gnu.org/licenses/>.
*
* As a special exception, the author(s) give you permission to link the
* code of this program (as well as its derivative works) to "Half-Life 2," the
* "Source Engine," the "SourcePawn JIT," and any Game MODs that run on software
* by the Valve Corporation. You must obey the GNU General Public License in
* all respects for all other code used. Additionally, the author(s) grant
* this exception to all derivative works. The author(s) define further
* exceptions, found in LICENSE.txt (as of this writing, version JULY-31-2007),
* or <http://www.sourcemod.net/license.php>.
*
* Version: $Id$
*/
#ifndef __TICKRATE_ENABLER_H__
#define __TICKRATE_ENABLER_H__
#include "eiface.h"
#include "codepatch/patchmanager.h"
class L4DTickRate: public IServerPluginCallbacks
{
public:
L4DTickRate();
virtual bool Load(CreateInterfaceFn interfaceFactory, CreateInterfaceFn gameServerFactory);
virtual void Unload(void);
virtual void Pause(void) {}
virtual void UnPause(void) {}
virtual const char *GetPluginDescription(void);
virtual void LevelInit(char const *pMapName) {}
virtual void ServerActivate(edict_t *pEdictList, int edictCount, int clientMax) {}
virtual void GameFrame(bool simulating) {}
virtual void LevelShutdown(void) {}
virtual void ClientActive(edict_t *pEntity) {}
virtual void ClientFullyConnect(edict_t *pEntity) {}
virtual void ClientDisconnect(edict_t *pEntity) {}
virtual void ClientPutInServer(edict_t *pEntity, char const *playername) {}
virtual void SetCommandClient(int index) {}
virtual void ClientSettingsChanged(edict_t *pEdict) {}
virtual PLUGIN_RESULT ClientConnect(bool *bAllowConnect, edict_t *pEntity, const char *pszName, const char *pszAddress, char *reject, int maxrejectlen) { return PLUGIN_CONTINUE; }
virtual PLUGIN_RESULT ClientCommand(edict_t *pEntity, const CCommand &args) { return PLUGIN_CONTINUE; }
virtual PLUGIN_RESULT NetworkIDValidated(const char *pszUserName, const char *pszNetworkID) { return PLUGIN_CONTINUE; }
virtual void OnQueryCvarValueFinished(QueryCvarCookie_t iCookie, edict_t *pPlayerEntity, EQueryCvarValueStatus eStatus, const char *pCvarName, const char *pCvarValue) {}
virtual void OnEdictAllocated(edict_t *edict) {}
virtual void OnEdictFreed(const edict_t *edict) {}
private:
PatchManager m_patchManager;
};
#endif // __TICKRATE_ENABLER_H__