diff --git a/Assets/PerfectWorld/Scripts/Managers/EC_HPWorkMelee.cs b/Assets/PerfectWorld/Scripts/Managers/EC_HPWorkMelee.cs index 53269404e5..a97d4098c2 100644 --- a/Assets/PerfectWorld/Scripts/Managers/EC_HPWorkMelee.cs +++ b/Assets/PerfectWorld/Scripts/Managers/EC_HPWorkMelee.cs @@ -98,8 +98,11 @@ class CECHPWorkMelee : CECHPWork if (idTraceTarget != 0 && !m_pHost.IsRooting()) { + // When target is another player (e.g. duel opp), pass bForceAttack so CECTracedPlayer sends correct PVP mask + bool bForceAttack = (m_pHost.IsInDuel() && m_idTarget == m_pHost.GetDuelOpponentId()) + || EC_Utility.glb_GetForceAttackFlag(null); CECHPWorkTrace pWork = (CECHPWorkTrace)m_pWorkMan.CreateWork(Host_work_ID.WORK_TRACEOBJECT); - pWork.SetTraceTarget(pWork.CreatTraceTarget(idTraceTarget, CECHPWorkTrace.Trace_reason.TRACE_ATTACK)); + pWork.SetTraceTarget(pWork.CreatTraceTarget(idTraceTarget, CECHPWorkTrace.Trace_reason.TRACE_ATTACK, bForceAttack)); m_pWorkMan.SetPostTickCommand(new CECHPWorkPostTickCommand1(pWork)); return true; }