コード例 #1
0
 private void HandleFlashTrigger(EntityUid uid, FlashOnTriggerComponent component, TriggerEvent args)
 {
     // TODO Make flash durations sane ffs.
     _flashSystem.FlashArea(uid, args.User, component.Range, component.Duration * 1000f);
     args.Handled = true;
 }
コード例 #2
0
 private void HandleDeleteTrigger(EntityUid uid, DeleteOnTriggerComponent component, TriggerEvent args)
 {
     EntityManager.QueueDeleteEntity(uid);
     args.Handled = true;
 }
コード例 #3
0
        private void HandleExplodeTrigger(EntityUid uid, ExplodeOnTriggerComponent component, TriggerEvent args)
        {
            if (!EntityManager.TryGetComponent(uid, out ExplosiveComponent? explosiveComponent))
            {
                return;
            }

            Explode(uid, explosiveComponent, args.User);
        }
コード例 #4
0
 private void HandleExplodeTrigger(EntityUid uid, ExplodeOnTriggerComponent component, TriggerEvent args)
 {
     _explosions.TriggerExplosive(uid, user: args.User);
     args.Handled = true;
 }
コード例 #5
0
        public void Trigger(EntityUid trigger, EntityUid?user = null)
        {
            var triggerEvent = new TriggerEvent(trigger, user);

            EntityManager.EventBus.RaiseLocalEvent(trigger, triggerEvent);
        }
コード例 #6
0
        private void HandleDoorTrigger(EntityUid uid, ToggleDoorOnTriggerComponent component, TriggerEvent args)
        {
            if (EntityManager.TryGetComponent <ServerDoorComponent>(uid, out var door))
            {
                switch (door.State)
                {
                case SharedDoorComponent.DoorState.Open:
                    door.Close();
                    break;

                case SharedDoorComponent.DoorState.Closed:
                    door.Open();
                    break;

                case SharedDoorComponent.DoorState.Closing:
                case SharedDoorComponent.DoorState.Opening:
                    break;
                }
            }
        }
コード例 #7
0
 private void HandleSoundTrigger(EntityUid uid, SoundOnTriggerComponent component, TriggerEvent args)
 {
     if (component.Sound == null)
     {
         return;
     }
     SoundSystem.Play(Filter.Pvs(component.Owner), component.Sound.GetSound(), AudioHelpers.WithVariation(0.01f));
 }
コード例 #8
0
 private void HandleDoorTrigger(EntityUid uid, ToggleDoorOnTriggerComponent component, TriggerEvent args)
 {
     _sharedDoorSystem.TryToggleDoor(uid);
 }
コード例 #9
0
 private void HandleSoundTrigger(EntityUid uid, SoundOnTriggerComponent component, TriggerEvent args)
 {
     if (component.Sound == null)
     {
         return;
     }
     SoundSystem.Play(Filter.Pvs(component.Owner), component.Sound.GetSound(), uid);
 }