bool CheckRequiredBosses(uint32 bossId, Player const* player /*= nullptr*/) const override
        {
            if (_SkipCheckRequiredBosses(player))
                return true;

            switch (bossId)
            {
                case DATA_BROODLORD_LASHLAYER:
                    if (GetBossState(DATA_VAELASTRAZ_THE_CORRUPT) != DONE)
                        return false;
                    break;
                case DATA_FIREMAW:
                case DATA_EBONROC:
                case DATA_FLAMEGOR:
                    if (GetBossState(DATA_BROODLORD_LASHLAYER) != DONE)
                        return false;
                    break;
                case DATA_CHROMAGGUS:
                    if (GetBossState(DATA_FIREMAW) != DONE
                        || GetBossState(DATA_EBONROC) != DONE
                        || GetBossState(DATA_FLAMEGOR) != DONE)
                        return false;
                    break;
                default:
                    break;
            }

            return true;
        }
예제 #2
0
            bool CheckRequiredBosses(uint32 bossId, Player const* player) const override
            {
                if (_SkipCheckRequiredBosses(player))
                    return true;

                if (bossId > DATA_KRIKTHIR_THE_GATEWATCHER && GetBossState(DATA_KRIKTHIR_THE_GATEWATCHER) != DONE)
                    return false;

                return true;
            }
            bool CheckRequiredBosses(uint32 bossId, Player const* player = nullptr) const override
            {
                if (_SkipCheckRequiredBosses(player))
                    return true;

                switch (bossId)
                {
                    case DATA_SJONNIR:
                        if (GetBossState(DATA_TRIBUNAL_OF_AGES) != DONE)
                            return false;
                        break;
                    default:
                        break;
                }

                return true;
            }