少年修仙传客户端代码仓库
Client_PangDeRong
2018-12-11 3b30e3727c01050a56ba16e6ba0240a2ec2bfaad
5398 子 【开发】【1.4】跨服竞技场 / 【前端】【1.4】跨服竞技场开发
5个文件已修改
117 ■■■■ 已修改文件
Core/NetworkPackage/DTCFile/ServerPack/H04_Scene/DTC0431_tagTimeTick.cs 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HAC_Activity/DTCAC04_tagGCXMZZFightInfo.cs 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Stage/Dungeon/DungeonStage.cs 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/HeavenBattle/BattlePrepareCoolDownWin.cs 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/HeavenBattle/HeavenBattleModel.cs 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/H04_Scene/DTC0431_tagTimeTick.cs
@@ -6,8 +6,25 @@
public class DTC0431_tagTimeTick : DtcBasic {
    public override void Done(GameNetPackBasic vNetPack) {
        base.Done(vNetPack);
        H0431_tagTimeTick vNetData = vNetPack as H0431_tagTimeTick;
        H0431_tagTimeTick vNetData = vNetPack as H0431_tagTimeTick;
        var dungeonModel = ModelCenter.Instance.GetModel<DungeonModel>();
        dungeonModel.UpdateCoolDown((DungeonCoolDownType)vNetData.Type,vNetData.Tick);
        if((DungeonCoolDownType)vNetData.Type == DungeonCoolDownType.WaitStart)
        {
            var mapId = PlayerDatas.Instance.baseData.MapID;
            switch (mapId)
            {
                case HeavenBattleModel.HEAVEBATTLE_MAPID:
                    ModelCenter.Instance.GetModel<HeavenBattleModel>().SetBattleStart();
                    WindowCenter.Instance.CloseImmediately<DungeonBeginCoolDownWin>();
                    WindowCenter.Instance.CloseImmediately<DungeonEndCoolDownWin>();
                    if (!WindowCenter.Instance.IsOpen<BattlePrepareCoolDownWin>())
                    {
                        WindowCenter.Instance.Open<BattlePrepareCoolDownWin>();
                    }
                    break;
            }
        }
    }
}
Core/NetworkPackage/DTCFile/ServerPack/HAC_Activity/DTCAC04_tagGCXMZZFightInfo.cs
@@ -18,12 +18,6 @@
        base.Done(vNetPack);
        HAC04_tagGCXMZZFightInfo vNetData = vNetPack as HAC04_tagGCXMZZFightInfo;
        var mapId = PlayerDatas.Instance.baseData.MapID;
        if (mapId == HeavenBattleModel.HEAVEBATTLE_MAPID)
        {
            heavenModel.SetBattleStart();
        }
        #region 战斗部分数据解析
        FuncConfigConfig _funcConfig = Config.Instance.Get<FuncConfigConfig>("XMZZRobot");
Fight/Stage/Dungeon/DungeonStage.cs
@@ -10,11 +10,6 @@
    public static Dictionary<MapArea.E_Type, List<MapArea>> s_MapAreaDict;
    public static MapType CurrentMapType;
    HeavenBattleModel _heavenModel;
    HeavenBattleModel heavenModel {
        get { return _heavenModel ?? (_heavenModel = ModelCenter.Instance.GetModel<HeavenBattleModel>()); }
    }
    public override void Initialize()
    {
        base.Initialize();
@@ -227,11 +222,6 @@
                break;
            case FairyLeagueModel.FAIRY_LEAGUE_DUNGEON:
                SnxxzGame.Instance.StartCoroutine(Co_EnterDungeon(mapId));
                break;
            case HeavenBattleModel.HEAVEBATTLE_MAPID:
                WindowCenter.Instance.CloseImmediately<DungeonBeginCoolDownWin>();
                WindowCenter.Instance.CloseImmediately<DungeonEndCoolDownWin>();
                heavenModel.SetBattleStart();
                break;
            case 31170:
                WindowCenter.Instance.CloseImmediately<DungeonStageTimeWin>();
System/HeavenBattle/BattlePrepareCoolDownWin.cs
@@ -13,13 +13,16 @@
        [SerializeField] Image virtualDownImage;
        [SerializeField] Image coolDownImg;
        HeavenBattleModel _heavenModel;
        HeavenBattleModel heavenModel
        {
            get { return _heavenModel ?? (_heavenModel = ModelCenter.Instance.GetModel<HeavenBattleModel>()); }
        DungeonModel m_Model;
        DungeonModel model
        {
            get
            {
                return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<DungeonModel>());
            }
        }
        DateTime beginTime = DateTime.Now;
        int coolTime = -1;
        protected override void BindController()
        {
@@ -31,40 +34,57 @@
        }
        protected override void OnPreOpen()
        {
            coolTime = -1;
            virtualDownImage.gameObject.SetActive(true);
            coolDownImg.gameObject.SetActive(true);
            scaleTween.SetStartState();
            virtualscaleTween.SetStartState();
        }
        protected override void OnActived()
        {
            base.OnActived();
            heavenModel.RefreshBattlePrepareTimeAct += RefreshPrepareTime;
            RefreshPrepareTime((int)heavenModel.battlePrepareTime);
            //scaleTween.Play();
            beginTime = model.GetCoolDownEndTime(DungeonCoolDownType.WaitStart);
        }
        protected override void OnAfterOpen()
        {
        }
        protected override void OnPreClose()
        {
            heavenModel.RefreshBattlePrepareTimeAct -= RefreshPrepareTime;
        }
        protected override void OnAfterClose()
        {
        }
        protected override void LateUpdate()
        {
            base.LateUpdate();
            UpdateCoolTime();
        }
        private void UpdateCoolTime()
        {
            if (beginTime > DateTime.Now)
            {
                var surplusTime = Mathf.Clamp((int)(beginTime - DateTime.Now).TotalSeconds, 0, int.MaxValue);
                if (coolTime != surplusTime)
                {
                    coolTime = surplusTime;
                    RefreshPrepareTime(surplusTime);
                }
            }
            else
            {
                CloseWin();
            }
        }
        private void RefreshPrepareTime(int time)
        {
            switch (time)
            {
                case 3:
                case 2:
                    coolDownImg.SetSprite("XMZZCoolDown3");
                    virtualDownImage.SetSprite("XMZZCoolDown3");
                    scaleTween.Play(() => {
@@ -72,7 +92,7 @@
                        virtualscaleTween.Play();
                    });
                    break;
                case 2:
                case 1:
                    coolDownImg.SetSprite("XMZZCoolDown2");
                    virtualDownImage.SetSprite("XMZZCoolDown2");
                    scaleTween.Play(() => {
@@ -80,7 +100,7 @@
                        virtualscaleTween.Play();
                    });
                    break;
                case 1:
                case 0:
                    coolDownImg.SetSprite("XMZZCoolDown1");
                    virtualDownImage.SetSprite("XMZZCoolDown1");
                    scaleTween.Play(() => {
System/HeavenBattle/HeavenBattleModel.cs
@@ -204,35 +204,11 @@
    public void SetBattleStart()
    {
        WindowCenter.Instance.CloseImmediately<DungeonEndCoolDownWin>();
        battlePrepareTime = 3;
        IsBattlePrepare = true;
        if (WindowCenter.Instance.IsOpen<DungeonEndCoolDownWin>())
        {
            WindowCenter.Instance.CloseImmediately<DungeonEndCoolDownWin>();
        }
        if (!WindowCenter.Instance.IsOpen<BattlePrepareCoolDownWin>())
        {
            WindowCenter.Instance.Open<BattlePrepareCoolDownWin>();
        }
        TimeDownMgr.Instance.Begin(TimeDownMgr.CoolTimeType.BattlePrepareTime, battlePrepareTime, RefreshBattlePrepareTime);
    }
    public event Action<int> RefreshBattlePrepareTimeAct;
    private void RefreshBattlePrepareTime(float time)
    {
        battlePrepareTime = time;
        if(time > 0)
        {
            if (RefreshBattlePrepareTimeAct != null)
            {
                RefreshBattlePrepareTimeAct(Mathf.RoundToInt(time));
            }
        }
    }
    private void ClosePrepareCool(Window win)
    {