mirror of
https://github.com/Mauler125/r5sdk.git
synced 2025-02-09 19:15:03 +01:00
56 lines
1.5 KiB
C
56 lines
1.5 KiB
C
|
//===== Copyright <20> 1996-2005, Valve Corporation, All rights reserved. ======//
|
|||
|
//
|
|||
|
// Purpose:
|
|||
|
//
|
|||
|
// $Workfile: $
|
|||
|
// $Date: $
|
|||
|
// $NoKeywords: $
|
|||
|
//===========================================================================//
|
|||
|
#if !defined( CLIENTENTITYLIST_H )
|
|||
|
#define CLIENTENTITYLIST_H
|
|||
|
#ifdef _WIN32
|
|||
|
#pragma once
|
|||
|
#endif
|
|||
|
#include "public/icliententitylist.h"
|
|||
|
#include "tier1/utlvector.h"
|
|||
|
#include "c_baseplayer.h"
|
|||
|
|
|||
|
// Implement this class and register with entlist to receive entity create/delete notification
|
|||
|
class IClientEntityListener
|
|||
|
{
|
|||
|
public:
|
|||
|
virtual void OnEntityCreated(C_BaseEntity* pEntity) {};
|
|||
|
virtual void OnEntityDeleted(C_BaseEntity* pEntity) {};
|
|||
|
};
|
|||
|
|
|||
|
class CClientEntityList : public IClientEntityList
|
|||
|
{
|
|||
|
class CPVSNotifyInfo // !TODO: confirm this!!
|
|||
|
{
|
|||
|
public:
|
|||
|
//IPVSNotify* m_pNotify;
|
|||
|
IClientRenderable* m_pRenderable;
|
|||
|
unsigned char m_InPVSStatus; // Combination of the INPVS_ flags.
|
|||
|
unsigned short m_PVSNotifiersLink; // Into m_PVSNotifyInfos.
|
|||
|
};
|
|||
|
|
|||
|
CUtlVector<IClientEntityListener*> m_entityListeners;
|
|||
|
|
|||
|
int m_iNumServerEnts; // Current count
|
|||
|
int m_iMaxServerEnts; // Max allowed
|
|||
|
int m_iNumClientNonNetworkable; // Non networkable count
|
|||
|
int m_iMaxUsedServerIndex; // Current last used slot
|
|||
|
|
|||
|
// !TODO:
|
|||
|
/*
|
|||
|
// This holds fast lookups for special edicts.
|
|||
|
EntityCacheInfo_t m_EntityCacheInfo[NUM_ENT_ENTRIES];
|
|||
|
|
|||
|
// For fast iteration.
|
|||
|
CUtlLinkedList<C_BaseEntity*, unsigned short> m_BaseEntities;*/
|
|||
|
};
|
|||
|
|
|||
|
inline CClientEntityList* g_pClientEntityList = nullptr;
|
|||
|
|
|||
|
#endif // CLIENTENTITYLIST_H
|