Advertisement
fggkyle

Untitled

Apr 14th, 2021
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.13 KB | None | 0 0
  1. s32 func_80B6E090(BgKin2Bombwall *this, GlobalContext *globalCtx) {
  2. f32 spF8;
  3. f32 spF4;
  4. f32 spF0;
  5. ? spE4;
  6. f32 spE0;
  7. f32 spDC;
  8. f32 spD8;
  9. f32 spD4;
  10. f32 spD0;
  11. f32 spCC;
  12. s32 spAC;
  13. f32 *temp_s5;
  14. s32 temp_a0;
  15. s32 temp_s2;
  16. s32 temp_s3;
  17. void *temp_s4;
  18. s32 phi_v0;
  19. void *phi_s4;
  20. s32 phi_s3;
  21. s32 phi_s0;
  22. ?32 phi_s1;
  23. s32 phi_s0_2;
  24.  
  25. Matrix_RotateY(this->dyna.actor.shape.rot.y, (u8)0U);
  26. temp_s5 = &spF0;
  27. phi_v0 = 0;
  28. phi_s3 = 0;
  29. loop_1:
  30. temp_a0 = phi_v0 + 1;
  31. spAC = temp_a0;
  32. phi_s4 = &D_80B6E730;
  33. loop_2:
  34. temp_s3 = (phi_s3 + 1) & 7;
  35. spD8 = (f32) ((Rand_Next() >> 0x1C) + *phi_s4);
  36. spDC = ((Rand_ZeroOne() - 0.5f) * 15.0f) + ((f32) temp_a0 * 15.0f);
  37. spE0 = (Rand_ZeroOne() * 20.0f) - 10.0f;
  38. spCC = (2.0f * (Rand_ZeroOne() - 0.5f)) + (spD8 * 0.018461538f);
  39. spD0 = (Rand_ZeroOne() * 7.0f) + 4.0f;
  40. spD4 = spE0 * 0.3f;
  41. SysMatrix_MultiplyVector3fByState((Vec3f *) &spD8, (Vec3f *) temp_s5);
  42. SysMatrix_MultiplyVector3fByState((Vec3f *) &spCC, (Vec3f *) &spE4);
  43. spF0 = spF0 + this->dyna.actor.world.pos.x;
  44. spF4 = spF4 + this->dyna.actor.world.pos.y;
  45. spF8 = spF8 + this->dyna.actor.world.pos.z;
  46. if ((Rand_Next() & 3) == 0) {
  47. phi_s0_2 = 0x20;
  48. } else {
  49. phi_s0_2 = 0x40;
  50. }
  51. if ((temp_s3 < 2) || (phi_s0 = phi_s0_2, phi_s1 = 0, (Rand_Next() > 0))) {
  52. temp_s2 = Rand_Next();
  53. func_800B0E48(globalCtx, temp_s5, &D_801D15B0, &D_80B6E724, &D_80B6E71C, &D_80B6E720, ((u32) temp_s2 >> 0x1B) + 0x46, (Rand_Next() >> 0x1A) + 0x3C);
  54. phi_s0 = (s32) (s16) (phi_s0_2 | 1);
  55. phi_s1 = 1;
  56. }
  57. EffectSsKakera_Spawn(globalCtx, (Vec3f *) temp_s5, (Vec3f *) &spE4, (Vec3f *) temp_s5, -0x226, phi_s0, 0x1E, 0, 0, (?32) *(&D_80B6E738 + (temp_s3 * 2)), phi_s1, 0, 0x32, -1, 0x1F5, 0x6000128);
  58. temp_s4 = phi_s4 + 1;
  59. phi_s4 = temp_s4;
  60. phi_s3 = temp_s3;
  61. if (temp_s4 != &D_80B6E735) {
  62. goto loop_2;
  63. }
  64. phi_v0 = spAC;
  65. phi_s3 = temp_s3;
  66. if (spAC != 6) {
  67. goto loop_1;
  68. }
  69. return spAC;
  70. }
  71.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement