| Fight/Actor/AI/AI_Npc_198.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Fight/Actor/HeroBehaviour.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
| Fight/Actor/Skill/AttackHandler.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
Fight/Actor/AI/AI_Npc_198.cs
@@ -62,6 +62,7 @@ var _nextForawrd = Random.rotation * m_Owner.Forward; var _randomDis = Random.Range(0, m_Owner.NpcConfig.Sight * .5f); m_Dest = m_Owner.BornPos + _nextForawrd * _randomDis; GActor.TryGetValidPos(m_Dest, ref m_Dest); m_RunAwayStep = 1; break; case 1: Fight/Actor/HeroBehaviour.cs
@@ -887,24 +887,27 @@ if (_target.ActorInfo.RealHp <= _hurtValue) { _target.KillerServerInstID = m_Hero.ServerInstID; _target.ActorInfo.serverDie = true; GAMgr.Instance.ServerDie(_target.ServerInstID); GAMgr.Instance.DoDelayDie(_target); if (_clientNpc.NpcConfig.AIType != 198) { _target.KillerServerInstID = m_Hero.ServerInstID; _target.ActorInfo.serverDie = true; GAMgr.Instance.ServerDie(_target.ServerInstID); GAMgr.Instance.DoDelayDie(_target); if (m_Hero.LockTarget == _target) { m_Hero.LockTarget = null; } if (m_Hero.SelectTarget == _target) { m_Hero.SelectTarget = null; } if (m_Hero.LockTarget == _target) { m_Hero.LockTarget = null; } if (m_Hero.SelectTarget == _target) { m_Hero.SelectTarget = null; } if (_clientNpc != null && _clientNpc.belongEventID != -1) { ClientSceneManager.Instance.NpcDead(_clientNpc.belongEventID, _clientNpc, _clientNpc.NpcConfig.NPCID); if (_clientNpc != null && _clientNpc.belongEventID != -1) { ClientSceneManager.Instance.NpcDead(_clientNpc.belongEventID, _clientNpc, _clientNpc.NpcConfig.NPCID); } } // 前期战斗只发送石头人的 //if (1000 == _target.NpcConfig.NPCID) Fight/Actor/Skill/AttackHandler.cs
@@ -195,6 +195,8 @@ } else { bool _doReduceHp = true; if (attacker is GA_NpcClientFightNorm) { if (target.ActorInfo.RealHp <= (target.ActorInfo.RealMaxHp * .5f)) @@ -202,8 +204,18 @@ hurtValue = 0; } } else if (target is GA_NpcClientFightNorm) { if ((target as GA_NpcClientFightNorm).NpcConfig.AIType == 198) { _doReduceHp = false; } } target.ActorInfo.ReduceHp((uint)hurtValue); if (_doReduceHp) { target.ActorInfo.ReduceHp((uint)hurtValue); } if (target.ServerInstID == PlayerDatas.Instance.baseData.PlayerID) {