protected override void EscolhiEmQuemUsar(int indice) { indiceDoEscolhido = indice; CriatureBase C = GameController.g.Manager.Dados.CriaturesAtivos[indice]; Atributos A = C.CaracCriature.meusAtributos; Usara usara = VerificaUso(C); if (usara.diferenteDeNulo && !usara.jaTem || A.PV.Corrente <= 0) { if (C.GerenteDeGolpes.meusGolpes.Count >= 4 && A.PV.Corrente > 0) { VerificaQualEsquecer(C, UsarOuNaoUsarMenu); GameController.g.HudM.P_EscolheUsoDeItens.gameObject.SetActive(false); GameController.g.HudM.MenuDePause.EsconderPainelDeItens(); } else { EscolhiEmQuemUsar(indice, A.PV.Corrente > 0, true); } } else if (!usara.diferenteDeNulo) { MensDeUsoDeItem.MensNaoPodeAprenderGolpe(NomeBasico, C.NomeEmLinguas); } else if (usara.jaTem) { MensDeUsoDeItem.MensjaConheceGolpe(C.NomeEmLinguas, NomeEmLinguas(ID), GolpeBase.NomeEmLinguas(GolpePorAprender(C))); } }
protected void EscolhiEmQuemUsar( int indice, bool vaiUsar, bool tipoCerto, int valor = 0, int corrente = 0, int maximo = 0, NomeTipos recuperaDoTipo = NomeTipos.nulo) { CharacterManager manager = GameController.g.Manager; CriatureBase C = manager.Dados.CriaturesAtivos[indice]; if (vaiUsar && tipoCerto) { if (Consumivel) { RetirarUmItem(manager, this, 1, FluxoDeRetorno.menuHeroi); } AcaoDoItemConsumivel(C); ItemQuantitativo.AplicacaoDoItemComMenu(manager, C, valor, VerificaTemMaisParaUsar); } else if (!tipoCerto) { MensDeUsoDeItem.MensNaoTemOTipo(recuperaDoTipo.ToString()); } else if (corrente <= 0) { MensDeUsoDeItem.MensDeMorto(C.NomeEmLinguas); } else if (corrente >= maximo) { MensDeUsoDeItem.MensDeNaoPrecisaDesseItem(C.NomeEmLinguas); } }