9#define EFFECT_BUFF ( 1 << 0 )
10#define EFFECT_DEBUFF ( 1 << 1 )
11#define EFFECT_VERTEX ( 1 << 2 )
16typedef struct EffectData_ {
49typedef struct Effect_ {
71 double strength,
unsigned int parent );
int effect_rmType(Effect **efxlist, const EffectData *efx, int all)
Removes an effect type from an effect list.
int effect_rm(Effect **efxlist, int idx)
Removes an effect from an effect list by index.
int effect_add(Effect **efxlist, const EffectData *efx, double duration, double strength, unsigned int parent)
Adds an effect to an effect list.
void effect_clearSpecific(Effect **efxlist, int debuffs, int buffs, int others)
Clears specific types of effects.
const EffectData * effect_get(const char *name)
Gets an effect by name.
void effect_cleanup(Effect *efxlist)
Cleans up an effect list freeing it.
void effect_clear(Effect **efxlist)
Clears an effect list, removing all active effects.
void effect_compute(ShipStats *s, const Effect *efxlist)
Updates shipstats from effect list.
int effect_load(void)
Loads all the effects.
void effect_exit(void)
Gets rid of all the effects.
int effect_update(Effect **efxlist, double dt)
Updates an effect list.
Represents relative ship statistics as a linked list.
Represents ship statistics, properties ship can use.
Abstraction for rendering sprite sheets.