From 2ca37ae838f4fd5590cb51fd7b8189e4ee08b151 Mon Sep 17 00:00:00 2001 From: Alex Date: Sun, 13 Jun 2021 19:44:54 -0400 Subject: [PATCH] [Quest API] Add Popup(title, text, popup_id, negative_id, button_type, duration, button_name_one, button_name_two, sound_controls) to Lua. (#1396) - Add client:Popup(title, text, popup_id, negative_id, button_type, duration, button_name_one, button_name_two, sound_controls) to Lua. - There is no overload for only using button_name_one, as the SendFullPopup requires both button names to be set. --- zone/lua_client.cpp | 42 ++++++++++++++++++++++++++++++++++++++++++ zone/lua_client.h | 7 +++++++ 2 files changed, 49 insertions(+) diff --git a/zone/lua_client.cpp b/zone/lua_client.cpp index 501b9d5de..35ac56006 100644 --- a/zone/lua_client.cpp +++ b/zone/lua_client.cpp @@ -2098,6 +2098,41 @@ void Lua_Client::SetHideMe(bool hide_me_state) { self->SetHideMe(hide_me_state); } +void Lua_Client::Popup(const char* title, const char* text) { + Lua_Safe_Call_Void(); + self->SendFullPopup(title, text); +} + +void Lua_Client::Popup(const char* title, const char* text, uint32 popup_id) { + Lua_Safe_Call_Void(); + self->SendFullPopup(title, text, popup_id); +} + +void Lua_Client::Popup(const char* title, const char* text, uint32 popup_id, uint32 negative_id) { + Lua_Safe_Call_Void(); + self->SendFullPopup(title, text, popup_id, negative_id); +} + +void Lua_Client::Popup(const char* title, const char* text, uint32 popup_id, uint32 negative_id, uint32 button_type) { + Lua_Safe_Call_Void(); + self->SendFullPopup(title, text, popup_id, negative_id, button_type); +} + +void Lua_Client::Popup(const char* title, const char* text, uint32 popup_id, uint32 negative_id, uint32 button_type, uint32 duration) { + Lua_Safe_Call_Void(); + self->SendFullPopup(title, text, popup_id, negative_id, button_type, duration); +} + +void Lua_Client::Popup(const char* title, const char* text, uint32 popup_id, uint32 negative_id, uint32 button_type, uint32 duration, const char* button_name_one, const char* button_name_two) { + Lua_Safe_Call_Void(); + self->SendFullPopup(title, text, popup_id, negative_id, button_type, duration, button_name_one, button_name_two); +} + +void Lua_Client::Popup(const char* title, const char* text, uint32 popup_id, uint32 negative_id, uint32 button_type, uint32 duration, const char* button_name_one, const char* button_name_two, uint32 sound_controls) { + Lua_Safe_Call_Void(); + self->SendFullPopup(title, text, popup_id, negative_id, button_type, duration, button_name_one, button_name_two, sound_controls); +} + void Lua_Client::ResetAllDisciplineTimers() { Lua_Safe_Call_Void(); self->ResetAllDisciplineTimers(); @@ -2459,6 +2494,13 @@ luabind::scope lua_register_client() { .def("AddLDoNLoss", (void(Lua_Client::*)(uint32))&Lua_Client::AddLDoNLoss) .def("AddLDoNWin", (void(Lua_Client::*)(uint32))&Lua_Client::AddLDoNWin) .def("SetHideMe", (void(Lua_Client::*)(bool))&Lua_Client::SetHideMe) + .def("Popup", (void(Lua_Client::*)(const char*,const char*))& Lua_Client::Popup) + .def("Popup", (void(Lua_Client::*)(const char*,const char*,uint32))& Lua_Client::Popup) + .def("Popup", (void(Lua_Client::*)(const char*,const char*,uint32,uint32))& Lua_Client::Popup) + .def("Popup", (void(Lua_Client::*)(const char*,const char*,uint32,uint32,uint32))& Lua_Client::Popup) + .def("Popup", (void(Lua_Client::*)(const char*,const char*,uint32,uint32,uint32,uint32))& Lua_Client::Popup) + .def("Popup", (void(Lua_Client::*)(const char*,const char*,uint32,uint32,uint32,uint32,const char*,const char*))& Lua_Client::Popup) + .def("Popup", (void(Lua_Client::*)(const char*,const char*,uint32,uint32,uint32,uint32,const char*,const char*,uint32))&Lua_Client::Popup) .def("ResetAllDisciplineTimers", (void(Lua_Client::*)(void))&Lua_Client::ResetAllDisciplineTimers); } diff --git a/zone/lua_client.h b/zone/lua_client.h index 28465d57a..f13b69daf 100644 --- a/zone/lua_client.h +++ b/zone/lua_client.h @@ -359,6 +359,13 @@ public: void EnableAreaRegens(int value); void DisableAreaRegens(); void SetHideMe(bool hide_me_state); + void Popup(const char* title, const char* text); + void Popup(const char* title, const char* text, uint32 popup_id); + void Popup(const char* title, const char* text, uint32 popup_id, uint32 negative_id); + void Popup(const char* title, const char* text, uint32 popup_id, uint32 negative_id, uint32 button_type); + void Popup(const char* title, const char* text, uint32 popup_id, uint32 negative_id, uint32 button_type, uint32 duration); + void Popup(const char* title, const char* text, uint32 popup_id, uint32 negative_id, uint32 button_type, uint32 duration, const char* button_name_one, const char* button_name_two); + void Popup(const char* title, const char* text, uint32 popup_id, uint32 negative_id, uint32 button_type, uint32 duration, const char* button_name_one, const char* button_name_two, uint32 sound_controls); void SetPrimaryWeaponOrnamentation(uint32 model_id); void SetSecondaryWeaponOrnamentation(uint32 model_id);