diff --git a/zone/client.cpp b/zone/client.cpp index c49f36eb7..ea2ea6fdd 100644 --- a/zone/client.cpp +++ b/zone/client.cpp @@ -10241,9 +10241,7 @@ void Client::RemoveItem(uint32 item_id, uint32 quantity) } } -void Client::SetAdminStatus(int newStatus) { +void Client::SetGMStatus(int newStatus) { if (this->Admin() != newStatus) database.UpdateGMStatus(this->AccountID(), newStatus); - - return; } diff --git a/zone/client.h b/zone/client.h index f3af176c0..0e73370c3 100644 --- a/zone/client.h +++ b/zone/client.h @@ -1523,7 +1523,7 @@ public: void LoadAccountFlags(); void SetAccountFlag(std::string flag, std::string val); std::string GetAccountFlag(std::string flag); - void SetAdminStatus(int newStatus); + void SetGMStatus(int newStatus); float GetDamageMultiplier(EQ::skills::SkillType how_long_has_this_been_missing); void Consume(const EQ::ItemData *item, uint8 type, int16 slot, bool auto_consume); void PlayMP3(const char* fname); diff --git a/zone/lua_client.cpp b/zone/lua_client.cpp index 233f40622..29699aeff 100644 --- a/zone/lua_client.cpp +++ b/zone/lua_client.cpp @@ -2158,6 +2158,11 @@ void Lua_Client::RemoveItem(uint32 item_id, uint32 quantity) { return self->RemoveItem(item_id, quantity); } +void Lua_Client::SetGMStatus(uint32 newStatus) { + Lua_Safe_Call_Void(); + return self->SetGMStatus(newStatus); +} + luabind::scope lua_register_client() { return luabind::class_("Client") .def(luabind::constructor<>()) @@ -2525,7 +2530,8 @@ luabind::scope lua_register_client() { .def("SendToInstance", (void(Lua_Client::*)(std::string,std::string,uint32,float,float,float,float,std::string,uint32))&Lua_Client::SendToInstance) .def("CountItem", (int(Lua_Client::*)(uint32))&Lua_Client::CountItem) .def("RemoveItem", (void(Lua_Client::*)(uint32))&Lua_Client::RemoveItem) - .def("RemoveItem", (void(Lua_Client::*)(uint32,uint32))&Lua_Client::RemoveItem); + .def("RemoveItem", (void(Lua_Client::*)(uint32,uint32))&Lua_Client::RemoveItem) + .def("SetGMStatus", (void(Lua_Client::*)(int32))& Lua_Client::SetGMStatus); } luabind::scope lua_register_inventory_where() { diff --git a/zone/lua_client.h b/zone/lua_client.h index 51da4b9df..1d44640e7 100644 --- a/zone/lua_client.h +++ b/zone/lua_client.h @@ -370,6 +370,7 @@ public: int CountItem(uint32 item_id); void RemoveItem(uint32 item_id); void RemoveItem(uint32 item_id, uint32 quantity); + void SetGMStatus(uint32 newStatus); void SetPrimaryWeaponOrnamentation(uint32 model_id); void SetSecondaryWeaponOrnamentation(uint32 model_id); diff --git a/zone/perl_client.cpp b/zone/perl_client.cpp index 7613d624f..1fc989bf7 100644 --- a/zone/perl_client.cpp +++ b/zone/perl_client.cpp @@ -3420,10 +3420,9 @@ XS(XS_Client_SetGMStatus) { Perl_croak(aTHX_ "Usage: Client::SetGMStatus(THIS, int newStatus)"); // @categories Script Utility { Client *THIS; - uint32 accID = THIS->AccountID(); int newStatus = (int)SvIV(ST(1)); VALIDATE_THIS_IS_CLIENT; - THIS->SetAdminStatus(newStatus); + THIS->SetGMStatus(newStatus); THIS->UpdateAdmin(true); } XSRETURN_EMPTY;