mirror of
https://github.com/zeldaret/mm.git
synced 2024-11-30 08:10:26 +00:00
2fdcdd91b3
* split * bss * z64eff_ss_dead.h * clean eff_blure * eff_shield_particle cleanup * tire?mark * and more cleanup * format * forgot to remove this * review * EffectBlureDrawMode enum * review * review * bss
52 lines
1.5 KiB
C
52 lines
1.5 KiB
C
#ifndef Z64EFF_SPARK_H
|
|
#define Z64EFF_SPARK_H
|
|
|
|
#include "ultra64.h"
|
|
|
|
#include "color.h"
|
|
#include "z64math.h"
|
|
|
|
struct GraphicsContext;
|
|
|
|
typedef struct EffectSparkElement {
|
|
/* 0x00 */ Vec3f velocity;
|
|
/* 0x0C */ Vec3f position;
|
|
/* 0x18 */ Vec3s unkVelocity;
|
|
/* 0x1E */ Vec3s unkPosition;
|
|
} EffectSparkElement; // size = 0x24
|
|
|
|
typedef struct EffectSparkInit {
|
|
/* 0x000 */ Vec3s position;
|
|
/* 0x008 */ s32 numElements; // "table_size"; calculated as uDiv * vDiv + 2
|
|
/* 0x00C */ EffectSparkElement elements[32];
|
|
/* 0x48C */ f32 speed;
|
|
/* 0x490 */ f32 gravity;
|
|
/* 0x494 */ u32 uDiv; // "u_div"
|
|
/* 0x498 */ u32 vDiv; // "v_div"
|
|
/* 0x49C */ Color_RGBA8 colorStart[4];
|
|
/* 0x4AC */ Color_RGBA8 colorEnd[4];
|
|
/* 0x4BC */ s32 timer;
|
|
/* 0x4C0 */ s32 duration;
|
|
} EffectSparkInit; // size = 0x4C4
|
|
|
|
typedef struct EffectSpark {
|
|
/* 0x000 */ Vec3s position;
|
|
/* 0x008 */ s32 numElements; // "table_size"; calculated as uDiv * vDiv + 2
|
|
/* 0x00C */ EffectSparkElement elements[32];
|
|
/* 0x48C */ f32 speed;
|
|
/* 0x490 */ f32 gravity;
|
|
/* 0x494 */ u32 uDiv; // "u_div"
|
|
/* 0x498 */ u32 vDiv; // "v_div"
|
|
/* 0x49C */ Color_RGBA8 colorStart[4];
|
|
/* 0x4AC */ Color_RGBA8 colorEnd[4];
|
|
/* 0x4BC */ s32 timer;
|
|
/* 0x4C0 */ s32 duration;
|
|
} EffectSpark; // size = 0x4C4
|
|
|
|
void EffectSpark_Init(void* thisx, void* initParamsx);
|
|
void EffectSpark_Destroy(void* thisx);
|
|
s32 EffectSpark_Update(void* thisx);
|
|
void EffectSpark_Draw(void* thisx, struct GraphicsContext* gfxCtx);
|
|
|
|
#endif
|