少年修仙传客户端代码仓库
client_linchunjie
2019-04-09 b7962eec5d68728616c17d174d330418d86939b7
Merge remote-tracking branch 'origin/master' into HazyRegion

Conflicts:
System/GeneralConfig/GeneralDefine.cs
Utility/RuntimeLogUtility.cs
3个文件已删除
14个文件已修改
217 ■■■■ 已修改文件
Core/NetworkPackage/DTCFile/ServerPack/H06_PlayerVsNPC/DTC0614_tagUseSkillPos.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/HB4_Fight/DTCB401_tagMCSkillHurtList.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Actor/Skill/AttackHandler.cs 16 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Actor/State/SMB/Dead_4.cs 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/Actor/State/SMB/STM_BaseAttack.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/GameActor/GActor.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/GameActor/GActorFight.cs 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Fight/GameActor/GActorNpcFight.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/EquipStar/EquipStarModel.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/GeneralConfig/GeneralDefine.cs 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/MainInterfacePanel/MainInterfaceWin.cs 78 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
System/RidingPet/Container_RidingPet.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Test.meta 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Test/testbutton.cs 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Test/testbutton.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Utility/ConfigInitiator.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Utility/RuntimeLogUtility.cs 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Core/NetworkPackage/DTCFile/ServerPack/H06_PlayerVsNPC/DTC0614_tagUseSkillPos.cs
@@ -305,7 +305,7 @@
                        if (_sTarget.CurHP == 0 && !(_cTarget is GActorPlayerBase))
                        {
                            _cTarget.ActorInfo.ResetHp((int)_sTarget.CurHP, (short)_sTarget.CurHPEx);
                            _cTarget.Die(vNetData.ObjID);
                            _cTarget.Die(vNetData.ObjID, 0, _sTarget.AttackType);
                        }
                        else
                        {
@@ -726,7 +726,7 @@
                if (_sTarget.CurHP == 0 && !(_cTarget is GActorPlayerBase))
                {
                    _cTarget.ActorInfo.ResetHp((int)_sTarget.CurHP, (short)_sTarget.CurHPEx);
                    _cTarget.Die(vNetData.ObjID);
                    _cTarget.Die(vNetData.ObjID, 0, _sTarget.AttackType);
                }
                else
                {
Core/NetworkPackage/DTCFile/ServerPack/HB4_Fight/DTCB401_tagMCSkillHurtList.cs
@@ -210,7 +210,7 @@
                if (_sTarget.CurHP == 0)
                {
                    _cTarget.ActorInfo.ResetHp((int)_sTarget.CurHP);
                    _cTarget.Die(vNetData.ObjID);
                    _cTarget.Die(vNetData.ObjID, 0, _sTarget.AttackType);
                }
                else
                {
Fight/Actor/Skill/AttackHandler.cs
@@ -132,7 +132,7 @@
            if (CheckPull(attacker, target, soConfig.bodyControlId))
            {
                target.StartBeatBack(attacker.ServerInstID, soConfig.bodyControlId, MathUtility.ForwardXZ(target.Pos, attacker.Pos));
                target.StartBeatBack(attacker.ServerInstID, soConfig.bodyControlId, MathUtility.ForwardXZ(target.Pos, attacker.Pos), (HurtAttackType)attackType);
            }
        }
@@ -247,7 +247,7 @@
        if (canDie && target.ActorInfo.RealHp == 0)
        {
            target.Die(attacker.ServerInstID, soConfig.deadFlyId);
            target.Die(attacker.ServerInstID, soConfig.deadFlyId, (byte)attackType);
        }
        if (target.ActorInfo.serverDie
@@ -701,11 +701,19 @@
        {
            attackType = (byte)HurtAttackType.ZhuXianAtk;
        }
        else if (_isLucky)
        else if (_isLucky
#if UNITY_EDITOR
        || RuntimeLogUtility.s_ForceLuckHit
#endif
        )
        {
            attackType = (byte)HurtAttackType.LuckyHit;
        }
        else if (_isCrit)
        else if (_isCrit
#if UNITY_EDITOR
        || RuntimeLogUtility.s_ForceSupperHit
#endif
        )
        {
            attackType = (byte)HurtAttackType.SuperHit;
        }
Fight/Actor/State/SMB/Dead_4.cs
@@ -4,6 +4,7 @@
{
    public uint killServerInstID;
    public Vector3 killerPos;
    public byte killHurtType;
    public int deadFlyId;
    private float m_EnterGroundHeight;
@@ -68,6 +69,12 @@
            {
                m_Factor = m_SoDeadFly.curve.keys[m_SoDeadFly.curve.length - 1].time;
                m_Factor = m_Factor / m_SoDeadFly.hDuration;
                if (GeneralDefine.AtkTypeIncreasePushDis.ContainsKey(killHurtType))
                {
                    m_Factor *= GeneralDefine.AtkTypeIncreasePushDis[killHurtType];
                }
                m_FlyStartTime = Time.time;
                m_Step = 0;
            }
Fight/Actor/State/SMB/STM_BaseAttack.cs
@@ -378,7 +378,7 @@
                if (_target.ActorInfo.serverDie)
                {
                    _target.Die(owner.ServerInstID);
                    _target.Die(owner.ServerInstID, 0, _hurtObj.AttackType);
                }
                else
                {
@@ -404,7 +404,7 @@
                if (_target.ActorInfo.serverDie)
                {
                    _target.Die(owner.ServerInstID);
                    _target.Die(owner.ServerInstID, 0, m_CacheSkill.hurtClientList[i].AttackType);
                }
            }
@@ -419,7 +419,7 @@
                if (_target.ActorInfo.serverDie)
                {
                    _target.Die(owner.ServerInstID);
                    _target.Die(owner.ServerInstID, 0, m_CacheSkill.hurtClntFightNpcList[i].AttackType);
                }
            }
        }
Fight/GameActor/GActor.cs
@@ -31,6 +31,7 @@
        get { return m_KillServerInstID; }
        set { m_KillServerInstID = value; }
    }
    public byte killHurtType;
    public int belongEventID;
    private Vector3 m_BornPos;
    public virtual Vector3 BornPos
Fight/GameActor/GActorFight.cs
@@ -180,10 +180,11 @@
    public abstract void RefreshLifeBar(ulong value);
    public void Die(uint killerServerInstID, int configID = 0)
    public void Die(uint killerServerInstID, int configID = 0, byte hurtType = (byte)HurtAttackType.Normal)
    {
        KillerServerInstID = killerServerInstID;
        DeadFlyID = configID;
        killHurtType = hurtType;
        Die();
    }
@@ -200,8 +201,9 @@
    private bool m_PushOrPull;
    private uint m_AttackerSID;
    private float m_LimitDistance;
    private float m_AddPer;
    public void StartBeatBack(uint attacker, int configID, Vector3 direction)
    public void StartBeatBack(uint attacker, int configID, Vector3 direction, HurtAttackType atkType = HurtAttackType.Normal)
    {
        SoBodyControl _config = ScriptableObjectLoader.LoadSoBodyControl(configID);
@@ -223,7 +225,16 @@
        m_BeatCurve = _config.curve;
        m_BeatTime = _config.duration;
        m_Factor = m_BeatCurve.keys[m_BeatCurve.length - 1].time;
        if (GeneralDefine.AtkTypeIncreasePushDis.ContainsKey((int)atkType))
        {
            m_AddPer = GeneralDefine.AtkTypeIncreasePushDis[(int)atkType];
        }
        else
        {
            m_AddPer = 1f;
        }
        m_Factor = m_BeatCurve.keys[m_BeatCurve.length - 1].time * m_AddPer;
        m_Factor = m_Factor / m_BeatTime;
        if (ActorType == GameObjType.gotNPC)
Fight/GameActor/GActorNpcFight.cs
@@ -430,6 +430,7 @@
        {
            _dead.killServerInstID = KillerServerInstID;
            _dead.killerPos = KillerPos;
            _dead.killHurtType = killHurtType;
        }
        if (this is GA_NpcClientFightBoss
System/EquipStar/EquipStarModel.cs
@@ -140,7 +140,7 @@
                }
            }
            if (materialIndexs.Count < (config.CostEquipCnt + config.CostItemDict.x > 0 ? 1 : 0))
            if (materialIndexs.Count < (config.CostEquipCnt + (config.CostItemDict.x > 0 ? 1 : 0)))
            {
                SysNotifyMgr.Instance.ShowTip("StarLevelUp3");
                return;
System/GeneralConfig/GeneralDefine.cs
@@ -763,12 +763,12 @@
            equipDecomposeScreen.AddRange(GetIntArray("EquipDecomposeScreen", 2));
            func = FuncConfigConfig.Get("AtkTypeIncreasePushDis");
            //var _ks = func.Numerical1.Split('|');
            //var _vs = func.Numerical2.Split('|');
            //for (i = 0; i < _ks.Length; ++i)
            //{
            //    AtkTypeIncreasePushDis[int.Parse(_ks[i])] = int.Parse(_vs[i]) * Constants.F_DELTA;
            //}
            var _ks = func.Numerical1.Split('|');
            var _vs = func.Numerical2.Split('|');
            for (i = 0; i < _ks.Length; ++i)
            {
                AtkTypeIncreasePushDis[int.Parse(_ks[i])] = int.Parse(_vs[i]) * Constants.F_DELTA;
            }
        }
        catch (Exception ex)
        {
System/MainInterfacePanel/MainInterfaceWin.cs
@@ -44,13 +44,14 @@
        [SerializeField] Button _SwitchShowBtn;//切换按钮
        [SerializeField] Button m_TaskSwithButton;//关于功能预告     
        [SerializeField] Transform m_EffectTask;//任务完成特效播放位置
        [SerializeField] Transform CopyOfThePanel;
        [SerializeField] Transform CopyOfThePanel;
        [SerializeField] GameObject m_TaskAndTeamTip;
        [SerializeField] GameObject m_MailObj;//邮件显隐
        [SerializeField] ClickScreenOtherSpace _MarkRay;//便捷切换按钮            
        [SerializeField] MainPositionTween m_MainPositionTween;
        [SerializeField] MainButtonMisc m_MainButtonMisc;
        #region
        private bool TaskSwithBool = true;
        private float ExpValueFloat = 0;
@@ -64,37 +65,30 @@
        public static event Action<bool> IsCopyOfThePanel;
        public static event Action IsOpenMaininterface;
        RealmModel realmModel { get { return ModelCenter.Instance.GetModel<RealmModel>(); } }
        MountModel horsemodel { get { return ModelCenter.Instance.GetModel<MountModel>(); } }
        PlayerMainDate onMainModel { get { return ModelCenter.Instance.GetModel<PlayerMainDate>(); } }
        TaskModel onPlayerTask { get { return ModelCenter.Instance.GetModel<TaskModel>(); } }
        BuffModel Buffmodel { get { return ModelCenter.Instance.GetModel<BuffModel>(); } }
        PKModel pKModel { get { return ModelCenter.Instance.GetModel<PKModel>(); } }
        RuneTowerModel runeTowerModel { get { return ModelCenter.Instance.GetModel<RuneTowerModel>(); } }
        TreasureModel treasureModel { get { return ModelCenter.Instance.GetModel<TreasureModel>(); } }
        DemonJarModel demonJarModel { get { return ModelCenter.Instance.GetModel<DemonJarModel>(); } }
        DungeonModel dungeonModel { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
        FairyGrabBossModel fairyGrabBossModel { get { return ModelCenter.Instance.GetModel<FairyGrabBossModel>(); } }
        FeatureNoticeModel featureNoticeModel { get { return ModelCenter.Instance.GetModel<FeatureNoticeModel>(); } }
        IceCrystalVeinModel iceCrystalVeinModel { get { return ModelCenter.Instance.GetModel<IceCrystalVeinModel>(); } }
        JadeDynastyTowerModel jadeDynastyTowerModel { get { return ModelCenter.Instance.GetModel<JadeDynastyTowerModel>(); } }
        TreasureModel treasureModel { get { return ModelCenter.Instance.GetModel<TreasureModel>(); } }
        #region Built-in
        private bool IsUpdateBool = true;
        protected override void BindController()
        {
            var inst = BossShowModel.Instance;
            m_MapSwitchingBehaviour.InitAwake();
            recordPositionBool = true;
            TaskSwithBool = true;
            m_MainPositionTween.SetTaskPos(true);
            m_MailObj.SetActive(true);
            m_MailObj.SetActive(true);
            ListBossMapId.Clear();
            string strBoss = FuncConfigConfig.Get("TaskRetract").Numerical1;
            string[] bossList = ConfigParse.GetMultipleStr(strBoss);//解析出数组|
            for (int i = 0; i < bossList.Length; i++)
            {
                ListBossMapId.Add(int.Parse(bossList[i]));
            }
            }
        }
        protected override void AddListeners()
@@ -142,13 +136,12 @@
            NewBieCenter.Instance.guideCompletedEvent += OnGuideCompleted;
            WindowCenter.Instance.windowAfterOpenEvent += WindowAfterEvent;
            WindowCenter.Instance.windowAfterCloseEvent += WindowAfterEvent;
            //TaskModel.CompletionOfTaskEvent += CompletionOfTaskEvent;
            NewBieCenter.Instance.guideBeginEvent += GuideBeginEvent;
            fairyGrabBossModel.bossGrabHintEvent += bossGrabHintEvent;
            GlobalTimeEvent.Instance.secondEvent += secondEvent;
            IsCrossServerOneVsOne();
            ProcessCrossServerOneVsOne();
        }
        protected override void OnActived()
        {
            m_MainButtonMisc.OnActived();
@@ -161,12 +154,14 @@
            var inDungeon = IsDungeon();
            var judge1 = onMainModel.IsDead || (onMainModel.IsBossAreaTask && !IsBossBool && !m_MainPositionTween.IsTaskAndPanelShow);
            var judge2 = mapId != PlayerDatas.Instance.baseData.MapID;
            if (judge1)
            {
                TaskSwithButton();
                onMainModel.IsBossAreaTask = false;
                onMainModel.IsDead = false;
            }
            if (m_AnimationFadeOut.GetIsFadeIn())
            {
                _MarkRay.gameObject.SetActive(true);
@@ -225,7 +220,7 @@
                else if (!isNeutralMap && !IsBossBool)
                {
                    SetTipPanelOrBossList(true, false);
                }
                }
            }
            mapId = PlayerDatas.Instance.baseData.MapID;
            m_HighSettingTip.AfterOpen();
@@ -260,7 +255,6 @@
            NewBieCenter.Instance.guideCompletedEvent -= OnGuideCompleted;
            WindowCenter.Instance.windowAfterOpenEvent -= WindowAfterEvent;
            WindowCenter.Instance.windowAfterCloseEvent -= WindowAfterEvent;
            //TaskModel.CompletionOfTaskEvent -= CompletionOfTaskEvent;
            NewBieCenter.Instance.guideBeginEvent -= GuideBeginEvent;
            GlobalTimeEvent.Instance.secondEvent -= secondEvent;
            fairyGrabBossModel.bossGrabHintEvent -= bossGrabHintEvent;
@@ -289,16 +283,12 @@
                EffectMgr.Instance.PlayUIEffect(1100, 1100, m_EffectTask, false);
            }
        }
        protected override void OnAfterClose()
        {
        }
        #endregion
        //private void CompletionOfTaskEvent(int obj)
        //{
        //    EffectMgr.Instance.PlayUIEffect(1100, 1100, m_EffectTask, false);
        //}
        private void secondEvent()
        {
@@ -339,7 +329,6 @@
        private void OnEnterOrExitArea(MapArea.E_Type _areaType, bool _enter)
        {
            //DebugEx.LogError(_areaType + ".." + _enter);
            if (PlayerDatas.Instance.baseData.MapID == 10040 && _areaType != MapArea.E_Type.Boss && _enter)
            {
                DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)onMainModel.AreaState);
@@ -376,6 +365,7 @@
                    SwitchShowButton();
                }
            }
            if ((_areaType == MapArea.E_Type.Boss && !_enter) || (_areaType != MapArea.E_Type.Normal && (_areaType != MapArea.E_Type.Boss && _enter)))
            {
                if (onMainModel.IsBossAreaTask)
@@ -384,9 +374,9 @@
                    onMainModel.IsBossAreaTask = false;
                }
            }
            var inDungeon = IsDungeon();
            var isNeutralMap = GeneralDefine.neutralBossMaps.Contains(PlayerDatas.Instance.baseData.MapID);
            if (_areaType == MapArea.E_Type.Boss && !_enter)
            {
                if (!m_MainPositionTween.IsSetCopyOfThePanelShow && !inDungeon && !isNeutralMap)
@@ -398,11 +388,11 @@
        private void AtkTypeChange()//骑宠争夺是否切换状态
        {
            int mapID = PlayerDatas.Instance.baseData.MapID;
            var mapID = PlayerDatas.Instance.baseData.MapID;
            var config = MapConfig.Get(mapID);
            int[] atkInt = pKModel.GetArea(config.AtkType).ToArray();
            bool IsBossBool = MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss);//是否在Boss区域
            int Line = 0;
            var atkInt = pKModel.GetArea(config.AtkType);
            var IsBossBool = MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss);//是否在Boss区域
            var Line = 0;
            fairyGrabBossModel.TryGetFairyGrabBossLine(out Line);
            if (PlayerDatas.Instance.baseData.MapID == 10040 && IsBossBool && Line == PlayerDatas.Instance.baseData.FBID)
            {
@@ -410,6 +400,7 @@
                onMainModel.AreaState = Buffmodel.PkType;
                return;
            }
            if (PlayerDatas.Instance.baseData.MapID == 10040 && IsBossBool && Line != PlayerDatas.Instance.baseData.FBID)//逍遥城普通Boss区域处理
            {
@@ -417,9 +408,10 @@
                onMainModel.AreaState = Buffmodel.PkType;
                return;
            }
            if (!onMainModel.ShieldedArea.Contains(PlayerDatas.Instance.baseData.MapID))//前四只Boss和活动Boss特殊处理
            {
                if (IsBossBool && atkInt.Length > 1 && Buffmodel.PkType != 5)
                if (IsBossBool && atkInt.Count > 1 && Buffmodel.PkType != 5)
                {
                    onMainModel.AreaState = Buffmodel.PkType;
                    DTCA202_tagMCAttackMode.Send_SwitchAttackMode((E_AttackMode)5);
@@ -439,30 +431,30 @@
                }
            }
        }
        public void MarkRayButton()
        {
            if (NewBieCenter.Instance.inGuiding)
            {
                return;
            }
            var _treasureModel = ModelCenter.Instance.GetModel<TreasureModel>();
            if (_treasureModel.treasureStageUpShow || _treasureModel.newGotShowing)
            if (treasureModel.treasureStageUpShow || treasureModel.newGotShowing)
            {
                return;
            }
            var inDungeon = IsDungeon();
            bool IsBossBool = PlayerDatas.Instance.hero == null ? false : MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss);//是否在Boss区域
            var inDungeon = IsDungeon();
            var inBossArea = PlayerDatas.Instance.hero == null ? false : MapArea.IsInMapArea(PlayerDatas.Instance.hero.CurMapArea, MapArea.E_Type.Boss);//是否在Boss区域
            var isNeutralMap = GeneralDefine.neutralBossMaps.Contains(PlayerDatas.Instance.baseData.MapID);
            if (!recordPositionBool)
            {
                if (inDungeon || IsBossBool || isNeutralMap)
                if (inDungeon || inBossArea || isNeutralMap)
                {
                    SetTipPanelOrBossList(false, true);
                }
                if (!IsBossBool)
                if (!inBossArea)
                {
                    if (!m_MainPositionTween.IsSetCopyOfThePanelShow && !inDungeon)
                    {
@@ -478,7 +470,6 @@
        void DownButton(GameObject go)
        {
            _ExpRate.gameObject.SetActive(true);
        }
@@ -513,13 +504,10 @@
            var isNeutralMap = GeneralDefine.neutralBossMaps.Contains(PlayerDatas.Instance.baseData.MapID);
            var judge1 = inDungeon || IsBossBool || isNeutralMap;
            var judge2 = !IsBossBool && !m_MainPositionTween.IsSetCopyOfThePanelShow && !inDungeon;
            if (recordPositionBool)//显示功能入口
            {
                if (judge1)
                {
                    SetTipPanelOrBossList(true, true);
                }
                if (judge2)
                if (judge1 || judge2)
                {
                    SetTipPanelOrBossList(true, true);
                }
@@ -620,10 +608,10 @@
            if (_tCDBPlayerRefresh == PlayerDataType.ExAttr5)//判断是否再跨服
            {
                IsCrossServerOneVsOne();
                ProcessCrossServerOneVsOne();
            }
        }
        private bool IsDungeon()
        {
@@ -745,7 +733,7 @@
            AtkTypeChange();
        }
        private void IsCrossServerOneVsOne()
        private void ProcessCrossServerOneVsOne()
        {
            if (CrossServerUtility.IsCrossServerOneVsOne())//是否再跨服副本中
            {
System/RidingPet/Container_RidingPet.cs
@@ -55,7 +55,7 @@
        public void DisplaySpiritPetHP()
        {
            m_ActivityInfo.text = "剩余血量 " + ModelCenter.Instance.GetModel<RidingPetBossModel>().GetBossRemianedHP(bossIdIndex) + "%";
            m_ActivityInfo.text = Language.Get("RidingBossRemainHP", ModelCenter.Instance.GetModel<RidingPetBossModel>().GetBossRemianedHP(bossIdIndex));
        }
        public void DisplayActivityTime()
@@ -64,7 +64,7 @@
            dailyQuestModel.TryGetOpenTime(m_ActivityID, out dailyQuestOpentime);
            HourMinute hourMin;
            dailyQuestOpentime.TryGetNextOpenTime(out hourMin);
            m_ActivityInfo.text = "活动时间 " + hourMin.hourBegin + ":" + hourMin.minuteBegin;
            m_ActivityInfo.text = Language.Get("RidingBossQuestTime", hourMin.hourBegin, hourMin.minuteBegin);
        }
        public void DisplayRewardItem()
Test.meta
File was deleted
Test/testbutton.cs
File was deleted
Test/testbutton.cs.meta
File was deleted
Utility/ConfigInitiator.cs
@@ -395,11 +395,11 @@
                }
                else if (DeviceUtility.cpu >= 4 && DeviceUtility.memory > 2.5f * 1024)
                {
                    return 10;
                    return 5;
                }
                else if (DeviceUtility.cpu > 1 && DeviceUtility.memory > 1.5f * 1024)
                {
                    return 2;
                    return 1;
                }
                else
                {
@@ -408,7 +408,7 @@
            case RuntimePlatform.IPhonePlayer:
                if (DeviceUtility.cpu > 1 && DeviceUtility.memory > 1.5f * 1024)
                {
                    return 10;
                    return 5;
                }
                else
                {
Utility/RuntimeLogUtility.cs
@@ -19,6 +19,8 @@
    public static bool s_SkillEffectLog = false;
    public static bool s_ShowMapLine = false;
    public static bool s_ShowZZAtkValue = false;
    public static bool s_ForceSupperHit = false;
    public static bool s_ForceLuckHit = false;
    public static bool s_forceAutoFight
    {
        get
@@ -209,7 +211,8 @@
        if (GUILayout.Button("测试寻路"))
        {
            Debug.Log(PathFinder.WalkAble(_start3, _end3));
            // Debug.Log(PathFinder.WalkAble(_start3, _end3));
            MapTransferUtility.Instance.MoveToNPC(10904012);
        }
        EditorGUILayout.LabelField("Log存储路径", RuntimeLogUtility.s_LogPath);
@@ -235,15 +238,16 @@
        RuntimeLogUtility.s_ShowZZAtkValue = EditorGUILayout.Toggle("显示助战伤害", RuntimeLogUtility.s_ShowZZAtkValue);
        RuntimeLogUtility.TEST_CLIENT_PVP = EditorGUILayout.Toggle("模拟客户端PVP状态", RuntimeLogUtility.TEST_CLIENT_PVP);
        RuntimeLogUtility.TEST_CLIENT_PVP_AI = EditorGUILayout.Toggle("模拟客户端PVP的AI状态", RuntimeLogUtility.TEST_CLIENT_PVP_AI);
        RuntimeLogUtility.s_ForceSupperHit = EditorGUILayout.Toggle("强制暴击", RuntimeLogUtility.s_ForceSupperHit);
        RuntimeLogUtility.s_ForceLuckHit = EditorGUILayout.Toggle("强制会心一击", RuntimeLogUtility.s_ForceLuckHit);
        if (GUILayout.Button("创建PVP敌方"))
        {
            // var _npc = GAMgr.Instance.ReqClntFightNpc<GA_NpcClientFightNorm>(10101003, E_ActorGroup.Enemy);
            // _npc.BornPos = _npc.Pos = PlayerDatas.Instance.hero.Pos;
            // _npc.ActorInfo.ResetHp(9999999, -1, 9999999);
            var _npc = GAMgr.Instance.ReqClntFightNpc<GA_NpcClientFightNorm>(10101002, E_ActorGroup.Enemy);
            _npc.BornPos = _npc.Pos = PlayerDatas.Instance.hero.Pos;
            _npc.ActorInfo.ResetHp(5, -1, 5);
            var _npc = GAMgr.Instance.ReqClntFightNpc<GA_NpcClientFightBoss>(10103001, E_ActorGroup.Enemy);
            // var _npc = GAMgr.Instance.ReqClntFightNpc<GA_NpcClientFightBoss>(10103001, E_ActorGroup.Enemy);
            // GActorPlayerBase.PlayerInfo _playerInfo = new GActorPlayerBase.PlayerInfo();
            // _playerInfo.maxHp = (uint)PlayerDatas.Instance.extersion.MaxMP;
@@ -277,13 +281,13 @@
            // };
            // GAMgr.Instance.ReqClntPlayer<GA_PVPClientPlayer>(_playerInfo, E_ActorGroup.Player);
            AdventureStage.Instance.Enter();
            // AdventureStage.Instance.Enter();
        }
        if (GUILayout.Button("重置PVP敌方"))
        {
            // GA_PVPClientPlayer.Reset();
            AdventureStage.Instance.Exit();
            // AdventureStage.Instance.Exit();
        }
        _navChkPos = EditorGUILayout.Vector3Field("检测点", _navChkPos);