[Quest API] Add RemoveAAPoints() and AA Loss Event to Perl/Lua (#4174)

* [Quest API] Add RemoveAAPoints() and AA Loss Event to Perl/Lua

# Perl
- Add `$client->RemoveAAPoints(points)`.
- Add `EVENT_AA_LOSS`, exports `$aa_lost`.

# Lua
- Add `client:RemoveAAPoints(points)`.
- Add `event_aa_loss`, exports `e.aa_lost`.

# Notes
- Allows operators to more easily remove AA Points.
- Has a bool return type that will return false if the player does not have enough AA Points to complete the removal.

* Update client.cpp
This commit is contained in:
Alex King
2024-03-08 21:20:33 -05:00
committed by GitHub
parent 96370e0298
commit 3bfb148bdc
11 changed files with 80 additions and 3 deletions
+7
View File
@@ -3296,6 +3296,12 @@ bool Lua_Client::IsInAGuild()
return self->IsInAGuild();
}
bool Lua_Client::RemoveAAPoints(uint32 points)
{
Lua_Safe_Call_Bool();
return self->RemoveAAPoints(points);
}
luabind::scope lua_register_client() {
return luabind::class_<Lua_Client, Lua_Mob>("Client")
.def(luabind::constructor<>())
@@ -3669,6 +3675,7 @@ luabind::scope lua_register_client() {
.def("ReadBookByName", (void(Lua_Client::*)(std::string,uint8))&Lua_Client::ReadBookByName)
.def("RefundAA", (void(Lua_Client::*)(void))&Lua_Client::RefundAA)
.def("ReloadDataBuckets", (bool(Lua_Client::*)(void))&Lua_Client::ReloadDataBuckets)
.def("RemoveAAPoints", (bool(Lua_Client::*)(uint32))&Lua_Client::RemoveAAPoints)
.def("RemoveAllExpeditionLockouts", (void(Lua_Client::*)(std::string))&Lua_Client::RemoveAllExpeditionLockouts)
.def("RemoveAllExpeditionLockouts", (void(Lua_Client::*)(void))&Lua_Client::RemoveAllExpeditionLockouts)
.def("RemoveExpeditionLockout", (void(Lua_Client::*)(std::string, std::string))&Lua_Client::RemoveExpeditionLockout)