public static void GetXpCapInfo(int followerLevel, int followerQuality, out uint xpToNextLevelOrQuality, out bool isQuality, out bool isMaxLevelAndMaxQuality)
        {
            isMaxLevelAndMaxQuality = false;
            isQuality = false;
            GarrFollowerLevelXPRec garrFollowerLevelXPRec = StaticDB.garrFollowerLevelXPDB.GetRecordsByParentID(followerLevel).First((GarrFollowerLevelXPRec rec) => (GARR_TYPE)StaticDB.garrFollowerTypeDB.GetRecord((int)rec.GarrFollowerTypeID).GarrTypeID == GarrisonStatus.GarrisonType);

            if (garrFollowerLevelXPRec.XpToNextLevel > 0)
            {
                xpToNextLevelOrQuality = (uint)garrFollowerLevelXPRec.XpToNextLevel;
                return;
            }
            isQuality = true;
            GarrFollowerQualityRec garrFollowerQualityRec = StaticDB.garrFollowerQualityDB.GetRecordsByParentID(followerQuality).First((GarrFollowerQualityRec rec) => (GARR_FOLLOWER_TYPE)rec.GarrFollowerTypeID == GarrisonStatus.GarrisonFollowerType);

            xpToNextLevelOrQuality = garrFollowerQualityRec.XpToNextQuality;
            if (garrFollowerQualityRec.XpToNextQuality == 0u)
            {
                isMaxLevelAndMaxQuality = true;
            }
        }
示例#2
0
    public static void GetXpCapInfo(int followerLevel, int followerQuality, out uint xpToNextLevelOrQuality, out bool isQuality, out bool isMaxLevelAndMaxQuality)
    {
        isMaxLevelAndMaxQuality = false;
        isQuality = false;
        GarrFollowerLevelXPRec followerXpRec = null;

        StaticDB.garrFollowerLevelXPDB.EnumRecordsByParentID(followerLevel, delegate(GarrFollowerLevelXPRec rec)
        {
            GarrFollowerTypeRec record = StaticDB.garrFollowerTypeDB.GetRecord((int)rec.GarrFollowerTypeID);
            if (record.GarrTypeID == 3u)
            {
                followerXpRec = rec;
                return(false);
            }
            return(true);
        });
        if (followerXpRec.XpToNextLevel > 0u)
        {
            xpToNextLevelOrQuality = followerXpRec.XpToNextLevel;
            return;
        }
        isQuality = true;
        GarrFollowerQualityRec qualityRec = null;

        StaticDB.garrFollowerQualityDB.EnumRecordsByParentID(followerQuality, delegate(GarrFollowerQualityRec rec)
        {
            if (rec.GarrFollowerTypeID == 4u)
            {
                qualityRec = rec;
                return(false);
            }
            return(true);
        });
        xpToNextLevelOrQuality = qualityRec.XpToNextQuality;
        if (qualityRec.XpToNextQuality == 0u)
        {
            isMaxLevelAndMaxQuality = true;
        }
    }