namespace FNAF_Server.Map; public class MapTile { public int Id { get; private set; } public ServerPlayer Owner { get; private set; } public bool Lit { get; set; } = false; private List Connectors { get; set; } = new(); public MapTile(int id, ServerPlayer owner) { Id = id; Owner = owner; } public void AddConnector(MapTile tile, TileConnector.ConnectorType type, int value) { Connectors.Add(new TileConnector(this, tile, type, value)); tile.Connectors.Add(new TileConnector(tile, this, type, value)); } public void AddConnectors((MapTile tile, TileConnector.ConnectorType type, int value)[] connectors) => Array.ForEach(connectors, c => AddConnector(c.tile, c.type, c.value)); public override string ToString() => $"{PositionAsString} -> {string.Join(", ", Connectors.Select(c => c.Tiles.Item2.PositionAsString))}"; public string PositionAsString => $"[{Id / 5}, {Id % 5}]"; // for debug purposes }