mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-11 21:01:29 +00:00
* [Quest API] Add Mob/Entity type check methods to Perl/Lua # Perl - Add `$mob->IsAura()`. - Add `$mob->IsEncounter()`. - Add `$mob->IsMerc()`. - Add `$mob->IsOfClientBot()`. - Add `$mob->IsOfClientBotMerc()`. - Add `$mob->IsTemporaryPet()`. # Lua - Add `entity:IsAura()`. - Add `entity:IsOfClientBot()`. - Add `entity:IsOfClientBotMerc()`. - Add `mob:IsTemporaryPet()`. * Update lua_entity.cpp * Update lua_mob.cpp
66 lines
1.1 KiB
C++
66 lines
1.1 KiB
C++
#ifndef EQEMU_LUA_ENTITY_H
|
|
#define EQEMU_LUA_ENTITY_H
|
|
#ifdef LUA_EQEMU
|
|
|
|
#include "lua_ptr.h"
|
|
|
|
class Entity;
|
|
class Lua_Client;
|
|
class Lua_Bot;
|
|
class Lua_NPC;
|
|
class Lua_Mob;
|
|
struct Lua_HateList;
|
|
class Lua_Item;
|
|
class Lua_ItemInst;
|
|
class Lua_Corpse;
|
|
class Lua_Object;
|
|
class Lua_Door;
|
|
|
|
namespace luabind {
|
|
struct scope;
|
|
}
|
|
|
|
luabind::scope lua_register_entity();
|
|
|
|
class Lua_Entity : public Lua_Ptr<Entity>
|
|
{
|
|
typedef Entity NativeType;
|
|
public:
|
|
Lua_Entity() : Lua_Ptr(nullptr) { }
|
|
Lua_Entity(Entity *d) : Lua_Ptr(d) { }
|
|
virtual ~Lua_Entity() { }
|
|
|
|
operator Entity*() {
|
|
return reinterpret_cast<Entity*>(GetLuaPtrData());
|
|
}
|
|
|
|
bool IsClient();
|
|
bool IsNPC();
|
|
bool IsMob();
|
|
bool IsMerc();
|
|
bool IsCorpse();
|
|
bool IsPlayerCorpse();
|
|
bool IsNPCCorpse();
|
|
bool IsObject();
|
|
bool IsDoor();
|
|
bool IsTrap();
|
|
bool IsBeacon();
|
|
bool IsEncounter();
|
|
bool IsBot();
|
|
bool IsAura();
|
|
bool IsOfClientBot();
|
|
bool IsOfClientBotMerc();
|
|
int GetID();
|
|
|
|
Lua_Client CastToClient();
|
|
Lua_NPC CastToNPC();
|
|
Lua_Mob CastToMob();
|
|
Lua_Corpse CastToCorpse();
|
|
Lua_Object CastToObject();
|
|
Lua_Door CastToDoor();
|
|
Lua_Bot CastToBot();
|
|
};
|
|
|
|
#endif
|
|
#endif
|