Exemple #1
0
 public override void OnFetchData(EB.Sparx.Response res, int id)
 {
     LoadingSpinner.Hide();
     if (res.sucessful)
     {
         List <Hotfix_LT.Data.TimeLimitActivityStageTemplate> stageTmps = Hotfix_LT.Data.EventTemplateManager.Instance.GetTimeLimitActivityStages(ActivityId);
         if (LTHotfixManager.GetManager <TaskManager>().CurrentIndex < stageTmps.Count - 1)
         {
             LTHotfixManager.GetManager <TaskManager>().CurrentIndex++;
         }
         string cachePath;
         cachePath = "user_prize_data.taskacm_reward." + m_Chest.StageData.Id;
         DataLookupsCache.Instance.CacheData(cachePath, true);
         //上传友盟获得钻石,任务
         int hcCount = 0;
         List <LTShowItemData> mlist = m_Chest.StageData.Awards;
         for (int i = 0; i < mlist.Count; i++)
         {
             if (mlist[i].id == "hc")
             {
                 hcCount += mlist[i].count;
             }
         }
         FusionTelemetry.PostBonus(hcCount, Umeng.GA.BonusSource.Source2);
         GlobalMenuManager.Instance.Open("LTShowRewardView", m_Chest.StageData.Awards);
         UpdateChest();
     }
     else
     {
         res.CheckAndShowModal();
         //SparxHub.Instance.FatalError(res.localizedError);
     }
 }
Exemple #2
0
 public override void OnFetchData(EB.Sparx.Response res, int reqInstanceID)
 {
     LoadingSpinner.Hide();
     if (res.sucessful)
     {
         string key       = mTaskType == eTaskType.Normal?"user_prize_data.taskliveness_reward.":"user_prize_data.taskliveness_week_reward.";
         string cachePath = key + m_CurrReceiveChest.StageData.Id;
         DataLookupsCache.Instance.CacheData(cachePath, true);
         //上传友盟获得钻石,任务
         int hcCount = 0;
         List <LTShowItemData> mlist = m_CurrReceiveChest.StageData.Awards;
         for (int i = 0; i < mlist.Count; i++)
         {
             if (mlist[i].id == "hc")
             {
                 hcCount += mlist[i].count;
             }
         }
         FusionTelemetry.PostBonus(hcCount, Umeng.GA.BonusSource.Source2);
         GlobalMenuManager.Instance.Open("LTShowRewardView", m_CurrReceiveChest.StageData.Awards);
     }
     else
     {
         res.CheckAndShowModal();
     }
 }
Exemple #3
0
        private void ShowAward(Hashtable data)
        {
            if (data == null)
            {
                return;
            }
            if (data.ContainsKey("inventory"))
            {
                var allInventoryData = data["inventory"] as Hashtable;
                foreach (ICollection curInventory in allInventoryData.Values)
                {
                    var inventoryId = EB.Dot.String("inventory_id", curInventory, string.Empty);

                    var inventoryCurNumValue = EB.Dot.Integer("num", curInventory, 0);

                    var inventoryFormerNum = 0;
                    DataLookupsCache.Instance.SearchIntByID("inventory." + inventoryId + ".num", out inventoryFormerNum);
                    if (inventoryCurNumValue > inventoryFormerNum)
                    {
                        var itemData = new LTShowItemData(EB.Dot.String("economy_id", curInventory, string.Empty), inventoryCurNumValue - inventoryFormerNum, LTShowItemType.TYPE_GAMINVENTORY);
                        //上传友盟获得钻石,道具
                        if (itemData.id == "hc")
                        {
                            FusionTelemetry.PostBonus(itemData.count, Umeng.GA.BonusSource.Source8);
                        }
                        GameUtils.ShowAwardMsg(itemData);
                    }
                }
            }
            if (data.ContainsKey("heroStats"))
            {
                var heroStatsData = data["heroStats"] as Hashtable;
                foreach (ICollection curHeroStat in heroStatsData.Values)
                {
                    var shardId = EB.Dot.String("id", curHeroStat, string.Empty);

                    var curNumValue = EB.Dot.Integer("shard", curHeroStat, 0);

                    var formerNum    = 0;
                    var characterId  = EB.Dot.String("character_id", curHeroStat, string.Empty);
                    var templateId   = EB.Dot.String("template_id", curHeroStat, string.Empty);
                    var convertShard = EB.Dot.Bool("convertShard", curHeroStat, false);
                    if (!convertShard)
                    {
                        var itemData = new LTShowItemData(templateId, 1, "hero");
                        LTInventoryAllController.SetShowAwardsQueue(itemData);
                    }
                    DataLookupsCache.Instance.SearchIntByID("heroStats." + shardId + ".shard", out formerNum);
                    if (curNumValue > formerNum)
                    {
                        var itemData = new LTShowItemData(characterId, curNumValue - formerNum, LTShowItemType.TYPE_HEROSHARD);
                        GameUtils.ShowAwardMsg(itemData);
                    }
                }
                Messenger.Raise(Hotfix_LT.EventName.InventoryEvent);
            }
            dataLookup.ShowAward();
        }