diff --git a/conf/mod_weekendbonus.conf.dist b/conf/mod_weekendbonus.conf.dist index f9dc787..c2b72ad 100644 --- a/conf/mod_weekendbonus.conf.dist +++ b/conf/mod_weekendbonus.conf.dist @@ -14,3 +14,6 @@ WeekendBonus.Multiplier.Reputation = 2.0 # Multiplier for weapons and defense skill ups on weekends WeekendBonus.Multiplier.Proficiencies = 2 + +# Multiplier for honor gains on weekends +WeekendBonus.Multiplier.Honor = 2.0 diff --git a/src/mod_weekendbonus.h b/src/mod_weekendbonus.h index a70b4b9..0cddeda 100644 --- a/src/mod_weekendbonus.h +++ b/src/mod_weekendbonus.h @@ -43,6 +43,7 @@ private: uint32 ProfessionsMultiplier; float ReputationMultiplier; uint32 ProficienciesMultiplier; + float HonorMultiplier; float DefaultExperienceMultiplier[6]; float DefaultBattlegroundExperienceMultiplier[6]; @@ -50,6 +51,7 @@ private: uint32 DefaultProficienciesMultiplier[2]; float DefaultMoneyMultiplier; float DefaultReputationMultiplier; + float DefaultHonorMultiplier; }; #endif diff --git a/src/mod_weekendbonus_config.cpp b/src/mod_weekendbonus_config.cpp index 7b6aaff..d12aeea 100644 --- a/src/mod_weekendbonus_config.cpp +++ b/src/mod_weekendbonus_config.cpp @@ -10,6 +10,7 @@ void WeekendBonus::OnAfterConfigLoad(bool reload) ProfessionsMultiplier = sConfigMgr->GetOption("WeekendBonus.Multiplier.Professions", 2); ReputationMultiplier = sConfigMgr->GetOption("WeekendBonus.Multiplier.Reputation", 2.0f); ProficienciesMultiplier = sConfigMgr->GetOption("WeekendBonus.Multiplier.Proficiencies", 2); + HonorMultiplier = sConfigMgr->GetOption("WeekendBonus.Multiplier.Honor", 2.0f); if (reload) { @@ -39,6 +40,7 @@ void WeekendBonus::LoadDefaultValues() DefaultReputationMultiplier = sWorld->getRate(RATE_REPUTATION_GAIN); DefaultProficienciesMultiplier[0] = sWorld->getIntConfig(CONFIG_SKILL_GAIN_DEFENSE); DefaultProficienciesMultiplier[1] = sWorld->getIntConfig(CONFIG_SKILL_GAIN_WEAPON); + DefaultHonorMultiplier = sWorld->getFloatConfig(RATE_HONOR); CheckFrequency = 10s; AnnouncementFrequency = 1h; @@ -65,6 +67,7 @@ void WeekendBonus::SetRates(bool active) sWorld->setRate(RATE_REPUTATION_GAIN, DefaultReputationMultiplier * ReputationMultiplier); sWorld->setIntConfig(CONFIG_SKILL_GAIN_DEFENSE, DefaultProficienciesMultiplier[0] * ProficienciesMultiplier); sWorld->setIntConfig(CONFIG_SKILL_GAIN_WEAPON, DefaultProficienciesMultiplier[1] * ProficienciesMultiplier); + sWorld->setRate(RATE_HONOR, DefaultHonorMultiplier * HonorMultiplier); } else { @@ -85,6 +88,7 @@ void WeekendBonus::SetRates(bool active) sWorld->setRate(RATE_REPUTATION_GAIN, DefaultReputationMultiplier); sWorld->setIntConfig(CONFIG_SKILL_GAIN_DEFENSE, DefaultProficienciesMultiplier[0]); sWorld->setIntConfig(CONFIG_SKILL_GAIN_WEAPON, DefaultProficienciesMultiplier[1]); + sWorld->setRate(RATE_HONOR, DefaultHonorMultiplier); } Triggered = active;