void LightsOffButton() { CancelExistingActions(); nextAction = GameManager.Actions.TurnOffLight; validRooms.Clear(); foreach (Room room in activePlayer.currentRoom.doors) { if (room.isLit) { validRooms.Add(room); } } foreach (Room room in activePlayer.currentRoom.sharedWalls) { if (room.isLit) { validRooms.Add(room); } } foreach (Room room in validRooms) { UIActionIndicator indicator = Instantiate(actionIndicator).GetComponent <UIActionIndicator>(); indicator.transform.position = room.transform.position + Vector3.up * 3.0f; indicator.SetupIndicator(UIActionIndicator.Indicator.TurnOffLight, ghostMarkerColor); activeIndicators.Add(indicator.gameObject); } EventManager.AddListener(EventManager.EventType.RoomClicked, SelectRoom); }
void MoveButton() { CancelExistingActions(); nextAction = GameManager.Actions.Move; validRooms.Clear(); if (activePlayer.isGhost) { foreach (Room room in activePlayer.currentRoom.doors) { if (!room.isLit) { validRooms.Add(room); } } foreach (Room room in activePlayer.currentRoom.sharedWalls) { if (!room.isLit) { validRooms.Add(room); } } } else { foreach (Room room in activePlayer.currentRoom.doors) { if (room.isLit || activePlayer.flashLightCharge > 0) { validRooms.Add(room); } } } foreach (Room room in validRooms) { //room.SetHighlight(true); UIActionIndicator indicator = Instantiate(actionIndicator).GetComponent <UIActionIndicator>(); indicator.transform.position = room.transform.position + Vector3.up * 3.0f; if (activePlayer.isGhost) { indicator.SetupIndicator(UIActionIndicator.Indicator.MoveGhost, ghostMarkerColor); } else { if (room.isLit) { indicator.SetupIndicator(UIActionIndicator.Indicator.MoveHumanLit, activePlayer.color); } else { indicator.SetupIndicator(UIActionIndicator.Indicator.MoveHumanUnlit, activePlayer.color); } } activeIndicators.Add(indicator.gameObject); } EventManager.AddListener(EventManager.EventType.RoomClicked, SelectRoom); }