RaiseLocalEvent(target, interactUsingEvent, true);
DoContactInteraction(user, used, interactUsingEvent);
DoContactInteraction(user, target, interactUsingEvent);
- DoContactInteraction(used, target, interactUsingEvent);
+ // Contact interactions are currently only used for forensics, so we don't raise used -> target
if (interactUsingEvent.Handled)
return;
if (canReach)
{
DoContactInteraction(user, target, afterInteractEvent);
- DoContactInteraction(used, target, afterInteractEvent);
+ // Contact interactions are currently only used for forensics, so we don't raise used -> target
}
if (afterInteractEvent.Handled)
if (canReach)
{
DoContactInteraction(user, target, afterInteractUsingEvent);
- DoContactInteraction(used, target, afterInteractUsingEvent);
+ // Contact interactions are currently only used for forensics, so we don't raise used -> target
}
}
var weapon = GetEntity(ev.Weapon);
- Interaction.DoContactInteraction(weapon, target);
+ // We skip weapon -> target interaction, as forensics system applies DNA on hit
Interaction.DoContactInteraction(user, weapon);
// If the user is using a long-range weapon, this probably shouldn't be happening? But I'll interpret melee as a
// For stuff that cares about it being attacked.
foreach (var target in targets)
{
- Interaction.DoContactInteraction(weapon, target);
+ // We skip weapon -> target interaction, as forensics system applies DNA on hit
// If the user is using a long-range weapon, this probably shouldn't be happening? But I'll interpret melee as a
// somewhat messy scuffle. See also, light attacks.