2021-09-27 01:19:58 +02:00
|
|
|
#ifndef _EFFECTS_INTERNAL_H_
|
|
|
|
#define _EFFECTS_INTERNAL_H_
|
|
|
|
|
|
|
|
#include "effects.h"
|
|
|
|
|
2021-11-19 15:31:28 +01:00
|
|
|
s32 func_E0200000(s32);
|
2022-03-13 18:33:10 +01:00
|
|
|
s32 func_E0200044(s32, s32);
|
2021-09-27 01:19:58 +02:00
|
|
|
|
|
|
|
EffectInstance* shim_create_effect_instance(EffectBlueprint* effectBp);
|
2022-01-24 17:58:33 +01:00
|
|
|
s32 shim_load_effect(s32 effectIndex);
|
2021-09-27 01:19:58 +02:00
|
|
|
void shim_remove_effect(EffectInstance*);
|
2021-10-22 16:01:27 +02:00
|
|
|
s32 shim_rand_int(s32);
|
2021-09-27 01:19:58 +02:00
|
|
|
void* shim_general_heap_malloc(s32 size);
|
|
|
|
RenderTask* shim_queue_render_task(RenderTask* task);
|
2021-12-30 06:14:55 +01:00
|
|
|
float shim_sqrtf(float value);
|
|
|
|
f32 shim_atan2(f32 startX, f32 startZ, f32 endX, f32 endZ);
|
2021-09-27 01:19:58 +02:00
|
|
|
f32 shim_sin_deg(f32 x);
|
|
|
|
f32 shim_cos_deg(f32 x);
|
|
|
|
f32 shim_clamp_angle(f32 theta);
|
2021-12-30 06:14:55 +01:00
|
|
|
void shim_get_background_color_blend(u8* r, u8* g, u8* b, u8* a);
|
2021-09-27 01:19:58 +02:00
|
|
|
void shim_guMtxF2L(float mf[4][4], Mtx *m);
|
|
|
|
void shim_guMtxCatF(float m[4][4], float n[4][4], float r[4][4]);
|
2021-10-03 17:44:16 +02:00
|
|
|
void shim_guScaleF(float mf[4][4], float x, float y, float z);
|
2021-09-27 01:19:58 +02:00
|
|
|
void shim_guRotateF(float mf[4][4], float a, float x, float y, float z);
|
2021-12-30 06:14:55 +01:00
|
|
|
void shim_guTranslate(Mtx *m, float x, float y, float z);
|
2021-09-27 01:19:58 +02:00
|
|
|
void shim_guTranslateF(float mf[4][4], float x, float y, float z);
|
2022-09-27 20:10:05 +02:00
|
|
|
void shim_guPerspectiveF(f32 mf[4][4], u16* perspNorm, f32 fovy, f32 aspect, f32 near, f32 far, f32 scale);
|
2021-09-27 01:19:58 +02:00
|
|
|
void shim_guPositionF(float mf[4][4], float r, float p, float h, float s, float x, float y, float z);
|
2022-08-17 03:04:23 +02:00
|
|
|
void shim_guOrthoF(float mf[4][4], float l, float r, float b, float t, float n, float f, float scale);
|
2021-12-28 12:43:24 +01:00
|
|
|
void shim_mem_clear(void* data, s32 numBytes);
|
2021-11-26 02:25:50 +01:00
|
|
|
void shim_transform_point(Matrix4f mtx, f32 inX, f32 inY, f32 inZ, f32 inS, f32* outX, f32* outY, f32* outZ, f32* outS);
|
2021-12-30 06:14:55 +01:00
|
|
|
s32 shim_npc_raycast_down_sides(s32, f32*, f32*, f32*, f32*);
|
|
|
|
void shim_sfx_play_sound_at_position(s32 soundID, s32 value2, f32 posX, f32 posY, f32 posZ);
|
2022-08-10 17:29:06 +02:00
|
|
|
void shim_mdl_draw_hidden_panel_surface(Gfx**, u16 treeIndex);
|
2022-11-05 16:31:01 +01:00
|
|
|
void shim_draw_box(s32 flags, WindowStyle windowStyle, s32 posX, s32 posY, s32 posZ, s32 width, s32 height, u8 opacity,
|
|
|
|
u8 darkening, f32 scaleX, f32 scaleY, f32 rotX, f32 rotY, f32 rotZ, void (*fpDrawContents)(void*),
|
|
|
|
void* drawContentsArg0, Matrix4f rotScaleMtx, s32 translateX, s32 translateY, f32 (*outMtx)[4]);
|
2021-12-30 06:14:55 +01:00
|
|
|
|
2022-01-24 17:58:33 +01:00
|
|
|
// the actual signature is going to be wrong, but it doesn't matter
|
|
|
|
// TODO remove when every effect's main is sorted out
|
|
|
|
#define FX_MAIN(name) void name(void);
|
|
|
|
|
|
|
|
void big_smoke_puff_main(f32 x, f32 y, f32 z);
|
|
|
|
void landing_dust_main(s32 type, f32 x, f32 y, f32 z, f32);
|
|
|
|
void walking_dust_main(s32, f32, f32, f32, f32, f32);
|
|
|
|
void flower_splash_main(f32, f32, f32, f32);
|
|
|
|
void flower_trail_main(s32, f32, f32, f32, f32, f32);
|
|
|
|
void cloud_puff_main(f32, f32, f32, f32);
|
|
|
|
void cloud_trail_main(s32, f32, f32, f32);
|
|
|
|
void footprint_main(f32, f32, f32, f32, f32, f32, f32, f32);
|
|
|
|
void floating_flower_main(s32, f32, f32, f32, s32);
|
|
|
|
void snowflake_main(f32, f32, f32, s32, s32);
|
|
|
|
EffectInstance* star_main(s32, f32, f32, f32, f32, f32, f32, f32);
|
2022-09-21 09:09:22 +02:00
|
|
|
void emote_main(s32, Npc*, f32, f32, f32, f32, f32, s32, EffectInstance**);
|
2022-10-18 12:07:21 +02:00
|
|
|
void sparkles_main(s32, f32, f32, f32, f32);
|
2022-02-21 16:53:26 +01:00
|
|
|
EffectInstance* shape_spell_main(s32, f32, f32, f32, f32, f32, f32, s32);
|
2022-09-11 18:23:47 +02:00
|
|
|
void gather_energy_pink_main(s32, f32, f32, f32, f32, s32);
|
2022-09-13 11:52:01 +02:00
|
|
|
void drop_leaves_main(s32, f32, f32, f32, s32);
|
2022-09-05 06:53:21 +02:00
|
|
|
EffectInstance* dust_main(s32, f32, f32, f32, s32);
|
2022-10-30 02:22:40 +02:00
|
|
|
void shattering_stones_main(s32, f32, f32, f32, f32);
|
2022-10-18 12:07:21 +02:00
|
|
|
void smoke_ring_main(s32, f32, f32, f32);
|
|
|
|
void damage_stars_main(s32, f32, f32, f32, f32, f32, f32, s32);
|
|
|
|
void explosion_main(s32, f32, f32, f32);
|
2022-11-02 13:51:32 +01:00
|
|
|
void lens_flare_main(s32, f32, f32, f32, s32);
|
2022-09-27 20:10:05 +02:00
|
|
|
void got_item_outline_main(s32, f32, f32, f32, f32, EffectInstance**);
|
2022-10-25 11:49:05 +02:00
|
|
|
void spiky_white_aura_main(s32, f32, f32, f32, s32);
|
2022-10-30 02:22:40 +02:00
|
|
|
void smoke_impact_main(s32, f32, f32, f32, f32, s32, f32, s32);
|
2022-05-10 12:25:50 +02:00
|
|
|
void damage_indicator_main(s32, f32, f32, f32, f32, f32, s32, EffectInstance**);
|
2022-10-30 02:22:40 +02:00
|
|
|
EffectInstance* purple_ring_main(s32, f32, f32, f32, f32, f32, f32, f32);
|
2022-10-18 12:07:21 +02:00
|
|
|
void flame_main(s32, f32, f32, f32, f32, EffectInstance**);
|
2022-10-06 01:26:03 +02:00
|
|
|
void stars_burst_main(s32, f32, f32, f32, f32, f32, s32);
|
2022-01-24 17:58:33 +01:00
|
|
|
FX_MAIN(stars_shimmer_main);
|
2022-10-12 14:39:03 +02:00
|
|
|
void rising_bubble_main(s32, f32, f32, f32, f32);
|
|
|
|
void ring_blast_main(s32, f32, f32, f32, f32, s32);
|
2022-10-12 02:28:15 +02:00
|
|
|
void shockwave_main(s32, f32, f32, f32);
|
2022-02-21 16:53:26 +01:00
|
|
|
void music_note_main(s32, f32, f32, f32);
|
2022-10-07 09:31:45 +02:00
|
|
|
void smoke_burst_main(s32, f32, f32, f32, f32, s32);
|
|
|
|
void sweat_main(s32, f32, f32, f32, f32, f32, s32);
|
2022-02-25 14:19:53 +01:00
|
|
|
void sleep_bubble_main(s32, f32, f32, f32, f32, f32, EffectInstance**);
|
2022-01-24 17:58:33 +01:00
|
|
|
FX_MAIN(windy_leaves_main);
|
2022-09-21 09:09:22 +02:00
|
|
|
void falling_leaves_main(s32, f32, f32, f32);
|
2022-11-02 13:51:32 +01:00
|
|
|
void stars_spread_main(s32, f32, f32, f32, s32, s32);
|
|
|
|
void steam_burst_main(s32, f32, f32, f32, f32, s32);
|
2022-10-25 11:49:05 +02:00
|
|
|
void stars_orbiting_main(s32, f32, f32, f32, f32, s32, EffectInstance**);
|
2022-05-27 15:03:19 +02:00
|
|
|
void big_snowflakes_main(s32, f32, f32, f32);
|
2022-02-21 17:05:36 +01:00
|
|
|
EffectInstance* debuff_main(s32, f32, f32, f32);
|
2022-09-21 09:09:22 +02:00
|
|
|
EffectInstance* green_impact_main(s32, f32, f32, f32, f32);
|
2022-10-25 11:49:05 +02:00
|
|
|
EffectInstance* radial_shimmer_main(s32, f32, f32, f32, f32, s32);
|
2022-09-21 09:09:22 +02:00
|
|
|
void ending_decals_main(s32, f32, f32, f32, f32, EffectInstance**);
|
2022-10-08 12:07:10 +02:00
|
|
|
void light_rays_main(s32, f32, f32, f32, f32, EffectInstance**);
|
|
|
|
EffectInstance* lightning_main(s32, f32, f32, f32, f32, f32);
|
2022-03-13 18:33:10 +01:00
|
|
|
EffectInstance* fire_breath_main(s32, f32, f32, f32, f32, f32, f32, s32, s32, s32);
|
2022-11-05 01:43:44 +01:00
|
|
|
EffectInstance* shimmer_burst_main(s32, f32, f32, f32, f32, s32);
|
2022-09-27 20:10:05 +02:00
|
|
|
void energy_shockwave_main(s32, f32, f32, f32, f32, s32);
|
|
|
|
EffectInstance* shimmer_wave_main(s32, f32, f32, f32, f32, f32, s32, s32);
|
2022-02-25 14:19:53 +01:00
|
|
|
void aura_main(s32, f32, f32, f32, f32, EffectInstance**);
|
2022-09-05 06:53:21 +02:00
|
|
|
void bulb_glow_main(s32, f32, f32, f32, f32, EffectInstance**);
|
2022-09-13 11:52:01 +02:00
|
|
|
void fx_3D_main(s32, f32, f32, f32, f32, f32, f32, s32, EffectInstance**);
|
2022-02-25 14:19:53 +01:00
|
|
|
void blast_main(s32, f32, f32, f32, f32, s32);
|
|
|
|
EffectInstance* fire_flower_main(s32, f32, f32, f32, s32);
|
2022-10-12 02:28:15 +02:00
|
|
|
EffectInstance* recover_main(s32, f32, f32, f32, s32);
|
2022-05-05 16:08:16 +02:00
|
|
|
EffectInstance* disable_x_main(s32, f32, f32, f32, s32);
|
2022-08-10 17:29:06 +02:00
|
|
|
EffectInstance* bombette_breaking_main(s32, s32, s32, f32, s32, s32);
|
2022-10-18 12:07:21 +02:00
|
|
|
EffectInstance* firework_main(s32, f32, f32, f32, f32, s32);
|
|
|
|
EffectInstance* confetti_main(s32, f32, f32, f32, f32, s32);
|
2022-10-12 14:39:03 +02:00
|
|
|
EffectInstance* snowfall_main(s32, s32);
|
2022-10-18 12:07:21 +02:00
|
|
|
EffectInstance* fx_46_main(s32, PlayerStatus*, f32, s32);
|
2022-09-27 20:10:05 +02:00
|
|
|
EffectInstance* gather_magic_main(s32, f32, f32, f32, f32, s32);
|
2022-01-24 17:58:33 +01:00
|
|
|
EffectInstance* attack_result_text_main(s32, f32, f32, f32, f32, s32);
|
2022-05-27 15:03:19 +02:00
|
|
|
EffectInstance* small_gold_sparkle_main(s32, f32, f32, f32, f32);
|
2022-09-27 20:10:05 +02:00
|
|
|
EffectInstance* flashing_box_shockwave_main(s32, f32, f32, f32, f32, f32);
|
2022-01-24 17:58:33 +01:00
|
|
|
EffectInstance* balloon_main(s32, f32, f32, f32, f32, s32);
|
2022-09-05 06:53:21 +02:00
|
|
|
EffectInstance* floating_rock_main(s32, f32, f32, f32, f32, f32, f32, f32, s32);
|
|
|
|
EffectInstance* chomp_drop_main(s32, f32, f32, f32, f32, s32, f32, s32, f32, s32);
|
2022-10-12 14:39:03 +02:00
|
|
|
EffectInstance* quizmo_stage_main(s32, f32, f32, f32);
|
2022-10-25 11:49:05 +02:00
|
|
|
EffectInstance* radiating_energy_orb_main(s32, f32, f32, f32, f32, s32);
|
2022-10-30 02:22:40 +02:00
|
|
|
EffectInstance* quizmo_answer_main(s32, f32, f32, f32);
|
2022-10-18 12:07:21 +02:00
|
|
|
EffectInstance* motion_blur_flame_main(s32, f32, f32, f32, f32, s32);
|
2022-09-21 09:09:22 +02:00
|
|
|
EffectInstance* energy_orb_wave_main(s32, f32, f32, f32, f32, s32);
|
2022-10-18 12:07:21 +02:00
|
|
|
EffectInstance* merlin_house_stars_main(s32, f32, f32, f32);
|
2022-10-27 15:07:27 +02:00
|
|
|
EffectInstance* quizmo_audience_main(s32, f32, f32, f32);
|
2022-05-27 15:03:19 +02:00
|
|
|
EffectInstance* butterflies_main(s32, f32, f32, f32);
|
2022-02-21 16:53:26 +01:00
|
|
|
EffectInstance* stat_change_main(s32, f32, f32, f32, f32, s32);
|
2022-10-08 12:07:10 +02:00
|
|
|
EffectInstance* snaking_static_main(s32, f32, f32, f32, f32, s32);
|
2022-10-12 14:39:03 +02:00
|
|
|
EffectInstance* thunderbolt_ring_main(s32, f32, f32, f32, f32, s32);
|
2022-10-25 11:49:05 +02:00
|
|
|
EffectInstance* squirt_main(s32, f32, f32, f32, f32, f32, f32, f32, s32);
|
2022-01-24 17:58:33 +01:00
|
|
|
FX_MAIN(water_block_main);
|
2022-11-05 01:43:44 +01:00
|
|
|
EffectInstance* waterfall_main(s32, f32, f32, f32, f32, s32);
|
2022-10-27 15:07:27 +02:00
|
|
|
EffectInstance* water_fountain_main(s32, f32, f32, f32, f32, s32);
|
2022-11-05 01:43:44 +01:00
|
|
|
EffectInstance* underwater_main(s32, f32, f32, f32, f32, s32);
|
2022-10-08 12:07:10 +02:00
|
|
|
EffectInstance* lightning_bolt_main(s32, f32, f32, f32, f32, f32, f32, f32, s32);
|
2022-01-24 17:58:33 +01:00
|
|
|
FX_MAIN(water_splash_main);
|
2022-11-02 13:51:32 +01:00
|
|
|
EffectInstance* snowman_doll_main(s32, f32, f32, f32, f32, s32);
|
2022-09-27 20:10:05 +02:00
|
|
|
EffectInstance* fright_jar_main(s32, f32, f32, f32, f32, s32);
|
2022-10-25 11:49:05 +02:00
|
|
|
EffectInstance* stop_watch_main(s32, f32, f32, f32, f32, s32);
|
2022-09-21 09:09:22 +02:00
|
|
|
EffectInstance* fx_63_main(s32, f32, f32, f32, f32, f32, f32, f32, s32, s32);
|
2022-04-12 03:59:20 +02:00
|
|
|
EffectInstance* throw_spiny_main(s32, f32, f32, f32, f32, f32, f32, f32, s32);
|
2022-09-21 09:09:22 +02:00
|
|
|
EffectInstance* fx_65_main(s32, f32, f32, f32, f32, s32);
|
2022-10-30 02:22:40 +02:00
|
|
|
EffectInstance* tubba_heart_attack_main(s32, f32, f32, f32, f32, s32);
|
2022-11-24 15:57:29 +01:00
|
|
|
EffectInstance* whirlwind_main(s32, f32, f32, f32, f32, s32);
|
2022-10-12 02:28:15 +02:00
|
|
|
EffectInstance* red_impact_main(s32, f32, f32, f32, f32);
|
2022-09-27 20:10:05 +02:00
|
|
|
EffectInstance* floating_cloud_puff_main(s32, f32, f32, f32, f32, s32);
|
2022-10-18 12:07:21 +02:00
|
|
|
EffectInstance* energy_in_out_main(s32, f32, f32, f32, f32, s32);
|
2022-02-21 16:53:26 +01:00
|
|
|
EffectInstance* tattle_window_main(s32, f32, f32, f32, f32, s32);
|
2022-10-12 14:39:03 +02:00
|
|
|
EffectInstance* shiny_flare_main(s32, f32, f32, f32, f32);
|
2022-10-07 09:31:45 +02:00
|
|
|
EffectInstance* huff_puff_breath_main(s32, f32, f32, f32, f32, f32, f32, s32);
|
2022-09-05 06:53:21 +02:00
|
|
|
EffectInstance* cold_breath_main(s32, f32, f32, f32, f32, s32);
|
2022-09-13 11:52:01 +02:00
|
|
|
EffectInstance* embers_main(s32, f32, f32, f32, f32, f32, f32, s32, s32, f32, f32);
|
2022-10-07 09:31:45 +02:00
|
|
|
EffectInstance* hieroglyphs_main(s32, f32, f32, f32, f32, s32);
|
2022-10-25 11:49:05 +02:00
|
|
|
EffectInstance *misc_particles_main(s32, f32, f32, f32, f32, f32, f32, s32, s32);
|
|
|
|
EffectInstance* static_status_main(s32, f32, f32, f32, f32, s32, s32);
|
2022-10-30 02:22:40 +02:00
|
|
|
EffectInstance* moving_cloud_main(s32, f32, f32, f32, f32, f32, f32, f32, f32);
|
2022-09-13 11:52:01 +02:00
|
|
|
EffectInstance* fx_75_main(s32, f32, f32, f32, f32, s32);
|
2022-09-21 09:09:22 +02:00
|
|
|
EffectInstance* firework_rocket_main(s32, f32, f32, f32, f32, f32, f32, f32, s32);
|
2022-08-25 12:18:04 +02:00
|
|
|
EffectInstance* peach_star_beam_main(s32, f32, f32, f32, f32, s32);
|
2022-09-05 06:53:21 +02:00
|
|
|
EffectInstance* chapter_change_main(s32, f32, f32, f32, f32, s32);
|
2022-11-02 13:51:32 +01:00
|
|
|
EffectInstance* ice_shard_main(s32, f32, f32, f32, f32, s32);
|
2022-10-25 11:49:05 +02:00
|
|
|
EffectInstance* spirit_card_main(s32, f32, f32, f32, f32, s32);
|
2022-09-10 19:04:04 +02:00
|
|
|
EffectInstance* lil_oink_main(void);
|
2022-10-18 12:07:21 +02:00
|
|
|
EffectInstance* something_rotating_main(s32, f32, f32, f32, f32, s32);
|
2022-08-25 12:18:04 +02:00
|
|
|
EffectInstance* breaking_junk_main(s32, f32, f32, f32, f32, s32);
|
2022-08-26 12:13:57 +02:00
|
|
|
EffectInstance* partner_buff_main(s32, f32, f32, f32, f32, s32);
|
2022-11-02 13:51:32 +01:00
|
|
|
EffectInstance* quizmo_assistant_main(s32, f32, f32, f32, f32, s32);
|
2022-01-24 17:58:33 +01:00
|
|
|
FX_MAIN(ice_pillar_main);
|
2022-08-10 15:36:38 +02:00
|
|
|
EffectInstance* sun_main(s32, f32, f32, f32, f32, s32);
|
2022-10-25 11:49:05 +02:00
|
|
|
EffectInstance* star_spirits_energy_main(s32, f32, f32, f32, f32, s32);
|
2022-10-18 12:07:21 +02:00
|
|
|
EffectInstance* pink_sparkles_main(s32, f32, f32, f32, f32, f32);
|
2022-10-27 15:07:27 +02:00
|
|
|
EffectInstance* star_outline_main(s32, f32, f32, f32, f32, s32);
|
2022-01-24 17:58:33 +01:00
|
|
|
EffectInstance* fx_86_main(s32, f32, f32, f32, f32, s32);
|
2021-12-30 06:14:55 +01:00
|
|
|
|
2021-09-27 01:19:58 +02:00
|
|
|
#endif
|