forked from metin2/client
Solution refactoring and restructuring, removed Boost dependency, removed unused tools
This commit is contained in:
69
src/EffectLib/EffectData.h
Normal file
69
src/EffectLib/EffectData.h
Normal file
@ -0,0 +1,69 @@
|
||||
#pragma once
|
||||
|
||||
#include "../milesLib/Type.h"
|
||||
|
||||
#include "ParticleSystemData.h"
|
||||
#include "EffectMesh.h"
|
||||
#include "SimpleLightData.h"
|
||||
|
||||
class CEffectData
|
||||
{
|
||||
public:
|
||||
typedef std::vector<CParticleSystemData*> TParticleVector;
|
||||
typedef std::vector<CEffectMeshScript*> TMeshVector;
|
||||
typedef std::vector<CLightData*> TLightVector;
|
||||
|
||||
public:
|
||||
CEffectData();
|
||||
virtual ~CEffectData();
|
||||
|
||||
void Clear();
|
||||
bool LoadScript(const char * c_szFileName);
|
||||
bool LoadSoundScriptData(const char * c_szFileName);
|
||||
|
||||
DWORD GetParticleCount();
|
||||
CParticleSystemData * GetParticlePointer(DWORD dwPosition);
|
||||
|
||||
DWORD GetMeshCount();
|
||||
CEffectMeshScript * GetMeshPointer(DWORD dwPosition);
|
||||
|
||||
DWORD GetLightCount();
|
||||
CLightData * GetLightPointer(DWORD dwPosition);
|
||||
|
||||
NSound::TSoundInstanceVector * GetSoundInstanceVector();
|
||||
|
||||
float GetBoundingSphereRadius();
|
||||
D3DXVECTOR3 GetBoundingSpherePosition();
|
||||
|
||||
const char * GetFileName() const;
|
||||
|
||||
protected:
|
||||
void __ClearParticleDataVector();
|
||||
void __ClearLightDataVector();
|
||||
void __ClearMeshDataVector();
|
||||
|
||||
// FIXME : <20><> <20>κ<EFBFBD><CEBA><EFBFBD> <20>״<EFBFBD><D7B4><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20>ʴ´<CAB4>. <20><><EFBFBD><EFBFBD> <20><><EFBFBD>̵<EFBFBD><CCB5> ã<>Ƴ<EFBFBD><C6B3><EFBFBD> <20><>ġ<EFBFBD><C4A1>.
|
||||
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> (Ưȭ<C6AF><C8AD>) <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̽<EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <20>ٲ<EFBFBD><D9B2><EFBFBD><EFBFBD><EFBFBD> <20>Ѵٴ<D1B4> <20><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD> <20><><EFBFBD>ϴ<EFBFBD>. - [levites]
|
||||
virtual CParticleSystemData * AllocParticle();
|
||||
virtual CEffectMeshScript * AllocMesh();
|
||||
virtual CLightData * AllocLight();
|
||||
|
||||
protected:
|
||||
TParticleVector m_ParticleVector;
|
||||
TMeshVector m_MeshVector;
|
||||
TLightVector m_LightVector;
|
||||
NSound::TSoundInstanceVector m_SoundInstanceVector;
|
||||
|
||||
float m_fBoundingSphereRadius;
|
||||
D3DXVECTOR3 m_v3BoundingSpherePosition;
|
||||
|
||||
std::string m_strFileName;
|
||||
|
||||
public:
|
||||
static void DestroySystem();
|
||||
|
||||
static CEffectData* New();
|
||||
static void Delete(CEffectData* pkData);
|
||||
|
||||
static CDynamicPool<CEffectData> ms_kPool;
|
||||
};
|
Reference in New Issue
Block a user