00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef __CEL_PF_SPAWN__
00021 #define __CEL_PF_SPAWN__
00022
00023 #include "cstypes.h"
00024 #include "csutil/scf.h"
00025
00055 struct iPcSpawn : public virtual iBase
00056 {
00057 SCF_INTERFACE (iPcSpawn, 1, 1, 0);
00058
00063 virtual void SetEnabled (bool e) = 0;
00067 virtual bool IsEnabled () const = 0;
00068
00084 virtual void AddEntityType (float chance, const char* name, iCelBlLayer* bl,
00085 const char* behaviour, const char* msg_id,
00086 iCelParameterBlock* params, ...) = 0;
00087
00102 virtual void AddEntityTemplateType (float chance, const char* templ,
00103 const char* name, const char* msg_id,
00104 iCelParameterBlock* params) = 0;
00105
00109 virtual void ClearEntityList () = 0;
00110
00120 virtual void SetTiming (bool repeat, bool random,
00121 csTicks mindelay, csTicks maxdelay) = 0;
00122
00130 virtual void ResetTiming () = 0;
00131
00138 virtual void SetEntityNameCounter (bool en) = 0;
00139
00143 virtual bool IsEntityNameCounterCounter () const = 0;
00144
00151 virtual void EnableSpawnUnique (bool en) = 0;
00152
00156 virtual bool IsSpawnUniqueEnabled () const = 0;
00157
00161 virtual void InhibitCount (int number) = 0;
00162
00166 virtual void Spawn () = 0;
00167
00172 virtual void AddSpawnPosition (const char* node, float yrot,
00173 const char* sector) = 0;
00174
00179 virtual void AddSpawnPosition (const csVector3& pos, float yrot,
00180 const char* sector) = 0;
00181 };
00182
00183 #endif // __CEL_PF_SPAWN__
00184