예제 #1
0
파일: MadLevel.cs 프로젝트: kewls74/game1
    /// <summary>
    /// Finds the last name of the level, that predicate returns <code>true</code> value.
    /// </summary>
    /// <returns>The last found level or <code>null<code> if not found.</returns>
    /// <param name="predicate">The predicate.</param>
    public static string FindLastLevelName(string groupName, LevelPredicate predicate) {
        CheckHasConfiguration();

        MadLevelConfiguration.Group group = null;
        if (groupName != null) {
            group = activeConfiguration.FindGroupByName(groupName);
            if (group == null) {
                Debug.LogError("Cannot find group named " + groupName);
                return null;
            }
        }

        var levels = activeConfiguration.GetLevelsInOrder();
        for (int i = levels.Length - 1; i >= 0; i--) {
            var level = levels[i];

            if (group != null && level.groupId != group.id) {
                continue;
            }

            if (predicate(level)) {
                return level.name;
            }
        }

        return null;
    }
예제 #2
0
 /// <summary>
 /// Finds the last name of the level, that predicate returns <code>true</code> value.
 /// </summary>
 /// <returns>The last found level or <code>null<code> if not found.</returns>
 /// <param name="predicate">The predicate.</param>
 public static string FindLastLevelName(LevelPredicate predicate) {
     CheckHasConfiguration();
 
     var levels = activeConfiguration.GetLevelsInOrder();
     for (int i = levels.Length - 1; i >= 0; i--) {
         var level = levels[i];
         if (predicate(level)) {
             return level.name;
         }
     }
     
     return null;
 }
예제 #3
0
 /// <summary>
 /// Finds the last name of the level, that predicate returns <code>true</code> value.
 /// </summary>
 /// <returns>The last found level or <code>null<code> if not found.</returns>
 /// <param name="predicate">The predicate.</param>
 public static string FindLastLevelName(LevelPredicate predicate) {
     return FindLastLevelName(null, predicate);
 }
예제 #4
0
    /// <summary>
    /// Finds the last name of the level, that predicate returns <code>true</code> value.
    /// </summary>
    /// <returns>The last found level or <code>null<code> if not found.</returns>
    /// <param name="predicate">The predicate.</param>
    public static string FindLastLevelName(string groupName, LevelPredicate predicate) {
        CheckHasConfiguration();

        MadLevelConfiguration.Group group = null;
        if (groupName != null) {
            group = activeConfiguration.FindGroupByName(groupName);
            if (group == null) {
                Debug.LogError("Cannot find group named " + groupName);
                return null;
            }
        }

        var levels = activeConfiguration.GetLevelsInOrder();
        for (int i = levels.Length - 1; i >= 0; i--) {
            var level = levels[i];

            if (group != null && level.groupId != group.id) {
                continue;
            }

            if (predicate(level)) {
                return level.name;
            }
        }

        return null;
    }
예제 #5
0
파일: MadLevel.cs 프로젝트: kewls74/game1
 /// <summary>
 /// Finds the last name of the level, that predicate returns <code>true</code> value.
 /// </summary>
 /// <returns>The last found level or <code>null<code> if not found.</returns>
 /// <param name="predicate">The predicate.</param>
 public static string FindLastLevelName(LevelPredicate predicate) {
     return FindLastLevelName(null, predicate);
 }