| Fight/Actor/AI/HeroAI_Auto.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Fight/Actor/AI/HeroAI_D5_Hlyy.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Fight/Actor/HeroBehaviour.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Fight/Actor/Skill/AttackHandler.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Fight/GameActor/Bhv_FindEnemy.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Fight/GameActor/GA_Hero.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
Fight/Actor/AI/HeroAI_Auto.cs
@@ -327,7 +327,7 @@ return; } _hero.LockTarget = _hero.SelectTarget = _atkTarget; _hero.SelectTarget = _atkTarget; // 判断技能范围, 不在可释放范围需要移动至目标 float _compareDist = _skill.skillInfo.config.AtkDist * .5f; Fight/Actor/AI/HeroAI_D5_Hlyy.cs
@@ -125,7 +125,6 @@ else { _hero.SelectTarget = _actor; _hero.LockTarget = _actor; } } Fight/Actor/HeroBehaviour.cs
@@ -131,14 +131,10 @@ { _fightTarget = m_Hero.SelectTarget as GActorFight; if (_fightTarget != null && _fightTarget.CanAtked()) { m_Hero.LockTarget = m_Hero.SelectTarget; } else if (_fightTarget == null || !_fightTarget.CanAtked()) { float _range = m_Hero.JobSetup.SearchEnemyDist * Constants.F_DELTA; m_Hero.LockTarget = m_Hero.SelectTarget = GAMgr.Instance.FindAtkTarget(m_Hero.Pos, _range, 360); m_Hero.SelectTarget = GAMgr.Instance.FindAtkTarget(m_Hero.Pos, _range, 360); _fightTarget = m_Hero.SelectTarget as GActorFight; } } Fight/Actor/Skill/AttackHandler.cs
@@ -191,11 +191,10 @@ if (target.ServerInstID == PlayerDatas.Instance.PlayerId) { GA_Hero _hero = target as GA_Hero; if (_hero.LockTarget == null) if (_hero.SelectTarget == null) { _hero.LockTarget = attacker; _hero.SelectTarget = attacker; } } } } Fight/GameActor/Bhv_FindEnemy.cs
@@ -113,7 +113,7 @@ _chkDis += 1; } if (_distSqrt > Mathf.Pow(reFindSelectTargetDist, _chkDis)) if (_distSqrt > Mathf.Pow(_chkDis, 2)) { var _actor = GAMgr.Instance.FindAtkTarget(_hero.Pos, reSetLockTargetDist); if (!(_actor is GActorFight)) @@ -125,6 +125,10 @@ if (_actor.CanAtked()) { _hero.SelectTarget = _actor; if (_actor is GA_NpcFightBoss && _hero.LockTarget == null) { _hero.LockTarget = _actor; } } } } Fight/GameActor/GA_Hero.cs
@@ -372,35 +372,56 @@ } } if (PlayerDatas.Instance.extersion.bossState == 1) HandleBossAttack(); } private void HandleBossAttack() { if (PlayerDatas.Instance.extersion.bossState != 1) { GA_Player _player = SelectTarget as GA_Player; if (_player != null) return; } if (LockTarget != null) { return; } GA_Player _player = SelectTarget as GA_Player; if (_player == null) { return; } foreach (var _key in DungeonStage.s_MapAreaDict.Keys) { if ((int)_key < 3000) { foreach (var _key in DungeonStage.s_MapAreaDict.Keys) continue; } var _areaList = DungeonStage.s_MapAreaDict[_key]; if (_areaList == null) { continue; } MapArea _area = null; for (int i = 0; i < _areaList.Count; ++i) { _area = _areaList[i]; if (_area != currentBossArea) { if ((int)_key >= 3000) continue; } if (_area.IsPosOut(_player.Pos)) { SelectTarget = null; if (atkBossID != 0) { var _areaList = DungeonStage.s_MapAreaDict[_key]; if (_areaList != null) { MapArea _area = null; for (int i = 0; i < _areaList.Count; ++i) { _area = _areaList[i]; if (_area == currentBossArea) { if (_area.IsPosOut(_player.Pos)) { LockTarget = SelectTarget = null; if (atkBossID != 0) { MapTransferUtility.Instance.MoveToNPC((int)atkBossID); } } } } } MapTransferUtility.Instance.MoveToNPC((int)atkBossID); } } }