Exemplo n.º 1
0
    private void CheckDistanceAchievements(int currentDistance)
    {
        //Debug.Log("DistAchCount:" + distanceAchievements.Count + " index:" + distanceAchievementIndex);
        DistanceAchievement achievement = distanceAchievements[distanceAchievementIndex];
        bool achievementReached         = currentDistance == achievement.targetCount;

        // Debug.Log("[" + distanceAchievementIndex + "]Checking distance achievement " + currentDistance + " / " + achievement.targetCount);
        if (achievementReached)
        {
            onReachAchievement?.Invoke(achievement);
            if (distanceAchievementIndex < distanceAchievements.Count - 1)
            {
                distanceAchievementIndex++;
                dataHandler.SetDistanceAchievementIndex(distanceAchievementIndex);
            }
        }
    }
Exemplo n.º 2
0
    private void LoadAchievements()
    {
        fireAchievements     = new List <FireExtinctAchievement>();
        distanceAchievements = new List <DistanceAchievement>();
        ICollection keys = LocalizationSystem.GetKeys();

        foreach (string key in keys)
        {
            if (key.StartsWith("_ach_t_f-"))   //fire achievements
            {
                string[] countText   = key.Split('-')[1].Split('_');
                int      count       = int.Parse(countText[0]);
                int      index       = int.Parse(countText[1]);
                string   title       = "_ach_t_f-" + count + "_" + index;
                string   description = "_ach_d_f-" + count + "_" + index;;
                FireExtinctAchievement achievement = new FireExtinctAchievement();
                achievement.achievementTitle      = title;
                achievement.achievmentDescription = description;
                achievement.targetCount           = count;
                fireAchievements.Add(achievement);
            }

            if (key.StartsWith("_ach_t_d-"))   //distance achievements
            {
                string[]            countText   = key.Split('-')[1].Split('_');
                int                 count       = int.Parse(countText[0]);
                int                 index       = int.Parse(countText[1]);
                string              title       = "_ach_t_d-" + count + "_" + index;
                string              description = "_ach_d_d-" + count + "_" + index;;
                DistanceAchievement achievement = new DistanceAchievement();
                achievement.achievementTitle      = title;
                achievement.achievmentDescription = description;
                achievement.targetCount           = count;
                distanceAchievements.Add(achievement);
            }
        }
        fireAchievementIndex     = dataHandler.fireAchievementIndex;
        distanceAchievementIndex = dataHandler.distanceAchievementIndex;
        //Debug.Log("Achievements loaded");
    }