コード例 #1
0
 // Start is called before the first frame update
 void Start()
 {
     cooldownPadrao     = 50;
     gs                 = GameObject.Find("Gerenciador").GetComponent <GerenciadorScript>();
     input              = GameObject.Find("Input").GetComponent <GerenciadorInput>();
     cursor             = GameObject.Find("Cursor").GetComponent <ControleCursor>();
     tilemap            = GameObject.Find("Tilemap").GetComponent <Tilemap>();
     personagem         = gameObject.GetComponent <Personagem>();
     ap                 = GameObject.Find("Placeholder").GetComponent <AttackParent>();
     acabaramDeMeAtacar = new List <Personagem>();
 }
コード例 #2
0
ファイル: ControleCursor.cs プロジェクト: marcavis/tresreinos
 void Start()
 {
     novaPosicao         = transform.position;
     _tilemap            = GameObject.Find("Tilemap").GetComponent <Tilemap>();
     acessoCursor        = GameObject.Find("CursorAccess").GetComponent <Tilemap>();
     gs                  = GameObject.Find("Gerenciador").GetComponent <GerenciadorScript>();
     gerenciadorInput    = GameObject.Find("Input").GetComponent <GerenciadorInput>();
     menuInventario      = GameObject.Find("CanvasInventario").GetComponent <GerenciadorInventario>();
     menuInventarioTroca = GameObject.Find("CanvasInventarioTroca").GetComponent <GerenciadorInventarioTroca>();
     menuHabilidades     = GameObject.Find("CanvasHabilidades").GetComponent <GerenciadorTelaHab>();
     ap                  = GameObject.Find("Placeholder").GetComponent <AttackParent>();
     ap.Init();
 }
コード例 #3
0
ファイル: Personagem.cs プロジェクト: marcavis/tresreinos
    // Start is called before the first frame update
    void Start()
    {
        //andar = Defines.Andar("normal");
        efeitos = new List <Efeito>();

        //valores auxiliares para movimentação no campo de batalha
        rota          = new List <Vector3>();
        rotaBacktrack = new List <Vector3>();
        destinoFinal  = transform.position;

        inventario  = new Item[8];
        habilidades = new Habilidade[8];
        //atributos
        Defines.Inicializacao(nome, gameObject);

        gs = GameObject.Find("Gerenciador").GetComponent <GerenciadorScript>();
        gs.AdicionarPersonagem(gameObject);
        anim = GetComponent <Animator>();
        ControladorDano.Init();
        ap = GameObject.Find("Placeholder").GetComponent <AttackParent>();
    }
コード例 #4
0
ファイル: Personagem.cs プロジェクト: marcavis/tresreinos
    public void UsarHabilidade(Vector3 posCentral)
    {
        //quais alvos selecionar, dependendo se a habilidade afeta alvos do mesmo time ou do time inimigo
        int               timeAlvo        = habilidadeAtual.seMesmoTime ? this.time : (this.time + 1) % 2;
        List <Vector3>    tilesAlcancados = habilidadeAtual.areaDeEfeito;
        List <Personagem> alvos           = new List <Personagem>();
        GerenciadorScript gs = GameObject.Find("Gerenciador").GetComponent <GerenciadorScript>();
        AttackParent      ap = GameObject.Find("Placeholder").GetComponent <AttackParent>();
        List <Action <GerenciadorDialogo> > list = new List <Action <GerenciadorDialogo> >();

        foreach (Vector3 offset in tilesAlcancados)
        {
            //considerando posCentral como centro, tenta ver se encontra um alvo possível em todos os offsets
            //da área de efeito da habilidade
            Personagem alvoPossivel = gs.ObjetoNoTile(posCentral + offset);
            if (alvoPossivel == null)
            {
                continue;
            }
            else if (alvoPossivel.time == timeAlvo)
            {
                list.Add(gd => {
                    gd.IrPara(posCentral + offset);
                });
                list.Add(gd => {
                    ap.Abrir();
                    ap.SetLeftAnimator(Defines.animacoesAtk[this.nome]);
                    ap.SetRightAnimator(Defines.animacoesAtk[alvoPossivel.nome]);
                });
                list.Add(gd => {
                    habilidadeAtual.efeitoUso(this, alvoPossivel);
                });
                list.Add(gd => {
                    ap.Fechar();
                });
            }
        }
        gs.mensagensPendentes.Add(list);
    }
コード例 #5
0
ファイル: Personagem.cs プロジェクト: marcavis/tresreinos
    public void UsarItem(Personagem unid)
    {
        GerenciadorScript gs = GameObject.Find("Gerenciador").GetComponent <GerenciadorScript>();
        AttackParent      ap = GameObject.Find("Placeholder").GetComponent <AttackParent>();
        List <Action <GerenciadorDialogo> > list = new List <Action <GerenciadorDialogo> >();

        list.Add(gd => {
            gd.IrPara(unid.transform.position);
        });
        list.Add(gd => {
            ap.Abrir();
            ap.SetLeftAnimator(Defines.animacoesAtk[this.nome]);
            ap.SetRightAnimator(Defines.animacoesAtk[unid.nome]);
        });
        list.Add(gd => {
            itemAtual.efeitoUso(this, unid);
        });
        list.Add(gd => {
            ap.Fechar();
        });
        inventario[posItemAtual] = null;
        gs.mensagensPendentes.Add(list);
    }