diff options
| author | MegaMech <inkstudios1@hotmail.com> | 2024-12-28 20:30:18 -0700 |
|---|---|---|
| committer | MegaMech <inkstudios1@hotmail.com> | 2024-12-28 20:30:18 -0700 |
| commit | 9c4b35206a2c697acc7345e91587c52a09240eb9 (patch) | |
| tree | 2f067808a40bc464e10b90ca69411e2220393de5 /src/update_objects.c | |
| parent | 830922541296d049cd5c0689c1f610586f56bc75 (diff) | |
Fix podium ceremony. Wip particle emitters
Diffstat (limited to 'src/update_objects.c')
| -rw-r--r-- | src/update_objects.c | 230 |
1 files changed, 0 insertions, 230 deletions
diff --git a/src/update_objects.c b/src/update_objects.c index ba56a65a5..148ba7b50 100644 --- a/src/update_objects.c +++ b/src/update_objects.c @@ -2206,160 +2206,6 @@ void init_smoke_particles(s32 arg0) { } } -void func_80077138(s32 objectIndex, Vec3f arg1, s32 arg2) { - s8 temp_v0_3; - Vec3s sp30; - - init_object(objectIndex, arg2); - gObjectList[objectIndex].unk_0D5 = 0x0C; - gObjectList[objectIndex].sizeScaling = 0.05f; - set_obj_origin_pos(objectIndex, arg1[0], arg1[1], arg1[2]); - set_obj_orientation(objectIndex, 0U, 0U, 0U); - set_obj_origin_offset(objectIndex, 0.0f, 0.0f, 0.0f); - switch (arg2) { - case 0: - gObjectList[objectIndex].velocity[1] = -1.0f; - gObjectList[objectIndex].unk_034 = (f32) ((random_int(0x004BU) * 0.01) + 0.25); - gObjectList[objectIndex].direction_angle[1] = random_int(0x0040U) << 0xA; - func_8008751C(objectIndex); - gObjectList[objectIndex].unk_084[5] = 0x001E; - break; - case 1: - gObjectList[objectIndex].velocity[1] = 1.5f; - gObjectList[objectIndex].unk_034 = (f32) ((random_int(0x0064U) * 0.01) + 0.5); - gObjectList[objectIndex].direction_angle[1] = random_int(0x0040U) << 0xA; - func_8008751C(objectIndex); - gObjectList[objectIndex].unk_084[5] = 0x0032; - break; - } - temp_v0_3 = random_int(0x000CU); - if (temp_v0_3 < 9) { - func_8005C674(temp_v0_3, &sp30[2], &sp30[1], sp30); - gObjectList[objectIndex].unk_048 = 0; - gObjectList[objectIndex].unk_084[0] = sp30[2]; - gObjectList[objectIndex].unk_084[1] = sp30[1]; - gObjectList[objectIndex].unk_084[2] = sp30[0]; - } else { - temp_v0_3 = random_int(3U); - func_8005C6B4(temp_v0_3, &sp30[2], &sp30[1], sp30); - gObjectList[objectIndex].unk_084[0] = sp30[2]; - gObjectList[objectIndex].unk_084[1] = sp30[1]; - gObjectList[objectIndex].unk_084[2] = sp30[0]; - gObjectList[objectIndex].unk_084[4] = temp_v0_3; - gObjectList[objectIndex].unk_048 = 1; - } - gObjectList[objectIndex].primAlpha = 0x00FF; - gObjectList[objectIndex].unk_084[3] = random_int(0x0800U) + 0x400; - if ((gObjectList[objectIndex].direction_angle[1] < 0x3000) || - (gObjectList[objectIndex].direction_angle[1] >= 0xB001)) { - gObjectList[objectIndex].unk_084[3] = -gObjectList[objectIndex].unk_084[3]; - } -} - -void func_800773D8(f32* arg0, s32 arg1) { - s32 objectIndex = add_unused_obj_index(gObjectParticle3, &gNextFreeObjectParticle3, gObjectParticle3_SIZE); - if (objectIndex != NULL_OBJECT_ID) { - func_80077138(objectIndex, arg0, arg1); - } -} - -void func_80077428(s32 arg0) { - object_next_state(arg0); - func_80086E70(arg0); -} - - - - - - - - - - - - - -void func_80077450(s32 objectIndex) { - UNUSED s16 stackPadding0; - s16 sp3C; - s16 sp3A; - s16 sp38; - - switch (gObjectList[objectIndex].state) { - case 0: - break; - case 1: - func_80077428(objectIndex); - break; - case 2: - f32_step_up_towards(&gObjectList[objectIndex].sizeScaling, 0.1f, 0.01f); - if ((gObjectList[objectIndex].pos[1] <= gObjectList[objectIndex].unk_084[5]) && - (func_80073B00(objectIndex, &gObjectList[objectIndex].primAlpha, 0x000000FF, 0, 0x00000010, 0, 0) != - 0)) { - func_80086F60(objectIndex); - func_80072428(objectIndex); - } - break; - } - if (gObjectList[objectIndex].unk_048 != 0) { - gObjectList[objectIndex].unk_084[4] = (s16) ((s32) (gObjectList[objectIndex].unk_084[4] + 1) % 3); - func_8005C6B4(gObjectList[objectIndex].unk_084[4], &sp3C, &sp3A, &sp38); - gObjectList[objectIndex].unk_084[0] = sp3C; - gObjectList[objectIndex].unk_084[1] = sp3A; - gObjectList[objectIndex].unk_084[2] = sp38; - } -} - -void func_80077584(s32 objectIndex) { - Object* object; - - object = &gObjectList[objectIndex]; - if ((object->unk_0AE != 0) && (object->unk_0AE == 1) && ((u8) object->unk_0D8 != 0)) { - if (object->velocity[1] >= -0.5) { - object->velocity[1] -= 0.15; - } else { - object->velocity[2] = 0.0f; - object->velocity[0] = 0.0f; - } - } - object->orientation[2] += object->unk_084[3]; - object_add_velocity_offset_xyz(objectIndex); - object_calculate_new_pos_offset(objectIndex); -} - -void func_80077640(void) { - s32 someIndex; - s32 objectIndex; - Object* object; - - for (someIndex = 0; someIndex < gObjectParticle3_SIZE; someIndex++) { - objectIndex = gObjectParticle3[someIndex]; - if (objectIndex != DELETED_OBJECT_ID) { - object = &gObjectList[objectIndex]; - if (object->state != 0) { - func_80077450(objectIndex); - func_80077584(objectIndex); - if (object->state == 0) { - delete_object_wrapper(&gObjectParticle3[someIndex]); - } - } - } - } -} - - - - - - - - - - - - - void init_object_leaf_particle(s32 objectIndex, Vec3f arg1, s32 num) { @@ -4375,54 +4221,6 @@ void func_8007DDC0(s32 objectIndex) { } } - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - void func_8007E1F4(s32 objectIndex) { f32 sp2C; Object* object; @@ -4555,34 +4353,6 @@ void func_8008153C(s32 objectIndex) { } } - - - - - - - - - - - - - - - - - - - - - - - - - - - - #ifdef NON_MATCHING // https://decomp.me/scratch/PYAg4 // Stack issue caused by the `test` variable, but removing it causes much, much larger differences |
