少年修仙传客户端代码仓库
client_linchunjie
2018-09-03 fd0355c6c9a8c18126376e474d0e35f4ad57e10b
3160 仙盟联赛添加仙盟等级限制
7个文件已修改
2个文件已添加
201 ■■■■ 已修改文件
Core/GameEngine/Model/Player/Fairy/PlayerFairyData.cs 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ClientPack/ClientToGameServer/CA4_Family/CA412_tagCGPySearchFamily.cs 26 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/ClientPack/ClientToGameServer/CA4_Family/CA412_tagCGPySearchFamily.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HA4_Family/DTCA408_tagGCPyAllFamilyView.cs 47 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Activity/ActivityModel.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/DailyQuest/DailyQuestModel.cs 24 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyLeagueModel.cs 41 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyLeagueWin.cs 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/FairyAu/FairyModel.cs 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/GameEngine/Model/Player/Fairy/PlayerFairyData.cs
@@ -194,6 +194,11 @@
    private List<FairyData> searchList = new List<FairyData>();
    public void OnRefreshFairy(HA408_tagGCPyAllFamilyView vNetData)
    {
        if (vNetData.IsSearching == 100)
        {
            return;
        }
        isSearching = vNetData.IsSearching == 1;
        if (isSearching)
@@ -249,7 +254,7 @@
        return searchList;
    }
    private void SetFairyViewData(FairyData data, HA408_tagGCPyAllFamilyView.tagGCPyFamilyView view)
    public static void SetFairyViewData(FairyData data, HA408_tagGCPyAllFamilyView.tagGCPyFamilyView view)
    {
        data.FamilyID = view.FamilyID;
        data.FamilyIndex = view.FamilyIndex;
Core/NetworkPackage/ClientPack/ClientToGameServer/CA4_Family/CA412_tagCGPySearchFamily.cs
New file
@@ -0,0 +1,26 @@
using UnityEngine;
using System.Collections;
// A4 12 搜索家族 #tagCGPySearchFamily
public class CA412_tagCGPySearchFamily : GameNetPackBasic {
    public byte MsgLen;    //模糊搜索家族,如果输入为空,则为不限制该条件
    public string Msg;    //size = MsgLen
    public byte LV;    //最低家族等级,如果为0,则不限制该条件
    public byte MaxCount;    //搜索结果所需最大条数,后端限制最多返回20条
    public byte IsSearching;    //默认1,如果有指定其他值,则返回指定值
    public CA412_tagCGPySearchFamily () {
        combineCmd = (ushort)0x1801;
        _cmd = (ushort)0xA412;
    }
    public override void WriteToBytes () {
        WriteBytes (MsgLen, NetDataType.BYTE);
        WriteBytes (Msg, NetDataType.Chars, MsgLen);
        WriteBytes (LV, NetDataType.BYTE);
        WriteBytes (MaxCount, NetDataType.BYTE);
        WriteBytes (IsSearching, NetDataType.BYTE);
    }
}
Core/NetworkPackage/ClientPack/ClientToGameServer/CA4_Family/CA412_tagCGPySearchFamily.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 86f2251af19e8114fa4c4315a6c84ed4
timeCreated: 1535794943
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Core/NetworkPackage/DTCFile/ServerPack/HA4_Family/DTCA408_tagGCPyAllFamilyView.cs
@@ -1,23 +1,24 @@
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Saturday, December 30, 2017
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
public class DTCA408_tagGCPyAllFamilyView : DtcBasic {
    public override void Done(GameNetPackBasic vNetPack)
    {
        base.Done(vNetPack);
        var package = vNetPack as HA408_tagGCPyAllFamilyView;
        PlayerDatas.Instance.fairyData.OnRefreshFairy(package);
    }
}
//--------------------------------------------------------
//    [Author]:           第二世界
//    [  Date ]:           Saturday, December 30, 2017
//--------------------------------------------------------
using System;
using System.Collections;
using System.Collections.Generic;
using Snxxz.UI;
public class DTCA408_tagGCPyAllFamilyView : DtcBasic {
    public override void Done(GameNetPackBasic vNetPack)
    {
        base.Done(vNetPack);
        var package = vNetPack as HA408_tagGCPyAllFamilyView;
        PlayerDatas.Instance.fairyData.OnRefreshFairy(package);
        ModelCenter.Instance.GetModel<FairyLeagueModel>().UpdateFrontLeagueFairy(package);
    }
}
System/Activity/ActivityModel.cs
@@ -11,7 +11,7 @@
    public class ActivityModel : Model, IPlayerLoginOk, IBeforePlayerDataInitialize
    {
        HeavenBattleModel battleModel { get { return ModelCenter.Instance.GetModel<HeavenBattleModel>(); } }
        FairyModel fairyModel { get { return ModelCenter.Instance.GetModel<FairyModel>(); } }
        public override void Init()
        {
            var dic = Config.Instance.GetAllValues<DailyQuestConfig>();
@@ -243,6 +243,10 @@
                case DailyQuestType.FairyLeague:
                    {
                        int _error = 0;
                        if (!fairyModel.SatisfyOpenFairyLeagueLv())
                        {
                            return true;
                        }
                        if (!fairyLeagueModel.SatisfyEnterLeague(out _error))
                        {
                            return true;
System/DailyQuest/DailyQuestModel.cs
@@ -214,7 +214,6 @@
        {
            switch ((DailyQuestType)_dailyQuestId)
            {
                case DailyQuestType.FairyLeague:
                case DailyQuestType.FairyFeast:
                case DailyQuestType.FairyTask:
                case DailyQuestType.FairyGrabBoss:
@@ -225,8 +224,12 @@
                    return ModelCenter.Instance.GetModel<RuneTowerModel>().yesterdayPassFloor > 0;
                case DailyQuestType.GuardSky:
                    var _dailyGuardSkyConfig = Config.Instance.Get<DailyQuestConfig>(_dailyQuestId);
                    bool _isOpen = _dailyGuardSkyConfig.UnLockFuncID == 0 || FuncOpen.Instance.IsFuncOpen(_dailyGuardSkyConfig.UnLockFuncID);
                    return fairyModel.SatisfyGuardSkyFairyLv() && _isOpen;
                    bool _isGuardSkyOpen = _dailyGuardSkyConfig.UnLockFuncID == 0 || FuncOpen.Instance.IsFuncOpen(_dailyGuardSkyConfig.UnLockFuncID);
                    return fairyModel.SatisfyGuardSkyFairyLv() && _isGuardSkyOpen;
                case DailyQuestType.FairyLeague:
                    var _dailyFairyLeagueConfig = Config.Instance.Get<DailyQuestConfig>(_dailyQuestId);
                    bool _isFairyLeagueOpen = _dailyFairyLeagueConfig.UnLockFuncID == 0 || FuncOpen.Instance.IsFuncOpen(_dailyFairyLeagueConfig.UnLockFuncID);
                    return fairyModel.SatisfyOpenFairyLeagueLv() && _isFairyLeagueOpen;
                default:
                    var dailyConfig = Config.Instance.Get<DailyQuestConfig>(_dailyQuestId);
                    return dailyConfig.UnLockFuncID == 0 || FuncOpen.Instance.IsFuncOpen(dailyConfig.UnLockFuncID);
@@ -501,6 +504,7 @@
        private void OnRefreshFairyInfo()
        {
            UpdateDailyActionRedpoint((int)DailyQuestType.GuardSky);
            UpdateDailyActionRedpoint((int)DailyQuestType.FairyLeague);
        }
        private void OnPlayerDataRefresh(PlayerDataRefresh _refreshType, int _value)
@@ -880,7 +884,7 @@
        {
            var type = (DailyQuestType)_dailyQuestId;
            var dailyConfig = Config.Instance.Get<DailyQuestConfig>(_dailyQuestId);
            if (type == DailyQuestType.FairyFeast || type == DailyQuestType.FairyLeague || type == DailyQuestType.FairyTask || type == DailyQuestType.FairyGrabBoss)
            if (type == DailyQuestType.FairyFeast || type == DailyQuestType.FairyTask || type == DailyQuestType.FairyGrabBoss)
            {
                if (PlayerDatas.Instance.fairyData.HasFairy)
                {
@@ -892,6 +896,7 @@
                }
            }
            var _fairyModel = ModelCenter.Instance.GetModel<FairyModel>();
            switch (type)
            {
                case DailyQuestType.GuardSky:
@@ -899,12 +904,21 @@
                    {
                        return Language.Get("DailyQuestWin_Participate");
                    }
                    var _fairyModel = ModelCenter.Instance.GetModel<FairyModel>();
                    if (!_fairyModel.SatisfyGuardSkyFairyLv())
                    {
                        return Language.Get("DailyquestXMLevel", _fairyModel.guardSkyOpenFairyLv);
                    }
                    break;
                case DailyQuestType.FairyLeague:
                    if (!PlayerDatas.Instance.fairyData.HasFairy)
                    {
                        return Language.Get("DailyQuestWin_Participate");
                    }
                    if (!_fairyModel.SatisfyOpenFairyLeagueLv())
                    {
                        return Language.Get("DailyquestXMLevel", _fairyModel.fairyLeagueLimit);
                    }
                    break;
            }
            var description = string.Empty;
System/FairyAu/FairyLeagueModel.cs
@@ -82,6 +82,8 @@
            }
        }
        FairyModel fairyModel { get { return ModelCenter.Instance.GetModel<FairyModel>(); } }
        public override void Init()
        {
            ParseConfig();
@@ -103,6 +105,7 @@
        public void OnBeforePlayerDataInitialize()
        {
            ClearFairyWarHelp();
            frontFairyList.Clear();
            fairyLeagueFairyId = 0;
            fairyLeagueFairyName = string.Empty;
        }
@@ -871,6 +874,44 @@
            }
            return 0;
        }
        #region 前16名仙盟列表
        List<PlayerFairyData.FairyData> frontFairyList = new List<PlayerFairyData.FairyData>();
        public event Action frontFairyUpdate;
        public void SearchLeagueFrontFairy()
        {
            CA412_tagCGPySearchFamily pak = new CA412_tagCGPySearchFamily();
            pak.MsgLen = 0;
            pak.Msg = string.Empty;
            pak.IsSearching = 100;
            pak.LV = (byte)fairyModel.fairyLeagueLimit;
            pak.MaxCount = 16;
            GameNetSystem.Instance.SendInfo(pak);
        }
        public void UpdateFrontLeagueFairy(HA408_tagGCPyAllFamilyView package)
        {
            if (package.IsSearching == 100)
            {
                frontFairyList.Clear();
                for (int i = 0; i < package.PageCount; i++)
                {
                    PlayerFairyData.FairyData data = new PlayerFairyData.FairyData();
                    frontFairyList.Add(data);
                    PlayerFairyData.SetFairyViewData(data, package.Family[i]);
                }
                if (frontFairyUpdate != null)
                {
                    frontFairyUpdate();
                }
            }
        }
        public List<PlayerFairyData.FairyData> frontLeagueFairy
        {
            get { return frontFairyList; }
        }
        #endregion
        #endregion
        #region 红点
        private Redpoint m_LeagueRedpoint = new Redpoint(107, 10704);
System/FairyAu/FairyLeagueWin.cs
@@ -92,8 +92,9 @@
            RefreshFairyLeague();
            model.OnRefreshFairyLeagueEvent += RefreshFairyLeague;
            model.onFairyLeagueBattleEvent += UpdateFairyLeagueBattle;
            PlayerDatas.Instance.fairyData.OnRefreshFairyList += UpdateFairyLeagueGroup;
            //PlayerDatas.Instance.fairyData.OnRefreshFairyList += UpdateFairyLeagueGroup;
            kingFairyModel.UpdateKingFairyEvent += UpdateKingFairyEvent;
            model.frontFairyUpdate += FrontFairyUpdate;
        }
        protected override void OnAfterOpen()
@@ -103,8 +104,9 @@
        {
            model.OnRefreshFairyLeagueEvent -= RefreshFairyLeague;
            model.onFairyLeagueBattleEvent -= UpdateFairyLeagueBattle;
            PlayerDatas.Instance.fairyData.OnRefreshFairyList -= UpdateFairyLeagueGroup;
            //PlayerDatas.Instance.fairyData.OnRefreshFairyList -= UpdateFairyLeagueGroup;
            kingFairyModel.UpdateKingFairyEvent -= UpdateKingFairyEvent;
            model.frontFairyUpdate -= FrontFairyUpdate;
        }
        protected override void OnAfterClose()
@@ -118,6 +120,12 @@
        }
        #endregion
        private void FrontFairyUpdate()
        {
            UpdateFairyLeagueGroup();
        }
        private void UpdateKingFairyEvent()
        {
            if (model.fairyLeagueRing == 1 && model.fairyLeagueStage == FairyLeagueStage.Over)
@@ -134,7 +142,7 @@
            m_ContainerTime.localPosition = Vector3.zero;
            if (model.fairyLeagueStage == FairyLeagueStage.Prepare)
            {
                fairyModel.SendSearchFairyList(0, 16);
                model.SearchLeagueFrontFairy();
                RefreshPrepare();
            }
            else
@@ -228,7 +236,7 @@
            }
            for (int i = 0; i < m_FairyNameList.Count; i++)
            {
                List<PlayerFairyData.FairyData> list = PlayerDatas.Instance.fairyData.GetFairyListByPage(0);
                List<PlayerFairyData.FairyData> list = model.frontLeagueFairy;
                for (int j = 0; j < m_FairyNameList[i].fairyNameList.Count; j++)
                {
                    var _adaptive = m_FairyNameList[i].fairyNameList[j];
System/FairyAu/FairyModel.cs
@@ -188,6 +188,8 @@
            guardSkyOpenFairyLv = int.Parse(config.Numerical1);
            config = Config.Instance.Get<FuncConfigConfig>("TechFamilyLV");
            fairyMethodToLimit = int.Parse(config.Numerical1);
            config = Config.Instance.Get<FuncConfigConfig>("FamilyMatchSet");
            fairyLeagueLimit = int.Parse(config.Numerical1);
        }
        #endregion
@@ -699,6 +701,26 @@
        }
        #endregion
        #region 仙盟联赛开启
        public int fairyLeagueLimit
        {
            get; private set;
        }
        public bool SatisfyOpenFairyLeagueLv()
        {
            if (PlayerDatas.Instance.fairyData.HasFairy)
            {
                var fairy = PlayerDatas.Instance.fairyData.fairy;
                if (fairy != null && fairy.FamilyLV >= fairyLeagueLimit)
                {
                    return true;
                }
            }
            return false;
        }
        #endregion
        public bool InFairyLeagueDungeon
        {
            get