/// <summary> /// Kick the rider off the vehicle if they press q / drop the virtual item /// </summary> private void OnVirtualItemDeleted(EntityUid uid, RiderComponent component, VirtualItemDeletedEvent args) { if (args.BlockingEntity == component.Vehicle) { UnbuckleFromVehicle(uid); } }
/// <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 OnVirtualItemDeleted(EntityUid uid, SharedPullerComponent component, VirtualItemDeletedEvent args) { if (component.Pulling == null) { return; } if (component.Pulling == EntityManager.GetEntity(args.BlockingEntity)) { if (EntityManager.TryGetComponent <SharedPullableComponent>(args.BlockingEntity, out var comp)) { _pullSystem.TryStopPull(comp, EntityManager.GetEntity(uid)); } } }