少年修仙传客户端代码仓库
client_linchunjie
2018-08-17 5df482a22d9b243cf92bc2d6826a294cff93daee
Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts
5个文件已修改
121 ■■■■ 已修改文件
System/DailyQuest/DailyQuestModel.cs 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/DailyQuest/DailyQuestWin.cs 83 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/Team/TeamModel.cs 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/WindowJump/WindowJumpMgr.cs 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Utility/EnumHelper.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/DailyQuest/DailyQuestModel.cs
@@ -110,7 +110,6 @@
            UpdateRedpoints();
            treasureModel.treasureStageUpEvent += OnTreasureStageUp;
            fairyLeagueModel.onFairyLeagueBattleEvent += OnFairyLeagueBattle;
            dungeonModel.dungeonRecordChangeEvent += OnDungeonRecordChange;
            FuncOpen.Instance.OnFuncStateChangeEvent += OnFunctionStateChange;
@@ -120,7 +119,6 @@
        public override void UnInit()
        {
            treasureModel.treasureStageUpEvent -= OnTreasureStageUp;
            fairyLeagueModel.onFairyLeagueBattleEvent -= OnFairyLeagueBattle;
            dungeonModel.dungeonRecordChangeEvent -= OnDungeonRecordChange;
            FuncOpen.Instance.OnFuncStateChangeEvent -= OnFunctionStateChange;
@@ -497,11 +495,6 @@
            }
        }
        private void OnTreasureStageUp(int _treasureId)
        {
            UpdateDailyActionRedpoint((int)DailyQuestType.TreasureAwaken);
        }
        private void OnFairyLeagueBattle()
        {
            UpdateDailyActionRedpoint((int)DailyQuestType.FairyLeague);
@@ -546,7 +539,7 @@
                            case DailyQuestType.ElderGodArea:
                            case DailyQuestType.DungeonAssist:
                            case DailyQuestType.RuneTower:
                            case DailyQuestType.TreasureAwaken:
                            case DailyQuestType.TreasureCollectSoul:
                                dailyQuest.redpoint.state = RedPointState.None;
                                break;
                            default:
System/DailyQuest/DailyQuestWin.cs
@@ -31,6 +31,7 @@
        DailyQuestModel model { get { return ModelCenter.Instance.GetModel<DailyQuestModel>(); } }
        DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
        PlayerTaskDatas taskModel { get { return ModelCenter.Instance.GetModel<PlayerTaskDatas>(); } }
        TreasureModel treasureModel { get { return ModelCenter.Instance.GetModel<TreasureModel>(); } }
        public int guidingDailyQuestId = 0;
@@ -272,8 +273,8 @@
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
                    WindowCenter.Instance.Open<RuneTowerWin>();
                    break;
                case DailyQuestType.TreasureAwaken:
                    GotoTreasureAwaken();
                case DailyQuestType.TreasureCollectSoul:
                    GotoTreasureCollectSoul();
                    break;
                case DailyQuestType.DungeonAssist:
                    WindowCenter.Instance.CloseImmediately<DailyQuestWin>();
@@ -456,23 +457,58 @@
            }
        }
        private void GotoTreasureAwaken()
        private void GotoTreasureCollectSoul()
        {
            var treasureModel = ModelCenter.Instance.GetModel<TreasureModel>();
            var treasures = treasureModel.GetTreasureCategory(TreasureCategory.Human);
            var gotoTreasureId = 0;
            for (int i = 0; i < treasures.Count; i++)
            for (int i = treasures.Count - 1; i >= 0; i--)
            {
                var treasureId = treasures[i];
                Treasure treasure;
                if (treasureModel.TryGetTreasure(treasureId, out treasure))
                if (IsTreasureCollectSoul(treasures[i]))
                {
                    var humanTreasure = treasure as HumanTreasure;
                    gotoTreasureId = treasures[i];
                    break;
                }
            }
                    if (humanTreasure.castSoulRedpoint.state == RedPointState.Simple)
            if (gotoTreasureId == 0)
            {
                var result = treasures.FindLast((x) =>
                  {
                      Treasure treasure;
                      if (treasureModel.TryGetTreasure(x, out treasure))
                      {
                          var humanTreasure = treasure as HumanTreasure;
                          var config = ConfigManager.Instance.GetTemplate<TreasureConfig>(humanTreasure.id);
                          return humanTreasure != null && (humanTreasure.humanState == HumanTreasureState.CastSoul);
                      }
                      else
                      {
                          return false;
                      }
                  }
                  );
                if (result != 0)
                {
                    gotoTreasureId = result;
                }
            }
            if (gotoTreasureId == 0)
            {
                for (int i = 0; i < treasures.Count; i++)
                {
                    Treasure treasure;
                    if (treasureModel.TryGetTreasure(treasures[i], out treasure))
                    {
                        gotoTreasureId = humanTreasure.id;
                        break;
                        var humanTreasure = treasure as HumanTreasure;
                        if (humanTreasure != null
                            && (humanTreasure.humanState == HumanTreasureState.Locked || humanTreasure.humanState == HumanTreasureState.Challenge))
                        {
                            gotoTreasureId = humanTreasure.id;
                            break;
                        }
                    }
                }
            }
@@ -504,6 +540,31 @@
            }
        }
        private bool IsTreasureCollectSoul(int _treasureId)
        {
            Treasure treasure;
            if (treasureModel.TryGetTreasure(_treasureId, out treasure))
            {
                var humanTreasure = treasure as HumanTreasure;
                if (humanTreasure.humanState == HumanTreasureState.CastSoul)
                {
                    foreach (var achievementGroup in treasure.achievementGroups.Values)
                    {
                        if (achievementGroup.IsAwardable())
                        {
                            return true;
                        }
                    }
                }
                return false;
            }
            else
            {
                return false;
            }
        }
        private bool IsDungeon()//是否在副本中
        {
            var mapId = PlayerDatas.Instance.baseData.MapID;
System/Team/TeamModel.cs
@@ -185,6 +185,8 @@
        Redpoint invitationRedpoint = new Redpoint(28);
        Redpoint memberCountRedpoint = new Redpoint(34);
        int lastOpenCountryMapRecorder = 0;
        public override void Init()
        {
            levelMaxBuf = GeneralConfig.Instance.playerMaxLevel;
@@ -205,6 +207,7 @@
        public void OnSwitchAccount()
        {
            lastOpenCountryMapRecorder = 0;
            m_CurrentMission = new TeamMission(CURRENTMAP_MISSION, 0);
            m_MissionBuf = new TeamMission(CURRENTMAP_MISSION, 0);
            m_MyTeam = new MyTeam();
@@ -336,7 +339,7 @@
                var lineId = 0;
                if (myTeam.mission.mapId == CURRENTMAP_MISSION || myTeam.mission.mapId == NONE_MISSION)
                {
                    mapId = PlayerDatas.Instance.baseData.MapID;
                    mapId = lastOpenCountryMapRecorder == 0 ? PlayerDatas.Instance.baseData.MapID : lastOpenCountryMapRecorder;
                    lineId = 0;
                }
                else
@@ -1097,6 +1100,12 @@
        public void OnPlayerLoginOk()
        {
            serverInited = true;
            var mapConfig = ConfigManager.Instance.GetTemplate<MapConfig>(PlayerDatas.Instance.baseData.MapID);
            if (mapConfig != null && mapConfig.MapFBType == (int)MapType.OpenCountry)
            {
                lastOpenCountryMapRecorder = PlayerDatas.Instance.baseData.MapID;
            }
        }
        private void OnMatchingCoolDownEnd()
System/WindowJump/WindowJumpMgr.cs
@@ -11,8 +11,8 @@
        IsJumpState = false;
        funcOpenBagItem = ConfigManager.Instance.GetTemplate<FuncConfigConfig>("OpenBagItem");
        StageManager.Instance.onStartStageLoadingEvent += ClearCurRecord;
        GlobalTimeEvent.Instance.secondEvent += SecondRefresh;
    }
    private Window preWin = null;
    private WindowSearchConfig _tagWinSearchModel;
    private FuncOpenLVConfig _tagOpenLvModel;
@@ -938,6 +938,20 @@
        }
       
    }
    private void SecondRefresh()
    {
        if (DeadModel.playerIsDie && WindowCenter.Instance.CheckOpen<MainInterfaceWin>())
        {
            if(!WindowCenter.Instance.CheckOpen<RebornWin>()
               && !WindowCenter.Instance.CheckOpen<ReliveWin>()
               && !WindowCenter.Instance.CheckOpen<ElderGodAreaExitWin>()
               && !WindowCenter.Instance.CheckOpen<ElderGodAreaRebornWin>())
            {
                ClearJumpData();
                DeadModel.PlayerDie(PlayerDatas.Instance.baseData.PlayerID);
            }
        }
    }
    public void ClearJumpData()
    {
Utility/EnumHelper.cs
@@ -303,7 +303,7 @@
    FairyTask = 18,
    RuneTowerSweep = 19,
    RuneTower = 21,
    TreasureAwaken = 22,
    TreasureCollectSoul = 22,
    DungeonAssist = 23,
    BossHome = 24,
    PersonalBoss = 25,