From f61d49b5e99c9c1d76ac66b2ef8d32d89249730b Mon Sep 17 00:00:00 2001 From: HeartPiece Date: Sat, 9 Sep 2023 19:12:21 +1000 Subject: [PATCH] Link OtakaraBase.cpp and Tadpole.cpp --- asm/plugProjectNishimuraU/OtakaraBase.s | 2226 ----------------------- asm/plugProjectNishimuraU/Tadpole.s | 890 --------- configure.py | 4 +- docs/recommended_todo.md | 58 +- include/Game/Entities/OtakaraBase.h | 4 +- src/plugProjectNishimuraU/Makefile | 4 +- src/plugProjectNishimuraU/Tadpole.cpp | 167 +- tools/progress.csv | 4 + 8 files changed, 55 insertions(+), 3302 deletions(-) delete mode 100644 asm/plugProjectNishimuraU/OtakaraBase.s delete mode 100644 asm/plugProjectNishimuraU/Tadpole.s diff --git a/asm/plugProjectNishimuraU/OtakaraBase.s b/asm/plugProjectNishimuraU/OtakaraBase.s deleted file mode 100644 index 422d92a2b..000000000 --- a/asm/plugProjectNishimuraU/OtakaraBase.s +++ /dev/null @@ -1,2226 +0,0 @@ -.include "macros.inc" -.section .data, "wa" # 0x8049E220 - 0x804EFC20 -.balign 8 -.obj __vt__Q24Game30ConditionNotStickClientAndItem, weak - .4byte 0 - .4byte 0 - .4byte satisfy__Q24Game30ConditionNotStickClientAndItemFPQ24Game4Piki -.endobj __vt__Q24Game30ConditionNotStickClientAndItem -.obj __vt__Q34Game11OtakaraBase3Obj, global - .4byte 0 - .4byte 0 - .4byte getPosition__Q24Game9EnemyBaseFv - .4byte checkCollision__Q24Game8CreatureFPQ24Game10CellObject - .4byte getBoundingSphere__Q24Game9EnemyBaseFRQ23Sys6Sphere - .4byte collisionUpdatable__Q24Game8CreatureFv - .4byte isPiki__Q24Game8CreatureFv - .4byte isNavi__Q24Game8CreatureFv - .4byte deferPikiCollision__Q24Game10CellObjectFv - .4byte getTypeName__Q24Game8CreatureFv - .4byte getObjType__Q24Game8CreatureFv - .4byte constructor__Q24Game9EnemyBaseFv - .4byte onInit__Q34Game11OtakaraBase3ObjFPQ24Game15CreatureInitArg - .4byte onKill__Q34Game11OtakaraBase3ObjFPQ24Game15CreatureKillArg - .4byte onInitPost__Q24Game9EnemyBaseFPQ24Game15CreatureInitArg - .4byte doAnimation__Q24Game9EnemyBaseFv - .4byte doEntry__Q24Game9EnemyBaseFv - .4byte doSetView__Q24Game9EnemyBaseFi - .4byte doViewCalc__Q24Game9EnemyBaseFv - .4byte doSimulation__Q24Game9EnemyBaseFf - .4byte doDirectDraw__Q34Game11OtakaraBase3ObjFR8Graphics - .4byte getBodyRadius__Q24Game9EnemyBaseFv - .4byte getCellRadius__Q34Game11OtakaraBase3ObjFv - .4byte "initPosition__Q24Game8CreatureFR10Vector3" - .4byte "onInitPosition__Q24Game8CreatureFR10Vector3" - .4byte getFaceDir__Q24Game9EnemyBaseFv - .4byte "setVelocity__Q24Game9EnemyBaseFR10Vector3" - .4byte getVelocity__Q24Game9EnemyBaseFv - .4byte "onSetPosition__Q24Game9EnemyBaseFR10Vector3" - .4byte "onSetPositionPost__Q24Game9EnemyBaseFR10Vector3" - .4byte updateTrMatrix__Q24Game9EnemyBaseFv - .4byte isTeki__Q24Game9EnemyBaseFv - .4byte isPellet__Q24Game8CreatureFv - .4byte inWaterCallback__Q24Game9EnemyBaseFPQ24Game8WaterBox - .4byte outWaterCallback__Q24Game9EnemyBaseFv - .4byte inWater__Q24Game9EnemyBaseFv - .4byte getFlockMgr__Q24Game8CreatureFv - .4byte onStartCapture__Q24Game8CreatureFv - .4byte onUpdateCapture__Q24Game8CreatureFR7Matrixf - .4byte onEndCapture__Q24Game8CreatureFv - .4byte isAtari__Q24Game8CreatureFv - .4byte setAtari__Q24Game8CreatureFb - .4byte isAlive__Q24Game8CreatureFv - .4byte setAlive__Q24Game8CreatureFb - .4byte isCollisionFlick__Q24Game8CreatureFv - .4byte setCollisionFlick__Q24Game8CreatureFb - .4byte isMovieActor__Q24Game8CreatureFv - .4byte isMovieExtra__Q24Game8CreatureFv - .4byte isMovieMotion__Q24Game8CreatureFv - .4byte setMovieMotion__Q24Game8CreatureFb - .4byte isBuried__Q24Game8CreatureFv - .4byte isFlying__Q24Game9EnemyBaseFv - .4byte isUnderground__Q24Game8CreatureFv - .4byte isLivingThing__Q24Game8CreatureFv - .4byte isDebugCollision__Q24Game8CreatureFv - .4byte setDebugCollision__Q24Game8CreatureFb - .4byte doSave__Q24Game8CreatureFR6Stream - .4byte doLoad__Q24Game8CreatureFR6Stream - .4byte bounceCallback__Q24Game8CreatureFPQ23Sys8Triangle - .4byte collisionCallback__Q24Game9EnemyBaseFRQ24Game9CollEvent - .4byte platCallback__Q24Game8CreatureFRQ24Game9PlatEvent - .4byte getJAIObject__Q24Game9EnemyBaseFv - .4byte getPSCreature__Q24Game9EnemyBaseFv - .4byte getSound_AILOD__Q24Game8CreatureFv - .4byte getSound_PosPtr__Q24Game9EnemyBaseFv - .4byte sound_culling__Q24Game9EnemyBaseFv - .4byte getSound_CurrAnimFrame__Q24Game9EnemyBaseFv - .4byte getSound_CurrAnimSpeed__Q24Game9EnemyBaseFv - .4byte on_movie_begin__Q24Game8CreatureFb - .4byte on_movie_end__Q24Game8CreatureFb - .4byte movieStartAnimation__Q24Game8CreatureFUl - .4byte movieStartDemoAnimation__Q24Game8CreatureFPQ28SysShape8AnimInfo - .4byte movieSetAnimationLastFrame__Q24Game8CreatureFv - .4byte "movieSetTranslation__Q24Game8CreatureFR10Vector3f" - .4byte movieSetFaceDir__Q24Game8CreatureFf - .4byte "movieGotoPosition__Q24Game8CreatureFR10Vector3" - .4byte movieUserCommand__Q24Game8CreatureFUlPQ24Game11MoviePlayer - .4byte getShadowParam__Q34Game11OtakaraBase3ObjFRQ24Game11ShadowParam - .4byte needShadow__Q24Game9EnemyBaseFv - .4byte getLifeGaugeParam__Q24Game9EnemyBaseFRQ24Game14LifeGaugeParam - .4byte getLODSphere__Q24Game9EnemyBaseFRQ23Sys6Sphere - .4byte getLODCylinder__Q24Game8CreatureFRQ23Sys8Cylinder - .4byte startPick__Q24Game8CreatureFv - .4byte endPick__Q24Game8CreatureFb - .4byte getMabiki__Q24Game8CreatureFv - .4byte getFootmarks__Q24Game8CreatureFv - .4byte onStickStart__Q24Game9EnemyBaseFPQ24Game8Creature - .4byte onStickEnd__Q24Game9EnemyBaseFPQ24Game8Creature - .4byte onStickStartSelf__Q24Game8CreatureFPQ24Game8Creature - .4byte onStickEndSelf__Q24Game8CreatureFPQ24Game8Creature - .4byte isSlotFree__Q24Game8CreatureFs - .4byte getFreeStickSlot__Q24Game8CreatureFv - .4byte "getNearFreeStickSlot__Q24Game8CreatureFR10Vector3" - .4byte getRandomFreeStickSlot__Q24Game8CreatureFv - .4byte onSlotStickStart__Q24Game8CreatureFPQ24Game8Creatures - .4byte onSlotStickEnd__Q24Game8CreatureFPQ24Game8Creatures - .4byte "calcStickSlotGlobal__Q24Game8CreatureFsR10Vector3" - .4byte "getVelocityAt__Q24Game9EnemyBaseFR10Vector3R10Vector3" - .4byte "getAngularEffect__Q24Game8CreatureFR10Vector3R10Vector3" - .4byte "applyImpulse__Q24Game8CreatureFR10Vector3R10Vector3" - .4byte ignoreAtari__Q24Game8CreatureFPQ24Game8Creature - .4byte getSuckPos__Q24Game8CreatureFv - .4byte getGoalPos__Q24Game8CreatureFv - .4byte isSuckReady__Q24Game8CreatureFv - .4byte isSuckArriveWait__Q24Game8CreatureFv - .4byte stimulate__Q24Game9EnemyBaseFRQ24Game11Interaction - .4byte getCreatureName__Q24Game9EnemyBaseFv - .4byte getCreatureID__Q24Game9EnemyBaseFv - .4byte 0 - .4byte 0 - .4byte "@376@onKeyEvent__Q24Game9EnemyBaseFRCQ28SysShape8KeyEvent" - .4byte __dt__Q34Game11OtakaraBase3ObjFv - .4byte "birth__Q24Game9EnemyBaseFR10Vector3f" - .4byte setInitialSetting__Q34Game11OtakaraBase3ObjFPQ24Game21EnemyInitialParamBase - .4byte update__Q24Game9EnemyBaseFv - .4byte doUpdate__Q34Game11OtakaraBase3ObjFv - .4byte doUpdateCommon__Q34Game11OtakaraBase3ObjFv - .4byte doUpdateCarcass__Q24Game9EnemyBaseFv - .4byte doAnimationUpdateAnimator__Q24Game9EnemyBaseFv - .4byte doAnimationCullingOff__Q34Game11OtakaraBase3ObjFv - .4byte doAnimationCullingOn__Q24Game9EnemyBaseFv - .4byte doAnimationStick__Q24Game9EnemyBaseFv - .4byte doSimulationCarcass__Q24Game9EnemyBaseFf - .4byte doDebugDraw__Q34Game11OtakaraBase3ObjFR8Graphics - .4byte doSimpleDraw__Q24Game9EnemyBaseFP8Viewport - .4byte doSimulationGround__Q24Game9EnemyBaseFf - .4byte doSimulationFlying__Q24Game9EnemyBaseFf - .4byte doSimulationStick__Q24Game9EnemyBaseFf - .4byte 0 - .4byte "getCommonEffectPos__Q24Game9EnemyBaseFR10Vector3" - .4byte getFitEffectPos__Q24Game9EnemyBaseFv - .4byte viewGetShape__Q24Game9EnemyBaseFv - .4byte view_start_carrymotion__Q24Game9EnemyBaseFv - .4byte view_finish_carrymotion__Q24Game9EnemyBaseFv - .4byte viewStartPreCarryMotion__Q24Game9EnemyBaseFv - .4byte viewStartCarryMotion__Q24Game9EnemyBaseFv - .4byte viewOnPelletKilled__Q24Game9EnemyBaseFv - .4byte getOffsetForMapCollision__Q24Game9EnemyBaseFv - .4byte setParameters__Q24Game9EnemyBaseFv - .4byte initMouthSlots__Q24Game9EnemyBaseFv - .4byte initWalkSmokeEffect__Q24Game9EnemyBaseFv - .4byte getWalkSmokeEffectMgr__Q24Game9EnemyBaseFv - .4byte onKeyEvent__Q24Game9EnemyBaseFRCQ28SysShape8KeyEvent - .4byte injure__Q24Game9EnemyBaseFv - .4byte setCollEvent__Q24Game9EnemyBaseFRQ24Game9CollEvent - .4byte "getEfxHamonPos__Q24Game9EnemyBaseFP10Vector3" - .4byte createInstanceEfxHamon__Q24Game9EnemyBaseFv - .4byte updateEfxHamon__Q24Game9EnemyBaseFv - .4byte createEfxHamon__Q24Game9EnemyBaseFv - .4byte fadeEfxHamon__Q24Game9EnemyBaseFv - .4byte getEnemyTypeID__Q34Game11OtakaraBase3ObjFv - .4byte getMouthSlots__Q24Game9EnemyBaseFv - .4byte doGetLifeGaugeParam__Q24Game9EnemyBaseFRQ24Game14LifeGaugeParam - .4byte throwupItem__Q24Game9EnemyBaseFv - .4byte "getThrowupItemPosition__Q24Game9EnemyBaseFP10Vector3" - .4byte "getThrowupItemVelocity__Q24Game9EnemyBaseFP10Vector3" - .4byte throwupItemInDeathProcedure__Q24Game9EnemyBaseFv - .4byte setLODSphere__Q24Game9EnemyBaseFRQ23Sys6Sphere - .4byte damageCallBack__Q34Game11OtakaraBase3ObjFPQ24Game8CreaturefP8CollPart - .4byte pressCallBack__Q24Game9EnemyBaseFPQ24Game8CreaturefP8CollPart - .4byte flyCollisionCallBack__Q24Game9EnemyBaseFPQ24Game8CreaturefP8CollPart - .4byte hipdropCallBack__Q34Game11OtakaraBase3ObjFPQ24Game8CreaturefP8CollPart - .4byte dropCallBack__Q24Game9EnemyBaseFPQ24Game8Creature - .4byte earthquakeCallBack__Q34Game11OtakaraBase3ObjFPQ24Game8Creaturef - .4byte farmCallBack__Q24Game9EnemyBaseFPQ24Game8Creaturef - .4byte "bombCallBack__Q34Game11OtakaraBase3ObjFPQ24Game8CreatureR10Vector3f" - .4byte eatWhitePikminCallBack__Q24Game9EnemyBaseFPQ24Game8Creaturef - .4byte dopeCallBack__Q24Game9EnemyBaseFPQ24Game8Creaturei - .4byte doDopeCallBack__Q24Game9EnemyBaseFPQ24Game8Creaturei - .4byte doStartStoneState__Q34Game11OtakaraBase3ObjFv - .4byte doFinishStoneState__Q34Game11OtakaraBase3ObjFv - .4byte getDamageCoeStoneState__Q24Game9EnemyBaseFv - .4byte doStartEarthquakeState__Q34Game11OtakaraBase3ObjFf - .4byte doFinishEarthquakeState__Q34Game11OtakaraBase3ObjFv - .4byte doStartEarthquakeFitState__Q34Game11OtakaraBase3ObjFv - .4byte doFinishEarthquakeFitState__Q34Game11OtakaraBase3ObjFv - .4byte lifeRecover__Q24Game9EnemyBaseFv - .4byte startCarcassMotion__Q34Game11OtakaraBase3ObjFv - .4byte setCarcassArg__Q24Game9EnemyBaseFRQ24Game13PelletViewArg - .4byte getCarcassArgHeight__Q24Game9EnemyBaseFv - .4byte doBecomeCarcass__Q24Game9EnemyBaseFv - .4byte startWaitingBirthTypeDrop__Q24Game9EnemyBaseFv - .4byte finishWaitingBirthTypeDrop__Q24Game9EnemyBaseFv - .4byte isFinishableWaitingBirthTypeDrop__Q24Game9EnemyBaseFv - .4byte doStartWaitingBirthTypeDrop__Q34Game11OtakaraBase3ObjFv - .4byte doFinishWaitingBirthTypeDrop__Q34Game11OtakaraBase3ObjFv - .4byte wallCallback__Q24Game9EnemyBaseFRCQ24Game8MoveInfo - .4byte getDownSmokeScale__Q34Game11OtakaraBase3ObjFv - .4byte doStartMovie__Q34Game11OtakaraBase3ObjFv - .4byte doEndMovie__Q34Game11OtakaraBase3ObjFv - .4byte setFSM__Q34Game11OtakaraBase3ObjFPQ34Game11OtakaraBase3FSM - .4byte interactCreature__Q34Game11OtakaraBase3ObjFPQ24Game8Creature - .4byte createEffect__Q34Game11OtakaraBase3ObjFv - .4byte setupEffect__Q34Game11OtakaraBase3ObjFv - .4byte startChargeEffect__Q34Game11OtakaraBase3ObjFv - .4byte finishChargeEffect__Q34Game11OtakaraBase3ObjFv - .4byte createDisChargeEffect__Q34Game11OtakaraBase3ObjFv - .4byte effectDrawOn__Q34Game11OtakaraBase3ObjFv - .4byte effectDrawOff__Q34Game11OtakaraBase3ObjFv - .4byte startEscapeSE__Q34Game11OtakaraBase3ObjFv - .4byte startDisChargeSE__Q34Game11OtakaraBase3ObjFv - .4byte 0 - .4byte 0 - .4byte viewGetBaseScale__Q24Game10PelletViewFv - .4byte "@756@12@viewGetShape__Q24Game9EnemyBaseFv" - .4byte viewGetCollTreeJointIndex__Q24Game10PelletViewFv - .4byte viewGetCollTreeOffset__Q24Game10PelletViewFv - .4byte "@756@12@view_start_carrymotion__Q24Game9EnemyBaseFv" - .4byte "@756@12@view_finish_carrymotion__Q24Game9EnemyBaseFv" - .4byte "@756@12@viewStartPreCarryMotion__Q24Game9EnemyBaseFv" - .4byte "@756@12@viewStartCarryMotion__Q24Game9EnemyBaseFv" - .4byte "@756@12@viewOnPelletKilled__Q24Game9EnemyBaseFv" - .4byte "viewEntryShape__Q24Game10PelletViewFR7MatrixfR10Vector3" -.endobj __vt__Q34Game11OtakaraBase3Obj - -.section .sdata2, "a" # 0x80516360 - 0x80520E40 -.balign 8 -.obj lbl_8051C290, local - .float 0.0 -.endobj lbl_8051C290 -.obj lbl_8051C294, local - .float 12800.0 -.endobj lbl_8051C294 -.obj lbl_8051C298, local - .float 1.0 -.endobj lbl_8051C298 -.balign 4 -.obj lbl_8051C29C, local - .asciz "otakara" -.endobj lbl_8051C29C -.balign 4 -.obj lbl_8051C2A4, local - .float 5.0 -.endobj lbl_8051C2A4 -.obj lbl_8051C2A8, local - .float 30.0 -.endobj lbl_8051C2A8 -.obj lbl_8051C2AC, local - .float 50.0 -.endobj lbl_8051C2AC -.obj lbl_8051C2B0, local - .float 25.0 -.endobj lbl_8051C2B0 -.obj lbl_8051C2B4, local - .float 12.5 -.endobj lbl_8051C2B4 -.obj lbl_8051C2B8, local - .float 10.0 -.endobj lbl_8051C2B8 -.obj lbl_8051C2BC, local - .float 20.0 -.endobj lbl_8051C2BC -.obj lbl_8051C2C0, local - .float -1000.0 -.endobj lbl_8051C2C0 -.obj lbl_8051C2C4, local - .float 0.5 -.endobj lbl_8051C2C4 -.obj lbl_8051C2C8, local - .float 100.0 -.endobj lbl_8051C2C8 -.balign 4 -.obj lbl_8051C2CC, local - .asciz "center" -.endobj lbl_8051C2CC -.balign 4 -.obj lbl_8051C2D4, local - .float 0.0285 -.endobj lbl_8051C2D4 -.obj lbl_8051C2D8, local - .float 3.0 -.endobj lbl_8051C2D8 -.obj lbl_8051C2DC, local - .float 15.0 -.endobj lbl_8051C2DC -.obj lbl_8051C2E0, local - .float 1.5 -.endobj lbl_8051C2E0 -.obj lbl_8051C2E4, local - .float 0.7 -.endobj lbl_8051C2E4 - -.section .text, "ax" # 0x800056C0 - 0x80472F00 -.fn __ct__Q34Game11OtakaraBase3ObjFv, global -/* 802B624C 002B318C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6250 002B3190 7C 08 02 A6 */ mflr r0 -/* 802B6254 002B3194 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6258 002B3198 7C 80 07 35 */ extsh. r0, r4 -/* 802B625C 002B319C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B6260 002B31A0 7C 7F 1B 78 */ mr r31, r3 -/* 802B6264 002B31A4 93 C1 00 08 */ stw r30, 8(r1) -/* 802B6268 002B31A8 41 82 00 24 */ beq .L_802B628C -/* 802B626C 002B31AC 38 1F 02 F4 */ addi r0, r31, 0x2f4 -/* 802B6270 002B31B0 3C 60 80 4B */ lis r3, __vt__Q24Game10PelletView@ha -/* 802B6274 002B31B4 90 1F 01 7C */ stw r0, 0x17c(r31) -/* 802B6278 002B31B8 38 63 A6 78 */ addi r3, r3, __vt__Q24Game10PelletView@l -/* 802B627C 002B31BC 38 00 00 00 */ li r0, 0 -/* 802B6280 002B31C0 90 7F 02 F4 */ stw r3, 0x2f4(r31) -/* 802B6284 002B31C4 90 1F 02 F8 */ stw r0, 0x2f8(r31) -/* 802B6288 002B31C8 90 1F 02 FC */ stw r0, 0x2fc(r31) -.L_802B628C: -/* 802B628C 002B31CC 7F E3 FB 78 */ mr r3, r31 -/* 802B6290 002B31D0 38 80 00 00 */ li r4, 0 -/* 802B6294 002B31D4 4B E4 B1 0D */ bl __ct__Q24Game9EnemyBaseFv -/* 802B6298 002B31D8 3C 60 80 4D */ lis r3, __vt__Q34Game11OtakaraBase3Obj@ha -/* 802B629C 002B31DC 38 1F 02 F4 */ addi r0, r31, 0x2f4 -/* 802B62A0 002B31E0 38 A3 F0 84 */ addi r5, r3, __vt__Q34Game11OtakaraBase3Obj@l -/* 802B62A4 002B31E4 38 60 00 2C */ li r3, 0x2c -/* 802B62A8 002B31E8 90 BF 00 00 */ stw r5, 0(r31) -/* 802B62AC 002B31EC 38 85 01 B0 */ addi r4, r5, 0x1b0 -/* 802B62B0 002B31F0 38 A5 03 24 */ addi r5, r5, 0x324 -/* 802B62B4 002B31F4 90 9F 01 78 */ stw r4, 0x178(r31) -/* 802B62B8 002B31F8 80 9F 01 7C */ lwz r4, 0x17c(r31) -/* 802B62BC 002B31FC 90 A4 00 00 */ stw r5, 0(r4) -/* 802B62C0 002B3200 80 9F 01 7C */ lwz r4, 0x17c(r31) -/* 802B62C4 002B3204 7C 04 00 50 */ subf r0, r4, r0 -/* 802B62C8 002B3208 90 04 00 0C */ stw r0, 0xc(r4) -/* 802B62CC 002B320C 4B D6 DB D9 */ bl __nw__FUl -/* 802B62D0 002B3210 7C 7E 1B 79 */ or. r30, r3, r3 -/* 802B62D4 002B3214 41 82 00 44 */ beq .L_802B6318 -/* 802B62D8 002B3218 4B E7 16 9D */ bl __ct__Q24Game17EnemyAnimatorBaseFv -/* 802B62DC 002B321C 3C 60 80 4D */ lis r3, __vt__Q34Game11OtakaraBase14ProperAnimator@ha -/* 802B62E0 002B3220 3C 80 80 4B */ lis r4, __vt__Q28SysShape12BaseAnimator@ha -/* 802B62E4 002B3224 38 03 EF 68 */ addi r0, r3, __vt__Q34Game11OtakaraBase14ProperAnimator@l -/* 802B62E8 002B3228 3C 60 80 4F */ lis r3, __vt__Q28SysShape8Animator@ha -/* 802B62EC 002B322C 90 1E 00 00 */ stw r0, 0(r30) -/* 802B62F0 002B3230 38 84 B9 88 */ addi r4, r4, __vt__Q28SysShape12BaseAnimator@l -/* 802B62F4 002B3234 38 63 BE 00 */ addi r3, r3, __vt__Q28SysShape8Animator@l -/* 802B62F8 002B3238 38 00 00 00 */ li r0, 0 -/* 802B62FC 002B323C 90 9E 00 10 */ stw r4, 0x10(r30) -/* 802B6300 002B3240 90 7E 00 10 */ stw r3, 0x10(r30) -/* 802B6304 002B3244 98 1E 00 28 */ stb r0, 0x28(r30) -/* 802B6308 002B3248 90 1E 00 1C */ stw r0, 0x1c(r30) -/* 802B630C 002B324C 90 1E 00 14 */ stw r0, 0x14(r30) -/* 802B6310 002B3250 98 1E 00 28 */ stb r0, 0x28(r30) -/* 802B6314 002B3254 90 1E 00 20 */ stw r0, 0x20(r30) -.L_802B6318: -/* 802B6318 002B3258 93 DF 01 84 */ stw r30, 0x184(r31) -/* 802B631C 002B325C 38 60 00 1C */ li r3, 0x1c -/* 802B6320 002B3260 4B D6 DB 85 */ bl __nw__FUl -/* 802B6324 002B3264 7C 64 1B 79 */ or. r4, r3, r3 -/* 802B6328 002B3268 41 82 00 24 */ beq .L_802B634C -/* 802B632C 002B326C 3C A0 80 4B */ lis r5, __vt__Q24Game17EnemyStateMachine@ha -/* 802B6330 002B3270 3C 60 80 4D */ lis r3, __vt__Q34Game11OtakaraBase3FSM@ha -/* 802B6334 002B3274 38 05 F9 80 */ addi r0, r5, __vt__Q24Game17EnemyStateMachine@l -/* 802B6338 002B3278 38 A0 FF FF */ li r5, -1 -/* 802B633C 002B327C 90 04 00 00 */ stw r0, 0(r4) -/* 802B6340 002B3280 38 03 EF 44 */ addi r0, r3, __vt__Q34Game11OtakaraBase3FSM@l -/* 802B6344 002B3284 90 A4 00 18 */ stw r5, 0x18(r4) -/* 802B6348 002B3288 90 04 00 00 */ stw r0, 0(r4) -.L_802B634C: -/* 802B634C 002B328C 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B6350 002B3290 7F E3 FB 78 */ mr r3, r31 -/* 802B6354 002B3294 81 8C 02 F8 */ lwz r12, 0x2f8(r12) -/* 802B6358 002B3298 7D 89 03 A6 */ mtctr r12 -/* 802B635C 002B329C 4E 80 04 21 */ bctrl -/* 802B6360 002B32A0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6364 002B32A4 7F E3 FB 78 */ mr r3, r31 -/* 802B6368 002B32A8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B636C 002B32AC 83 C1 00 08 */ lwz r30, 8(r1) -/* 802B6370 002B32B0 7C 08 03 A6 */ mtlr r0 -/* 802B6374 002B32B4 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6378 002B32B8 4E 80 00 20 */ blr -.endfn __ct__Q34Game11OtakaraBase3ObjFv - -.fn setInitialSetting__Q34Game11OtakaraBase3ObjFPQ24Game21EnemyInitialParamBase, global -/* 802B637C 002B32BC 4E 80 00 20 */ blr -.endfn setInitialSetting__Q34Game11OtakaraBase3ObjFPQ24Game21EnemyInitialParamBase - -.fn onInit__Q34Game11OtakaraBase3ObjFPQ24Game15CreatureInitArg, global -/* 802B6380 002B32C0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6384 002B32C4 7C 08 02 A6 */ mflr r0 -/* 802B6388 002B32C8 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B638C 002B32CC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B6390 002B32D0 7C 7F 1B 78 */ mr r31, r3 -/* 802B6394 002B32D4 4B E4 B6 C5 */ bl onInit__Q24Game9EnemyBaseFPQ24Game15CreatureInitArg -/* 802B6398 002B32D8 38 00 FF FF */ li r0, -1 -/* 802B639C 002B32DC C0 02 DF 30 */ lfs f0, lbl_8051C290@sda21(r2) -/* 802B63A0 002B32E0 90 1F 02 C0 */ stw r0, 0x2c0(r31) -/* 802B63A4 002B32E4 7F E3 FB 78 */ mr r3, r31 -/* 802B63A8 002B32E8 D0 1F 02 C4 */ stfs f0, 0x2c4(r31) -/* 802B63AC 002B32EC 48 00 0C C5 */ bl resetTreasure__Q34Game11OtakaraBase3ObjFv -/* 802B63B0 002B32F0 38 00 00 00 */ li r0, 0 -/* 802B63B4 002B32F4 C0 22 DF 34 */ lfs f1, lbl_8051C294@sda21(r2) -/* 802B63B8 002B32F8 98 1F 02 D0 */ stb r0, 0x2d0(r31) -/* 802B63BC 002B32FC 7F E3 FB 78 */ mr r3, r31 -/* 802B63C0 002B3300 C0 02 DF 30 */ lfs f0, lbl_8051C290@sda21(r2) -/* 802B63C4 002B3304 D0 3F 02 C8 */ stfs f1, 0x2c8(r31) -/* 802B63C8 002B3308 D0 1F 02 CC */ stfs f0, 0x2cc(r31) -/* 802B63CC 002B330C 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B63D0 002B3310 81 8C 03 04 */ lwz r12, 0x304(r12) -/* 802B63D4 002B3314 7D 89 03 A6 */ mtctr r12 -/* 802B63D8 002B3318 4E 80 04 21 */ bctrl -/* 802B63DC 002B331C 7F E3 FB 78 */ mr r3, r31 -/* 802B63E0 002B3320 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B63E4 002B3324 81 8C 02 58 */ lwz r12, 0x258(r12) -/* 802B63E8 002B3328 7D 89 03 A6 */ mtctr r12 -/* 802B63EC 002B332C 4E 80 04 21 */ bctrl -/* 802B63F0 002B3330 2C 03 00 5D */ cmpwi r3, 0x5d -/* 802B63F4 002B3334 40 82 00 54 */ bne .L_802B6448 -/* 802B63F8 002B3338 80 1F 01 E0 */ lwz r0, 0x1e0(r31) -/* 802B63FC 002B333C 54 00 05 66 */ rlwinm r0, r0, 0, 0x15, 0x13 -/* 802B6400 002B3340 90 1F 01 E0 */ stw r0, 0x1e0(r31) -/* 802B6404 002B3344 80 1F 01 E0 */ lwz r0, 0x1e0(r31) -/* 802B6408 002B3348 54 00 06 6E */ rlwinm r0, r0, 0, 0x19, 0x17 -/* 802B640C 002B334C 90 1F 01 E0 */ stw r0, 0x1e0(r31) -/* 802B6410 002B3350 88 1F 02 B0 */ lbz r0, 0x2b0(r31) -/* 802B6414 002B3354 7C 00 07 75 */ extsb. r0, r0 -/* 802B6418 002B3358 40 82 00 0C */ bne .L_802B6424 -/* 802B641C 002B335C 7F E3 FB 78 */ mr r3, r31 -/* 802B6420 002B3360 48 00 15 19 */ bl initBombOtakara__Q34Game11OtakaraBase3ObjFv -.L_802B6424: -/* 802B6424 002B3364 80 7F 02 BC */ lwz r3, 0x2bc(r31) -/* 802B6428 002B3368 7F E4 FB 78 */ mr r4, r31 -/* 802B642C 002B336C 38 A0 00 0B */ li r5, 0xb -/* 802B6430 002B3370 38 C0 00 00 */ li r6, 0 -/* 802B6434 002B3374 81 83 00 00 */ lwz r12, 0(r3) -/* 802B6438 002B3378 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 802B643C 002B337C 7D 89 03 A6 */ mtctr r12 -/* 802B6440 002B3380 4E 80 04 21 */ bctrl -/* 802B6444 002B3384 48 00 00 2C */ b .L_802B6470 -.L_802B6448: -/* 802B6448 002B3388 C0 02 DF 34 */ lfs f0, lbl_8051C294@sda21(r2) -/* 802B644C 002B338C 7F E4 FB 78 */ mr r4, r31 -/* 802B6450 002B3390 38 A0 00 02 */ li r5, 2 -/* 802B6454 002B3394 38 C0 00 00 */ li r6, 0 -/* 802B6458 002B3398 D0 1F 02 E8 */ stfs f0, 0x2e8(r31) -/* 802B645C 002B339C 80 7F 02 BC */ lwz r3, 0x2bc(r31) -/* 802B6460 002B33A0 81 83 00 00 */ lwz r12, 0(r3) -/* 802B6464 002B33A4 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 802B6468 002B33A8 7D 89 03 A6 */ mtctr r12 -/* 802B646C 002B33AC 4E 80 04 21 */ bctrl -.L_802B6470: -/* 802B6470 002B33B0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6474 002B33B4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B6478 002B33B8 7C 08 03 A6 */ mtlr r0 -/* 802B647C 002B33BC 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6480 002B33C0 4E 80 00 20 */ blr -.endfn onInit__Q34Game11OtakaraBase3ObjFPQ24Game15CreatureInitArg - -.fn getEnemyTypeID__Q34Game11OtakaraBase3ObjFv, weak -/* 802B6484 002B33C4 38 60 00 3B */ li r3, 0x3b -/* 802B6488 002B33C8 4E 80 00 20 */ blr -.endfn getEnemyTypeID__Q34Game11OtakaraBase3ObjFv - -.fn setupEffect__Q34Game11OtakaraBase3ObjFv, weak -/* 802B648C 002B33CC 4E 80 00 20 */ blr -.endfn setupEffect__Q34Game11OtakaraBase3ObjFv - -.fn onKill__Q34Game11OtakaraBase3ObjFPQ24Game15CreatureKillArg, global -/* 802B6490 002B33D0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6494 002B33D4 7C 08 02 A6 */ mflr r0 -/* 802B6498 002B33D8 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B649C 002B33DC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B64A0 002B33E0 7C 9F 23 78 */ mr r31, r4 -/* 802B64A4 002B33E4 38 80 00 01 */ li r4, 1 -/* 802B64A8 002B33E8 93 C1 00 08 */ stw r30, 8(r1) -/* 802B64AC 002B33EC 7C 7E 1B 78 */ mr r30, r3 -/* 802B64B0 002B33F0 48 00 0F AD */ bl fallTreasure__Q34Game11OtakaraBase3ObjFb -/* 802B64B4 002B33F4 7F C3 F3 78 */ mr r3, r30 -/* 802B64B8 002B33F8 81 9E 00 00 */ lwz r12, 0(r30) -/* 802B64BC 002B33FC 81 8C 03 0C */ lwz r12, 0x30c(r12) -/* 802B64C0 002B3400 7D 89 03 A6 */ mtctr r12 -/* 802B64C4 002B3404 4E 80 04 21 */ bctrl -/* 802B64C8 002B3408 7F C3 F3 78 */ mr r3, r30 -/* 802B64CC 002B340C 7F E4 FB 78 */ mr r4, r31 -/* 802B64D0 002B3410 4B E4 BA 19 */ bl onKill__Q24Game9EnemyBaseFPQ24Game15CreatureKillArg -/* 802B64D4 002B3414 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B64D8 002B3418 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B64DC 002B341C 83 C1 00 08 */ lwz r30, 8(r1) -/* 802B64E0 002B3420 7C 08 03 A6 */ mtlr r0 -/* 802B64E4 002B3424 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B64E8 002B3428 4E 80 00 20 */ blr -.endfn onKill__Q34Game11OtakaraBase3ObjFPQ24Game15CreatureKillArg - -.fn doUpdate__Q34Game11OtakaraBase3ObjFv, global -/* 802B64EC 002B342C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B64F0 002B3430 7C 08 02 A6 */ mflr r0 -/* 802B64F4 002B3434 7C 64 1B 78 */ mr r4, r3 -/* 802B64F8 002B3438 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B64FC 002B343C 80 63 02 BC */ lwz r3, 0x2bc(r3) -/* 802B6500 002B3440 81 83 00 00 */ lwz r12, 0(r3) -/* 802B6504 002B3444 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 802B6508 002B3448 7D 89 03 A6 */ mtctr r12 -/* 802B650C 002B344C 4E 80 04 21 */ bctrl -/* 802B6510 002B3450 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6514 002B3454 7C 08 03 A6 */ mtlr r0 -/* 802B6518 002B3458 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B651C 002B345C 4E 80 00 20 */ blr -.endfn doUpdate__Q34Game11OtakaraBase3ObjFv - -.fn doUpdateCommon__Q34Game11OtakaraBase3ObjFv, global -/* 802B6520 002B3460 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6524 002B3464 7C 08 02 A6 */ mflr r0 -/* 802B6528 002B3468 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B652C 002B346C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B6530 002B3470 7C 7F 1B 78 */ mr r31, r3 -/* 802B6534 002B3474 4B E4 C9 E1 */ bl doUpdateCommon__Q24Game9EnemyBaseFv -/* 802B6538 002B3478 C0 3F 02 C8 */ lfs f1, 0x2c8(r31) -/* 802B653C 002B347C C0 02 DF 38 */ lfs f0, lbl_8051C298@sda21(r2) -/* 802B6540 002B3480 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 802B6544 002B3484 40 80 00 30 */ bge .L_802B6574 -/* 802B6548 002B3488 80 8D 9A EC */ lwz r4, sys@sda21(r13) -/* 802B654C 002B348C 7F E3 FB 78 */ mr r3, r31 -/* 802B6550 002B3490 C0 04 00 54 */ lfs f0, 0x54(r4) -/* 802B6554 002B3494 EC 01 00 2A */ fadds f0, f1, f0 -/* 802B6558 002B3498 D0 1F 02 C8 */ stfs f0, 0x2c8(r31) -/* 802B655C 002B349C 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B6560 002B34A0 81 8C 03 20 */ lwz r12, 0x320(r12) -/* 802B6564 002B34A4 7D 89 03 A6 */ mtctr r12 -/* 802B6568 002B34A8 4E 80 04 21 */ bctrl -/* 802B656C 002B34AC 7F E3 FB 78 */ mr r3, r31 -/* 802B6570 002B34B0 48 00 10 61 */ bl attackTarget__Q34Game11OtakaraBase3ObjFv -.L_802B6574: -/* 802B6574 002B34B4 7F E3 FB 78 */ mr r3, r31 -/* 802B6578 002B34B8 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B657C 002B34BC 81 8C 02 58 */ lwz r12, 0x258(r12) -/* 802B6580 002B34C0 7D 89 03 A6 */ mtctr r12 -/* 802B6584 002B34C4 4E 80 04 21 */ bctrl -/* 802B6588 002B34C8 2C 03 00 5D */ cmpwi r3, 0x5d -/* 802B658C 002B34CC 40 82 00 70 */ bne .L_802B65FC -/* 802B6590 002B34D0 80 7F 02 30 */ lwz r3, 0x230(r31) -/* 802B6594 002B34D4 28 03 00 00 */ cmplwi r3, 0 -/* 802B6598 002B34D8 41 82 00 5C */ beq .L_802B65F4 -/* 802B659C 002B34DC 81 83 00 00 */ lwz r12, 0(r3) -/* 802B65A0 002B34E0 81 8C 00 A8 */ lwz r12, 0xa8(r12) -/* 802B65A4 002B34E4 7D 89 03 A6 */ mtctr r12 -/* 802B65A8 002B34E8 4E 80 04 21 */ bctrl -/* 802B65AC 002B34EC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B65B0 002B34F0 40 82 00 18 */ bne .L_802B65C8 -/* 802B65B4 002B34F4 38 00 00 00 */ li r0, 0 -/* 802B65B8 002B34F8 C0 02 DF 30 */ lfs f0, lbl_8051C290@sda21(r2) -/* 802B65BC 002B34FC 90 1F 02 30 */ stw r0, 0x230(r31) -/* 802B65C0 002B3500 D0 1F 02 00 */ stfs f0, 0x200(r31) -/* 802B65C4 002B3504 48 00 00 38 */ b .L_802B65FC -.L_802B65C8: -/* 802B65C8 002B3508 80 7F 02 30 */ lwz r3, 0x230(r31) -/* 802B65CC 002B350C 4B EE 8F A9 */ bl isStickTo__Q24Game8CreatureFv -/* 802B65D0 002B3510 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B65D4 002B3514 41 82 00 28 */ beq .L_802B65FC -/* 802B65D8 002B3518 80 7F 02 30 */ lwz r3, 0x230(r31) -/* 802B65DC 002B351C 4B EE 95 C1 */ bl endCapture__Q24Game8CreatureFv -/* 802B65E0 002B3520 38 00 00 00 */ li r0, 0 -/* 802B65E4 002B3524 C0 02 DF 30 */ lfs f0, lbl_8051C290@sda21(r2) -/* 802B65E8 002B3528 90 1F 02 30 */ stw r0, 0x230(r31) -/* 802B65EC 002B352C D0 1F 02 00 */ stfs f0, 0x200(r31) -/* 802B65F0 002B3530 48 00 00 0C */ b .L_802B65FC -.L_802B65F4: -/* 802B65F4 002B3534 C0 02 DF 30 */ lfs f0, lbl_8051C290@sda21(r2) -/* 802B65F8 002B3538 D0 1F 02 00 */ stfs f0, 0x200(r31) -.L_802B65FC: -/* 802B65FC 002B353C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6600 002B3540 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B6604 002B3544 7C 08 03 A6 */ mtlr r0 -/* 802B6608 002B3548 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B660C 002B354C 4E 80 00 20 */ blr -.endfn doUpdateCommon__Q34Game11OtakaraBase3ObjFv - -.fn startDisChargeSE__Q34Game11OtakaraBase3ObjFv, weak -/* 802B6610 002B3550 4E 80 00 20 */ blr -.endfn startDisChargeSE__Q34Game11OtakaraBase3ObjFv - -.fn doAnimationCullingOff__Q34Game11OtakaraBase3ObjFv, global -/* 802B6614 002B3554 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 802B6618 002B3558 7C 08 02 A6 */ mflr r0 -/* 802B661C 002B355C 90 01 00 44 */ stw r0, 0x44(r1) -/* 802B6620 002B3560 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 802B6624 002B3564 7C 7F 1B 78 */ mr r31, r3 -/* 802B6628 002B3568 4B E4 CA 59 */ bl doAnimationCullingOff__Q24Game9EnemyBaseFv -/* 802B662C 002B356C 80 7F 02 E0 */ lwz r3, 0x2e0(r31) -/* 802B6630 002B3570 28 03 00 00 */ cmplwi r3, 0 -/* 802B6634 002B3574 41 82 00 48 */ beq .L_802B667C -/* 802B6638 002B3578 81 83 00 00 */ lwz r12, 0(r3) -/* 802B663C 002B357C 81 8C 00 A8 */ lwz r12, 0xa8(r12) -/* 802B6640 002B3580 7D 89 03 A6 */ mtctr r12 -/* 802B6644 002B3584 4E 80 04 21 */ bctrl -/* 802B6648 002B3588 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B664C 002B358C 40 82 00 14 */ bne .L_802B6660 -/* 802B6650 002B3590 7F E3 FB 78 */ mr r3, r31 -/* 802B6654 002B3594 38 80 00 00 */ li r4, 0 -/* 802B6658 002B3598 48 00 0E 05 */ bl fallTreasure__Q34Game11OtakaraBase3ObjFb -/* 802B665C 002B359C 48 00 00 20 */ b .L_802B667C -.L_802B6660: -/* 802B6660 002B35A0 38 61 00 08 */ addi r3, r1, 8 -/* 802B6664 002B35A4 4B E3 3C 3D */ bl PSMTXIdentity -/* 802B6668 002B35A8 C0 1F 02 EC */ lfs f0, 0x2ec(r31) -/* 802B666C 002B35AC 38 81 00 08 */ addi r4, r1, 8 -/* 802B6670 002B35B0 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 802B6674 002B35B4 80 7F 02 E0 */ lwz r3, 0x2e0(r31) -/* 802B6678 002B35B8 4B EE 94 85 */ bl updateCapture__Q24Game8CreatureFR7Matrixf -.L_802B667C: -/* 802B667C 002B35BC 80 01 00 44 */ lwz r0, 0x44(r1) -/* 802B6680 002B35C0 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 802B6684 002B35C4 7C 08 03 A6 */ mtlr r0 -/* 802B6688 002B35C8 38 21 00 40 */ addi r1, r1, 0x40 -/* 802B668C 002B35CC 4E 80 00 20 */ blr -.endfn doAnimationCullingOff__Q34Game11OtakaraBase3ObjFv - -.fn doDirectDraw__Q34Game11OtakaraBase3ObjFR8Graphics, global -/* 802B6690 002B35D0 4E 80 00 20 */ blr -.endfn doDirectDraw__Q34Game11OtakaraBase3ObjFR8Graphics - -.fn doDebugDraw__Q34Game11OtakaraBase3ObjFR8Graphics, global -/* 802B6694 002B35D4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6698 002B35D8 7C 08 02 A6 */ mflr r0 -/* 802B669C 002B35DC 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B66A0 002B35E0 4B E4 F7 CD */ bl doDebugDraw__Q24Game9EnemyBaseFR8Graphics -/* 802B66A4 002B35E4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B66A8 002B35E8 7C 08 03 A6 */ mtlr r0 -/* 802B66AC 002B35EC 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B66B0 002B35F0 4E 80 00 20 */ blr -.endfn doDebugDraw__Q34Game11OtakaraBase3ObjFR8Graphics - -.fn setFSM__Q34Game11OtakaraBase3ObjFPQ34Game11OtakaraBase3FSM, global -/* 802B66B4 002B35F4 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B66B8 002B35F8 7C 08 02 A6 */ mflr r0 -/* 802B66BC 002B35FC 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B66C0 002B3600 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B66C4 002B3604 7C 7F 1B 78 */ mr r31, r3 -/* 802B66C8 002B3608 90 83 02 BC */ stw r4, 0x2bc(r3) -/* 802B66CC 002B360C 7F E4 FB 78 */ mr r4, r31 -/* 802B66D0 002B3610 80 63 02 BC */ lwz r3, 0x2bc(r3) -/* 802B66D4 002B3614 81 83 00 00 */ lwz r12, 0(r3) -/* 802B66D8 002B3618 81 8C 00 08 */ lwz r12, 8(r12) -/* 802B66DC 002B361C 7D 89 03 A6 */ mtctr r12 -/* 802B66E0 002B3620 4E 80 04 21 */ bctrl -/* 802B66E4 002B3624 38 00 00 00 */ li r0, 0 -/* 802B66E8 002B3628 90 1F 02 B4 */ stw r0, 0x2b4(r31) -/* 802B66EC 002B362C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B66F0 002B3630 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B66F4 002B3634 7C 08 03 A6 */ mtlr r0 -/* 802B66F8 002B3638 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B66FC 002B363C 4E 80 00 20 */ blr -.endfn setFSM__Q34Game11OtakaraBase3ObjFPQ34Game11OtakaraBase3FSM - -.fn getShadowParam__Q34Game11OtakaraBase3ObjFRQ24Game11ShadowParam, global -/* 802B6700 002B3640 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6704 002B3644 7C 08 02 A6 */ mflr r0 -/* 802B6708 002B3648 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B670C 002B364C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B6710 002B3650 7C 9F 23 78 */ mr r31, r4 -/* 802B6714 002B3654 38 82 DF 3C */ addi r4, r2, lbl_8051C29C@sda21 -/* 802B6718 002B3658 93 C1 00 08 */ stw r30, 8(r1) -/* 802B671C 002B365C 7C 7E 1B 78 */ mr r30, r3 -/* 802B6720 002B3660 80 63 01 74 */ lwz r3, 0x174(r3) -/* 802B6724 002B3664 48 18 88 C1 */ bl getJoint__Q28SysShape5ModelFPc -/* 802B6728 002B3668 48 17 31 79 */ bl getWorldMatrix__Q28SysShape5JointFv -/* 802B672C 002B366C C0 83 00 2C */ lfs f4, 0x2c(r3) -/* 802B6730 002B3670 C0 63 00 1C */ lfs f3, 0x1c(r3) -/* 802B6734 002B3674 C0 03 00 0C */ lfs f0, 0xc(r3) -/* 802B6738 002B3678 C0 42 DF 44 */ lfs f2, lbl_8051C2A4@sda21(r2) -/* 802B673C 002B367C D0 1F 00 00 */ stfs f0, 0(r31) -/* 802B6740 002B3680 C0 22 DF 30 */ lfs f1, lbl_8051C290@sda21(r2) -/* 802B6744 002B3684 D0 7F 00 04 */ stfs f3, 4(r31) -/* 802B6748 002B3688 C0 02 DF 38 */ lfs f0, lbl_8051C298@sda21(r2) -/* 802B674C 002B368C D0 9F 00 08 */ stfs f4, 8(r31) -/* 802B6750 002B3690 C0 7F 00 04 */ lfs f3, 4(r31) -/* 802B6754 002B3694 EC 43 10 28 */ fsubs f2, f3, f2 -/* 802B6758 002B3698 D0 5F 00 04 */ stfs f2, 4(r31) -/* 802B675C 002B369C D0 3F 00 0C */ stfs f1, 0xc(r31) -/* 802B6760 002B36A0 D0 1F 00 10 */ stfs f0, 0x10(r31) -/* 802B6764 002B36A4 D0 3F 00 14 */ stfs f1, 0x14(r31) -/* 802B6768 002B36A8 80 1E 02 E0 */ lwz r0, 0x2e0(r30) -/* 802B676C 002B36AC 28 00 00 00 */ cmplwi r0, 0 -/* 802B6770 002B36B0 41 82 00 10 */ beq .L_802B6780 -/* 802B6774 002B36B4 C0 02 DF 48 */ lfs f0, lbl_8051C2A8@sda21(r2) -/* 802B6778 002B36B8 D0 1F 00 18 */ stfs f0, 0x18(r31) -/* 802B677C 002B36BC 48 00 00 0C */ b .L_802B6788 -.L_802B6780: -/* 802B6780 002B36C0 C0 02 DF 4C */ lfs f0, lbl_8051C2AC@sda21(r2) -/* 802B6784 002B36C4 D0 1F 00 18 */ stfs f0, 0x18(r31) -.L_802B6788: -/* 802B6788 002B36C8 80 1E 01 E4 */ lwz r0, 0x1e4(r30) -/* 802B678C 002B36CC 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 802B6790 002B36D0 41 82 00 14 */ beq .L_802B67A4 -/* 802B6794 002B36D4 C0 3F 00 18 */ lfs f1, 0x18(r31) -/* 802B6798 002B36D8 C0 02 DF 50 */ lfs f0, lbl_8051C2B0@sda21(r2) -/* 802B679C 002B36DC EC 01 00 2A */ fadds f0, f1, f0 -/* 802B67A0 002B36E0 D0 1F 00 18 */ stfs f0, 0x18(r31) -.L_802B67A4: -/* 802B67A4 002B36E4 7F C3 F3 78 */ mr r3, r30 -/* 802B67A8 002B36E8 81 9E 00 00 */ lwz r12, 0(r30) -/* 802B67AC 002B36EC 81 8C 02 58 */ lwz r12, 0x258(r12) -/* 802B67B0 002B36F0 7D 89 03 A6 */ mtctr r12 -/* 802B67B4 002B36F4 4E 80 04 21 */ bctrl -/* 802B67B8 002B36F8 2C 03 00 5D */ cmpwi r3, 0x5d -/* 802B67BC 002B36FC 40 82 00 10 */ bne .L_802B67CC -/* 802B67C0 002B3700 C0 02 DF 54 */ lfs f0, lbl_8051C2B4@sda21(r2) -/* 802B67C4 002B3704 D0 1F 00 1C */ stfs f0, 0x1c(r31) -/* 802B67C8 002B3708 48 00 00 0C */ b .L_802B67D4 -.L_802B67CC: -/* 802B67CC 002B370C C0 02 DF 44 */ lfs f0, lbl_8051C2A4@sda21(r2) -/* 802B67D0 002B3710 D0 1F 00 1C */ stfs f0, 0x1c(r31) -.L_802B67D4: -/* 802B67D4 002B3714 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B67D8 002B3718 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B67DC 002B371C 83 C1 00 08 */ lwz r30, 8(r1) -/* 802B67E0 002B3720 7C 08 03 A6 */ mtlr r0 -/* 802B67E4 002B3724 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B67E8 002B3728 4E 80 00 20 */ blr -.endfn getShadowParam__Q34Game11OtakaraBase3ObjFRQ24Game11ShadowParam - -.fn damageCallBack__Q34Game11OtakaraBase3ObjFPQ24Game8CreaturefP8CollPart, global -/* 802B67EC 002B372C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B67F0 002B3730 7C 08 02 A6 */ mflr r0 -/* 802B67F4 002B3734 28 05 00 00 */ cmplwi r5, 0 -/* 802B67F8 002B3738 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B67FC 002B373C 41 82 00 10 */ beq .L_802B680C -/* 802B6800 002B3740 48 00 0D 7D */ bl damageTreasure__Q34Game11OtakaraBase3ObjFf -/* 802B6804 002B3744 38 60 00 01 */ li r3, 1 -/* 802B6808 002B3748 48 00 00 08 */ b .L_802B6810 -.L_802B680C: -/* 802B680C 002B374C 38 60 00 00 */ li r3, 0 -.L_802B6810: -/* 802B6810 002B3750 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6814 002B3754 7C 08 03 A6 */ mtlr r0 -/* 802B6818 002B3758 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B681C 002B375C 4E 80 00 20 */ blr -.endfn damageCallBack__Q34Game11OtakaraBase3ObjFPQ24Game8CreaturefP8CollPart - -.fn hipdropCallBack__Q34Game11OtakaraBase3ObjFPQ24Game8CreaturefP8CollPart, global -/* 802B6820 002B3760 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802B6824 002B3764 7C 08 02 A6 */ mflr r0 -/* 802B6828 002B3768 90 01 00 24 */ stw r0, 0x24(r1) -/* 802B682C 002B376C 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 802B6830 002B3770 7C BF 2B 79 */ or. r31, r5, r5 -/* 802B6834 002B3774 93 C1 00 18 */ stw r30, 0x18(r1) -/* 802B6838 002B3778 7C 9E 23 78 */ mr r30, r4 -/* 802B683C 002B377C 93 A1 00 14 */ stw r29, 0x14(r1) -/* 802B6840 002B3780 7C 7D 1B 78 */ mr r29, r3 -/* 802B6844 002B3784 41 82 00 24 */ beq .L_802B6868 -/* 802B6848 002B3788 80 1D 02 E0 */ lwz r0, 0x2e0(r29) -/* 802B684C 002B378C 28 00 00 00 */ cmplwi r0, 0 -/* 802B6850 002B3790 41 82 00 14 */ beq .L_802B6864 -/* 802B6854 002B3794 80 9D 00 C0 */ lwz r4, 0xc0(r29) -/* 802B6858 002B3798 C0 24 08 1C */ lfs f1, 0x81c(r4) -/* 802B685C 002B379C 48 00 0D 21 */ bl damageTreasure__Q34Game11OtakaraBase3ObjFf -/* 802B6860 002B37A0 48 00 00 08 */ b .L_802B6868 -.L_802B6864: -/* 802B6864 002B37A4 48 00 0D 19 */ bl damageTreasure__Q34Game11OtakaraBase3ObjFf -.L_802B6868: -/* 802B6868 002B37A8 C0 22 DF 30 */ lfs f1, lbl_8051C290@sda21(r2) -/* 802B686C 002B37AC 7F A3 EB 78 */ mr r3, r29 -/* 802B6870 002B37B0 7F C4 F3 78 */ mr r4, r30 -/* 802B6874 002B37B4 7F E5 FB 78 */ mr r5, r31 -/* 802B6878 002B37B8 4B E4 F8 4D */ bl hipdropCallBack__Q24Game9EnemyBaseFPQ24Game8CreaturefP8CollPart -/* 802B687C 002B37BC 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802B6880 002B37C0 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802B6884 002B37C4 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 802B6888 002B37C8 83 A1 00 14 */ lwz r29, 0x14(r1) -/* 802B688C 002B37CC 7C 08 03 A6 */ mtlr r0 -/* 802B6890 002B37D0 38 21 00 20 */ addi r1, r1, 0x20 -/* 802B6894 002B37D4 4E 80 00 20 */ blr -.endfn hipdropCallBack__Q34Game11OtakaraBase3ObjFPQ24Game8CreaturefP8CollPart - -.fn earthquakeCallBack__Q34Game11OtakaraBase3ObjFPQ24Game8Creaturef, global -/* 802B6898 002B37D8 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802B689C 002B37DC 7C 08 02 A6 */ mflr r0 -/* 802B68A0 002B37E0 90 01 00 24 */ stw r0, 0x24(r1) -/* 802B68A4 002B37E4 DB E1 00 10 */ stfd f31, 0x10(r1) -/* 802B68A8 002B37E8 F3 E1 00 18 */ psq_st f31, 24(r1), 0, qr0 -/* 802B68AC 002B37EC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B68B0 002B37F0 93 C1 00 08 */ stw r30, 8(r1) -/* 802B68B4 002B37F4 7C 7E 1B 78 */ mr r30, r3 -/* 802B68B8 002B37F8 FF E0 08 90 */ fmr f31, f1 -/* 802B68BC 002B37FC 80 03 02 E0 */ lwz r0, 0x2e0(r3) -/* 802B68C0 002B3800 7C 9F 23 78 */ mr r31, r4 -/* 802B68C4 002B3804 28 00 00 00 */ cmplwi r0, 0 -/* 802B68C8 002B3808 41 82 00 10 */ beq .L_802B68D8 -/* 802B68CC 002B380C 80 9E 00 C0 */ lwz r4, 0xc0(r30) -/* 802B68D0 002B3810 C0 24 08 1C */ lfs f1, 0x81c(r4) -/* 802B68D4 002B3814 48 00 0C A9 */ bl damageTreasure__Q34Game11OtakaraBase3ObjFf -.L_802B68D8: -/* 802B68D8 002B3818 FC 20 F8 90 */ fmr f1, f31 -/* 802B68DC 002B381C 7F C3 F3 78 */ mr r3, r30 -/* 802B68E0 002B3820 7F E4 FB 78 */ mr r4, r31 -/* 802B68E4 002B3824 4B E4 FA E1 */ bl earthquakeCallBack__Q24Game9EnemyBaseFPQ24Game8Creaturef -/* 802B68E8 002B3828 E3 E1 00 18 */ psq_l f31, 24(r1), 0, qr0 -/* 802B68EC 002B382C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802B68F0 002B3830 CB E1 00 10 */ lfd f31, 0x10(r1) -/* 802B68F4 002B3834 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B68F8 002B3838 83 C1 00 08 */ lwz r30, 8(r1) -/* 802B68FC 002B383C 7C 08 03 A6 */ mtlr r0 -/* 802B6900 002B3840 38 21 00 20 */ addi r1, r1, 0x20 -/* 802B6904 002B3844 4E 80 00 20 */ blr -.endfn earthquakeCallBack__Q34Game11OtakaraBase3ObjFPQ24Game8Creaturef - -.fn "bombCallBack__Q34Game11OtakaraBase3ObjFPQ24Game8CreatureR10Vector3f", global -/* 802B6908 002B3848 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B690C 002B384C 7C 08 02 A6 */ mflr r0 -/* 802B6910 002B3850 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6914 002B3854 48 00 0C 69 */ bl damageTreasure__Q34Game11OtakaraBase3ObjFf -/* 802B6918 002B3858 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B691C 002B385C 38 60 00 01 */ li r3, 1 -/* 802B6920 002B3860 7C 08 03 A6 */ mtlr r0 -/* 802B6924 002B3864 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6928 002B3868 4E 80 00 20 */ blr -.endfn "bombCallBack__Q34Game11OtakaraBase3ObjFPQ24Game8CreatureR10Vector3f" - -.fn doStartStoneState__Q34Game11OtakaraBase3ObjFv, global -/* 802B692C 002B386C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6930 002B3870 7C 08 02 A6 */ mflr r0 -/* 802B6934 002B3874 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6938 002B3878 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B693C 002B387C 7C 7F 1B 78 */ mr r31, r3 -/* 802B6940 002B3880 4B E4 C5 B5 */ bl doStartStoneState__Q24Game9EnemyBaseFv -/* 802B6944 002B3884 7F E3 FB 78 */ mr r3, r31 -/* 802B6948 002B3888 38 80 00 01 */ li r4, 1 -/* 802B694C 002B388C 48 00 0B 11 */ bl fallTreasure__Q34Game11OtakaraBase3ObjFb -/* 802B6950 002B3890 7F E3 FB 78 */ mr r3, r31 -/* 802B6954 002B3894 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B6958 002B3898 81 8C 03 0C */ lwz r12, 0x30c(r12) -/* 802B695C 002B389C 7D 89 03 A6 */ mtctr r12 -/* 802B6960 002B38A0 4E 80 04 21 */ bctrl -/* 802B6964 002B38A4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6968 002B38A8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B696C 002B38AC 7C 08 03 A6 */ mtlr r0 -/* 802B6970 002B38B0 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6974 002B38B4 4E 80 00 20 */ blr -.endfn doStartStoneState__Q34Game11OtakaraBase3ObjFv - -.fn doFinishStoneState__Q34Game11OtakaraBase3ObjFv, global -/* 802B6978 002B38B8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B697C 002B38BC 7C 08 02 A6 */ mflr r0 -/* 802B6980 002B38C0 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6984 002B38C4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B6988 002B38C8 7C 7F 1B 78 */ mr r31, r3 -/* 802B698C 002B38CC 4B E4 C5 7D */ bl doFinishStoneState__Q24Game9EnemyBaseFv -/* 802B6990 002B38D0 88 1F 02 D0 */ lbz r0, 0x2d0(r31) -/* 802B6994 002B38D4 28 00 00 00 */ cmplwi r0, 0 -/* 802B6998 002B38D8 41 82 00 18 */ beq .L_802B69B0 -/* 802B699C 002B38DC 7F E3 FB 78 */ mr r3, r31 -/* 802B69A0 002B38E0 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B69A4 002B38E4 81 8C 03 08 */ lwz r12, 0x308(r12) -/* 802B69A8 002B38E8 7D 89 03 A6 */ mtctr r12 -/* 802B69AC 002B38EC 4E 80 04 21 */ bctrl -.L_802B69B0: -/* 802B69B0 002B38F0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B69B4 002B38F4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B69B8 002B38F8 7C 08 03 A6 */ mtlr r0 -/* 802B69BC 002B38FC 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B69C0 002B3900 4E 80 00 20 */ blr -.endfn doFinishStoneState__Q34Game11OtakaraBase3ObjFv - -.fn doStartEarthquakeState__Q34Game11OtakaraBase3ObjFf, global -/* 802B69C4 002B3904 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B69C8 002B3908 7C 08 02 A6 */ mflr r0 -/* 802B69CC 002B390C 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B69D0 002B3910 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B69D4 002B3914 7C 7F 1B 78 */ mr r31, r3 -/* 802B69D8 002B3918 4B E5 0E F5 */ bl doStartEarthquakeState__Q24Game9EnemyBaseFf -/* 802B69DC 002B391C 7F E3 FB 78 */ mr r3, r31 -/* 802B69E0 002B3920 38 80 00 01 */ li r4, 1 -/* 802B69E4 002B3924 48 00 0A 79 */ bl fallTreasure__Q34Game11OtakaraBase3ObjFb -/* 802B69E8 002B3928 7F E3 FB 78 */ mr r3, r31 -/* 802B69EC 002B392C 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B69F0 002B3930 81 8C 03 0C */ lwz r12, 0x30c(r12) -/* 802B69F4 002B3934 7D 89 03 A6 */ mtctr r12 -/* 802B69F8 002B3938 4E 80 04 21 */ bctrl -/* 802B69FC 002B393C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6A00 002B3940 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B6A04 002B3944 7C 08 03 A6 */ mtlr r0 -/* 802B6A08 002B3948 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6A0C 002B394C 4E 80 00 20 */ blr -.endfn doStartEarthquakeState__Q34Game11OtakaraBase3ObjFf - -.fn doFinishEarthquakeState__Q34Game11OtakaraBase3ObjFv, global -/* 802B6A10 002B3950 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6A14 002B3954 7C 08 02 A6 */ mflr r0 -/* 802B6A18 002B3958 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6A1C 002B395C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B6A20 002B3960 7C 7F 1B 78 */ mr r31, r3 -/* 802B6A24 002B3964 4B E5 0F 3D */ bl doFinishEarthquakeState__Q24Game9EnemyBaseFv -/* 802B6A28 002B3968 88 1F 02 D0 */ lbz r0, 0x2d0(r31) -/* 802B6A2C 002B396C 28 00 00 00 */ cmplwi r0, 0 -/* 802B6A30 002B3970 41 82 00 18 */ beq .L_802B6A48 -/* 802B6A34 002B3974 7F E3 FB 78 */ mr r3, r31 -/* 802B6A38 002B3978 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B6A3C 002B397C 81 8C 03 08 */ lwz r12, 0x308(r12) -/* 802B6A40 002B3980 7D 89 03 A6 */ mtctr r12 -/* 802B6A44 002B3984 4E 80 04 21 */ bctrl -.L_802B6A48: -/* 802B6A48 002B3988 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6A4C 002B398C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B6A50 002B3990 7C 08 03 A6 */ mtlr r0 -/* 802B6A54 002B3994 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6A58 002B3998 4E 80 00 20 */ blr -.endfn doFinishEarthquakeState__Q34Game11OtakaraBase3ObjFv - -.fn doStartEarthquakeFitState__Q34Game11OtakaraBase3ObjFv, global -/* 802B6A5C 002B399C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6A60 002B39A0 7C 08 02 A6 */ mflr r0 -/* 802B6A64 002B39A4 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6A68 002B39A8 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B6A6C 002B39AC 7C 7F 1B 78 */ mr r31, r3 -/* 802B6A70 002B39B0 4B E5 0E F5 */ bl doStartEarthquakeFitState__Q24Game9EnemyBaseFv -/* 802B6A74 002B39B4 7F E3 FB 78 */ mr r3, r31 -/* 802B6A78 002B39B8 38 80 00 01 */ li r4, 1 -/* 802B6A7C 002B39BC 48 00 09 E1 */ bl fallTreasure__Q34Game11OtakaraBase3ObjFb -/* 802B6A80 002B39C0 7F E3 FB 78 */ mr r3, r31 -/* 802B6A84 002B39C4 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B6A88 002B39C8 81 8C 03 0C */ lwz r12, 0x30c(r12) -/* 802B6A8C 002B39CC 7D 89 03 A6 */ mtctr r12 -/* 802B6A90 002B39D0 4E 80 04 21 */ bctrl -/* 802B6A94 002B39D4 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6A98 002B39D8 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B6A9C 002B39DC 7C 08 03 A6 */ mtlr r0 -/* 802B6AA0 002B39E0 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6AA4 002B39E4 4E 80 00 20 */ blr -.endfn doStartEarthquakeFitState__Q34Game11OtakaraBase3ObjFv - -.fn doFinishEarthquakeFitState__Q34Game11OtakaraBase3ObjFv, global -/* 802B6AA8 002B39E8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6AAC 002B39EC 7C 08 02 A6 */ mflr r0 -/* 802B6AB0 002B39F0 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6AB4 002B39F4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B6AB8 002B39F8 7C 7F 1B 78 */ mr r31, r3 -/* 802B6ABC 002B39FC 4B E5 0E AD */ bl doFinishEarthquakeFitState__Q24Game9EnemyBaseFv -/* 802B6AC0 002B3A00 88 1F 02 D0 */ lbz r0, 0x2d0(r31) -/* 802B6AC4 002B3A04 28 00 00 00 */ cmplwi r0, 0 -/* 802B6AC8 002B3A08 41 82 00 18 */ beq .L_802B6AE0 -/* 802B6ACC 002B3A0C 7F E3 FB 78 */ mr r3, r31 -/* 802B6AD0 002B3A10 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B6AD4 002B3A14 81 8C 03 08 */ lwz r12, 0x308(r12) -/* 802B6AD8 002B3A18 7D 89 03 A6 */ mtctr r12 -/* 802B6ADC 002B3A1C 4E 80 04 21 */ bctrl -.L_802B6AE0: -/* 802B6AE0 002B3A20 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6AE4 002B3A24 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B6AE8 002B3A28 7C 08 03 A6 */ mtlr r0 -/* 802B6AEC 002B3A2C 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6AF0 002B3A30 4E 80 00 20 */ blr -.endfn doFinishEarthquakeFitState__Q34Game11OtakaraBase3ObjFv - -.fn doStartWaitingBirthTypeDrop__Q34Game11OtakaraBase3ObjFv, global -/* 802B6AF4 002B3A34 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6AF8 002B3A38 7C 08 02 A6 */ mflr r0 -/* 802B6AFC 002B3A3C 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6B00 002B3A40 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B6B04 002B3A44 7C 7F 1B 78 */ mr r31, r3 -/* 802B6B08 002B3A48 4B E5 0E 91 */ bl doStartWaitingBirthTypeDrop__Q24Game9EnemyBaseFv -/* 802B6B0C 002B3A4C 7F E3 FB 78 */ mr r3, r31 -/* 802B6B10 002B3A50 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B6B14 002B3A54 81 8C 03 18 */ lwz r12, 0x318(r12) -/* 802B6B18 002B3A58 7D 89 03 A6 */ mtctr r12 -/* 802B6B1C 002B3A5C 4E 80 04 21 */ bctrl -/* 802B6B20 002B3A60 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6B24 002B3A64 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B6B28 002B3A68 7C 08 03 A6 */ mtlr r0 -/* 802B6B2C 002B3A6C 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6B30 002B3A70 4E 80 00 20 */ blr -.endfn doStartWaitingBirthTypeDrop__Q34Game11OtakaraBase3ObjFv - -.fn effectDrawOff__Q34Game11OtakaraBase3ObjFv, weak -/* 802B6B34 002B3A74 4E 80 00 20 */ blr -.endfn effectDrawOff__Q34Game11OtakaraBase3ObjFv - -.fn doFinishWaitingBirthTypeDrop__Q34Game11OtakaraBase3ObjFv, global -/* 802B6B38 002B3A78 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6B3C 002B3A7C 7C 08 02 A6 */ mflr r0 -/* 802B6B40 002B3A80 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6B44 002B3A84 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B6B48 002B3A88 7C 7F 1B 78 */ mr r31, r3 -/* 802B6B4C 002B3A8C 4B E5 0E 7D */ bl doFinishWaitingBirthTypeDrop__Q24Game9EnemyBaseFv -/* 802B6B50 002B3A90 7F E3 FB 78 */ mr r3, r31 -/* 802B6B54 002B3A94 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B6B58 002B3A98 81 8C 03 14 */ lwz r12, 0x314(r12) -/* 802B6B5C 002B3A9C 7D 89 03 A6 */ mtctr r12 -/* 802B6B60 002B3AA0 4E 80 04 21 */ bctrl -/* 802B6B64 002B3AA4 7F E3 FB 78 */ mr r3, r31 -/* 802B6B68 002B3AA8 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B6B6C 002B3AAC 81 8C 02 58 */ lwz r12, 0x258(r12) -/* 802B6B70 002B3AB0 7D 89 03 A6 */ mtctr r12 -/* 802B6B74 002B3AB4 4E 80 04 21 */ bctrl -/* 802B6B78 002B3AB8 2C 03 00 5D */ cmpwi r3, 0x5d -/* 802B6B7C 002B3ABC 40 82 00 0C */ bne .L_802B6B88 -/* 802B6B80 002B3AC0 7F E3 FB 78 */ mr r3, r31 -/* 802B6B84 002B3AC4 48 00 0D B5 */ bl initBombOtakara__Q34Game11OtakaraBase3ObjFv -.L_802B6B88: -/* 802B6B88 002B3AC8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6B8C 002B3ACC 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B6B90 002B3AD0 7C 08 03 A6 */ mtlr r0 -/* 802B6B94 002B3AD4 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6B98 002B3AD8 4E 80 00 20 */ blr -.endfn doFinishWaitingBirthTypeDrop__Q34Game11OtakaraBase3ObjFv - -.fn effectDrawOn__Q34Game11OtakaraBase3ObjFv, weak -/* 802B6B9C 002B3ADC 4E 80 00 20 */ blr -.endfn effectDrawOn__Q34Game11OtakaraBase3ObjFv - -.fn startCarcassMotion__Q34Game11OtakaraBase3ObjFv, global -/* 802B6BA0 002B3AE0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6BA4 002B3AE4 7C 08 02 A6 */ mflr r0 -/* 802B6BA8 002B3AE8 38 80 00 0B */ li r4, 0xb -/* 802B6BAC 002B3AEC 38 A0 00 00 */ li r5, 0 -/* 802B6BB0 002B3AF0 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6BB4 002B3AF4 4B E4 E4 51 */ bl startMotion__Q24Game9EnemyBaseFiPQ28SysShape14MotionListener -/* 802B6BB8 002B3AF8 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6BBC 002B3AFC 7C 08 03 A6 */ mtlr r0 -/* 802B6BC0 002B3B00 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6BC4 002B3B04 4E 80 00 20 */ blr -.endfn startCarcassMotion__Q34Game11OtakaraBase3ObjFv - -.fn doStartMovie__Q34Game11OtakaraBase3ObjFv, global -/* 802B6BC8 002B3B08 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6BCC 002B3B0C 7C 08 02 A6 */ mflr r0 -/* 802B6BD0 002B3B10 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6BD4 002B3B14 81 83 00 00 */ lwz r12, 0(r3) -/* 802B6BD8 002B3B18 81 8C 03 18 */ lwz r12, 0x318(r12) -/* 802B6BDC 002B3B1C 7D 89 03 A6 */ mtctr r12 -/* 802B6BE0 002B3B20 4E 80 04 21 */ bctrl -/* 802B6BE4 002B3B24 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6BE8 002B3B28 7C 08 03 A6 */ mtlr r0 -/* 802B6BEC 002B3B2C 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6BF0 002B3B30 4E 80 00 20 */ blr -.endfn doStartMovie__Q34Game11OtakaraBase3ObjFv - -.fn doEndMovie__Q34Game11OtakaraBase3ObjFv, global -/* 802B6BF4 002B3B34 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B6BF8 002B3B38 7C 08 02 A6 */ mflr r0 -/* 802B6BFC 002B3B3C 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B6C00 002B3B40 81 83 00 00 */ lwz r12, 0(r3) -/* 802B6C04 002B3B44 81 8C 03 14 */ lwz r12, 0x314(r12) -/* 802B6C08 002B3B48 7D 89 03 A6 */ mtctr r12 -/* 802B6C0C 002B3B4C 4E 80 04 21 */ bctrl -/* 802B6C10 002B3B50 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B6C14 002B3B54 7C 08 03 A6 */ mtlr r0 -/* 802B6C18 002B3B58 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B6C1C 002B3B5C 4E 80 00 20 */ blr -.endfn doEndMovie__Q34Game11OtakaraBase3ObjFv - -.fn isMovePositionSet__Q34Game11OtakaraBase3ObjFb, global -/* 802B6C20 002B3B60 94 21 FF C0 */ stwu r1, -0x40(r1) -/* 802B6C24 002B3B64 7C 08 02 A6 */ mflr r0 -/* 802B6C28 002B3B68 90 01 00 44 */ stw r0, 0x44(r1) -/* 802B6C2C 002B3B6C 54 80 06 3F */ clrlwi. r0, r4, 0x18 -/* 802B6C30 002B3B70 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 802B6C34 002B3B74 3B E0 00 00 */ li r31, 0 -/* 802B6C38 002B3B78 93 C1 00 38 */ stw r30, 0x38(r1) -/* 802B6C3C 002B3B7C 7C 7E 1B 78 */ mr r30, r3 -/* 802B6C40 002B3B80 40 82 00 24 */ bne .L_802B6C64 -/* 802B6C44 002B3B84 80 9E 00 C0 */ lwz r4, 0xc0(r30) -/* 802B6C48 002B3B88 C0 3E 02 E8 */ lfs f1, 0x2e8(r30) -/* 802B6C4C 002B3B8C C0 04 08 94 */ lfs f0, 0x894(r4) -/* 802B6C50 002B3B90 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 802B6C54 002B3B94 40 81 00 10 */ ble .L_802B6C64 -/* 802B6C58 002B3B98 48 00 01 09 */ bl getNearestTreasure__Q34Game11OtakaraBase3ObjFv -/* 802B6C5C 002B3B9C 7C 7F 1B 78 */ mr r31, r3 -/* 802B6C60 002B3BA0 48 00 00 18 */ b .L_802B6C78 -.L_802B6C64: -/* 802B6C64 002B3BA4 80 6D 9A EC */ lwz r3, sys@sda21(r13) -/* 802B6C68 002B3BA8 C0 3E 02 E8 */ lfs f1, 0x2e8(r30) -/* 802B6C6C 002B3BAC C0 03 00 54 */ lfs f0, 0x54(r3) -/* 802B6C70 002B3BB0 EC 01 00 2A */ fadds f0, f1, f0 -/* 802B6C74 002B3BB4 D0 1E 02 E8 */ stfs f0, 0x2e8(r30) -.L_802B6C78: -/* 802B6C78 002B3BB8 28 1F 00 00 */ cmplwi r31, 0 -/* 802B6C7C 002B3BBC 41 82 00 3C */ beq .L_802B6CB8 -/* 802B6C80 002B3BC0 7F E4 FB 78 */ mr r4, r31 -/* 802B6C84 002B3BC4 38 61 00 14 */ addi r3, r1, 0x14 -/* 802B6C88 002B3BC8 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B6C8C 002B3BCC 81 8C 00 08 */ lwz r12, 8(r12) -/* 802B6C90 002B3BD0 7D 89 03 A6 */ mtctr r12 -/* 802B6C94 002B3BD4 4E 80 04 21 */ bctrl -/* 802B6C98 002B3BD8 C0 01 00 14 */ lfs f0, 0x14(r1) -/* 802B6C9C 002B3BDC D0 1E 02 D4 */ stfs f0, 0x2d4(r30) -/* 802B6CA0 002B3BE0 C0 01 00 18 */ lfs f0, 0x18(r1) -/* 802B6CA4 002B3BE4 D0 1E 02 D8 */ stfs f0, 0x2d8(r30) -/* 802B6CA8 002B3BE8 C0 01 00 1C */ lfs f0, 0x1c(r1) -/* 802B6CAC 002B3BEC D0 1E 02 DC */ stfs f0, 0x2dc(r30) -/* 802B6CB0 002B3BF0 93 FE 02 30 */ stw r31, 0x230(r30) -/* 802B6CB4 002B3BF4 48 00 00 80 */ b .L_802B6D34 -.L_802B6CB8: -/* 802B6CB8 002B3BF8 80 FE 02 E0 */ lwz r7, 0x2e0(r30) -/* 802B6CBC 002B3BFC 3C 60 80 4B */ lis r3, "__vt__23Condition"@ha -/* 802B6CC0 002B3C00 38 03 BC 60 */ addi r0, r3, "__vt__23Condition"@l -/* 802B6CC4 002B3C04 3C 60 80 4D */ lis r3, __vt__Q24Game30ConditionNotStickClientAndItem@ha -/* 802B6CC8 002B3C08 90 01 00 20 */ stw r0, 0x20(r1) -/* 802B6CCC 002B3C0C 38 03 F0 78 */ addi r0, r3, __vt__Q24Game30ConditionNotStickClientAndItem@l -/* 802B6CD0 002B3C10 7F C3 F3 78 */ mr r3, r30 -/* 802B6CD4 002B3C14 38 C1 00 20 */ addi r6, r1, 0x20 -/* 802B6CD8 002B3C18 90 01 00 20 */ stw r0, 0x20(r1) -/* 802B6CDC 002B3C1C 38 80 00 00 */ li r4, 0 -/* 802B6CE0 002B3C20 38 A0 00 00 */ li r5, 0 -/* 802B6CE4 002B3C24 93 C1 00 24 */ stw r30, 0x24(r1) -/* 802B6CE8 002B3C28 90 E1 00 28 */ stw r7, 0x28(r1) -/* 802B6CEC 002B3C2C 80 FE 00 C0 */ lwz r7, 0xc0(r30) -/* 802B6CF0 002B3C30 C0 27 04 24 */ lfs f1, 0x424(r7) -/* 802B6CF4 002B3C34 C0 47 03 D4 */ lfs f2, 0x3d4(r7) -/* 802B6CF8 002B3C38 4B E5 C3 59 */ bl "getNearestPikminOrNavi__Q24Game9EnemyFuncFPQ24Game8CreatureffPfP23ConditionP23Condition" -/* 802B6CFC 002B3C3C 7C 7F 1B 79 */ or. r31, r3, r3 -/* 802B6D00 002B3C40 41 82 00 2C */ beq .L_802B6D2C -/* 802B6D04 002B3C44 7F C4 F3 78 */ mr r4, r30 -/* 802B6D08 002B3C48 7F E5 FB 78 */ mr r5, r31 -/* 802B6D0C 002B3C4C 38 61 00 08 */ addi r3, r1, 8 -/* 802B6D10 002B3C50 48 00 01 99 */ bl getTargetPosition__Q34Game11OtakaraBase3ObjFPQ24Game8Creature -/* 802B6D14 002B3C54 C0 01 00 08 */ lfs f0, 8(r1) -/* 802B6D18 002B3C58 D0 1E 02 D4 */ stfs f0, 0x2d4(r30) -/* 802B6D1C 002B3C5C C0 01 00 0C */ lfs f0, 0xc(r1) -/* 802B6D20 002B3C60 D0 1E 02 D8 */ stfs f0, 0x2d8(r30) -/* 802B6D24 002B3C64 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 802B6D28 002B3C68 D0 1E 02 DC */ stfs f0, 0x2dc(r30) -.L_802B6D2C: -/* 802B6D2C 002B3C6C 38 00 00 00 */ li r0, 0 -/* 802B6D30 002B3C70 90 1E 02 30 */ stw r0, 0x230(r30) -.L_802B6D34: -/* 802B6D34 002B3C74 28 1F 00 00 */ cmplwi r31, 0 -/* 802B6D38 002B3C78 41 82 00 0C */ beq .L_802B6D44 -/* 802B6D3C 002B3C7C 38 60 00 01 */ li r3, 1 -/* 802B6D40 002B3C80 48 00 00 08 */ b .L_802B6D48 -.L_802B6D44: -/* 802B6D44 002B3C84 38 60 00 00 */ li r3, 0 -.L_802B6D48: -/* 802B6D48 002B3C88 80 01 00 44 */ lwz r0, 0x44(r1) -/* 802B6D4C 002B3C8C 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 802B6D50 002B3C90 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 802B6D54 002B3C94 7C 08 03 A6 */ mtlr r0 -/* 802B6D58 002B3C98 38 21 00 40 */ addi r1, r1, 0x40 -/* 802B6D5C 002B3C9C 4E 80 00 20 */ blr -.endfn isMovePositionSet__Q34Game11OtakaraBase3ObjFb - -.fn getNearestTreasure__Q34Game11OtakaraBase3ObjFv, global -/* 802B6D60 002B3CA0 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 802B6D64 002B3CA4 7C 08 02 A6 */ mflr r0 -/* 802B6D68 002B3CA8 90 01 00 54 */ stw r0, 0x54(r1) -/* 802B6D6C 002B3CAC DB E1 00 40 */ stfd f31, 0x40(r1) -/* 802B6D70 002B3CB0 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 -/* 802B6D74 002B3CB4 93 E1 00 3C */ stw r31, 0x3c(r1) -/* 802B6D78 002B3CB8 93 C1 00 38 */ stw r30, 0x38(r1) -/* 802B6D7C 002B3CBC 93 A1 00 34 */ stw r29, 0x34(r1) -/* 802B6D80 002B3CC0 7C 7D 1B 78 */ mr r29, r3 -/* 802B6D84 002B3CC4 38 61 00 14 */ addi r3, r1, 0x14 -/* 802B6D88 002B3CC8 80 9D 00 C0 */ lwz r4, 0xc0(r29) -/* 802B6D8C 002B3CCC 3B E0 00 00 */ li r31, 0 -/* 802B6D90 002B3CD0 C0 04 03 D4 */ lfs f0, 0x3d4(r4) -/* 802B6D94 002B3CD4 EF E0 00 32 */ fmuls f31, f0, f0 -/* 802B6D98 002B3CD8 4B EB 5B D1 */ bl __ct__Q24Game14PelletIteratorFv -/* 802B6D9C 002B3CDC 38 61 00 14 */ addi r3, r1, 0x14 -/* 802B6DA0 002B3CE0 4B EB 5B E1 */ bl first__Q24Game14PelletIteratorFv -/* 802B6DA4 002B3CE4 48 00 00 CC */ b .L_802B6E70 -.L_802B6DA8: -/* 802B6DA8 002B3CE8 38 61 00 14 */ addi r3, r1, 0x14 -/* 802B6DAC 002B3CEC 4B EB 5C 21 */ bl __ml__Q24Game14PelletIteratorFv -/* 802B6DB0 002B3CF0 81 83 00 00 */ lwz r12, 0(r3) -/* 802B6DB4 002B3CF4 7C 7E 1B 78 */ mr r30, r3 -/* 802B6DB8 002B3CF8 81 8C 00 A8 */ lwz r12, 0xa8(r12) -/* 802B6DBC 002B3CFC 7D 89 03 A6 */ mtctr r12 -/* 802B6DC0 002B3D00 4E 80 04 21 */ bctrl -/* 802B6DC4 002B3D04 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B6DC8 002B3D08 41 82 00 A0 */ beq .L_802B6E68 -/* 802B6DCC 002B3D0C 80 1E 00 B8 */ lwz r0, 0xb8(r30) -/* 802B6DD0 002B3D10 28 00 00 00 */ cmplwi r0, 0 -/* 802B6DD4 002B3D14 40 82 00 94 */ bne .L_802B6E68 -/* 802B6DD8 002B3D18 7F C3 F3 78 */ mr r3, r30 -/* 802B6DDC 002B3D1C 81 9E 00 00 */ lwz r12, 0(r30) -/* 802B6DE0 002B3D20 81 8C 01 E4 */ lwz r12, 0x1e4(r12) -/* 802B6DE4 002B3D24 7D 89 03 A6 */ mtctr r12 -/* 802B6DE8 002B3D28 4E 80 04 21 */ bctrl -/* 802B6DEC 002B3D2C 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B6DF0 002B3D30 41 82 00 78 */ beq .L_802B6E68 -/* 802B6DF4 002B3D34 7F C4 F3 78 */ mr r4, r30 -/* 802B6DF8 002B3D38 38 61 00 08 */ addi r3, r1, 8 -/* 802B6DFC 002B3D3C 81 9E 00 00 */ lwz r12, 0(r30) -/* 802B6E00 002B3D40 81 8C 00 08 */ lwz r12, 8(r12) -/* 802B6E04 002B3D44 7D 89 03 A6 */ mtctr r12 -/* 802B6E08 002B3D48 4E 80 04 21 */ bctrl -/* 802B6E0C 002B3D4C C0 81 00 10 */ lfs f4, 0x10(r1) -/* 802B6E10 002B3D50 C0 1D 01 A0 */ lfs f0, 0x1a0(r29) -/* 802B6E14 002B3D54 80 7D 00 C0 */ lwz r3, 0xc0(r29) -/* 802B6E18 002B3D58 EC 44 00 28 */ fsubs f2, f4, f0 -/* 802B6E1C 002B3D5C C0 A1 00 08 */ lfs f5, 8(r1) -/* 802B6E20 002B3D60 C0 3D 01 98 */ lfs f1, 0x198(r29) -/* 802B6E24 002B3D64 C0 03 03 5C */ lfs f0, 0x35c(r3) -/* 802B6E28 002B3D68 EC 65 08 28 */ fsubs f3, f5, f1 -/* 802B6E2C 002B3D6C EC 22 00 B2 */ fmuls f1, f2, f2 -/* 802B6E30 002B3D70 EC 00 00 32 */ fmuls f0, f0, f0 -/* 802B6E34 002B3D74 EC 23 08 FA */ fmadds f1, f3, f3, f1 -/* 802B6E38 002B3D78 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 802B6E3C 002B3D7C 40 80 00 2C */ bge .L_802B6E68 -/* 802B6E40 002B3D80 C0 1D 01 94 */ lfs f0, 0x194(r29) -/* 802B6E44 002B3D84 C0 3D 01 8C */ lfs f1, 0x18c(r29) -/* 802B6E48 002B3D88 EC 00 20 28 */ fsubs f0, f0, f4 -/* 802B6E4C 002B3D8C EC 21 28 28 */ fsubs f1, f1, f5 -/* 802B6E50 002B3D90 EC 00 00 32 */ fmuls f0, f0, f0 -/* 802B6E54 002B3D94 EC 01 00 7A */ fmadds f0, f1, f1, f0 -/* 802B6E58 002B3D98 FC 00 F8 40 */ fcmpo cr0, f0, f31 -/* 802B6E5C 002B3D9C 40 80 00 0C */ bge .L_802B6E68 -/* 802B6E60 002B3DA0 7F DF F3 78 */ mr r31, r30 -/* 802B6E64 002B3DA4 FF E0 00 90 */ fmr f31, f0 -.L_802B6E68: -/* 802B6E68 002B3DA8 38 61 00 14 */ addi r3, r1, 0x14 -/* 802B6E6C 002B3DAC 4B EB 5B C9 */ bl next__Q24Game14PelletIteratorFv -.L_802B6E70: -/* 802B6E70 002B3DB0 38 61 00 14 */ addi r3, r1, 0x14 -/* 802B6E74 002B3DB4 4B EB 5C 81 */ bl isDone__Q24Game14PelletIteratorFv -/* 802B6E78 002B3DB8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B6E7C 002B3DBC 41 82 FF 2C */ beq .L_802B6DA8 -/* 802B6E80 002B3DC0 7F E3 FB 78 */ mr r3, r31 -/* 802B6E84 002B3DC4 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 -/* 802B6E88 002B3DC8 80 01 00 54 */ lwz r0, 0x54(r1) -/* 802B6E8C 002B3DCC CB E1 00 40 */ lfd f31, 0x40(r1) -/* 802B6E90 002B3DD0 83 E1 00 3C */ lwz r31, 0x3c(r1) -/* 802B6E94 002B3DD4 83 C1 00 38 */ lwz r30, 0x38(r1) -/* 802B6E98 002B3DD8 83 A1 00 34 */ lwz r29, 0x34(r1) -/* 802B6E9C 002B3DDC 7C 08 03 A6 */ mtlr r0 -/* 802B6EA0 002B3DE0 38 21 00 50 */ addi r1, r1, 0x50 -/* 802B6EA4 002B3DE4 4E 80 00 20 */ blr -.endfn getNearestTreasure__Q34Game11OtakaraBase3ObjFv - -.fn getTargetPosition__Q34Game11OtakaraBase3ObjFPQ24Game8Creature, global -/* 802B6EA8 002B3DE8 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 802B6EAC 002B3DEC 7C 08 02 A6 */ mflr r0 -/* 802B6EB0 002B3DF0 90 01 00 64 */ stw r0, 0x64(r1) -/* 802B6EB4 002B3DF4 DB E1 00 50 */ stfd f31, 0x50(r1) -/* 802B6EB8 002B3DF8 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 -/* 802B6EBC 002B3DFC DB C1 00 40 */ stfd f30, 0x40(r1) -/* 802B6EC0 002B3E00 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 -/* 802B6EC4 002B3E04 DB A1 00 30 */ stfd f29, 0x30(r1) -/* 802B6EC8 002B3E08 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 -/* 802B6ECC 002B3E0C 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 802B6ED0 002B3E10 93 C1 00 28 */ stw r30, 0x28(r1) -/* 802B6ED4 002B3E14 93 A1 00 24 */ stw r29, 0x24(r1) -/* 802B6ED8 002B3E18 81 84 00 00 */ lwz r12, 0(r4) -/* 802B6EDC 002B3E1C 7C 7D 1B 78 */ mr r29, r3 -/* 802B6EE0 002B3E20 7C 9E 23 78 */ mr r30, r4 -/* 802B6EE4 002B3E24 7C BF 2B 78 */ mr r31, r5 -/* 802B6EE8 002B3E28 81 8C 00 08 */ lwz r12, 8(r12) -/* 802B6EEC 002B3E2C 38 61 00 14 */ addi r3, r1, 0x14 -/* 802B6EF0 002B3E30 7D 89 03 A6 */ mtctr r12 -/* 802B6EF4 002B3E34 4E 80 04 21 */ bctrl -/* 802B6EF8 002B3E38 7F E4 FB 78 */ mr r4, r31 -/* 802B6EFC 002B3E3C 38 61 00 08 */ addi r3, r1, 8 -/* 802B6F00 002B3E40 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B6F04 002B3E44 C3 C1 00 14 */ lfs f30, 0x14(r1) -/* 802B6F08 002B3E48 81 8C 00 08 */ lwz r12, 8(r12) -/* 802B6F0C 002B3E4C C3 E1 00 18 */ lfs f31, 0x18(r1) -/* 802B6F10 002B3E50 C3 A1 00 1C */ lfs f29, 0x1c(r1) -/* 802B6F14 002B3E54 7D 89 03 A6 */ mtctr r12 -/* 802B6F18 002B3E58 4E 80 04 21 */ bctrl -/* 802B6F1C 002B3E5C C0 01 00 10 */ lfs f0, 0x10(r1) -/* 802B6F20 002B3E60 C0 41 00 08 */ lfs f2, 8(r1) -/* 802B6F24 002B3E64 EC 3D 00 28 */ fsubs f1, f29, f0 -/* 802B6F28 002B3E68 C0 02 DF 30 */ lfs f0, lbl_8051C290@sda21(r2) -/* 802B6F2C 002B3E6C ED 1E 10 28 */ fsubs f8, f30, f2 -/* 802B6F30 002B3E70 C0 BE 01 98 */ lfs f5, 0x198(r30) -/* 802B6F34 002B3E74 C0 DE 01 9C */ lfs f6, 0x19c(r30) -/* 802B6F38 002B3E78 EC 61 00 72 */ fmuls f3, f1, f1 -/* 802B6F3C 002B3E7C EC 48 02 3A */ fmadds f2, f8, f8, f0 -/* 802B6F40 002B3E80 C0 FE 01 A0 */ lfs f7, 0x1a0(r30) -/* 802B6F44 002B3E84 EC 63 10 2A */ fadds f3, f3, f2 -/* 802B6F48 002B3E88 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 802B6F4C 002B3E8C 40 81 00 14 */ ble .L_802B6F60 -/* 802B6F50 002B3E90 40 81 00 14 */ ble .L_802B6F64 -/* 802B6F54 002B3E94 FC 40 18 34 */ frsqrte f2, f3 -/* 802B6F58 002B3E98 EC 62 00 F2 */ fmuls f3, f2, f3 -/* 802B6F5C 002B3E9C 48 00 00 08 */ b .L_802B6F64 -.L_802B6F60: -/* 802B6F60 002B3EA0 FC 60 00 90 */ fmr f3, f0 -.L_802B6F64: -/* 802B6F64 002B3EA4 C0 42 DF 30 */ lfs f2, lbl_8051C290@sda21(r2) -/* 802B6F68 002B3EA8 FC 03 10 40 */ fcmpo cr0, f3, f2 -/* 802B6F6C 002B3EAC 40 81 00 18 */ ble .L_802B6F84 -/* 802B6F70 002B3EB0 C0 42 DF 38 */ lfs f2, lbl_8051C298@sda21(r2) -/* 802B6F74 002B3EB4 EC 42 18 24 */ fdivs f2, f2, f3 -/* 802B6F78 002B3EB8 ED 08 00 B2 */ fmuls f8, f8, f2 -/* 802B6F7C 002B3EBC EC 00 00 B2 */ fmuls f0, f0, f2 -/* 802B6F80 002B3EC0 EC 21 00 B2 */ fmuls f1, f1, f2 -.L_802B6F84: -/* 802B6F84 002B3EC4 80 7E 00 C0 */ lwz r3, 0xc0(r30) -/* 802B6F88 002B3EC8 C0 43 02 E4 */ lfs f2, 0x2e4(r3) -/* 802B6F8C 002B3ECC C1 23 03 5C */ lfs f9, 0x35c(r3) -/* 802B6F90 002B3ED0 EC 21 00 B2 */ fmuls f1, f1, f2 -/* 802B6F94 002B3ED4 ED 08 00 B2 */ fmuls f8, f8, f2 -/* 802B6F98 002B3ED8 EC 00 00 B2 */ fmuls f0, f0, f2 -/* 802B6F9C 002B3EDC EC 21 E8 2A */ fadds f1, f1, f29 -/* 802B6FA0 002B3EE0 ED 08 F0 2A */ fadds f8, f8, f30 -/* 802B6FA4 002B3EE4 EC 49 02 72 */ fmuls f2, f9, f9 -/* 802B6FA8 002B3EE8 EC 61 38 28 */ fsubs f3, f1, f7 -/* 802B6FAC 002B3EEC EC 88 28 28 */ fsubs f4, f8, f5 -/* 802B6FB0 002B3EF0 EC 00 F8 2A */ fadds f0, f0, f31 -/* 802B6FB4 002B3EF4 EC 63 00 F2 */ fmuls f3, f3, f3 -/* 802B6FB8 002B3EF8 EC 64 19 3A */ fmadds f3, f4, f4, f3 -/* 802B6FBC 002B3EFC FC 03 10 40 */ fcmpo cr0, f3, f2 -/* 802B6FC0 002B3F00 40 81 00 70 */ ble .L_802B7030 -/* 802B6FC4 002B3F04 EC 21 38 28 */ fsubs f1, f1, f7 -/* 802B6FC8 002B3F08 C0 02 DF 30 */ lfs f0, lbl_8051C290@sda21(r2) -/* 802B6FCC 002B3F0C ED 08 28 28 */ fsubs f8, f8, f5 -/* 802B6FD0 002B3F10 EC 61 00 72 */ fmuls f3, f1, f1 -/* 802B6FD4 002B3F14 EC 48 02 3A */ fmadds f2, f8, f8, f0 -/* 802B6FD8 002B3F18 EC 63 10 2A */ fadds f3, f3, f2 -/* 802B6FDC 002B3F1C FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 802B6FE0 002B3F20 40 81 00 14 */ ble .L_802B6FF4 -/* 802B6FE4 002B3F24 40 81 00 14 */ ble .L_802B6FF8 -/* 802B6FE8 002B3F28 FC 40 18 34 */ frsqrte f2, f3 -/* 802B6FEC 002B3F2C EC 62 00 F2 */ fmuls f3, f2, f3 -/* 802B6FF0 002B3F30 48 00 00 08 */ b .L_802B6FF8 -.L_802B6FF4: -/* 802B6FF4 002B3F34 FC 60 00 90 */ fmr f3, f0 -.L_802B6FF8: -/* 802B6FF8 002B3F38 C0 42 DF 30 */ lfs f2, lbl_8051C290@sda21(r2) -/* 802B6FFC 002B3F3C FC 03 10 40 */ fcmpo cr0, f3, f2 -/* 802B7000 002B3F40 40 81 00 18 */ ble .L_802B7018 -/* 802B7004 002B3F44 C0 42 DF 38 */ lfs f2, lbl_8051C298@sda21(r2) -/* 802B7008 002B3F48 EC 42 18 24 */ fdivs f2, f2, f3 -/* 802B700C 002B3F4C ED 08 00 B2 */ fmuls f8, f8, f2 -/* 802B7010 002B3F50 EC 00 00 B2 */ fmuls f0, f0, f2 -/* 802B7014 002B3F54 EC 21 00 B2 */ fmuls f1, f1, f2 -.L_802B7018: -/* 802B7018 002B3F58 ED 08 02 72 */ fmuls f8, f8, f9 -/* 802B701C 002B3F5C EC 00 02 72 */ fmuls f0, f0, f9 -/* 802B7020 002B3F60 EC 21 02 72 */ fmuls f1, f1, f9 -/* 802B7024 002B3F64 ED 08 28 2A */ fadds f8, f8, f5 -/* 802B7028 002B3F68 EC 00 30 2A */ fadds f0, f0, f6 -/* 802B702C 002B3F6C EC 21 38 2A */ fadds f1, f1, f7 -.L_802B7030: -/* 802B7030 002B3F70 D1 1D 00 00 */ stfs f8, 0(r29) -/* 802B7034 002B3F74 D0 1D 00 04 */ stfs f0, 4(r29) -/* 802B7038 002B3F78 D0 3D 00 08 */ stfs f1, 8(r29) -/* 802B703C 002B3F7C E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 -/* 802B7040 002B3F80 CB E1 00 50 */ lfd f31, 0x50(r1) -/* 802B7044 002B3F84 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 -/* 802B7048 002B3F88 CB C1 00 40 */ lfd f30, 0x40(r1) -/* 802B704C 002B3F8C E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 -/* 802B7050 002B3F90 CB A1 00 30 */ lfd f29, 0x30(r1) -/* 802B7054 002B3F94 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 802B7058 002B3F98 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 802B705C 002B3F9C 80 01 00 64 */ lwz r0, 0x64(r1) -/* 802B7060 002B3FA0 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 802B7064 002B3FA4 7C 08 03 A6 */ mtlr r0 -/* 802B7068 002B3FA8 38 21 00 60 */ addi r1, r1, 0x60 -/* 802B706C 002B3FAC 4E 80 00 20 */ blr -.endfn getTargetPosition__Q34Game11OtakaraBase3ObjFPQ24Game8Creature - -.fn resetTreasure__Q34Game11OtakaraBase3ObjFv, global -/* 802B7070 002B3FB0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B7074 002B3FB4 7C 08 02 A6 */ mflr r0 -/* 802B7078 002B3FB8 C0 02 DF 30 */ lfs f0, lbl_8051C290@sda21(r2) -/* 802B707C 002B3FBC 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B7080 002B3FC0 38 00 00 00 */ li r0, 0 -/* 802B7084 002B3FC4 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B7088 002B3FC8 7C 7F 1B 78 */ mr r31, r3 -/* 802B708C 002B3FCC 90 03 02 E0 */ stw r0, 0x2e0(r3) -/* 802B7090 002B3FD0 3C 60 62 6F */ lis r3, 0x626F6479@ha -/* 802B7094 002B3FD4 38 83 64 79 */ addi r4, r3, 0x626F6479@l -/* 802B7098 002B3FD8 D0 1F 02 E4 */ stfs f0, 0x2e4(r31) -/* 802B709C 002B3FDC D0 1F 02 EC */ stfs f0, 0x2ec(r31) -/* 802B70A0 002B3FE0 80 7F 00 C0 */ lwz r3, 0xc0(r31) -/* 802B70A4 002B3FE4 C0 03 01 CC */ lfs f0, 0x1cc(r3) -/* 802B70A8 002B3FE8 D0 1F 02 F0 */ stfs f0, 0x2f0(r31) -/* 802B70AC 002B3FEC 80 7F 01 14 */ lwz r3, 0x114(r31) -/* 802B70B0 002B3FF0 4B E7 ED 95 */ bl getCollPart__8CollTreeFUl -/* 802B70B4 002B3FF4 C0 02 DF 58 */ lfs f0, lbl_8051C2B8@sda21(r2) -/* 802B70B8 002B3FF8 38 80 00 00 */ li r4, 0 -/* 802B70BC 002B3FFC C0 42 DF 30 */ lfs f2, lbl_8051C290@sda21(r2) -/* 802B70C0 002B4000 D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 802B70C4 002B4004 C0 02 DF 5C */ lfs f0, lbl_8051C2BC@sda21(r2) -/* 802B70C8 002B4008 FC 60 10 90 */ fmr f3, f2 -/* 802B70CC 002B400C D0 43 00 24 */ stfs f2, 0x24(r3) -/* 802B70D0 002B4010 7F E3 FB 78 */ mr r3, r31 -/* 802B70D4 002B4014 C0 22 DF 38 */ lfs f1, lbl_8051C298@sda21(r2) -/* 802B70D8 002B4018 80 BF 01 14 */ lwz r5, 0x114(r31) -/* 802B70DC 002B401C C0 82 DF 60 */ lfs f4, lbl_8051C2C0@sda21(r2) -/* 802B70E0 002B4020 80 A5 00 00 */ lwz r5, 0(r5) -/* 802B70E4 002B4024 D0 05 00 1C */ stfs f0, 0x1c(r5) -/* 802B70E8 002B4028 D0 45 00 24 */ stfs f2, 0x24(r5) -/* 802B70EC 002B402C 4B E5 C0 31 */ bl "flickStickPikmin__Q24Game9EnemyFuncFPQ24Game8CreatureffffP23Condition" -/* 802B70F0 002B4030 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B70F4 002B4034 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B70F8 002B4038 7C 08 03 A6 */ mtlr r0 -/* 802B70FC 002B403C 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B7100 002B4040 4E 80 00 20 */ blr -.endfn resetTreasure__Q34Game11OtakaraBase3ObjFv - -.fn isTakeTreasure__Q34Game11OtakaraBase3ObjFv, global -/* 802B7104 002B4044 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 802B7108 002B4048 7C 08 02 A6 */ mflr r0 -/* 802B710C 002B404C 90 01 00 54 */ stw r0, 0x54(r1) -/* 802B7110 002B4050 DB E1 00 40 */ stfd f31, 0x40(r1) -/* 802B7114 002B4054 F3 E1 00 48 */ psq_st f31, 72(r1), 0, qr0 -/* 802B7118 002B4058 DB C1 00 30 */ stfd f30, 0x30(r1) -/* 802B711C 002B405C F3 C1 00 38 */ psq_st f30, 56(r1), 0, qr0 -/* 802B7120 002B4060 DB A1 00 20 */ stfd f29, 0x20(r1) -/* 802B7124 002B4064 F3 A1 00 28 */ psq_st f29, 40(r1), 0, qr0 -/* 802B7128 002B4068 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 802B712C 002B406C 93 C1 00 18 */ stw r30, 0x18(r1) -/* 802B7130 002B4070 7C 7E 1B 78 */ mr r30, r3 -/* 802B7134 002B4074 83 E3 02 30 */ lwz r31, 0x230(r3) -/* 802B7138 002B4078 28 1F 00 00 */ cmplwi r31, 0 -/* 802B713C 002B407C 41 82 00 A0 */ beq .L_802B71DC -/* 802B7140 002B4080 7F E4 FB 78 */ mr r4, r31 -/* 802B7144 002B4084 38 61 00 08 */ addi r3, r1, 8 -/* 802B7148 002B4088 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B714C 002B408C 81 8C 00 08 */ lwz r12, 8(r12) -/* 802B7150 002B4090 7D 89 03 A6 */ mtctr r12 -/* 802B7154 002B4094 4E 80 04 21 */ bctrl -/* 802B7158 002B4098 C3 E1 00 08 */ lfs f31, 8(r1) -/* 802B715C 002B409C 7F E3 FB 78 */ mr r3, r31 -/* 802B7160 002B40A0 C3 C1 00 0C */ lfs f30, 0xc(r1) -/* 802B7164 002B40A4 C3 A1 00 10 */ lfs f29, 0x10(r1) -/* 802B7168 002B40A8 4B EA F8 61 */ bl getPickRadius__Q24Game6PelletFv -/* 802B716C 002B40AC C0 42 DF 5C */ lfs f2, lbl_8051C2BC@sda21(r2) -/* 802B7170 002B40B0 C0 02 DF 4C */ lfs f0, lbl_8051C2AC@sda21(r2) -/* 802B7174 002B40B4 EC A2 08 2A */ fadds f5, f2, f1 -/* 802B7178 002B40B8 FC 05 00 40 */ fcmpo cr0, f5, f0 -/* 802B717C 002B40BC 40 80 00 08 */ bge .L_802B7184 -/* 802B7180 002B40C0 FC A0 00 90 */ fmr f5, f0 -.L_802B7184: -/* 802B7184 002B40C4 C0 1E 01 90 */ lfs f0, 0x190(r30) -/* 802B7188 002B40C8 C0 5E 01 8C */ lfs f2, 0x18c(r30) -/* 802B718C 002B40CC EC 7E 00 28 */ fsubs f3, f30, f0 -/* 802B7190 002B40D0 C0 3E 01 94 */ lfs f1, 0x194(r30) -/* 802B7194 002B40D4 EC 5F 10 28 */ fsubs f2, f31, f2 -/* 802B7198 002B40D8 C0 02 DF 30 */ lfs f0, lbl_8051C290@sda21(r2) -/* 802B719C 002B40DC EC 3D 08 28 */ fsubs f1, f29, f1 -/* 802B71A0 002B40E0 EC 63 00 F2 */ fmuls f3, f3, f3 -/* 802B71A4 002B40E4 EC 81 00 72 */ fmuls f4, f1, f1 -/* 802B71A8 002B40E8 EC 22 18 BA */ fmadds f1, f2, f2, f3 -/* 802B71AC 002B40EC EC 24 08 2A */ fadds f1, f4, f1 -/* 802B71B0 002B40F0 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 802B71B4 002B40F4 40 81 00 14 */ ble .L_802B71C8 -/* 802B71B8 002B40F8 40 81 00 14 */ ble .L_802B71CC -/* 802B71BC 002B40FC FC 00 08 34 */ frsqrte f0, f1 -/* 802B71C0 002B4100 EC 20 00 72 */ fmuls f1, f0, f1 -/* 802B71C4 002B4104 48 00 00 08 */ b .L_802B71CC -.L_802B71C8: -/* 802B71C8 002B4108 FC 20 00 90 */ fmr f1, f0 -.L_802B71CC: -/* 802B71CC 002B410C FC 01 28 40 */ fcmpo cr0, f1, f5 -/* 802B71D0 002B4110 40 80 00 0C */ bge .L_802B71DC -/* 802B71D4 002B4114 38 60 00 01 */ li r3, 1 -/* 802B71D8 002B4118 48 00 00 08 */ b .L_802B71E0 -.L_802B71DC: -/* 802B71DC 002B411C 38 60 00 00 */ li r3, 0 -.L_802B71E0: -/* 802B71E0 002B4120 E3 E1 00 48 */ psq_l f31, 72(r1), 0, qr0 -/* 802B71E4 002B4124 CB E1 00 40 */ lfd f31, 0x40(r1) -/* 802B71E8 002B4128 E3 C1 00 38 */ psq_l f30, 56(r1), 0, qr0 -/* 802B71EC 002B412C CB C1 00 30 */ lfd f30, 0x30(r1) -/* 802B71F0 002B4130 E3 A1 00 28 */ psq_l f29, 40(r1), 0, qr0 -/* 802B71F4 002B4134 CB A1 00 20 */ lfd f29, 0x20(r1) -/* 802B71F8 002B4138 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802B71FC 002B413C 80 01 00 54 */ lwz r0, 0x54(r1) -/* 802B7200 002B4140 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 802B7204 002B4144 7C 08 03 A6 */ mtlr r0 -/* 802B7208 002B4148 38 21 00 50 */ addi r1, r1, 0x50 -/* 802B720C 002B414C 4E 80 00 20 */ blr -.endfn isTakeTreasure__Q34Game11OtakaraBase3ObjFv - -.fn takeTreasure__Q34Game11OtakaraBase3ObjFv, global -/* 802B7210 002B4150 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 802B7214 002B4154 7C 08 02 A6 */ mflr r0 -/* 802B7218 002B4158 90 01 00 64 */ stw r0, 0x64(r1) -/* 802B721C 002B415C DB E1 00 50 */ stfd f31, 0x50(r1) -/* 802B7220 002B4160 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 -/* 802B7224 002B4164 DB C1 00 40 */ stfd f30, 0x40(r1) -/* 802B7228 002B4168 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 -/* 802B722C 002B416C DB A1 00 30 */ stfd f29, 0x30(r1) -/* 802B7230 002B4170 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 -/* 802B7234 002B4174 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 802B7238 002B4178 93 C1 00 28 */ stw r30, 0x28(r1) -/* 802B723C 002B417C 93 A1 00 24 */ stw r29, 0x24(r1) -/* 802B7240 002B4180 7C 7D 1B 78 */ mr r29, r3 -/* 802B7244 002B4184 83 C3 02 30 */ lwz r30, 0x230(r3) -/* 802B7248 002B4188 28 1E 00 00 */ cmplwi r30, 0 -/* 802B724C 002B418C 41 82 01 D8 */ beq .L_802B7424 -/* 802B7250 002B4190 7F C3 F3 78 */ mr r3, r30 -/* 802B7254 002B4194 81 9E 00 00 */ lwz r12, 0(r30) -/* 802B7258 002B4198 81 8C 00 A8 */ lwz r12, 0xa8(r12) -/* 802B725C 002B419C 7D 89 03 A6 */ mtctr r12 -/* 802B7260 002B41A0 4E 80 04 21 */ bctrl -/* 802B7264 002B41A4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B7268 002B41A8 41 82 01 8C */ beq .L_802B73F4 -/* 802B726C 002B41AC 80 1E 00 B8 */ lwz r0, 0xb8(r30) -/* 802B7270 002B41B0 28 00 00 00 */ cmplwi r0, 0 -/* 802B7274 002B41B4 40 82 01 80 */ bne .L_802B73F4 -/* 802B7278 002B41B8 7F C3 F3 78 */ mr r3, r30 -/* 802B727C 002B41BC 81 9E 00 00 */ lwz r12, 0(r30) -/* 802B7280 002B41C0 81 8C 00 80 */ lwz r12, 0x80(r12) -/* 802B7284 002B41C4 7D 89 03 A6 */ mtctr r12 -/* 802B7288 002B41C8 4E 80 04 21 */ bctrl -/* 802B728C 002B41CC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B7290 002B41D0 41 82 01 64 */ beq .L_802B73F4 -/* 802B7294 002B41D4 7F C3 F3 78 */ mr r3, r30 -/* 802B7298 002B41D8 81 9E 00 00 */ lwz r12, 0(r30) -/* 802B729C 002B41DC 81 8C 01 E4 */ lwz r12, 0x1e4(r12) -/* 802B72A0 002B41E0 7D 89 03 A6 */ mtctr r12 -/* 802B72A4 002B41E4 4E 80 04 21 */ bctrl -/* 802B72A8 002B41E8 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B72AC 002B41EC 41 82 01 48 */ beq .L_802B73F4 -/* 802B72B0 002B41F0 83 FD 02 30 */ lwz r31, 0x230(r29) -/* 802B72B4 002B41F4 28 1F 00 00 */ cmplwi r31, 0 -/* 802B72B8 002B41F8 41 82 00 A0 */ beq .L_802B7358 -/* 802B72BC 002B41FC 7F E4 FB 78 */ mr r4, r31 -/* 802B72C0 002B4200 38 61 00 08 */ addi r3, r1, 8 -/* 802B72C4 002B4204 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B72C8 002B4208 81 8C 00 08 */ lwz r12, 8(r12) -/* 802B72CC 002B420C 7D 89 03 A6 */ mtctr r12 -/* 802B72D0 002B4210 4E 80 04 21 */ bctrl -/* 802B72D4 002B4214 C3 E1 00 08 */ lfs f31, 8(r1) -/* 802B72D8 002B4218 7F E3 FB 78 */ mr r3, r31 -/* 802B72DC 002B421C C3 C1 00 0C */ lfs f30, 0xc(r1) -/* 802B72E0 002B4220 C3 A1 00 10 */ lfs f29, 0x10(r1) -/* 802B72E4 002B4224 4B EA F6 E5 */ bl getPickRadius__Q24Game6PelletFv -/* 802B72E8 002B4228 C0 42 DF 5C */ lfs f2, lbl_8051C2BC@sda21(r2) -/* 802B72EC 002B422C C0 02 DF 4C */ lfs f0, lbl_8051C2AC@sda21(r2) -/* 802B72F0 002B4230 EC 62 08 2A */ fadds f3, f2, f1 -/* 802B72F4 002B4234 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 802B72F8 002B4238 40 80 00 08 */ bge .L_802B7300 -/* 802B72FC 002B423C FC 60 00 90 */ fmr f3, f0 -.L_802B7300: -/* 802B7300 002B4240 C0 1D 01 90 */ lfs f0, 0x190(r29) -/* 802B7304 002B4244 C0 5D 01 8C */ lfs f2, 0x18c(r29) -/* 802B7308 002B4248 EC 9E 00 28 */ fsubs f4, f30, f0 -/* 802B730C 002B424C C0 3D 01 94 */ lfs f1, 0x194(r29) -/* 802B7310 002B4250 EC 5F 10 28 */ fsubs f2, f31, f2 -/* 802B7314 002B4254 C0 02 DF 30 */ lfs f0, lbl_8051C290@sda21(r2) -/* 802B7318 002B4258 EC 3D 08 28 */ fsubs f1, f29, f1 -/* 802B731C 002B425C EC 84 01 32 */ fmuls f4, f4, f4 -/* 802B7320 002B4260 EC A1 00 72 */ fmuls f5, f1, f1 -/* 802B7324 002B4264 EC 22 20 BA */ fmadds f1, f2, f2, f4 -/* 802B7328 002B4268 EC 25 08 2A */ fadds f1, f5, f1 -/* 802B732C 002B426C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 802B7330 002B4270 40 81 00 14 */ ble .L_802B7344 -/* 802B7334 002B4274 40 81 00 14 */ ble .L_802B7348 -/* 802B7338 002B4278 FC 00 08 34 */ frsqrte f0, f1 -/* 802B733C 002B427C EC 20 00 72 */ fmuls f1, f0, f1 -/* 802B7340 002B4280 48 00 00 08 */ b .L_802B7348 -.L_802B7344: -/* 802B7344 002B4284 FC 20 00 90 */ fmr f1, f0 -.L_802B7348: -/* 802B7348 002B4288 FC 01 18 40 */ fcmpo cr0, f1, f3 -/* 802B734C 002B428C 40 80 00 0C */ bge .L_802B7358 -/* 802B7350 002B4290 38 00 00 01 */ li r0, 1 -/* 802B7354 002B4294 48 00 00 08 */ b .L_802B735C -.L_802B7358: -/* 802B7358 002B4298 38 00 00 00 */ li r0, 0 -.L_802B735C: -/* 802B735C 002B429C 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 802B7360 002B42A0 41 82 00 94 */ beq .L_802B73F4 -/* 802B7364 002B42A4 93 DD 02 E0 */ stw r30, 0x2e0(r29) -/* 802B7368 002B42A8 7F C3 F3 78 */ mr r3, r30 -/* 802B736C 002B42AC 80 9D 00 C0 */ lwz r4, 0xc0(r29) -/* 802B7370 002B42B0 C0 04 08 1C */ lfs f0, 0x81c(r4) -/* 802B7374 002B42B4 D0 1D 02 E4 */ stfs f0, 0x2e4(r29) -/* 802B7378 002B42B8 4B EA F6 5D */ bl getCylinderHeight__Q24Game6PelletFv -/* 802B737C 002B42BC C0 02 DF 64 */ lfs f0, lbl_8051C2C4@sda21(r2) -/* 802B7380 002B42C0 7F C3 F3 78 */ mr r3, r30 -/* 802B7384 002B42C4 EC 00 00 72 */ fmuls f0, f0, f1 -/* 802B7388 002B42C8 D0 1D 02 EC */ stfs f0, 0x2ec(r29) -/* 802B738C 002B42CC 4B EA F6 3D */ bl getPickRadius__Q24Game6PelletFv -/* 802B7390 002B42D0 D0 3D 02 F0 */ stfs f1, 0x2f0(r29) -/* 802B7394 002B42D4 3C 60 62 6F */ lis r3, 0x626F6479@ha -/* 802B7398 002B42D8 38 83 64 79 */ addi r4, r3, 0x626F6479@l -/* 802B739C 002B42DC 80 7D 01 14 */ lwz r3, 0x114(r29) -/* 802B73A0 002B42E0 4B E7 EA A5 */ bl getCollPart__8CollTreeFUl -/* 802B73A4 002B42E4 7C 7F 1B 78 */ mr r31, r3 -/* 802B73A8 002B42E8 7F C3 F3 78 */ mr r3, r30 -/* 802B73AC 002B42EC 4B EA F6 1D */ bl getPickRadius__Q24Game6PelletFv -/* 802B73B0 002B42F0 D0 3F 00 1C */ stfs f1, 0x1c(r31) -/* 802B73B4 002B42F4 7F C3 F3 78 */ mr r3, r30 -/* 802B73B8 002B42F8 C0 1D 02 EC */ lfs f0, 0x2ec(r29) -/* 802B73BC 002B42FC D0 1F 00 24 */ stfs f0, 0x24(r31) -/* 802B73C0 002B4300 80 9D 01 14 */ lwz r4, 0x114(r29) -/* 802B73C4 002B4304 83 C4 00 00 */ lwz r30, 0(r4) -/* 802B73C8 002B4308 4B EA F6 01 */ bl getPickRadius__Q24Game6PelletFv -/* 802B73CC 002B430C C0 42 DF 58 */ lfs f2, lbl_8051C2B8@sda21(r2) -/* 802B73D0 002B4310 38 00 00 01 */ li r0, 1 -/* 802B73D4 002B4314 EC 02 08 2A */ fadds f0, f2, f1 -/* 802B73D8 002B4318 D0 1E 00 1C */ stfs f0, 0x1c(r30) -/* 802B73DC 002B431C C0 1D 02 EC */ lfs f0, 0x2ec(r29) -/* 802B73E0 002B4320 D0 1E 00 24 */ stfs f0, 0x24(r30) -/* 802B73E4 002B4324 C0 1D 02 F0 */ lfs f0, 0x2f0(r29) -/* 802B73E8 002B4328 EC 00 10 2A */ fadds f0, f0, f2 -/* 802B73EC 002B432C D0 1D 02 F0 */ stfs f0, 0x2f0(r29) -/* 802B73F0 002B4330 48 00 00 08 */ b .L_802B73F8 -.L_802B73F4: -/* 802B73F4 002B4334 38 00 00 00 */ li r0, 0 -.L_802B73F8: -/* 802B73F8 002B4338 54 00 06 3F */ clrlwi. r0, r0, 0x18 -/* 802B73FC 002B433C 41 82 00 28 */ beq .L_802B7424 -/* 802B7400 002B4340 80 7D 01 74 */ lwz r3, 0x174(r29) -/* 802B7404 002B4344 38 82 DF 3C */ addi r4, r2, lbl_8051C29C@sda21 -/* 802B7408 002B4348 48 18 7B DD */ bl getJoint__Q28SysShape5ModelFPc -/* 802B740C 002B434C 48 17 24 95 */ bl getWorldMatrix__Q28SysShape5JointFv -/* 802B7410 002B4350 7C 64 1B 78 */ mr r4, r3 -/* 802B7414 002B4354 80 7D 02 E0 */ lwz r3, 0x2e0(r29) -/* 802B7418 002B4358 4B EE 86 91 */ bl startCapture__Q24Game8CreatureFP7Matrixf -/* 802B741C 002B435C 38 60 00 01 */ li r3, 1 -/* 802B7420 002B4360 48 00 00 08 */ b .L_802B7428 -.L_802B7424: -/* 802B7424 002B4364 38 60 00 00 */ li r3, 0 -.L_802B7428: -/* 802B7428 002B4368 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 -/* 802B742C 002B436C CB E1 00 50 */ lfd f31, 0x50(r1) -/* 802B7430 002B4370 E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 -/* 802B7434 002B4374 CB C1 00 40 */ lfd f30, 0x40(r1) -/* 802B7438 002B4378 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 -/* 802B743C 002B437C CB A1 00 30 */ lfd f29, 0x30(r1) -/* 802B7440 002B4380 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 802B7444 002B4384 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 802B7448 002B4388 80 01 00 64 */ lwz r0, 0x64(r1) -/* 802B744C 002B438C 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 802B7450 002B4390 7C 08 03 A6 */ mtlr r0 -/* 802B7454 002B4394 38 21 00 60 */ addi r1, r1, 0x60 -/* 802B7458 002B4398 4E 80 00 20 */ blr -.endfn takeTreasure__Q34Game11OtakaraBase3ObjFv - -.fn fallTreasure__Q34Game11OtakaraBase3ObjFb, global -/* 802B745C 002B439C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 802B7460 002B43A0 7C 08 02 A6 */ mflr r0 -/* 802B7464 002B43A4 90 01 00 24 */ stw r0, 0x24(r1) -/* 802B7468 002B43A8 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 802B746C 002B43AC 7C 9F 23 78 */ mr r31, r4 -/* 802B7470 002B43B0 93 C1 00 18 */ stw r30, 0x18(r1) -/* 802B7474 002B43B4 7C 7E 1B 78 */ mr r30, r3 -/* 802B7478 002B43B8 80 63 02 E0 */ lwz r3, 0x2e0(r3) -/* 802B747C 002B43BC 28 03 00 00 */ cmplwi r3, 0 -/* 802B7480 002B43C0 41 82 00 B8 */ beq .L_802B7538 -/* 802B7484 002B43C4 4B EE 87 19 */ bl endCapture__Q24Game8CreatureFv -/* 802B7488 002B43C8 57 E0 06 3F */ clrlwi. r0, r31, 0x18 -/* 802B748C 002B43CC 41 82 00 30 */ beq .L_802B74BC -/* 802B7490 002B43D0 C0 22 DF 30 */ lfs f1, lbl_8051C290@sda21(r2) -/* 802B7494 002B43D4 38 81 00 08 */ addi r4, r1, 8 -/* 802B7498 002B43D8 C0 02 DF 68 */ lfs f0, lbl_8051C2C8@sda21(r2) -/* 802B749C 002B43DC D0 21 00 08 */ stfs f1, 8(r1) -/* 802B74A0 002B43E0 D0 01 00 0C */ stfs f0, 0xc(r1) -/* 802B74A4 002B43E4 D0 21 00 10 */ stfs f1, 0x10(r1) -/* 802B74A8 002B43E8 80 7E 02 E0 */ lwz r3, 0x2e0(r30) -/* 802B74AC 002B43EC 81 83 00 00 */ lwz r12, 0(r3) -/* 802B74B0 002B43F0 81 8C 00 68 */ lwz r12, 0x68(r12) -/* 802B74B4 002B43F4 7D 89 03 A6 */ mtctr r12 -/* 802B74B8 002B43F8 4E 80 04 21 */ bctrl -.L_802B74BC: -/* 802B74BC 002B43FC 7F C3 F3 78 */ mr r3, r30 -/* 802B74C0 002B4400 48 00 02 BD */ bl createTreasureFallEffect__Q34Game11OtakaraBase3ObjFv -/* 802B74C4 002B4404 38 00 00 00 */ li r0, 0 -/* 802B74C8 002B4408 3C 60 62 6F */ lis r3, 0x626F6479@ha -/* 802B74CC 002B440C 90 1E 02 E0 */ stw r0, 0x2e0(r30) -/* 802B74D0 002B4410 38 83 64 79 */ addi r4, r3, 0x626F6479@l -/* 802B74D4 002B4414 C0 02 DF 30 */ lfs f0, lbl_8051C290@sda21(r2) -/* 802B74D8 002B4418 D0 1E 02 E4 */ stfs f0, 0x2e4(r30) -/* 802B74DC 002B441C D0 1E 02 EC */ stfs f0, 0x2ec(r30) -/* 802B74E0 002B4420 80 7E 00 C0 */ lwz r3, 0xc0(r30) -/* 802B74E4 002B4424 C0 03 01 CC */ lfs f0, 0x1cc(r3) -/* 802B74E8 002B4428 D0 1E 02 F0 */ stfs f0, 0x2f0(r30) -/* 802B74EC 002B442C 80 7E 01 14 */ lwz r3, 0x114(r30) -/* 802B74F0 002B4430 4B E7 E9 55 */ bl getCollPart__8CollTreeFUl -/* 802B74F4 002B4434 C0 02 DF 58 */ lfs f0, lbl_8051C2B8@sda21(r2) -/* 802B74F8 002B4438 38 80 00 00 */ li r4, 0 -/* 802B74FC 002B443C C0 42 DF 30 */ lfs f2, lbl_8051C290@sda21(r2) -/* 802B7500 002B4440 D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 802B7504 002B4444 C0 02 DF 5C */ lfs f0, lbl_8051C2BC@sda21(r2) -/* 802B7508 002B4448 FC 60 10 90 */ fmr f3, f2 -/* 802B750C 002B444C D0 43 00 24 */ stfs f2, 0x24(r3) -/* 802B7510 002B4450 7F C3 F3 78 */ mr r3, r30 -/* 802B7514 002B4454 C0 22 DF 38 */ lfs f1, lbl_8051C298@sda21(r2) -/* 802B7518 002B4458 80 BE 01 14 */ lwz r5, 0x114(r30) -/* 802B751C 002B445C C0 82 DF 60 */ lfs f4, lbl_8051C2C0@sda21(r2) -/* 802B7520 002B4460 80 A5 00 00 */ lwz r5, 0(r5) -/* 802B7524 002B4464 D0 05 00 1C */ stfs f0, 0x1c(r5) -/* 802B7528 002B4468 D0 45 00 24 */ stfs f2, 0x24(r5) -/* 802B752C 002B446C 4B E5 BB F1 */ bl "flickStickPikmin__Q24Game9EnemyFuncFPQ24Game8CreatureffffP23Condition" -/* 802B7530 002B4470 38 60 00 01 */ li r3, 1 -/* 802B7534 002B4474 48 00 00 08 */ b .L_802B753C -.L_802B7538: -/* 802B7538 002B4478 38 60 00 00 */ li r3, 0 -.L_802B753C: -/* 802B753C 002B447C 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802B7540 002B4480 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802B7544 002B4484 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 802B7548 002B4488 7C 08 03 A6 */ mtlr r0 -/* 802B754C 002B448C 38 21 00 20 */ addi r1, r1, 0x20 -/* 802B7550 002B4490 4E 80 00 20 */ blr -.endfn fallTreasure__Q34Game11OtakaraBase3ObjFb - -.fn isDropTreasure__Q34Game11OtakaraBase3ObjFv, global -/* 802B7554 002B4494 C0 23 02 E4 */ lfs f1, 0x2e4(r3) -/* 802B7558 002B4498 C0 02 DF 30 */ lfs f0, lbl_8051C290@sda21(r2) -/* 802B755C 002B449C FC 01 00 00 */ fcmpu cr0, f1, f0 -/* 802B7560 002B44A0 41 82 00 14 */ beq .L_802B7574 -/* 802B7564 002B44A4 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 802B7568 002B44A8 40 81 00 0C */ ble .L_802B7574 -/* 802B756C 002B44AC 38 60 00 00 */ li r3, 0 -/* 802B7570 002B44B0 4E 80 00 20 */ blr -.L_802B7574: -/* 802B7574 002B44B4 38 60 00 01 */ li r3, 1 -/* 802B7578 002B44B8 4E 80 00 20 */ blr -.endfn isDropTreasure__Q34Game11OtakaraBase3ObjFv - -.fn damageTreasure__Q34Game11OtakaraBase3ObjFf, global -/* 802B757C 002B44BC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B7580 002B44C0 7C 08 02 A6 */ mflr r0 -/* 802B7584 002B44C4 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B7588 002B44C8 80 03 02 E0 */ lwz r0, 0x2e0(r3) -/* 802B758C 002B44CC 28 00 00 00 */ cmplwi r0, 0 -/* 802B7590 002B44D0 41 82 00 28 */ beq .L_802B75B8 -/* 802B7594 002B44D4 C0 43 02 E4 */ lfs f2, 0x2e4(r3) -/* 802B7598 002B44D8 C0 02 DF 30 */ lfs f0, lbl_8051C290@sda21(r2) -/* 802B759C 002B44DC EC 22 08 28 */ fsubs f1, f2, f1 -/* 802B75A0 002B44E0 D0 23 02 E4 */ stfs f1, 0x2e4(r3) -/* 802B75A4 002B44E4 C0 23 02 E4 */ lfs f1, 0x2e4(r3) -/* 802B75A8 002B44E8 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 802B75AC 002B44EC 40 80 00 14 */ bge .L_802B75C0 -/* 802B75B0 002B44F0 D0 03 02 E4 */ stfs f0, 0x2e4(r3) -/* 802B75B4 002B44F4 48 00 00 0C */ b .L_802B75C0 -.L_802B75B8: -/* 802B75B8 002B44F8 C0 42 DF 38 */ lfs f2, lbl_8051C298@sda21(r2) -/* 802B75BC 002B44FC 4B E4 EA 71 */ bl addDamage__Q24Game9EnemyBaseFff -.L_802B75C0: -/* 802B75C0 002B4500 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B75C4 002B4504 7C 08 03 A6 */ mtlr r0 -/* 802B75C8 002B4508 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B75CC 002B450C 4E 80 00 20 */ blr -.endfn damageTreasure__Q34Game11OtakaraBase3ObjFf - -.fn attackTarget__Q34Game11OtakaraBase3ObjFv, global -/* 802B75D0 002B4510 94 21 FF 30 */ stwu r1, -0xd0(r1) -/* 802B75D4 002B4514 7C 08 02 A6 */ mflr r0 -/* 802B75D8 002B4518 90 01 00 D4 */ stw r0, 0xd4(r1) -/* 802B75DC 002B451C DB E1 00 C0 */ stfd f31, 0xc0(r1) -/* 802B75E0 002B4520 F3 E1 00 C8 */ psq_st f31, 200(r1), 0, qr0 -/* 802B75E4 002B4524 DB C1 00 B0 */ stfd f30, 0xb0(r1) -/* 802B75E8 002B4528 F3 C1 00 B8 */ psq_st f30, 184(r1), 0, qr0 -/* 802B75EC 002B452C DB A1 00 A0 */ stfd f29, 0xa0(r1) -/* 802B75F0 002B4530 F3 A1 00 A8 */ psq_st f29, 168(r1), 0, qr0 -/* 802B75F4 002B4534 93 E1 00 9C */ stw r31, 0x9c(r1) -/* 802B75F8 002B4538 93 C1 00 98 */ stw r30, 0x98(r1) -/* 802B75FC 002B453C 7C 7E 1B 78 */ mr r30, r3 -/* 802B7600 002B4540 38 61 00 24 */ addi r3, r1, 0x24 -/* 802B7604 002B4544 80 BE 00 C0 */ lwz r5, 0xc0(r30) -/* 802B7608 002B4548 38 81 00 14 */ addi r4, r1, 0x14 -/* 802B760C 002B454C C0 5E 01 90 */ lfs f2, 0x190(r30) -/* 802B7610 002B4550 C0 05 05 64 */ lfs f0, 0x564(r5) -/* 802B7614 002B4554 C0 25 05 8C */ lfs f1, 0x58c(r5) -/* 802B7618 002B4558 C0 65 05 B4 */ lfs f3, 0x5b4(r5) -/* 802B761C 002B455C EF E2 00 2A */ fadds f31, f2, f0 -/* 802B7620 002B4560 C0 1E 01 8C */ lfs f0, 0x18c(r30) -/* 802B7624 002B4564 EF C2 08 28 */ fsubs f30, f2, f1 -/* 802B7628 002B4568 EF A3 00 F2 */ fmuls f29, f3, f3 -/* 802B762C 002B456C D0 01 00 14 */ stfs f0, 0x14(r1) -/* 802B7630 002B4570 C0 1E 01 90 */ lfs f0, 0x190(r30) -/* 802B7634 002B4574 D0 01 00 18 */ stfs f0, 0x18(r1) -/* 802B7638 002B4578 C0 1E 01 94 */ lfs f0, 0x194(r30) -/* 802B763C 002B457C D0 01 00 1C */ stfs f0, 0x1c(r1) -/* 802B7640 002B4580 D0 61 00 20 */ stfs f3, 0x20(r1) -/* 802B7644 002B4584 4B F7 6D 5D */ bl __ct__Q24Game15CellIteratorArgFRQ23Sys6Sphere -/* 802B7648 002B4588 38 00 00 01 */ li r0, 1 -/* 802B764C 002B458C 38 61 00 44 */ addi r3, r1, 0x44 -/* 802B7650 002B4590 98 01 00 40 */ stb r0, 0x40(r1) -/* 802B7654 002B4594 38 81 00 24 */ addi r4, r1, 0x24 -/* 802B7658 002B4598 4B F7 6D 89 */ bl __ct__Q24Game12CellIteratorFRQ24Game15CellIteratorArg -/* 802B765C 002B459C 38 61 00 44 */ addi r3, r1, 0x44 -/* 802B7660 002B45A0 4B F7 6D FD */ bl first__Q24Game12CellIteratorFv -/* 802B7664 002B45A4 48 00 00 D4 */ b .L_802B7738 -.L_802B7668: -/* 802B7668 002B45A8 38 61 00 44 */ addi r3, r1, 0x44 -/* 802B766C 002B45AC 4B F7 6E D9 */ bl __ml__Q24Game12CellIteratorFv -/* 802B7670 002B45B0 81 83 00 00 */ lwz r12, 0(r3) -/* 802B7674 002B45B4 7C 7F 1B 78 */ mr r31, r3 -/* 802B7678 002B45B8 81 8C 00 A8 */ lwz r12, 0xa8(r12) -/* 802B767C 002B45BC 7D 89 03 A6 */ mtctr r12 -/* 802B7680 002B45C0 4E 80 04 21 */ bctrl -/* 802B7684 002B45C4 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B7688 002B45C8 41 82 00 A8 */ beq .L_802B7730 -/* 802B768C 002B45CC 7F E3 FB 78 */ mr r3, r31 -/* 802B7690 002B45D0 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B7694 002B45D4 81 8C 00 1C */ lwz r12, 0x1c(r12) -/* 802B7698 002B45D8 7D 89 03 A6 */ mtctr r12 -/* 802B769C 002B45DC 4E 80 04 21 */ bctrl -/* 802B76A0 002B45E0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B76A4 002B45E4 40 82 00 20 */ bne .L_802B76C4 -/* 802B76A8 002B45E8 7F E3 FB 78 */ mr r3, r31 -/* 802B76AC 002B45EC 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B76B0 002B45F0 81 8C 00 18 */ lwz r12, 0x18(r12) -/* 802B76B4 002B45F4 7D 89 03 A6 */ mtctr r12 -/* 802B76B8 002B45F8 4E 80 04 21 */ bctrl -/* 802B76BC 002B45FC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B76C0 002B4600 41 82 00 70 */ beq .L_802B7730 -.L_802B76C4: -/* 802B76C4 002B4604 7F E4 FB 78 */ mr r4, r31 -/* 802B76C8 002B4608 38 61 00 08 */ addi r3, r1, 8 -/* 802B76CC 002B460C 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B76D0 002B4610 81 8C 00 08 */ lwz r12, 8(r12) -/* 802B76D4 002B4614 7D 89 03 A6 */ mtctr r12 -/* 802B76D8 002B4618 4E 80 04 21 */ bctrl -/* 802B76DC 002B461C C0 01 00 0C */ lfs f0, 0xc(r1) -/* 802B76E0 002B4620 C0 41 00 08 */ lfs f2, 8(r1) -/* 802B76E4 002B4624 FC 1F 00 40 */ fcmpo cr0, f31, f0 -/* 802B76E8 002B4628 C0 61 00 10 */ lfs f3, 0x10(r1) -/* 802B76EC 002B462C 40 81 00 44 */ ble .L_802B7730 -/* 802B76F0 002B4630 FC 1E 00 40 */ fcmpo cr0, f30, f0 -/* 802B76F4 002B4634 40 80 00 3C */ bge .L_802B7730 -/* 802B76F8 002B4638 C0 1E 01 94 */ lfs f0, 0x194(r30) -/* 802B76FC 002B463C C0 3E 01 8C */ lfs f1, 0x18c(r30) -/* 802B7700 002B4640 EC 00 18 28 */ fsubs f0, f0, f3 -/* 802B7704 002B4644 EC 21 10 28 */ fsubs f1, f1, f2 -/* 802B7708 002B4648 EC 00 00 32 */ fmuls f0, f0, f0 -/* 802B770C 002B464C EC 01 00 7A */ fmadds f0, f1, f1, f0 -/* 802B7710 002B4650 FC 00 E8 40 */ fcmpo cr0, f0, f29 -/* 802B7714 002B4654 40 80 00 1C */ bge .L_802B7730 -/* 802B7718 002B4658 7F C3 F3 78 */ mr r3, r30 -/* 802B771C 002B465C 7F E4 FB 78 */ mr r4, r31 -/* 802B7720 002B4660 81 9E 00 00 */ lwz r12, 0(r30) -/* 802B7724 002B4664 81 8C 02 FC */ lwz r12, 0x2fc(r12) -/* 802B7728 002B4668 7D 89 03 A6 */ mtctr r12 -/* 802B772C 002B466C 4E 80 04 21 */ bctrl -.L_802B7730: -/* 802B7730 002B4670 38 61 00 44 */ addi r3, r1, 0x44 -/* 802B7734 002B4674 4B F7 6D CD */ bl next__Q24Game12CellIteratorFv -.L_802B7738: -/* 802B7738 002B4678 38 61 00 44 */ addi r3, r1, 0x44 -/* 802B773C 002B467C 4B F7 6D F9 */ bl isDone__Q24Game12CellIteratorFv -/* 802B7740 002B4680 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B7744 002B4684 41 82 FF 24 */ beq .L_802B7668 -/* 802B7748 002B4688 E3 E1 00 C8 */ psq_l f31, 200(r1), 0, qr0 -/* 802B774C 002B468C CB E1 00 C0 */ lfd f31, 0xc0(r1) -/* 802B7750 002B4690 E3 C1 00 B8 */ psq_l f30, 184(r1), 0, qr0 -/* 802B7754 002B4694 CB C1 00 B0 */ lfd f30, 0xb0(r1) -/* 802B7758 002B4698 E3 A1 00 A8 */ psq_l f29, 168(r1), 0, qr0 -/* 802B775C 002B469C CB A1 00 A0 */ lfd f29, 0xa0(r1) -/* 802B7760 002B46A0 83 E1 00 9C */ lwz r31, 0x9c(r1) -/* 802B7764 002B46A4 80 01 00 D4 */ lwz r0, 0xd4(r1) -/* 802B7768 002B46A8 83 C1 00 98 */ lwz r30, 0x98(r1) -/* 802B776C 002B46AC 7C 08 03 A6 */ mtlr r0 -/* 802B7770 002B46B0 38 21 00 D0 */ addi r1, r1, 0xd0 -/* 802B7774 002B46B4 4E 80 00 20 */ blr -.endfn attackTarget__Q34Game11OtakaraBase3ObjFv - -.fn interactCreature__Q34Game11OtakaraBase3ObjFPQ24Game8Creature, weak -/* 802B7778 002B46B8 4E 80 00 20 */ blr -.endfn interactCreature__Q34Game11OtakaraBase3ObjFPQ24Game8Creature - -.fn createTreasureFallEffect__Q34Game11OtakaraBase3ObjFv, global -/* 802B777C 002B46BC 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 802B7780 002B46C0 7C 08 02 A6 */ mflr r0 -/* 802B7784 002B46C4 38 82 DF 6C */ addi r4, r2, lbl_8051C2CC@sda21 -/* 802B7788 002B46C8 90 01 00 54 */ stw r0, 0x54(r1) -/* 802B778C 002B46CC 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 802B7790 002B46D0 7C 7F 1B 78 */ mr r31, r3 -/* 802B7794 002B46D4 80 63 01 74 */ lwz r3, 0x174(r3) -/* 802B7798 002B46D8 48 18 78 4D */ bl getJoint__Q28SysShape5ModelFPc -/* 802B779C 002B46DC 48 17 21 05 */ bl getWorldMatrix__Q28SysShape5JointFv -/* 802B77A0 002B46E0 C0 3F 02 F0 */ lfs f1, 0x2f0(r31) -/* 802B77A4 002B46E4 C0 02 DF 58 */ lfs f0, lbl_8051C2B8@sda21(r2) -/* 802B77A8 002B46E8 C0 83 00 0C */ lfs f4, 0xc(r3) -/* 802B77AC 002B46EC EC 01 00 28 */ fsubs f0, f1, f0 -/* 802B77B0 002B46F0 C0 22 DF 74 */ lfs f1, lbl_8051C2D4@sda21(r2) -/* 802B77B4 002B46F4 C0 63 00 1C */ lfs f3, 0x1c(r3) -/* 802B77B8 002B46F8 C0 43 00 2C */ lfs f2, 0x2c(r3) -/* 802B77BC 002B46FC EC A1 00 32 */ fmuls f5, f1, f0 -/* 802B77C0 002B4700 C0 02 DF 38 */ lfs f0, lbl_8051C298@sda21(r2) -/* 802B77C4 002B4704 D0 81 00 20 */ stfs f4, 0x20(r1) -/* 802B77C8 002B4708 FC 05 00 40 */ fcmpo cr0, f5, f0 -/* 802B77CC 002B470C D0 61 00 24 */ stfs f3, 0x24(r1) -/* 802B77D0 002B4710 D0 41 00 28 */ stfs f2, 0x28(r1) -/* 802B77D4 002B4714 40 80 00 10 */ bge .L_802B77E4 -/* 802B77D8 002B4718 EC 00 28 2A */ fadds f0, f0, f5 -/* 802B77DC 002B471C C0 22 DF 64 */ lfs f1, lbl_8051C2C4@sda21(r2) -/* 802B77E0 002B4720 EC A1 00 32 */ fmuls f5, f1, f0 -.L_802B77E4: -/* 802B77E4 002B4724 80 81 00 20 */ lwz r4, 0x20(r1) -/* 802B77E8 002B4728 3C 60 80 4B */ lis r3, __vt__Q23efx5TBase@ha -/* 802B77EC 002B472C 80 C1 00 24 */ lwz r6, 0x24(r1) -/* 802B77F0 002B4730 38 03 A7 F8 */ addi r0, r3, __vt__Q23efx5TBase@l -/* 802B77F4 002B4734 80 A1 00 28 */ lwz r5, 0x28(r1) -/* 802B77F8 002B4738 3C 60 80 4B */ lis r3, __vt__Q23efx3Arg@ha -/* 802B77FC 002B473C 90 81 00 08 */ stw r4, 8(r1) -/* 802B7800 002B4740 3C 80 80 4E */ lis r4, __vt__Q23efx8TSimple1@ha -/* 802B7804 002B4744 39 23 A7 EC */ addi r9, r3, __vt__Q23efx3Arg@l -/* 802B7808 002B4748 3D 00 80 4B */ lis r8, __vt__Q23efx8ArgScale@ha -/* 802B780C 002B474C 90 C1 00 0C */ stw r6, 0xc(r1) -/* 802B7810 002B4750 3C 60 80 4E */ lis r3, __vt__Q23efx12TOtaPartsoff@ha -/* 802B7814 002B4754 C0 41 00 08 */ lfs f2, 8(r1) -/* 802B7818 002B4758 38 C0 02 7F */ li r6, 0x27f -/* 802B781C 002B475C 90 A1 00 10 */ stw r5, 0x10(r1) -/* 802B7820 002B4760 38 A0 00 00 */ li r5, 0 -/* 802B7824 002B4764 C0 21 00 0C */ lfs f1, 0xc(r1) -/* 802B7828 002B4768 38 E4 6A 78 */ addi r7, r4, __vt__Q23efx8TSimple1@l -/* 802B782C 002B476C 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B7830 002B4770 39 08 A2 DC */ addi r8, r8, __vt__Q23efx8ArgScale@l -/* 802B7834 002B4774 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 802B7838 002B4778 38 03 6E 44 */ addi r0, r3, __vt__Q23efx12TOtaPartsoff@l -/* 802B783C 002B477C 91 21 00 2C */ stw r9, 0x2c(r1) -/* 802B7840 002B4780 38 61 00 14 */ addi r3, r1, 0x14 -/* 802B7844 002B4784 38 81 00 2C */ addi r4, r1, 0x2c -/* 802B7848 002B4788 90 E1 00 14 */ stw r7, 0x14(r1) -/* 802B784C 002B478C D0 41 00 30 */ stfs f2, 0x30(r1) -/* 802B7850 002B4790 D0 21 00 34 */ stfs f1, 0x34(r1) -/* 802B7854 002B4794 D0 01 00 38 */ stfs f0, 0x38(r1) -/* 802B7858 002B4798 91 01 00 2C */ stw r8, 0x2c(r1) -/* 802B785C 002B479C D0 A1 00 3C */ stfs f5, 0x3c(r1) -/* 802B7860 002B47A0 B0 C1 00 18 */ sth r6, 0x18(r1) -/* 802B7864 002B47A4 90 A1 00 1C */ stw r5, 0x1c(r1) -/* 802B7868 002B47A8 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B786C 002B47AC 48 0F C0 61 */ bl create__Q23efx12TOtaPartsoffFPQ23efx3Arg -/* 802B7870 002B47B0 7F E3 FB 78 */ mr r3, r31 -/* 802B7874 002B47B4 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B7878 002B47B8 81 8C 00 F4 */ lwz r12, 0xf4(r12) -/* 802B787C 002B47BC 7D 89 03 A6 */ mtctr r12 -/* 802B7880 002B47C0 4E 80 04 21 */ bctrl -/* 802B7884 002B47C4 81 83 00 00 */ lwz r12, 0(r3) -/* 802B7888 002B47C8 38 80 59 67 */ li r4, 0x5967 -/* 802B788C 002B47CC 38 A0 00 00 */ li r5, 0 -/* 802B7890 002B47D0 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 802B7894 002B47D4 7D 89 03 A6 */ mtctr r12 -/* 802B7898 002B47D8 4E 80 04 21 */ bctrl -/* 802B789C 002B47DC 80 01 00 54 */ lwz r0, 0x54(r1) -/* 802B78A0 002B47E0 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 802B78A4 002B47E4 7C 08 03 A6 */ mtlr r0 -/* 802B78A8 002B47E8 38 21 00 50 */ addi r1, r1, 0x50 -/* 802B78AC 002B47EC 4E 80 00 20 */ blr -.endfn createTreasureFallEffect__Q34Game11OtakaraBase3ObjFv - -.fn startEscapeSE__Q34Game11OtakaraBase3ObjFv, global -/* 802B78B0 002B47F0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B78B4 002B47F4 7C 08 02 A6 */ mflr r0 -/* 802B78B8 002B47F8 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B78BC 002B47FC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B78C0 002B4800 7C 7F 1B 78 */ mr r31, r3 -/* 802B78C4 002B4804 80 03 02 30 */ lwz r0, 0x230(r3) -/* 802B78C8 002B4808 28 00 00 00 */ cmplwi r0, 0 -/* 802B78CC 002B480C 40 82 00 58 */ bne .L_802B7924 -/* 802B78D0 002B4810 C0 3F 02 CC */ lfs f1, 0x2cc(r31) -/* 802B78D4 002B4814 C0 02 DF 78 */ lfs f0, lbl_8051C2D8@sda21(r2) -/* 802B78D8 002B4818 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 802B78DC 002B481C 40 81 00 38 */ ble .L_802B7914 -/* 802B78E0 002B4820 81 83 00 00 */ lwz r12, 0(r3) -/* 802B78E4 002B4824 81 8C 00 F4 */ lwz r12, 0xf4(r12) -/* 802B78E8 002B4828 7D 89 03 A6 */ mtctr r12 -/* 802B78EC 002B482C 4E 80 04 21 */ bctrl -/* 802B78F0 002B4830 81 83 00 00 */ lwz r12, 0(r3) -/* 802B78F4 002B4834 38 80 58 F0 */ li r4, 0x58f0 -/* 802B78F8 002B4838 38 A0 00 00 */ li r5, 0 -/* 802B78FC 002B483C 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 802B7900 002B4840 7D 89 03 A6 */ mtctr r12 -/* 802B7904 002B4844 4E 80 04 21 */ bctrl -/* 802B7908 002B4848 C0 02 DF 30 */ lfs f0, lbl_8051C290@sda21(r2) -/* 802B790C 002B484C D0 1F 02 CC */ stfs f0, 0x2cc(r31) -/* 802B7910 002B4850 48 00 00 14 */ b .L_802B7924 -.L_802B7914: -/* 802B7914 002B4854 80 6D 9A EC */ lwz r3, sys@sda21(r13) -/* 802B7918 002B4858 C0 03 00 54 */ lfs f0, 0x54(r3) -/* 802B791C 002B485C EC 01 00 2A */ fadds f0, f1, f0 -/* 802B7920 002B4860 D0 1F 02 CC */ stfs f0, 0x2cc(r31) -.L_802B7924: -/* 802B7924 002B4864 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B7928 002B4868 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B792C 002B486C 7C 08 03 A6 */ mtlr r0 -/* 802B7930 002B4870 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B7934 002B4874 4E 80 00 20 */ blr -.endfn startEscapeSE__Q34Game11OtakaraBase3ObjFv - -.fn initBombOtakara__Q34Game11OtakaraBase3ObjFv, global -/* 802B7938 002B4878 94 21 FF B0 */ stwu r1, -0x50(r1) -/* 802B793C 002B487C 7C 08 02 A6 */ mflr r0 -/* 802B7940 002B4880 90 01 00 54 */ stw r0, 0x54(r1) -/* 802B7944 002B4884 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 802B7948 002B4888 93 C1 00 48 */ stw r30, 0x48(r1) -/* 802B794C 002B488C 7C 7E 1B 78 */ mr r30, r3 -/* 802B7950 002B4890 80 03 02 30 */ lwz r0, 0x230(r3) -/* 802B7954 002B4894 28 00 00 00 */ cmplwi r0, 0 -/* 802B7958 002B4898 40 82 00 C4 */ bne .L_802B7A1C -/* 802B795C 002B489C 80 6D 91 E0 */ lwz r3, generalEnemyMgr__4Game@sda21(r13) -/* 802B7960 002B48A0 38 80 00 24 */ li r4, 0x24 -/* 802B7964 002B48A4 4B E5 63 41 */ bl getEnemyMgr__Q24Game15GeneralEnemyMgrFi -/* 802B7968 002B48A8 7C 7F 1B 79 */ or. r31, r3, r3 -/* 802B796C 002B48AC 41 82 00 B0 */ beq .L_802B7A1C -/* 802B7970 002B48B0 38 61 00 08 */ addi r3, r1, 8 -/* 802B7974 002B48B4 4B E7 72 B1 */ bl __ct__Q24Game13EnemyBirthArgFv -/* 802B7978 002B48B8 C0 1E 01 FC */ lfs f0, 0x1fc(r30) -/* 802B797C 002B48BC 7F E3 FB 78 */ mr r3, r31 -/* 802B7980 002B48C0 38 81 00 08 */ addi r4, r1, 8 -/* 802B7984 002B48C4 D0 01 00 14 */ stfs f0, 0x14(r1) -/* 802B7988 002B48C8 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B798C 002B48CC 81 8C 00 70 */ lwz r12, 0x70(r12) -/* 802B7990 002B48D0 7D 89 03 A6 */ mtctr r12 -/* 802B7994 002B48D4 4E 80 04 21 */ bctrl -/* 802B7998 002B48D8 90 7E 02 30 */ stw r3, 0x230(r30) -/* 802B799C 002B48DC 80 7E 02 30 */ lwz r3, 0x230(r30) -/* 802B79A0 002B48E0 28 03 00 00 */ cmplwi r3, 0 -/* 802B79A4 002B48E4 41 82 00 78 */ beq .L_802B7A1C -/* 802B79A8 002B48E8 38 80 00 00 */ li r4, 0 -/* 802B79AC 002B48EC 4B E8 36 1D */ bl init__Q24Game8CreatureFPQ24Game15CreatureInitArg -/* 802B79B0 002B48F0 80 7E 01 74 */ lwz r3, 0x174(r30) -/* 802B79B4 002B48F4 38 82 DF 3C */ addi r4, r2, lbl_8051C29C@sda21 -/* 802B79B8 002B48F8 48 18 76 2D */ bl getJoint__Q28SysShape5ModelFPc -/* 802B79BC 002B48FC 48 17 1E E5 */ bl getWorldMatrix__Q28SysShape5JointFv -/* 802B79C0 002B4900 7C 64 1B 78 */ mr r4, r3 -/* 802B79C4 002B4904 80 7E 02 30 */ lwz r3, 0x230(r30) -/* 802B79C8 002B4908 4B EE 80 E1 */ bl startCapture__Q24Game8CreatureFP7Matrixf -/* 802B79CC 002B490C 80 BE 02 30 */ lwz r5, 0x230(r30) -/* 802B79D0 002B4910 3C 60 62 6F */ lis r3, 0x626F6479@ha -/* 802B79D4 002B4914 C0 22 DF 58 */ lfs f1, lbl_8051C2B8@sda21(r2) -/* 802B79D8 002B4918 38 83 64 79 */ addi r4, r3, 0x626F6479@l -/* 802B79DC 002B491C 93 C5 02 CC */ stw r30, 0x2cc(r5) -/* 802B79E0 002B4920 C0 02 DF 50 */ lfs f0, lbl_8051C2B0@sda21(r2) -/* 802B79E4 002B4924 D0 3E 02 EC */ stfs f1, 0x2ec(r30) -/* 802B79E8 002B4928 D0 1E 02 F0 */ stfs f0, 0x2f0(r30) -/* 802B79EC 002B492C 80 7E 01 14 */ lwz r3, 0x114(r30) -/* 802B79F0 002B4930 4B E7 E4 55 */ bl getCollPart__8CollTreeFUl -/* 802B79F4 002B4934 C0 22 DF 7C */ lfs f1, lbl_8051C2DC@sda21(r2) -/* 802B79F8 002B4938 C0 02 DF 50 */ lfs f0, lbl_8051C2B0@sda21(r2) -/* 802B79FC 002B493C D0 23 00 1C */ stfs f1, 0x1c(r3) -/* 802B7A00 002B4940 C0 3E 02 EC */ lfs f1, 0x2ec(r30) -/* 802B7A04 002B4944 D0 23 00 24 */ stfs f1, 0x24(r3) -/* 802B7A08 002B4948 80 7E 01 14 */ lwz r3, 0x114(r30) -/* 802B7A0C 002B494C 80 63 00 00 */ lwz r3, 0(r3) -/* 802B7A10 002B4950 D0 03 00 1C */ stfs f0, 0x1c(r3) -/* 802B7A14 002B4954 C0 1E 02 EC */ lfs f0, 0x2ec(r30) -/* 802B7A18 002B4958 D0 03 00 24 */ stfs f0, 0x24(r3) -.L_802B7A1C: -/* 802B7A1C 002B495C 80 01 00 54 */ lwz r0, 0x54(r1) -/* 802B7A20 002B4960 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 802B7A24 002B4964 83 C1 00 48 */ lwz r30, 0x48(r1) -/* 802B7A28 002B4968 7C 08 03 A6 */ mtlr r0 -/* 802B7A2C 002B496C 38 21 00 50 */ addi r1, r1, 0x50 -/* 802B7A30 002B4970 4E 80 00 20 */ blr -.endfn initBombOtakara__Q34Game11OtakaraBase3ObjFv - -.fn isTransitChaseState__Q34Game11OtakaraBase3ObjFv, global -/* 802B7A34 002B4974 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B7A38 002B4978 7C 08 02 A6 */ mflr r0 -/* 802B7A3C 002B497C 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B7A40 002B4980 80 83 01 E0 */ lwz r4, 0x1e0(r3) -/* 802B7A44 002B4984 54 80 06 F7 */ rlwinm. r0, r4, 0, 0x1b, 0x1b -/* 802B7A48 002B4988 40 82 00 18 */ bne .L_802B7A60 -/* 802B7A4C 002B498C 54 80 07 BD */ rlwinm. r0, r4, 0, 0x1e, 0x1e -/* 802B7A50 002B4990 40 82 00 10 */ bne .L_802B7A60 -/* 802B7A54 002B4994 80 03 01 F4 */ lwz r0, 0x1f4(r3) -/* 802B7A58 002B4998 2C 00 00 00 */ cmpwi r0, 0 -/* 802B7A5C 002B499C 41 82 00 0C */ beq .L_802B7A68 -.L_802B7A60: -/* 802B7A60 002B49A0 38 60 00 01 */ li r3, 1 -/* 802B7A64 002B49A4 48 00 00 28 */ b .L_802B7A8C -.L_802B7A68: -/* 802B7A68 002B49A8 80 C3 00 C0 */ lwz r6, 0xc0(r3) -/* 802B7A6C 002B49AC 38 80 00 00 */ li r4, 0 -/* 802B7A70 002B49B0 38 A0 00 00 */ li r5, 0 -/* 802B7A74 002B49B4 C0 26 04 24 */ lfs f1, 0x424(r6) -/* 802B7A78 002B49B8 C0 46 03 D4 */ lfs f2, 0x3d4(r6) -/* 802B7A7C 002B49BC 4B E5 AC 79 */ bl "getNearestNavi__Q24Game9EnemyFuncFPQ24Game8CreatureffPfP23Condition" -/* 802B7A80 002B49C0 7C 03 00 D0 */ neg r0, r3 -/* 802B7A84 002B49C4 7C 00 1B 78 */ or r0, r0, r3 -/* 802B7A88 002B49C8 54 03 0F FE */ srwi r3, r0, 0x1f -.L_802B7A8C: -/* 802B7A8C 002B49CC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B7A90 002B49D0 7C 08 03 A6 */ mtlr r0 -/* 802B7A94 002B49D4 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B7A98 002B49D8 4E 80 00 20 */ blr -.endfn isTransitChaseState__Q34Game11OtakaraBase3ObjFv - -.fn stimulateBomb__Q34Game11OtakaraBase3ObjFv, global -/* 802B7A9C 002B49DC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B7AA0 002B49E0 7C 08 02 A6 */ mflr r0 -/* 802B7AA4 002B49E4 C0 02 DF 80 */ lfs f0, lbl_8051C2E0@sda21(r2) -/* 802B7AA8 002B49E8 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B7AAC 002B49EC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B7AB0 002B49F0 7C 7F 1B 78 */ mr r31, r3 -/* 802B7AB4 002B49F4 80 8D 9A EC */ lwz r4, sys@sda21(r13) -/* 802B7AB8 002B49F8 C0 43 02 E8 */ lfs f2, 0x2e8(r3) -/* 802B7ABC 002B49FC C0 24 00 54 */ lfs f1, 0x54(r4) -/* 802B7AC0 002B4A00 EC 22 08 2A */ fadds f1, f2, f1 -/* 802B7AC4 002B4A04 D0 23 02 E8 */ stfs f1, 0x2e8(r3) -/* 802B7AC8 002B4A08 C0 23 02 E8 */ lfs f1, 0x2e8(r3) -/* 802B7ACC 002B4A0C FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 802B7AD0 002B4A10 40 81 00 3C */ ble .L_802B7B0C -/* 802B7AD4 002B4A14 80 7F 02 30 */ lwz r3, 0x230(r31) -/* 802B7AD8 002B4A18 28 03 00 00 */ cmplwi r3, 0 -/* 802B7ADC 002B4A1C 41 82 00 30 */ beq .L_802B7B0C -/* 802B7AE0 002B4A20 81 83 00 00 */ lwz r12, 0(r3) -/* 802B7AE4 002B4A24 81 8C 00 A8 */ lwz r12, 0xa8(r12) -/* 802B7AE8 002B4A28 7D 89 03 A6 */ mtctr r12 -/* 802B7AEC 002B4A2C 4E 80 04 21 */ bctrl -/* 802B7AF0 002B4A30 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B7AF4 002B4A34 41 82 00 18 */ beq .L_802B7B0C -/* 802B7AF8 002B4A38 80 1F 01 E0 */ lwz r0, 0x1e0(r31) -/* 802B7AFC 002B4A3C 54 00 06 B0 */ rlwinm r0, r0, 0, 0x1a, 0x18 -/* 802B7B00 002B4A40 90 1F 01 E0 */ stw r0, 0x1e0(r31) -/* 802B7B04 002B4A44 80 7F 02 30 */ lwz r3, 0x230(r31) -/* 802B7B08 002B4A48 48 09 35 C9 */ bl forceBomb__Q34Game4Bomb3ObjFv -.L_802B7B0C: -/* 802B7B0C 002B4A4C 80 1F 01 E0 */ lwz r0, 0x1e0(r31) -/* 802B7B10 002B4A50 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B7B14 002B4A54 54 03 D7 FE */ rlwinm r3, r0, 0x1a, 0x1f, 0x1f -/* 802B7B18 002B4A58 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B7B1C 002B4A5C 7C 08 03 A6 */ mtlr r0 -/* 802B7B20 002B4A60 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B7B24 002B4A64 4E 80 00 20 */ blr -.endfn stimulateBomb__Q34Game11OtakaraBase3ObjFv - -.fn getChaseTargetCreature__Q34Game11OtakaraBase3ObjFv, global -/* 802B7B28 002B4A68 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B7B2C 002B4A6C 7C 08 02 A6 */ mflr r0 -/* 802B7B30 002B4A70 38 80 00 00 */ li r4, 0 -/* 802B7B34 002B4A74 38 A0 00 00 */ li r5, 0 -/* 802B7B38 002B4A78 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B7B3C 002B4A7C 38 C0 00 00 */ li r6, 0 -/* 802B7B40 002B4A80 80 E3 00 C0 */ lwz r7, 0xc0(r3) -/* 802B7B44 002B4A84 C0 27 04 24 */ lfs f1, 0x424(r7) -/* 802B7B48 002B4A88 C0 47 03 D4 */ lfs f2, 0x3d4(r7) -/* 802B7B4C 002B4A8C 4B E5 B5 05 */ bl "getNearestPikminOrNavi__Q24Game9EnemyFuncFPQ24Game8CreatureffPfP23ConditionP23Condition" -/* 802B7B50 002B4A90 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B7B54 002B4A94 7C 08 03 A6 */ mtlr r0 -/* 802B7B58 002B4A98 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B7B5C 002B4A9C 4E 80 00 20 */ blr -.endfn getChaseTargetCreature__Q34Game11OtakaraBase3ObjFv - -.fn satisfy__Q24Game30ConditionNotStickClientAndItemFPQ24Game4Piki, weak -/* 802B7B60 002B4AA0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B7B64 002B4AA4 7C 08 02 A6 */ mflr r0 -/* 802B7B68 002B4AA8 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B7B6C 002B4AAC 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B7B70 002B4AB0 7C 9F 23 78 */ mr r31, r4 -/* 802B7B74 002B4AB4 93 C1 00 08 */ stw r30, 8(r1) -/* 802B7B78 002B4AB8 7C 7E 1B 78 */ mr r30, r3 -/* 802B7B7C 002B4ABC 7F E3 FB 78 */ mr r3, r31 -/* 802B7B80 002B4AC0 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B7B84 002B4AC4 81 8C 00 A8 */ lwz r12, 0xa8(r12) -/* 802B7B88 002B4AC8 7D 89 03 A6 */ mtctr r12 -/* 802B7B8C 002B4ACC 4E 80 04 21 */ bctrl -/* 802B7B90 002B4AD0 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B7B94 002B4AD4 41 82 00 4C */ beq .L_802B7BE0 -/* 802B7B98 002B4AD8 7F E3 FB 78 */ mr r3, r31 -/* 802B7B9C 002B4ADC 81 9F 00 00 */ lwz r12, 0(r31) -/* 802B7BA0 002B4AE0 81 8C 01 C0 */ lwz r12, 0x1c0(r12) -/* 802B7BA4 002B4AE4 7D 89 03 A6 */ mtctr r12 -/* 802B7BA8 002B4AE8 4E 80 04 21 */ bctrl -/* 802B7BAC 002B4AEC 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802B7BB0 002B4AF0 41 82 00 30 */ beq .L_802B7BE0 -/* 802B7BB4 002B4AF4 80 7F 00 F4 */ lwz r3, 0xf4(r31) -/* 802B7BB8 002B4AF8 80 1E 00 04 */ lwz r0, 4(r30) -/* 802B7BBC 002B4AFC 7C 03 00 40 */ cmplw r3, r0 -/* 802B7BC0 002B4B00 41 82 00 20 */ beq .L_802B7BE0 -/* 802B7BC4 002B4B04 80 1E 00 08 */ lwz r0, 8(r30) -/* 802B7BC8 002B4B08 28 00 00 00 */ cmplwi r0, 0 -/* 802B7BCC 002B4B0C 41 82 00 0C */ beq .L_802B7BD8 -/* 802B7BD0 002B4B10 7C 03 00 40 */ cmplw r3, r0 -/* 802B7BD4 002B4B14 41 82 00 0C */ beq .L_802B7BE0 -.L_802B7BD8: -/* 802B7BD8 002B4B18 38 60 00 01 */ li r3, 1 -/* 802B7BDC 002B4B1C 48 00 00 08 */ b .L_802B7BE4 -.L_802B7BE0: -/* 802B7BE0 002B4B20 38 60 00 00 */ li r3, 0 -.L_802B7BE4: -/* 802B7BE4 002B4B24 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B7BE8 002B4B28 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B7BEC 002B4B2C 83 C1 00 08 */ lwz r30, 8(r1) -/* 802B7BF0 002B4B30 7C 08 03 A6 */ mtlr r0 -/* 802B7BF4 002B4B34 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B7BF8 002B4B38 4E 80 00 20 */ blr -.endfn satisfy__Q24Game30ConditionNotStickClientAndItemFPQ24Game4Piki - -.fn __dt__Q34Game11OtakaraBase3ObjFv, weak -/* 802B7BFC 002B4B3C 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802B7C00 002B4B40 7C 08 02 A6 */ mflr r0 -/* 802B7C04 002B4B44 90 01 00 14 */ stw r0, 0x14(r1) -/* 802B7C08 002B4B48 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802B7C0C 002B4B4C 7C 7F 1B 79 */ or. r31, r3, r3 -/* 802B7C10 002B4B50 93 C1 00 08 */ stw r30, 8(r1) -/* 802B7C14 002B4B54 7C 9E 23 78 */ mr r30, r4 -/* 802B7C18 002B4B58 41 82 00 84 */ beq .L_802B7C9C -/* 802B7C1C 002B4B5C 3C 60 80 4D */ lis r3, __vt__Q34Game11OtakaraBase3Obj@ha -/* 802B7C20 002B4B60 38 1F 02 F4 */ addi r0, r31, 0x2f4 -/* 802B7C24 002B4B64 38 83 F0 84 */ addi r4, r3, __vt__Q34Game11OtakaraBase3Obj@l -/* 802B7C28 002B4B68 90 9F 00 00 */ stw r4, 0(r31) -/* 802B7C2C 002B4B6C 38 64 01 B0 */ addi r3, r4, 0x1b0 -/* 802B7C30 002B4B70 38 84 03 24 */ addi r4, r4, 0x324 -/* 802B7C34 002B4B74 90 7F 01 78 */ stw r3, 0x178(r31) -/* 802B7C38 002B4B78 80 7F 01 7C */ lwz r3, 0x17c(r31) -/* 802B7C3C 002B4B7C 90 83 00 00 */ stw r4, 0(r3) -/* 802B7C40 002B4B80 80 7F 01 7C */ lwz r3, 0x17c(r31) -/* 802B7C44 002B4B84 7C 03 00 50 */ subf r0, r3, r0 -/* 802B7C48 002B4B88 90 03 00 0C */ stw r0, 0xc(r3) -/* 802B7C4C 002B4B8C 41 82 00 40 */ beq .L_802B7C8C -/* 802B7C50 002B4B90 3C 60 80 4B */ lis r3, __vt__Q24Game9EnemyBase@ha -/* 802B7C54 002B4B94 38 1F 02 BC */ addi r0, r31, 0x2bc -/* 802B7C58 002B4B98 38 83 A3 24 */ addi r4, r3, __vt__Q24Game9EnemyBase@l -/* 802B7C5C 002B4B9C 38 7F 02 90 */ addi r3, r31, 0x290 -/* 802B7C60 002B4BA0 90 9F 00 00 */ stw r4, 0(r31) -/* 802B7C64 002B4BA4 38 A4 01 B0 */ addi r5, r4, 0x1b0 -/* 802B7C68 002B4BA8 38 C4 02 F8 */ addi r6, r4, 0x2f8 -/* 802B7C6C 002B4BAC 38 80 FF FF */ li r4, -1 -/* 802B7C70 002B4BB0 90 BF 01 78 */ stw r5, 0x178(r31) -/* 802B7C74 002B4BB4 80 BF 01 7C */ lwz r5, 0x17c(r31) -/* 802B7C78 002B4BB8 90 C5 00 00 */ stw r6, 0(r5) -/* 802B7C7C 002B4BBC 80 BF 01 7C */ lwz r5, 0x17c(r31) -/* 802B7C80 002B4BC0 7C 05 00 50 */ subf r0, r5, r0 -/* 802B7C84 002B4BC4 90 05 00 0C */ stw r0, 0xc(r5) -/* 802B7C88 002B4BC8 48 15 99 01 */ bl __dt__5CNodeFv -.L_802B7C8C: -/* 802B7C8C 002B4BCC 7F C0 07 35 */ extsh. r0, r30 -/* 802B7C90 002B4BD0 40 81 00 0C */ ble .L_802B7C9C -/* 802B7C94 002B4BD4 7F E3 FB 78 */ mr r3, r31 -/* 802B7C98 002B4BD8 4B D6 C4 1D */ bl __dl__FPv -.L_802B7C9C: -/* 802B7C9C 002B4BDC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802B7CA0 002B4BE0 7F E3 FB 78 */ mr r3, r31 -/* 802B7CA4 002B4BE4 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802B7CA8 002B4BE8 83 C1 00 08 */ lwz r30, 8(r1) -/* 802B7CAC 002B4BEC 7C 08 03 A6 */ mtlr r0 -/* 802B7CB0 002B4BF0 38 21 00 10 */ addi r1, r1, 0x10 -/* 802B7CB4 002B4BF4 4E 80 00 20 */ blr -.endfn __dt__Q34Game11OtakaraBase3ObjFv - -.fn getDownSmokeScale__Q34Game11OtakaraBase3ObjFv, weak -/* 802B7CB8 002B4BF8 C0 22 DF 84 */ lfs f1, lbl_8051C2E4@sda21(r2) -/* 802B7CBC 002B4BFC 4E 80 00 20 */ blr -.endfn getDownSmokeScale__Q34Game11OtakaraBase3ObjFv - -.fn getCellRadius__Q34Game11OtakaraBase3ObjFv, weak -/* 802B7CC0 002B4C00 C0 23 02 F0 */ lfs f1, 0x2f0(r3) -/* 802B7CC4 002B4C04 4E 80 00 20 */ blr -.endfn getCellRadius__Q34Game11OtakaraBase3ObjFv - -.fn createEffect__Q34Game11OtakaraBase3ObjFv, weak -/* 802B7CC8 002B4C08 4E 80 00 20 */ blr -.endfn createEffect__Q34Game11OtakaraBase3ObjFv diff --git a/asm/plugProjectNishimuraU/Tadpole.s b/asm/plugProjectNishimuraU/Tadpole.s deleted file mode 100644 index 989a1dbaf..000000000 --- a/asm/plugProjectNishimuraU/Tadpole.s +++ /dev/null @@ -1,890 +0,0 @@ -.include "macros.inc" -.section .data, "wa" # 0x8049E220 - 0x804EFC20 -.balign 8 -.obj __vt__Q23efx8TPkDiveB, weak - .4byte 0 - .4byte 0 - .4byte create__Q23efx8TSimple1FPQ23efx3Arg - .4byte forceKill__Q23efx8TSimple1Fv - .4byte fade__Q23efx8TSimple1Fv -.endobj __vt__Q23efx8TPkDiveB -.obj __vt__Q34Game7Tadpole3Obj, global - .4byte 0 - .4byte 0 - .4byte getPosition__Q24Game9EnemyBaseFv - .4byte checkCollision__Q24Game8CreatureFPQ24Game10CellObject - .4byte getBoundingSphere__Q24Game9EnemyBaseFRQ23Sys6Sphere - .4byte collisionUpdatable__Q24Game8CreatureFv - .4byte isPiki__Q24Game8CreatureFv - .4byte isNavi__Q24Game8CreatureFv - .4byte deferPikiCollision__Q24Game10CellObjectFv - .4byte getTypeName__Q24Game8CreatureFv - .4byte getObjType__Q24Game8CreatureFv - .4byte constructor__Q24Game9EnemyBaseFv - .4byte onInit__Q34Game7Tadpole3ObjFPQ24Game15CreatureInitArg - .4byte onKill__Q24Game9EnemyBaseFPQ24Game15CreatureKillArg - .4byte onInitPost__Q24Game9EnemyBaseFPQ24Game15CreatureInitArg - .4byte doAnimation__Q24Game9EnemyBaseFv - .4byte doEntry__Q24Game9EnemyBaseFv - .4byte doSetView__Q24Game9EnemyBaseFi - .4byte doViewCalc__Q24Game9EnemyBaseFv - .4byte doSimulation__Q24Game9EnemyBaseFf - .4byte doDirectDraw__Q34Game7Tadpole3ObjFR8Graphics - .4byte getBodyRadius__Q24Game9EnemyBaseFv - .4byte getCellRadius__Q24Game9EnemyBaseFv - .4byte "initPosition__Q24Game8CreatureFR10Vector3" - .4byte "onInitPosition__Q24Game8CreatureFR10Vector3" - .4byte getFaceDir__Q24Game9EnemyBaseFv - .4byte "setVelocity__Q24Game9EnemyBaseFR10Vector3" - .4byte getVelocity__Q24Game9EnemyBaseFv - .4byte "onSetPosition__Q24Game9EnemyBaseFR10Vector3" - .4byte "onSetPositionPost__Q24Game9EnemyBaseFR10Vector3" - .4byte updateTrMatrix__Q24Game9EnemyBaseFv - .4byte isTeki__Q24Game9EnemyBaseFv - .4byte isPellet__Q24Game8CreatureFv - .4byte inWaterCallback__Q34Game7Tadpole3ObjFPQ24Game8WaterBox - .4byte outWaterCallback__Q34Game7Tadpole3ObjFv - .4byte inWater__Q24Game9EnemyBaseFv - .4byte getFlockMgr__Q24Game8CreatureFv - .4byte onStartCapture__Q24Game8CreatureFv - .4byte onUpdateCapture__Q24Game8CreatureFR7Matrixf - .4byte onEndCapture__Q24Game8CreatureFv - .4byte isAtari__Q24Game8CreatureFv - .4byte setAtari__Q24Game8CreatureFb - .4byte isAlive__Q24Game8CreatureFv - .4byte setAlive__Q24Game8CreatureFb - .4byte isCollisionFlick__Q24Game8CreatureFv - .4byte setCollisionFlick__Q24Game8CreatureFb - .4byte isMovieActor__Q24Game8CreatureFv - .4byte isMovieExtra__Q24Game8CreatureFv - .4byte isMovieMotion__Q24Game8CreatureFv - .4byte setMovieMotion__Q24Game8CreatureFb - .4byte isBuried__Q24Game8CreatureFv - .4byte isFlying__Q24Game9EnemyBaseFv - .4byte isUnderground__Q24Game8CreatureFv - .4byte isLivingThing__Q24Game8CreatureFv - .4byte isDebugCollision__Q24Game8CreatureFv - .4byte setDebugCollision__Q24Game8CreatureFb - .4byte doSave__Q24Game8CreatureFR6Stream - .4byte doLoad__Q24Game8CreatureFR6Stream - .4byte bounceCallback__Q24Game8CreatureFPQ23Sys8Triangle - .4byte collisionCallback__Q24Game9EnemyBaseFRQ24Game9CollEvent - .4byte platCallback__Q24Game8CreatureFRQ24Game9PlatEvent - .4byte getJAIObject__Q24Game9EnemyBaseFv - .4byte getPSCreature__Q24Game9EnemyBaseFv - .4byte getSound_AILOD__Q24Game8CreatureFv - .4byte getSound_PosPtr__Q24Game9EnemyBaseFv - .4byte sound_culling__Q24Game9EnemyBaseFv - .4byte getSound_CurrAnimFrame__Q24Game9EnemyBaseFv - .4byte getSound_CurrAnimSpeed__Q24Game9EnemyBaseFv - .4byte on_movie_begin__Q24Game8CreatureFb - .4byte on_movie_end__Q24Game8CreatureFb - .4byte movieStartAnimation__Q24Game8CreatureFUl - .4byte movieStartDemoAnimation__Q24Game8CreatureFPQ28SysShape8AnimInfo - .4byte movieSetAnimationLastFrame__Q24Game8CreatureFv - .4byte "movieSetTranslation__Q24Game8CreatureFR10Vector3f" - .4byte movieSetFaceDir__Q24Game8CreatureFf - .4byte "movieGotoPosition__Q24Game8CreatureFR10Vector3" - .4byte movieUserCommand__Q24Game8CreatureFUlPQ24Game11MoviePlayer - .4byte getShadowParam__Q34Game7Tadpole3ObjFRQ24Game11ShadowParam - .4byte needShadow__Q24Game9EnemyBaseFv - .4byte getLifeGaugeParam__Q24Game9EnemyBaseFRQ24Game14LifeGaugeParam - .4byte getLODSphere__Q24Game9EnemyBaseFRQ23Sys6Sphere - .4byte getLODCylinder__Q24Game8CreatureFRQ23Sys8Cylinder - .4byte startPick__Q24Game8CreatureFv - .4byte endPick__Q24Game8CreatureFb - .4byte getMabiki__Q24Game8CreatureFv - .4byte getFootmarks__Q24Game8CreatureFv - .4byte onStickStart__Q24Game9EnemyBaseFPQ24Game8Creature - .4byte onStickEnd__Q24Game9EnemyBaseFPQ24Game8Creature - .4byte onStickStartSelf__Q24Game8CreatureFPQ24Game8Creature - .4byte onStickEndSelf__Q24Game8CreatureFPQ24Game8Creature - .4byte isSlotFree__Q24Game8CreatureFs - .4byte getFreeStickSlot__Q24Game8CreatureFv - .4byte "getNearFreeStickSlot__Q24Game8CreatureFR10Vector3" - .4byte getRandomFreeStickSlot__Q24Game8CreatureFv - .4byte onSlotStickStart__Q24Game8CreatureFPQ24Game8Creatures - .4byte onSlotStickEnd__Q24Game8CreatureFPQ24Game8Creatures - .4byte "calcStickSlotGlobal__Q24Game8CreatureFsR10Vector3" - .4byte "getVelocityAt__Q24Game9EnemyBaseFR10Vector3R10Vector3" - .4byte "getAngularEffect__Q24Game8CreatureFR10Vector3R10Vector3" - .4byte "applyImpulse__Q24Game8CreatureFR10Vector3R10Vector3" - .4byte ignoreAtari__Q24Game8CreatureFPQ24Game8Creature - .4byte getSuckPos__Q24Game8CreatureFv - .4byte getGoalPos__Q24Game8CreatureFv - .4byte isSuckReady__Q24Game8CreatureFv - .4byte isSuckArriveWait__Q24Game8CreatureFv - .4byte stimulate__Q24Game9EnemyBaseFRQ24Game11Interaction - .4byte getCreatureName__Q24Game9EnemyBaseFv - .4byte getCreatureID__Q24Game9EnemyBaseFv - .4byte 0 - .4byte 0 - .4byte "@376@onKeyEvent__Q24Game9EnemyBaseFRCQ28SysShape8KeyEvent" - .4byte __dt__Q34Game7Tadpole3ObjFv - .4byte "birth__Q24Game9EnemyBaseFR10Vector3f" - .4byte setInitialSetting__Q34Game7Tadpole3ObjFPQ24Game21EnemyInitialParamBase - .4byte update__Q24Game9EnemyBaseFv - .4byte doUpdate__Q34Game7Tadpole3ObjFv - .4byte doUpdateCommon__Q24Game9EnemyBaseFv - .4byte doUpdateCarcass__Q24Game9EnemyBaseFv - .4byte doAnimationUpdateAnimator__Q24Game9EnemyBaseFv - .4byte doAnimationCullingOff__Q24Game9EnemyBaseFv - .4byte doAnimationCullingOn__Q24Game9EnemyBaseFv - .4byte doAnimationStick__Q24Game9EnemyBaseFv - .4byte doSimulationCarcass__Q24Game9EnemyBaseFf - .4byte doDebugDraw__Q34Game7Tadpole3ObjFR8Graphics - .4byte doSimpleDraw__Q24Game9EnemyBaseFP8Viewport - .4byte doSimulationGround__Q24Game9EnemyBaseFf - .4byte doSimulationFlying__Q24Game9EnemyBaseFf - .4byte doSimulationStick__Q24Game9EnemyBaseFf - .4byte changeMaterial__Q24Game9EnemyBaseFv - .4byte "getCommonEffectPos__Q24Game9EnemyBaseFR10Vector3" - .4byte getFitEffectPos__Q24Game9EnemyBaseFv - .4byte viewGetShape__Q24Game9EnemyBaseFv - .4byte view_start_carrymotion__Q24Game9EnemyBaseFv - .4byte view_finish_carrymotion__Q24Game9EnemyBaseFv - .4byte viewStartPreCarryMotion__Q24Game9EnemyBaseFv - .4byte viewStartCarryMotion__Q24Game9EnemyBaseFv - .4byte viewOnPelletKilled__Q24Game9EnemyBaseFv - .4byte getOffsetForMapCollision__Q24Game9EnemyBaseFv - .4byte setParameters__Q24Game9EnemyBaseFv - .4byte initMouthSlots__Q24Game9EnemyBaseFv - .4byte initWalkSmokeEffect__Q24Game9EnemyBaseFv - .4byte getWalkSmokeEffectMgr__Q24Game9EnemyBaseFv - .4byte onKeyEvent__Q24Game9EnemyBaseFRCQ28SysShape8KeyEvent - .4byte injure__Q24Game9EnemyBaseFv - .4byte setCollEvent__Q24Game9EnemyBaseFRQ24Game9CollEvent - .4byte "getEfxHamonPos__Q24Game9EnemyBaseFP10Vector3" - .4byte createInstanceEfxHamon__Q24Game9EnemyBaseFv - .4byte updateEfxHamon__Q24Game9EnemyBaseFv - .4byte createEfxHamon__Q24Game9EnemyBaseFv - .4byte fadeEfxHamon__Q24Game9EnemyBaseFv - .4byte getEnemyTypeID__Q34Game7Tadpole3ObjFv - .4byte getMouthSlots__Q24Game9EnemyBaseFv - .4byte doGetLifeGaugeParam__Q24Game9EnemyBaseFRQ24Game14LifeGaugeParam - .4byte throwupItem__Q24Game9EnemyBaseFv - .4byte "getThrowupItemPosition__Q24Game9EnemyBaseFP10Vector3" - .4byte "getThrowupItemVelocity__Q24Game9EnemyBaseFP10Vector3" - .4byte throwupItemInDeathProcedure__Q24Game9EnemyBaseFv - .4byte setLODSphere__Q24Game9EnemyBaseFRQ23Sys6Sphere - .4byte damageCallBack__Q24Game9EnemyBaseFPQ24Game8CreaturefP8CollPart - .4byte pressCallBack__Q24Game9EnemyBaseFPQ24Game8CreaturefP8CollPart - .4byte flyCollisionCallBack__Q24Game9EnemyBaseFPQ24Game8CreaturefP8CollPart - .4byte hipdropCallBack__Q34Game7Tadpole3ObjFPQ24Game8CreaturefP8CollPart - .4byte dropCallBack__Q24Game9EnemyBaseFPQ24Game8Creature - .4byte earthquakeCallBack__Q24Game9EnemyBaseFPQ24Game8Creaturef - .4byte farmCallBack__Q24Game9EnemyBaseFPQ24Game8Creaturef - .4byte "bombCallBack__Q24Game9EnemyBaseFPQ24Game8CreatureR10Vector3f" - .4byte eatWhitePikminCallBack__Q24Game9EnemyBaseFPQ24Game8Creaturef - .4byte dopeCallBack__Q24Game9EnemyBaseFPQ24Game8Creaturei - .4byte doDopeCallBack__Q24Game9EnemyBaseFPQ24Game8Creaturei - .4byte doStartStoneState__Q24Game9EnemyBaseFv - .4byte doFinishStoneState__Q24Game9EnemyBaseFv - .4byte getDamageCoeStoneState__Q24Game9EnemyBaseFv - .4byte doStartEarthquakeState__Q24Game9EnemyBaseFf - .4byte doFinishEarthquakeState__Q24Game9EnemyBaseFv - .4byte doStartEarthquakeFitState__Q24Game9EnemyBaseFv - .4byte doFinishEarthquakeFitState__Q24Game9EnemyBaseFv - .4byte lifeRecover__Q24Game9EnemyBaseFv - .4byte startCarcassMotion__Q34Game7Tadpole3ObjFv - .4byte setCarcassArg__Q24Game9EnemyBaseFRQ24Game13PelletViewArg - .4byte getCarcassArgHeight__Q24Game9EnemyBaseFv - .4byte doBecomeCarcass__Q24Game9EnemyBaseFv - .4byte startWaitingBirthTypeDrop__Q24Game9EnemyBaseFv - .4byte finishWaitingBirthTypeDrop__Q24Game9EnemyBaseFv - .4byte isFinishableWaitingBirthTypeDrop__Q24Game9EnemyBaseFv - .4byte doStartWaitingBirthTypeDrop__Q24Game9EnemyBaseFv - .4byte doFinishWaitingBirthTypeDrop__Q24Game9EnemyBaseFv - .4byte wallCallback__Q24Game9EnemyBaseFRCQ24Game8MoveInfo - .4byte getDownSmokeScale__Q24Game9EnemyBaseFv - .4byte doStartMovie__Q24Game9EnemyBaseFv - .4byte doEndMovie__Q24Game9EnemyBaseFv - .4byte setFSM__Q34Game7Tadpole3ObjFPQ34Game7Tadpole3FSM - .4byte 0 - .4byte 0 - .4byte viewGetBaseScale__Q24Game10PelletViewFv - .4byte "@728@12@viewGetShape__Q24Game9EnemyBaseFv" - .4byte viewGetCollTreeJointIndex__Q24Game10PelletViewFv - .4byte viewGetCollTreeOffset__Q24Game10PelletViewFv - .4byte "@728@12@view_start_carrymotion__Q24Game9EnemyBaseFv" - .4byte "@728@12@view_finish_carrymotion__Q24Game9EnemyBaseFv" - .4byte "@728@12@viewStartPreCarryMotion__Q24Game9EnemyBaseFv" - .4byte "@728@12@viewStartCarryMotion__Q24Game9EnemyBaseFv" - .4byte "@728@12@viewOnPelletKilled__Q24Game9EnemyBaseFv" - .4byte "viewEntryShape__Q24Game10PelletViewFR7MatrixfR10Vector3" -.endobj __vt__Q34Game7Tadpole3Obj - -.section .sdata2, "a" # 0x80516360 - 0x80520E40 -.balign 8 -.obj lbl_8051B410, local - .float 0.0 -.endobj lbl_8051B410 -.obj lbl_8051B414, local - .float 2.5 -.endobj lbl_8051B414 -.obj lbl_8051B418, local - .float 1.0 -.endobj lbl_8051B418 -.obj lbl_8051B41C, local - .float 50.0 -.endobj lbl_8051B41C -.obj lbl_8051B420, local - .float 7.5 -.endobj lbl_8051B420 -.obj lbl_8051B424, local - .float 32768.0 -.endobj lbl_8051B424 -.obj lbl_8051B428, local - .float 3.1415927 -.endobj lbl_8051B428 -.obj lbl_8051B42C, local - .float 1.5707964 -.endobj lbl_8051B42C -.obj lbl_8051B430, local - .float 325.9493 -.endobj lbl_8051B430 -.obj lbl_8051B434, local - .float -325.9493 -.endobj lbl_8051B434 -.balign 8 -.obj lbl_8051B438, local - .8byte 0x4330000080000000 -.endobj lbl_8051B438 -.obj lbl_8051B440, local - .float 22.0 -.endobj lbl_8051B440 -.obj lbl_8051B444, local - .float 1.2 -.endobj lbl_8051B444 -.obj lbl_8051B448, local - .float 0.3 -.endobj lbl_8051B448 - -.section .text, "ax" # 0x800056C0 - 0x80472F00 -.fn __ct__Q34Game7Tadpole3ObjFv, global -/* 802785D0 00275510 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802785D4 00275514 7C 08 02 A6 */ mflr r0 -/* 802785D8 00275518 90 01 00 14 */ stw r0, 0x14(r1) -/* 802785DC 0027551C 7C 80 07 35 */ extsh. r0, r4 -/* 802785E0 00275520 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802785E4 00275524 7C 7F 1B 78 */ mr r31, r3 -/* 802785E8 00275528 93 C1 00 08 */ stw r30, 8(r1) -/* 802785EC 0027552C 41 82 00 24 */ beq .L_80278610 -/* 802785F0 00275530 38 1F 02 D8 */ addi r0, r31, 0x2d8 -/* 802785F4 00275534 3C 60 80 4B */ lis r3, __vt__Q24Game10PelletView@ha -/* 802785F8 00275538 90 1F 01 7C */ stw r0, 0x17c(r31) -/* 802785FC 0027553C 38 63 A6 78 */ addi r3, r3, __vt__Q24Game10PelletView@l -/* 80278600 00275540 38 00 00 00 */ li r0, 0 -/* 80278604 00275544 90 7F 02 D8 */ stw r3, 0x2d8(r31) -/* 80278608 00275548 90 1F 02 DC */ stw r0, 0x2dc(r31) -/* 8027860C 0027554C 90 1F 02 E0 */ stw r0, 0x2e0(r31) -.L_80278610: -/* 80278610 00275550 7F E3 FB 78 */ mr r3, r31 -/* 80278614 00275554 38 80 00 00 */ li r4, 0 -/* 80278618 00275558 4B E8 8D 89 */ bl __ct__Q24Game9EnemyBaseFv -/* 8027861C 0027555C 3C 60 80 4C */ lis r3, __vt__Q34Game7Tadpole3Obj@ha -/* 80278620 00275560 38 1F 02 D8 */ addi r0, r31, 0x2d8 -/* 80278624 00275564 38 A3 75 0C */ addi r5, r3, __vt__Q34Game7Tadpole3Obj@l -/* 80278628 00275568 38 60 00 2C */ li r3, 0x2c -/* 8027862C 0027556C 90 BF 00 00 */ stw r5, 0(r31) -/* 80278630 00275570 38 85 01 B0 */ addi r4, r5, 0x1b0 -/* 80278634 00275574 38 A5 02 FC */ addi r5, r5, 0x2fc -/* 80278638 00275578 90 9F 01 78 */ stw r4, 0x178(r31) -/* 8027863C 0027557C 80 9F 01 7C */ lwz r4, 0x17c(r31) -/* 80278640 00275580 90 A4 00 00 */ stw r5, 0(r4) -/* 80278644 00275584 80 9F 01 7C */ lwz r4, 0x17c(r31) -/* 80278648 00275588 7C 04 00 50 */ subf r0, r4, r0 -/* 8027864C 0027558C 90 04 00 0C */ stw r0, 0xc(r4) -/* 80278650 00275590 4B DA B8 55 */ bl __nw__FUl -/* 80278654 00275594 7C 7E 1B 79 */ or. r30, r3, r3 -/* 80278658 00275598 41 82 00 44 */ beq .L_8027869C -/* 8027865C 0027559C 4B EA F3 19 */ bl __ct__Q24Game17EnemyAnimatorBaseFv -/* 80278660 002755A0 3C 60 80 4C */ lis r3, __vt__Q34Game7Tadpole14ProperAnimator@ha -/* 80278664 002755A4 3C 80 80 4B */ lis r4, __vt__Q28SysShape12BaseAnimator@ha -/* 80278668 002755A8 38 03 73 E0 */ addi r0, r3, __vt__Q34Game7Tadpole14ProperAnimator@l -/* 8027866C 002755AC 3C 60 80 4F */ lis r3, __vt__Q28SysShape8Animator@ha -/* 80278670 002755B0 90 1E 00 00 */ stw r0, 0(r30) -/* 80278674 002755B4 38 84 B9 88 */ addi r4, r4, __vt__Q28SysShape12BaseAnimator@l -/* 80278678 002755B8 38 63 BE 00 */ addi r3, r3, __vt__Q28SysShape8Animator@l -/* 8027867C 002755BC 38 00 00 00 */ li r0, 0 -/* 80278680 002755C0 90 9E 00 10 */ stw r4, 0x10(r30) -/* 80278684 002755C4 90 7E 00 10 */ stw r3, 0x10(r30) -/* 80278688 002755C8 98 1E 00 28 */ stb r0, 0x28(r30) -/* 8027868C 002755CC 90 1E 00 1C */ stw r0, 0x1c(r30) -/* 80278690 002755D0 90 1E 00 14 */ stw r0, 0x14(r30) -/* 80278694 002755D4 98 1E 00 28 */ stb r0, 0x28(r30) -/* 80278698 002755D8 90 1E 00 20 */ stw r0, 0x20(r30) -.L_8027869C: -/* 8027869C 002755DC 93 DF 01 84 */ stw r30, 0x184(r31) -/* 802786A0 002755E0 38 60 00 1C */ li r3, 0x1c -/* 802786A4 002755E4 4B DA B8 01 */ bl __nw__FUl -/* 802786A8 002755E8 7C 64 1B 79 */ or. r4, r3, r3 -/* 802786AC 002755EC 41 82 00 24 */ beq .L_802786D0 -/* 802786B0 002755F0 3C A0 80 4B */ lis r5, __vt__Q24Game17EnemyStateMachine@ha -/* 802786B4 002755F4 3C 60 80 4C */ lis r3, __vt__Q34Game7Tadpole3FSM@ha -/* 802786B8 002755F8 38 05 F9 80 */ addi r0, r5, __vt__Q24Game17EnemyStateMachine@l -/* 802786BC 002755FC 38 A0 FF FF */ li r5, -1 -/* 802786C0 00275600 90 04 00 00 */ stw r0, 0(r4) -/* 802786C4 00275604 38 03 73 BC */ addi r0, r3, __vt__Q34Game7Tadpole3FSM@l -/* 802786C8 00275608 90 A4 00 18 */ stw r5, 0x18(r4) -/* 802786CC 0027560C 90 04 00 00 */ stw r0, 0(r4) -.L_802786D0: -/* 802786D0 00275610 81 9F 00 00 */ lwz r12, 0(r31) -/* 802786D4 00275614 7F E3 FB 78 */ mr r3, r31 -/* 802786D8 00275618 81 8C 02 F8 */ lwz r12, 0x2f8(r12) -/* 802786DC 0027561C 7D 89 03 A6 */ mtctr r12 -/* 802786E0 00275620 4E 80 04 21 */ bctrl -/* 802786E4 00275624 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802786E8 00275628 7F E3 FB 78 */ mr r3, r31 -/* 802786EC 0027562C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 802786F0 00275630 83 C1 00 08 */ lwz r30, 8(r1) -/* 802786F4 00275634 7C 08 03 A6 */ mtlr r0 -/* 802786F8 00275638 38 21 00 10 */ addi r1, r1, 0x10 -/* 802786FC 0027563C 4E 80 00 20 */ blr -.endfn __ct__Q34Game7Tadpole3ObjFv - -.fn setInitialSetting__Q34Game7Tadpole3ObjFPQ24Game21EnemyInitialParamBase, global -/* 80278700 00275640 4E 80 00 20 */ blr -.endfn setInitialSetting__Q34Game7Tadpole3ObjFPQ24Game21EnemyInitialParamBase - -.fn onInit__Q34Game7Tadpole3ObjFPQ24Game15CreatureInitArg, global -/* 80278704 00275644 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80278708 00275648 7C 08 02 A6 */ mflr r0 -/* 8027870C 0027564C 90 01 00 14 */ stw r0, 0x14(r1) -/* 80278710 00275650 93 E1 00 0C */ stw r31, 0xc(r1) -/* 80278714 00275654 7C 7F 1B 78 */ mr r31, r3 -/* 80278718 00275658 4B E8 93 41 */ bl onInit__Q24Game9EnemyBaseFPQ24Game15CreatureInitArg -/* 8027871C 0027565C C0 02 D0 B0 */ lfs f0, lbl_8051B410@sda21(r2) -/* 80278720 00275660 38 60 FF FF */ li r3, -1 -/* 80278724 00275664 38 00 00 01 */ li r0, 1 -/* 80278728 00275668 7F E4 FB 78 */ mr r4, r31 -/* 8027872C 0027566C D0 1F 02 C4 */ stfs f0, 0x2c4(r31) -/* 80278730 00275670 38 A0 00 01 */ li r5, 1 -/* 80278734 00275674 38 C0 00 00 */ li r6, 0 -/* 80278738 00275678 90 7F 02 C8 */ stw r3, 0x2c8(r31) -/* 8027873C 0027567C 98 1F 02 C0 */ stb r0, 0x2c0(r31) -/* 80278740 00275680 80 7F 02 BC */ lwz r3, 0x2bc(r31) -/* 80278744 00275684 81 83 00 00 */ lwz r12, 0(r3) -/* 80278748 00275688 81 8C 00 0C */ lwz r12, 0xc(r12) -/* 8027874C 0027568C 7D 89 03 A6 */ mtctr r12 -/* 80278750 00275690 4E 80 04 21 */ bctrl -/* 80278754 00275694 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80278758 00275698 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 8027875C 0027569C 7C 08 03 A6 */ mtlr r0 -/* 80278760 002756A0 38 21 00 10 */ addi r1, r1, 0x10 -/* 80278764 002756A4 4E 80 00 20 */ blr -.endfn onInit__Q34Game7Tadpole3ObjFPQ24Game15CreatureInitArg - -.fn doUpdate__Q34Game7Tadpole3ObjFv, global -/* 80278768 002756A8 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 8027876C 002756AC 7C 08 02 A6 */ mflr r0 -/* 80278770 002756B0 7C 64 1B 78 */ mr r4, r3 -/* 80278774 002756B4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80278778 002756B8 80 63 02 BC */ lwz r3, 0x2bc(r3) -/* 8027877C 002756BC 81 83 00 00 */ lwz r12, 0(r3) -/* 80278780 002756C0 81 8C 00 10 */ lwz r12, 0x10(r12) -/* 80278784 002756C4 7D 89 03 A6 */ mtctr r12 -/* 80278788 002756C8 4E 80 04 21 */ bctrl -/* 8027878C 002756CC 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80278790 002756D0 7C 08 03 A6 */ mtlr r0 -/* 80278794 002756D4 38 21 00 10 */ addi r1, r1, 0x10 -/* 80278798 002756D8 4E 80 00 20 */ blr -.endfn doUpdate__Q34Game7Tadpole3ObjFv - -.fn doDirectDraw__Q34Game7Tadpole3ObjFR8Graphics, global -/* 8027879C 002756DC 4E 80 00 20 */ blr -.endfn doDirectDraw__Q34Game7Tadpole3ObjFR8Graphics - -.fn doDebugDraw__Q34Game7Tadpole3ObjFR8Graphics, global -/* 802787A0 002756E0 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802787A4 002756E4 7C 08 02 A6 */ mflr r0 -/* 802787A8 002756E8 90 01 00 14 */ stw r0, 0x14(r1) -/* 802787AC 002756EC 4B E8 D6 C1 */ bl doDebugDraw__Q24Game9EnemyBaseFR8Graphics -/* 802787B0 002756F0 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802787B4 002756F4 7C 08 03 A6 */ mtlr r0 -/* 802787B8 002756F8 38 21 00 10 */ addi r1, r1, 0x10 -/* 802787BC 002756FC 4E 80 00 20 */ blr -.endfn doDebugDraw__Q34Game7Tadpole3ObjFR8Graphics - -.fn setFSM__Q34Game7Tadpole3ObjFPQ34Game7Tadpole3FSM, global -/* 802787C0 00275700 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802787C4 00275704 7C 08 02 A6 */ mflr r0 -/* 802787C8 00275708 90 01 00 14 */ stw r0, 0x14(r1) -/* 802787CC 0027570C 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802787D0 00275710 7C 7F 1B 78 */ mr r31, r3 -/* 802787D4 00275714 90 83 02 BC */ stw r4, 0x2bc(r3) -/* 802787D8 00275718 7F E4 FB 78 */ mr r4, r31 -/* 802787DC 0027571C 80 63 02 BC */ lwz r3, 0x2bc(r3) -/* 802787E0 00275720 81 83 00 00 */ lwz r12, 0(r3) -/* 802787E4 00275724 81 8C 00 08 */ lwz r12, 8(r12) -/* 802787E8 00275728 7D 89 03 A6 */ mtctr r12 -/* 802787EC 0027572C 4E 80 04 21 */ bctrl -/* 802787F0 00275730 38 00 00 00 */ li r0, 0 -/* 802787F4 00275734 90 1F 02 B4 */ stw r0, 0x2b4(r31) -/* 802787F8 00275738 80 01 00 14 */ lwz r0, 0x14(r1) -/* 802787FC 0027573C 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80278800 00275740 7C 08 03 A6 */ mtlr r0 -/* 80278804 00275744 38 21 00 10 */ addi r1, r1, 0x10 -/* 80278808 00275748 4E 80 00 20 */ blr -.endfn setFSM__Q34Game7Tadpole3ObjFPQ34Game7Tadpole3FSM - -.fn getShadowParam__Q34Game7Tadpole3ObjFRQ24Game11ShadowParam, global -/* 8027880C 0027574C 94 21 FF E0 */ stwu r1, -0x20(r1) -/* 80278810 00275750 7C 08 02 A6 */ mflr r0 -/* 80278814 00275754 90 01 00 24 */ stw r0, 0x24(r1) -/* 80278818 00275758 93 E1 00 1C */ stw r31, 0x1c(r1) -/* 8027881C 0027575C 7C 9F 23 78 */ mr r31, r4 -/* 80278820 00275760 93 C1 00 18 */ stw r30, 0x18(r1) -/* 80278824 00275764 7C 7E 1B 78 */ mr r30, r3 -/* 80278828 00275768 7F C4 F3 78 */ mr r4, r30 -/* 8027882C 0027576C 38 61 00 08 */ addi r3, r1, 8 -/* 80278830 00275770 81 9E 00 00 */ lwz r12, 0(r30) -/* 80278834 00275774 81 8C 00 08 */ lwz r12, 8(r12) -/* 80278838 00275778 7D 89 03 A6 */ mtctr r12 -/* 8027883C 0027577C 4E 80 04 21 */ bctrl -/* 80278840 00275780 C0 01 00 08 */ lfs f0, 8(r1) -/* 80278844 00275784 C0 42 D0 B4 */ lfs f2, lbl_8051B414@sda21(r2) -/* 80278848 00275788 D0 1F 00 00 */ stfs f0, 0(r31) -/* 8027884C 0027578C C0 22 D0 B0 */ lfs f1, lbl_8051B410@sda21(r2) -/* 80278850 00275790 C0 61 00 0C */ lfs f3, 0xc(r1) -/* 80278854 00275794 C0 02 D0 B8 */ lfs f0, lbl_8051B418@sda21(r2) -/* 80278858 00275798 D0 7F 00 04 */ stfs f3, 4(r31) -/* 8027885C 0027579C C0 61 00 10 */ lfs f3, 0x10(r1) -/* 80278860 002757A0 D0 7F 00 08 */ stfs f3, 8(r31) -/* 80278864 002757A4 C0 7F 00 04 */ lfs f3, 4(r31) -/* 80278868 002757A8 EC 43 10 2A */ fadds f2, f3, f2 -/* 8027886C 002757AC D0 5F 00 04 */ stfs f2, 4(r31) -/* 80278870 002757B0 D0 3F 00 0C */ stfs f1, 0xc(r31) -/* 80278874 002757B4 D0 1F 00 10 */ stfs f0, 0x10(r31) -/* 80278878 002757B8 D0 3F 00 14 */ stfs f1, 0x14(r31) -/* 8027887C 002757BC 80 1E 01 E4 */ lwz r0, 0x1e4(r30) -/* 80278880 002757C0 54 00 07 FF */ clrlwi. r0, r0, 0x1f -/* 80278884 002757C4 41 82 00 10 */ beq .L_80278894 -/* 80278888 002757C8 C0 02 D0 BC */ lfs f0, lbl_8051B41C@sda21(r2) -/* 8027888C 002757CC D0 1F 00 18 */ stfs f0, 0x18(r31) -/* 80278890 002757D0 48 00 00 0C */ b .L_8027889C -.L_80278894: -/* 80278894 002757D4 C0 02 D0 C0 */ lfs f0, lbl_8051B420@sda21(r2) -/* 80278898 002757D8 D0 1F 00 18 */ stfs f0, 0x18(r31) -.L_8027889C: -/* 8027889C 002757DC C0 02 D0 C0 */ lfs f0, lbl_8051B420@sda21(r2) -/* 802788A0 002757E0 D0 1F 00 1C */ stfs f0, 0x1c(r31) -/* 802788A4 002757E4 80 01 00 24 */ lwz r0, 0x24(r1) -/* 802788A8 002757E8 83 E1 00 1C */ lwz r31, 0x1c(r1) -/* 802788AC 002757EC 83 C1 00 18 */ lwz r30, 0x18(r1) -/* 802788B0 002757F0 7C 08 03 A6 */ mtlr r0 -/* 802788B4 002757F4 38 21 00 20 */ addi r1, r1, 0x20 -/* 802788B8 002757F8 4E 80 00 20 */ blr -.endfn getShadowParam__Q34Game7Tadpole3ObjFRQ24Game11ShadowParam - -.fn hipdropCallBack__Q34Game7Tadpole3ObjFPQ24Game8CreaturefP8CollPart, global -/* 802788BC 002757FC 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 802788C0 00275800 7C 08 02 A6 */ mflr r0 -/* 802788C4 00275804 90 01 00 14 */ stw r0, 0x14(r1) -/* 802788C8 00275808 93 E1 00 0C */ stw r31, 0xc(r1) -/* 802788CC 0027580C 7C 7F 1B 78 */ mr r31, r3 -/* 802788D0 00275810 81 83 00 00 */ lwz r12, 0(r3) -/* 802788D4 00275814 81 8C 00 A8 */ lwz r12, 0xa8(r12) -/* 802788D8 00275818 7D 89 03 A6 */ mtctr r12 -/* 802788DC 0027581C 4E 80 04 21 */ bctrl -/* 802788E0 00275820 54 60 06 3F */ clrlwi. r0, r3, 0x18 -/* 802788E4 00275824 41 82 00 28 */ beq .L_8027890C -/* 802788E8 00275828 80 1F 01 E0 */ lwz r0, 0x1e0(r31) -/* 802788EC 0027582C 54 00 05 AD */ rlwinm. r0, r0, 0, 0x16, 0x16 -/* 802788F0 00275830 40 82 00 1C */ bne .L_8027890C -/* 802788F4 00275834 C0 3F 02 00 */ lfs f1, 0x200(r31) -/* 802788F8 00275838 7F E3 FB 78 */ mr r3, r31 -/* 802788FC 0027583C C0 42 D0 B8 */ lfs f2, lbl_8051B418@sda21(r2) -/* 80278900 00275840 4B E8 D7 2D */ bl addDamage__Q24Game9EnemyBaseFff -/* 80278904 00275844 38 60 00 01 */ li r3, 1 -/* 80278908 00275848 48 00 00 08 */ b .L_80278910 -.L_8027890C: -/* 8027890C 0027584C 38 60 00 00 */ li r3, 0 -.L_80278910: -/* 80278910 00275850 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80278914 00275854 83 E1 00 0C */ lwz r31, 0xc(r1) -/* 80278918 00275858 7C 08 03 A6 */ mtlr r0 -/* 8027891C 0027585C 38 21 00 10 */ addi r1, r1, 0x10 -/* 80278920 00275860 4E 80 00 20 */ blr -.endfn hipdropCallBack__Q34Game7Tadpole3ObjFPQ24Game8CreaturefP8CollPart - -.fn startCarcassMotion__Q34Game7Tadpole3ObjFv, global -/* 80278924 00275864 94 21 FF F0 */ stwu r1, -0x10(r1) -/* 80278928 00275868 7C 08 02 A6 */ mflr r0 -/* 8027892C 0027586C 38 80 00 05 */ li r4, 5 -/* 80278930 00275870 38 A0 00 00 */ li r5, 0 -/* 80278934 00275874 90 01 00 14 */ stw r0, 0x14(r1) -/* 80278938 00275878 4B E8 C6 CD */ bl startMotion__Q24Game9EnemyBaseFiPQ28SysShape14MotionListener -/* 8027893C 0027587C 80 01 00 14 */ lwz r0, 0x14(r1) -/* 80278940 00275880 7C 08 03 A6 */ mtlr r0 -/* 80278944 00275884 38 21 00 10 */ addi r1, r1, 0x10 -/* 80278948 00275888 4E 80 00 20 */ blr -.endfn startCarcassMotion__Q34Game7Tadpole3ObjFv - -.fn setRandTarget__Q34Game7Tadpole3ObjFb, global -/* 8027894C 0027588C 94 21 FF 60 */ stwu r1, -0xa0(r1) -/* 80278950 00275890 7C 08 02 A6 */ mflr r0 -/* 80278954 00275894 90 01 00 A4 */ stw r0, 0xa4(r1) -/* 80278958 00275898 DB E1 00 90 */ stfd f31, 0x90(r1) -/* 8027895C 0027589C F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0 -/* 80278960 002758A0 DB C1 00 80 */ stfd f30, 0x80(r1) -/* 80278964 002758A4 F3 C1 00 88 */ psq_st f30, 136(r1), 0, qr0 -/* 80278968 002758A8 DB A1 00 70 */ stfd f29, 0x70(r1) -/* 8027896C 002758AC F3 A1 00 78 */ psq_st f29, 120(r1), 0, qr0 -/* 80278970 002758B0 DB 81 00 60 */ stfd f28, 0x60(r1) -/* 80278974 002758B4 F3 81 00 68 */ psq_st f28, 104(r1), 0, qr0 -/* 80278978 002758B8 DB 61 00 50 */ stfd f27, 0x50(r1) -/* 8027897C 002758BC F3 61 00 58 */ psq_st f27, 88(r1), 0, qr0 -/* 80278980 002758C0 93 E1 00 4C */ stw r31, 0x4c(r1) -/* 80278984 002758C4 54 80 06 3F */ clrlwi. r0, r4, 0x18 -/* 80278988 002758C8 C3 62 D0 B0 */ lfs f27, lbl_8051B410@sda21(r2) -/* 8027898C 002758CC 7C 7F 1B 78 */ mr r31, r3 -/* 80278990 002758D0 40 82 00 14 */ bne .L_802789A4 -/* 80278994 002758D4 80 7F 00 C0 */ lwz r3, 0xc0(r31) -/* 80278998 002758D8 C0 23 03 5C */ lfs f1, 0x35c(r3) -/* 8027899C 002758DC C0 03 03 84 */ lfs f0, 0x384(r3) -/* 802789A0 002758E0 EF 61 00 28 */ fsubs f27, f1, f0 -.L_802789A4: -/* 802789A4 002758E4 4B E5 0B FD */ bl rand -/* 802789A8 002758E8 6C 63 80 00 */ xoris r3, r3, 0x8000 -/* 802789AC 002758EC 3C 00 43 30 */ lis r0, 0x4330 -/* 802789B0 002758F0 90 61 00 1C */ stw r3, 0x1c(r1) -/* 802789B4 002758F4 7F E4 FB 78 */ mr r4, r31 -/* 802789B8 002758F8 80 BF 00 C0 */ lwz r5, 0xc0(r31) -/* 802789BC 002758FC 38 61 00 08 */ addi r3, r1, 8 -/* 802789C0 00275900 90 01 00 18 */ stw r0, 0x18(r1) -/* 802789C4 00275904 C8 22 D0 D8 */ lfd f1, lbl_8051B438@sda21(r2) -/* 802789C8 00275908 C8 01 00 18 */ lfd f0, 0x18(r1) -/* 802789CC 0027590C 81 9F 00 00 */ lwz r12, 0(r31) -/* 802789D0 00275910 EC 40 08 28 */ fsubs f2, f0, f1 -/* 802789D4 00275914 C0 22 D0 C4 */ lfs f1, lbl_8051B424@sda21(r2) -/* 802789D8 00275918 C0 05 03 84 */ lfs f0, 0x384(r5) -/* 802789DC 0027591C 81 8C 00 08 */ lwz r12, 8(r12) -/* 802789E0 00275920 EC 5B 00 B2 */ fmuls f2, f27, f2 -/* 802789E4 00275924 EC 22 08 24 */ fdivs f1, f2, f1 -/* 802789E8 00275928 EF 80 08 2A */ fadds f28, f0, f1 -/* 802789EC 0027592C 7D 89 03 A6 */ mtctr r12 -/* 802789F0 00275930 4E 80 04 21 */ bctrl -/* 802789F4 00275934 C3 FF 01 98 */ lfs f31, 0x198(r31) -/* 802789F8 00275938 3C 60 80 51 */ lis r3, atanTable___5JMath@ha -/* 802789FC 0027593C C0 21 00 08 */ lfs f1, 8(r1) -/* 80278A00 00275940 38 63 D1 E0 */ addi r3, r3, atanTable___5JMath@l -/* 80278A04 00275944 C3 BF 01 A0 */ lfs f29, 0x1a0(r31) -/* 80278A08 00275948 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 80278A0C 0027594C EC 21 F8 28 */ fsubs f1, f1, f31 -/* 80278A10 00275950 C3 DF 01 9C */ lfs f30, 0x19c(r31) -/* 80278A14 00275954 EC 40 E8 28 */ fsubs f2, f0, f29 -/* 80278A18 00275958 4B DB C6 F1 */ bl "atan2___Q25JMath18TAtanTable<1024,f>CFff" -/* 80278A1C 0027595C FF 60 08 90 */ fmr f27, f1 -/* 80278A20 00275960 4B E5 0B 81 */ bl rand -/* 80278A24 00275964 6C 63 80 00 */ xoris r3, r3, 0x8000 -/* 80278A28 00275968 3C 00 43 30 */ lis r0, 0x4330 -/* 80278A2C 0027596C 90 61 00 24 */ stw r3, 0x24(r1) -/* 80278A30 00275970 C8 42 D0 D8 */ lfd f2, lbl_8051B438@sda21(r2) -/* 80278A34 00275974 90 01 00 20 */ stw r0, 0x20(r1) -/* 80278A38 00275978 C0 62 D0 C8 */ lfs f3, lbl_8051B428@sda21(r2) -/* 80278A3C 0027597C C8 01 00 20 */ lfd f0, 0x20(r1) -/* 80278A40 00275980 C0 22 D0 C4 */ lfs f1, lbl_8051B424@sda21(r2) -/* 80278A44 00275984 EC 80 10 28 */ fsubs f4, f0, f2 -/* 80278A48 00275988 C0 42 D0 CC */ lfs f2, lbl_8051B42C@sda21(r2) -/* 80278A4C 0027598C C0 02 D0 B0 */ lfs f0, lbl_8051B410@sda21(r2) -/* 80278A50 00275990 EC 63 01 32 */ fmuls f3, f3, f4 -/* 80278A54 00275994 EC 23 08 24 */ fdivs f1, f3, f1 -/* 80278A58 00275998 EC 3B 08 2A */ fadds f1, f27, f1 -/* 80278A5C 0027599C EC 62 08 2A */ fadds f3, f2, f1 -/* 80278A60 002759A0 FC 20 18 90 */ fmr f1, f3 -/* 80278A64 002759A4 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 80278A68 002759A8 40 80 00 08 */ bge .L_80278A70 -/* 80278A6C 002759AC FC 20 18 50 */ fneg f1, f3 -.L_80278A70: -/* 80278A70 002759B0 C0 42 D0 D0 */ lfs f2, lbl_8051B430@sda21(r2) -/* 80278A74 002759B4 3C 60 80 50 */ lis r3, sincosTable___5JMath@ha -/* 80278A78 002759B8 C0 02 D0 B0 */ lfs f0, lbl_8051B410@sda21(r2) -/* 80278A7C 002759BC 38 83 71 A0 */ addi r4, r3, sincosTable___5JMath@l -/* 80278A80 002759C0 EC 21 00 B2 */ fmuls f1, f1, f2 -/* 80278A84 002759C4 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 80278A88 002759C8 FC 00 08 1E */ fctiwz f0, f1 -/* 80278A8C 002759CC D8 01 00 28 */ stfd f0, 0x28(r1) -/* 80278A90 002759D0 80 01 00 2C */ lwz r0, 0x2c(r1) -/* 80278A94 002759D4 54 00 1C B8 */ rlwinm r0, r0, 3, 0x12, 0x1c -/* 80278A98 002759D8 7C 64 02 14 */ add r3, r4, r0 -/* 80278A9C 002759DC C0 03 00 04 */ lfs f0, 4(r3) -/* 80278AA0 002759E0 EC 3C E8 3A */ fmadds f1, f28, f0, f29 -/* 80278AA4 002759E4 40 80 00 28 */ bge .L_80278ACC -/* 80278AA8 002759E8 C0 02 D0 D4 */ lfs f0, lbl_8051B434@sda21(r2) -/* 80278AAC 002759EC EC 03 00 32 */ fmuls f0, f3, f0 -/* 80278AB0 002759F0 FC 00 00 1E */ fctiwz f0, f0 -/* 80278AB4 002759F4 D8 01 00 30 */ stfd f0, 0x30(r1) -/* 80278AB8 002759F8 80 01 00 34 */ lwz r0, 0x34(r1) -/* 80278ABC 002759FC 54 00 1C B8 */ rlwinm r0, r0, 3, 0x12, 0x1c -/* 80278AC0 00275A00 7C 04 04 2E */ lfsx f0, r4, r0 -/* 80278AC4 00275A04 FC 00 00 50 */ fneg f0, f0 -/* 80278AC8 00275A08 48 00 00 1C */ b .L_80278AE4 -.L_80278ACC: -/* 80278ACC 00275A0C EC 03 00 B2 */ fmuls f0, f3, f2 -/* 80278AD0 00275A10 FC 00 00 1E */ fctiwz f0, f0 -/* 80278AD4 00275A14 D8 01 00 38 */ stfd f0, 0x38(r1) -/* 80278AD8 00275A18 80 01 00 3C */ lwz r0, 0x3c(r1) -/* 80278ADC 00275A1C 54 00 1C B8 */ rlwinm r0, r0, 3, 0x12, 0x1c -/* 80278AE0 00275A20 7C 04 04 2E */ lfsx f0, r4, r0 -.L_80278AE4: -/* 80278AE4 00275A24 EC 1C F8 3A */ fmadds f0, f28, f0, f31 -/* 80278AE8 00275A28 D0 1F 02 CC */ stfs f0, 0x2cc(r31) -/* 80278AEC 00275A2C D3 DF 02 D0 */ stfs f30, 0x2d0(r31) -/* 80278AF0 00275A30 D0 3F 02 D4 */ stfs f1, 0x2d4(r31) -/* 80278AF4 00275A34 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0 -/* 80278AF8 00275A38 CB E1 00 90 */ lfd f31, 0x90(r1) -/* 80278AFC 00275A3C E3 C1 00 88 */ psq_l f30, 136(r1), 0, qr0 -/* 80278B00 00275A40 CB C1 00 80 */ lfd f30, 0x80(r1) -/* 80278B04 00275A44 E3 A1 00 78 */ psq_l f29, 120(r1), 0, qr0 -/* 80278B08 00275A48 CB A1 00 70 */ lfd f29, 0x70(r1) -/* 80278B0C 00275A4C E3 81 00 68 */ psq_l f28, 104(r1), 0, qr0 -/* 80278B10 00275A50 CB 81 00 60 */ lfd f28, 0x60(r1) -/* 80278B14 00275A54 E3 61 00 58 */ psq_l f27, 88(r1), 0, qr0 -/* 80278B18 00275A58 CB 61 00 50 */ lfd f27, 0x50(r1) -/* 80278B1C 00275A5C 80 01 00 A4 */ lwz r0, 0xa4(r1) -/* 80278B20 00275A60 83 E1 00 4C */ lwz r31, 0x4c(r1) -/* 80278B24 00275A64 7C 08 03 A6 */ mtlr r0 -/* 80278B28 00275A68 38 21 00 A0 */ addi r1, r1, 0xa0 -/* 80278B2C 00275A6C 4E 80 00 20 */ blr -.endfn setRandTarget__Q34Game7Tadpole3ObjFb - -.fn getTargetPosition__Q34Game7Tadpole3ObjFPQ24Game8Creature, global -/* 80278B30 00275A70 94 21 FF A0 */ stwu r1, -0x60(r1) -/* 80278B34 00275A74 7C 08 02 A6 */ mflr r0 -/* 80278B38 00275A78 90 01 00 64 */ stw r0, 0x64(r1) -/* 80278B3C 00275A7C DB E1 00 50 */ stfd f31, 0x50(r1) -/* 80278B40 00275A80 F3 E1 00 58 */ psq_st f31, 88(r1), 0, qr0 -/* 80278B44 00275A84 DB C1 00 40 */ stfd f30, 0x40(r1) -/* 80278B48 00275A88 F3 C1 00 48 */ psq_st f30, 72(r1), 0, qr0 -/* 80278B4C 00275A8C DB A1 00 30 */ stfd f29, 0x30(r1) -/* 80278B50 00275A90 F3 A1 00 38 */ psq_st f29, 56(r1), 0, qr0 -/* 80278B54 00275A94 93 E1 00 2C */ stw r31, 0x2c(r1) -/* 80278B58 00275A98 93 C1 00 28 */ stw r30, 0x28(r1) -/* 80278B5C 00275A9C 93 A1 00 24 */ stw r29, 0x24(r1) -/* 80278B60 00275AA0 81 84 00 00 */ lwz r12, 0(r4) -/* 80278B64 00275AA4 7C 7D 1B 78 */ mr r29, r3 -/* 80278B68 00275AA8 7C 9E 23 78 */ mr r30, r4 -/* 80278B6C 00275AAC 7C BF 2B 78 */ mr r31, r5 -/* 80278B70 00275AB0 81 8C 00 08 */ lwz r12, 8(r12) -/* 80278B74 00275AB4 38 61 00 14 */ addi r3, r1, 0x14 -/* 80278B78 00275AB8 7D 89 03 A6 */ mtctr r12 -/* 80278B7C 00275ABC 4E 80 04 21 */ bctrl -/* 80278B80 00275AC0 7F E4 FB 78 */ mr r4, r31 -/* 80278B84 00275AC4 38 61 00 08 */ addi r3, r1, 8 -/* 80278B88 00275AC8 81 9F 00 00 */ lwz r12, 0(r31) -/* 80278B8C 00275ACC C3 C1 00 14 */ lfs f30, 0x14(r1) -/* 80278B90 00275AD0 81 8C 00 08 */ lwz r12, 8(r12) -/* 80278B94 00275AD4 C3 E1 00 18 */ lfs f31, 0x18(r1) -/* 80278B98 00275AD8 C3 A1 00 1C */ lfs f29, 0x1c(r1) -/* 80278B9C 00275ADC 7D 89 03 A6 */ mtctr r12 -/* 80278BA0 00275AE0 4E 80 04 21 */ bctrl -/* 80278BA4 00275AE4 C0 01 00 10 */ lfs f0, 0x10(r1) -/* 80278BA8 00275AE8 C0 41 00 08 */ lfs f2, 8(r1) -/* 80278BAC 00275AEC EC 3D 00 28 */ fsubs f1, f29, f0 -/* 80278BB0 00275AF0 C0 02 D0 B0 */ lfs f0, lbl_8051B410@sda21(r2) -/* 80278BB4 00275AF4 ED 1E 10 28 */ fsubs f8, f30, f2 -/* 80278BB8 00275AF8 C0 BE 01 98 */ lfs f5, 0x198(r30) -/* 80278BBC 00275AFC C0 DE 01 9C */ lfs f6, 0x19c(r30) -/* 80278BC0 00275B00 EC 61 00 72 */ fmuls f3, f1, f1 -/* 80278BC4 00275B04 EC 48 02 3A */ fmadds f2, f8, f8, f0 -/* 80278BC8 00275B08 C0 FE 01 A0 */ lfs f7, 0x1a0(r30) -/* 80278BCC 00275B0C EC 63 10 2A */ fadds f3, f3, f2 -/* 80278BD0 00275B10 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 80278BD4 00275B14 40 81 00 14 */ ble .L_80278BE8 -/* 80278BD8 00275B18 40 81 00 14 */ ble .L_80278BEC -/* 80278BDC 00275B1C FC 40 18 34 */ frsqrte f2, f3 -/* 80278BE0 00275B20 EC 62 00 F2 */ fmuls f3, f2, f3 -/* 80278BE4 00275B24 48 00 00 08 */ b .L_80278BEC -.L_80278BE8: -/* 80278BE8 00275B28 FC 60 00 90 */ fmr f3, f0 -.L_80278BEC: -/* 80278BEC 00275B2C C0 42 D0 B0 */ lfs f2, lbl_8051B410@sda21(r2) -/* 80278BF0 00275B30 FC 03 10 40 */ fcmpo cr0, f3, f2 -/* 80278BF4 00275B34 40 81 00 18 */ ble .L_80278C0C -/* 80278BF8 00275B38 C0 42 D0 B8 */ lfs f2, lbl_8051B418@sda21(r2) -/* 80278BFC 00275B3C EC 42 18 24 */ fdivs f2, f2, f3 -/* 80278C00 00275B40 ED 08 00 B2 */ fmuls f8, f8, f2 -/* 80278C04 00275B44 EC 00 00 B2 */ fmuls f0, f0, f2 -/* 80278C08 00275B48 EC 21 00 B2 */ fmuls f1, f1, f2 -.L_80278C0C: -/* 80278C0C 00275B4C 80 7E 00 C0 */ lwz r3, 0xc0(r30) -/* 80278C10 00275B50 C0 43 02 E4 */ lfs f2, 0x2e4(r3) -/* 80278C14 00275B54 C1 23 03 5C */ lfs f9, 0x35c(r3) -/* 80278C18 00275B58 EC 21 00 B2 */ fmuls f1, f1, f2 -/* 80278C1C 00275B5C ED 08 00 B2 */ fmuls f8, f8, f2 -/* 80278C20 00275B60 EC 00 00 B2 */ fmuls f0, f0, f2 -/* 80278C24 00275B64 EC 21 E8 2A */ fadds f1, f1, f29 -/* 80278C28 00275B68 ED 08 F0 2A */ fadds f8, f8, f30 -/* 80278C2C 00275B6C EC 49 02 72 */ fmuls f2, f9, f9 -/* 80278C30 00275B70 EC 61 38 28 */ fsubs f3, f1, f7 -/* 80278C34 00275B74 EC 88 28 28 */ fsubs f4, f8, f5 -/* 80278C38 00275B78 EC 00 F8 2A */ fadds f0, f0, f31 -/* 80278C3C 00275B7C EC 63 00 F2 */ fmuls f3, f3, f3 -/* 80278C40 00275B80 EC 64 19 3A */ fmadds f3, f4, f4, f3 -/* 80278C44 00275B84 FC 03 10 40 */ fcmpo cr0, f3, f2 -/* 80278C48 00275B88 40 81 00 70 */ ble .L_80278CB8 -/* 80278C4C 00275B8C EC 21 38 28 */ fsubs f1, f1, f7 -/* 80278C50 00275B90 C0 02 D0 B0 */ lfs f0, lbl_8051B410@sda21(r2) -/* 80278C54 00275B94 ED 08 28 28 */ fsubs f8, f8, f5 -/* 80278C58 00275B98 EC 61 00 72 */ fmuls f3, f1, f1 -/* 80278C5C 00275B9C EC 48 02 3A */ fmadds f2, f8, f8, f0 -/* 80278C60 00275BA0 EC 63 10 2A */ fadds f3, f3, f2 -/* 80278C64 00275BA4 FC 03 00 40 */ fcmpo cr0, f3, f0 -/* 80278C68 00275BA8 40 81 00 14 */ ble .L_80278C7C -/* 80278C6C 00275BAC 40 81 00 14 */ ble .L_80278C80 -/* 80278C70 00275BB0 FC 40 18 34 */ frsqrte f2, f3 -/* 80278C74 00275BB4 EC 62 00 F2 */ fmuls f3, f2, f3 -/* 80278C78 00275BB8 48 00 00 08 */ b .L_80278C80 -.L_80278C7C: -/* 80278C7C 00275BBC FC 60 00 90 */ fmr f3, f0 -.L_80278C80: -/* 80278C80 00275BC0 C0 42 D0 B0 */ lfs f2, lbl_8051B410@sda21(r2) -/* 80278C84 00275BC4 FC 03 10 40 */ fcmpo cr0, f3, f2 -/* 80278C88 00275BC8 40 81 00 18 */ ble .L_80278CA0 -/* 80278C8C 00275BCC C0 42 D0 B8 */ lfs f2, lbl_8051B418@sda21(r2) -/* 80278C90 00275BD0 EC 42 18 24 */ fdivs f2, f2, f3 -/* 80278C94 00275BD4 ED 08 00 B2 */ fmuls f8, f8, f2 -/* 80278C98 00275BD8 EC 00 00 B2 */ fmuls f0, f0, f2 -/* 80278C9C 00275BDC EC 21 00 B2 */ fmuls f1, f1, f2 -.L_80278CA0: -/* 80278CA0 00275BE0 ED 08 02 72 */ fmuls f8, f8, f9 -/* 80278CA4 00275BE4 EC 00 02 72 */ fmuls f0, f0, f9 -/* 80278CA8 00275BE8 EC 21 02 72 */ fmuls f1, f1, f9 -/* 80278CAC 00275BEC ED 08 28 2A */ fadds f8, f8, f5 -/* 80278CB0 00275BF0 EC 00 30 2A */ fadds f0, f0, f6 -/* 80278CB4 00275BF4 EC 21 38 2A */ fadds f1, f1, f7 -.L_80278CB8: -/* 80278CB8 00275BF8 D1 1D 00 00 */ stfs f8, 0(r29) -/* 80278CBC 00275BFC D0 1D 00 04 */ stfs f0, 4(r29) -/* 80278CC0 00275C00 D0 3D 00 08 */ stfs f1, 8(r29) -/* 80278CC4 00275C04 E3 E1 00 58 */ psq_l f31, 88(r1), 0, qr0 -/* 80278CC8 00275C08 CB E1 00 50 */ lfd f31, 0x50(r1) -/* 80278CCC 00275C0C E3 C1 00 48 */ psq_l f30, 72(r1), 0, qr0 -/* 80278CD0 00275C10 CB C1 00 40 */ lfd f30, 0x40(r1) -/* 80278CD4 00275C14 E3 A1 00 38 */ psq_l f29, 56(r1), 0, qr0 -/* 80278CD8 00275C18 CB A1 00 30 */ lfd f29, 0x30(r1) -/* 80278CDC 00275C1C 83 E1 00 2C */ lwz r31, 0x2c(r1) -/* 80278CE0 00275C20 83 C1 00 28 */ lwz r30, 0x28(r1) -/* 80278CE4 00275C24 80 01 00 64 */ lwz r0, 0x64(r1) -/* 80278CE8 00275C28 83 A1 00 24 */ lwz r29, 0x24(r1) -/* 80278CEC 00275C2C 7C 08 03 A6 */ mtlr r0 -/* 80278CF0 00275C30 38 21 00 60 */ addi r1, r1, 0x60 -/* 80278CF4 00275C34 4E 80 00 20 */ blr -.endfn getTargetPosition__Q34Game7Tadpole3ObjFPQ24Game8Creature - -.fn createLeapEffect__Q34Game7Tadpole3ObjFv, global -/* 80278CF8 00275C38 94 21 FF 90 */ stwu r1, -0x70(r1) -/* 80278CFC 00275C3C 7C 08 02 A6 */ mflr r0 -/* 80278D00 00275C40 90 01 00 74 */ stw r0, 0x74(r1) -/* 80278D04 00275C44 93 E1 00 6C */ stw r31, 0x6c(r1) -/* 80278D08 00275C48 7C 7F 1B 78 */ mr r31, r3 -/* 80278D0C 00275C4C 80 63 02 80 */ lwz r3, 0x280(r3) -/* 80278D10 00275C50 28 03 00 00 */ cmplwi r3, 0 -/* 80278D14 00275C54 41 82 00 F4 */ beq .L_80278E08 -/* 80278D18 00275C58 81 83 00 00 */ lwz r12, 0(r3) -/* 80278D1C 00275C5C C0 5F 01 8C */ lfs f2, 0x18c(r31) -/* 80278D20 00275C60 C0 3F 01 90 */ lfs f1, 0x190(r31) -/* 80278D24 00275C64 C0 1F 01 94 */ lfs f0, 0x194(r31) -/* 80278D28 00275C68 81 8C 00 14 */ lwz r12, 0x14(r12) -/* 80278D2C 00275C6C D0 41 00 40 */ stfs f2, 0x40(r1) -/* 80278D30 00275C70 D0 21 00 44 */ stfs f1, 0x44(r1) -/* 80278D34 00275C74 D0 01 00 48 */ stfs f0, 0x48(r1) -/* 80278D38 00275C78 7D 89 03 A6 */ mtctr r12 -/* 80278D3C 00275C7C 4E 80 04 21 */ bctrl -/* 80278D40 00275C80 C0 43 00 00 */ lfs f2, 0(r3) -/* 80278D44 00275C84 C0 3F 01 90 */ lfs f1, 0x190(r31) -/* 80278D48 00275C88 C0 02 D0 E0 */ lfs f0, lbl_8051B440@sda21(r2) -/* 80278D4C 00275C8C EC 22 08 28 */ fsubs f1, f2, f1 -/* 80278D50 00275C90 D0 41 00 44 */ stfs f2, 0x44(r1) -/* 80278D54 00275C94 FC 01 00 40 */ fcmpo cr0, f1, f0 -/* 80278D58 00275C98 40 80 01 14 */ bge .L_80278E6C -/* 80278D5C 00275C9C 80 81 00 40 */ lwz r4, 0x40(r1) -/* 80278D60 00275CA0 3C 60 80 4B */ lis r3, __vt__Q23efx5TBase@ha -/* 80278D64 00275CA4 80 E1 00 44 */ lwz r7, 0x44(r1) -/* 80278D68 00275CA8 38 03 A7 F8 */ addi r0, r3, __vt__Q23efx5TBase@l -/* 80278D6C 00275CAC 80 C1 00 48 */ lwz r6, 0x48(r1) -/* 80278D70 00275CB0 3C 60 80 4B */ lis r3, __vt__Q23efx3Arg@ha -/* 80278D74 00275CB4 90 81 00 08 */ stw r4, 8(r1) -/* 80278D78 00275CB8 3C 80 80 4E */ lis r4, __vt__Q23efx8TSimple2@ha -/* 80278D7C 00275CBC 39 43 A7 EC */ addi r10, r3, __vt__Q23efx3Arg@l -/* 80278D80 00275CC0 C0 02 D0 E4 */ lfs f0, lbl_8051B444@sda21(r2) -/* 80278D84 00275CC4 38 A0 00 00 */ li r5, 0 -/* 80278D88 00275CC8 90 E1 00 0C */ stw r7, 0xc(r1) -/* 80278D8C 00275CCC C0 61 00 08 */ lfs f3, 8(r1) -/* 80278D90 00275CD0 3D 20 80 4B */ lis r9, __vt__Q23efx8ArgScale@ha -/* 80278D94 00275CD4 90 C1 00 10 */ stw r6, 0x10(r1) -/* 80278D98 00275CD8 3C 60 80 4F */ lis r3, __vt__Q23efx10TEnemyDive@ha -/* 80278D9C 00275CDC C0 41 00 0C */ lfs f2, 0xc(r1) -/* 80278DA0 00275CE0 38 E0 01 59 */ li r7, 0x159 -/* 80278DA4 00275CE4 C0 21 00 10 */ lfs f1, 0x10(r1) -/* 80278DA8 00275CE8 38 C0 01 5A */ li r6, 0x15a -/* 80278DAC 00275CEC 90 01 00 30 */ stw r0, 0x30(r1) -/* 80278DB0 00275CF0 39 04 6A 64 */ addi r8, r4, __vt__Q23efx8TSimple2@l -/* 80278DB4 00275CF4 39 29 A2 DC */ addi r9, r9, __vt__Q23efx8ArgScale@l -/* 80278DB8 00275CF8 38 03 85 E8 */ addi r0, r3, __vt__Q23efx10TEnemyDive@l -/* 80278DBC 00275CFC 91 41 00 4C */ stw r10, 0x4c(r1) -/* 80278DC0 00275D00 38 61 00 30 */ addi r3, r1, 0x30 -/* 80278DC4 00275D04 38 81 00 4C */ addi r4, r1, 0x4c -/* 80278DC8 00275D08 91 01 00 30 */ stw r8, 0x30(r1) -/* 80278DCC 00275D0C D0 61 00 50 */ stfs f3, 0x50(r1) -/* 80278DD0 00275D10 D0 41 00 54 */ stfs f2, 0x54(r1) -/* 80278DD4 00275D14 D0 21 00 58 */ stfs f1, 0x58(r1) -/* 80278DD8 00275D18 91 21 00 4C */ stw r9, 0x4c(r1) -/* 80278DDC 00275D1C D0 01 00 5C */ stfs f0, 0x5c(r1) -/* 80278DE0 00275D20 B0 E1 00 34 */ sth r7, 0x34(r1) -/* 80278DE4 00275D24 B0 C1 00 36 */ sth r6, 0x36(r1) -/* 80278DE8 00275D28 90 A1 00 38 */ stw r5, 0x38(r1) -/* 80278DEC 00275D2C 90 A1 00 3C */ stw r5, 0x3c(r1) -/* 80278DF0 00275D30 90 01 00 30 */ stw r0, 0x30(r1) -/* 80278DF4 00275D34 48 14 FA E5 */ bl create__Q23efx10TEnemyDiveFPQ23efx3Arg -/* 80278DF8 00275D38 C0 22 D0 E8 */ lfs f1, lbl_8051B448@sda21(r2) -/* 80278DFC 00275D3C 7F E3 FB 78 */ mr r3, r31 -/* 80278E00 00275D40 48 1F 5A 41 */ bl PSStartEnemyDownWatSE__FPQ24Game9EnemyBasef -/* 80278E04 00275D44 48 00 00 68 */ b .L_80278E6C -.L_80278E08: -/* 80278E08 00275D48 3C 60 80 4B */ lis r3, __vt__Q23efx3Arg@ha -/* 80278E0C 00275D4C 3C A0 80 4B */ lis r5, __vt__Q23efx5TBase@ha -/* 80278E10 00275D50 38 03 A7 EC */ addi r0, r3, __vt__Q23efx3Arg@l -/* 80278E14 00275D54 3C 80 80 4E */ lis r4, __vt__Q23efx8TSimple1@ha -/* 80278E18 00275D58 90 01 00 20 */ stw r0, 0x20(r1) -/* 80278E1C 00275D5C 3C 60 80 4C */ lis r3, __vt__Q23efx8TPkDiveB@ha -/* 80278E20 00275D60 39 05 A7 F8 */ addi r8, r5, __vt__Q23efx5TBase@l -/* 80278E24 00275D64 38 E4 6A 78 */ addi r7, r4, __vt__Q23efx8TSimple1@l -/* 80278E28 00275D68 C0 1F 01 8C */ lfs f0, 0x18c(r31) -/* 80278E2C 00275D6C 38 03 74 F8 */ addi r0, r3, __vt__Q23efx8TPkDiveB@l -/* 80278E30 00275D70 38 C0 01 5A */ li r6, 0x15a -/* 80278E34 00275D74 38 A0 00 00 */ li r5, 0 -/* 80278E38 00275D78 D0 01 00 24 */ stfs f0, 0x24(r1) -/* 80278E3C 00275D7C 38 61 00 14 */ addi r3, r1, 0x14 -/* 80278E40 00275D80 38 81 00 20 */ addi r4, r1, 0x20 -/* 80278E44 00275D84 C0 1F 01 90 */ lfs f0, 0x190(r31) -/* 80278E48 00275D88 D0 01 00 28 */ stfs f0, 0x28(r1) -/* 80278E4C 00275D8C C0 1F 01 94 */ lfs f0, 0x194(r31) -/* 80278E50 00275D90 91 01 00 14 */ stw r8, 0x14(r1) -/* 80278E54 00275D94 90 E1 00 14 */ stw r7, 0x14(r1) -/* 80278E58 00275D98 D0 01 00 2C */ stfs f0, 0x2c(r1) -/* 80278E5C 00275D9C B0 C1 00 18 */ sth r6, 0x18(r1) -/* 80278E60 00275DA0 90 A1 00 1C */ stw r5, 0x1c(r1) -/* 80278E64 00275DA4 90 01 00 14 */ stw r0, 0x14(r1) -/* 80278E68 00275DA8 48 13 61 1D */ bl create__Q23efx8TSimple1FPQ23efx3Arg -.L_80278E6C: -/* 80278E6C 00275DAC 80 01 00 74 */ lwz r0, 0x74(r1) -/* 80278E70 00275DB0 83 E1 00 6C */ lwz r31, 0x6c(r1) -/* 80278E74 00275DB4 7C 08 03 A6 */ mtlr r0 -/* 80278E78 00275DB8 38 21 00 70 */ addi r1, r1, 0x70 -/* 80278E7C 00275DBC 4E 80 00 20 */ blr -.endfn createLeapEffect__Q34Game7Tadpole3ObjFv - -.fn inWaterCallback__Q34Game7Tadpole3ObjFPQ24Game8WaterBox, weak -/* 80278E80 00275DC0 4E 80 00 20 */ blr -.endfn inWaterCallback__Q34Game7Tadpole3ObjFPQ24Game8WaterBox - -.fn outWaterCallback__Q34Game7Tadpole3ObjFv, weak -/* 80278E84 00275DC4 4E 80 00 20 */ blr -.endfn outWaterCallback__Q34Game7Tadpole3ObjFv - -.fn getEnemyTypeID__Q34Game7Tadpole3ObjFv, weak -/* 80278E88 00275DC8 38 60 00 1B */ li r3, 0x1b -/* 80278E8C 00275DCC 4E 80 00 20 */ blr -.endfn getEnemyTypeID__Q34Game7Tadpole3ObjFv diff --git a/configure.py b/configure.py index f93a134ae..846a3e51b 100755 --- a/configure.py +++ b/configure.py @@ -1112,7 +1112,7 @@ "plugProjectNishimuraU/TadpoleState", ["plugProjectNishimuraU/TadpoleAnimator", True], ["plugProjectNishimuraU/TadpoleMgr", True], - "plugProjectNishimuraU/Tadpole", + ["plugProjectNishimuraU/Tadpole", True], "plugProjectNishimuraU/ElecBugState", ["plugProjectNishimuraU/ElecBugAnimator", True], ["plugProjectNishimuraU/ElecBugMgr", True], @@ -1183,7 +1183,7 @@ ["plugProjectNishimuraU/OtakaraBaseState", True], ["plugProjectNishimuraU/OtakaraBaseAnimator", True], ["plugProjectNishimuraU/OtakaraBaseMgr", True], - "plugProjectNishimuraU/OtakaraBase", + ["plugProjectNishimuraU/OtakaraBase", True], ["plugProjectNishimuraU/FireOtakaraMgr", True], ["plugProjectNishimuraU/FireOtakara", True], ["plugProjectNishimuraU/WaterOtakaraMgr", True], diff --git a/docs/recommended_todo.md b/docs/recommended_todo.md index 4c5ba8309..c527d66ae 100644 --- a/docs/recommended_todo.md +++ b/docs/recommended_todo.md @@ -43,33 +43,33 @@ | JAudio/dsp/dspproc.c | 3983 | JStudio_JParticle/control.cpp | 4098 | | J3DU/J3DUMtxCache.cpp | 4160 | JStudio_JStage/object.cpp | 4322 | | JAudio/JAS/JASSeqCtrl.cpp | 4524 | JParticle/JPAResourceManager.cpp | 4849 | -| JGadget/linklist.cpp | 5250 | JAudio/JAI/JAISoundTable.cpp | 5690 | -| JAudio/dsp/dsptask.c | 5819 | JMath/JMath.cpp | 5890 | -| JGadget/std-list.cpp | 5990 | JAudio/JAI/JAIFx.cpp | 6646 | -| JAudio/dsp/osdsp_task.c | 6692 | J2D/J2DBloSaver.cpp | 7230 | -| JAudio/JAI/JAIDummyObject.cpp | 7337 | J3D/J3DModelData.cpp | 7479 | -| JKernel/JKRSolidHeap.cpp | 7690 | JStudio/jstudio-math.cpp | 8174 | -| JMessage/control.cpp | 8567 | JAudio/JAU/JAUData.cpp | 9034 | +| JGadget/linklist.cpp | 5250 | JAudio/JAU/JAUData.cpp | 5463 | +| JAudio/JAI/JAISoundTable.cpp | 5690 | JAudio/dsp/dsptask.c | 5819 | +| JMath/JMath.cpp | 5890 | JGadget/std-list.cpp | 5990 | +| JAudio/JAI/JAIFx.cpp | 6646 | JAudio/dsp/osdsp_task.c | 6692 | +| J2D/J2DBloSaver.cpp | 7230 | JAudio/JAI/JAIDummyObject.cpp | 7337 | +| J3D/J3DModelData.cpp | 7479 | JKernel/JKRSolidHeap.cpp | 7690 | +| JStudio/jstudio-math.cpp | 8174 | JMessage/control.cpp | 8567 | | JKernel/JKRThread.cpp | 9057 | JAudio/JAL/JALCalc.cpp | 9063 | | J3D/J3DMaterialAnm.cpp | 9184 | JAudio/JAS/JASDriverIF.cpp | 9496 | | JAudio/JAS/JASBasicWaveBank.cpp | 9651 | JParticle/JPAExtraShape.cpp | 9736 | | J3D/J3DJointTree.cpp | 9807 | JParticle/JPAResourceLoader.cpp | 9814 | | JParticle/JPAMath.cpp | 10028 | JUtility/JUTTexture.cpp | 10070 | -| J2D/J2DTevs.cpp | 10255 | JStudio/jstudio-control.cpp | 10278 | -| JAudio/JAI/JAIBankWave.cpp | 10594 | JStudio_JStage/control.cpp | 11936 | -| JAudio/JAS/JASCalc.cpp | 12225 | JAudio/JAI/JAIInitData.cpp | 12747 | -| JAudio/JAS/JASDSPChannel.cpp | 13029 | JAudio/JAS/JASOscillator.cpp | 13039 | -| JAudio/JAS/JASTaskThread.cpp | 13151 | JMath/JMATrigonometric.cpp | 13423 | -| JAudio/JAS/JASWSParser.cpp | 13469 | JAudio/JAS/JASPlayer_impl.cpp | 14292 | -| JAudio/JAI/JAISequenceHeap.cpp | 14788 | JParticle/JPAEmitter.cpp | 15245 | -| J3D/J3DShapeFactory.cpp | 16154 | JGadget/std-vector.cpp | 16407 | -| JAudio/JAS/JASBankMgr.cpp | 16414 | JKernel/JKRMemArchive.cpp | 17027 | -| J3D/J3DDrawBuffer.cpp | 18255 | J3D/J3DTransform.cpp | 19101 | -| JAudio/JAI/JAIObject.cpp | 19418 | JParticle/JPAEmitterManager.cpp | 19473 | -| JAudio/JAI/JAISystemInterface.cpp | 19726 | JMessage/resource.cpp | 20389 | -| J3D/J3DModelLoaderCalcSize.cpp | 21399 | J3D/J3DPacket.cpp | 21520 | -| JStudio_JParticle/object-particle.cpp | 21737 | JUtility/JUTDirectPrint.cpp | 22588 | -| JAudio/JAS/JASHeapCtrl.cpp | 22633 | +| JAudio/JAU/JAUDataMgr.cpp | 10083 | J2D/J2DTevs.cpp | 10255 | +| JStudio/jstudio-control.cpp | 10278 | JAudio/JAI/JAIBankWave.cpp | 10594 | +| JStudio_JStage/control.cpp | 11936 | JAudio/JAS/JASCalc.cpp | 12225 | +| JAudio/JAI/JAIInitData.cpp | 12747 | JAudio/JAS/JASDSPChannel.cpp | 13029 | +| JAudio/JAS/JASOscillator.cpp | 13039 | JAudio/JAS/JASTaskThread.cpp | 13151 | +| JMath/JMATrigonometric.cpp | 13423 | JAudio/JAS/JASWSParser.cpp | 13469 | +| JAudio/JAS/JASPlayer_impl.cpp | 14292 | JAudio/JAI/JAISequenceHeap.cpp | 14788 | +| JParticle/JPAEmitter.cpp | 15245 | J3D/J3DShapeFactory.cpp | 16154 | +| JGadget/std-vector.cpp | 16407 | JAudio/JAS/JASBankMgr.cpp | 16414 | +| JKernel/JKRMemArchive.cpp | 17027 | J3D/J3DDrawBuffer.cpp | 18255 | +| J3D/J3DTransform.cpp | 19101 | JAudio/JAI/JAIObject.cpp | 19418 | +| JParticle/JPAEmitterManager.cpp | 19473 | JAudio/JAI/JAISystemInterface.cpp | 19726 | +| JMessage/resource.cpp | 20389 | J3D/J3DModelLoaderCalcSize.cpp | 21399 | +| J3D/J3DPacket.cpp | 21520 | JStudio_JParticle/object-particle.cpp | 21737 | +| JUtility/JUTDirectPrint.cpp | 22588 | ###
plugProjectEbisawaU
| File | Size (bytes) | File | Size (bytes) | @@ -134,13 +134,12 @@ ###
plugProjectNishimuraU
| File | Size (bytes) | File | Size (bytes) | | ---- | ---- | ---- | ---- | -| nslibmath.cpp | 4592 | Tadpole.cpp | 6754 | -| TyreShadow.cpp | 7234 | MaroFrog.cpp | 7314 | -| UmimushiShadow.cpp | 7565 | ContRumble.cpp | 9005 | -| SnakeJointMgr.cpp | 10097 | KumaChappy.cpp | 11401 | -| Kabuto.cpp | 12265 | BabyState.cpp | 12955 | -| Tank.cpp | 13313 | Kogane.cpp | 14614 | -| JointShadowBase.cpp | 14958 | OtakaraBase.cpp | 15635 | +| nslibmath.cpp | 4592 | TyreShadow.cpp | 7234 | +| MaroFrog.cpp | 7314 | UmimushiShadow.cpp | 7565 | +| ContRumble.cpp | 9005 | SnakeJointMgr.cpp | 10097 | +| KumaChappy.cpp | 11401 | Kabuto.cpp | 12265 | +| BabyState.cpp | 12955 | Tank.cpp | 13313 | +| Kogane.cpp | 14614 | JointShadowBase.cpp | 14958 | | ElecBugState.cpp | 15715 | RandMapMgr.cpp | 17083 | | TadpoleState.cpp | 17593 | SnakeWholeShadow.cpp | 19376 | | SnakeCrowShadow.cpp | 19385 | ImomushiState.cpp | 19863 | @@ -152,7 +151,6 @@ | SaraiState.cpp | 24923 | TobiState.cpp | 24962 | | UjibState.cpp | 25505 | Armor.cpp | 25767 | | Tobi.cpp | 25937 | TankState.cpp | 29293 | -| RandItemUnit.cpp | 29622 | ###
plugProjectOgawaU
| File | Size (bytes) | File | Size (bytes) | diff --git a/include/Game/Entities/OtakaraBase.h b/include/Game/Entities/OtakaraBase.h index 817e545d1..a54eb160e 100644 --- a/include/Game/Entities/OtakaraBase.h +++ b/include/Game/Entities/OtakaraBase.h @@ -47,7 +47,6 @@ struct Obj : public EnemyBase { virtual void onInit(CreatureInitArg* settings); // _30 virtual void onKill(CreatureKillArg* settings); // _34 virtual void doDirectDraw(Graphics& gfx); // _50 - virtual f32 getCellRadius() { return mCellRadius; } // _58 (weak) virtual void getShadowParam(ShadowParam& settings); // _134 virtual ~Obj() { } // _1BC (weak) virtual void setInitialSetting(EnemyInitialParamBase* params); // _1C4 @@ -73,10 +72,11 @@ struct Obj : public EnemyBase { virtual void startCarcassMotion(); // _2C4 virtual void doStartWaitingBirthTypeDrop(); // _2E0 virtual void doFinishWaitingBirthTypeDrop(); // _2E4 - virtual f32 getDownSmokeScale() { return 0.7f; } // _2EC (weak) virtual void doStartMovie(); // _2F0 virtual void doEndMovie(); // _2F4 virtual void setFSM(FSM* fsm); // _2F8 + virtual f32 getDownSmokeScale() { return 0.7f; } // _2EC (weak) + virtual f32 getCellRadius() { return mCellRadius; } // _58 (weak) virtual void interactCreature(Creature*) { } // _2FC (weak) virtual void createEffect() { } // _300 (weak) virtual void setupEffect() { } // _304 (weak) diff --git a/src/plugProjectNishimuraU/Makefile b/src/plugProjectNishimuraU/Makefile index 43a377961..459f2340e 100644 --- a/src/plugProjectNishimuraU/Makefile +++ b/src/plugProjectNishimuraU/Makefile @@ -83,7 +83,7 @@ NISHIMURA_FILES:=\ $(BUILD_DIR)/asm/plugProjectNishimuraU/TadpoleState.o\ $(BUILD_DIR)/src/plugProjectNishimuraU/TadpoleAnimator.o\ $(BUILD_DIR)/src/plugProjectNishimuraU/TadpoleMgr.o\ - $(BUILD_DIR)/asm/plugProjectNishimuraU/Tadpole.o\ + $(BUILD_DIR)/src/plugProjectNishimuraU/Tadpole.o\ $(BUILD_DIR)/asm/plugProjectNishimuraU/ElecBugState.o\ $(BUILD_DIR)/src/plugProjectNishimuraU/ElecBugAnimator.o\ $(BUILD_DIR)/src/plugProjectNishimuraU/ElecBugMgr.o\ @@ -154,7 +154,7 @@ NISHIMURA_FILES:=\ $(BUILD_DIR)/src/plugProjectNishimuraU/OtakaraBaseState.o\ $(BUILD_DIR)/src/plugProjectNishimuraU/OtakaraBaseAnimator.o\ $(BUILD_DIR)/src/plugProjectNishimuraU/OtakaraBaseMgr.o\ - $(BUILD_DIR)/asm/plugProjectNishimuraU/OtakaraBase.o\ + $(BUILD_DIR)/src/plugProjectNishimuraU/OtakaraBase.o\ $(BUILD_DIR)/src/plugProjectNishimuraU/FireOtakaraMgr.o\ $(BUILD_DIR)/src/plugProjectNishimuraU/FireOtakara.o\ $(BUILD_DIR)/src/plugProjectNishimuraU/WaterOtakaraMgr.o\ diff --git a/src/plugProjectNishimuraU/Tadpole.cpp b/src/plugProjectNishimuraU/Tadpole.cpp index a9905ca39..5bf8160a4 100644 --- a/src/plugProjectNishimuraU/Tadpole.cpp +++ b/src/plugProjectNishimuraU/Tadpole.cpp @@ -138,161 +138,28 @@ void Obj::setRandTarget(bool check) * Address: 80278B30 * Size: 0001C8 */ -Vector3f Obj::getTargetPosition(Creature* creature) +Vector3f Obj::getTargetPosition(Creature* target) { - Vector3f tadpolePos = getPosition(); - Vector3f creaturePos = creature->getPosition(); - Vector3f homePos = mHomePosition; - - Vector3f targetPos = tadpolePos - creaturePos; - targetPos.y = 0.0f; - - targetPos.normalise(); + Vector3f tadpolePos = getPosition(); + Vector3f targetPos = target->getPosition(); + Vector3f homePos = mHomePosition; - targetPos = targetPos * C_PARMS->mGeneral.mMoveSpeed.mValue + tadpolePos; - f32 terrRad = C_PARMS->mGeneral.mTerritoryRadius.mValue; + Vector3f sep = tadpolePos - targetPos; + sep.y = 0.0f; + sep.normalise(); - if (sqrDistanceXZ(targetPos, homePos) > terrRad * terrRad) { - targetPos.x -= homePos.x; - targetPos.y = 0.0f; - targetPos.z -= homePos.z; + sep *= C_PARMS->mGeneral.mMoveSpeed.mValue; + sep += tadpolePos; - targetPos.normalise(); - targetPos *= terrRad; - targetPos += homePos; + f32 territory = C_PARMS->mGeneral.mTerritoryRadius.mValue; + if (sqrDistanceXZ(sep, homePos) > SQUARE(territory)) { + sep -= homePos; + sep.y = 0.0f; + sep.normalise(); + sep *= territory; + sep += homePos; } - - return targetPos; - /* - stwu r1, -0x60(r1) - mflr r0 - stw r0, 0x64(r1) - stfd f31, 0x50(r1) - psq_st f31, 88(r1), 0, qr0 - stfd f30, 0x40(r1) - psq_st f30, 72(r1), 0, qr0 - stfd f29, 0x30(r1) - psq_st f29, 56(r1), 0, qr0 - stw r31, 0x2c(r1) - stw r30, 0x28(r1) - stw r29, 0x24(r1) - lwz r12, 0(r4) - mr r29, r3 - mr r30, r4 - mr r31, r5 - lwz r12, 8(r12) - addi r3, r1, 0x14 - mtctr r12 - bctrl - mr r4, r31 - addi r3, r1, 8 - lwz r12, 0(r31) - lfs f30, 0x14(r1) - lwz r12, 8(r12) - lfs f31, 0x18(r1) - lfs f29, 0x1c(r1) - mtctr r12 - bctrl - lfs f0, 0x10(r1) - lfs f2, 8(r1) - fsubs f1, f29, f0 - lfs f0, lbl_8051B410@sda21(r2) - fsubs f8, f30, f2 - lfs f5, 0x198(r30) - lfs f6, 0x19c(r30) - fmuls f3, f1, f1 - fmadds f2, f8, f8, f0 - lfs f7, 0x1a0(r30) - fadds f3, f3, f2 - fcmpo cr0, f3, f0 - ble lbl_80278BE8 - ble lbl_80278BEC - frsqrte f2, f3 - fmuls f3, f2, f3 - b lbl_80278BEC - -lbl_80278BE8: - fmr f3, f0 - -lbl_80278BEC: - lfs f2, lbl_8051B410@sda21(r2) - fcmpo cr0, f3, f2 - ble lbl_80278C0C - lfs f2, lbl_8051B418@sda21(r2) - fdivs f2, f2, f3 - fmuls f8, f8, f2 - fmuls f0, f0, f2 - fmuls f1, f1, f2 - -lbl_80278C0C: - lwz r3, 0xc0(r30) - lfs f2, 0x2e4(r3) - lfs f9, 0x35c(r3) - fmuls f1, f1, f2 - fmuls f8, f8, f2 - fmuls f0, f0, f2 - fadds f1, f1, f29 - fadds f8, f8, f30 - fmuls f2, f9, f9 - fsubs f3, f1, f7 - fsubs f4, f8, f5 - fadds f0, f0, f31 - fmuls f3, f3, f3 - fmadds f3, f4, f4, f3 - fcmpo cr0, f3, f2 - ble lbl_80278CB8 - fsubs f1, f1, f7 - lfs f0, lbl_8051B410@sda21(r2) - fsubs f8, f8, f5 - fmuls f3, f1, f1 - fmadds f2, f8, f8, f0 - fadds f3, f3, f2 - fcmpo cr0, f3, f0 - ble lbl_80278C7C - ble lbl_80278C80 - frsqrte f2, f3 - fmuls f3, f2, f3 - b lbl_80278C80 - -lbl_80278C7C: - fmr f3, f0 - -lbl_80278C80: - lfs f2, lbl_8051B410@sda21(r2) - fcmpo cr0, f3, f2 - ble lbl_80278CA0 - lfs f2, lbl_8051B418@sda21(r2) - fdivs f2, f2, f3 - fmuls f8, f8, f2 - fmuls f0, f0, f2 - fmuls f1, f1, f2 - -lbl_80278CA0: - fmuls f8, f8, f9 - fmuls f0, f0, f9 - fmuls f1, f1, f9 - fadds f8, f8, f5 - fadds f0, f0, f6 - fadds f1, f1, f7 - -lbl_80278CB8: - stfs f8, 0(r29) - stfs f0, 4(r29) - stfs f1, 8(r29) - psq_l f31, 88(r1), 0, qr0 - lfd f31, 0x50(r1) - psq_l f30, 72(r1), 0, qr0 - lfd f30, 0x40(r1) - psq_l f29, 56(r1), 0, qr0 - lfd f29, 0x30(r1) - lwz r31, 0x2c(r1) - lwz r30, 0x28(r1) - lwz r0, 0x64(r1) - lwz r29, 0x24(r1) - mtlr r0 - addi r1, r1, 0x60 - blr - */ + return sep; } /* diff --git a/tools/progress.csv b/tools/progress.csv index 6780d4626..5ab3b4617 100644 --- a/tools/progress.csv +++ b/tools/progress.csv @@ -519,3 +519,7 @@ You have 2548 out of 10000 Pokos and 71 out of 201 treasures.",2023-09-05 01:24: You have 2558 out of 10000 Pokos and 71 out of 201 treasures.",2023-09-07 21:27:55.208360 2570,1195924,0.25705793542707,71,254257,0.35667371811417736," You have 2570 out of 10000 Pokos and 71 out of 201 treasures.",2023-09-08 18:47:59.280473 +2585,1202708,0.2585161225977742,71,255208,0.3580077883892399," +You have 2585 out of 10000 Pokos and 71 out of 201 treasures.",2023-09-09 19:07:51.435737 +2589,1204948,0.25899759949376144,72,256100,0.3592590930005499," +You have 2589 out of 10000 Pokos and 72 out of 201 treasures.",2023-09-09 19:10:12.380780