/// <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);
     }
 }
示例#2
0
        /// <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();
        }
示例#3
0
        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));
                }
            }
        }