[Feature] Instance Version Specific Experience Modifiers (#2376)

* [Feature] Add Instance Version Support to Experience Modifiers.

Allows Operators to set experience modifiers to be instance version specific so that you can have different versions of the same zone have different modifiers. If there is not one found, it defaults to zone_id 0 for global and instance_veresion -1 for global.

* Update zonedb.cpp

* Typo.
This commit is contained in:
Kinglykrab
2022-08-20 04:16:58 -04:00
committed by GitHub
parent 607871a7ac
commit 8e3ad529dc
13 changed files with 163 additions and 52 deletions
+24
View File
@@ -2178,21 +2178,41 @@ double Lua_Client::GetAAEXPModifier(uint32 zone_id) {
return self->GetAAEXPModifier(zone_id);
}
double Lua_Client::GetAAEXPModifier(uint32 zone_id, int16 instance_version) {
Lua_Safe_Call_Real();
return self->GetAAEXPModifier(zone_id, instance_version);
}
double Lua_Client::GetEXPModifier(uint32 zone_id) {
Lua_Safe_Call_Real();
return self->GetEXPModifier(zone_id);
}
double Lua_Client::GetEXPModifier(uint32 zone_id, int16 instance_version) {
Lua_Safe_Call_Real();
return self->GetEXPModifier(zone_id, instance_version);
}
void Lua_Client::SetAAEXPModifier(uint32 zone_id, double aa_modifier) {
Lua_Safe_Call_Void();
self->SetAAEXPModifier(zone_id, aa_modifier);
}
void Lua_Client::SetAAEXPModifier(uint32 zone_id, double aa_modifier, int16 instance_version) {
Lua_Safe_Call_Void();
self->SetAAEXPModifier(zone_id, aa_modifier, instance_version);
}
void Lua_Client::SetEXPModifier(uint32 zone_id, double exp_modifier) {
Lua_Safe_Call_Void();
self->SetEXPModifier(zone_id, exp_modifier);
}
void Lua_Client::SetEXPModifier(uint32 zone_id, double exp_modifier, int16 instance_version) {
Lua_Safe_Call_Void();
self->SetEXPModifier(zone_id, exp_modifier, instance_version);
}
void Lua_Client::AddLDoNLoss(uint32 theme_id) {
Lua_Safe_Call_Void();
self->UpdateLDoNWinLoss(theme_id);
@@ -2643,6 +2663,7 @@ luabind::scope lua_register_client() {
.def("ForageItem", (void(Lua_Client::*)(void))&Lua_Client::ForageItem)
.def("Freeze", (void(Lua_Client::*)(void))&Lua_Client::Freeze)
.def("GetAAEXPModifier", (double(Lua_Client::*)(uint32))&Lua_Client::GetAAEXPModifier)
.def("GetAAEXPModifier", (double(Lua_Client::*)(uint32,int16))&Lua_Client::GetAAEXPModifier)
.def("GetAAExp", (uint32(Lua_Client::*)(void))&Lua_Client::GetAAExp)
.def("GetAAPercent", (uint32(Lua_Client::*)(void))&Lua_Client::GetAAPercent)
.def("GetAAPoints", (int(Lua_Client::*)(void))&Lua_Client::GetAAPoints)
@@ -2687,6 +2708,7 @@ luabind::scope lua_register_client() {
.def("GetDuelTarget", (int(Lua_Client::*)(void))&Lua_Client::GetDuelTarget)
.def("GetEXP", (uint32(Lua_Client::*)(void))&Lua_Client::GetEXP)
.def("GetEXPModifier", (double(Lua_Client::*)(uint32))&Lua_Client::GetEXPModifier)
.def("GetEXPModifier", (double(Lua_Client::*)(uint32,int16))&Lua_Client::GetEXPModifier)
.def("GetEbonCrystals", (uint32(Lua_Client::*)(void))&Lua_Client::GetEbonCrystals)
.def("GetEndurance", (int(Lua_Client::*)(void))&Lua_Client::GetEndurance)
.def("GetEndurancePercent", (int(Lua_Client::*)(void))&Lua_Client::GetEndurancePercent)
@@ -2875,6 +2897,7 @@ luabind::scope lua_register_client() {
.def("SendWebLink", (void(Lua_Client::*)(const char *))&Lua_Client::SendWebLink)
.def("SendZoneFlagInfo", (void(Lua_Client::*)(Lua_Client))&Lua_Client::SendZoneFlagInfo)
.def("SetAAEXPModifier", (void(Lua_Client::*)(uint32,double))&Lua_Client::SetAAEXPModifier)
.def("SetAAEXPModifier", (void(Lua_Client::*)(uint32,double,int16))&Lua_Client::SetAAEXPModifier)
.def("SetAAPoints", (void(Lua_Client::*)(int))&Lua_Client::SetAAPoints)
.def("SetAATitle", (void(Lua_Client::*)(std::string))&Lua_Client::SetAATitle)
.def("SetAATitle", (void(Lua_Client::*)(std::string,bool))&Lua_Client::SetAATitle)
@@ -2901,6 +2924,7 @@ luabind::scope lua_register_client() {
.def("SetEXP", (void(Lua_Client::*)(uint32,uint32))&Lua_Client::SetEXP)
.def("SetEXP", (void(Lua_Client::*)(uint32,uint32,bool))&Lua_Client::SetEXP)
.def("SetEXPModifier", (void(Lua_Client::*)(uint32,double))&Lua_Client::SetEXPModifier)
.def("SetEXPModifier", (void(Lua_Client::*)(uint32,double,int16))&Lua_Client::SetEXPModifier)
.def("SetEbonCrystals", (void(Lua_Client::*)(uint32))&Lua_Client::SetEbonCrystals)
.def("SetEndurance", (void(Lua_Client::*)(int))&Lua_Client::SetEndurance)
.def("SetEnvironmentDamageModifier", (void(Lua_Client::*)(int))&Lua_Client::SetEnvironmentDamageModifier)