public void SetTarget(ClickTile _target) { if (_target.name == "TileShipYardPlayer1" || _target.name == "TileShipYardPlayer2") { this.target = _target; Vector3 newPosition = new Vector3(target.transform.position.x - 0.5f, target.transform.position.y + 0.5f, target.transform.position.z); this.transform.position = newPosition; SetUiComponents(true); } }
// Spawn visual tiles private void GenerateMapVisuals() { for (int x = 0; x < mapSizeX; x++) { for (int z = 0; z < mapSizeZ; z++) { TileType tt = tileTypes[tiles[x, z]]; GameObject go = (GameObject)Instantiate(tt.tilePrefab, new Vector3(x, 0, z), Quaternion.identity); // Tile go.name = go.name.Remove(go.name.Length - 7); // Remove "(Clone)" from Tile go.transform.parent = parentFolder.transform; ClickTile ct = go.GetComponent <ClickTile>(); ct.tileX = x; ct.tileZ = z; ct.map = this; } } }
void Start() { this.click = this.GetComponent <ClickTile>(); }
public void SelectTile(ClickTile getTile) { selectedTile = getTile; buildingTileUI.SetTarget(selectedTile); shipyardTileUI.SetTarget(selectedTile); }
// Update is called once per frame void Update() { if (buildingTileUI == null || shipyardTileUI == null) { reassignGameObjs(); } ClearHoverSelection(); Ray ray = _Camera.ScreenPointToRay(Input.mousePosition); RaycastHit hitInfo; if (Physics.Raycast(ray, out hitInfo)) { hitObject = hitInfo.collider.transform.gameObject; // Works for tiles inside parent Folder if (hitObject.name == "FleetMesh") { hitObject = hitObject.transform.parent.gameObject; } HoverObject(hitObject); } else { ClearHoverSelection(); } // Select objects by cklicking (on a hovered over Object) if (Input.GetMouseButton(0)) { try { // Hide Building Ui Panel if (hitObject.name != "TileConstruction_P1" && hitObject.name != "TileConstruction_P2") { buildingTileUI.Hide(); } // Hide Shipyard Ui Panel if (hitObject.name != "TileShipYardPlayer1" && hitObject.name != "TileShipYardPlayer2") { shipyardTileUI.Hide(); } if (hitObject.name == "NextTurnBTN2") { ClearSelectedSelection(); } else { GetPlayer(); int playerNumber = (int)char.GetNumericValue(hoverObject.name[hoverObject.name.Length - 1]); if (hoverObject.name.Contains("_P1") && hoverObject.name.Contains("Fleet") && activePlayer == 1) { CommandBatchSelectObj(); } else if (hoverObject.name.Contains("_P2") && hoverObject.name.Contains("Fleet") && activePlayer == 2) { CommandBatchSelectObj(); } if ((playerNumber == activePlayer) && !hoverObject.name.Contains("Fleet")) { CommandBatchSelectObj(); } } if (hitObject.name == "BTN_Factory") { clickTile = selectedObject.GetComponent <ClickTile>(); clickTile.BuildFactoryOnTile(); } else if (hitObject.name == "BTN_Turret") { clickTile = selectedObject.GetComponent <ClickTile>(); clickTile.BuildTurretOnTile(); } else if (hitObject.name == "BTN_Solar") { clickTile = selectedObject.GetComponent <ClickTile>(); clickTile.BuildSolarOnTile(); } else if (hitObject.name == "BTN_Fighter") { clickTile = selectedObject.GetComponent <ClickTile>(); if (activePlayer == 1) { clickTile.BuildFighterOnTile(90); } else { clickTile.BuildFighterOnTile(-90); } } else if (hitObject.name == "BTN_Bomber") { clickTile = selectedObject.GetComponent <ClickTile>(); if (activePlayer == 1) { clickTile.BuildBomberOnTile(90); } else { clickTile.BuildBomberOnTile(-90); } } else if (hitObject.name == "BTN_Corvette") { clickTile = selectedObject.GetComponent <ClickTile>(); if (activePlayer == 1) { clickTile.BuildCorvetteOnTile(); } else { clickTile.BuildCorvetteOnTile(-180); } } } catch (Exception e) { Debug.Log(e); } } }