ZG required progression config option (#876)

This commit is contained in:
Grimfeather
2025-11-23 06:54:52 +01:00
committed by GitHub
parent 4389e7b92a
commit 6f97c348c0
4 changed files with 21 additions and 8 deletions

View File

@@ -263,6 +263,15 @@ IndividualProgression.DeathKnightUnlockProgression = 13
#
IndividualProgression.DeathKnightStartingProgression = 13
# IndividualProgression.RequiredZulGurubProgression
#
# Description: The progression stage at which Zul'Gurub will be available
#
# Default: 3 - Zul'Gurub unlocks after BWL (Default, Blizzlike)
# 0-12, 14-18 - Set a different required progression stage for Zul'Gurub
#
IndividualProgression.RequiredZulGurubProgression = 3
# IndividualProgression.DisableDefaultProgression
#
# Description: Disable the regular progression flow, so progression must be advanced through custom creature progression entries

View File

@@ -624,6 +624,7 @@ private:
sIndividualProgression->tbcRacesProgressionLevel = sConfigMgr->GetOption<uint8>("IndividualProgression.TbcRacesUnlockProgression", 0);
sIndividualProgression->deathKnightProgressionLevel = sConfigMgr->GetOption<uint8>("IndividualProgression.DeathKnightUnlockProgression", 13);
sIndividualProgression->deathKnightStartingProgression = sConfigMgr->GetOption<uint8>("IndividualProgression.DeathKnightStartingProgression", 13);
sIndividualProgression->RequiredZulGurubProgression = sConfigMgr->GetOption<uint8>("IndividualProgression.RequiredZulGurubProgression", 3);
sIndividualProgression->LoadCustomProgressionEntries(sConfigMgr->GetOption<std::string>("IndividualProgression.CustomProgression", ""));
sIndividualProgression->earlyDungeonSet2 = sConfigMgr->GetOption<bool>("IndividualProgression.AllowEarlyDungeonSet2", false);
sIndividualProgression->VanillaPvpKillRank1 = sConfigMgr->GetOption<uint32>("IndividualProgression.VanillaPvpKillRequirement.Rank1", 100);

View File

@@ -380,7 +380,7 @@ public:
questXpMapType questXpMap;
float vanillaPowerAdjustment, vanillaHealthAdjustment, tbcPowerAdjustment, tbcHealthAdjustment, vanillaHealingAdjustment, tbcHealingAdjustment;
bool enabled, questXpFix, hunterPetLevelFix, enforceGroupRules, fishingFix, simpleConfigOverride, questMoneyAtLevelCap, repeatableVanillaQuestsXp, disableDefaultProgression, earlyDungeonSet2, requireNaxxStrath, DisableRDF, excludeAccounts, VanillaPvpTitlesKeepPostVanilla, VanillaPvpTitlesEarnPostVanilla;
int progressionLimit, startingProgression, tbcRacesProgressionLevel, deathKnightProgressionLevel, deathKnightStartingProgression;
int progressionLimit, startingProgression, tbcRacesProgressionLevel, deathKnightProgressionLevel, deathKnightStartingProgression, RequiredZulGurubProgression;
uint32 VanillaPvpKillRank1, VanillaPvpKillRank2, VanillaPvpKillRank3, VanillaPvpKillRank4, VanillaPvpKillRank5, VanillaPvpKillRank6, VanillaPvpKillRank7, VanillaPvpKillRank8, VanillaPvpKillRank9, VanillaPvpKillRank10, VanillaPvpKillRank11, VanillaPvpKillRank12, VanillaPvpKillRank13, VanillaPvpKillRank14;
std::string excludedAccountsRegex;

View File

@@ -41,7 +41,6 @@ public:
sIndividualProgression->UpdateProgressionQuests(player);
}
if (sIndividualProgression->isExcludedFromProgression(player))
{
sIndividualProgression->UpdateProgressionState(player, static_cast<ProgressionState>(0));
@@ -190,11 +189,16 @@ public:
return false;
}
}
if (mapid == MAP_ZUL_GURUB && !sIndividualProgression->hasPassedProgression(player, PROGRESSION_BLACKWING_LAIR))
if (mapid == MAP_ZUL_GURUB)
{
ChatHandler(player->GetSession()).PSendSysMessage("Progression Level Required = |cff00ffff{}|r", PROGRESSION_BLACKWING_LAIR);
ProgressionState REQUIRED_ZG_PROGRESSION = static_cast<ProgressionState>(sIndividualProgression->RequiredZulGurubProgression);
if (!sIndividualProgression->hasPassedProgression(player, REQUIRED_ZG_PROGRESSION))
{
ChatHandler(player->GetSession()).PSendSysMessage("Progression Level Required = |cff00ffff{}|r", REQUIRED_ZG_PROGRESSION);
return false;
}
}
if (mapid == MAP_AHN_QIRAJ_TEMPLE && !sIndividualProgression->hasPassedProgression(player, PROGRESSION_PRE_AQ))
{
ChatHandler(player->GetSession()).PSendSysMessage("Progression Level Required = |cff00ffff{}|r", PROGRESSION_PRE_AQ);
@@ -1153,8 +1157,7 @@ public:
class IndividualPlayerProgression_AccountScript: public AccountScript
{
public:
IndividualPlayerProgression_AccountScript() : AccountScript("IndividualProgression_AccountScript")
{}
IndividualPlayerProgression_AccountScript() : AccountScript("IndividualProgression_AccountScript") { }
bool CanAccountCreateCharacter(uint32 accountId, uint8 charRace, uint8 charClass) override
{