public void PlacingRoad_Update() { Vector3?mousePos = RaycastMouse(); if (mousePos.HasValue) { PlaceRoadAction action = new PlaceRoadAction(HexEdge.GetNearestEdge(mousePos.Value), Color); if (action.IsValid(Board)) { Board.SetCurrentAction(action); if (Input.GetMouseButtonDown(0)) { Board.ApplyCurrentAction(); ChangeState(PlayerStates.Idle); if (Coordinator.GameState.State == GameStates.Setup) { Coordinator.NextTurn(); } } } } }