RequireComponent
Parte da seção Noções básicas de scripting no Unity do Journey de Unity da Coddy. Lição 33 de 67.
[RequireComponent(typeof(Rigidbody))], escrito acima da classe de um script, informa ao Unity que o script não pode funcionar sem um Rigidbody no mesmo objeto:
[RequireComponent(typeof(Rigidbody))]
public class Jumper : MonoBehaviour
{
Rigidbody rb;
void Start()
{
rb = GetComponent<Rigidbody>();
}
}O Unity age quando o script é adicionado a um objeto, pelo Inspector ou com AddComponent: se o objeto não tiver um Rigidbody, o Unity adicionará um. Enquanto Jumper estiver no objeto, o Inspector não permitirá remover esse Rigidbody. Portanto, GetComponent sempre encontra um aqui, e Jumper não precisa de nenhuma verificação.
O atributo não retroage: objetos que já tinham Jumper antes de a linha ser escrita não recebem um Rigidbody até que o script seja removido e adicionado novamente. Um atributo pode especificar até três tipos, como em [RequireComponent(typeof(Rigidbody), typeof(BoxCollider))], e uma classe pode ter vários deles.
Experimente você mesmo
Esta lição não inclui um desafio de código.
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Noções básicas de scripting no Unity
1Seu primeiro script
Olá, UnityPosicione o cuboMova a cada quadroGire a cada segundoConduza com as teclasRecapitulando: dirija o cubo4Vetores
Adicionando vetoresDireçõesEspaço local e espaço do mundoVelocidade diagonalDistância entre objetosVector3 é uma structRevisão: piloto de drone7Projeto: Pegue a Estrela
O ApanhadorUma Estrela Cadente10O ciclo de vida dos scripts
Awake e StartUpdate e LateUpdateOnEnable e OnDisableA ordem do ciclo de vidaRevisão: registrador do ciclo de vida5Transformações e Hierarquia
Pais e FilhosEscalaObserve as CoisasMova-se em Direção a um PontoRevisão: Lua em Órbita6GameObjects e Componentes
Referências no InspectorObter um ComponenteComponentes AusentesAdicionar um ComponenteRequireComponentMostrar e OcultarRevisão: Interruptor de Luz