00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __CEL_PF_DAMAGE__
00021 #define __CEL_PF_DAMAGE__
00022
00023 #include "cstypes.h"
00024 #include "csutil/scf.h"
00025
00059 struct iPcDamage : public virtual iBase
00060 {
00061 SCF_INTERFACE (iPcDamage, 0, 0, 1);
00062
00064 virtual void SetDamage (float amount) = 0;
00066 virtual float GetDamage () const = 0;
00067
00069 virtual void SetDamageType (const char* type) = 0;
00071 virtual const char* GetDamageType () const = 0;
00072
00077 virtual void SetFallOff (const char* f) = 0;
00079 virtual const char* GetFallOff () const = 0;
00080
00086 virtual void SetDamageLocation (const char* sectorname,
00087 const csVector3& pos) = 0;
00089 virtual const char* GetDamageSector () const = 0;
00091 virtual const csVector3& GetDamagePosition () const = 0;
00092
00097 virtual void SetDamageSource (const char* source) = 0;
00098
00100 virtual const char* GetDamageSource() const = 0;
00101
00103 virtual void AreaDamage (float radius) = 0;
00104
00106 virtual void BeamDamage (const csVector3& direction, float maxdist) = 0;
00107
00109 virtual void SingleDamage (const char* target) = 0;
00110 };
00111
00112 #endif // __CEL_PF_DAMAGE__
00113