Menu
CoddyTech

Itens que caem

Lição 13 de 16 do curso Jogo no Unity: Quebra-Tijolos da Coddy.

Às vezes, um tijolo quebrado deixa cair um power-up que cai em direção à raquete. Se ele cai é uma questão de sorte: Random.value é um número de ponto flutuante aleatório de 0 a 1, então Random.value < 0.15f é verdadeiro cerca de 15 vezes em 100. Manter a chance em um campo permite ajustá-la e permite que um teste a defina como 1 para que caia sempre ou como 0 para que nunca caia.

Qual power-up cai é determinado por uma segunda rolagem: um índice aleatório em um array de prefabs. Random.Range com inteiros exclui o valor máximo, então Random.Range(0, array.Length) pode escolher todos os elementos. O saque de um inimigo:

public GameObject[] loot;
public float lootChance = 0.25f;

void DropLoot()
{
    if (Random.value >= lootChance) return;
    int pick = Random.Range(0, loot.Length);
    Instantiate(loot[pick], transform.position, Quaternion.identity);
}

Um power-up cai a uma velocidade constante, movendo-se a cada quadro, e se destrói quando fica abaixo da área de jogo, para que os que forem perdidos não se acumulem. Seu prefab tem um Rigidbody cinemático e um collider de gatilho, assim a física sabe que ele se move e ele poderá detectar quando alcançar a raquete.

challenge icon

Desafio

Difícil
  1. Em PowerUp, adicione public float fallSpeed = 3f e public float bottomY = -9f. Em Update(), mova-o para baixo a uma velocidade de fallSpeed unidades por segundo e destrua o power-up quando seu y ficar abaixo de bottomY.
  2. Em GameManager, adicione public GameObject[] powerUps (a cena vincula os prefabs WidePowerUp e MultiPowerUp) e public float dropChance = 0.15f.
  3. Em BrickBroken, com uma chance de dropChance, crie um elemento aleatório de powerUps no local onde o tijolo estava.

Por enquanto, os power-ups atravessam a plataforma: capturá-los é o próximo passo.

Pressione Play, quebre tijolos até que um deles solte um power-up e, em seguida, pressione Check.

Experimente você mesmo

using UnityEngine;

public class PowerUp : MonoBehaviour
{
    // O último capítulo: poderes especiais que caem dos tijolos quebrados.
}
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Jogo no Unity: Quebra-Tijolos