protected override int SetarOpcoes() { List <ItensAVenda> I = new List <ItensAVenda>(); KeyVar myKeys = GameController.g.MyKeys; for (int i = 0; i < itensParaVender.Length; i++) { Debug.Log("Id daqui: " + ID); if (myKeys.VerificaAutoShift("concluido, loja " + ID + " item " + i)) { itensParaVender[i].quantidadeDisponivel = 0; } else if (myKeys.VerificaAutoCont("quantidade disponivel, loja " + ID + " item " + i) > 0) { itensParaVender[i].quantidadeDisponivel = myKeys.VerificaAutoCont("quantidade disponivel, loja " + ID + " item " + i); } } for (int i = 0; i < itensParaVender.Length; i++) { if (myKeys.VerificaAutoShift(itensParaVender[i].preRequisito) && (itensParaVender[i].quantidadeDisponivel > 0 || itensParaVender[i].quantidadeDisponivel == -1)) { I.Add(itensParaVender[i]); } } itensPossiveisDeVender = I.ToArray(); ChangeOption(0); return(I.Count); }
private void OnTriggerEnter2D(Collider2D collision) { KeyVar myKeys = GameController.g.MyKeys; if (collision.tag == "attackCollisor") { Debug.Log(myKeys.VerificaAutoCont(ID) + " os hits"); myKeys.SomaAutoCont(ID, 1); int moedasAgora; bool foi = myKeys.VerificaAutoCont(ID) < numHits; moedasAgora = numMoedas / (numHits + 1); if (!foi) { moedasAgora = numMoedas - (numHits - 1) * moedasAgora; } SpawnMoedas.Spawn(transform.position, moedasAgora); new MyInvokeMethod().InvokeNoTempoDeJogo(() => { EventAgregator.Publish(new StandardSendGameEvent(EventKey.disparaSom, "Break")); }, .3f); if (!foi) { myKeys.MudaAutoShift(ID, true); particulaDaFinalizacao.SetActive(true); Destroy(GetComponent <Collider2D>()); Destroy(GetComponent <SpriteRenderer>()); Destroy(gameObject, 5); } } }
private void OnTriggerEnter2D(Collider2D collision) { KeyVar kv = GameController.g.MyKeys; if (collision.tag == "attackCollisor" && !kv.VerificaEnemyShift(ID)) { //kv.SomaAutoCont(ID, 1); EventAgregator.Publish(new StandardSendGameEvent(EventKey.disparaSom, som)); EventAgregator.Publish(new StandardSendGameEvent(EventKey.sumContShift, ID, 1)); EventAgregator.Publish(new StandardSendGameEvent(EventKey.requestChangeEnemyKey, "limparContPentagono" + ID)); if (kv.VerificaAutoCont(ID) >= contCargasTotais) { EventAgregator.Publish(new StandardSendGameEvent(EventKey.requestChangeEnemyKey, ID)); Desativar(); new MyInvokeMethod().InvokeNoTempoDeJogo(() => { EventAgregator.Publish(new StandardSendGameEvent(EventKey.disparaSom, SoundEffectID.exitCheckPoint)); }, .5f); } InstanciaLigando.Instantiate(particulaDeAcao, 0.5f * (collision.transform.position + transform.position), 5); DadosDoJogador dj = GameController.g.Manager.Dados; if (dj.PontosDeMana < dj.MaxMana) { dj.AdicionarMana(taxaDeRecuperacao); EventAgregator.Publish(new StandardSendGameEvent(EventKey.changeMagicPoints, dj.PontosDeMana, dj.MaxMana)); } } }
string[] RetornaArgumentosPreVenda() { string[] retorno = new string[3]; KeyVar keys = GameController.g.MyKeys; retorno[0] = !indice1?MbItens.NomeEmLinguas(nomeIDitem.pergSinara) : MbItens.NomeEmLinguas(nomeIDitem.pergAlana); retorno[1] = !indice1 ? Mathf.Pow(2, keys.VerificaAutoCont(KeyCont.pergSinaraComprados)).ToString() : Mathf.Pow(2, keys.VerificaAutoCont(KeyCont.pergAlanaComprados)).ToString(); retorno[2] = !indice1 ? (100 * Mathf.Pow(2, keys.VerificaAutoCont(KeyCont.pergSinaraComprados))).ToString() : (100 * Mathf.Pow(2, keys.VerificaAutoCont(KeyCont.pergAlanaComprados))).ToString(); return(retorno); }
void VerificaQualFala() { KeyVar myKeys = AbstractGameController.Instance.MyKeys; Debug.Log("ultimo indice no inicio: " + ultimoIndice); int indiceFinal = ultimoIndice > 0 ? Mathf.Min(ultimoIndice, falas.Length) : falas.Length; for (int i = 0; i < indiceFinal; i++) { if (myKeys.VerificaAutoShift(falas[i].ChaveCondicionalDaConversa)) { conversa = TextBank.RetornaListaDeTextoDoIdioma(falas[i].ChaveDeTextoDaConversa).ToArray(); ultimoIndice = i; } } Debug.Log(indiceFinal + " : " + ultimoIndice); if (falas[ultimoIndice].Repetir >= 0) { string kCont = falas[ultimoIndice].ChaveCondicionalDaConversa.ToString(); myKeys.SomaAutoCont(kCont, 1); if (falas[ultimoIndice].Repetir < myKeys.VerificaAutoCont(kCont)) { myKeys.MudaShift(falas[ultimoIndice].ChaveCondicionalDaConversa, false); } } }
void ComprarOuNaoComprar(int indice) { GameController.g.HudM.Menu_Basico.FinalizarHud(); DisparaTexto disparaT = GameController.g.HudM.DisparaT; KeyVar keys = GameController.g.MyKeys; DadosDoPersonagem dados = GameController.g.Manager.Dados; disparaT.DesligarPaineis(); int val = !indice1 ? (int)Mathf.Pow(2, keys.VerificaAutoCont(KeyCont.pergSinaraComprados)) : (int)Mathf.Pow(2, keys.VerificaAutoCont(KeyCont.pergAlanaComprados)); switch (indice) { case 0: if (dados.TemItem(nomeIDitem.tinteiroSagradoDeLog) >= val && dados.Cristais >= 100 * val) { dados.Cristais -= 100 * val; GameController.g.HudM.AtualizeImagemDeAtivos(); MbItens.RetirarUmItem(GameController.g.Manager, nomeIDitem.tinteiroSagradoDeLog, val); dados.AdicionaItem(indice1 ? nomeIDitem.pergAlana : nomeIDitem.pergSinara); disparaT.ReligarPaineis(); disparaT.Dispara(conversa[2], fotoDoNPC); estadoInterno = EstadoInterno.fraseDeBoaCompra; keys.SomaCont(indice1 ? KeyCont.pergAlanaComprados : KeyCont.pergSinaraComprados, 1); } else { disparaT.ReligarPaineis(); disparaT.Dispara(conversa[1], fotoDoNPC); estadoInterno = EstadoInterno.fraseInsuficiente; } break; case 1: EntraNasEscolhas(); break; } }
void VerificaQualFala() { KeyVar myKeys = GameController.g.MyKeys; Debug.Log("ultimo indice no inicio: " + ultimoIndice); //int indiceInicial = ultimoIndice < falas.Length ? Mathf.Max(ultimoIndice,0) : 0; int indiceFinal = ultimoIndice > 0 ? Mathf.Min(ultimoIndice, falas.Length) : falas.Length; for (int i = 0; i < indiceFinal; i++) //for (int i = falas.Length - 1; i >= indiceInicial; i--) { if (myKeys.VerificaAutoShift(falas[i].ChaveCondicionalDaConversa)) { conversa = BancoDeTextos.RetornaListaDeTextoDoIdioma(falas[i].ChaveDeTextoDaConversa).ToArray(); ultimoIndice = i; } } Debug.Log(indiceFinal + " : " + ultimoIndice); if (falas[ultimoIndice].Repetir >= 0) { string kCont = falas[ultimoIndice].ChaveCondicionalDaConversa.ToString(); myKeys.SomaAutoCont(kCont, 1); if (falas[ultimoIndice].Repetir < myKeys.VerificaAutoCont(kCont)) { myKeys.MudaShift(falas[ultimoIndice].ChaveCondicionalDaConversa, false); } } //ultimoIndice--; /* * if (!GameController.g.MyKeys.VerificaAutoShift(falas[i].ChaveCondicionalDaConversa)) * conversa = BancoDeTextos.RetornaListaDeTextoDoIdioma(falas[i].ChaveDeTextoDaConversa).ToArray(); * // conversa é uma variavel protected da classe pai*/ }