128 for (i = 0; i <
np; i++, data++) {
165 data->
unk_1C = -0.02 - ((i + 1) % 3) * 0.02;
186 if (
part->unk_20 < 0) {
192 if (
part->unk_24 > 324000) {
196 unk_24 =
part->unk_24;
197 unk_00 =
part->unk_00;
198 unk_2C =
part->unk_2C;
200 if (
part->unk_20 < 10) {
205 for (i = 0; i < unk_2C; i++,
part++) {
207 if (
part->unk_30 <= 0 || --
part->unk_30 <= 0) {
209 if (
part->unk_20 < 0) {
218 if (
part->unk_30 <= 0 || --
part->unk_30 <= 0) {
220 part->unk_10 *= 0.98;
221 part->unk_14 *= 0.98;
222 part->unk_18 *= 0.98;
223 if (unk_24 >= 6 &&
part->unk_14 > -0.5) {
264 unk_24 =
part->unk_24;
265 unk_2C =
part->unk_2C;
266 unk_28 =
part->unk_28;
282 for (i = 0; i < unk_2C; i++,
part++) {
285 if (
part->unk_30 <= 0) {
291 switch ((unk_24 + i) % 3) {
302 uly = ((i +
D_E0088D00[unk_24 % 6]) & 0xF) * 16;
305 (ulx << 2) + ((width >> 1) << 1), (uly << 2) + height);
BSS s32 PopupMenu_SelectedIndex
EffectInstance * confetti_main(s32 arg0, f32 arg1, f32 arg2, f32 arg3, f32 arg4, s32 arg5)
void func_E0088000(ConfettiFXData *part)
void confetti_update(EffectInstance *effect)
void confetti_render(EffectInstance *effect)
void confetti_init(EffectInstance *effect)
void confetti_appendGfx(void *effect)
#define general_heap_malloc
#define queue_render_task
#define create_effect_instance
EffectInstanceDataPtr data
struct ConfettiFXData * confetti
#define ASSERT(condition)
@ RENDER_MODE_CLOUD_NO_ZCMP
#define VIRTUAL_TO_PHYSICAL(addr)
void(* appendGfx)(void *)
DisplayContext * gDisplayContext