mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-11 21:01:29 +00:00
* Merge from master and removal of commented code.
This commit is contained in:
parent
a3dc36ae22
commit
d90982e63b
209
zone/exp.cpp
209
zone/exp.cpp
@ -514,215 +514,6 @@ void Client::AddEXP(uint32 in_add_exp, uint8 conlevel, bool resexp) {
|
||||
|
||||
// Now update our character's normal and AA xp
|
||||
SetEXP(exp, aaexp, resexp);
|
||||
|
||||
//this->EVENT_ITEM_ScriptStopReturn();
|
||||
|
||||
//uint32 add_exp = in_add_exp;
|
||||
|
||||
//if(!resexp && (XPRate != 0))
|
||||
// add_exp = static_cast<uint32>(in_add_exp * (static_cast<float>(XPRate) / 100.0f));
|
||||
|
||||
//if (m_epp.perAA<0 || m_epp.perAA>100)
|
||||
// m_epp.perAA=0; // stop exploit with sanity check
|
||||
|
||||
//uint32 add_aaxp;
|
||||
//if(resexp) {
|
||||
// add_aaxp = 0;
|
||||
//} else {
|
||||
// //figure out how much of this goes to AAs
|
||||
// add_aaxp = add_exp * m_epp.perAA / 100;
|
||||
|
||||
// //take that amount away from regular exp
|
||||
// add_exp -= add_aaxp;
|
||||
|
||||
// float totalmod = 1.0;
|
||||
// float zemmod = 1.0;
|
||||
|
||||
// //get modifiers
|
||||
// if(RuleR(Character, ExpMultiplier) >= 0){
|
||||
// totalmod *= RuleR(Character, ExpMultiplier);
|
||||
// }
|
||||
|
||||
// //add the zone exp modifier.
|
||||
// if(zone->newzone_data.zone_exp_multiplier >= 0){
|
||||
// zemmod *= zone->newzone_data.zone_exp_multiplier;
|
||||
// }
|
||||
|
||||
// if(RuleB(Character,UseRaceClassExpBonuses))
|
||||
// {
|
||||
// if(GetBaseRace() == HALFLING){
|
||||
// totalmod *= 1.05;
|
||||
// }
|
||||
|
||||
// if(GetClass() == ROGUE || GetClass() == WARRIOR){
|
||||
// totalmod *= 1.05;
|
||||
// }
|
||||
// }
|
||||
|
||||
// //add hotzone modifier if one has been set.
|
||||
// if(zone->IsHotzone())
|
||||
// {
|
||||
// totalmod += RuleR(Zone, HotZoneBonus);
|
||||
// }
|
||||
|
||||
// add_exp = uint32(float(add_exp) * totalmod * zemmod);
|
||||
|
||||
// //if XP scaling is based on the con of a monster, do that now.
|
||||
// if(RuleB(Character,UseXPConScaling))
|
||||
// {
|
||||
// if (conlevel != 0xFF && !resexp) {
|
||||
// switch (conlevel)
|
||||
// {
|
||||
// case CON_GRAY:
|
||||
// add_exp = 0;
|
||||
// add_aaxp = 0;
|
||||
// return;
|
||||
// case CON_GREEN:
|
||||
// add_exp = add_exp * RuleI(Character, GreenModifier) / 100;
|
||||
// add_aaxp = add_aaxp * RuleI(Character, GreenModifier) / 100;
|
||||
// break;
|
||||
// case CON_LIGHTBLUE:
|
||||
// add_exp = add_exp * RuleI(Character, LightBlueModifier)/100;
|
||||
// add_aaxp = add_aaxp * RuleI(Character, LightBlueModifier)/100;
|
||||
// break;
|
||||
// case CON_BLUE:
|
||||
// add_exp = add_exp * RuleI(Character, BlueModifier)/100;
|
||||
// add_aaxp = add_aaxp * RuleI(Character, BlueModifier)/100;
|
||||
// break;
|
||||
// case CON_WHITE:
|
||||
// add_exp = add_exp * RuleI(Character, WhiteModifier)/100;
|
||||
// add_aaxp = add_aaxp * RuleI(Character, WhiteModifier)/100;
|
||||
// break;
|
||||
// case CON_YELLOW:
|
||||
// add_exp = add_exp * RuleI(Character, YellowModifier)/100;
|
||||
// add_aaxp = add_aaxp * RuleI(Character, YellowModifier)/100;
|
||||
// break;
|
||||
// case CON_RED:
|
||||
// add_exp = add_exp * RuleI(Character, RedModifier)/100;
|
||||
// add_aaxp = add_aaxp * RuleI(Character, RedModifier)/100;
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
// if (IsLeadershipEXPOn() && (conlevel == CON_BLUE || conlevel == CON_WHITE || conlevel == CON_YELLOW || conlevel == CON_RED)) {
|
||||
// add_exp = static_cast<uint32>(static_cast<float>(add_exp) * 0.8f);
|
||||
|
||||
// if (GetGroup()) {
|
||||
// if (m_pp.group_leadership_points < MaxBankedGroupLeadershipPoints(GetLevel())
|
||||
// && RuleI(Character, KillsPerGroupLeadershipAA) > 0) {
|
||||
// uint32 exp = GROUP_EXP_PER_POINT / RuleI(Character, KillsPerGroupLeadershipAA);
|
||||
// Client *mentoree = GetGroup()->GetMentoree();
|
||||
// if (GetGroup()->GetMentorPercent() && mentoree &&
|
||||
// mentoree->GetGroupPoints() < MaxBankedGroupLeadershipPoints(mentoree->GetLevel())) {
|
||||
// uint32 mentor_exp = exp * (GetGroup()->GetMentorPercent() / 100.0f);
|
||||
// exp -= mentor_exp;
|
||||
// mentoree->AddLeadershipEXP(mentor_exp, 0); // ends up rounded down
|
||||
// mentoree->Message_StringID(MT_Leadership, GAIN_GROUP_LEADERSHIP_EXP);
|
||||
// }
|
||||
// if (exp > 0) { // possible if you mentor 100% to the other client
|
||||
// AddLeadershipEXP(exp, 0); // ends up rounded up if mentored, no idea how live actually does it
|
||||
// Message_StringID(MT_Leadership, GAIN_GROUP_LEADERSHIP_EXP);
|
||||
// }
|
||||
// } else {
|
||||
// Message_StringID(MT_Leadership, MAX_GROUP_LEADERSHIP_POINTS);
|
||||
// }
|
||||
// } else {
|
||||
// Raid *raid = GetRaid();
|
||||
// // Raid leaders CAN NOT gain group AA XP, other group leaders can though!
|
||||
// if (raid->IsLeader(this)) {
|
||||
// if (m_pp.raid_leadership_points < MaxBankedRaidLeadershipPoints(GetLevel())
|
||||
// && RuleI(Character, KillsPerRaidLeadershipAA) > 0) {
|
||||
// AddLeadershipEXP(0, RAID_EXP_PER_POINT / RuleI(Character, KillsPerRaidLeadershipAA));
|
||||
// Message_StringID(MT_Leadership, GAIN_RAID_LEADERSHIP_EXP);
|
||||
// } else {
|
||||
// Message_StringID(MT_Leadership, MAX_RAID_LEADERSHIP_POINTS);
|
||||
// }
|
||||
// } else {
|
||||
// if (m_pp.group_leadership_points < MaxBankedGroupLeadershipPoints(GetLevel())
|
||||
// && RuleI(Character, KillsPerGroupLeadershipAA) > 0) {
|
||||
// uint32 group_id = raid->GetGroup(this);
|
||||
// uint32 exp = GROUP_EXP_PER_POINT / RuleI(Character, KillsPerGroupLeadershipAA);
|
||||
// Client *mentoree = raid->GetMentoree(group_id);
|
||||
// if (raid->GetMentorPercent(group_id) && mentoree &&
|
||||
// mentoree->GetGroupPoints() < MaxBankedGroupLeadershipPoints(mentoree->GetLevel())) {
|
||||
// uint32 mentor_exp = exp * (raid->GetMentorPercent(group_id) / 100.0f);
|
||||
// exp -= mentor_exp;
|
||||
// mentoree->AddLeadershipEXP(mentor_exp, 0);
|
||||
// mentoree->Message_StringID(MT_Leadership, GAIN_GROUP_LEADERSHIP_EXP);
|
||||
// }
|
||||
// if (exp > 0) {
|
||||
// AddLeadershipEXP(exp, 0);
|
||||
// Message_StringID(MT_Leadership, GAIN_GROUP_LEADERSHIP_EXP);
|
||||
// }
|
||||
// } else {
|
||||
// Message_StringID(MT_Leadership, MAX_GROUP_LEADERSHIP_POINTS);
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
// }
|
||||
|
||||
//} //end !resexp
|
||||
|
||||
//float aatotalmod = 1.0;
|
||||
//if(zone->newzone_data.zone_exp_multiplier >= 0){
|
||||
// aatotalmod *= zone->newzone_data.zone_exp_multiplier;
|
||||
//}
|
||||
|
||||
//// Shouldn't race not affect AA XP?
|
||||
//if(RuleB(Character,UseRaceClassExpBonuses))
|
||||
//{
|
||||
// if(GetBaseRace() == HALFLING){
|
||||
// aatotalmod *= 1.05;
|
||||
// }
|
||||
|
||||
// if(GetClass() == ROGUE || GetClass() == WARRIOR){
|
||||
// aatotalmod *= 1.05;
|
||||
// }
|
||||
//}
|
||||
|
||||
//// why wasn't this here? Where should it be?
|
||||
//if(zone->IsHotzone())
|
||||
//{
|
||||
// aatotalmod += RuleR(Zone, HotZoneBonus);
|
||||
//}
|
||||
|
||||
//if(RuleB(Zone, LevelBasedEXPMods)){
|
||||
// if(zone->level_exp_mod[GetLevel()].ExpMod){
|
||||
// add_exp *= zone->level_exp_mod[GetLevel()].ExpMod;
|
||||
// add_aaxp *= zone->level_exp_mod[GetLevel()].AAExpMod;
|
||||
// }
|
||||
//}
|
||||
|
||||
//uint32 exp = GetEXP() + add_exp;
|
||||
//uint32 aaexp = 0;
|
||||
|
||||
//// if using modernAA and this character has AA XP enabled.
|
||||
//if (RuleB(Character, ModernAAScalingEnabled) && add_aaxp > 0)
|
||||
//{
|
||||
// aaexp = ScaleAAXPBasedOnCurrentAATotal(GetAAPoints(), add_aaxp, aatotalmod);
|
||||
//}
|
||||
//else
|
||||
//{
|
||||
// // else, do the existing calculation.
|
||||
// aaexp = (uint32)(RuleR(Character, AAExpMultiplier) * add_aaxp * aatotalmod);
|
||||
//}
|
||||
|
||||
//// Get current AA XP total
|
||||
//uint32 had_aaexp = GetAAXP();
|
||||
|
||||
//// Add it to the XP we just earned.
|
||||
//aaexp += had_aaexp;
|
||||
|
||||
//// Make sure our new total (existing + just earned) isn't lower than the
|
||||
//// existing total. If it is, we overflowed the bounds of uint32 and wrapped.
|
||||
//// Reset to the existing total.
|
||||
//if(aaexp < had_aaexp)
|
||||
// aaexp = had_aaexp; //watch for wrap
|
||||
|
||||
//// Now update our character's normal and AA xp
|
||||
//SetEXP(exp, aaexp, resexp);
|
||||
}
|
||||
|
||||
void Client::SetEXP(uint32 set_exp, uint32 set_aaxp, bool isrezzexp) {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user