예제 #1
0
        public void TestCriarBoneco()
        {
            var boneco = new Boneco();

            Assert.AreEqual(boneco.Membros, 0);
            Assert.IsTrue(boneco.EstaVivo);
        }
 public static BonecoDTO ToBonecoViewItem(this Boneco author)
 {
     return(new BonecoDTO()
     {
         Name = ""
     });
 }
예제 #3
0
 public void Destacar(char x)
 {
     if (!(Secreta1.Destacar(x) || Secreta1.Destacar(x)))
     {
         Boneco.AdicionarMembro();
     }
 }
예제 #4
0
        public void TestAdicionarMembroBoneco()
        {
            var boneco = new Boneco();

            Assert.AreEqual(boneco.Membros, 0);
            boneco.AdicionarMembro();
            Assert.AreEqual(boneco.Membros, 1);
            Assert.IsTrue(boneco.EstaVivo);
        }
예제 #5
0
        public void TestBonecoEnforcado()
        {
            var boneco = new Boneco();

            Assert.AreEqual(boneco.Membros, 0);
            for (int i = 0; i < 5; i++)
            {
                boneco.AdicionarMembro();
            }
            Assert.AreEqual(boneco.Membros, 5);
            Assert.IsFalse(boneco.EstaVivo);
        }
예제 #6
0
    /// <summary>
    /// Posiciona e liga a bomba
    /// </summary>
    /// <param name="b"> Boneco que criou a bomba. </param>
    public void setup(Boneco b)
    {
        gc    = GridCalculator.Instance;
        owner = b;
        power = b.FirePower;
        transform.position = gc.centerPosition(b.transform.position);
        GetComponent <Renderer>().sortingOrder = Layer;
        state = Ticking;
        GetComponent <AudioSource>().clip = (AudioClip)Resources.Load(sfxPath + "PlaceBomb");
        GetComponent <AudioSource>().Play();
        tickCR = StartCoroutine(tick());

        // anim = GetComponent<Animator>();
    }
예제 #7
0
    /// <summary>
    /// Faz ajustes e definições finais antes de ligar a explosão
    /// </summary>
    /// <param name="b"> Boneco que soltou a bomba que causou essa explosão. </param>
    ///                     - atm faz nada, mas depois poderá ser usado pra dar a kill pra ele.
    /// <param name="center"> Centro das explosões causada pela bomba. Responsável pelo som. </param>
    public void setup(Boneco b, bool center)
    {
        owner = b;
        GetComponent <Renderer>().sortingOrder = Layer;
        this.center = center;
        if (center)
        {
            AudioSource player = gameObject.AddComponent <AudioSource>();
            player.playOnAwake = false;
            AudioClip sfx = (AudioClip)Resources.Load("Sounds/SFX/Explosion v1");
            if (sfx != null)
            {
                player.clip = sfx;
                player.Play();
            }
        }

        StartCoroutine(exploding());
    }
예제 #8
0
        public static void starta()
        {
            Boneco b = new Boneco();

            do
            {
                b.anda();
                Console.WriteLine("Andando----");
                Console.WriteLine(b.informacoes());
                Thread.Sleep(1000);
                if (b.getEnergia() <= 0)
                {
                    do
                    {
                        Console.WriteLine("descansando");
                        b.setEnergia();
                        Console.WriteLine(b.informacoes());
                        Thread.Sleep(500);
                    } while (b.getEnergia() < 10);
                    Console.WriteLine("recuperado... voltando em 3 segundos");
                    Thread.Sleep(3000);
                }
            } while (true);
        }
예제 #9
0
    /// <summary>
    /// Prepara o tabuleiro. Posiciona os blocos destrutíveis no mapa e os jogadores.
    /// </summary>
    void setupBoard()
    {
        // Verifica se o mapa está corretamente posicionado
        Vector2 curPos = gc.centerPosition(new Vector2(0, 0));

        if (curPos != new Vector2(0, 0) || !gc.tileContent(new Vector2(-1, 0)).CompareTag("Border") ||
            !gc.tileContent(new Vector2(0, -1)).CompareTag("Border"))
        {
            Debug.Log("Deu ruim. Tabuleiro mal formado"); // PutaVida.exception
            return;
        }

        // Pegando tamanho da parte jogável do mapa
        do
        {
            GameObject content = gc.tileContent(curPos + Vector2.up);
            if (content != null && content.CompareTag("Border"))
            {
                break;
            }
            curPos += Vector2.up;
            ySize++;
        } while (ySize < 100); // Limite arbitrário pra impedir loop infinito :P

        do
        {
            GameObject content = gc.tileContent(curPos + Vector2.right);
            if (content != null && content.CompareTag("Border"))
            {
                break;
            }
            curPos += Vector2.right;
            xSize++;
        } while (xSize < 100);

        // População da boardInfo
        boardInfo = new TileInfo[xSize * ySize];
        for (int i = 0; i < xSize; i++)
        {
            for (int j = 0; j < ySize; j++)
            {
                boardInfo[index(i, j)] = new TileInfo(gc.centerPosition(new Vector2(i, j)));
                GameObject content = gc.tileContent(new Vector2(i, j));
                if (content != null)
                {
                    boardInfo[index(i, j)].Block = content.tag;
                }
            }
        }

        // Spawn dos jogadores
        boardInfo[index(0, ySize - 1)].Spawn = true;
        boardInfo[index(1, ySize - 1)].Spawn = true;
        boardInfo[index(0, ySize - 2)].Spawn = true;
        if (playersAmount == 2)
        {
            boardInfo[index(xSize - 1, 0)].Spawn = true;
            boardInfo[index(xSize - 2, 0)].Spawn = true;
            boardInfo[index(xSize - 1, 1)].Spawn = true;
        }

        Boneco player1 = Instantiate <Boneco>(Resources.Load <Boneco>("Prefabs/Boneco 1"));

        player1.transform.position = gc.centerPosition(new Vector2(0, ySize - 1)); // Ajusta o boneco pro centro da tile.
        player1.setup(sandboxMode);
        if (playersAmount == 2)
        {
            Boneco player2 = Instantiate <Boneco>(Resources.Load <Boneco>("Prefabs/Boneco 2"));
            player2.transform.position = gc.centerPosition(new Vector2(xSize - 1, 0)); // Ajusta o boneco pro centro da tile.
            player2.setup(sandboxMode);
        }

        // Criação dos blocos destrutíveis aleatórios e itens (WIP)
        // Atenção (14/06/2018): Tem que gerar os blocos em locais "igualmente" aleatórios e garantindo que exatamente 80 blocos serão criados.

        // Embaralho a array, ou os numeros correspondentes?
        // Aproveitar o futuro loop pra já setupar os itens
        if (!sandboxMode)
        {
            List <SoftBlock> rbs = new List <SoftBlock>();
            foreach (TileInfo t in boardInfo)
            {
                if (!t.Spawn && t.Block == "")
                {
                    if (UnityEngine.Random.Range(0, 100) < 70)
                    {
                        t.Block = "SoftBlock";
                        rbs.Add(Instantiate(Resources.Load <SoftBlock>("Prefabs/SoftBlock"), t.Center, Quaternion.identity));
                    }
                }
            }
            randomizeItems(rbs);
        }
    }