using UnityEngine; public class ObjectPlaceholder : DraggablePlaceholder { public GameObject Prefab { get; set; } public override void Place() { Prefab.Create(transform.position, parent : LevelManager.Instance.LevelTransform); } public override bool CanBePlacedHere() { var objsOnPosition = LevelManager.Instance.GetAll(obj => obj.Position.IsContainedIn(transform.position)); var positionIsCollidable = objsOnPosition.Exists(obj => obj.IsCollidable); return !positionIsCollidable && _lvlBoundsCache.Contains(transform.position) && ResourceManager.Instance.EnoughFor(Rock, Wood, Food); } }