mirror of
https://github.com/ENSL/NS.git
synced 2024-12-13 14:11:26 +00:00
c47a491d44
git-svn-id: https://unknownworlds.svn.cloudforge.com/ns1@46 67975925-1194-0748-b3d5-c16f83f1a3a1
75 lines
No EOL
2.3 KiB
C++
75 lines
No EOL
2.3 KiB
C++
//======== (C) Copyright 2002 Charles G. Cleveland All rights reserved. =========
|
|
//
|
|
// The copyright to the contents herein is the property of Charles G. Cleveland.
|
|
// The contents may be used and/or copied only with the written permission of
|
|
// Charles G. Cleveland, or in accordance with the terms and conditions stipulated in
|
|
// the agreement/contract under which the contents have been supplied.
|
|
//
|
|
// Purpose:
|
|
//
|
|
// $Workfile: AvHParticleSystemEntity.h $
|
|
// $Date: 2002/05/23 02:33:20 $
|
|
//
|
|
//-------------------------------------------------------------------------------
|
|
// $Log: AvHParticleSystemEntity.h,v $
|
|
// Revision 1.9 2002/05/23 02:33:20 Flayra
|
|
// - Post-crash checkin. Restored @Backup from around 4/16. Contains changes for last four weeks of development.
|
|
//
|
|
//===============================================================================
|
|
#ifndef AVH_PARTICLE_SYSTEM_ENTITY_H
|
|
#define AVH_PARTICLE_SYSTEM_ENTITY_H
|
|
|
|
#include "dlls/extdll.h"
|
|
#include "dlls/util.h"
|
|
#include "dlls/cbase.h"
|
|
#include "types.h"
|
|
#include "mod/AvHParticleTemplate.h"
|
|
#include "mod/AvHConstants.h"
|
|
|
|
class AvHParticleSystemEntity : public CBaseEntity
|
|
{
|
|
public:
|
|
AvHParticleSystemEntity();
|
|
|
|
uint16 GetCustomData() const;
|
|
void SetCustomData(uint16 inCustomData);
|
|
|
|
void SetTemplateIndex(int inTemplateIndex);
|
|
|
|
virtual void KeyValue( KeyValueData* pkvd );
|
|
virtual void Precache(void);
|
|
virtual void SetUseState(USE_TYPE inUseType);
|
|
virtual void Spawn( void );
|
|
|
|
protected:
|
|
AvHParticleTemplate* GetCustomTemplate();
|
|
|
|
private:
|
|
void EXPORT ParticleUse( CBaseEntity *pActivator, CBaseEntity *pCaller, USE_TYPE useType, float value );
|
|
void EXPORT ParticleThink();
|
|
void EXPORT ParticleTouch( CBaseEntity *pOther );
|
|
void UpdateClientData();
|
|
|
|
int32 mTemplateIndex;
|
|
bool mIsOn;
|
|
//bool mClientIsOn;
|
|
bool mUseState;
|
|
bool mCreatedTemplate;
|
|
uint32 mHandle;
|
|
float mTimeParticlesCreated;
|
|
uint16 mCustomData;
|
|
|
|
static uint32 sCurrentHandle;
|
|
|
|
};
|
|
|
|
|
|
// Custom particle systems. It is identical to a particle system entity except it creates
|
|
// a new particle template instead of reading one from a .ps.
|
|
class AvHCustomParticleSystemEntity : public AvHParticleSystemEntity
|
|
{
|
|
public:
|
|
virtual void KeyValue( KeyValueData* pkvd );
|
|
};
|
|
|
|
#endif |