public PlayerControler() { turnOfLight = true; lightsEnergy = 100; darksEnergy = 100; GameEvents.GetInstance().OnPlayerChanged += PassTheMove; }
private void Start() { playerControler = PlayerControler.GetInstance(); GameEvents.GetInstance().OnWin += ShowWinScreen; GameEvents.GetInstance().OnPlayerChanged += RefreshButtons; GameEvents.GetInstance().OnActionDone += RefreshButtons; GameEvents.GetInstance().OnUnitSpawned += UpdateEnergyValue; ShowChangingScreen(); instruction.SetActive(true); }
private void DoAction(Vector3 targetPosition) { if (cellManager.GetCell(targetPosition) != null) { Debug.Log(actionDefiner.DefineAction(targetPosition)); switch (actionDefiner.DefineAction(targetPosition)) { case ActionDefiner.Action.SelectCell: cellSelection.SelectCell(cellManager.GetCell(targetPosition)); unitSelection.DeselectUnit(); break; case ActionDefiner.Action.SelectFriend: cellSelection.SelectCell(cellManager.GetCell(targetPosition)); unitSelection.SelectUnit(unitsList.GetUnit(targetPosition)); unitSelection.GetSelectedUnit().ShowActions(); break; case ActionDefiner.Action.SelectEnemy: cellSelection.SelectCell(cellManager.GetCell(targetPosition)); unitSelection.SelectUnit(unitsList.GetUnit(targetPosition)); break; case ActionDefiner.Action.Attack: unitSelection.GetSelectedUnit().HideActions(); unitSelection.GetSelectedUnit().Attack(targetPosition); break; case ActionDefiner.Action.ShowActions: cellSelection.SelectCell(cellManager.GetCell(targetPosition)); unitSelection.GetSelectedUnit().ShowActions(); break; case ActionDefiner.Action.Spawn: cellSelection.SelectCell(cellManager.GetCell(targetPosition)); spawnMenu.Open(); break; case ActionDefiner.Action.Cancel: unitSelection.GetSelectedUnit().HideActions(); break; case ActionDefiner.Action.Move: cellSelection.SelectCell(cellManager.GetCell(targetPosition)); unitSelection.GetSelectedUnit().MoveTo(targetPosition); break; case ActionDefiner.Action.Ignore: break; } GameEvents.GetInstance().ActionDone(); } }
private void Start() { GameEvents.GetInstance().OnCellClicked += DoAction; GameEvents.GetInstance().OnPlayerChanged += RefreshField; GameEvents.GetInstance().OnCaptureButtonPressed += CapturePortal; }
public void PassMove() { GameEvents.GetInstance().PlayerChanged(); ShowChangingScreen(); }