示例#1
0
    public static void retiraComponenteStatus(tipoStatus esseStatus, GameObject G)
    {
        statusTemporarioBase[] osStatus = null;
        switch (esseStatus)
        {
        case tipoStatus.envenenado:
            osStatus = (statusTemporarioBase[])G.GetComponents <envenenado>();
            break;

        case tipoStatus.amedrontado:
            osStatus = (statusTemporarioBase[])G.GetComponents <amedrontado>();
            break;

        case tipoStatus.paralisado:
            osStatus = (statusTemporarioBase[])G.GetComponents <paralisado>();
            break;

        case tipoStatus.todos:
            osStatus = G.GetComponents <statusTemporarioBase>();
            break;
        }

        foreach (statusTemporarioBase sT in osStatus)
        {
            sT.destrua();
        }
    }
示例#2
0
文件: acaoDeItem2.cs 项目: fayvit/PQP
    public static void retiraStatusTemporario(int quem, tipoStatus nomeStatus, heroi H)
    {
        Criature C = H.criaturesAtivos[quem];

        if (quem == 0)
        {
            statusTemporarioBase.retiraComponenteStatus(
                nomeStatus,
                GameObject.Find("CriatureAtivo"));
        }
        else
        {
            statusTemporarioBase.retiraStatusDoGerente(C, tipoStatus.envenenado);
        }

        statusTemporarioBase.tiraStatus(nomeStatus, C.statusTemporarios);
    }
示例#3
0
    public static int contemStatus(tipoStatus esseStatus, Criature X)
    {
        int retorno = -1;

        if (X.statusTemporarios.Count > 0)
        {
            foreach (statusTemporario sT in X.statusTemporarios)
            {
                if (sT.esseStatus == esseStatus)
                {
                    retorno = X.statusTemporarios.IndexOf(sT);
                }
            }
        }

        return(retorno);
    }
示例#4
0
    public static int contemStatus(tipoStatus esseStatus,Criature X)
    {
        int retorno = -1;
        if(X.statusTemporarios.Count>0)
        {
            foreach(statusTemporario sT in X.statusTemporarios )
            {
                if(sT.esseStatus == esseStatus)
                {
                    retorno = X.statusTemporarios.IndexOf(sT);

                }
            }
        }

        return retorno;
    }
示例#5
0
文件: acaoDeItem2.cs 项目: fayvit/PQP
    public static void retiraStatusTemporario(int quem,tipoStatus nomeStatus,heroi H)
    {
        Criature C = H.criaturesAtivos[quem];

        if(quem == 0)
        {
            statusTemporarioBase.retiraComponenteStatus(
                nomeStatus,
                GameObject.Find("CriatureAtivo"));

        }
        else
        {
            statusTemporarioBase.retiraStatusDoGerente(C,tipoStatus.envenenado);
        }

        statusTemporarioBase.tiraStatus(nomeStatus,C.statusTemporarios);
    }
示例#6
0
    public static void tiraStatus(tipoStatus tipo, List <statusTemporario> afetado)
    {
        if (afetado.Count > 0)
        {
            List <statusTemporario> aTirar = new List <statusTemporario>();
            foreach (statusTemporario sT in afetado)
            {
                if (sT.esseStatus == tipo || tipo == tipoStatus.todos)
                {
                    aTirar.Add(sT);
                }
            }

            for (int i = 0; i < aTirar.Count; i++)
            {
                afetado.Remove(aTirar[i]);
            }
        }
    }
示例#7
0
    public static void retiraStatusDoGerente(Criature C, tipoStatus tipo = tipoStatus.todos)
    {
        statusTemporarioBase[] sTs = GameObject.Find("elementosDoJogo").GetComponents <statusTemporarioBase>();

        foreach (statusTemporarioBase sT in sTs)
        {
            if (sT.oAfetado == C)
            {
                if (tipo == tipoStatus.todos)
                {
                    Destroy(sT);
                }
                else
                if (tipo == sT.esseStatus)
                {
                    Destroy(sT);
                }
            }
        }
    }
    tipoStatus statusDesseItem()
    {
        tipoStatus retorno = tipoStatus.nulo;

        switch (nomeItem)
        {
        case nomeIDitem.antidoto:
            retorno = tipoStatus.envenenado;
            break;

        case nomeIDitem.tonico:
            retorno = tipoStatus.paralisado;
            break;

        case nomeIDitem.amuletoDaCoragem:
            retorno = tipoStatus.amedrontado;
            break;
        }

        return(retorno);
    }
示例#9
0
    // Update is called once per frame

    tipoStatus statusRetiradoPorEsseItem()
    {
        tipoStatus tipo = tipoStatus.nulo;

        switch (nomeItem)
        {
        case nomeIDitem.antidoto:
            tipo = tipoStatus.envenenado;
            break;

        case nomeIDitem.amuletoDaCoragem:
            tipo = tipoStatus.amedrontado;
            break;

        case nomeIDitem.tonico:
            tipo = tipoStatus.paralisado;
            break;
        }

        return(tipo);
    }
 public Texture2D RetornaMini(tipoStatus nome)
 {
     return((Texture2D)Resources.Load("miniStatus/" + nome));//return retornaMini(nome.ToString(), "golpe");
 }
示例#11
0
 public statusTemporario(float forca,float tempo,tipoStatus tipo)
 {
     forcaDoDano = forca;
     tempoAteOProximoApply = tempo;
     esseStatus = tipo;
 }
    void verificaUsoComQuem()
    {
        int quem = (int)retornaMenu("perguntaQuem").escolha;

        switch (nomeItem)
        {
        case nomeIDitem.maca:
            acaoAtual = "usandoMaca";
            restaura(10, quem);
            break;

        case nomeIDitem.burguer:
            acaoAtual = "usandoMaca";
            restaura(40, quem);
            break;

        case nomeIDitem.pergaminhoDePerfeicao:
            acaoAtual = "usandoPerfeicao";
            perfeicao(quem);
            break;

        case nomeIDitem.antidoto:
        case nomeIDitem.amuletoDaCoragem:
        case nomeIDitem.tonico:
            tipoStatus statusDoItem = statusDesseItem();
            if (statusTemporarioBase.contemStatus(statusDoItem, H.criaturesAtivos[quem]) > -1)
            {
                retiraStatusTemporario(quem, statusDoItem, H);
                acaoAtual = "animandoAntidoto";
            }
            else
            {
                acaoAtual = "eleNaoPrecisa";
            }
            break;

        case nomeIDitem.gasolina:
        case nomeIDitem.regador:
        case nomeIDitem.aguaTonica:
        case nomeIDitem.pilha:
        case nomeIDitem.estrela:
        case nomeIDitem.quartzo:
        case nomeIDitem.adubo:
        case nomeIDitem.seiva:
        case nomeIDitem.inseticida:
        case nomeIDitem.aura:
        case nomeIDitem.repolhoComOvo:
        case nomeIDitem.geloSeco:
        case nomeIDitem.ventilador:
            esseUsaIsso e = verifiqueEsseUsaIsso(nomeItem, quem);

            if (e.eleUsa)
            {
                acaoAtual = "usandoMaisPE";
                restaura(40, quem, 1);
            }
            else
            {
                acaoAtual    = "naoUsar";
                mensCorrente = textos[3] + e.oTipo + textos[4];
                proxAcao     = "naoUsarQuemAberta";
            }
            break;

        case nomeIDitem.pergDeRajadaDeAgua:
        case nomeIDitem.pergSabre:
        case nomeIDitem.pergGosmaDeInseto:
        case nomeIDitem.pergGosmaAcida:
        case nomeIDitem.pergMultiplicar:
        case nomeIDitem.pergVentania:
        case nomeIDitem.pergVentosCortantes:
        case nomeIDitem.pergOlharParalisante:
        case nomeIDitem.pergOlharMal:
        case nomeIDitem.pergFuracaoDeFolhas:

            Criature      C = H.criaturesAtivos[quem];
            nomesGolpes[] nomeDoGolpeDesseItem = golpeDesseItem();
            nivelGolpe    nG = C.GolpeNaLista(nomeDoGolpeDesseItem);

            if (nG.nome != nomesGolpes.nulo)
            {
                if (!C.NosMeusGolpes(nomeDoGolpeDesseItem))
                {
                    escondeTodosMenus();
                    acaoAtual = "";
                    encontros E = GameObject.Find("Terrain").GetComponent <encontros>();

                    E.aprendeuGolpeForaDoEncontro(C, nG);
                }
                else
                {
                    acaoAtual    = "naoUsar";
                    mensCorrente = string.Format(textos[5], C.Nome,
                                                 item.nomeEmLinguas(nomeItem),
                                                 golpe.nomeEmLinguas(
                                                     new pegaUmGolpe(nG.nome).OGolpe()
                                                     ));
                    proxAcao = "naoUsarQuemAberta";
                }
            }
            else
            {
                acaoAtual    = "naoUsar";
                mensCorrente = string.Format(textos[6], C.Nome, new pegaUmGolpe(nG.nome).OGolpe().Nome);
                proxAcao     = "naoUsarQuemAberta";
            }

            break;
        }
    }
示例#13
0
 public statusTemporario(float forca, float tempo, tipoStatus tipo)
 {
     forcaDoDano           = forca;
     tempoAteOProximoApply = tempo;
     esseStatus            = tipo;
 }
示例#14
0
    public static void tiraStatus(tipoStatus tipo,List<statusTemporario> afetado)
    {
        if(afetado.Count>0)
        {
            List<statusTemporario> aTirar = new List<statusTemporario>();
            foreach(statusTemporario sT in afetado)
            {
                if(sT.esseStatus==tipo || tipo == tipoStatus.todos)
                {
                    aTirar.Add(sT);
                }
            }

            for(int i=0;i<aTirar.Count;i++)
            {
                afetado.Remove(aTirar[i]);
            }
        }
    }
示例#15
0
    public static void retiraStatusDoGerente(Criature C,tipoStatus tipo = tipoStatus.todos)
    {
        statusTemporarioBase[] sTs = GameObject.Find("elementosDoJogo").GetComponents<statusTemporarioBase>();

        foreach(statusTemporarioBase sT in sTs)
        {
            if(sT.oAfetado == C)
            {
                if(tipo == tipoStatus.todos)
                    Destroy(sT);
                else
                    if(tipo == sT.esseStatus)
                        Destroy(sT);
            }
        }
    }
示例#16
0
    public static void retiraComponenteStatus(tipoStatus esseStatus,GameObject G)
    {
        statusTemporarioBase[] osStatus = null;
        switch(esseStatus)
        {
        case tipoStatus.envenenado:
            osStatus = (statusTemporarioBase[])G.GetComponents<envenenado>();
        break;
        case tipoStatus.amedrontado:
            osStatus = (statusTemporarioBase[])G.GetComponents<amedrontado>();
        break;
        case tipoStatus.paralisado:
            osStatus = (statusTemporarioBase[])G.GetComponents<paralisado>();
        break;
        case tipoStatus.todos:
            osStatus = G.GetComponents<statusTemporarioBase>();
        break;
        }

        foreach(statusTemporarioBase sT in osStatus)
        {
            sT.destrua();
        }
    }