77 lines
1.9 KiB
C++
77 lines
1.9 KiB
C++
//========= Copyright Valve Corporation, All rights reserved. ============//
|
|
//
|
|
// Purpose:
|
|
//
|
|
// $NoKeywords: $
|
|
//=============================================================================//
|
|
#if !defined(C_WORLD_H)
|
|
#define C_WORLD_H
|
|
#ifdef _WIN32
|
|
#pragma once
|
|
#endif
|
|
|
|
#include "c_baseentity.h"
|
|
|
|
#if defined(CLIENT_DLL)
|
|
#define CWorld C_World
|
|
#endif
|
|
|
|
class C_World : public C_BaseEntity {
|
|
public:
|
|
DECLARE_CLASS(C_World, C_BaseEntity);
|
|
DECLARE_CLIENTCLASS();
|
|
|
|
C_World(void);
|
|
~C_World(void);
|
|
|
|
// Override the factory create/delete functions since the world is a
|
|
// singleton.
|
|
virtual bool Init(int entnum, int iSerialNum);
|
|
virtual void Release();
|
|
|
|
virtual void Precache();
|
|
virtual void Spawn();
|
|
|
|
// Don't worry about adding the world to the collision list; it's already
|
|
// there
|
|
virtual CollideType_t GetCollideType(void) {
|
|
return ENTITY_SHOULD_NOT_COLLIDE;
|
|
}
|
|
|
|
virtual void OnDataChanged(DataUpdateType_t updateType);
|
|
virtual void PreDataUpdate(DataUpdateType_t updateType);
|
|
|
|
float GetWaveHeight() const;
|
|
const char *GetDetailSpriteMaterial() const;
|
|
|
|
public:
|
|
enum {
|
|
MAX_DETAIL_SPRITE_MATERIAL_NAME_LENGTH = 256,
|
|
};
|
|
|
|
float m_flWaveHeight;
|
|
Vector m_WorldMins;
|
|
Vector m_WorldMaxs;
|
|
bool m_bStartDark;
|
|
float m_flMaxOccludeeArea;
|
|
float m_flMinOccluderArea;
|
|
float m_flMinPropScreenSpaceWidth;
|
|
float m_flMaxPropScreenSpaceWidth;
|
|
bool m_bColdWorld;
|
|
|
|
private:
|
|
void RegisterSharedActivities(void);
|
|
char m_iszDetailSpriteMaterial[MAX_DETAIL_SPRITE_MATERIAL_NAME_LENGTH];
|
|
};
|
|
|
|
inline float C_World::GetWaveHeight() const { return m_flWaveHeight; }
|
|
|
|
inline const char *C_World::GetDetailSpriteMaterial() const {
|
|
return m_iszDetailSpriteMaterial;
|
|
}
|
|
|
|
void ClientWorldFactoryInit();
|
|
void ClientWorldFactoryShutdown();
|
|
C_World *GetClientWorldEntity();
|
|
|
|
#endif // C_WORLD_H
|