[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
+2 -2
View File
@@ -329,7 +329,7 @@ void Client::CalculateStandardAAExp(uint32 &add_aaxp, uint8 conlevel, bool resex
}
if (RuleB(Character, EnableCharacterEXPMods)) {
add_aaxp *= GetAAEXPModifier(GetZoneID());
add_aaxp *= GetAAEXPModifier(zone->GetZoneID(), zone->GetInstanceVersion());
}
add_aaxp = (uint32)(RuleR(Character, AAExpMultiplier) * add_aaxp * aatotalmod);
@@ -492,7 +492,7 @@ void Client::CalculateExp(uint32 in_add_exp, uint32 &add_exp, uint32 &add_aaxp,
}
if (RuleB(Character, EnableCharacterEXPMods)) {
add_exp *= GetEXPModifier(GetZoneID());
add_exp *= GetEXPModifier(zone->GetZoneID(), zone->GetInstanceVersion());
}
add_exp = GetEXP() + add_exp;