Browse Source

Added achievement override event

James Peret 2 years ago
parent
commit
931819fcd1
1 changed files with 8 additions and 0 deletions
  1. 8 0
      Runtime/AchievementsController.cs

+ 8 - 0
Runtime/AchievementsController.cs

@@ -14,6 +14,7 @@ namespace KairoEngine.Achievements
     {
         public string achievementUnlockedEvent = "AchievementUnlockedEvent";
         public string achievementLockedEvent = "AchievementLockedEvent";
+        public string achievementOverrideEvent = "AchievementOverrideEvent";
        
         public bool CheckOnStart = true;
         public bool checkOnInterval = true;
@@ -51,6 +52,7 @@ namespace KairoEngine.Achievements
             });
             GenericEvents.StartListening("UnlockAchievement", UnlockAchievement);
             GenericEvents.StartListening("LockAchievement", LockAchievement);
+            GenericEvents.StartListening(achievementOverrideEvent, ChangeAchievement);
             
         }
 
@@ -59,6 +61,12 @@ namespace KairoEngine.Achievements
             if (timerComposite != null) timerComposite.Dispose();
         } 
 
+        public void ChangeAchievement(string identifier, bool unlock)
+        {
+            if(unlock) UnlockAchievement(identifier);
+            else LockAchievement(identifier);
+        }
+
         public void CheckAchievements()
         {
             //if(debug) Debug.Log($"Checking achievements ({achievementsStatus.Count})");