private bool ProcessProperties(PropertyProcessor processor) {
        var levelNames = GetLevelNames();
        if (propertyName == null || propertyName.Length == 0) {
            Debug.LogError("Missing SelectProperty() directive");
            return false;
        }

        for (int i = 0; i < levelNames.Count; ++i) {
            var ln = levelNames[i];
            for (int j = 0; j < propertyName.Length; ++j) {
                var pn = propertyName[j];
                if (!MadLevelProfile.IsLevelPropertySet(ln, pn)) {
                    processor(ln, pn, null);
                } else {
                    processor(ln, pn, MadLevelProfile.GetLevelAny(ln, pn));
                }
            }
        }

        return true;
    }
Example #2
0
    bool IsLevelBooleanSet()
    {
        string levelName = icon.level.name;

        switch (specialType)
        {
        case SpecialType.Regular:
            return(MadLevelProfile.IsLevelPropertySet(levelName, name));

        case SpecialType.LevelNumber:
            return(MadLevelProfile.IsLevelPropertySet(levelName, name));

        case SpecialType.Locked:
            return(MadLevelProfile.IsLockedSet(levelName));

        case SpecialType.Completed:
            return(MadLevelProfile.IsCompletedSet(levelName));

        default:
            MadDebug.Assert(false, "Unknown special type: " + specialType);
            return(false);
        }
    }