private void Select(ClassAcao action) { if (GameManager.PlayerData.SelectedActions.Count(x => x.tipo == _types[_typeSelectedId]) < 3) { if (!GameManager.PlayerData.SelectedActions.Contains(action)) { GameManager.PlayerData.SelectedActions.Add(action); } else { GameManager.PlayerData.SelectedActions.Remove(action); } UpdateGrid(); } if (GameManager.PlayerData.SelectedActions.Count(x => x.tipo == _types[_typeSelectedId]) != 3) { return; } if (GameManager.PlayerData.SelectedActions.Count != 9) { ShowConfirmation(); } else { ShowEndingConfirmation(); } return; }
public void SelectAction(ClassAcao acao) { _resolucoes[_botaoDemanda.Demanda] = acao; _botaoDemanda.Select(); ScrollHtpi.DemandList.GoDown(); if (_resolucoes.Count(x => x.Value != null) == GameManager.GameData.Demandas.Count) { Confirmation(); } }
public void BackToTop() { if (Selected != null) { buttonByAction[Selected].interactable = true; } if (controladorHTPI.ActionSelected() != null) { buttonByAction[controladorHTPI.ActionSelected()].interactable = false; Selected = controladorHTPI.ActionSelected(); } actionList.BackToTop(); }
public void UseAction(ClassAcao action) { actionListWrapper.Hide(); var demand = _selectedDemand.Demand; if (_selectedDemand == null) { Speak("Não posso fazer isso sem ter escolhido a demanda!"); return; } HappinessFactor -= _selectedDemand.Demand.nivelUrgencia; Destroy(_selectedDemand.gameObject); var e = demand.acoesEficazes.FirstOrDefault(x => x.idAcao == action.id); demand.resolvida = true; if (e == null) { GameManager.PlayerData.Happiness -= 10; Speak("Acho que isso não funcionou muito bem"); AudioManager.instance.PlaySfx((int)SoundType.AnswerWrong); barraInferior.UpdateHappinessIcon(); return; } Debug.Log("antes " + GameManager.PlayerData.Happiness); GameManager.PlayerData.Happiness += e.efetividade / 10; barraInferior.UpdateHappinessIcon(); Debug.Log("depois " + GameManager.PlayerData.Happiness); AudioManager.instance.PlaySfx((int)SoundType.AnswerRight); Speak(e.efetividade); barraInferior.IncrementScore(e.efetividade); _selectedDemand = null; CheckIfEnd(); }
public int EfficiencyOf(ClassAcao action) { var efetividade = acoesEficazes.FirstOrDefault(x => x.idAcao == action.id); return(efetividade?.efetividade ?? 0); }