mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-11 16:51:29 +00:00
[Quest API] Add GetSpawn() to Perl and Lua (#4702)
* [Quest API] Add GetSpawn() to Perl and Lua * Push * Update npc.h
This commit is contained in:
parent
aa4869c6e9
commit
486c7c44be
@ -9,6 +9,7 @@
|
||||
#include "lua_client.h"
|
||||
#include "lua_item.h"
|
||||
#include "lua_iteminst.h"
|
||||
#include "lua_spawn.h"
|
||||
|
||||
struct Lua_NPC_Loot_List {
|
||||
std::vector<uint32> entries;
|
||||
@ -932,6 +933,12 @@ void Lua_NPC::ReturnHandinItems(Lua_Client c)
|
||||
self->ReturnHandinItems(c);
|
||||
}
|
||||
|
||||
Lua_Spawn Lua_NPC::GetSpawn(lua_State* L)
|
||||
{
|
||||
Lua_Safe_Call_Class(Lua_Spawn);
|
||||
return Lua_Spawn(self->GetSpawn());
|
||||
}
|
||||
|
||||
luabind::scope lua_register_npc() {
|
||||
return luabind::class_<Lua_NPC, Lua_Mob>("NPC")
|
||||
.def(luabind::constructor<>())
|
||||
@ -1009,6 +1016,7 @@ luabind::scope lua_register_npc() {
|
||||
.def("GetSilver", (uint32(Lua_NPC::*)(void))&Lua_NPC::GetSilver)
|
||||
.def("GetSlowMitigation", (int(Lua_NPC::*)(void))&Lua_NPC::GetSlowMitigation)
|
||||
.def("GetSp2", (uint32(Lua_NPC::*)(void))&Lua_NPC::GetSp2)
|
||||
.def("GetSpawn", (Lua_Spawn(Lua_NPC::*)(void))&Lua_NPC::GetSpawn)
|
||||
.def("GetSpawnKillCount", (int(Lua_NPC::*)(void))&Lua_NPC::GetSpawnKillCount)
|
||||
.def("GetSpawnPointH", (float(Lua_NPC::*)(void))&Lua_NPC::GetSpawnPointH)
|
||||
.def("GetSpawnPointID", (int(Lua_NPC::*)(void))&Lua_NPC::GetSpawnPointID)
|
||||
|
||||
@ -10,6 +10,7 @@ class Lua_NPC;
|
||||
class Lua_Client;
|
||||
struct Lua_NPC_Loot_List;
|
||||
class Lua_Inventory;
|
||||
class Lua_Spawn;
|
||||
|
||||
namespace luabind {
|
||||
struct scope;
|
||||
@ -196,6 +197,7 @@ public:
|
||||
luabind::adl::object items_table
|
||||
);
|
||||
void ReturnHandinItems(Lua_Client c);
|
||||
Lua_Spawn GetSpawn(lua_State* L);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
@ -2751,10 +2751,7 @@ void NPC::LevelScale() {
|
||||
|
||||
uint32 NPC::GetSpawnPointID() const
|
||||
{
|
||||
if (respawn2) {
|
||||
return respawn2->GetID();
|
||||
}
|
||||
return 0;
|
||||
return respawn2 ? respawn2->GetID() : 0;
|
||||
}
|
||||
|
||||
void NPC::NPCSlotTexture(uint8 slot, uint32 texture)
|
||||
|
||||
@ -248,6 +248,7 @@ public:
|
||||
|
||||
uint16 GetWaypointMax() const { return wp_m; }
|
||||
int32 GetGrid() const { return grid; }
|
||||
Spawn2* GetSpawn() { return respawn2 ? respawn2 : nullptr; }
|
||||
uint32 GetSpawnGroupId() const { return spawn_group_id; }
|
||||
uint32 GetSpawnPointID() const;
|
||||
|
||||
|
||||
@ -875,6 +875,11 @@ void Perl_NPC_ReturnHandinItems(NPC *self, Client* c)
|
||||
self->ReturnHandinItems(c);
|
||||
}
|
||||
|
||||
Spawn2* Perl_NPC_GetSpawn(NPC* self)
|
||||
{
|
||||
return self->GetSpawn();
|
||||
}
|
||||
|
||||
void perl_register_npc()
|
||||
{
|
||||
perl::interpreter perl(PERL_GET_THX);
|
||||
@ -953,6 +958,7 @@ void perl_register_npc()
|
||||
package.add("GetSilver", &Perl_NPC_GetSilver);
|
||||
package.add("GetSlowMitigation", &Perl_NPC_GetSlowMitigation);
|
||||
package.add("GetSp2", &Perl_NPC_GetSp2);
|
||||
package.add("GetSpawn", &Perl_NPC_GetSpawn);
|
||||
package.add("GetSpawnKillCount", &Perl_NPC_GetSpawnKillCount);
|
||||
package.add("GetSpawnPointH", &Perl_NPC_GetSpawnPointH);
|
||||
package.add("GetSpawnPointID", &Perl_NPC_GetSpawnPointID);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user