Check multipliers

Added checks to make sure at least one multiplier is set higher than 1
This commit is contained in:
Revision
2025-01-16 01:56:27 +01:00
parent 487f4d52ea
commit 293ba6d3e3
2 changed files with 21 additions and 0 deletions

View File

@@ -30,6 +30,7 @@ public:
private:
void LoadDefaultValues();
void SetRates(bool /*active*/);
bool HasActiveMultipliers();
bool Triggered;
time_t LocalTime;

View File

@@ -2,6 +2,11 @@
void WeekendBonus::OnStartup()
{
if (!HasActiveMultipliers)
{
return;
}
Triggered = false;
LocalTime = time(NULL);
@@ -11,6 +16,11 @@ void WeekendBonus::OnStartup()
void WeekendBonus::OnUpdate(uint32 diff)
{
if (!HasActiveMultipliers)
{
return;
}
CheckTime += Milliseconds(diff);
if (CheckTime > CheckFrequency)
{
@@ -40,3 +50,13 @@ void WeekendBonus::OnUpdate(uint32 diff)
}
}
}
bool WeekendBonus::HasActiveMultipliers()
{
if (ExperienceMultiplier > 1 || MoneyMultiplier > 1 || ProfessionsMultiplier > 1 || ReputationMultiplier > 1 || ProficienciesMultiplier > 1 || HonorMultiplier > 1)
{
return true;
}
return false;
}