private void ResetState() { state = State.IDLE; // Remove existing landmark preview on state reset if (landmarkPreview != null) { Destroy(landmarkPreview.gameObject); landmarkPreview = null; } }
private void InputStartBuilding(Grid startGrid) { if (Input.GetMouseButtonDown(InputUtils.MOUSE_BUTTON_LEFT)) { if (startGrid != null) { state = State.BUILDING; landmarkPreview = Instantiate( landmarkFactory.GetLandmarkPreviewPrefab(landmarkAssetId), startGrid.transform.position - new Vector3(0.5f, 0.0f, 0.5f), Quaternion.identity, transform); landmarkPreview.StartGrid = startGrid; } else { // Invalid start grid, cancel road building operation ResetState(); } } }