mirror of
https://github.com/zeldaret/oot.git
synced 2024-11-28 19:25:27 +00:00
Decomp BgJyaBombiwa (#294)
* Decomp BgJyaBombiwa * Delete z_bg_jya_bombiwa.data.s * Delete z_bg_jya_bombiwa.reloc.s * PR fixes * Delete cur_list.txt * Delete old_data_list.txt * Delete data_list.txt * Delete old_list.txt * PR fixes * PR fixes
This commit is contained in:
parent
449b2247fd
commit
91299ed21f
14 changed files with 145 additions and 477 deletions
|
@ -1,20 +0,0 @@
|
|||
glabel BgJyaBombiwa_Destroy
|
||||
/* 001B4 80895354 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 001B8 80895358 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 001BC 8089535C 8FAE0018 */ lw $t6, 0x0018($sp)
|
||||
/* 001C0 80895360 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 001C4 80895364 00A03825 */ or $a3, $a1, $zero ## $a3 = 00000000
|
||||
/* 001C8 80895368 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 001CC 8089536C 8DC6014C */ lw $a2, 0x014C($t6) ## 0000014C
|
||||
/* 001D0 80895370 AFA7001C */ sw $a3, 0x001C($sp)
|
||||
/* 001D4 80895374 0C00FB56 */ jal DynaPolyInfo_Free
|
||||
## DynaPolyInfo_delReserve
|
||||
/* 001D8 80895378 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810
|
||||
/* 001DC 8089537C 8FA50018 */ lw $a1, 0x0018($sp)
|
||||
/* 001E0 80895380 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 001E4 80895384 0C016F32 */ jal Collider_DestroyJntSph
|
||||
/* 001E8 80895388 24A50168 */ addiu $a1, $a1, 0x0168 ## $a1 = 00000168
|
||||
/* 001EC 8089538C 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 001F0 80895390 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 001F4 80895394 03E00008 */ jr $ra
|
||||
/* 001F8 80895398 00000000 */ nop
|
|
@ -1,19 +0,0 @@
|
|||
glabel BgJyaBombiwa_Draw
|
||||
/* 0051C 808956BC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00520 808956C0 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 00524 808956C4 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00528 808956C8 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 0052C 808956CC 3C050601 */ lui $a1, 0x0601 ## $a1 = 06010000
|
||||
/* 00530 808956D0 0C00D498 */ jal Gfx_DrawDListOpa
|
||||
|
||||
/* 00534 808956D4 24A5E490 */ addiu $a1, $a1, 0xE490 ## $a1 = 0600E490
|
||||
/* 00538 808956D8 8FA50018 */ lw $a1, 0x0018($sp)
|
||||
/* 0053C 808956DC 00002025 */ or $a0, $zero, $zero ## $a0 = 00000000
|
||||
/* 00540 808956E0 0C018A29 */ jal func_800628A4
|
||||
/* 00544 808956E4 24A50168 */ addiu $a1, $a1, 0x0168 ## $a1 = 00000168
|
||||
/* 00548 808956E8 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 0054C 808956EC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00550 808956F0 03E00008 */ jr $ra
|
||||
/* 00554 808956F4 00000000 */ nop
|
||||
/* 00558 808956F8 00000000 */ nop
|
||||
/* 0055C 808956FC 00000000 */ nop
|
|
@ -1,87 +0,0 @@
|
|||
.rdata
|
||||
glabel D_808957C8
|
||||
.asciz "\x1b[43;30m"
|
||||
.balign 4
|
||||
|
||||
glabel D_808957D4
|
||||
.asciz "Warning : Switch Number が変更された(%s %d)(SW %d)\n"
|
||||
.balign 4
|
||||
|
||||
glabel D_80895810
|
||||
.asciz "../z_bg_jya_bombiwa.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_80895828
|
||||
.asciz "\x1b[m"
|
||||
.balign 4
|
||||
|
||||
glabel D_8089582C
|
||||
.asciz "(jya 爆弾で破壊岩)(arg_data 0x%04x)\n"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel BgJyaBombiwa_Init
|
||||
/* 000DC 8089527C 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 000E0 80895280 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 000E4 80895284 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 000E8 80895288 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 000EC 8089528C 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
|
||||
/* 000F0 80895290 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 000F4 80895294 24010029 */ addiu $at, $zero, 0x0029 ## $at = 00000029
|
||||
/* 000F8 80895298 31CF003F */ andi $t7, $t6, 0x003F ## $t7 = 00000000
|
||||
/* 000FC 8089529C 11E1000E */ beq $t7, $at, .L808952D8
|
||||
/* 00100 808952A0 3C048089 */ lui $a0, %hi(D_808957C8) ## $a0 = 80890000
|
||||
/* 00104 808952A4 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00108 808952A8 248457C8 */ addiu $a0, $a0, %lo(D_808957C8) ## $a0 = 808957C8
|
||||
/* 0010C 808952AC 8607001C */ lh $a3, 0x001C($s0) ## 0000001C
|
||||
/* 00110 808952B0 3C048089 */ lui $a0, %hi(D_808957D4) ## $a0 = 80890000
|
||||
/* 00114 808952B4 3C058089 */ lui $a1, %hi(D_80895810) ## $a1 = 80890000
|
||||
/* 00118 808952B8 24A55810 */ addiu $a1, $a1, %lo(D_80895810) ## $a1 = 80895810
|
||||
/* 0011C 808952BC 248457D4 */ addiu $a0, $a0, %lo(D_808957D4) ## $a0 = 808957D4
|
||||
/* 00120 808952C0 240600DA */ addiu $a2, $zero, 0x00DA ## $a2 = 000000DA
|
||||
/* 00124 808952C4 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00128 808952C8 30E7003F */ andi $a3, $a3, 0x003F ## $a3 = 00000000
|
||||
/* 0012C 808952CC 3C048089 */ lui $a0, %hi(D_80895828) ## $a0 = 80890000
|
||||
/* 00130 808952D0 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00134 808952D4 24845828 */ addiu $a0, $a0, %lo(D_80895828) ## $a0 = 80895828
|
||||
.L808952D8:
|
||||
/* 00138 808952D8 3C060601 */ lui $a2, 0x0601 ## $a2 = 06010000
|
||||
/* 0013C 808952DC 24C6E710 */ addiu $a2, $a2, 0xE710 ## $a2 = 0600E710
|
||||
/* 00140 808952E0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00144 808952E4 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
/* 00148 808952E8 0C225468 */ jal func_808951A0
|
||||
/* 0014C 808952EC 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 00150 808952F0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00154 808952F4 0C22548A */ jal func_80895228
|
||||
/* 00158 808952F8 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
/* 0015C 808952FC 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 00160 80895300 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 00164 80895304 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 00168 80895308 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
|
||||
/* 0016C 8089530C 10400005 */ beq $v0, $zero, .L80895324
|
||||
/* 00170 80895310 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00174 80895314 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 00178 80895318 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0017C 8089531C 10000009 */ beq $zero, $zero, .L80895344
|
||||
/* 00180 80895320 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80895324:
|
||||
/* 00184 80895324 3C058089 */ lui $a1, %hi(D_80895754) ## $a1 = 80890000
|
||||
/* 00188 80895328 0C01E037 */ jal Actor_ProcessInitChain
|
||||
|
||||
/* 0018C 8089532C 24A55754 */ addiu $a1, $a1, %lo(D_80895754) ## $a1 = 80895754
|
||||
/* 00190 80895330 3C048089 */ lui $a0, %hi(D_8089582C) ## $a0 = 80890000
|
||||
/* 00194 80895334 2484582C */ addiu $a0, $a0, %lo(D_8089582C) ## $a0 = 8089582C
|
||||
/* 00198 80895338 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 0019C 8089533C 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 001A0 80895340 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80895344:
|
||||
/* 001A4 80895344 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 001A8 80895348 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 001AC 8089534C 03E00008 */ jr $ra
|
||||
/* 001B0 80895350 00000000 */ nop
|
|
@ -1,42 +0,0 @@
|
|||
glabel BgJyaBombiwa_Update
|
||||
/* 00490 80895630 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 00494 80895634 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00498 80895638 AFB10018 */ sw $s1, 0x0018($sp)
|
||||
/* 0049C 8089563C AFB00014 */ sw $s0, 0x0014($sp)
|
||||
/* 004A0 80895640 908E0179 */ lbu $t6, 0x0179($a0) ## 00000179
|
||||
/* 004A4 80895644 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 004A8 80895648 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
|
||||
/* 004AC 8089564C 31CF0002 */ andi $t7, $t6, 0x0002 ## $t7 = 00000000
|
||||
/* 004B0 80895650 11E00010 */ beq $t7, $zero, .L80895694
|
||||
/* 004B4 80895654 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 004B8 80895658 0C2254E7 */ jal func_8089539C
|
||||
/* 004BC 8089565C 00000000 */ nop
|
||||
/* 004C0 80895660 8625001C */ lh $a1, 0x001C($s1) ## 0000001C
|
||||
/* 004C4 80895664 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 004C8 80895668 0C00B2DD */ jal Flags_SetSwitch
|
||||
|
||||
/* 004CC 8089566C 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
|
||||
/* 004D0 80895670 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 004D4 80895674 26250024 */ addiu $a1, $s1, 0x0024 ## $a1 = 00000024
|
||||
/* 004D8 80895678 24060028 */ addiu $a2, $zero, 0x0028 ## $a2 = 00000028
|
||||
/* 004DC 8089567C 0C01AEB6 */ jal Audio_PlaySoundAtPosition
|
||||
|
||||
/* 004E0 80895680 24072810 */ addiu $a3, $zero, 0x2810 ## $a3 = 00002810
|
||||
/* 004E4 80895684 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 004E8 80895688 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 004EC 8089568C 10000007 */ beq $zero, $zero, .L808956AC
|
||||
/* 004F0 80895690 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L80895694:
|
||||
/* 004F4 80895694 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00001E60
|
||||
/* 004F8 80895698 02012821 */ addu $a1, $s0, $at
|
||||
/* 004FC 8089569C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00500 808956A0 0C01767D */ jal CollisionCheck_SetAC
|
||||
## CollisionCheck_setAC
|
||||
/* 00504 808956A4 26260168 */ addiu $a2, $s1, 0x0168 ## $a2 = 00000168
|
||||
/* 00508 808956A8 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L808956AC:
|
||||
/* 0050C 808956AC 8FB00014 */ lw $s0, 0x0014($sp)
|
||||
/* 00510 808956B0 8FB10018 */ lw $s1, 0x0018($sp)
|
||||
/* 00514 808956B4 03E00008 */ jr $ra
|
||||
/* 00518 808956B8 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
|
@ -1,50 +0,0 @@
|
|||
.rdata
|
||||
glabel D_80895770
|
||||
.asciz "Warning : move BG 登録失敗(%s %d)(name %d)(arg_data 0x%04x)\n"
|
||||
.balign 4
|
||||
|
||||
glabel D_808957B0
|
||||
.asciz "../z_bg_jya_bombiwa.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_808951A0
|
||||
/* 00000 808951A0 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 00004 808951A4 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00008 808951A8 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 0000C 808951AC AFA5003C */ sw $a1, 0x003C($sp)
|
||||
/* 00010 808951B0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00014 808951B4 AFA60040 */ sw $a2, 0x0040($sp)
|
||||
/* 00018 808951B8 AFA00030 */ sw $zero, 0x0030($sp)
|
||||
/* 0001C 808951BC 0C010D20 */ jal DynaPolyInfo_SetActorMove
|
||||
|
||||
/* 00020 808951C0 00E02825 */ or $a1, $a3, $zero ## $a1 = 00000000
|
||||
/* 00024 808951C4 8FA40040 */ lw $a0, 0x0040($sp)
|
||||
/* 00028 808951C8 0C010620 */ jal DynaPolyInfo_Alloc
|
||||
|
||||
/* 0002C 808951CC 27A50030 */ addiu $a1, $sp, 0x0030 ## $a1 = FFFFFFF8
|
||||
/* 00030 808951D0 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 00034 808951D4 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
|
||||
/* 00038 808951D8 8FA70030 */ lw $a3, 0x0030($sp)
|
||||
/* 0003C 808951DC 0C00FA9D */ jal DynaPolyInfo_RegisterActor
|
||||
## DynaPolyInfo_setActor
|
||||
/* 00040 808951E0 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810
|
||||
/* 00044 808951E4 24010032 */ addiu $at, $zero, 0x0032 ## $at = 00000032
|
||||
/* 00048 808951E8 1441000A */ bne $v0, $at, .L80895214
|
||||
/* 0004C 808951EC AE02014C */ sw $v0, 0x014C($s0) ## 0000014C
|
||||
/* 00050 808951F0 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
|
||||
/* 00054 808951F4 3C048089 */ lui $a0, %hi(D_80895770) ## $a0 = 80890000
|
||||
/* 00058 808951F8 3C058089 */ lui $a1, %hi(D_808957B0) ## $a1 = 80890000
|
||||
/* 0005C 808951FC 86070000 */ lh $a3, 0x0000($s0) ## 00000000
|
||||
/* 00060 80895200 24A557B0 */ addiu $a1, $a1, %lo(D_808957B0) ## $a1 = 808957B0
|
||||
/* 00064 80895204 24845770 */ addiu $a0, $a0, %lo(D_80895770) ## $a0 = 80895770
|
||||
/* 00068 80895208 240600AE */ addiu $a2, $zero, 0x00AE ## $a2 = 000000AE
|
||||
/* 0006C 8089520C 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00070 80895210 AFAE0010 */ sw $t6, 0x0010($sp)
|
||||
.L80895214:
|
||||
/* 00074 80895214 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00078 80895218 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 0007C 8089521C 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 00080 80895220 03E00008 */ jr $ra
|
||||
/* 00084 80895224 00000000 */ nop
|
|
@ -1,22 +0,0 @@
|
|||
glabel func_80895228
|
||||
/* 00088 80895228 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 0008C 8089522C 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
|
||||
/* 00090 80895230 AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 00094 80895234 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00098 80895238 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 0009C 8089523C 24C50168 */ addiu $a1, $a2, 0x0168 ## $a1 = 00000168
|
||||
/* 000A0 80895240 AFA50020 */ sw $a1, 0x0020($sp)
|
||||
/* 000A4 80895244 0C016EFE */ jal Collider_InitJntSph
|
||||
/* 000A8 80895248 AFA60028 */ sw $a2, 0x0028($sp)
|
||||
/* 000AC 8089524C 8FA60028 */ lw $a2, 0x0028($sp)
|
||||
/* 000B0 80895250 3C078089 */ lui $a3, %hi(D_80895744) ## $a3 = 80890000
|
||||
/* 000B4 80895254 8FA50020 */ lw $a1, 0x0020($sp)
|
||||
/* 000B8 80895258 24CE0188 */ addiu $t6, $a2, 0x0188 ## $t6 = 00000188
|
||||
/* 000BC 8089525C AFAE0010 */ sw $t6, 0x0010($sp)
|
||||
/* 000C0 80895260 24E75744 */ addiu $a3, $a3, %lo(D_80895744) ## $a3 = 80895744
|
||||
/* 000C4 80895264 0C017014 */ jal Collider_SetJntSph
|
||||
/* 000C8 80895268 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 000CC 8089526C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 000D0 80895270 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 000D4 80895274 03E00008 */ jr $ra
|
||||
/* 000D8 80895278 00000000 */ nop
|
|
@ -1,185 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_80895854
|
||||
.word 0x3FE66666
|
||||
glabel D_80895858
|
||||
.float 0.4
|
||||
|
||||
.text
|
||||
glabel func_8089539C
|
||||
/* 001FC 8089539C 27BDFF38 */ addiu $sp, $sp, 0xFF38 ## $sp = FFFFFF38
|
||||
/* 00200 808953A0 F7BE0070 */ sdc1 $f30, 0x0070($sp)
|
||||
/* 00204 808953A4 3C014140 */ lui $at, 0x4140 ## $at = 41400000
|
||||
/* 00208 808953A8 4481F000 */ mtc1 $at, $f30 ## $f30 = 12.00
|
||||
/* 0020C 808953AC F7BC0068 */ sdc1 $f28, 0x0068($sp)
|
||||
/* 00210 808953B0 3C01430C */ lui $at, 0x430C ## $at = 430C0000
|
||||
/* 00214 808953B4 4481E000 */ mtc1 $at, $f28 ## $f28 = 140.00
|
||||
/* 00218 808953B8 F7BA0060 */ sdc1 $f26, 0x0060($sp)
|
||||
/* 0021C 808953BC 3C014120 */ lui $at, 0x4120 ## $at = 41200000
|
||||
/* 00220 808953C0 4481D000 */ mtc1 $at, $f26 ## $f26 = 10.00
|
||||
/* 00224 808953C4 F7B80058 */ sdc1 $f24, 0x0058($sp)
|
||||
/* 00228 808953C8 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
|
||||
/* 0022C 808953CC 4481C000 */ mtc1 $at, $f24 ## $f24 = 0.50
|
||||
/* 00230 808953D0 F7B60050 */ sdc1 $f22, 0x0050($sp)
|
||||
/* 00234 808953D4 3C014220 */ lui $at, 0x4220 ## $at = 42200000
|
||||
/* 00238 808953D8 4481B000 */ mtc1 $at, $f22 ## $f22 = 40.00
|
||||
/* 0023C 808953DC AFBE0098 */ sw $s8, 0x0098($sp)
|
||||
/* 00240 808953E0 F7B40048 */ sdc1 $f20, 0x0048($sp)
|
||||
/* 00244 808953E4 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000
|
||||
/* 00248 808953E8 AFB70094 */ sw $s7, 0x0094($sp)
|
||||
/* 0024C 808953EC AFB60090 */ sw $s6, 0x0090($sp)
|
||||
/* 00250 808953F0 AFB5008C */ sw $s5, 0x008C($sp)
|
||||
/* 00254 808953F4 AFB20080 */ sw $s2, 0x0080($sp)
|
||||
/* 00258 808953F8 3C1E0601 */ lui $s8, 0x0601 ## $s8 = 06010000
|
||||
/* 0025C 808953FC 4481A000 */ mtc1 $at, $f20 ## $f20 = 80.00
|
||||
/* 00260 80895400 0080A825 */ or $s5, $a0, $zero ## $s5 = 00000000
|
||||
/* 00264 80895404 AFBF009C */ sw $ra, 0x009C($sp)
|
||||
/* 00268 80895408 AFB40088 */ sw $s4, 0x0088($sp)
|
||||
/* 0026C 8089540C AFB30084 */ sw $s3, 0x0084($sp)
|
||||
/* 00270 80895410 AFB1007C */ sw $s1, 0x007C($sp)
|
||||
/* 00274 80895414 AFB00078 */ sw $s0, 0x0078($sp)
|
||||
/* 00278 80895418 AFA500CC */ sw $a1, 0x00CC($sp)
|
||||
/* 0027C 8089541C 27DEEDC0 */ addiu $s8, $s8, 0xEDC0 ## $s8 = 0600EDC0
|
||||
/* 00280 80895420 00009025 */ or $s2, $zero, $zero ## $s2 = 00000000
|
||||
/* 00284 80895424 27B600BC */ addiu $s6, $sp, 0x00BC ## $s6 = FFFFFFF4
|
||||
/* 00288 80895428 27B700B0 */ addiu $s7, $sp, 0x00B0 ## $s7 = FFFFFFE8
|
||||
/* 0028C 8089542C 2413000C */ addiu $s3, $zero, 0x000C ## $s3 = 0000000C
|
||||
.L80895430:
|
||||
/* 00290 80895430 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00294 80895434 24140008 */ addiu $s4, $zero, 0x0008 ## $s4 = 00000008
|
||||
/* 00298 80895438 46140102 */ mul.s $f4, $f0, $f20
|
||||
/* 0029C 8089543C C6A60024 */ lwc1 $f6, 0x0024($s5) ## 00000024
|
||||
/* 002A0 80895440 46062200 */ add.s $f8, $f4, $f6
|
||||
/* 002A4 80895444 46164281 */ sub.s $f10, $f8, $f22
|
||||
/* 002A8 80895448 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 002AC 8089544C E7AA00BC */ swc1 $f10, 0x00BC($sp)
|
||||
/* 002B0 80895450 461C0402 */ mul.s $f16, $f0, $f28
|
||||
/* 002B4 80895454 C6B20028 */ lwc1 $f18, 0x0028($s5) ## 00000028
|
||||
/* 002B8 80895458 46128100 */ add.s $f4, $f16, $f18
|
||||
/* 002BC 8089545C 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 002C0 80895460 E7A400C0 */ swc1 $f4, 0x00C0($sp)
|
||||
/* 002C4 80895464 46140182 */ mul.s $f6, $f0, $f20
|
||||
/* 002C8 80895468 C6A8002C */ lwc1 $f8, 0x002C($s5) ## 0000002C
|
||||
/* 002CC 8089546C 46083280 */ add.s $f10, $f6, $f8
|
||||
/* 002D0 80895470 46165401 */ sub.s $f16, $f10, $f22
|
||||
/* 002D4 80895474 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 002D8 80895478 E7B000C4 */ swc1 $f16, 0x00C4($sp)
|
||||
/* 002DC 8089547C 46180481 */ sub.s $f18, $f0, $f24
|
||||
/* 002E0 80895480 461A9102 */ mul.s $f4, $f18, $f26
|
||||
/* 002E4 80895484 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 002E8 80895488 E7A400B0 */ swc1 $f4, 0x00B0($sp)
|
||||
/* 002EC 8089548C 461E0182 */ mul.s $f6, $f0, $f30
|
||||
/* 002F0 80895490 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 002F4 80895494 E7A600B4 */ swc1 $f6, 0x00B4($sp)
|
||||
/* 002F8 80895498 44928000 */ mtc1 $s2, $f16 ## $f16 = 0.00
|
||||
/* 002FC 8089549C 46180201 */ sub.s $f8, $f0, $f24
|
||||
/* 00300 808954A0 3C018089 */ lui $at, %hi(D_80895854) ## $at = 80890000
|
||||
/* 00304 808954A4 C4245854 */ lwc1 $f4, %lo(D_80895854)($at)
|
||||
/* 00308 808954A8 468084A0 */ cvt.s.w $f18, $f16
|
||||
/* 0030C 808954AC 461A4282 */ mul.s $f10, $f8, $f26
|
||||
/* 00310 808954B0 24100001 */ addiu $s0, $zero, 0x0001 ## $s0 = 00000001
|
||||
/* 00314 808954B4 46049182 */ mul.s $f6, $f18, $f4
|
||||
/* 00318 808954B8 E7AA00B8 */ swc1 $f10, 0x00B8($sp)
|
||||
/* 0031C 808954BC 4600320D */ trunc.w.s $f8, $f6
|
||||
/* 00320 808954C0 44114000 */ mfc1 $s1, $f8
|
||||
/* 00324 808954C4 00000000 */ nop
|
||||
/* 00328 808954C8 26310003 */ addiu $s1, $s1, 0x0003 ## $s1 = 00000003
|
||||
/* 0032C 808954CC 00118C00 */ sll $s1, $s1, 16
|
||||
/* 00330 808954D0 00118C03 */ sra $s1, $s1, 16
|
||||
/* 00334 808954D4 2A210010 */ slti $at, $s1, 0x0010
|
||||
/* 00338 808954D8 14200003 */ bne $at, $zero, .L808954E8
|
||||
/* 0033C 808954DC 00000000 */ nop
|
||||
/* 00340 808954E0 10000001 */ beq $zero, $zero, .L808954E8
|
||||
/* 00344 808954E4 24100005 */ addiu $s0, $zero, 0x0005 ## $s0 = 00000005
|
||||
.L808954E8:
|
||||
/* 00348 808954E8 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 0034C 808954EC 00000000 */ nop
|
||||
/* 00350 808954F0 3C018089 */ lui $at, %hi(D_80895858) ## $at = 80890000
|
||||
/* 00354 808954F4 C42A5858 */ lwc1 $f10, %lo(D_80895858)($at)
|
||||
/* 00358 808954F8 8FA400CC */ lw $a0, 0x00CC($sp)
|
||||
/* 0035C 808954FC 02C02825 */ or $a1, $s6, $zero ## $a1 = FFFFFFF4
|
||||
/* 00360 80895500 460A003C */ c.lt.s $f0, $f10
|
||||
/* 00364 80895504 02E03025 */ or $a2, $s7, $zero ## $a2 = FFFFFFE8
|
||||
/* 00368 80895508 02C03825 */ or $a3, $s6, $zero ## $a3 = FFFFFFF4
|
||||
/* 0036C 8089550C 240FFE70 */ addiu $t7, $zero, 0xFE70 ## $t7 = FFFFFE70
|
||||
/* 00370 80895510 45000005 */ bc1f .L80895528
|
||||
/* 00374 80895514 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
|
||||
/* 00378 80895518 36100040 */ ori $s0, $s0, 0x0040 ## $s0 = 00000045
|
||||
/* 0037C 8089551C 00108400 */ sll $s0, $s0, 16
|
||||
/* 00380 80895520 10000008 */ beq $zero, $zero, .L80895544
|
||||
/* 00384 80895524 00108403 */ sra $s0, $s0, 16
|
||||
.L80895528:
|
||||
/* 00388 80895528 36100020 */ ori $s0, $s0, 0x0020 ## $s0 = 00000065
|
||||
/* 0038C 8089552C 00108400 */ sll $s0, $s0, 16
|
||||
/* 00390 80895530 2A21000A */ slti $at, $s1, 0x000A
|
||||
/* 00394 80895534 10200003 */ beq $at, $zero, .L80895544
|
||||
/* 00398 80895538 00108403 */ sra $s0, $s0, 16
|
||||
/* 0039C 8089553C 24130050 */ addiu $s3, $zero, 0x0050 ## $s3 = 00000050
|
||||
/* 003A0 80895540 24140050 */ addiu $s4, $zero, 0x0050 ## $s4 = 00000050
|
||||
.L80895544:
|
||||
/* 003A4 80895544 24190014 */ addiu $t9, $zero, 0x0014 ## $t9 = 00000014
|
||||
/* 003A8 80895548 24080050 */ addiu $t0, $zero, 0x0050 ## $t0 = 00000050
|
||||
/* 003AC 8089554C 2409FFFF */ addiu $t1, $zero, 0xFFFF ## $t1 = FFFFFFFF
|
||||
/* 003B0 80895550 240A00F1 */ addiu $t2, $zero, 0x00F1 ## $t2 = 000000F1
|
||||
/* 003B4 80895554 AFAA0038 */ sw $t2, 0x0038($sp)
|
||||
/* 003B8 80895558 AFA90034 */ sw $t1, 0x0034($sp)
|
||||
/* 003BC 8089555C AFA80030 */ sw $t0, 0x0030($sp)
|
||||
/* 003C0 80895560 AFB9002C */ sw $t9, 0x002C($sp)
|
||||
/* 003C4 80895564 AFAF0010 */ sw $t7, 0x0010($sp)
|
||||
/* 003C8 80895568 AFB00014 */ sw $s0, 0x0014($sp)
|
||||
/* 003CC 8089556C AFB30018 */ sw $s3, 0x0018($sp)
|
||||
/* 003D0 80895570 AFB4001C */ sw $s4, 0x001C($sp)
|
||||
/* 003D4 80895574 AFA00020 */ sw $zero, 0x0020($sp)
|
||||
/* 003D8 80895578 AFB10024 */ sw $s1, 0x0024($sp)
|
||||
/* 003DC 8089557C AFB80028 */ sw $t8, 0x0028($sp)
|
||||
/* 003E0 80895580 0C00A7A3 */ jal func_80029E8C
|
||||
|
||||
/* 003E4 80895584 AFBE003C */ sw $s8, 0x003C($sp)
|
||||
/* 003E8 80895588 26520001 */ addiu $s2, $s2, 0x0001 ## $s2 = 00000001
|
||||
/* 003EC 8089558C 24010010 */ addiu $at, $zero, 0x0010 ## $at = 00000010
|
||||
/* 003F0 80895590 5641FFA7 */ bnel $s2, $at, .L80895430
|
||||
/* 003F4 80895594 2413000C */ addiu $s3, $zero, 0x000C ## $s3 = 0000000C
|
||||
/* 003F8 80895598 C6B00024 */ lwc1 $f16, 0x0024($s5) ## 00000024
|
||||
/* 003FC 8089559C 3C01428C */ lui $at, 0x428C ## $at = 428C0000
|
||||
/* 00400 808955A0 44812000 */ mtc1 $at, $f4 ## $f4 = 70.00
|
||||
/* 00404 808955A4 E7B000BC */ swc1 $f16, 0x00BC($sp)
|
||||
/* 00408 808955A8 C6B20028 */ lwc1 $f18, 0x0028($s5) ## 00000028
|
||||
/* 0040C 808955AC 240B0064 */ addiu $t3, $zero, 0x0064 ## $t3 = 00000064
|
||||
/* 00410 808955B0 240C00A0 */ addiu $t4, $zero, 0x00A0 ## $t4 = 000000A0
|
||||
/* 00414 808955B4 46049180 */ add.s $f6, $f18, $f4
|
||||
/* 00418 808955B8 240D0001 */ addiu $t5, $zero, 0x0001 ## $t5 = 00000001
|
||||
/* 0041C 808955BC 8FA400CC */ lw $a0, 0x00CC($sp)
|
||||
/* 00420 808955C0 02C02825 */ or $a1, $s6, $zero ## $a1 = FFFFFFF4
|
||||
/* 00424 808955C4 E7A600C0 */ swc1 $f6, 0x00C0($sp)
|
||||
/* 00428 808955C8 C6A8002C */ lwc1 $f8, 0x002C($s5) ## 0000002C
|
||||
/* 0042C 808955CC AFAD0018 */ sw $t5, 0x0018($sp)
|
||||
/* 00430 808955D0 AFAC0014 */ sw $t4, 0x0014($sp)
|
||||
/* 00434 808955D4 AFAB0010 */ sw $t3, 0x0010($sp)
|
||||
/* 00438 808955D8 3C0642C8 */ lui $a2, 0x42C8 ## $a2 = 42C80000
|
||||
/* 0043C 808955DC 2407000A */ addiu $a3, $zero, 0x000A ## $a3 = 0000000A
|
||||
/* 00440 808955E0 0C00CD20 */ jal func_80033480
|
||||
/* 00444 808955E4 E7A800C4 */ swc1 $f8, 0x00C4($sp)
|
||||
/* 00448 808955E8 8FBF009C */ lw $ra, 0x009C($sp)
|
||||
/* 0044C 808955EC D7B40048 */ ldc1 $f20, 0x0048($sp)
|
||||
/* 00450 808955F0 D7B60050 */ ldc1 $f22, 0x0050($sp)
|
||||
/* 00454 808955F4 D7B80058 */ ldc1 $f24, 0x0058($sp)
|
||||
/* 00458 808955F8 D7BA0060 */ ldc1 $f26, 0x0060($sp)
|
||||
/* 0045C 808955FC D7BC0068 */ ldc1 $f28, 0x0068($sp)
|
||||
/* 00460 80895600 D7BE0070 */ ldc1 $f30, 0x0070($sp)
|
||||
/* 00464 80895604 8FB00078 */ lw $s0, 0x0078($sp)
|
||||
/* 00468 80895608 8FB1007C */ lw $s1, 0x007C($sp)
|
||||
/* 0046C 8089560C 8FB20080 */ lw $s2, 0x0080($sp)
|
||||
/* 00470 80895610 8FB30084 */ lw $s3, 0x0084($sp)
|
||||
/* 00474 80895614 8FB40088 */ lw $s4, 0x0088($sp)
|
||||
/* 00478 80895618 8FB5008C */ lw $s5, 0x008C($sp)
|
||||
/* 0047C 8089561C 8FB60090 */ lw $s6, 0x0090($sp)
|
||||
/* 00480 80895620 8FB70094 */ lw $s7, 0x0094($sp)
|
||||
/* 00484 80895624 8FBE0098 */ lw $s8, 0x0098($sp)
|
||||
/* 00488 80895628 03E00008 */ jr $ra
|
||||
/* 0048C 8089562C 27BD00C8 */ addiu $sp, $sp, 0x00C8 ## $sp = 00000000
|
|
@ -1,25 +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_Bombiwa_InitVars
|
||||
.word 0x015B0100, 0x00000000, 0x00F10000, 0x000001C8
|
||||
.word BgJyaBombiwa_Init
|
||||
.word BgJyaBombiwa_Destroy
|
||||
.word BgJyaBombiwa_Update
|
||||
.word BgJyaBombiwa_Draw
|
||||
glabel D_80895720
|
||||
.word 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00320064
|
||||
glabel D_80895744
|
||||
.word 0x0A000900, 0x00000000, 0x00000001
|
||||
.word D_80895720
|
||||
glabel D_80895754
|
||||
.word 0xC8500064, 0xB0F403E8, 0xB0F801F4, 0x30FC03E8, 0x00000000, 0x00000000, 0x00000000
|
||||
|
|
@ -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_80895860
|
||||
.incbin "baserom/ovl_Bg_Jya_Bombiwa", 0x6C0, 0x00000090
|
|
@ -260,7 +260,7 @@ void EffectSsFhgFlash_Spawn2(GlobalContext *, Actor *, Vec3f *, s16, u8);
|
|||
// ? func_80029DBC(?);
|
||||
void func_80029E8C(GlobalContext* globalCtx, Vec3f* burstDepthY, Vec3f* burstDepthX, Vec3f* burstOrigin,
|
||||
s16 gravityInfluence, s16 u0, s16 rotSpeed, s16 burstVel, u8 u1, s16 scale, u8 u2, s16 jitter,
|
||||
s32 duration, s16 u3, s16 objectId, u32 dList);
|
||||
s32 duration, s16 u3, s16 objectId, Gfx* dList);
|
||||
void EffectSsSolderSrchBall_Spawn(GlobalContext* globalCtx, Vec3f* pos, Vec3f* velocity, Vec3f* accel, s16 arg4,
|
||||
s16* linkDetected);
|
||||
// ? func_80029F44(?);
|
||||
|
|
3
spec
3
spec
|
@ -996,8 +996,7 @@ endseg
|
|||
beginseg
|
||||
name "ovl_Bg_Jya_Bombiwa"
|
||||
include "build/src/overlays/actors/ovl_Bg_Jya_Bombiwa/z_bg_jya_bombiwa.o"
|
||||
include "build/data/overlays/actors/z_bg_jya_bombiwa.data.o"
|
||||
include "build/data/overlays/actors/z_bg_jya_bombiwa.reloc.o"
|
||||
include "build/src/overlays/actors/ovl_Bg_Jya_Bombiwa/ovl_Bg_Jya_Bombiwa_reloc.o"
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
|
|
|
@ -1,4 +1,5 @@
|
|||
#include "z_bg_jya_bombiwa.h"
|
||||
#include <vt.h>
|
||||
|
||||
#define FLAGS 0x00000000
|
||||
|
||||
|
@ -9,7 +10,6 @@ void BgJyaBombiwa_Destroy(Actor* thisx, GlobalContext* globalCtx);
|
|||
void BgJyaBombiwa_Update(Actor* thisx, GlobalContext* globalCtx);
|
||||
void BgJyaBombiwa_Draw(Actor* thisx, GlobalContext* globalCtx);
|
||||
|
||||
/*
|
||||
const ActorInit Bg_Jya_Bombiwa_InitVars = {
|
||||
ACTOR_BG_JYA_BOMBIWA,
|
||||
ACTORTYPE_BG,
|
||||
|
@ -21,17 +21,141 @@ const ActorInit Bg_Jya_Bombiwa_InitVars = {
|
|||
(ActorFunc)BgJyaBombiwa_Update,
|
||||
(ActorFunc)BgJyaBombiwa_Draw,
|
||||
};
|
||||
*/
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombiwa/func_808951A0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombiwa/func_80895228.s")
|
||||
static ColliderJntSphItemInit sJntSphItemsInit[] = {
|
||||
{
|
||||
{ 0x00, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, 0x00, 0x01, 0x00 },
|
||||
{ 0, { { 0, 0, 0 }, 50 }, 100 },
|
||||
},
|
||||
};
|
||||
static ColliderJntSphInit sJntSphInit = {
|
||||
{ COLTYPE_UNK10, 0x00, 0x09, 0x00, 0x00, COLSHAPE_JNTSPH },
|
||||
1,
|
||||
&sJntSphItemsInit,
|
||||
};
|
||||
static InitChainEntry sInitChain[] = {
|
||||
ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE),
|
||||
ICHAIN_F32(uncullZoneForward, 1000, ICHAIN_CONTINUE),
|
||||
ICHAIN_F32(uncullZoneScale, 500, ICHAIN_CONTINUE),
|
||||
ICHAIN_F32(uncullZoneDownward, 1000, ICHAIN_STOP),
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombiwa/BgJyaBombiwa_Init.s")
|
||||
extern UNK_TYPE D_0600E710;
|
||||
extern Gfx D_0600E490[];
|
||||
extern Gfx D_0600EDC0[];
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombiwa/BgJyaBombiwa_Destroy.s")
|
||||
void BgJyaBombiwa_SetupDynaPoly(BgJyaBombiwa* this, GlobalContext* globalCtx, void* arg2, DynaPolyMoveFlag flag) {
|
||||
s16 pad1;
|
||||
s32 localConst = 0;
|
||||
s16 pad2;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombiwa/func_8089539C.s")
|
||||
DynaPolyInfo_SetActorMove(&this->dyna, flag);
|
||||
DynaPolyInfo_Alloc(arg2, &localConst);
|
||||
this->dyna.dynaPolyId =
|
||||
DynaPolyInfo_RegisterActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, localConst);
|
||||
if (this->dyna.dynaPolyId == 0x32) {
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombiwa/BgJyaBombiwa_Update.s")
|
||||
// Warning: move BG registration failed
|
||||
osSyncPrintf("Warning : move BG 登録失敗(%s %d)(name %d)(arg_data 0x%04x)\n", "../z_bg_jya_bombiwa.c", 174,
|
||||
this->dyna.actor.id, this->dyna.actor.params);
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Jya_Bombiwa/BgJyaBombiwa_Draw.s")
|
||||
void BgJyaBombiwa_InitCollider(BgJyaBombiwa* this, GlobalContext* globalCtx) {
|
||||
Actor* thisx = &this->dyna.actor;
|
||||
|
||||
Collider_InitJntSph(globalCtx, &this->collider);
|
||||
Collider_SetJntSph(globalCtx, &this->collider, thisx, &sJntSphInit, &this->colliderItems);
|
||||
}
|
||||
|
||||
void BgJyaBombiwa_Init(Actor* thisx, GlobalContext* globalCtx) {
|
||||
if ((thisx->params & 0x3F) != 0x29) {
|
||||
osSyncPrintf(VT_COL(YELLOW, BLACK));
|
||||
|
||||
// Warning: Switch Number changed (%s %d)(SW %d
|
||||
osSyncPrintf("Warning : Switch Number が変更された(%s %d)(SW %d)\n", "../z_bg_jya_bombiwa.c", 218,
|
||||
thisx->params & 0x3F);
|
||||
osSyncPrintf(VT_SGR());
|
||||
}
|
||||
BgJyaBombiwa_SetupDynaPoly(thisx, globalCtx, &D_0600E710, 0);
|
||||
BgJyaBombiwa_InitCollider(thisx, globalCtx);
|
||||
if (Flags_GetSwitch(globalCtx, thisx->params & 0x3F)) {
|
||||
Actor_Kill(thisx);
|
||||
} else {
|
||||
Actor_ProcessInitChain(thisx, sInitChain);
|
||||
|
||||
// Rock destroyed by jya bomb
|
||||
osSyncPrintf("(jya 爆弾で破壊岩)(arg_data 0x%04x)\n", thisx->params);
|
||||
}
|
||||
}
|
||||
|
||||
void BgJyaBombiwa_Destroy(Actor* thisx, GlobalContext* globalCtx) {
|
||||
BgJyaBombiwa* this = THIS;
|
||||
|
||||
DynaPolyInfo_Free(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId);
|
||||
Collider_DestroyJntSph(globalCtx, &this->collider);
|
||||
}
|
||||
|
||||
void BgJyaBombiwa_Break(BgJyaBombiwa* this, GlobalContext* globalCtx) {
|
||||
Vec3f temp;
|
||||
Vec3f temp2;
|
||||
s16 tempS;
|
||||
s8 rotationSpeed;
|
||||
s8 burstVelocity;
|
||||
s32 i;
|
||||
s16 tScale;
|
||||
|
||||
for (i = 0; i < 16; i++) {
|
||||
temp.x = ((Math_Rand_ZeroOne() * 80.0f) + this->dyna.actor.posRot.pos.x) - 40.0f;
|
||||
temp.y = (Math_Rand_ZeroOne() * 140.0f) + this->dyna.actor.posRot.pos.y;
|
||||
temp.z = ((Math_Rand_ZeroOne() * 80.0f) + this->dyna.actor.posRot.pos.z) - 40.0f;
|
||||
temp2.x = (Math_Rand_ZeroOne() - 0.5f) * 10.0f;
|
||||
temp2.y = Math_Rand_ZeroOne() * 12.0f;
|
||||
temp2.z = (Math_Rand_ZeroOne() - 0.5f) * 10.0f;
|
||||
tScale = (s32)(i * 1.8f) + 3;
|
||||
if (tScale > 15) {
|
||||
tempS = 5;
|
||||
} else {
|
||||
tempS = 1;
|
||||
}
|
||||
if (Math_Rand_ZeroOne() < 0.4f) {
|
||||
tempS |= 0x40;
|
||||
rotationSpeed = 0xC;
|
||||
burstVelocity = 8;
|
||||
} else {
|
||||
tempS |= 0x20;
|
||||
rotationSpeed = 0xC;
|
||||
burstVelocity = 8;
|
||||
if (tScale < 10) {
|
||||
rotationSpeed = 0x50;
|
||||
burstVelocity = 80;
|
||||
}
|
||||
}
|
||||
func_80029E8C(globalCtx, &temp, &temp2, &temp, -400, tempS, rotationSpeed, burstVelocity, 0, tScale, 1, 20, 80,
|
||||
-1, OBJECT_JYA_OBJ, D_0600EDC0);
|
||||
}
|
||||
temp.x = this->dyna.actor.posRot.pos.x;
|
||||
temp.y = this->dyna.actor.posRot.pos.y + 70.0f;
|
||||
temp.z = this->dyna.actor.posRot.pos.z;
|
||||
func_80033480(globalCtx, &temp, 100.0f, 0xA, 0x64, 0xA0, 1);
|
||||
}
|
||||
|
||||
void BgJyaBombiwa_Update(Actor* thisx, GlobalContext* globalCtx) {
|
||||
BgJyaBombiwa* this = THIS;
|
||||
|
||||
if (this->collider.base.acFlags & 2) {
|
||||
BgJyaBombiwa_Break(this, globalCtx);
|
||||
Flags_SetSwitch(globalCtx, this->dyna.actor.params & 0x3F);
|
||||
Audio_PlaySoundAtPosition(globalCtx, &this->dyna.actor.posRot, 40, NA_SE_EV_WALL_BROKEN);
|
||||
Actor_Kill(&this->dyna.actor);
|
||||
} else {
|
||||
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider);
|
||||
}
|
||||
}
|
||||
|
||||
void BgJyaBombiwa_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
||||
BgJyaBombiwa* this = THIS;
|
||||
|
||||
Gfx_DrawDListOpa(globalCtx, D_0600E490);
|
||||
func_800628A4(0, &this->collider);
|
||||
}
|
||||
|
|
|
@ -4,11 +4,14 @@
|
|||
#include <ultra64.h>
|
||||
#include <global.h>
|
||||
|
||||
|
||||
struct BgJyaBombiwa;
|
||||
|
||||
typedef struct BgJyaBombiwa {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x014C */ char unk_14C[0x7C];
|
||||
/* 0x0000 */ DynaPolyActor dyna;
|
||||
/* 0x0164 */ s32 unk_164;
|
||||
/* 0x0168 */ ColliderJntSph collider;
|
||||
/* 0x0188 */ ColliderJntSphItem colliderItems;
|
||||
} BgJyaBombiwa; // size = 0x01C8
|
||||
|
||||
extern const ActorInit Bg_Jya_Bombiwa_InitVars;
|
||||
|
|
|
@ -206,6 +206,11 @@ D_0600E568 = 0x0600E568;
|
|||
D_060004A8 = 0x060004A8;
|
||||
D_060001F0 = 0x060001F0;
|
||||
|
||||
// z_bg_jya_bombiwa
|
||||
D_0600E490 = 0x0600E490;
|
||||
D_0600EDC0 = 0x0600EDC0;
|
||||
D_0600E710 = 0x0600E710;
|
||||
|
||||
// z_bg_jya_amishutter
|
||||
D_0600C0A0 = 0x0600C0A0;
|
||||
D_0600C4C8 = 0x0600C4C8;
|
||||
|
|
Loading…
Reference in a new issue