void ICollideBehavior.CollideWith(IEntity entity) { if (_flashed) { return; } ServerFlashableComponent.FlashAreaHelper(Owner, _range, _duration); _flashed = true; }
public bool Explode() { // If we're in a locker or whatever then can't flash anything ContainerHelpers.TryGetContainer(Owner, out var container); if (container == null || !container.Owner.HasComponent <EntityStorageComponent>()) { ServerFlashableComponent.FlashAreaHelper(Owner, _range, _duration); } if (_sound != null) { EntitySystem.Get <AudioSystem>().PlayAtCoords(_sound, Owner.Transform.GridPosition); } if (_deleteOnFlash && !Owner.Deleted) { Owner.Delete(); } return(true); }