| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899 | 
							- using System.Collections.Generic;
 
- using System.Collections;
 
- // using System;
 
- using UnityEngine;
 
- namespace GFGGame
 
- {
 
-     public class StoryBonusDataCache
 
-     {
 
-         private static Dictionary<int, StoryBonusData> _bonusDic = new Dictionary<int, StoryBonusData>();
 
-         public static List<ItemData> GetBonusList(int levelID, bool hasOnce, bool showRandom = false)
 
-         {
 
-             StoryBonusData bonusData = GetBonusData(levelID);
 
-             List<ItemData> bonusList = new List<ItemData>();
 
-             if (hasOnce)
 
-             {
 
-                 bonusList.AddRange(bonusData.bonusOnce);
 
-             }
 
-             if (bonusData.bonusBase != null)
 
-             {
 
-                 bonusList.AddRange(bonusData.bonusBase);
 
-             }
 
-             if (showRandom)
 
-             {
 
-                 if (bonusData.bonusRandom != null && bonusData.bonusRandom.Count > 0)
 
-                 {
 
-                     bonusList.AddRange(bonusData.bonusRandom);
 
-                 }
 
-             }
 
-             return bonusList;
 
-         }
 
-         public static List<ItemData> GetBaseBonusList(int levelID)
 
-         {
 
-             StoryBonusData bonusData = GetBonusData(levelID);
 
-             if (bonusData.bonusBase != null)
 
-             {
 
-                 return bonusData.bonusBase;
 
-             }
 
-             return null;
 
-         }
 
-         public static List<ItemData> GetChapterBonusList(int chapterID, int index)
 
-         {
 
-             StoryChapterCfg chapterCfg = StoryChapterCfgArray.Instance.GetCfg(chapterID);
 
-             int[][] bonus = chapterCfg.bonus1Arr;
 
-             if (index == 1)
 
-             {
 
-                 bonus = chapterCfg.bonus2Arr;
 
-             }
 
-             else if (index == 2)
 
-             {
 
-                 bonus = chapterCfg.bonus3Arr;
 
-             }
 
-             return ItemUtil.CreateItemDataList(bonus);
 
-         }
 
-         public static int GetChapterBonusStar(int chapterID, int index)
 
-         {
 
-             StoryChapterCfg chapterCfg = StoryChapterCfgArray.Instance.GetCfg(chapterID);
 
-             int star = chapterCfg.bonusStar1;
 
-             if (index == 1)
 
-             {
 
-                 star = chapterCfg.bonusStar2;
 
-             }
 
-             else if (index == 2)
 
-             {
 
-                 star = chapterCfg.bonusStar3;
 
-             }
 
-             return star;
 
-         }
 
-         public static StoryBonusData GetBonusData(int levelID)
 
-         {
 
-             StoryBonusData bonusData = null;
 
-             if (!_bonusDic.ContainsKey(levelID))
 
-             {
 
-                 bonusData = new StoryBonusData();
 
-                 _bonusDic.Add(levelID, bonusData);
 
-                 StoryLevelCfg levelCfg = StoryLevelCfgArray.Instance.GetCfg(levelID);
 
-                 bonusData.bonusOnce = ItemUtil.CreateItemDataList(levelCfg.bonusOnceArr, true);
 
-                 if (levelCfg.fightID != null && levelCfg.fightID.Length > 0)
 
-                 {
 
-                     StoryFightCfg fightCfg = StoryFightCfgArray.Instance.GetCfg(levelCfg.fightID);
 
-                     bonusData.bonusBase = ItemUtil.CreateItemDataList(fightCfg.bonusBaseArr);
 
-                     bonusData.bonusRandom = DropOutDataCache.GetDropItemDatas(fightCfg.bonusRandomArr, false);
 
-                 }
 
-             }
 
-             else
 
-             {
 
-                 bonusData = _bonusDic[levelID];
 
-             }
 
-             return bonusData;
 
-         }
 
-     }
 
- }
 
 
  |