少年修仙传客户端代码仓库
client_Wu Xijin
2018-08-20 d5630edd798fcd3caefa480334d32cd4f969f088
Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
6个文件已修改
4个文件已添加
216 ■■■■ 已修改文件
Core/GameEngine/Model/Config/TrialRewardsConfig.cs 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Config/TrialRewardsConfig.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/ConfigManager.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/BlastFurnace/BlastFurnaceModel.cs 64 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/BlastFurnace/LingDanTips.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TrialDungeonEntranceWin.cs 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TrialDungeonModel.cs 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TrialRewardsBehaviour.cs 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Dungeon/TrialRewardsBehaviour.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/OpenServerActivity/InSevenDayModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Config/TrialRewardsConfig.cs
New file
@@ -0,0 +1,52 @@
//--------------------------------------------------------
//    [Author]:            第二世界
//    [  Date ]:           Monday, August 20, 2018
//--------------------------------------------------------
using UnityEngine;
using System;
namespace TableConfig {
    public partial class TrialRewardsConfig : ConfigBase {
        public int id { get ; private set ; }
        public int lineId { get ; private set ; }
        public int grade { get ; private set ; }
        public int[] rewards;
        public override string getKey()
        {
            return id.ToString();
        }
        public override void Parse() {
            try
            {
                id=IsNumeric(rawContents[0]) ? int.Parse(rawContents[0]):0;
                lineId=IsNumeric(rawContents[1]) ? int.Parse(rawContents[1]):0;
                grade=IsNumeric(rawContents[2]) ? int.Parse(rawContents[2]):0;
                string[] rewardsStringArray = rawContents[3].Trim().Split(StringUtility.splitSeparator,StringSplitOptions.RemoveEmptyEntries);
                rewards = new int[rewardsStringArray.Length];
                for (int i=0;i<rewardsStringArray.Length;i++)
                {
                     int.TryParse(rewardsStringArray[i],out rewards[i]);
                }
            }
            catch (Exception ex)
            {
                DebugEx.Log(ex);
            }
        }
    }
}
Core/GameEngine/Model/Config/TrialRewardsConfig.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: ee2212e198950744b9c7524b9d74d042
timeCreated: 1534748051
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Core/GameEngine/Model/ConfigManager.cs
@@ -187,6 +187,7 @@
        AddAsyncTask<AllPeoplePartyAwardConfig>();
        AddAsyncTask<OrderInfoConfig>();
        AddAsyncTask<TrialExchangeConfig>();
        AddAsyncTask<TrialRewardsConfig>();
        while (!AllCompleted())
        {
System/BlastFurnace/BlastFurnaceModel.cs
@@ -83,15 +83,18 @@
        treasureRefineDict.Clear();
        FuncOpen.Instance.OnFuncStateChangeEvent -= RefreshFuncOpenState;
        playerPack.RefreshItemCountAct -= RefreshMat;
        playerPack.ItemCntReduceAct -= RefreshDanReduce;
        playerPack.RefreshItemSumUseCntAct -= RefreshItemUsce;
        WindowCenter.Instance.windowAfterCloseEvent -= StoveUpgradAfterClose;
    }
    public void OnAfterPlayerDataInitialize()
    {
        playerPack.RefreshItemCountAct += RefreshMat;
        FuncOpen.Instance.OnFuncStateChangeEvent += RefreshFuncOpenState;
        playerPack.RefreshItemSumUseCntAct += RefreshItemUsce;
        WindowCenter.Instance.windowAfterCloseEvent += StoveUpgradAfterClose;
        playerPack.ItemCntReduceAct += RefreshDanReduce;
    }
    private void RefreshFuncOpenState(int funcId)
@@ -141,13 +144,14 @@
    /// 得到服务端的炼丹炉数据
    /// </summary>
    private int _stovelv = 1;
    private int preStoveLv = 1;
    public int StoveLV { get { return _stovelv; } }    // 炼丹炉等级
    private int _stoveExp = 0;
    public int StoveExp { get { return _stoveExp; } }    // 炼丹炉经验 
    public int addExp = 0;
    public event Action RefreshStoveModelEvent;
    public int makerItemID { get; private set; }
    public bool StoveIsUpGrade { get; private set; }
    public void RefreshBlastFurnaceModel(HA3BF_tagMCPlayerStoveMsg data)
    {
        DebugEx.Log("RefreshBlastFurnaceModel");
@@ -163,6 +167,17 @@
        if(!isFirstGet)
        {
            isMakeDan = true;
            if(preStoveLv < data.StoveLV)
            {
                preStoveLv = data.StoveLV;
                StoveIsUpGrade = true;
            }
            else
            {
                preStoveLv = data.StoveLV;
                StoveIsUpGrade = false;
            }
            PlayRecycleGuid();
        }
        else
        {
@@ -175,23 +190,6 @@
        if(makerItemID == 0 && addExp > 0)
        {
            SysNotifyMgr.Instance.ShowTip("RecyclingElixir", addExp);
        }
    }
    /// <summary>
    /// 判断炼丹炉是否升级
    /// </summary>
    private int preStoveLv = 1;
    public bool IsUpgrade(int stoveLv)
    {
        if (preStoveLv >= stoveLv)
        {
            return false;
        }
        else
        {
            preStoveLv = stoveLv;
            return true;
        }
    }
@@ -716,6 +714,8 @@
        {
            CheckMakerDandrugCondition();
            CheckRecycleStoreRed();
            StoveIsUpGrade = false;
            PlayRecycleGuid();
        }
    }
@@ -868,6 +868,32 @@
        }
        return false;
    }
    private void StoveUpgradAfterClose(Window win)
    {
        if (win.name != "StoveUpgradWin") return;
        StoveIsUpGrade = false;
        PlayRecycleGuid();
    }
    private void RefreshDanReduce(PackType type, int index, int id)
    {
        if (type != PackType.rptItem || !playerPack.CheckIsDrugById(id)) return;
        StoveIsUpGrade = false;
        PlayRecycleGuid();
    }
    public void PlayRecycleGuid()
    {
        if (IsRecycleDanDrug()
            && !NewBieCenter.Instance.completeGuidesBuf.Contains(93)
            && !StoveIsUpGrade)
        {
            NewBieCenter.Instance.StartNewBieGuide(93);
        }
    }
    #endregion
    #region 回收丹药逻辑处理
System/BlastFurnace/LingDanTips.cs
@@ -209,7 +209,7 @@
                _expValueText.text = Language.Get("L1055");
            }
            RefreshVirtualFill(_addExp);
            if (FurnaceModel.IsUpgrade(FurnaceModel.StoveLV))
            if (FurnaceModel.StoveIsUpGrade)
            {
                ActivateShow.StoveUpgrade(FurnaceModel.StoveLV);
                CreateCell();
System/Dungeon/TrialDungeonEntranceWin.cs
@@ -40,8 +40,8 @@
        [SerializeField] Image m_BossRealm;
        [SerializeField] Text m_BossName;
        [SerializeField]
        ItemBehaviour[] m_RewardBehaviours;
        [SerializeField] TrialRewardsBehaviour[] m_RewardBehaviours;
        [SerializeField] ScrollRect m_RewardScroller;
        DungeonModel m_Model;
        DungeonModel model {
@@ -58,6 +58,8 @@
        }
        DailyQuestModel dailyQuestModel { get { return ModelCenter.Instance.GetModel<DailyQuestModel>(); } }
        TrialDungeonModel trialDungeonModel { get { return ModelCenter.Instance.GetModel<TrialDungeonModel>(); } }
        #region Built-in
        protected override void BindController()
@@ -184,16 +186,17 @@
        private void DrawRewards()
        {
            m_RewardScroller.verticalNormalizedPosition = 1;
            var dongeonId = model.DungeonMap(model.selectedTrialDungeon);
            var config = ConfigManager.Instance.GetTemplate<DungeonConfig>(dongeonId);
            var rewards = config.Rewards;
            for (int i = 0; i < m_RewardBehaviours.Length; i++)
            {
                var behaviour = m_RewardBehaviours[i];
                if (i < rewards.Length)
                int[] rewards = null;
                if (trialDungeonModel.TryGetTrialRewards(config.LineID, m_RewardBehaviours[i].grade, out rewards))
                {
                    behaviour.gameObject.SetActive(true);
                    behaviour.SetItem(rewards[i], 0);
                    behaviour.Display(rewards);
                }
                else
                {
System/Dungeon/TrialDungeonModel.cs
@@ -10,6 +10,7 @@
    {
        Dictionary<int, List<TrialExchangeConfig>> trialTokenExchangeDict = new Dictionary<int, List<TrialExchangeConfig>>();
        Dictionary<int, int> lineToTokenClassDict;
        Dictionary<int, Dictionary<int, int[]>> trialRewardDict = new Dictionary<int, Dictionary<int, int[]>>();
        public Dictionary<int, List<int>> trialClassTokens = new Dictionary<int, List<int>>();
        public List<int> trialTokens = new List<int>();
        PlayerPackModel packModel { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } }
@@ -78,6 +79,18 @@
            }
            var funcConfig = ConfigManager.Instance.GetTemplate<FuncConfigConfig>("LineToItemStage");
            lineToTokenClassDict = ConfigParse.GetDic<int, int>(funcConfig.Numerical1);
            var trialRewards = ConfigManager.Instance.GetAllValues<TrialRewardsConfig>();
            for (int i = 0; i < trialRewards.Count; i++)
            {
                Dictionary<int, int[]> dict = null;
                if (!trialRewardDict.TryGetValue(trialRewards[i].lineId, out dict))
                {
                    dict = new Dictionary<int, int[]>();
                    trialRewardDict.Add(trialRewards[i].lineId, dict);
                }
                dict.Add(trialRewards[i].grade, trialRewards[i].rewards);
            }
        }
        public override void UnInit()
@@ -140,6 +153,20 @@
            return trialTokenExchangeDict.TryGetValue(lv, out list);
        }
        public bool TryGetTrialRewards(int lineId, int grade, out int[] rewards)
        {
            rewards = null;
            if (trialRewardDict.ContainsKey(lineId))
            {
                if (trialRewardDict[lineId].ContainsKey(grade))
                {
                    rewards = trialRewardDict[lineId][grade];
                    return rewards != null && rewards.Length > 0;
                }
            }
            return false;
        }
        public List<int> GetTotalClass()
        {
            return trialTokenExchangeDict.Keys.ToList();
System/Dungeon/TrialRewardsBehaviour.cs
New file
@@ -0,0 +1,31 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace Snxxz.UI
{
    public class TrialRewardsBehaviour : MonoBehaviour
    {
        [SerializeField] int m_Grade;
        [SerializeField] ItemBehaviour[] m_ItemBehaviours;
        public int grade { get { return m_Grade; } }
        public void Display(int[] rewards)
        {
            for (int i = 0; i < m_ItemBehaviours.Length; i++)
            {
                var behaviour = m_ItemBehaviours[i];
                if (i < rewards.Length)
                {
                    behaviour.gameObject.SetActive(true);
                    behaviour.SetItem(rewards[i], 0);
                }
                else
                {
                    behaviour.gameObject.SetActive(false);
                }
            }
        }
    }
}
System/Dungeon/TrialRewardsBehaviour.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: f436f3dabd50bc5429d2de289d60fdd5
timeCreated: 1534749125
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
System/OpenServerActivity/InSevenDayModel.cs
@@ -182,7 +182,7 @@
        }
        if (Bool)
        {
            redPointStre1.state = RedPointState.Simple;
            redPointStre1.state = RedPointState.GetReward;
        }
    }
}