public IEnumerator handleLocClick(Location loc) { if (Vals.removeResearchStation) { if (loc.getResearchStationStatus()) { loc.removeResearchStation(); boardUI.toggleResearchStation(loc); Vals.removeResearchStation = false; } } else if (Vals.cardResolving == Vals.AIRLIFT) { playerManager.airlift(loc); Vals.cardResolving = -1; } else if (Vals.cardResolving == Vals.GOVERNMENT_GRANT) { if (!loc.getResearchStationStatus()) { yield return(StartCoroutine(board.buildResearchStation(loc))); Vals.cardResolving = -1; } } else if (gameFlowManager.getPhase() == Vals.Phase.ACTION && playerManager.actionAvailable()) { Debug.Log(loc.getName() + " clicked"); Player player = playerManager.getCurPlayer(); if (player.getLocation().Equals(loc)) { StartCoroutine(handleTreatAction(player, loc)); } else { StartCoroutine(playerManager.potentialPlayerMovement(player, loc)); } } yield break; }