//================= Copyright kotofyt, All rights reserved ==================// // // Purpose: // //===========================================================================// #ifndef ENTITIES_H #define ENTITIES_H class IEntityFactory; class C_BaseEntity; #define MAX_EDICTS 8192 class CEntitySystem { public: CEntitySystem(); virtual void RegisterEntityClass( IEntityFactory *pEntityFactory, const char *szClassName ); virtual C_BaseEntity *CreateByClassname( const char *szName ); virtual IEntityFactory *GetFactoryByClassname( const char *szName ); virtual void Think(); private: C_BaseEntity *m_pEntities[MAX_EDICTS]; int m_nEntityCount; }; CEntitySystem *EntitySystem(); #endif