From de44910d3be55a3f6f81c8ede9ea003b20518382 Mon Sep 17 00:00:00 2001 From: Mitch Freeman <65987027+neckkola@users.noreply.github.com> Date: Wed, 23 Apr 2025 23:13:26 -0300 Subject: [PATCH] Add scripting for NPCTintIndex --- zone/lua_npc.cpp | 7 +++++++ zone/lua_npc.h | 2 ++ zone/perl_npc.cpp | 6 ++++++ 3 files changed, 15 insertions(+) diff --git a/zone/lua_npc.cpp b/zone/lua_npc.cpp index 99123936d..67f26155d 100644 --- a/zone/lua_npc.cpp +++ b/zone/lua_npc.cpp @@ -945,6 +945,12 @@ bool Lua_NPC::IsResumedFromZoneSuspend() return self->IsResumedFromZoneSuspend(); } +void Lua_NPC::SetNPCTintIndex(uint32 id) +{ + Lua_Safe_Call_Void(); + self->SendAppearancePacket(AppearanceType::NPCTintIndex, id); +} + luabind::scope lua_register_npc() { return luabind::class_("NPC") .def(luabind::constructor<>()) @@ -1091,6 +1097,7 @@ luabind::scope lua_register_npc() { .def("SetLDoNTrapType", (void(Lua_NPC::*)(uint8))&Lua_NPC::SetLDoNTrapType) .def("SetNPCAggro", (void(Lua_NPC::*)(bool))&Lua_NPC::SetNPCAggro) .def("SetNPCFactionID", (void(Lua_NPC::*)(int))&Lua_NPC::SetNPCFactionID) + .def("SetNPCTintIndex", &Lua_NPC::SetNPCTintIndex) .def("SetPetSpellID", (void(Lua_NPC::*)(int))&Lua_NPC::SetPetSpellID) .def("SetPlatinum", (void(Lua_NPC::*)(uint32))&Lua_NPC::SetPlatinum) .def("SetPrimSkill", (void(Lua_NPC::*)(int))&Lua_NPC::SetPrimSkill) diff --git a/zone/lua_npc.h b/zone/lua_npc.h index 3e7ede475..90d6e2142 100644 --- a/zone/lua_npc.h +++ b/zone/lua_npc.h @@ -199,6 +199,8 @@ public: void ReturnHandinItems(Lua_Client c); Lua_Spawn GetSpawn(lua_State* L); bool IsResumedFromZoneSuspend(); + void SetNPCTintIndex(uint32 id); + }; #endif diff --git a/zone/perl_npc.cpp b/zone/perl_npc.cpp index 8498f4a6e..df8b5a924 100644 --- a/zone/perl_npc.cpp +++ b/zone/perl_npc.cpp @@ -885,6 +885,11 @@ Spawn2* Perl_NPC_GetSpawn(NPC* self) return self->GetSpawn(); } +void Perl_NPC_SetNPCTintIndex(NPC* self, uint32 id) +{ + return self->SendAppearancePacket(AppearanceType::NPCTintIndex, id); +} + void perl_register_npc() { perl::interpreter perl(PERL_GET_THX); @@ -1034,6 +1039,7 @@ void perl_register_npc() package.add("SetGold", &Perl_NPC_SetGold); package.add("SetGrid", &Perl_NPC_SetGrid); package.add("SetNPCFactionID", &Perl_NPC_SetNPCFactionID); + package.add("SetNPCTintIndex", &Perl_NPC_SetNPCTintIndex); package.add("SetPetSpellID", &Perl_NPC_SetPetSpellID); package.add("SetPlatinum", &Perl_NPC_SetPlatinum); package.add("SetPrimSkill", &Perl_NPC_SetPrimSkill);