Los enemigos contraatacan
Parte de la sección Arquitectura de juegos en Unity del Journey de Unity de Coddy. Lección 53 de 64.
Desafío
IntermedioHaz que los enemigos contraataquen.
HeroimplementaIDamageable;healthempieza enmaxHealth: un golpe restaamount, registraHero HP: 4e ignora los golpes durantesafeTime.- Al llegar a 0, registra
The hero falls, estableceenabled = falsee ignora los golpes posteriores. Enemyconserva elIDamageabledel héroe; a menos de 1.2 unidades, llama aTakeDamage(damage)como máximo una vez cadaattackEverysegundos.
Pulsa «Jugar» y deja que un grunt te alcance. Después, pulsa «Comprobar».
Pruébalo tú mismo
public interface IDamageable
{
void TakeDamage(int amount);
}
Todas las lecciones de Arquitectura de juegos en Unity
1Componentes, no jerarquías
Componentes pequeñosUn script base para enemigosComponentes abstractosComponentes que trabajan juntosRepaso: torreta modularRepaso: cañón doble4Datos serializados
Clases serializablesListas en el InspectorEnumeraciones en el InspectorRepaso: tabla de botínRepaso: sortear el botín7Máquinas de estados
Estados como clasesEl estado de alertaUna máquina de estadosTransicionesCerebros enemigosEl caballero atacaRepaso: estados de puertas10Proyecto: Superviviente de la arena
El héroeTipos de enemigos2Interfaces en Unity
IDamageableInterfaces y TryGetComponentGetComponentsRepaso: Tecla de interacciónRepaso: El más cercano al alcance5ScriptableObjects
Activos de datosEstadísticas de armasConfiguración compartidaGuardar el vientoOleadas como datosRepaso: base de datos de objetosRepaso: comprar en la tienda3Eventos
Eventos de C# en UnitySuscribirse en OnEnableCampos UnityEventLos eventos controlan la interfazRepaso: ventana emergente de logrosRepaso: temporizador de la ventana emergentePractica por tu cuenta: Playground de Unity