mirror of
https://github.com/ZhengPeiRu21/mod-individual-progression
synced 2025-11-29 23:44:51 +08:00
Disable RDF and LFG Config Options
This commit is contained in:
@@ -347,20 +347,41 @@ public:
|
||||
}
|
||||
|
||||
void OnQueueRandomDungeon(Player* player, uint32& rDungeonId) override
|
||||
{
|
||||
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_NAXX40))
|
||||
{
|
||||
rDungeonId = RDF_CLASSIC;
|
||||
}
|
||||
else if (rDungeonId == RDF_WRATH_OF_THE_LICH_KING && !sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5))
|
||||
{
|
||||
rDungeonId = RDF_THE_BURNING_CRUSADE;
|
||||
}
|
||||
else if (rDungeonId == RDF_WRATH_OF_THE_LICH_KING_HEROIC && !sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5))
|
||||
{
|
||||
rDungeonId = RDF_THE_BURNING_CRUSADE_HEROIC;
|
||||
}
|
||||
}
|
||||
{
|
||||
// Check if RDF is disabled in the context of Individual Progression
|
||||
if (sConfigMgr->GetOption<bool>("IndividualProgression.DisableRDF", false))
|
||||
{
|
||||
// Notify the player
|
||||
player->GetSession()->SendNotification("The Random Dungeon feature is currently disabled by the Individual Progression module.");
|
||||
rDungeonId = 1000; // Set dungeon ID to an invalid value to cancel the queuing
|
||||
return;
|
||||
}
|
||||
|
||||
if (!sIndividualProgression->hasPassedProgression(player, PROGRESSION_NAXX40))
|
||||
{
|
||||
rDungeonId = RDF_CLASSIC;
|
||||
}
|
||||
else if (rDungeonId == RDF_WRATH_OF_THE_LICH_KING && !sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5))
|
||||
{
|
||||
rDungeonId = RDF_THE_BURNING_CRUSADE;
|
||||
}
|
||||
else if (rDungeonId == RDF_WRATH_OF_THE_LICH_KING_HEROIC && !sIndividualProgression->hasPassedProgression(player, PROGRESSION_TBC_TIER_5))
|
||||
{
|
||||
rDungeonId = RDF_THE_BURNING_CRUSADE_HEROIC;
|
||||
}
|
||||
}
|
||||
|
||||
bool CanJoinLfg(Player* player, uint8 roles, lfg::LfgDungeonSet& dungeons, const std::string& comment) override
|
||||
{
|
||||
// Check if LFG is disabled in the context of Individual Progression
|
||||
if (sConfigMgr->GetOption<bool>("IndividualProgression.DisableLFG", false))
|
||||
{
|
||||
player->GetSession()->SendNotification("The Looking For Group feature is currently disabled by the Individual Progression module.");
|
||||
return false; // Prevent the player from joining LFG
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CanEquipItem(Player* player, uint8 /*slot*/, uint16& /*dest*/, Item* pItem, bool /*swap*/, bool /*not_loading*/) override
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user