public void SetarDados(DadosDoPersonagem dados, int indice, TipoDeDado tipo, System.Action <int> ao) { Acao += ao; switch (tipo) { case TipoDeDado.item: imgDoDado.texture = GameController.g.El.RetornaMini(dados.Itens[indice].ID); txtDoDado.text = MbItens.NomeEmLinguas(dados.Itens[indice].ID); quantidade.text = dados.Itens[indice].Estoque.ToString(); break; case TipoDeDado.golpe: nomesGolpes nomeG = dados.CriaturesAtivos[0].GerenteDeGolpes.meusGolpes[indice].Nome; SetarGolpe(nomeG); break; case TipoDeDado.criature: containerDaQuantidade.SetActive(false); imgDoDado.texture = GameController.g.El.RetornaMini(dados.CriaturesAtivos[indice + 1].NomeID); txtDoDado.text = dados.CriaturesAtivos[indice + 1].NomeEmLinguas; break; } // if (indice < 5 /*&& !GameController.g.HudM.PauseM.gameObject.activeSelf*/) // txtDoBtn.text = "n" + (indice + 1); //else //txtDoBtn.transform.parent.gameObject.SetActive(false); }
public void IniciarPainel(nomeIDitem ID, int quantidade) { descricaoDoItem.transform.parent.gameObject.SetActive(true); imgDoItem.texture = GameController.g.El.RetornaMini(ID); numDeItens.text = quantidade.ToString(); nomeDoItem.text = MbItens.NomeEmLinguas(ID); descricaoDoItem.text = BancoDeTextos.RetornaListaDeTextoDoIdioma(ChaveDeTexto.shopInfoItem)[(int)ID]; }
static MbItens ProcuraItemNaLista(nomeIDitem nome) { MbItens retorno = new MbItens(new ContainerDeCaracteristicasDeItem()); for (int i = GameController.g.Manager.Dados.Itens.Count - 1; i > -1; i--) { if (GameController.g.Manager.Dados.Itens[i].ID == nome) { retorno = GameController.g.Manager.Dados.Itens[i]; } } return(retorno); }
public static bool RetirarUmItem( CharacterManager gerente, MbItens nomeItem, int quantidade = 1, FluxoDeRetorno fluxo = FluxoDeRetorno.heroi) { bool retorno = true; for (int i = 0; i < quantidade; i++) { retorno &= RetirarUmItem(ProcuraItemNaLista(nomeItem.ID), gerente, fluxo); } return(retorno); }
public static bool RetirarUmItem( MbItens nomeItem, CharacterManager gerente, FluxoDeRetorno fluxo = FluxoDeRetorno.heroi) { int indice = gerente.Dados.Itens.IndexOf(nomeItem); if (indice > -1) { if (gerente.Dados.Itens[indice].Estoque >= 1) { gerente.Dados.Itens[indice].Estoque--; GameController g = GameController.g; if (g.UsarTempoDeItem == UsarTempoDeItem.sempre || (g.UsarTempoDeItem == UsarTempoDeItem.emLuta && g.estaEmLuta)) { gerente.Dados.TempoDoUltimoUsoDeItem = Time.time; } Debug.Log("remove ai vai"); if (gerente.Dados.Itens[indice].Estoque == 0) { Debug.Log("Tira daĆ"); g.FinalizaHuds(); gerente.Dados.Itens.Remove(gerente.Dados.Itens[indice]); if (gerente.Dados.itemSai > gerente.Dados.Itens.Count - 1) { gerente.Dados.itemSai = 0; } if (fluxo == FluxoDeRetorno.menuCriature || fluxo == FluxoDeRetorno.menuHeroi) { GameController.g.StartCoroutine(VoltarDosItensQuandoNaoTemMais()); } } return(true); } } return(false); }
public void SetarOpcao(System.Action <int> acaoDaOpcao, string txtDaOpcao, bool comprar = true, int indice = -1) { this.indice = indice; nomeIDitem nomeID = (nomeIDitem)System.Enum.Parse(typeof(nomeIDitem), txtDaOpcao); Acao += acaoDaOpcao; TextoOpcao.text = MbItens.NomeEmLinguas(nomeID); imgDoItem.texture = GameController.g.El.RetornaMini(nomeID); if (comprar) { precoDoItem.text = PegaUmItem.Retorna(nomeID).Valor.ToString(); indice = transform.GetSiblingIndex() - 1; } else { int valor = PegaUmItem.Retorna(nomeID).Valor; if (valor > 0) { precoDoItem.text = Mathf.Max(valor / 4, 1).ToString(); } } }
public void AdicionaItem(nomeIDitem nomeItem) { MbItens I = PegaUmItem.Retorna(nomeItem); bool foi = false; if (I.Acumulavel > 1) { int ondeTem = -1; for (int i = 0; i < Itens.Count; i++) { if (Itens[i].ID == I.ID) { if (Itens[i].Estoque < Itens[i].Acumulavel) { if (!foi) { ondeTem = i; foi = true; } } } } if (foi) { Itens[ondeTem].Estoque++; } else { Itens.Add(PegaUmItem.Retorna(nomeItem)); } } else { Itens.Add(PegaUmItem.Retorna(nomeItem)); } }
// Use this for initialization public void Start(CharacterManager manager, FluxoDeRetorno fluxo) { retorno = false; retornoDeFora = true; gerente = manager; esseItem = gerente.Dados.Itens[gerente.Dados.itemSai]; this.fluxo = fluxo; switch (fluxo) { case FluxoDeRetorno.criature: esseItem.IniciaUsoComCriature(gerente.gameObject); break; case FluxoDeRetorno.heroi: esseItem.IniciaUsoDeHeroi(gerente.gameObject); break; case FluxoDeRetorno.menuHeroi: case FluxoDeRetorno.menuCriature: esseItem.IniciaUsoDeMenu(gerente.gameObject); break; } }
void VerificaItem() { if (GameController.g.MyKeys.VerificaAutoShift(autoKey)) { GameController.g.HudM.Painel.AtivarNovaMens(textos[1], 25); } else { ItemDeBau ii = itemDoBau[indiceDoItem]; GameController.g.HudM.Painel.AtivarNovaMens(string.Format(textos[2], ii.Quantidade, MbItens.NomeEmLinguas(ii.Item)), 25); GameController.g.HudM.MostrarItem.IniciarPainel(ii.Item, ii.Quantidade); GameController.g.Manager.Dados.AdicionaItem(ii.Item, ii.Quantidade); indiceDoItem++; } }
void AtualizaDadosDeHUD() { if (contadorDeItens.Count > 0) { VerificaNumeroDeElementos(); int indiceEscolhido = -1; string nome = ""; if (dados != null) { for (int i = 0; i < numeroDeElementos; i++) { Texture2D textura = null; contadorDeItens[i].transform.parent.gameObject.SetActive(false); switch (tipo) { case TipoHud.criatures: textura = GameController.g.El.RetornaMini(dados.CriaturesAtivos[i + 1].NomeID); if (i == dados.CriatureSai) { indiceEscolhido = i; nome = dados.CriaturesAtivos[i + 1].NomeEmLinguas; } break; case TipoHud.golpes: GerenciadorDeGolpes gB = GameController.g.Manager.CriatureAtivo.MeuCriatureBase.GerenteDeGolpes; textura = GameController.g.El.RetornaMini(gB.meusGolpes[i].Nome); if (i == gB.golpeEscolhido) { indiceEscolhido = i; nome = gB.meusGolpes[i].NomeEmLinguas(); } break; case TipoHud.items: textura = GameController.g.El.RetornaMini(dados.Itens[i].ID); if (i == dados.itemSai) { nome = MbItens.NomeEmLinguas(dados.Itens[i].ID); indiceEscolhido = i; } contadorDeItens[i].transform.parent.gameObject.SetActive(true); contadorDeItens[i].text = dados.Itens[i].Estoque.ToString(); break; } if (numeroDeElementos > i) { raw[i].texture = textura; raw[i].color = new Color(1, 1, 1, 1); } else { raw[i].color = new Color(1, 1, 1, 0); } if (i == indiceEscolhido) { imagensDePainel[i].sprite = GameController.g.El.uiDestaque; } else { imagensDePainel[i].sprite = GameController.g.El.uiDefault; } } } textoDoItem.text = nome; } }