This file contains the definition of the EnemyData struct and its functions.
void Echo_Render(EnemyData *data)
[Render] Renders the Echo enemy
Definition echo_render.c:23
EchoConfig EchoConfigData
Definition echo_data.c:14
EnemyData EchoData
[Data] Echo enemy default data
Definition echo_data.c:77
EchoState
Definition enemy_echo.h:18
@ ECHO_STATE_BURSTING
Definition enemy_echo.h:20
@ ECHO_STATE_WALKING
Definition enemy_echo.h:19
ParticleEmitter * EchoCasingEmitter
Definition echo_start.c:20
void Echo_Start(EnemyData *data)
[Start] Initializes an Echo enemy instance
Definition echo_start.c:31
void Echo_UpdateGun(EnemyData *data)
Definition echo_update.c:105
ParticleEmitter * EchoMuzzleFlashEmitter
Definition echo_start.c:19
void Echo_RenderParticles()
Definition echo_render.c:36
ParticleEmitter * EchoBulletEmitter
Definition echo_start.c:18
ParticleEmitter * EchoBulletFragmentsEmitter
Definition echo_start.c:21
void Echo_UpdateParticles()
Definition echo_update.c:181
void Echo_Update(EnemyData *data)
[PostUpdate] Updates the Echo enemy's state
Definition echo_update.c:26
Implements weapon systems including animations, shooting mechanics, and particle effects.
Definition enemy_echo.h:22
float directionChangeTimer
Definition enemy_echo.h:24
float burstTime
Definition enemy_echo.h:36
int burstMaxCount
Definition enemy_echo.h:34
EchoState state
Definition enemy_echo.h:23
float shootTimer
Definition enemy_echo.h:27
Vec2 gunOffset
Definition enemy_echo.h:29
float directionChangeTime
Definition enemy_echo.h:25
Vec2 lastPosition
Definition enemy_echo.h:30
GunData gun
Definition enemy_echo.h:28
float shootTime
Definition enemy_echo.h:26
int burstCount
Definition enemy_echo.h:33
float burstTimer
Definition enemy_echo.h:35
Enemy data structure.
Definition enemy.h:103
Gun data structure.
Definition gun.h:116
A struct that represents the configurations of a particle emitter.
Definition particles.h:105
A 2D vector structure.
Definition vec2.h:81