This file contains the definition of the EnemyData struct and its functions.
void Vantage_UpdateGun(EnemyData *data)
Updates the gun position and orientation for the Vantage enemy.
Definition vantage_update.c:27
void Vantage_UpdateParticles()
Updates all particle emitters related to the Vantage enemy.
Definition vantage_update.c:137
ParticleEmitter * VantageBulletEmitter
Definition vantage_start.c:18
ParticleEmitter * VantageCasingEmitter
Definition vantage_start.c:20
void Vantage_UpdateLazer(EnemyData *data)
Updates the laser targeting system for the Vantage enemy.
Definition vantage_update.c:175
VantageConfig VantageConfigData
Definition vantage_data.c:14
void Vantage_RenderParticles()
Definition vantage_render.c:32
void Vantage_Render(EnemyData *data)
Definition vantage_render.c:14
EnemyData VantageData
[Data] Vantage enemy default data
Definition vantage_data.c:71
void Vantage_RenderLaser(EnemyData *data)
Definition vantage_render.c:40
void Vantage_Start(EnemyData *data)
[Start] Initializes a Vantage enemy instance
Definition vantage_start.c:31
ParticleEmitter * VantageMuzzleFlashEmitter
Definition vantage_start.c:19
void Vantage_Update(EnemyData *data)
[PostUpdate] Updates the Vantage enemy's state
Definition vantage_update.c:54
ParticleEmitter * VantageBulletFragmentsEmitter
Definition vantage_start.c:21
Implements weapon systems including animations, shooting mechanics, and particle effects.
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
Definition enemy_vantage.h:18
bool shooting
Definition enemy_vantage.h:32
int lazerWidth
Definition enemy_vantage.h:31
float shootTime
Definition enemy_vantage.h:21
bool aiming
Definition enemy_vantage.h:28
Vec2 gunOffset
Definition enemy_vantage.h:24
float aimTime
Definition enemy_vantage.h:29
Vec2 lazerDirection
Definition enemy_vantage.h:35
float directionChangeTimer
Definition enemy_vantage.h:19
float directionChangeTime
Definition enemy_vantage.h:20
Vec2 lastPosition
Definition enemy_vantage.h:25
GunData gun
Definition enemy_vantage.h:23
float aimTimer
Definition enemy_vantage.h:30
float shootTimer
Definition enemy_vantage.h:22
Vec2 lazerEnd
Definition enemy_vantage.h:36
Vec2 lazerStart
Definition enemy_vantage.h:34
A 2D vector structure.
Definition vec2.h:81