public void AdicionarEfeito(string nome) { if (this.pv == 0) { return; } bool jaExiste = false; Efeito novo = DefinesEfeitos.efeitos[nome]; foreach (var e in efeitos) { if (e.nome == nome) { //se efeito já existe, reiniciar a contagem da duração //melhoria possível - efeito pode ter uma função informando o que fazer (nada, resetar, stack) e.duracao = novo.duracao; jaExiste = true; } } if (!jaExiste) { efeitos.Add(novo); print(nome); GerenciadorScript gs = GameObject.Find("Gerenciador").GetComponent <GerenciadorScript>(); string texto = this.nome + " agora está sob efeito de " + novo.nome + "!"; List <Action <GerenciadorDialogo> > mensagem = new List <Action <GerenciadorDialogo> > { gd => { gd.Dialogo("Efeito", texto); } }; gs.mensagensPendentes.Add(mensagem); } }
public Artefato(int id, string nome, string descricao, Efeito efeito, Sprite icone) { this.id = id; this.nome = nome; this.descricao = descricao; this.efeito = efeito; this.icone = icone; }
public Item(int id, string nome, string descricao, Efeito efeito, Sprite imagem) { this.id = id; this.nome = nome; this.descricao = descricao; this.efeito = efeito; this.imagem = imagem; this.tipo = EnumTipoItem.Artefato; }
private void btnConverter_Click(object sender, EventArgs e) { Bitmap bdest1 = new Bitmap(image); Bitmap bdest2 = new Bitmap(image); imageBitmap = (Bitmap)image; Efeito.convert_to_grayDMA(imageBitmap, bdest1); Efeito.afinamento(bdest1, bdest2); p2.Image = bdest2; }
private void button4_Click(object sender, EventArgs e) { Fator fator = new Fator(); fator = Globals.GetFator(comboBox1.Text); if (fator != null) { Efeito efeito = new Efeito(fator, comboBox2.Text, float.Parse(textBox1.Text)); efeitos.Add(efeito); lisBoxEfeitos.Items.Add(efeito.Fator.Nome + " " + efeito.Operaçao.ToString() + " " + efeito.Valor.ToString()); } }
public Especial(Efeito efeito, ImageBrush img, Cor cor) : base(img) { this.efeito = efeito; base.frontImage = img; this.cor = cor; }
public Coringa(ImageBrush img, Efeito buycards) : base(img) { base.frontImage = img; this.efeito = buycards; }
public IEnumerator Efeito(Efeito efeito) { efeito.cartaQueInvoca.gameObject.transform.localScale = new Vector3(0.28f, 0.28f, 1); if (efeito.escolheAlvoCarta == true) { Configuracoes.admJogo.efeitoAtual = eventoAtivador.cartaQueAtivouEvento.efeito; Configuracoes.admJogo.DefinirEstado(usandoEfeito); yield return(new WaitWhile(() => efeito.cartaAlvo == null)); } if (efeito.tipoEfeito == tipoUnico) { //efeito afeta apenas jogadores if (efeito.ativacao == ativacaoAtiva) { if (efeito.modoDeExecucao == alterarMagiaJogador) { efeito.jogadorAlvo.magia += efeito.alteracaoMagia; efeito.jogadorAlvo.CarregarInfoUIJogador(); efeito.jogadorQueInvoca.CarregarInfoUIJogador(); } if (efeito.modoDeExecucao == alterarVidaJogador) { if (efeito.alteracaoVida > 0) { StartCoroutine(efeito.jogadorAlvo.infoUI.AnimacaoCura(efeito.alteracaoVida)); } else { StartCoroutine(efeito.jogadorAlvo.infoUI.AnimacaoDano(efeito.alteracaoVida)); } yield return(new WaitForSeconds(Configuracoes.admJogo.tempoAnimacaoCuraDano)); efeito.jogadorAlvo.vida += efeito.alteracaoVida; efeito.jogadorAlvo.CarregarInfoUIJogador(); efeito.jogadorQueInvoca.CarregarInfoUIJogador(); Configuracoes.admJogo.ChecaVidaJogadores(); } if (efeito.modoDeExecucao == silenciarJogador) { Configuracoes.admJogo.GetComponent <AudioSource>().clip = audioSilencio; Configuracoes.admJogo.GetComponent <AudioSource>().Play(); efeito.jogadorAlvo.podeUsarEfeito = false; efeito.jogadorAlvo.silenciado = true; efeito.jogadorAlvo.CarregarInfoUIJogador(); } if (efeito.modoDeExecucao == alterarPoderCarta) { if (efeito.afetaTodasCartas) { if (efeito.alteracaoPoder > 0) { foreach (InstanciaCarta c in efeito.jogadorQueInvoca.cartasBaixadas) { StartCoroutine(c.AnimacaoCura(efeito.alteracaoPoder)); c.poder += efeito.alteracaoPoder; c.infoCarta.CarregarCarta(c.infoCarta.carta); } } else if (efeito.alteracaoPoder < 0) { foreach (InstanciaCarta c in Configuracoes.admJogo.jogadorInimigo.cartasBaixadas) { if (c.podeSofrerEfeito) { StartCoroutine(c.AnimacaoDano(efeito.alteracaoPoder)); c.poder += efeito.alteracaoPoder; c.infoCarta.CarregarCarta(c.infoCarta.carta); } } } yield return(new WaitForSeconds(Configuracoes.admJogo.tempoAnimacaoCuraDano)); efeito.jogadorQueInvoca.CarregarInfoUIJogador(); foreach (InstanciaCarta c in Configuracoes.admJogo.jogadorInimigo.cartasBaixadas) { if (c.poder <= 0) { Configuracoes.admJogo.MatarCarta(c, c.jogadorDono); } if (Configuracoes.admJogo.jogadorInimigo.cartasBaixadas.Count == 0) { break; } } } else { if (!efeito.podeUsarEmSi && efeito.cartaAlvo == efeito.cartaQueInvoca) { yield return(null); } else { if (efeito.alteracaoPoder > 0) { StartCoroutine(efeito.cartaAlvo.AnimacaoCura(efeito.alteracaoPoder)); } else { StartCoroutine(efeito.cartaAlvo.AnimacaoDano(efeito.alteracaoPoder)); } efeito.cartaAlvo.poder += efeito.alteracaoPoder; efeito.cartaAlvo.infoCarta.CarregarCarta(efeito.cartaAlvo.infoCarta.carta); efeito.jogadorQueInvoca.CarregarInfoUIJogador(); if (efeito.cartaAlvo.poder <= 0) { Configuracoes.admJogo.MatarCarta(efeito.cartaAlvo, efeito.cartaAlvo.jogadorDono); } } } yield return(new WaitForSeconds(Configuracoes.admJogo.tempoAnimacaoCuraDano)); if (Configuracoes.admJogo.tutorial && efeito.name == "Aboio" && efeito.cartaAlvo.carta.name == "Boiuna") { aboioEmBoiuna.Raise(); } } if (efeito.modoDeExecucao == cartaAtacaDuasVezes) { efeito.cartaAlvo.podeAtacarNesteTurno = true; } if (efeito.modoDeExecucao == paralisarCarta) { if (efeito.cartaAlvo != null) { efeito.cartaAlvo.podeAtacarNesteTurno = false; } } if (efeito.modoDeExecucao == protegerLenda) { efeito.cartaAlvo.protegido = true; efeito.cartaAlvo.infoCarta.protegido = true; efeito.cartaAlvo.podeSerAtacada = false; efeito.cartaAlvo.podeSofrerEfeito = false; Configuracoes.admJogo.GetComponent <AudioSource>().clip = audioProtegido; Configuracoes.admJogo.GetComponent <AudioSource>().Play(); efeito.cartaAlvo.infoCarta.CarregarCarta(efeito.cartaAlvo.carta); } if (efeito.modoDeExecucao == silenciarCarta) { efeito.cartaAlvo.podeAtacarNesteTurno = false; } if (efeito.modoDeExecucao == puxarCarta) { Configuracoes.admJogo.PuxarCarta(efeito.jogadorQueInvoca); Configuracoes.admJogo.PuxarCarta(efeito.jogadorQueInvoca); } if (efeito.modoDeExecucao == reviverCarta) { // Debug.Log("vou reviver do cemitério"); } if (efeito.cartaQueInvoca.infoCarta.carta.tipoCarta.nomeTipo == "Feitiço") { efeito.jogadorQueInvoca.fezAlgumaAcao = true; efeito.cartaQueInvoca.jogadorDono.magia -= efeito.cartaQueInvoca.custo; efeito.jogadorQueInvoca.CarregarInfoUIJogador(); Configuracoes.admJogo.DefinirEstado(emSeuTurno); efeito.jogadorQueInvoca.ColocarCartaNoCemiterio(efeito.cartaQueInvoca); } efeito.cartaQueInvoca.efeitoUsado = true; } if (efeito.ativacao == ativacaoReativa) { } } if (efeito.tipoEfeito == tipoPassivo) { } efeito.cartaQueInvoca.infoCarta.CarregarCarta(efeito.cartaQueInvoca.carta); if (efeito.cartaAlvo != null) { efeito.cartaAlvo.infoCarta.CarregarCarta(efeito.cartaAlvo.carta); } yield return(null); }
public void PuxarCarta(SeguradorDeJogador jogador) { if (jogador.cartasMao.Count < numMaxCartasMao) { AdmRecursos ar = Configuracoes.GetAdmRecursos(); //precisamos acessar o admRecursos GameObject carta = Instantiate(prefabCarta) as GameObject; //instanciamos a carta de acordo com o prefab ExibirInfoCarta e = carta.GetComponent <ExibirInfoCarta>(); //pegamos todas as informações atribuidas de texto e posição dela InstanciaCarta instCarta = carta.GetComponent <InstanciaCarta>(); e.CarregarCarta(ar.obterInstanciaCarta(jogador.baralho.cartasBaralho[jogador.baralho.cartasBaralho.Count - 1])); //e por fim dizemos que os textos escritos serão os da carta na mão do jogador instCarta.carta = e.carta; instCarta.SetPoderECusto(); e.CarregarCarta(instCarta.carta); instCarta.logicaAtual = jogador.logicaMao;//define a lógica pra ser a lógica da mão if (instCarta.carta.efeito != null) { Efeito novoEfeito = ScriptableObject.CreateInstance("Efeito") as Efeito; // novoEfeito = instCarta.carta.efeito; novoEfeito.name = instCarta.carta.efeito.name; novoEfeito.afetaApenasSeuJogador = instCarta.carta.efeito.afetaApenasSeuJogador; novoEfeito.afetaTodasCartas = instCarta.carta.efeito.afetaTodasCartas; novoEfeito.alteracaoMagia = instCarta.carta.efeito.alteracaoMagia; novoEfeito.alteracaoPoder = instCarta.carta.efeito.alteracaoPoder; novoEfeito.alteracaoVida = instCarta.carta.efeito.alteracaoVida; novoEfeito.apenasJogador = instCarta.carta.efeito.apenasJogador; novoEfeito.ativacao = instCarta.carta.efeito.ativacao; novoEfeito.cartaAlvo = instCarta.carta.efeito.cartaAlvo; novoEfeito.cartaQueInvoca = instCarta; novoEfeito.condicaoAtivacao = instCarta.carta.efeito.condicaoAtivacao; novoEfeito.escolheAlvoCarta = instCarta.carta.efeito.escolheAlvoCarta; novoEfeito.eventoAtivador = instCarta.carta.efeito.eventoAtivador; novoEfeito.jogadorAlvo = instCarta.carta.efeito.jogadorAlvo; novoEfeito.jogadorQueInvoca = jogador; novoEfeito.modoDeExecucao = instCarta.carta.efeito.modoDeExecucao; novoEfeito.podeUsarEmSi = instCarta.carta.efeito.podeUsarEmSi; novoEfeito.tipoEfeito = instCarta.carta.efeito.tipoEfeito; instCarta.efeito = novoEfeito; if (instCarta.efeito.apenasJogador) { //afeta vc if (instCarta.efeito.afetaApenasSeuJogador) { instCarta.efeito.jogadorAlvo = jogador; } else//afeta o inimigo { if (jogador == jogadorIA) { instCarta.efeito.jogadorAlvo = jogadorLocal; } else { instCarta.efeito.jogadorAlvo = jogadorIA; } } } } instCarta.jogadorDono = jogador; Configuracoes.DefinirPaiCarta(carta.transform, jogador.seguradorCartas.gridMao.valor);//joga as cartas fisicamente na mão do jogador jogador.cartasMao.Add(instCarta); jogador.baralho.cartasBaralho.RemoveAt(jogador.baralho.cartasBaralho.Count - 1); if (jogador == jogadorAtual) { carta.transform.Find("Fundo da Carta").gameObject.SetActive(false); } else { carta.transform.Find("Fundo da Carta").gameObject.SetActive(true); } } }
public Curinga(ImageBrush img, Efeito buycards, string id) : base(img, id) { base.frontImage = img; this.efeito = buycards; }
public void adicionarEfeito(Efeito novoEfeito) { efeitos.Add(novoEfeito); }