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);
        }