using System.Collections.Generic; using Escape_Room_Engine.Engine.Scripts.Modules; using UnityEngine; namespace Escape_Room_Engine.Engine.Scripts.Requirements { [CreateAssetMenu(menuName = "Requirements/No Overlap")] public class NoOverlap : PlacementRequirement { protected override IEnumerable GenerateCandidates(Module module, Space space) { var edgePositions = space.rrDimensions.EveryPosition; space.Modules.ForEach(m => edgePositions.Remove(m.SrPosition)); return edgePositions; } } }