コード例 #1
0
 public bool Load(string saveStr)
 {
     if (saveStr.IsValid())
     {
         UXMLDocument document = new UXMLDocument();
         document.Parse(saveStr);
         achievments.Clear();
         var root = document.Element(saveId);
         foreach (UXMLElement element in root.Elements("achievment"))
         {
             AchievmentInfo info = new AchievmentInfo(element);
             achievments.Add(info.Id, info);
         }
         foreach (AchievmentData data in resourceService.achievmentList)
         {
             AchievmentInfo dumpInfo = GetAchievment(data);
         }
         isLoaded = true;
     }
     else
     {
         InitSave();
     }
     return(isLoaded);
 }
コード例 #2
0
        public void RewardAchievment(string id)
        {
            AchievmentInfo info = GetAchievment(id);

            if (info.HasReward)
            {
                AchievmentTierData nextTierData = info.NextTier;
                if (nextTierData != null)
                {
                    engine.Cast <RavenhillEngine>().DropItems(new List <DropItem> {
                        nextTierData.rewardItem
                    });
                    info.GoToNextTier();
                    RavenhillEvents.OnAchievmentRewarded(info.Data, nextTierData);
                }
            }
        }
コード例 #3
0
ファイル: Events.cs プロジェクト: OlegGelezcov/Casual
 public static void OnTierAchieved(AchievmentInfo info, AchievmentTierData data)
 {
     TierAchieved?.Invoke(info, data);
 }