private static void HandleBeforeInteract( EntityUid uid, HandVirtualItemComponent component, BeforeInteractEvent args) { // No interactions with a virtual item, please. args.Handled = true; }
/// <summary> /// Queues a deletion for a virtual item and notifies the blocking entity and user. /// </summary> public void Delete(HandVirtualItemComponent comp, EntityUid user) { var userEv = new VirtualItemDeletedEvent(comp.BlockingEntity, user); RaiseLocalEvent(user, userEv, false); var targEv = new VirtualItemDeletedEvent(comp.BlockingEntity, user); RaiseLocalEvent(comp.BlockingEntity, targEv, false); comp.Owner.QueueDelete(); }
private void HandleItemDropped(EntityUid uid, HandVirtualItemComponent component, DroppedEvent args) { Delete(component, args.User.Uid); }
// If the virtual item gets removed from the hands for any reason, cancel the pull and delete it. private void HandleItemUnequipped(EntityUid uid, HandVirtualItemComponent component, UnequippedHandEvent args) { Delete(component, args.User); }
private void OnBeingEquippedAttempt(EntityUid uid, HandVirtualItemComponent component, BeingEquippedAttemptEvent args) { args.Cancel(); }