1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2025-06-08 09:31:52 +00:00

BgJyaBombchuiwa OK (#452)

* Fixed upstream

* Almost done

* Done

* PR fixes

* PR fix

Co-authored-by: Louis <5883445+louist103@users.noreply.github.com>
This commit is contained in:
louist103 2020-10-26 12:55:37 -04:00 committed by GitHub
parent 93fc51e9b6
commit eea81d97d8
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
21 changed files with 214 additions and 848 deletions

View file

@ -1,11 +0,0 @@
glabel BgJyaBombchuiwa_Destroy
/* 000EC 8089458C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 000F0 80894590 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 000F4 80894594 AFBF0014 */ sw $ra, 0x0014($sp)
/* 000F8 80894598 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 000FC 8089459C 0C016F32 */ jal Collider_DestroyJntSph
/* 00100 808945A0 24E50150 */ addiu $a1, $a3, 0x0150 ## $a1 = 00000150
/* 00104 808945A4 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00108 808945A8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 0010C 808945AC 03E00008 */ jr $ra
/* 00110 808945B0 00000000 */ nop

View file

@ -1,55 +0,0 @@
glabel BgJyaBombchuiwa_Draw
/* 009BC 80894E5C 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 009C0 80894E60 AFBF001C */ sw $ra, 0x001C($sp)
/* 009C4 80894E64 AFB00018 */ sw $s0, 0x0018($sp)
/* 009C8 80894E68 AFA50024 */ sw $a1, 0x0024($sp)
/* 009CC 80894E6C 908201B6 */ lbu $v0, 0x01B6($a0) ## 000001B6
/* 009D0 80894E70 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 009D4 80894E74 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 009D8 80894E78 304E0001 */ andi $t6, $v0, 0x0001 ## $t6 = 00000000
/* 009DC 80894E7C 11C00007 */ beq $t6, $zero, .L80894E9C
/* 009E0 80894E80 3C050601 */ lui $a1, 0x0601 ## $a1 = 06010000
/* 009E4 80894E84 0C00D498 */ jal Gfx_DrawDListOpa
/* 009E8 80894E88 24A5E8D0 */ addiu $a1, $a1, 0xE8D0 ## $a1 = 0600E8D0
/* 009EC 80894E8C 00002025 */ or $a0, $zero, $zero ## $a0 = 00000000
/* 009F0 80894E90 0C018A29 */ jal func_800628A4
/* 009F4 80894E94 26050150 */ addiu $a1, $s0, 0x0150 ## $a1 = 00000150
/* 009F8 80894E98 920201B6 */ lbu $v0, 0x01B6($s0) ## 000001B6
.L80894E9C:
/* 009FC 80894E9C 304F0002 */ andi $t7, $v0, 0x0002 ## $t7 = 00000000
/* 00A00 80894EA0 51E00005 */ beql $t7, $zero, .L80894EB8
/* 00A04 80894EA4 30580004 */ andi $t8, $v0, 0x0004 ## $t8 = 00000000
/* 00A08 80894EA8 0C2252C1 */ jal func_80894B04
/* 00A0C 80894EAC 8FA40024 */ lw $a0, 0x0024($sp)
/* 00A10 80894EB0 920201B6 */ lbu $v0, 0x01B6($s0) ## 000001B6
/* 00A14 80894EB4 30580004 */ andi $t8, $v0, 0x0004 ## $t8 = 00000000
.L80894EB8:
/* 00A18 80894EB8 13000014 */ beq $t8, $zero, .L80894F0C
/* 00A1C 80894EBC 3C018089 */ lui $at, %hi(D_80894F88) ## $at = 80890000
/* 00A20 80894EC0 3C068089 */ lui $a2, %hi(D_80894F90) ## $a2 = 80890000
/* 00A24 80894EC4 3C078089 */ lui $a3, %hi(D_80894F94) ## $a3 = 80890000
/* 00A28 80894EC8 24E74F94 */ addiu $a3, $a3, %lo(D_80894F94) ## $a3 = 80894F94
/* 00A2C 80894ECC 8CC64F90 */ lw $a2, %lo(D_80894F90)($a2)
/* 00A30 80894ED0 C42C4F88 */ lwc1 $f12, %lo(D_80894F88)($at)
/* 00A34 80894ED4 0C0345A5 */ jal func_800D1694
/* 00A38 80894ED8 C42E4F8C */ lwc1 $f14, %lo(D_80894F8C)($at)
/* 00A3C 80894EDC C60C0050 */ lwc1 $f12, 0x0050($s0) ## 00000050
/* 00A40 80894EE0 C60E0054 */ lwc1 $f14, 0x0054($s0) ## 00000054
/* 00A44 80894EE4 8E060058 */ lw $a2, 0x0058($s0) ## 00000058
/* 00A48 80894EE8 0C0342A3 */ jal Matrix_Scale
/* 00A4C 80894EEC 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 00A50 80894EF0 921901B6 */ lbu $t9, 0x01B6($s0) ## 000001B6
/* 00A54 80894EF4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00A58 80894EF8 33280004 */ andi $t0, $t9, 0x0004 ## $t0 = 00000000
/* 00A5C 80894EFC 51000004 */ beql $t0, $zero, .L80894F10
/* 00A60 80894F00 8FBF001C */ lw $ra, 0x001C($sp)
/* 00A64 80894F04 0C2252F2 */ jal func_80894BC8
/* 00A68 80894F08 8FA50024 */ lw $a1, 0x0024($sp)
.L80894F0C:
/* 00A6C 80894F0C 8FBF001C */ lw $ra, 0x001C($sp)
.L80894F10:
/* 00A70 80894F10 8FB00018 */ lw $s0, 0x0018($sp)
/* 00A74 80894F14 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 00A78 80894F18 03E00008 */ jr $ra
/* 00A7C 80894F1C 00000000 */ nop

View file

@ -1,37 +0,0 @@
glabel BgJyaBombchuiwa_Init
/* 00070 80894510 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00074 80894514 AFA50024 */ sw $a1, 0x0024($sp)
/* 00078 80894518 AFBF001C */ sw $ra, 0x001C($sp)
/* 0007C 8089451C AFB00018 */ sw $s0, 0x0018($sp)
/* 00080 80894520 3C058089 */ lui $a1, %hi(D_80894F74) ## $a1 = 80890000
/* 00084 80894524 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00088 80894528 0C01E037 */ jal Actor_ProcessInitChain
/* 0008C 8089452C 24A54F74 */ addiu $a1, $a1, %lo(D_80894F74) ## $a1 = 80894F74
/* 00090 80894530 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00094 80894534 0C225128 */ jal func_808944A0
/* 00098 80894538 8FA50024 */ lw $a1, 0x0024($sp)
/* 0009C 8089453C 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
/* 000A0 80894540 8FA40024 */ lw $a0, 0x0024($sp)
/* 000A4 80894544 0C00B2D0 */ jal Flags_GetSwitch
/* 000A8 80894548 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
/* 000AC 8089454C 10400005 */ beq $v0, $zero, .L80894564
/* 000B0 80894550 8FA50024 */ lw $a1, 0x0024($sp)
/* 000B4 80894554 0C225291 */ jal func_80894A44
/* 000B8 80894558 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 000BC 8089455C 10000004 */ beq $zero, $zero, .L80894570
/* 000C0 80894560 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80894564:
/* 000C4 80894564 0C225210 */ jal func_80894840
/* 000C8 80894568 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 000CC 8089456C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80894570:
/* 000D0 80894570 0C00B56E */ jal Actor_SetHeight
/* 000D4 80894574 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
/* 000D8 80894578 8FBF001C */ lw $ra, 0x001C($sp)
/* 000DC 8089457C 8FB00018 */ lw $s0, 0x0018($sp)
/* 000E0 80894580 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 000E4 80894584 03E00008 */ jr $ra
/* 000E8 80894588 00000000 */ nop

View file

@ -1,13 +0,0 @@
glabel BgJyaBombchuiwa_Update
/* 00638 80894AD8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 0063C 80894ADC AFBF0014 */ sw $ra, 0x0014($sp)
/* 00640 80894AE0 8C82014C */ lw $v0, 0x014C($a0) ## 0000014C
/* 00644 80894AE4 50400004 */ beql $v0, $zero, .L80894AF8
/* 00648 80894AE8 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0064C 80894AEC 0040F809 */ jalr $ra, $v0
/* 00650 80894AF0 00000000 */ nop
/* 00654 80894AF4 8FBF0014 */ lw $ra, 0x0014($sp)
.L80894AF8:
/* 00658 80894AF8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 0065C 80894AFC 03E00008 */ jr $ra
/* 00660 80894B00 00000000 */ nop

View file

@ -1,22 +0,0 @@
glabel func_808944A0
/* 00000 808944A0 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00004 808944A4 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 00008 808944A8 AFA5002C */ sw $a1, 0x002C($sp)
/* 0000C 808944AC 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00010 808944B0 AFBF001C */ sw $ra, 0x001C($sp)
/* 00014 808944B4 24C50150 */ addiu $a1, $a2, 0x0150 ## $a1 = 00000150
/* 00018 808944B8 AFA50020 */ sw $a1, 0x0020($sp)
/* 0001C 808944BC 0C016EFE */ jal Collider_InitJntSph
/* 00020 808944C0 AFA60028 */ sw $a2, 0x0028($sp)
/* 00024 808944C4 8FA60028 */ lw $a2, 0x0028($sp)
/* 00028 808944C8 3C078089 */ lui $a3, %hi(D_80894F64) ## $a3 = 80890000
/* 0002C 808944CC 8FA50020 */ lw $a1, 0x0020($sp)
/* 00030 808944D0 24CE0170 */ addiu $t6, $a2, 0x0170 ## $t6 = 00000170
/* 00034 808944D4 AFAE0010 */ sw $t6, 0x0010($sp)
/* 00038 808944D8 24E74F64 */ addiu $a3, $a3, %lo(D_80894F64) ## $a3 = 80894F64
/* 0003C 808944DC 0C017014 */ jal Collider_SetJntSph
/* 00040 808944E0 8FA4002C */ lw $a0, 0x002C($sp)
/* 00044 808944E4 8FBF001C */ lw $ra, 0x001C($sp)
/* 00048 808944E8 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 0004C 808944EC 03E00008 */ jr $ra
/* 00050 808944F0 00000000 */ nop

View file

@ -1,8 +0,0 @@
glabel func_808944F4
/* 00054 808944F4 AFA50004 */ sw $a1, 0x0004($sp)
/* 00058 808944F8 908E01B6 */ lbu $t6, 0x01B6($a0) ## 000001B6
/* 0005C 808944FC 31D8FFF8 */ andi $t8, $t6, 0xFFF8 ## $t8 = 00000000
/* 00060 80894500 A09801B6 */ sb $t8, 0x01B6($a0) ## 000001B6
/* 00064 80894504 0305C825 */ or $t9, $t8, $a1 ## $t9 = 00000000
/* 00068 80894508 03E00008 */ jr $ra
/* 0006C 8089450C A09901B6 */ sb $t9, 0x01B6($a0) ## 000001B6

View file

@ -1,185 +0,0 @@
.late_rodata
glabel D_8089509C
.float 0.3
glabel D_808950A0
.float 0.4
.text
glabel func_808945B4
/* 00114 808945B4 27BDFF38 */ addiu $sp, $sp, 0xFF38 ## $sp = FFFFFF38
/* 00118 808945B8 F7BE0070 */ sdc1 $f30, 0x0070($sp)
/* 0011C 808945BC 3C014040 */ lui $at, 0x4040 ## $at = 40400000
/* 00120 808945C0 4481F000 */ mtc1 $at, $f30 ## $f30 = 3.00
/* 00124 808945C4 F7BC0068 */ sdc1 $f28, 0x0068($sp)
/* 00128 808945C8 3C0141C8 */ lui $at, 0x41C8 ## $at = 41C80000
/* 0012C 808945CC 4481E000 */ mtc1 $at, $f28 ## $f28 = 25.00
/* 00130 808945D0 F7BA0060 */ sdc1 $f26, 0x0060($sp)
/* 00134 808945D4 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 00138 808945D8 4481D000 */ mtc1 $at, $f26 ## $f26 = 50.00
/* 0013C 808945DC F7B80058 */ sdc1 $f24, 0x0058($sp)
/* 00140 808945E0 3C014220 */ lui $at, 0x4220 ## $at = 42200000
/* 00144 808945E4 4481C000 */ mtc1 $at, $f24 ## $f24 = 40.00
/* 00148 808945E8 F7B60050 */ sdc1 $f22, 0x0050($sp)
/* 0014C 808945EC 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
/* 00150 808945F0 4481B000 */ mtc1 $at, $f22 ## $f22 = 20.00
/* 00154 808945F4 AFBE0098 */ sw $s8, 0x0098($sp)
/* 00158 808945F8 F7B40048 */ sdc1 $f20, 0x0048($sp)
/* 0015C 808945FC 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00160 80894600 AFB70094 */ sw $s7, 0x0094($sp)
/* 00164 80894604 AFB60090 */ sw $s6, 0x0090($sp)
/* 00168 80894608 AFB5008C */ sw $s5, 0x008C($sp)
/* 0016C 8089460C AFB40088 */ sw $s4, 0x0088($sp)
/* 00170 80894610 3C1E0601 */ lui $s8, 0x0601 ## $s8 = 06010000
/* 00174 80894614 4481A000 */ mtc1 $at, $f20 ## $f20 = 10.00
/* 00178 80894618 0080A825 */ or $s5, $a0, $zero ## $s5 = 00000000
/* 0017C 8089461C AFBF009C */ sw $ra, 0x009C($sp)
/* 00180 80894620 AFB30084 */ sw $s3, 0x0084($sp)
/* 00184 80894624 AFB20080 */ sw $s2, 0x0080($sp)
/* 00188 80894628 AFB1007C */ sw $s1, 0x007C($sp)
/* 0018C 8089462C AFB00078 */ sw $s0, 0x0078($sp)
/* 00190 80894630 AFA500CC */ sw $a1, 0x00CC($sp)
/* 00194 80894634 27DEEDC0 */ addiu $s8, $s8, 0xEDC0 ## $s8 = 0600EDC0
/* 00198 80894638 0000A025 */ or $s4, $zero, $zero ## $s4 = 00000000
/* 0019C 8089463C 27B600BC */ addiu $s6, $sp, 0x00BC ## $s6 = FFFFFFF4
/* 001A0 80894640 27B700B0 */ addiu $s7, $sp, 0x00B0 ## $s7 = FFFFFFE8
/* 001A4 80894644 2412000C */ addiu $s2, $zero, 0x000C ## $s2 = 0000000C
.L80894648:
/* 001A8 80894648 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 001AC 8089464C 24130008 */ addiu $s3, $zero, 0x0008 ## $s3 = 00000008
/* 001B0 80894650 46140102 */ mul.s $f4, $f0, $f20
/* 001B4 80894654 C6A60024 */ lwc1 $f6, 0x0024($s5) ## 00000024
/* 001B8 80894658 46062200 */ add.s $f8, $f4, $f6
/* 001BC 8089465C 46144281 */ sub.s $f10, $f8, $f20
/* 001C0 80894660 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 001C4 80894664 E7AA00BC */ swc1 $f10, 0x00BC($sp)
/* 001C8 80894668 46180402 */ mul.s $f16, $f0, $f24
/* 001CC 8089466C C6B20028 */ lwc1 $f18, 0x0028($s5) ## 00000028
/* 001D0 80894670 46128100 */ add.s $f4, $f16, $f18
/* 001D4 80894674 46162181 */ sub.s $f6, $f4, $f22
/* 001D8 80894678 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 001DC 8089467C E7A600C0 */ swc1 $f6, 0x00C0($sp)
/* 001E0 80894680 461A0202 */ mul.s $f8, $f0, $f26
/* 001E4 80894684 C6AA002C */ lwc1 $f10, 0x002C($s5) ## 0000002C
/* 001E8 80894688 460A4400 */ add.s $f16, $f8, $f10
/* 001EC 8089468C 461C8481 */ sub.s $f18, $f16, $f28
/* 001F0 80894690 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 001F4 80894694 E7B200C4 */ swc1 $f18, 0x00C4($sp)
/* 001F8 80894698 461E0102 */ mul.s $f4, $f0, $f30
/* 001FC 8089469C 3C018089 */ lui $at, %hi(D_8089509C) ## $at = 80890000
/* 00200 808946A0 C426509C */ lwc1 $f6, %lo(D_8089509C)($at)
/* 00204 808946A4 46062201 */ sub.s $f8, $f4, $f6
/* 00208 808946A8 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 0020C 808946AC E7A800B0 */ swc1 $f8, 0x00B0($sp)
/* 00210 808946B0 3C014190 */ lui $at, 0x4190 ## $at = 41900000
/* 00214 808946B4 44815000 */ mtc1 $at, $f10 ## $f10 = 18.00
/* 00218 808946B8 00000000 */ nop
/* 0021C 808946BC 460A0402 */ mul.s $f16, $f0, $f10
/* 00220 808946C0 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 00224 808946C4 E7B000B4 */ swc1 $f16, 0x00B4($sp)
/* 00228 808946C8 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
/* 0022C 808946CC 44819000 */ mtc1 $at, $f18 ## $f18 = 0.50
/* 00230 808946D0 3C014170 */ lui $at, 0x4170 ## $at = 41700000
/* 00234 808946D4 44813000 */ mtc1 $at, $f6 ## $f6 = 15.00
/* 00238 808946D8 46120101 */ sub.s $f4, $f0, $f18
/* 0023C 808946DC 46062202 */ mul.s $f8, $f4, $f6
/* 00240 808946E0 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 00244 808946E4 E7A800B8 */ swc1 $f8, 0x00B8($sp)
/* 00248 808946E8 46160282 */ mul.s $f10, $f0, $f22
/* 0024C 808946EC 24100001 */ addiu $s0, $zero, 0x0001 ## $s0 = 00000001
/* 00250 808946F0 4600540D */ trunc.w.s $f16, $f10
/* 00254 808946F4 44028000 */ mfc1 $v0, $f16
/* 00258 808946F8 00000000 */ nop
/* 0025C 808946FC 24420001 */ addiu $v0, $v0, 0x0001 ## $v0 = 00000001
/* 00260 80894700 00027C00 */ sll $t7, $v0, 16
/* 00264 80894704 000FC403 */ sra $t8, $t7, 16
/* 00268 80894708 00028C00 */ sll $s1, $v0, 16
/* 0026C 8089470C 2B01000B */ slti $at, $t8, 0x000B
/* 00270 80894710 14200003 */ bne $at, $zero, .L80894720
/* 00274 80894714 00118C03 */ sra $s1, $s1, 16
/* 00278 80894718 10000001 */ beq $zero, $zero, .L80894720
/* 0027C 8089471C 24100005 */ addiu $s0, $zero, 0x0005 ## $s0 = 00000005
.L80894720:
/* 00280 80894720 0C03F66B */ jal Math_Rand_ZeroOne
## Rand.Next() float
/* 00284 80894724 00000000 */ nop
/* 00288 80894728 3C018089 */ lui $at, %hi(D_808950A0) ## $at = 80890000
/* 0028C 8089472C C43250A0 */ lwc1 $f18, %lo(D_808950A0)($at)
/* 00290 80894730 8FA400CC */ lw $a0, 0x00CC($sp)
/* 00294 80894734 02C02825 */ or $a1, $s6, $zero ## $a1 = FFFFFFF4
/* 00298 80894738 4612003C */ c.lt.s $f0, $f18
/* 0029C 8089473C 02E03025 */ or $a2, $s7, $zero ## $a2 = FFFFFFE8
/* 002A0 80894740 02C03825 */ or $a3, $s6, $zero ## $a3 = FFFFFFF4
/* 002A4 80894744 2419FED4 */ addiu $t9, $zero, 0xFED4 ## $t9 = FFFFFED4
/* 002A8 80894748 45000005 */ bc1f .L80894760
/* 002AC 8089474C 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001
/* 002B0 80894750 36100040 */ ori $s0, $s0, 0x0040 ## $s0 = 00000045
/* 002B4 80894754 00108400 */ sll $s0, $s0, 16
/* 002B8 80894758 10000008 */ beq $zero, $zero, .L8089477C
/* 002BC 8089475C 00108403 */ sra $s0, $s0, 16
.L80894760:
/* 002C0 80894760 36100020 */ ori $s0, $s0, 0x0020 ## $s0 = 00000065
/* 002C4 80894764 00108400 */ sll $s0, $s0, 16
/* 002C8 80894768 2A210008 */ slti $at, $s1, 0x0008
/* 002CC 8089476C 10200003 */ beq $at, $zero, .L8089477C
/* 002D0 80894770 00108403 */ sra $s0, $s0, 16
/* 002D4 80894774 24120046 */ addiu $s2, $zero, 0x0046 ## $s2 = 00000046
/* 002D8 80894778 24130028 */ addiu $s3, $zero, 0x0028 ## $s3 = 00000028
.L8089477C:
/* 002DC 8089477C 2409000F */ addiu $t1, $zero, 0x000F ## $t1 = 0000000F
/* 002E0 80894780 240A0050 */ addiu $t2, $zero, 0x0050 ## $t2 = 00000050
/* 002E4 80894784 240BFFFF */ addiu $t3, $zero, 0xFFFF ## $t3 = FFFFFFFF
/* 002E8 80894788 240C00F1 */ addiu $t4, $zero, 0x00F1 ## $t4 = 000000F1
/* 002EC 8089478C AFAC0038 */ sw $t4, 0x0038($sp)
/* 002F0 80894790 AFAB0034 */ sw $t3, 0x0034($sp)
/* 002F4 80894794 AFAA0030 */ sw $t2, 0x0030($sp)
/* 002F8 80894798 AFA9002C */ sw $t1, 0x002C($sp)
/* 002FC 8089479C AFB90010 */ sw $t9, 0x0010($sp)
/* 00300 808947A0 AFB00014 */ sw $s0, 0x0014($sp)
/* 00304 808947A4 AFB20018 */ sw $s2, 0x0018($sp)
/* 00308 808947A8 AFB3001C */ sw $s3, 0x001C($sp)
/* 0030C 808947AC AFA00020 */ sw $zero, 0x0020($sp)
/* 00310 808947B0 AFB10024 */ sw $s1, 0x0024($sp)
/* 00314 808947B4 AFA80028 */ sw $t0, 0x0028($sp)
/* 00318 808947B8 0C00A7A3 */ jal EffectSsKakera_Spawn
/* 0031C 808947BC AFBE003C */ sw $s8, 0x003C($sp)
/* 00320 808947C0 26940001 */ addiu $s4, $s4, 0x0001 ## $s4 = 00000001
/* 00324 808947C4 24010014 */ addiu $at, $zero, 0x0014 ## $at = 00000014
/* 00328 808947C8 5681FF9F */ bnel $s4, $at, .L80894648
/* 0032C 808947CC 2412000C */ addiu $s2, $zero, 0x000C ## $s2 = 0000000C
/* 00330 808947D0 240D0064 */ addiu $t5, $zero, 0x0064 ## $t5 = 00000064
/* 00334 808947D4 240E00A0 */ addiu $t6, $zero, 0x00A0 ## $t6 = 000000A0
/* 00338 808947D8 AFAE0014 */ sw $t6, 0x0014($sp)
/* 0033C 808947DC AFAD0010 */ sw $t5, 0x0010($sp)
/* 00340 808947E0 8FA400CC */ lw $a0, 0x00CC($sp)
/* 00344 808947E4 26A50024 */ addiu $a1, $s5, 0x0024 ## $a1 = 00000024
/* 00348 808947E8 3C0642C8 */ lui $a2, 0x42C8 ## $a2 = 42C80000
/* 0034C 808947EC 24070008 */ addiu $a3, $zero, 0x0008 ## $a3 = 00000008
/* 00350 808947F0 0C00CD20 */ jal func_80033480
/* 00354 808947F4 AFA00018 */ sw $zero, 0x0018($sp)
/* 00358 808947F8 8FBF009C */ lw $ra, 0x009C($sp)
/* 0035C 808947FC D7B40048 */ ldc1 $f20, 0x0048($sp)
/* 00360 80894800 D7B60050 */ ldc1 $f22, 0x0050($sp)
/* 00364 80894804 D7B80058 */ ldc1 $f24, 0x0058($sp)
/* 00368 80894808 D7BA0060 */ ldc1 $f26, 0x0060($sp)
/* 0036C 8089480C D7BC0068 */ ldc1 $f28, 0x0068($sp)
/* 00370 80894810 D7BE0070 */ ldc1 $f30, 0x0070($sp)
/* 00374 80894814 8FB00078 */ lw $s0, 0x0078($sp)
/* 00378 80894818 8FB1007C */ lw $s1, 0x007C($sp)
/* 0037C 8089481C 8FB20080 */ lw $s2, 0x0080($sp)
/* 00380 80894820 8FB30084 */ lw $s3, 0x0084($sp)
/* 00384 80894824 8FB40088 */ lw $s4, 0x0088($sp)
/* 00388 80894828 8FB5008C */ lw $s5, 0x008C($sp)
/* 0038C 8089482C 8FB60090 */ lw $s6, 0x0090($sp)
/* 00390 80894830 8FB70094 */ lw $s7, 0x0094($sp)
/* 00394 80894834 8FBE0098 */ lw $s8, 0x0098($sp)
/* 00398 80894838 03E00008 */ jr $ra
/* 0039C 8089483C 27BD00C8 */ addiu $sp, $sp, 0x00C8 ## $sp = 00000000

View file

@ -1,16 +0,0 @@
glabel func_80894840
/* 003A0 80894840 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 003A4 80894844 3C0E8089 */ lui $t6, %hi(func_8089487C) ## $t6 = 80890000
/* 003A8 80894848 AFBF0014 */ sw $ra, 0x0014($sp)
/* 003AC 8089484C AFA5001C */ sw $a1, 0x001C($sp)
/* 003B0 80894850 25CE487C */ addiu $t6, $t6, %lo(func_8089487C) ## $t6 = 8089487C
/* 003B4 80894854 AC8E014C */ sw $t6, 0x014C($a0) ## 0000014C
/* 003B8 80894858 AFA40018 */ sw $a0, 0x0018($sp)
/* 003BC 8089485C 0C22513D */ jal func_808944F4
/* 003C0 80894860 24050003 */ addiu $a1, $zero, 0x0003 ## $a1 = 00000003
/* 003C4 80894864 8FA40018 */ lw $a0, 0x0018($sp)
/* 003C8 80894868 A48001B4 */ sh $zero, 0x01B4($a0) ## 000001B4
/* 003CC 8089486C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 003D0 80894870 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 003D4 80894874 03E00008 */ jr $ra
/* 003D8 80894878 00000000 */ nop

View file

@ -1,65 +0,0 @@
glabel func_8089487C
/* 003DC 8089487C 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 003E0 80894880 AFBF0024 */ sw $ra, 0x0024($sp)
/* 003E4 80894884 AFB10020 */ sw $s1, 0x0020($sp)
/* 003E8 80894888 AFB0001C */ sw $s0, 0x001C($sp)
/* 003EC 8089488C 908E0161 */ lbu $t6, 0x0161($a0) ## 00000161
/* 003F0 80894890 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 003F4 80894894 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 003F8 80894898 31CF0002 */ andi $t7, $t6, 0x0002 ## $t7 = 00000000
/* 003FC 8089489C 55E00007 */ bnel $t7, $zero, .L808948BC
/* 00400 808948A0 860201B4 */ lh $v0, 0x01B4($s0) ## 000001B4
/* 00404 808948A4 849801B4 */ lh $t8, 0x01B4($a0) ## 000001B4
/* 00408 808948A8 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 0040C 808948AC 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 00410 808948B0 1B00001D */ blez $t8, .L80894928
/* 00414 808948B4 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00418 808948B8 860201B4 */ lh $v0, 0x01B4($s0) ## 000001B4
.L808948BC:
/* 0041C 808948BC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00420 808948C0 24050D52 */ addiu $a1, $zero, 0x0D52 ## $a1 = 00000D52
/* 00424 808948C4 14400005 */ bne $v0, $zero, .L808948DC
/* 00428 808948C8 2406FF9D */ addiu $a2, $zero, 0xFF9D ## $a2 = FFFFFF9D
/* 0042C 808948CC 02003825 */ or $a3, $s0, $zero ## $a3 = 00000000
/* 00430 808948D0 0C02003E */ jal func_800800F8
/* 00434 808948D4 AFA00010 */ sw $zero, 0x0010($sp)
/* 00438 808948D8 860201B4 */ lh $v0, 0x01B4($s0) ## 000001B4
.L808948DC:
/* 0043C 808948DC 24590001 */ addiu $t9, $v0, 0x0001 ## $t9 = 00000001
/* 00440 808948E0 A61901B4 */ sh $t9, 0x01B4($s0) ## 000001B4
/* 00444 808948E4 860801B4 */ lh $t0, 0x01B4($s0) ## 000001B4
/* 00448 808948E8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0044C 808948EC 2901000B */ slti $at, $t0, 0x000B
/* 00450 808948F0 54200017 */ bnel $at, $zero, .L80894950
/* 00454 808948F4 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00458 808948F8 0C22516D */ jal func_808945B4
/* 0045C 808948FC 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 00460 80894900 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00464 80894904 0C225258 */ jal func_80894960
/* 00468 80894908 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 0046C 8089490C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00470 80894910 26050024 */ addiu $a1, $s0, 0x0024 ## $a1 = 00000024
/* 00474 80894914 24060028 */ addiu $a2, $zero, 0x0028 ## $a2 = 00000028
/* 00478 80894918 0C01AEB6 */ jal Audio_PlaySoundAtPosition
/* 0047C 8089491C 24072810 */ addiu $a3, $zero, 0x2810 ## $a3 = 00002810
/* 00480 80894920 1000000B */ beq $zero, $zero, .L80894950
/* 00484 80894924 8FBF0024 */ lw $ra, 0x0024($sp)
.L80894928:
/* 00488 80894928 02212821 */ addu $a1, $s1, $at
/* 0048C 8089492C 26060150 */ addiu $a2, $s0, 0x0150 ## $a2 = 00000150
/* 00490 80894930 AFA60028 */ sw $a2, 0x0028($sp)
/* 00494 80894934 0C01767D */ jal CollisionCheck_SetAC
## CollisionCheck_setAC
/* 00498 80894938 AFA5002C */ sw $a1, 0x002C($sp)
/* 0049C 8089493C 8FA5002C */ lw $a1, 0x002C($sp)
/* 004A0 80894940 8FA60028 */ lw $a2, 0x0028($sp)
/* 004A4 80894944 0C017713 */ jal CollisionCheck_SetOC
## CollisionCheck_setOT
/* 004A8 80894948 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 004AC 8089494C 8FBF0024 */ lw $ra, 0x0024($sp)
.L80894950:
/* 004B0 80894950 8FB0001C */ lw $s0, 0x001C($sp)
/* 004B4 80894954 8FB10020 */ lw $s1, 0x0020($sp)
/* 004B8 80894958 03E00008 */ jr $ra
/* 004BC 8089495C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000

View file

@ -1,28 +0,0 @@
.late_rodata
glabel D_808950A4
.float 0.3
.text
glabel func_80894960
/* 004C0 80894960 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 004C4 80894964 3C0E8089 */ lui $t6, %hi(func_808949B8) ## $t6 = 80890000
/* 004C8 80894968 AFBF0014 */ sw $ra, 0x0014($sp)
/* 004CC 8089496C AFA5001C */ sw $a1, 0x001C($sp)
/* 004D0 80894970 25CE49B8 */ addiu $t6, $t6, %lo(func_808949B8) ## $t6 = 808949B8
/* 004D4 80894974 AC8E014C */ sw $t6, 0x014C($a0) ## 0000014C
/* 004D8 80894978 AFA40018 */ sw $a0, 0x0018($sp)
/* 004DC 8089497C 0C22513D */ jal func_808944F4
/* 004E0 80894980 24050004 */ addiu $a1, $zero, 0x0004 ## $a1 = 00000004
/* 004E4 80894984 8FA40018 */ lw $a0, 0x0018($sp)
/* 004E8 80894988 3C018089 */ lui $at, %hi(D_808950A4) ## $at = 80890000
/* 004EC 8089498C C42450A4 */ lwc1 $f4, %lo(D_808950A4)($at)
/* 004F0 80894990 8C8F0004 */ lw $t7, 0x0004($a0) ## 00000004
/* 004F4 80894994 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
/* 004F8 80894998 A48001B4 */ sh $zero, 0x01B4($a0) ## 000001B4
/* 004FC 8089499C 01E1C024 */ and $t8, $t7, $at
/* 00500 808949A0 AC980004 */ sw $t8, 0x0004($a0) ## 00000004
/* 00504 808949A4 E48401B0 */ swc1 $f4, 0x01B0($a0) ## 000001B0
/* 00508 808949A8 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0050C 808949AC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00510 808949B0 03E00008 */ jr $ra
/* 00514 808949B4 00000000 */ nop

View file

@ -1,39 +0,0 @@
glabel func_808949B8
/* 00518 808949B8 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 0051C 808949BC AFBF002C */ sw $ra, 0x002C($sp)
/* 00520 808949C0 AFB00028 */ sw $s0, 0x0028($sp)
/* 00524 808949C4 AFA50034 */ sw $a1, 0x0034($sp)
/* 00528 808949C8 848E01B4 */ lh $t6, 0x01B4($a0) ## 000001B4
/* 0052C 808949CC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00530 808949D0 26050024 */ addiu $a1, $s0, 0x0024 ## $a1 = 00000024
/* 00534 808949D4 25CF0001 */ addiu $t7, $t6, 0x0001 ## $t7 = 00000001
/* 00538 808949D8 A48F01B4 */ sh $t7, 0x01B4($a0) ## 000001B4
/* 0053C 808949DC 849801B4 */ lh $t8, 0x01B4($a0) ## 000001B4
/* 00540 808949E0 8FA40034 */ lw $a0, 0x0034($sp)
/* 00544 808949E4 3C064270 */ lui $a2, 0x4270 ## $a2 = 42700000
/* 00548 808949E8 33190004 */ andi $t9, $t8, 0x0004 ## $t9 = 00000000
/* 0054C 808949EC 13200007 */ beq $t9, $zero, .L80894A0C
/* 00550 808949F0 24070003 */ addiu $a3, $zero, 0x0003 ## $a3 = 00000003
/* 00554 808949F4 24080064 */ addiu $t0, $zero, 0x0064 ## $t0 = 00000064
/* 00558 808949F8 24090064 */ addiu $t1, $zero, 0x0064 ## $t1 = 00000064
/* 0055C 808949FC AFA90014 */ sw $t1, 0x0014($sp)
/* 00560 80894A00 AFA80010 */ sw $t0, 0x0010($sp)
/* 00564 80894A04 0C00CD20 */ jal func_80033480
/* 00568 80894A08 AFA00018 */ sw $zero, 0x0018($sp)
.L80894A0C:
/* 0056C 80894A0C 3C063CE5 */ lui $a2, 0x3CE5 ## $a2 = 3CE50000
/* 00570 80894A10 34C66042 */ ori $a2, $a2, 0x6042 ## $a2 = 3CE56042
/* 00574 80894A14 260401B0 */ addiu $a0, $s0, 0x01B0 ## $a0 = 000001B0
/* 00578 80894A18 0C01DE80 */ jal Math_ApproxF
/* 0057C 80894A1C 3C053F80 */ lui $a1, 0x3F80 ## $a1 = 3F800000
/* 00580 80894A20 10400003 */ beq $v0, $zero, .L80894A30
/* 00584 80894A24 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00588 80894A28 0C225291 */ jal func_80894A44
/* 0058C 80894A2C 8FA50034 */ lw $a1, 0x0034($sp)
.L80894A30:
/* 00590 80894A30 8FBF002C */ lw $ra, 0x002C($sp)
/* 00594 80894A34 8FB00028 */ lw $s0, 0x0028($sp)
/* 00598 80894A38 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 0059C 80894A3C 03E00008 */ jr $ra
/* 005A0 80894A40 00000000 */ nop

View file

@ -1,51 +0,0 @@
.rdata
glabel D_80894FA0
.asciz " : Mir_Ray (%s %d)(arg_data 0x%04x)\n"
.balign 4
glabel D_80894FD8
.asciz "../z_bg_jya_bombchuiwa.c"
.balign 4
.text
glabel func_80894A44
/* 005A4 80894A44 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 005A8 80894A48 3C014319 */ lui $at, 0x4319 ## $at = 43190000
/* 005AC 80894A4C 44812000 */ mtc1 $at, $f4 ## $f4 = 153.00
/* 005B0 80894A50 AFBF0034 */ sw $ra, 0x0034($sp)
/* 005B4 80894A54 AFB00030 */ sw $s0, 0x0030($sp)
/* 005B8 80894A58 AFA5003C */ sw $a1, 0x003C($sp)
/* 005BC 80894A5C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 005C0 80894A60 AC80014C */ sw $zero, 0x014C($a0) ## 0000014C
/* 005C4 80894A64 24050004 */ addiu $a1, $zero, 0x0004 ## $a1 = 00000004
/* 005C8 80894A68 0C22513D */ jal func_808944F4
/* 005CC 80894A6C E48401B0 */ swc1 $f4, 0x01B0($a0) ## 000001B0
/* 005D0 80894A70 C6060028 */ lwc1 $f6, 0x0028($s0) ## 00000028
/* 005D4 80894A74 8E070024 */ lw $a3, 0x0024($s0) ## 00000024
/* 005D8 80894A78 8FA5003C */ lw $a1, 0x003C($sp)
/* 005DC 80894A7C E7A60010 */ swc1 $f6, 0x0010($sp)
/* 005E0 80894A80 C608002C */ lwc1 $f8, 0x002C($s0) ## 0000002C
/* 005E4 80894A84 AFA00024 */ sw $zero, 0x0024($sp)
/* 005E8 80894A88 AFA00020 */ sw $zero, 0x0020($sp)
/* 005EC 80894A8C AFA0001C */ sw $zero, 0x001C($sp)
/* 005F0 80894A90 AFA00018 */ sw $zero, 0x0018($sp)
/* 005F4 80894A94 240600B7 */ addiu $a2, $zero, 0x00B7 ## $a2 = 000000B7
/* 005F8 80894A98 24A41C24 */ addiu $a0, $a1, 0x1C24 ## $a0 = 00001C24
/* 005FC 80894A9C 0C00C7D4 */ jal Actor_Spawn
## ActorSpawn
/* 00600 80894AA0 E7A80014 */ swc1 $f8, 0x0014($sp)
/* 00604 80894AA4 14400007 */ bne $v0, $zero, .L80894AC4
/* 00608 80894AA8 3C048089 */ lui $a0, %hi(D_80894FA0) ## $a0 = 80890000
/* 0060C 80894AAC 3C058089 */ lui $a1, %hi(D_80894FD8) ## $a1 = 80890000
/* 00610 80894AB0 24A54FD8 */ addiu $a1, $a1, %lo(D_80894FD8) ## $a1 = 80894FD8
/* 00614 80894AB4 24844FA0 */ addiu $a0, $a0, %lo(D_80894FA0) ## $a0 = 80894FA0
/* 00618 80894AB8 2406019A */ addiu $a2, $zero, 0x019A ## $a2 = 0000019A
/* 0061C 80894ABC 0C00084C */ jal osSyncPrintf
/* 00620 80894AC0 8607001C */ lh $a3, 0x001C($s0) ## 0000001C
.L80894AC4:
/* 00624 80894AC4 8FBF0034 */ lw $ra, 0x0034($sp)
/* 00628 80894AC8 8FB00030 */ lw $s0, 0x0030($sp)
/* 0062C 80894ACC 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
/* 00630 80894AD0 03E00008 */ jr $ra
/* 00634 80894AD4 00000000 */ nop

View file

@ -1,64 +0,0 @@
.rdata
glabel D_80894FF4
.asciz "../z_bg_jya_bombchuiwa.c"
.balign 4
glabel D_80895010
.asciz "../z_bg_jya_bombchuiwa.c"
.balign 4
glabel D_8089502C
.asciz "../z_bg_jya_bombchuiwa.c"
.balign 4
.text
glabel func_80894B04
/* 00664 80894B04 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 00668 80894B08 AFBF001C */ sw $ra, 0x001C($sp)
/* 0066C 80894B0C AFB00018 */ sw $s0, 0x0018($sp)
/* 00670 80894B10 AFA40040 */ sw $a0, 0x0040($sp)
/* 00674 80894B14 8C850000 */ lw $a1, 0x0000($a0) ## 00000000
/* 00678 80894B18 3C068089 */ lui $a2, %hi(D_80894FF4) ## $a2 = 80890000
/* 0067C 80894B1C 24C64FF4 */ addiu $a2, $a2, %lo(D_80894FF4) ## $a2 = 80894FF4
/* 00680 80894B20 27A4002C */ addiu $a0, $sp, 0x002C ## $a0 = FFFFFFEC
/* 00684 80894B24 240701B4 */ addiu $a3, $zero, 0x01B4 ## $a3 = 000001B4
/* 00688 80894B28 0C031AB1 */ jal Graph_OpenDisps
/* 0068C 80894B2C 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 00690 80894B30 8FAF0040 */ lw $t7, 0x0040($sp)
/* 00694 80894B34 0C024F61 */ jal func_80093D84
/* 00698 80894B38 8DE40000 */ lw $a0, 0x0000($t7) ## 00000000
/* 0069C 80894B3C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 006A0 80894B40 3C19DA38 */ lui $t9, 0xDA38 ## $t9 = DA380000
/* 006A4 80894B44 37390003 */ ori $t9, $t9, 0x0003 ## $t9 = DA380003
/* 006A8 80894B48 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
/* 006AC 80894B4C AE1802D0 */ sw $t8, 0x02D0($s0) ## 000002D0
/* 006B0 80894B50 AC590000 */ sw $t9, 0x0000($v0) ## 00000000
/* 006B4 80894B54 8FA80040 */ lw $t0, 0x0040($sp)
/* 006B8 80894B58 3C058089 */ lui $a1, %hi(D_80895010) ## $a1 = 80890000
/* 006BC 80894B5C 24A55010 */ addiu $a1, $a1, %lo(D_80895010) ## $a1 = 80895010
/* 006C0 80894B60 8D040000 */ lw $a0, 0x0000($t0) ## 00000000
/* 006C4 80894B64 240601B7 */ addiu $a2, $zero, 0x01B7 ## $a2 = 000001B7
/* 006C8 80894B68 0C0346A2 */ jal Matrix_NewMtx
/* 006CC 80894B6C AFA20028 */ sw $v0, 0x0028($sp)
/* 006D0 80894B70 8FA30028 */ lw $v1, 0x0028($sp)
/* 006D4 80894B74 3C0B0601 */ lui $t3, 0x0601 ## $t3 = 06010000
/* 006D8 80894B78 256B19B0 */ addiu $t3, $t3, 0x19B0 ## $t3 = 060119B0
/* 006DC 80894B7C AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 006E0 80894B80 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 006E4 80894B84 3C0ADE00 */ lui $t2, 0xDE00 ## $t2 = DE000000
/* 006E8 80894B88 3C068089 */ lui $a2, %hi(D_8089502C) ## $a2 = 80890000
/* 006EC 80894B8C 24490008 */ addiu $t1, $v0, 0x0008 ## $t1 = 00000008
/* 006F0 80894B90 AE0902D0 */ sw $t1, 0x02D0($s0) ## 000002D0
/* 006F4 80894B94 AC4B0004 */ sw $t3, 0x0004($v0) ## 00000004
/* 006F8 80894B98 AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000
/* 006FC 80894B9C 8FAC0040 */ lw $t4, 0x0040($sp)
/* 00700 80894BA0 24C6502C */ addiu $a2, $a2, %lo(D_8089502C) ## $a2 = 8089502C
/* 00704 80894BA4 27A4002C */ addiu $a0, $sp, 0x002C ## $a0 = FFFFFFEC
/* 00708 80894BA8 240701BB */ addiu $a3, $zero, 0x01BB ## $a3 = 000001BB
/* 0070C 80894BAC 0C031AD5 */ jal Graph_CloseDisps
/* 00710 80894BB0 8D850000 */ lw $a1, 0x0000($t4) ## 00000000
/* 00714 80894BB4 8FBF001C */ lw $ra, 0x001C($sp)
/* 00718 80894BB8 8FB00018 */ lw $s0, 0x0018($sp)
/* 0071C 80894BBC 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
/* 00720 80894BC0 03E00008 */ jr $ra
/* 00724 80894BC4 00000000 */ nop

View file

@ -1,188 +0,0 @@
.rdata
glabel D_80895048
.asciz "../z_bg_jya_bombchuiwa.c"
.balign 4
glabel D_80895064
.asciz "../z_bg_jya_bombchuiwa.c"
.balign 4
glabel D_80895080
.asciz "../z_bg_jya_bombchuiwa.c"
.balign 4
.text
glabel func_80894BC8
/* 00728 80894BC8 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8
/* 0072C 80894BCC AFBF0014 */ sw $ra, 0x0014($sp)
/* 00730 80894BD0 AFA40058 */ sw $a0, 0x0058($sp)
/* 00734 80894BD4 AFA5005C */ sw $a1, 0x005C($sp)
/* 00738 80894BD8 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
/* 0073C 80894BDC 3C068089 */ lui $a2, %hi(D_80895048) ## $a2 = 80890000
/* 00740 80894BE0 24C65048 */ addiu $a2, $a2, %lo(D_80895048) ## $a2 = 80895048
/* 00744 80894BE4 27A40040 */ addiu $a0, $sp, 0x0040 ## $a0 = FFFFFFE8
/* 00748 80894BE8 240701C5 */ addiu $a3, $zero, 0x01C5 ## $a3 = 000001C5
/* 0074C 80894BEC 0C031AB1 */ jal Graph_OpenDisps
/* 00750 80894BF0 AFA50050 */ sw $a1, 0x0050($sp)
/* 00754 80894BF4 8FAF005C */ lw $t7, 0x005C($sp)
/* 00758 80894BF8 0C024F61 */ jal func_80093D84
/* 0075C 80894BFC 8DE40000 */ lw $a0, 0x0000($t7) ## 00000000
/* 00760 80894C00 8FA80050 */ lw $t0, 0x0050($sp)
/* 00764 80894C04 3C19DA38 */ lui $t9, 0xDA38 ## $t9 = DA380000
/* 00768 80894C08 37390003 */ ori $t9, $t9, 0x0003 ## $t9 = DA380003
/* 0076C 80894C0C 8D0202D0 */ lw $v0, 0x02D0($t0) ## 000002D0
/* 00770 80894C10 3C058089 */ lui $a1, %hi(D_80895064) ## $a1 = 80890000
/* 00774 80894C14 24A55064 */ addiu $a1, $a1, %lo(D_80895064) ## $a1 = 80895064
/* 00778 80894C18 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
/* 0077C 80894C1C AD1802D0 */ sw $t8, 0x02D0($t0) ## 000002D0
/* 00780 80894C20 AC590000 */ sw $t9, 0x0000($v0) ## 00000000
/* 00784 80894C24 8FAA005C */ lw $t2, 0x005C($sp)
/* 00788 80894C28 240601C9 */ addiu $a2, $zero, 0x01C9 ## $a2 = 000001C9
/* 0078C 80894C2C 8D440000 */ lw $a0, 0x0000($t2) ## 00000000
/* 00790 80894C30 AFA80050 */ sw $t0, 0x0050($sp)
/* 00794 80894C34 0C0346A2 */ jal Matrix_NewMtx
/* 00798 80894C38 AFA2003C */ sw $v0, 0x003C($sp)
/* 0079C 80894C3C 8FA3003C */ lw $v1, 0x003C($sp)
/* 007A0 80894C40 8FA80050 */ lw $t0, 0x0050($sp)
/* 007A4 80894C44 3C06FA00 */ lui $a2, 0xFA00 ## $a2 = FA000000
/* 007A8 80894C48 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 007AC 80894C4C 8D0302D0 */ lw $v1, 0x02D0($t0) ## 000002D0
/* 007B0 80894C50 8FA50058 */ lw $a1, 0x0058($sp)
/* 007B4 80894C54 3C014319 */ lui $at, 0x4319 ## $at = 43190000
/* 007B8 80894C58 246B0008 */ addiu $t3, $v1, 0x0008 ## $t3 = 00000008
/* 007BC 80894C5C AD0B02D0 */ sw $t3, 0x02D0($t0) ## 000002D0
/* 007C0 80894C60 AC660000 */ sw $a2, 0x0000($v1) ## 00000000
/* 007C4 80894C64 44813000 */ mtc1 $at, $f6 ## $f6 = 153.00
/* 007C8 80894C68 C4A401B0 */ lwc1 $f4, 0x01B0($a1) ## 000001B0
/* 007CC 80894C6C 24040001 */ addiu $a0, $zero, 0x0001 ## $a0 = 00000001
/* 007D0 80894C70 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000
/* 007D4 80894C74 46062202 */ mul.s $f8, $f4, $f6
/* 007D8 80894C78 2407FF00 */ addiu $a3, $zero, 0xFF00 ## $a3 = FFFFFF00
/* 007DC 80894C7C 3C09DE00 */ lui $t1, 0xDE00 ## $t1 = DE000000
/* 007E0 80894C80 444CF800 */ cfc1 $t4, $31
/* 007E4 80894C84 44C4F800 */ ctc1 $a0, $31
/* 007E8 80894C88 00000000 */ nop
/* 007EC 80894C8C 460042A4 */ cvt.w.s $f10, $f8
/* 007F0 80894C90 4444F800 */ cfc1 $a0, $31
/* 007F4 80894C94 00000000 */ nop
/* 007F8 80894C98 30840078 */ andi $a0, $a0, 0x0078 ## $a0 = 00000000
/* 007FC 80894C9C 50800013 */ beql $a0, $zero, .L80894CEC
/* 00800 80894CA0 44045000 */ mfc1 $a0, $f10
/* 00804 80894CA4 44815000 */ mtc1 $at, $f10 ## $f10 = 2147483648.00
/* 00808 80894CA8 24040001 */ addiu $a0, $zero, 0x0001 ## $a0 = 00000001
/* 0080C 80894CAC 460A4281 */ sub.s $f10, $f8, $f10
/* 00810 80894CB0 44C4F800 */ ctc1 $a0, $31
/* 00814 80894CB4 00000000 */ nop
/* 00818 80894CB8 460052A4 */ cvt.w.s $f10, $f10
/* 0081C 80894CBC 4444F800 */ cfc1 $a0, $31
/* 00820 80894CC0 00000000 */ nop
/* 00824 80894CC4 30840078 */ andi $a0, $a0, 0x0078 ## $a0 = 00000000
/* 00828 80894CC8 14800005 */ bne $a0, $zero, .L80894CE0
/* 0082C 80894CCC 00000000 */ nop
/* 00830 80894CD0 44045000 */ mfc1 $a0, $f10
/* 00834 80894CD4 3C018000 */ lui $at, 0x8000 ## $at = 80000000
/* 00838 80894CD8 10000007 */ beq $zero, $zero, .L80894CF8
/* 0083C 80894CDC 00812025 */ or $a0, $a0, $at ## $a0 = 80000000
.L80894CE0:
/* 00840 80894CE0 10000005 */ beq $zero, $zero, .L80894CF8
/* 00844 80894CE4 2404FFFF */ addiu $a0, $zero, 0xFFFF ## $a0 = FFFFFFFF
/* 00848 80894CE8 44045000 */ mfc1 $a0, $f10
.L80894CEC:
/* 0084C 80894CEC 00000000 */ nop
/* 00850 80894CF0 0480FFFB */ bltz $a0, .L80894CE0
/* 00854 80894CF4 00000000 */ nop
.L80894CF8:
/* 00858 80894CF8 44CCF800 */ ctc1 $t4, $31
/* 0085C 80894CFC 2C81009A */ sltiu $at, $a0, 0x009A
/* 00860 80894D00 14200003 */ bne $at, $zero, .L80894D10
/* 00864 80894D04 00801025 */ or $v0, $a0, $zero ## $v0 = FFFFFFFF
/* 00868 80894D08 10000001 */ beq $zero, $zero, .L80894D10
/* 0086C 80894D0C 24020099 */ addiu $v0, $zero, 0x0099 ## $v0 = 00000099
.L80894D10:
/* 00870 80894D10 304D00FF */ andi $t5, $v0, 0x00FF ## $t5 = 00000099
/* 00874 80894D14 01A77025 */ or $t6, $t5, $a3 ## $t6 = FFFFFF99
/* 00878 80894D18 AC6E0004 */ sw $t6, 0x0004($v1) ## 00000004
/* 0087C 80894D1C 8D0202D0 */ lw $v0, 0x02D0($t0) ## 000002D0
/* 00880 80894D20 3C180601 */ lui $t8, 0x0601 ## $t8 = 06010000
/* 00884 80894D24 2718DC40 */ addiu $t8, $t8, 0xDC40 ## $t8 = 0600DC40
/* 00888 80894D28 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 000000A1
/* 0088C 80894D2C AD0F02D0 */ sw $t7, 0x02D0($t0) ## 000002D0
/* 00890 80894D30 AC580004 */ sw $t8, 0x0004($v0) ## 0000009D
/* 00894 80894D34 AC490000 */ sw $t1, 0x0000($v0) ## 00000099
/* 00898 80894D38 8D0202D0 */ lw $v0, 0x02D0($t0) ## 000002D0
/* 0089C 80894D3C 3C0AE700 */ lui $t2, 0xE700 ## $t2 = E7000000
/* 008A0 80894D40 3C01437F */ lui $at, 0x437F ## $at = 437F0000
/* 008A4 80894D44 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 000000A1
/* 008A8 80894D48 AD1902D0 */ sw $t9, 0x02D0($t0) ## 000002D0
/* 008AC 80894D4C AC400004 */ sw $zero, 0x0004($v0) ## 0000009D
/* 008B0 80894D50 AC4A0000 */ sw $t2, 0x0000($v0) ## 00000099
/* 008B4 80894D54 8D0302D0 */ lw $v1, 0x02D0($t0) ## 000002D0
/* 008B8 80894D58 44819000 */ mtc1 $at, $f18 ## $f18 = 255.00
/* 008BC 80894D5C 24040001 */ addiu $a0, $zero, 0x0001 ## $a0 = 00000001
/* 008C0 80894D60 246B0008 */ addiu $t3, $v1, 0x0008 ## $t3 = 00000008
/* 008C4 80894D64 AD0B02D0 */ sw $t3, 0x02D0($t0) ## 000002D0
/* 008C8 80894D68 AC660000 */ sw $a2, 0x0000($v1) ## 00000000
/* 008CC 80894D6C C4B001B0 */ lwc1 $f16, 0x01B0($a1) ## 000001B0
/* 008D0 80894D70 3C180601 */ lui $t8, 0x0601 ## $t8 = 06010000
/* 008D4 80894D74 3C014F00 */ lui $at, 0x4F00 ## $at = 4F000000
/* 008D8 80894D78 46128102 */ mul.s $f4, $f16, $f18
/* 008DC 80894D7C 2718DB60 */ addiu $t8, $t8, 0xDB60 ## $t8 = 0600DB60
/* 008E0 80894D80 3C068089 */ lui $a2, %hi(D_80895080) ## $a2 = 80890000
/* 008E4 80894D84 444CF800 */ cfc1 $t4, $31
/* 008E8 80894D88 44C4F800 */ ctc1 $a0, $31
/* 008EC 80894D8C 00000000 */ nop
/* 008F0 80894D90 460021A4 */ cvt.w.s $f6, $f4
/* 008F4 80894D94 4444F800 */ cfc1 $a0, $31
/* 008F8 80894D98 00000000 */ nop
/* 008FC 80894D9C 30840078 */ andi $a0, $a0, 0x0078 ## $a0 = 00000000
/* 00900 80894DA0 50800013 */ beql $a0, $zero, .L80894DF0
/* 00904 80894DA4 44043000 */ mfc1 $a0, $f6
/* 00908 80894DA8 44813000 */ mtc1 $at, $f6 ## $f6 = 2147483648.00
/* 0090C 80894DAC 24040001 */ addiu $a0, $zero, 0x0001 ## $a0 = 00000001
/* 00910 80894DB0 46062181 */ sub.s $f6, $f4, $f6
/* 00914 80894DB4 44C4F800 */ ctc1 $a0, $31
/* 00918 80894DB8 00000000 */ nop
/* 0091C 80894DBC 460031A4 */ cvt.w.s $f6, $f6
/* 00920 80894DC0 4444F800 */ cfc1 $a0, $31
/* 00924 80894DC4 00000000 */ nop
/* 00928 80894DC8 30840078 */ andi $a0, $a0, 0x0078 ## $a0 = 00000000
/* 0092C 80894DCC 14800005 */ bne $a0, $zero, .L80894DE4
/* 00930 80894DD0 00000000 */ nop
/* 00934 80894DD4 44043000 */ mfc1 $a0, $f6
/* 00938 80894DD8 3C018000 */ lui $at, 0x8000 ## $at = 80000000
/* 0093C 80894DDC 10000007 */ beq $zero, $zero, .L80894DFC
/* 00940 80894DE0 00812025 */ or $a0, $a0, $at ## $a0 = 80000000
.L80894DE4:
/* 00944 80894DE4 10000005 */ beq $zero, $zero, .L80894DFC
/* 00948 80894DE8 2404FFFF */ addiu $a0, $zero, 0xFFFF ## $a0 = FFFFFFFF
/* 0094C 80894DEC 44043000 */ mfc1 $a0, $f6
.L80894DF0:
/* 00950 80894DF0 00000000 */ nop
/* 00954 80894DF4 0480FFFB */ bltz $a0, .L80894DE4
/* 00958 80894DF8 00000000 */ nop
.L80894DFC:
/* 0095C 80894DFC 44CCF800 */ ctc1 $t4, $31
/* 00960 80894E00 2C810100 */ sltiu $at, $a0, 0x0100
/* 00964 80894E04 14200003 */ bne $at, $zero, .L80894E14
/* 00968 80894E08 00801025 */ or $v0, $a0, $zero ## $v0 = FFFFFFFF
/* 0096C 80894E0C 10000001 */ beq $zero, $zero, .L80894E14
/* 00970 80894E10 240200FF */ addiu $v0, $zero, 0x00FF ## $v0 = 000000FF
.L80894E14:
/* 00974 80894E14 304D00FF */ andi $t5, $v0, 0x00FF ## $t5 = 000000FF
/* 00978 80894E18 01A77025 */ or $t6, $t5, $a3 ## $t6 = FFFFFFFF
/* 0097C 80894E1C AC6E0004 */ sw $t6, 0x0004($v1) ## 00000004
/* 00980 80894E20 8D0202D0 */ lw $v0, 0x02D0($t0) ## 000002D0
/* 00984 80894E24 240701D8 */ addiu $a3, $zero, 0x01D8 ## $a3 = 000001D8
/* 00988 80894E28 27A40040 */ addiu $a0, $sp, 0x0040 ## $a0 = FFFFFFE8
/* 0098C 80894E2C 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000107
/* 00990 80894E30 AD0F02D0 */ sw $t7, 0x02D0($t0) ## 000002D0
/* 00994 80894E34 AC580004 */ sw $t8, 0x0004($v0) ## 00000103
/* 00998 80894E38 AC490000 */ sw $t1, 0x0000($v0) ## 000000FF
/* 0099C 80894E3C 8FB9005C */ lw $t9, 0x005C($sp)
/* 009A0 80894E40 24C65080 */ addiu $a2, $a2, %lo(D_80895080) ## $a2 = 80895080
/* 009A4 80894E44 0C031AD5 */ jal Graph_CloseDisps
/* 009A8 80894E48 8F250000 */ lw $a1, 0x0000($t9) ## 000000A1
/* 009AC 80894E4C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 009B0 80894E50 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000
/* 009B4 80894E54 03E00008 */ jr $ra
/* 009B8 80894E58 00000000 */ nop

View file

@ -1,33 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .data
.balign 16
glabel Bg_Jya_Bombchuiwa_InitVars
.word 0x01590100, 0x00000001, 0x00F10000, 0x000001B8
.word BgJyaBombchuiwa_Init
.word BgJyaBombchuiwa_Destroy
.word BgJyaBombchuiwa_Update
.word BgJyaBombchuiwa_Draw
glabel D_80894F40
.word 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, 0x00010100, 0x0000FED4, 0x00000000, 0x00280064
glabel D_80894F64
.word 0x0A000921, 0x20000000, 0x00000001
.word D_80894F40
glabel D_80894F74
.word 0x801F0003, 0xC8500064, 0xB0F403E8, 0xB0F803E8, 0x30FC03E8
glabel D_80894F88
.word 0xC4660000
glabel D_80894F8C
.word 0x43F00000
glabel D_80894F90
.word 0xC45E4000
glabel D_80894F94
.word 0x00000000, 0x00000000, 0x00000000

View file

@ -1,13 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .rodata
.balign 16
glabel D_808950B0
.incbin "baserom/ovl_Bg_Jya_Bombchuiwa", 0xC10, 0x000000F0

3
spec
View file

@ -969,8 +969,7 @@ endseg
beginseg beginseg
name "ovl_Bg_Jya_Bombchuiwa" name "ovl_Bg_Jya_Bombchuiwa"
include "build/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.o" include "build/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.o"
include "build/data/overlays/actors/z_bg_jya_bombchuiwa.data.o" include "build/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/ovl_Bg_Jya_Bombchuiwa_reloc.o"
include "build/data/overlays/actors/z_bg_jya_bombchuiwa.reloc.o"
endseg endseg
beginseg beginseg

View file

@ -1,4 +1,5 @@
#include "z_bg_jya_bombchuiwa.h" #include "z_bg_jya_bombchuiwa.h"
#include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h"
#define FLAGS 0x00000001 #define FLAGS 0x00000001
@ -9,7 +10,12 @@ void BgJyaBombchuiwa_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgJyaBombchuiwa_Update(Actor* thisx, GlobalContext* globalCtx); void BgJyaBombchuiwa_Update(Actor* thisx, GlobalContext* globalCtx);
void BgJyaBombchuiwa_Draw(Actor* thisx, GlobalContext* globalCtx); void BgJyaBombchuiwa_Draw(Actor* thisx, GlobalContext* globalCtx);
/* void BgJyaBombchuiwa_WaitForExplosion(BgJyaBombchuiwa* this, GlobalContext* globalCtx);
void BgJyaBombchuiwa_SetupWaitForExplosion(BgJyaBombchuiwa* this, GlobalContext* globalCtx);
void func_808949B8(BgJyaBombchuiwa* this, GlobalContext* globalCtx);
void BgJyaBombchuiwa_CleanUpAfterExplosion(BgJyaBombchuiwa* this, GlobalContext* globalCtx);
void BgJyaBombchuiwa_SpawnLightRay(BgJyaBombchuiwa* this, GlobalContext* globalCtx);
const ActorInit Bg_Jya_Bombchuiwa_InitVars = { const ActorInit Bg_Jya_Bombchuiwa_InitVars = {
ACTOR_BG_JYA_BOMBCHUIWA, ACTOR_BG_JYA_BOMBCHUIWA,
ACTORTYPE_BG, ACTORTYPE_BG,
@ -21,31 +27,207 @@ const ActorInit Bg_Jya_Bombchuiwa_InitVars = {
(ActorFunc)BgJyaBombchuiwa_Update, (ActorFunc)BgJyaBombchuiwa_Update,
(ActorFunc)BgJyaBombchuiwa_Draw, (ActorFunc)BgJyaBombchuiwa_Draw,
}; };
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombchuiwa/func_808944A0.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombchuiwa/func_808944F4.s") static ColliderJntSphItemInit sJntSphItemsInit[1] = {
{
{ 0x00, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, 0x00, 0x01, 0x01 },
{ 0, { { -300, 0, 0 }, 40 }, 100 },
},
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombchuiwa/BgJyaBombchuiwa_Init.s") static ColliderJntSphInit sJntSphInit = {
{ COLTYPE_UNK10, 0x00, 0x09, 0x21, 0x20, COLSHAPE_JNTSPH },
1,
sJntSphItemsInit,
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombchuiwa/BgJyaBombchuiwa_Destroy.s") static InitChainEntry sInitChain[] = {
ICHAIN_U8(unk_1F, 3, ICHAIN_CONTINUE),
ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE),
ICHAIN_F32(uncullZoneForward, 1000, ICHAIN_CONTINUE),
ICHAIN_F32(uncullZoneScale, 1000, ICHAIN_CONTINUE),
ICHAIN_F32(uncullZoneDownward, 1000, ICHAIN_STOP),
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombchuiwa/func_808945B4.s") extern Gfx D_0600EDC0[];
extern Gfx D_0600E8D0[];
extern Gfx D_060119B0[];
extern Gfx D_0600DC40[];
extern Gfx D_0600DB60[];
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombchuiwa/func_80894840.s") void BgJyaBombchuiwa_SetupCollider(BgJyaBombchuiwa* this, GlobalContext* globalCtx) {
s32 pad;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombchuiwa/func_8089487C.s") Collider_InitJntSph(globalCtx, &this->collider);
Collider_SetJntSph(globalCtx, &this->collider, &this->actor, &sJntSphInit, &this->colliderItems);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombchuiwa/func_80894960.s") void BgJyaBombchuiwa_SetDrawFlags(BgJyaBombchuiwa* this, u8 drawFlags) {
this->drawFlags &= ~7;
this->drawFlags |= drawFlags;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombchuiwa/func_808949B8.s") void BgJyaBombchuiwa_Init(Actor* thisx, GlobalContext* globalCtx) {
BgJyaBombchuiwa* this = THIS;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombchuiwa/func_80894A44.s") Actor_ProcessInitChain(thisx, &sInitChain);
BgJyaBombchuiwa_SetupCollider(thisx, globalCtx);
if (Flags_GetSwitch(globalCtx, thisx->params & 0x3F)) {
BgJyaBombchuiwa_SpawnLightRay(this, globalCtx);
} else {
BgJyaBombchuiwa_SetupWaitForExplosion(this, globalCtx);
}
Actor_SetHeight(thisx, 0.0f);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombchuiwa/BgJyaBombchuiwa_Update.s") void BgJyaBombchuiwa_Destroy(Actor* thisx, GlobalContext* globalCtx) {
Collider_DestroyJntSph(globalCtx, &THIS->collider);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombchuiwa/func_80894B04.s") void BgJyaBombchuiwa_Break(BgJyaBombchuiwa* this, GlobalContext* globalCtx) {
Vec3f pos;
Vec3f velocity;
s16 scale;
s16 arg5;
s16 arg6;
s16 arg7;
s32 i;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombchuiwa/func_80894BC8.s") for (i = 0; i < 20; i++) {
pos.x = Math_Rand_ZeroOne() * 10.0f + this->actor.posRot.pos.x - 10.0f;
pos.y = Math_Rand_ZeroOne() * 40.0f + this->actor.posRot.pos.y - 20.0f;
pos.z = Math_Rand_ZeroOne() * 50.0f + this->actor.posRot.pos.z - 25.0f;
velocity.x = Math_Rand_ZeroOne() * 3.0f - 0.3f;
velocity.y = Math_Rand_ZeroOne() * 18.0f;
velocity.z = (Math_Rand_ZeroOne() - 0.5f) * 15.0f;
scale = (s32)(Math_Rand_ZeroOne() * 20.0f) + 1;
if (scale > 10) {
arg5 = 5;
} else {
arg5 = 1;
}
if (Math_Rand_ZeroOne() < 0.4f) {
arg5 |= 0x40;
arg6 = 0xC;
arg7 = 8;
} else {
arg5 |= 0x20;
arg6 = 0xC;
arg7 = 8;
if (scale < 8) {
arg6 = 0x46;
arg7 = 0x28;
}
}
EffectSsKakera_Spawn(globalCtx, &pos, &velocity, &pos, -300, arg5, arg6, arg7, 0, scale, 1, 15, 80,
KAKERA_COLOR_NONE, OBJECT_JYA_OBJ, D_0600EDC0);
}
func_80033480(globalCtx, &this->actor.posRot.pos, 100.0f, 8, 100, 160, 0);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombchuiwa/BgJyaBombchuiwa_Draw.s") void BgJyaBombchuiwa_SetupWaitForExplosion(BgJyaBombchuiwa* this, GlobalContext* globalCtx) {
this->actionFunc = BgJyaBombchuiwa_WaitForExplosion;
BgJyaBombchuiwa_SetDrawFlags(this, 3);
this->timer = 0;
}
void BgJyaBombchuiwa_WaitForExplosion(BgJyaBombchuiwa* this, GlobalContext* globalCtx) {
if ((this->collider.base.acFlags & 2) || (this->timer > 0)) {
if (this->timer == 0) {
func_800800F8(globalCtx, 3410, -99, &this->actor, 0);
}
this->timer++;
if (this->timer > 10) {
BgJyaBombchuiwa_Break(this, globalCtx);
BgJyaBombchuiwa_CleanUpAfterExplosion(this, globalCtx);
Audio_PlaySoundAtPosition(globalCtx, &this->actor.posRot.pos, 40, NA_SE_EV_WALL_BROKEN);
}
} else {
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider);
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider);
}
}
void BgJyaBombchuiwa_CleanUpAfterExplosion(BgJyaBombchuiwa* this, GlobalContext* globalCtx) {
this->actionFunc = func_808949B8;
BgJyaBombchuiwa_SetDrawFlags(this, 4);
this->lightRayIntensity = 0.3f;
this->timer = 0;
this->actor.flags &= ~1;
}
void func_808949B8(BgJyaBombchuiwa* this, GlobalContext* globalCtx) {
this->timer++;
if (this->timer & 4) {
func_80033480(globalCtx, &this->actor.posRot.pos, 60.0f, 3, 100, 100, 0);
}
if (Math_ApproxF(&this->lightRayIntensity, 1.0f, 0.028)) {
BgJyaBombchuiwa_SpawnLightRay(this, globalCtx);
}
}
void BgJyaBombchuiwa_SpawnLightRay(BgJyaBombchuiwa* this, GlobalContext* globalCtx) {
this->actionFunc = NULL;
this->lightRayIntensity = 153.0f;
BgJyaBombchuiwa_SetDrawFlags(this, 4);
if (Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_MIR_RAY, this->actor.posRot.pos.x, this->actor.posRot.pos.y,
this->actor.posRot.pos.z, 0, 0, 0, 0) == NULL) {
// Occurrence failure
osSyncPrintf(" : Mir_Ray 発生失敗(%s %d)(arg_data 0x%04x)\n", "../z_bg_jya_bombchuiwa.c", 410,
this->actor.params);
}
}
void BgJyaBombchuiwa_Update(Actor* thisx, GlobalContext* globalCtx) {
BgJyaBombchuiwa* this = THIS;
if (this->actionFunc != NULL) {
this->actionFunc(this, globalCtx);
}
}
void BgJyaBombchuiwa_DrawRock(GlobalContext* globalCtx) {
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_bg_jya_bombchuiwa.c", 436);
func_80093D84(globalCtx->state.gfxCtx);
gSPMatrix(oGfxCtx->polyXlu.p++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_jya_bombchuiwa.c", 439),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(oGfxCtx->polyXlu.p++, D_060119B0);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_jya_bombchuiwa.c", 443);
}
void BgJyaBombchuiwa_DrawLight(Actor* thisx, GlobalContext* globalCtx) {
BgJyaBombchuiwa* this = THIS;
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_bg_jya_bombchuiwa.c", 453);
func_80093D84(globalCtx->state.gfxCtx);
gSPMatrix(oGfxCtx->polyXlu.p++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_jya_bombchuiwa.c", 457),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gDPSetPrimColor(oGfxCtx->polyXlu.p++, 0, 0, 255, 255, 255, CLAMP_MAX((u32)(this->lightRayIntensity * 153.0f), 153));
gSPDisplayList(oGfxCtx->polyXlu.p++, D_0600DC40);
gDPPipeSync(oGfxCtx->polyXlu.p++);
gDPSetPrimColor(oGfxCtx->polyXlu.p++, 0, 0, 255, 255, 255, CLAMP_MAX((u32)(this->lightRayIntensity * 255.0f), 255));
gSPDisplayList(oGfxCtx->polyXlu.p++, D_0600DB60);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_jya_bombchuiwa.c", 472);
}
void BgJyaBombchuiwa_Draw(Actor* thisx, GlobalContext* globalCtx) {
static Vec3f D_80894F88 = { -920.0f, 480.0f, -889.0f };
static Vec3s D_80894F94 = { 0, 0, 0 };
BgJyaBombchuiwa* this = THIS;
if (this->drawFlags & 1) {
Gfx_DrawDListOpa(globalCtx, &D_0600E8D0);
func_800628A4(0, &this->collider);
}
if (this->drawFlags & 2) {
BgJyaBombchuiwa_DrawRock(globalCtx);
}
if (this->drawFlags & 4) {
func_800D1694(D_80894F88.x, D_80894F88.y, D_80894F88.z, &D_80894F94);
Matrix_Scale(this->actor.scale.x, this->actor.scale.y, this->actor.scale.z, MTXMODE_APPLY);
if (this->drawFlags & 4) {
BgJyaBombchuiwa_DrawLight(thisx, globalCtx);
}
}
}

View file

@ -6,9 +6,16 @@
struct BgJyaBombchuiwa; struct BgJyaBombchuiwa;
typedef void (*BgJyaBombchuiwaActionFunc)(struct BgJyaBombchuiwa*, GlobalContext*);
typedef struct BgJyaBombchuiwa { typedef struct BgJyaBombchuiwa {
/* 0x0000 */ Actor actor; /* 0x0000 */ Actor actor;
/* 0x014C */ char unk_14C[0x6C]; /* 0x014C */ BgJyaBombchuiwaActionFunc actionFunc;
/* 0x0150 */ ColliderJntSph collider;
/* 0x0170 */ ColliderJntSphItem colliderItems;
/* 0x01B0 */ f32 lightRayIntensity;
/* 0x01B4 */ s16 timer;
/* 0x01B6 */ u8 drawFlags; // Used to determine how the actor is drawn.
} BgJyaBombchuiwa; // size = 0x01B8 } BgJyaBombchuiwa; // size = 0x01B8
extern const ActorInit Bg_Jya_Bombchuiwa_InitVars; extern const ActorInit Bg_Jya_Bombchuiwa_InitVars;

@ -1 +1 @@
Subproject commit 15fcb21d2c4e2ef2f720d28a0f7dec259ddd06f5 Subproject commit a781b7b098472076f99f52e4ad214823ea91be2d

View file

@ -1281,6 +1281,12 @@ D_06000A3C = 0x06000A3C;
D_06000830 = 0x06000830; D_06000830 = 0x06000830;
D_0600040C = 0x0600040C; D_0600040C = 0x0600040C;
//z_bg_jya_bombchuiwa
D_0600E8D0 = 0x0600E8D0;
D_060119B0 = 0x060119B0;
D_0600DC40 = 0x0600DC40;
D_0600DB60 = 0x0600DB60;
// z_en_takara_man // z_en_takara_man
D_06004FE0 = 0x06004FE0; D_06004FE0 = 0x06004FE0;
D_06000498 = 0x06000498; D_06000498 = 0x06000498;