Operation Null Mind 0.4.1
A 2D roguelike top down shooter game made with SDL2
 
Loading...
Searching...
No Matches
enemy_sabot.h File Reference

This file contains the data for the Sabot enemy type. More...

#include <enemy.h>
#include <gun.h>

Go to the source code of this file.

Classes

struct  SabotConfig
 

Functions

void Sabot_Start (EnemyData *data)
 [Start] Initializes a Sabot enemy instance
 
void Sabot_Update (EnemyData *data)
 [PostUpdate] Updates the Sabot enemy's state and behavior
 
void Sabot_Render (EnemyData *data)
 [Render] Renders the Sabot enemy
 
void Sabot_UpdateParticles ()
 Updates all particle emitters related to the Sabot enemy.
 
void Sabot_RenderParticles ()
 

Variables

ParticleEmitter * SabotBulletEmitter
 
ParticleEmitter * SabotBulletFragmentsEmitter
 
ParticleEmitter * SabotMuzzleFlashEmitter
 
ParticleEmitter * SabotCasingEmitter
 
ParticleEmitter * SabotExplosionEmitter
 
SDL_Texture * SabotExplosionIndicator
 
SabotConfig SabotConfigData
 
EnemyData SabotData
 [Data] Sabot enemy default data
 

Detailed Description

This file contains the data for the Sabot enemy type.

Author
Mango
Date
2025-03-21

Function Documentation

◆ Sabot_Render()

void Sabot_Render ( EnemyData *  data)

[Render] Renders the Sabot enemy

This function handles the rendering of the Sabot enemy type.

Parameters
dataPointer to the enemy data structure

◆ Sabot_RenderParticles()

void Sabot_RenderParticles ( )

◆ Sabot_Start()

void Sabot_Start ( EnemyData *  data)

[Start] Initializes a Sabot enemy instance

Sets up the Sabot enemy's resources including animations, particle effects, and timers.

Parameters
dataPointer to the enemy data structure to initialize

◆ Sabot_Update()

void Sabot_Update ( EnemyData *  data)

[PostUpdate] Updates the Sabot enemy's state and behavior

The Sabot enemy fires tracking projectiles that explode on impact. This function handles movement, targeting, and shooting mechanics.

Parameters
dataPointer to the enemy data structure

◆ Sabot_UpdateParticles()

void Sabot_UpdateParticles ( )

Updates all particle emitters related to the Sabot enemy.

Handles the physics and tracking behavior of Sabot projectiles, including homing behavior, explosion effects, and damage calculation. The Sabot's projectiles are unique in that they track the player for a short time after being fired.

Variable Documentation

◆ SabotBulletEmitter

ParticleEmitter* SabotBulletEmitter
extern

◆ SabotBulletFragmentsEmitter

ParticleEmitter* SabotBulletFragmentsEmitter
extern

◆ SabotCasingEmitter

ParticleEmitter* SabotCasingEmitter
extern

◆ SabotConfigData

SabotConfig SabotConfigData
extern

◆ SabotData

EnemyData SabotData
extern

[Data] Sabot enemy default data

This structure defines the default properties, stats and settings for the Sabot enemy type.

◆ SabotExplosionEmitter

ParticleEmitter* SabotExplosionEmitter
extern

◆ SabotExplosionIndicator

SDL_Texture* SabotExplosionIndicator
extern

◆ SabotMuzzleFlashEmitter

ParticleEmitter* SabotMuzzleFlashEmitter
extern