private static void PrepareManufactureRemoval(Vector3Int gridPosition, GridStructure grid) { var structureData = grid.GetStructureDataFromTheGrid(gridPosition); structureData.PrepareForRemoval(); }
internal override void ComputeConstraintForView(View view) { LayoutOptions vOptions = view.VerticalOptions; LayoutOptions hOptions = view.HorizontalOptions; var result = LayoutConstraint.None; // grab a snapshot of this grid's structure for computing the constraints var structure = new GridStructure(this); if (vOptions.Alignment == LayoutAlignment.Fill) { int row = GetRow(view); int rowSpan = GetRowSpan(view); List<RowDefinition> rowDefinitions = structure.Rows; var canFix = true; for (int i = row; i < row + rowSpan && i < rowDefinitions.Count; i++) { GridLength height = rowDefinitions[i].Height; if (height.IsAuto) { canFix = false; break; } if ((Constraint & LayoutConstraint.VerticallyFixed) == 0 && height.IsStar) { canFix = false; break; } } if (canFix) result |= LayoutConstraint.VerticallyFixed; } if (hOptions.Alignment == LayoutAlignment.Fill) { int col = GetColumn(view); int colSpan = GetColumnSpan(view); List<ColumnDefinition> columnDefinitions = structure.Columns; var canFix = true; for (int i = col; i < col + colSpan && i < columnDefinitions.Count; i++) { GridLength width = columnDefinitions[i].Width; if (width.IsAuto) { canFix = false; break; } if ((Constraint & LayoutConstraint.HorizontallyFixed) == 0 && width.IsStar) { canFix = false; break; } } if (canFix) result |= LayoutConstraint.HorizontallyFixed; } view.ComputedConstraint = result; }
public void Init() { structure = new GridStructure(3, 100, 100); }
public static void CreateStructureLogic(Type structureType, Vector3Int gridPosition, GridStructure grid) { if (structureType == typeof(ZoneStructureSO)) { PrepareZoneStructure(gridPosition, grid); } else if (structureType == typeof(RoadStructureSO)) { PrepareRoadStructure(gridPosition, grid); } else if (structureType == typeof(SingleFacilitySO)) { PrepareFacilityStructure(gridPosition, grid); } }
public BuildingManager(PlacementManager placementManager, int cellSize, int width, int length) { this.placementManager = placementManager; grid = new GridStructure(cellSize, width, length); }
public PlayerBuildingSelectionState(GameManager gameManager, BuildingManager buildingManager, GridStructure grid) : base(gameManager) { this.buildingManager = buildingManager; this.grid = grid; }
public static IEnumerable <StructureBaseSO> PrepareRoadDemolition(Vector3Int gridPosition, GridStructure grid) { RoadStructureSO roadData = (RoadStructureSO)grid.GetStructureDataFromTheGrid(gridPosition); var structuresAroundRoad = grid.GetStructuresDataInRange(gridPosition, roadData.structureRange); return(roadData.PrepareRoadDemolition(structuresAroundRoad)); }
public void CreateBuilding(Vector3 gridPosition, GridStructure grid) { GameObject newStructure = Instantiate(buildingPrefab, ground.position + gridPosition, Quaternion.identity);//adding ground to recieve same result whatever ground pos is grid.PlaceStructureOnGrid(newStructure, gridPosition); }
public GridEvaluator(GridStructure gridStructure) { this.grid = gridStructure; evaluateGrid(); }
public static RoadStructureHelper GetCorrectRoadPrefab(Vector3 gridPosition, StructureBaseSO structureDat, Dictionary<Vector3Int, GameObject> structuresToBeModified, GridStructure grid) { var neighborStatus = RoadManager.GetRoadNeighborStatus(gridPosition, grid, structuresToBeModified); RoadStructureHelper roadToReturn = null; roadToReturn = RoadManager.CheckIfStraightRoadFits(neighborStatus, roadToReturn, structureDat); if (roadToReturn != null) return roadToReturn; roadToReturn = RoadManager.CheckIfCornerRoadFits(neighborStatus, roadToReturn, structureDat); if (roadToReturn != null) return roadToReturn; roadToReturn = RoadManager.CheckIfThreewayRoadFits(neighborStatus, roadToReturn, structureDat); if (roadToReturn != null) return roadToReturn; roadToReturn = RoadManager.CheckIfFourwayRoadFits(neighborStatus, roadToReturn, structureDat); if (roadToReturn != null) return roadToReturn; return roadToReturn; }
public PlayerDemolishState(GameManager gameManager, BuildingManager buildingManager, GridStructure grid) : base(gameManager) { this.buildingManager = buildingManager; this.grid = grid; }
public static void ModifyRoadCellsOnTheGrid(Dictionary<Vector3Int, GameObject> neighborDictionary, StructureBaseSO structureData, Dictionary<Vector3Int, GameObject> structuresToBeModified, GridStructure grid, IPlacementManager placementManager) { foreach (var keyValuePair in neighborDictionary) { grid.RemoveStructureFromTheGrid(keyValuePair.Key); placementManager.DestroySingleStructure(keyValuePair.Value); var roadStructure = GetCorrectRoadPrefab(keyValuePair.Key, structureData, structuresToBeModified, grid); var structure = placementManager.PlaceStructureOnTheMap(keyValuePair.Key, roadStructure.RoadPrefab, roadStructure.RoadPrefabRotation); grid.PlaceStructureOnTheGrid(structure, keyValuePair.Key, GameObject.Instantiate(structureData)); } neighborDictionary.Clear(); }
public static void CheckStructureTypeForCreationPreparation(Type structureType, Vector3Int gridPosition, GridStructure grid) { if (structureType == typeof(ZoneStructureSO)) { PrepareZoneStructure(gridPosition, grid); } else if (structureType == typeof(RoadStructureSO)) { PrepareRoadStructure(gridPosition, grid); } else if (structureType == typeof(SingleFacilitySO)) { PrepareFacilityStructure(gridPosition, grid); } else { PrepareManufactureStructure(gridPosition, grid); } }
public static void PrepareFacilityStructureForUpgrade(Vector3Int gridPosition, GridStructure grid, StructureBaseSO structureData) { structureData.PrepareForRemoval(); PrepareFacilityStructure(gridPosition, grid); }
public static bool CheckIfPositionHasChanged(Vector3 gridPosition, Vector3 previousPosition, GridStructure grid) { return(Vector3Int.FloorToInt(grid.CalculateGridPosition(gridPosition)).Equals(Vector3Int.FloorToInt(grid.CalculateGridPosition(previousPosition))) == false); }
public ZonePlacementHelper(StructureRepository structureRepository, GridStructure grid, IPlacementManager placementManager, Vector3 mapBottomLeftCorner, IResourceManager resourceManager) : base(structureRepository, grid, placementManager, resourceManager) { this._mapBottomLeftCorner = mapBottomLeftCorner; }
public BuildingManager(int cellSize, int width, int length, PlacementManager placementManager, StructureRepository structureRepository) { this.grid = new GridStructure(cellSize, width, length); this.placementManager = placementManager; this.structureRepository = structureRepository; }
public int InitEx(string basedir, GridStructure gridStructure) { return(0); }
public static IEnumerable <StructureBaseSO> PrepareFacilityDemolition(Vector3Int gridPosition, GridStructure grid) { SingleFacilitySO faciltityData = (SingleFacilitySO)grid.GetStructureDataFromTheGrid(gridPosition); return(faciltityData.PrepareForDestruction()); }
public int OpenEx(string basedir, out GridStructure gridStructure) { gridStructure = new GridStructure(); return(0); }
public static void PrepareStructureForDemolition(Vector3Int gridPosition, GridStructure grid) { var structureData = grid.GetStructureDataFromTheGrid(gridPosition); structureData.PrepareForDestruction(); }
public RoadPlacementModificationHelper(StructureRepository structureRepository, GridStructure grid, IPlacementManager placementManager, IResourceManager resourceManager) : base(structureRepository, grid, placementManager, resourceManager) { }
public override Size Measure(double widthConstraint, double heightConstraint) { var structure = new GridStructure(Grid, widthConstraint, heightConstraint); return(new Size(structure.GridWidth(), structure.GridHeight())); }
public ManufacturerPlacementHelper(StructureRepository structureRepository, GridStructure grid, IPlacementManager placementManager, IResourceManager resourceManager) : base(structureRepository, grid, placementManager, resourceManager) { }
public void CreateBuilding(Vector3 gridPosition, GridStructure grid) { GameObject newStructure = Instantiate(buildingPrefab, ground.position + gridPosition, Quaternion.identity); grid.PlaceStructureOnGrid(newStructure, gridPosition); }
public void init() { gridStructure = new GridStructure(3, 100, 100); }
public void Init() { _grid = new GridStructure(3, 10, 10); }
// Start is called before the first frame update void Start() { _gridStructure = new GridStructure(3, width, length); inputManager.AddListenerOnPointerDownEvent(HandleInput); }
public StructureDemolitionHelper(StructureRepository structureRepository, GridStructure grid, IPlacementManager placementManager, IResourceManager resourceManager) : base(structureRepository, grid, placementManager, resourceManager) { }
public static void CheckStructureTypeForUpgradePreparation(Type structureType, StructureBaseSO structureData, Vector3Int gridPosition, GridStructure grid) { if (structureType == typeof(ZoneStructureSO)) { PrepareZoneStructureForUpgrade(gridPosition, grid, structureData); } else if (structureType == typeof(SingleFacilitySO)) { PrepareFacilityStructureForUpgrade(gridPosition, grid, structureData); } }