mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-11 16:51:29 +00:00
58 lines
1.1 KiB
C++
58 lines
1.1 KiB
C++
#ifndef EQEMU_LUA_SPAWN_H
|
|
#define EQEMU_LUA_SPAWN_H
|
|
#ifdef LUA_EQEMU
|
|
|
|
#include "lua_ptr.h"
|
|
|
|
class Spawn2;
|
|
class Lua_NPC;
|
|
|
|
namespace luabind {
|
|
struct scope;
|
|
}
|
|
|
|
luabind::scope lua_register_spawn();
|
|
|
|
class Lua_Spawn : public Lua_Ptr<Spawn2>
|
|
{
|
|
typedef Spawn2 NativeType;
|
|
public:
|
|
Lua_Spawn() : Lua_Ptr(nullptr) { }
|
|
Lua_Spawn(Spawn2 *d) : Lua_Ptr(d) { }
|
|
virtual ~Lua_Spawn() { }
|
|
|
|
operator Spawn2*() {
|
|
return reinterpret_cast<Spawn2*>(GetLuaPtrData());
|
|
}
|
|
|
|
void LoadGrid();
|
|
void Enable();
|
|
void Disable();
|
|
bool Enabled();
|
|
void Reset();
|
|
void Depop();
|
|
void Repop();
|
|
void Repop(uint32 delay);
|
|
void ForceDespawn();
|
|
uint32 GetID();
|
|
float GetX();
|
|
float GetY();
|
|
float GetZ();
|
|
float GetHeading();
|
|
void SetRespawnTimer(uint32 newrespawntime);
|
|
void SetVariance(uint32 newvariance);
|
|
uint32 GetVariance();
|
|
uint32 RespawnTimer();
|
|
uint32 SpawnGroupID();
|
|
uint32 CurrentNPCID();
|
|
void SetCurrentNPCID(uint32 nid);
|
|
uint32 GetSpawnCondition();
|
|
bool NPCPointerValid();
|
|
void SetNPCPointer(Lua_NPC n);
|
|
void SetTimer(uint32 duration);
|
|
uint32 GetKillCount();
|
|
};
|
|
|
|
#endif
|
|
#endif
|