public void SetAttackerInfo(int attackId, bool isKiller, bool isNormalAttack, bool isCritical, int hpDamage, int npDamage)
{
if (isKiller)
{
KillerId = attackId;
}
long curTime = TimeUtility.GetLocalMilliseconds();
LastAttackedTime = curTime;
AttackerInfo info;
if (!AttackerInfos.TryGetValue(attackId, out info))
{
AttackerInfos.Add(attackId, new AttackerInfo {
m_AttackTime = curTime, m_HpDamage = hpDamage, m_NpDamage = npDamage
});
}
else
{
info.m_AttackTime = curTime;
info.m_HpDamage += hpDamage;
info.m_NpDamage += npDamage;
AttackerInfos[attackId] = info;
}
EntityManager.FireDamageEvent(GetId(), attackId, isNormalAttack, isCritical, hpDamage, npDamage);
}