From 2644cb1ea4b5949063ee14107609fb36f3d4e76d Mon Sep 17 00:00:00 2001 From: Phillip Stephens Date: Thu, 8 May 2025 12:46:53 -0700 Subject: [PATCH] Ripper (#21) * Match and link CRipper * Apply symbols --- config/GM8E01_00/symbols.txt | 298 +++++++++--------- config/GM8E01_01/symbols.txt | 296 ++++++++--------- configure.py | 2 +- .../BodyState/CBodyStateCmdMgr.hpp | 8 + .../Enemies/CKnockBackController.hpp | 4 +- include/MetroidPrime/Enemies/CPatterned.hpp | 1 + include/MetroidPrime/Enemies/CRipper.hpp | 38 +++ src/MetroidPrime/Enemies/CRipper.cpp | 191 +++++++++++ 8 files changed, 538 insertions(+), 300 deletions(-) create mode 100644 include/MetroidPrime/Enemies/CRipper.hpp create mode 100644 src/MetroidPrime/Enemies/CRipper.cpp diff --git a/config/GM8E01_00/symbols.txt b/config/GM8E01_00/symbols.txt index 96ff81d0..472c634c 100644 --- a/config/GM8E01_00/symbols.txt +++ b/config/GM8E01_00/symbols.txt @@ -1789,10 +1789,10 @@ GetSearchPath__10CPatternedFv = .text:0x800777FC; // type:function size:0x8 scop GetModelAlphau8__10CPatternedCFRC13CStateManager = .text:0x80077804; // type:function size:0x8 scope:global IsOnGround__10CPatternedCFv = .text:0x8007780C; // type:function size:0xC scope:global GetGravityConstant__10CPatternedCFv = .text:0x80077818; // type:function size:0x8 scope:global -GetProjectileInfo__10CPatternedFv = .text:0x80077820; // type:function size:0x8 scope:global +ProjectileInfo__10CPatternedFv = .text:0x80077820; // type:function size:0x8 scope:weak GetDeathExplosionParticle__10CPatternedCFv = .text:0x80077828; // type:function size:0x8 scope:global IsListening__3CAiCFv = .text:0x80077830; // type:function size:0x8 scope:global -GetOrigin__3CAiCFv = .text:0x80077838; // type:function size:0x1C scope:global +GetOrigin__3CAiCFRC13CStateManagerRC11CTeamAiRoleRC9CVector3f = .text:0x80077838; // type:function size:0x1C scope:global UpdateThermalFrozenState__10CPatternedFb = .text:0x80077854; // type:function size:0x40 scope:global MakeThermalColdAndHot__10CPatternedFv = .text:0x80077894; // type:function size:0x24 scope:global AddToRenderer__10CPatternedCFRC14CFrustumPlanesRC13CStateManager = .text:0x800778B8; // type:function size:0xD8 scope:global @@ -1818,8 +1818,8 @@ GetContactDamage__10CPatternedCFv = .text:0x800789C4; // type:function size:0x3C DeathDelete__10CPatternedFR13CStateManager = .text:0x80078A00; // type:function size:0x88 scope:global CalcDyingThinkRate__10CPatternedFv = .text:0x80078A88; // type:function size:0x54 scope:global PhazeOut__10CPatternedFR13CStateManager = .text:0x80078ADC; // type:function size:0x84 scope:global -Freeze__10CPatternedFRC9CVector3f13CUnitVector3ff = .text:0x80078B60; // type:function size:0x188 scope:global -Shock__10CPatternedFff = .text:0x80078CE8; // type:function size:0xE4 scope:global +Freeze__10CPatternedFR13CStateManagerRC9CVector3fRC13CUnitVector3ff = .text:0x80078B60; // type:function size:0x188 scope:global +Shock__10CPatternedFR13CStateManagerff = .text:0x80078CE8; // type:function size:0xE4 scope:global Burn__10CPatternedFff = .text:0x80078DCC; // type:function size:0xE4 scope:global DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef = .text:0x80078EB0; // type:function size:0x4B4 scope:global ThinkAboutMove__10CPatternedFf = .text:0x80079364; // type:function size:0x2E4 scope:global @@ -1831,7 +1831,7 @@ AreStateStringsEqual__10CPatternedFPCcPCc = .text:0x8007A454; // type:function s CompareStateString__10CPatternedFPCcPCci = .text:0x8007A48C; // type:function size:0x12C scope:global UpdateDamageColor__10CPatternedFf = .text:0x8007A5B8; // type:function size:0xD4 scope:global UpdateAlphaDelta__10CPatternedFfR13CStateManager = .text:0x8007A68C; // type:function size:0xF0 scope:global -KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef = .text:0x8007A77C; // type:function size:0x3B8 scope:global +KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypebf = .text:0x8007A77C; // type:function size:0x3B8 scope:global MassiveFrozenDeath__10CPatternedFR13CStateManager = .text:0x8007AB34; // type:function size:0x1B4 scope:global MassiveDeath__10CPatternedFR13CStateManager = .text:0x8007ACE8; // type:function size:0xD0 scope:global GenerateIceDeathExplosion__10CPatternedFR13CStateManager = .text:0x8007ADB8; // type:function size:0x220 scope:global @@ -7633,13 +7633,13 @@ ClearObjectList__17CScriptPlayerHintFv = .text:0x8015BC64; // type:function size __ct__17CScriptPlayerHintF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbii = .text:0x8015BCBC; // type:function size:0x110 scope:global RemovePlatform__7CRipperFR13CStateManager = .text:0x8015BDCC; // type:function size:0x54 scope:global AddPlatform__7CRipperFR13CStateManager = .text:0x8015BE20; // type:function size:0x214 scope:global -fn_8015C034 = .text:0x8015C034; // type:function size:0xAC -fn_8015C0E0 = .text:0x8015C0E0; // type:function size:0x54 +ProcessGrapplePoint__7CRipperFR13CStateManager = .text:0x8015C034; // type:function size:0xAC +RemoveGrapplePoint__7CRipperFR13CStateManager = .text:0x8015C0E0; // type:function size:0x54 AddGrapplePoint__7CRipperFR13CStateManager = .text:0x8015C134; // type:function size:0x148 scope:global Patrol__7CRipperFR13CStateManager9EStateMsgf = .text:0x8015C27C; // type:function size:0x88 scope:global PathOver__7CRipperFR13CStateManagerf = .text:0x8015C304; // type:function size:0x8 scope:global -KnockBack__7CRipperFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef = .text:0x8015C30C; // type:function size:0xD8 scope:global -GetCollisionResponseType__7CRipperFRC9CVector3fRC9CVector3fRC11CWeaponModei = .text:0x8015C3E4; // type:function size:0x60 scope:global +KnockBack__7CRipperFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypebf = .text:0x8015C30C; // type:function size:0xD8 scope:global +GetCollisionResponseType__7CRipperCFRC9CVector3fRC9CVector3fRC11CWeaponModei = .text:0x8015C3E4; // type:function size:0x60 scope:global AcceptScriptMsg__7CRipperF20EScriptObjectMessage9TUniqueIdR13CStateManager = .text:0x8015C444; // type:function size:0x134 scope:global Think__7CRipperFfR13CStateManager = .text:0x8015C578; // type:function size:0x120 scope:global Accept__7CRipperFR8IVisitor = .text:0x8015C698; // type:function size:0x38 scope:global @@ -17159,7 +17159,7 @@ lbl_803D0267 = .rodata:0x803D0267; // type:object size:0x16 lbl_803D027D = .rodata:0x803D027D; // type:object size:0xB3 lbl_803D0330 = .rodata:0x803D0330; // type:object size:0x10 lbl_803D0340 = .rodata:0x803D0340; // type:object size:0x18 -lbl_803D0358 = .rodata:0x803D0358; // type:object size:0x38 +@stringBase0 = .rodata:0x803D0358; // type:object size:0x35 scope:local data:string_table lbl_803D0390 = .rodata:0x803D0390; // type:object size:0x8 lbl_803D0398 = .rodata:0x803D0398; // type:object size:0xC data:string lbl_803D03A4 = .rodata:0x803D03A4; // type:object size:0xF data:string @@ -17809,8 +17809,8 @@ gCantBeginChars = .rodata:0x803D6EC8; // type:object size:0x1F8 scope:global gCantEndChars = .rodata:0x803D70C0; // type:object size:0x2C8 scope:global lbl_803D7388 = .rodata:0x803D7388; // type:object size:0x10 lbl_803D7398 = .rodata:0x803D7398; // type:object size:0x8 -indMtx$268 = .rodata:0x803D73A0; // type:object size:0x18 scope:local -vtxDescList$289 = .rodata:0x803D73B8; // type:object size:0x10 scope:local +indMtx$270 = .rodata:0x803D73A0; // type:object size:0x18 scope:local +vtxDescList$291 = .rodata:0x803D73B8; // type:object size:0x10 scope:local lbl_803D73C8 = .rodata:0x803D73C8; // type:object size:0x20 @stringBase0 = .rodata:0x803D73E8; // type:object size:0x7 scope:local data:string_table @477 = .rodata:0x803D73F0; // type:object size:0x10 scope:local data:4byte @@ -18143,7 +18143,7 @@ jumptable_803DAE7C = .data:0x803DAE7C; // type:object size:0x2C scope:local jumptable_803DAEA8 = .data:0x803DAEA8; // type:object size:0x2C scope:local jumptable_803DAED4 = .data:0x803DAED4; // type:object size:0x1C scope:local __vt__14CScriptCounter = .data:0x803DAEF0; // type:object size:0x20 scope:global -@252 = .data:0x803DAF10; // type:object size:0x24 scope:local +@277 = .data:0x803DAF10; // type:object size:0x24 scope:local lbl_803DAF38 = .data:0x803DAF38; // type:object size:0x10 lbl_803DAF48 = .data:0x803DAF48; // type:object size:0x10 lbl_803DAF58 = .data:0x803DAF58; // type:object size:0xD74 data:4byte @@ -18211,7 +18211,7 @@ __vt__21CScriptCameraWaypoint = .data:0x803DF348; // type:object size:0x6C scope __vt__10CGameLight = .data:0x803DF3B8; // type:object size:0x6C scope:global lbl_803DF428 = .data:0x803DF428; // type:object size:0x10 __vt__16CTweakAutoMapper = .data:0x803DF438; // type:object size:0xC scope:global -__vt__23CParticleGenInfoGeneric = .data:0x803DF448; // type:object size:0x50 scope:weak +__vt__23CParticleGenInfoGeneric = .data:0x803DF448; // type:object size:0x50 scope:global __vt__16CParticleGenInfo = .data:0x803DF498; // type:object size:0x50 scope:weak lbl_803DF4E8 = .data:0x803DF4E8; // type:object size:0x10 __vt__13CScriptPickup = .data:0x803DF4F8; // type:object size:0x84 scope:global @@ -18244,7 +18244,7 @@ __vt__14CBCScriptedCmd = .data:0x803DFE40; // type:object size:0xC scope:weak __vt__20CConsoleOutputWindow = .data:0x803DFE50; // type:object size:0x1C lbl_803DFE70 = .data:0x803DFE70; // type:object size:0x80 __vt__7CWeapon = .data:0x803DFEF0; // type:object size:0x6C scope:global -@391 = .data:0x803DFF5C; // type:object size:0x24 scope:local +@416 = .data:0x803DFF5C; // type:object size:0x24 scope:local __vt__16CLightParameters = .data:0x803DFF80; // type:object size:0xC scope:global lbl_803DFF90 = .data:0x803DFF90; // type:object size:0x2CC jumptable_803E025C = .data:0x803E025C; // type:object size:0x48 scope:local @@ -18353,7 +18353,7 @@ lbl_803E2D28 = .data:0x803E2D28; // type:object size:0x2D0 lbl_803E2FF8 = .data:0x803E2FF8; // type:object size:0xC data:4byte lbl_803E3004 = .data:0x803E3004; // type:object size:0x2D4 __vt__17CScriptPlayerHint = .data:0x803E32D8; // type:object size:0x6C scope:global -lbl_803E3348 = .data:0x803E3348; // type:object size:0x2D0 +__vt__7CRipper = .data:0x803E3348; // type:object size:0x2CC __vt__22CScriptPickupGenerator = .data:0x803E3618; // type:object size:0x20 scope:global __vt__22CScriptPointOfInterest = .data:0x803E3638; // type:object size:0x6C scope:global lbl_803E36A8 = .data:0x803E36A8; // type:object size:0x2E0 @@ -19174,7 +19174,7 @@ lbl_8045C598 = .bss:0x8045C598; // type:object size:0xC lbl_8045C5A4 = .bss:0x8045C5A4; // type:object size:0x10 lbl_8045C5B4 = .bss:0x8045C5B4; // type:object size:0xF3C8 lbl_8046B97C = .bss:0x8046B97C; // type:object size:0xA3C -@168 = .bss:0x8046C3B8; // type:object size:0xC scope:local +@193 = .bss:0x8046C3B8; // type:object size:0xC scope:local lbl_8046C3C8 = .bss:0x8046C3C8; // type:object size:0xC align:4 data:float lbl_8046C3D4 = .bss:0x8046C3D4; // type:object size:0xC data:4byte MinesPostTransforms = .bss:0x8046C3E0; // type:object size:0x28 scope:local align:4 data:float @@ -19184,7 +19184,7 @@ lbl_8046C438 = .bss:0x8046C438; // type:object size:0x18 data:4byte lbl_8046C450 = .bss:0x8046C450; // type:object size:0x20 data:2byte lbl_8046C470 = .bss:0x8046C470; // type:object size:0xC align:4 data:float lbl_8046C47C = .bss:0x8046C47C; // type:object size:0xC align:4 data:float -@314 = .bss:0x8046C488; // type:object size:0xC scope:local +@339 = .bss:0x8046C488; // type:object size:0xC scope:local skDoorVerts__15CMappableObject = .bss:0x8046C498; // type:object size:0x60 scope:local align:4 data:float lbl_8046C4F8 = .bss:0x8046C4F8; // type:object size:0xC lbl_8046C504 = .bss:0x8046C504; // type:object size:0x1C data:4byte @@ -19732,7 +19732,7 @@ lbl_805A6E68 = .sdata:0x805A6E68; // type:object size:0x4 data:4byte lbl_805A6E6C = .sdata:0x805A6E6C; // type:object size:0x2 data:2byte lbl_805A6E70 = .sdata:0x805A6E70; // type:object size:0x4 lbl_805A6E74 = .sdata:0x805A6E74; // type:object size:0x4 -@209 = .sdata:0x805A6E78; // type:object size:0x4 scope:local data:4byte +@234 = .sdata:0x805A6E78; // type:object size:0x4 scope:local data:4byte lbl_805A6E80 = .sdata:0x805A6E80; // type:object size:0x4 data:4byte lbl_805A6E84 = .sdata:0x805A6E84; // type:object size:0x4 lbl_805A6E88 = .sdata:0x805A6E88; // type:object size:0x4 @@ -19800,7 +19800,7 @@ lbl_805A6F88 = .sdata:0x805A6F88; // type:object size:0x4 lbl_805A6F8C = .sdata:0x805A6F8C; // type:object size:0x4 lbl_805A6F90 = .sdata:0x805A6F90; // type:object size:0x4 data:4byte lbl_805A6F94 = .sdata:0x805A6F94; // type:object size:0x4 data:4byte -@207 = .sdata:0x805A6F98; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A6F98; // type:object size:0x4 scope:local data:4byte lbl_805A6FA0 = .sdata:0x805A6FA0; // type:object size:0x4 data:4byte lbl_805A6FA4 = .sdata:0x805A6FA4; // type:object size:0x4 data:4byte lbl_805A6FA8 = .sdata:0x805A6FA8; // type:object size:0x4 data:4byte @@ -19950,8 +19950,8 @@ lbl_805A7200 = .sdata:0x805A7200; // type:object size:0x4 data:4byte lbl_805A7204 = .sdata:0x805A7204; // type:object size:0x4 data:4byte lbl_805A7208 = .sdata:0x805A7208; // type:object size:0x4 data:4byte lbl_805A720C = .sdata:0x805A720C; // type:object size:0x4 data:4byte -@207 = .sdata:0x805A7210; // type:object size:0x4 scope:local data:4byte -@208 = .sdata:0x805A7218; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A7210; // type:object size:0x4 scope:local data:4byte +@233 = .sdata:0x805A7218; // type:object size:0x4 scope:local data:4byte lbl_805A7220 = .sdata:0x805A7220; // type:object size:0x1 data:byte lbl_805A7221 = .sdata:0x805A7221; // type:object size:0x1 data:byte lbl_805A7222 = .sdata:0x805A7222; // type:object size:0x1 data:byte @@ -20024,7 +20024,7 @@ lbl_805A7310 = .sdata:0x805A7310; // type:object size:0x4 align:4 data:float lbl_805A7314 = .sdata:0x805A7314; // type:object size:0x4 align:4 data:float lbl_805A7318 = .sdata:0x805A7318; // type:object size:0x4 lbl_805A731C = .sdata:0x805A731C; // type:object size:0x4 -@361 = .sdata:0x805A7320; // type:object size:0x4 scope:local align:4 data:float +@386 = .sdata:0x805A7320; // type:object size:0x4 scope:local align:4 data:float @298 = .sdata:0x805A7328; // type:object size:0x1 scope:local data:byte @367 = .sdata:0x805A7329; // type:object size:0x1 scope:local data:byte lbl_805A7330 = .sdata:0x805A7330; // type:object size:0x4 data:4byte @@ -20159,7 +20159,7 @@ lbl_805A7548 = .sdata:0x805A7548; // type:object size:0x1 data:byte lbl_805A754C = .sdata:0x805A754C; // type:object size:0x4 data:4byte lbl_805A7550 = .sdata:0x805A7550; // type:object size:0x4 align:4 data:float lbl_805A7554 = .sdata:0x805A7554; // type:object size:0x4 data:4byte -@264 = .sdata:0x805A7558; // type:object size:0x4 scope:local data:float +@289 = .sdata:0x805A7558; // type:object size:0x4 scope:local data:float lbl_805A7560 = .sdata:0x805A7560; // type:object size:0x1 data:byte lbl_805A7564 = .sdata:0x805A7564; // type:object size:0x4 data:4byte lbl_805A7568 = .sdata:0x805A7568; // type:object size:0x4 data:4byte @@ -20236,7 +20236,7 @@ lbl_805A7694 = .sdata:0x805A7694; // type:object size:0x4 lbl_805A7698 = .sdata:0x805A7698; // type:object size:0x4 lbl_805A769C = .sdata:0x805A769C; // type:object size:0x4 lbl_805A76A0 = .sdata:0x805A76A0; // type:object size:0x8 -@207 = .sdata:0x805A76A8; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A76A8; // type:object size:0x4 scope:local data:4byte lbl_805A76B0 = .sdata:0x805A76B0; // type:object size:0x4 data:4byte lbl_805A76B4 = .sdata:0x805A76B4; // type:object size:0x4 data:4byte lbl_805A76B8 = .sdata:0x805A76B8; // type:object size:0x4 align:4 data:float @@ -20247,7 +20247,7 @@ lbl_805A76CC = .sdata:0x805A76CC; // type:object size:0x4 align:4 data:float lbl_805A76D0 = .sdata:0x805A76D0; // type:object size:0x8 align:4 data:float lbl_805A76D8 = .sdata:0x805A76D8; // type:object size:0x4 data:4byte lbl_805A76DC = .sdata:0x805A76DC; // type:object size:0x4 data:4byte -@207 = .sdata:0x805A76E0; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A76E0; // type:object size:0x4 scope:local data:4byte @441 = .sdata:0x805A76E8; // type:object size:0x4 scope:local align:4 data:float lbl_805A76F0 = .sdata:0x805A76F0; // type:object size:0x4 data:4byte lbl_805A76F4 = .sdata:0x805A76F4; // type:object size:0x4 data:4byte @@ -20291,7 +20291,7 @@ lbl_805A7790 = .sdata:0x805A7790; // type:object size:0x4 data:4byte lbl_805A7794 = .sdata:0x805A7794; // type:object size:0x4 data:4byte lbl_805A7798 = .sdata:0x805A7798; // type:object size:0x8 data:4byte lbl_805A77A0 = .sdata:0x805A77A0; // type:object size:0x8 data:4byte -@207 = .sdata:0x805A77A8; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A77A8; // type:object size:0x4 scope:local data:4byte lbl_805A77B0 = .sdata:0x805A77B0; // type:object size:0x8 data:4byte lbl_805A77B8 = .sdata:0x805A77B8; // type:object size:0x4 data:4byte lbl_805A77BC = .sdata:0x805A77BC; // type:object size:0x4 data:4byte @@ -20335,11 +20335,11 @@ lbl_805A785C = .sdata:0x805A785C; // type:object size:0x4 data:4byte lbl_805A7860 = .sdata:0x805A7860; // type:object size:0x8 data:4byte lbl_805A7868 = .sdata:0x805A7868; // type:object size:0x4 lbl_805A786C = .sdata:0x805A786C; // type:object size:0x4 -@225 = .sdata:0x805A7870; // type:object size:0x4 scope:local data:4byte -lbl_805A7878 = .sdata:0x805A7878; // type:object size:0x4 data:4byte -lbl_805A787C = .sdata:0x805A787C; // type:object size:0x4 data:4byte -lbl_805A7880 = .sdata:0x805A7880; // type:object size:0x4 data:4byte -lbl_805A7884 = .sdata:0x805A7884; // type:object size:0x4 data:4byte +@250 = .sdata:0x805A7870; // type:object size:0x4 scope:local data:4byte +@252 = .sdata:0x805A7878; // type:object size:0x4 scope:local data:4byte +@253 = .sdata:0x805A787C; // type:object size:0x4 scope:local data:4byte +@254 = .sdata:0x805A7880; // type:object size:0x4 scope:local data:4byte +@255 = .sdata:0x805A7884; // type:object size:0x4 scope:local data:4byte lbl_805A7888 = .sdata:0x805A7888; // type:object size:0x4 lbl_805A788C = .sdata:0x805A788C; // type:object size:0x4 lbl_805A7890 = .sdata:0x805A7890; // type:object size:0x4 @@ -20347,7 +20347,7 @@ lbl_805A7894 = .sdata:0x805A7894; // type:object size:0x4 lbl_805A7898 = .sdata:0x805A7898; // type:object size:0x4 lbl_805A789C = .sdata:0x805A789C; // type:object size:0x4 lbl_805A78A0 = .sdata:0x805A78A0; // type:object size:0x8 data:4byte -@211 = .sdata:0x805A78A8; // type:object size:0x4 scope:local data:4byte +@236 = .sdata:0x805A78A8; // type:object size:0x4 scope:local data:4byte lbl_805A78B0 = .sdata:0x805A78B0; // type:object size:0x4 data:4byte lbl_805A78B4 = .sdata:0x805A78B4; // type:object size:0x4 data:4byte lbl_805A78B8 = .sdata:0x805A78B8; // type:object size:0x4 data:4byte @@ -20468,7 +20468,7 @@ lbl_805A7A90 = .sdata:0x805A7A90; // type:object size:0x8 align:8 data:double lbl_805A7A98 = .sdata:0x805A7A98; // type:object size:0x8 align:4 data:float lbl_805A7AA0 = .sdata:0x805A7AA0; // type:object size:0x4 data:4byte lbl_805A7AA4 = .sdata:0x805A7AA4; // type:object size:0x4 align:4 data:float -@207 = .sdata:0x805A7AA8; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A7AA8; // type:object size:0x4 scope:local data:4byte @384 = .sdata:0x805A7AB0; // type:object size:0x4 scope:local data:4byte lbl_805A7AB8 = .sdata:0x805A7AB8; // type:object size:0x4 lbl_805A7ABC = .sdata:0x805A7ABC; // type:object size:0x4 @@ -20639,8 +20639,8 @@ lbl_805A7D6C = .sdata:0x805A7D6C; // type:object size:0x1 data:byte lbl_805A7D6D = .sdata:0x805A7D6D; // type:object size:0x1 data:byte lbl_805A7D6E = .sdata:0x805A7D6E; // type:object size:0x2 lbl_805A7D70 = .sdata:0x805A7D70; // type:object size:0x8 -@244 = .sdata:0x805A7D78; // type:object size:0x4 scope:local data:4byte -@417 = .sdata:0x805A7D80; // type:object size:0x4 scope:local align:4 data:float +@269 = .sdata:0x805A7D78; // type:object size:0x4 scope:local data:4byte +@442 = .sdata:0x805A7D80; // type:object size:0x4 scope:local align:4 data:float lbl_805A7D88 = .sdata:0x805A7D88; // type:object size:0x4 lbl_805A7D8C = .sdata:0x805A7D8C; // type:object size:0x4 lbl_805A7D90 = .sdata:0x805A7D90; // type:object size:0x8 data:4byte @@ -20679,7 +20679,7 @@ lbl_805A7E14 = .sdata:0x805A7E14; // type:object size:0x4 data:4byte lbl_805A7E18 = .sdata:0x805A7E18; // type:object size:0x4 data:4byte lbl_805A7E1C = .sdata:0x805A7E1C; // type:object size:0x4 lbl_805A7E20 = .sdata:0x805A7E20; // type:object size:0x8 -@207 = .sdata:0x805A7E28; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A7E28; // type:object size:0x4 scope:local data:4byte lbl_805A7E30 = .sdata:0x805A7E30; // type:object size:0x4 align:4 data:float lbl_805A7E34 = .sdata:0x805A7E34; // type:object size:0x4 align:4 data:float lbl_805A7E38 = .sdata:0x805A7E38; // type:object size:0x4 @@ -20816,7 +20816,7 @@ lbl_805A805C = .sdata:0x805A805C; // type:object size:0x4 data:4byte lbl_805A8060 = .sdata:0x805A8060; // type:object size:0x4 data:4byte lbl_805A8064 = .sdata:0x805A8064; // type:object size:0x4 data:4byte lbl_805A8068 = .sdata:0x805A8068; // type:object size:0x8 data:4byte -@207 = .sdata:0x805A8070; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A8070; // type:object size:0x4 scope:local data:4byte lbl_805A8078 = .sdata:0x805A8078; // type:object size:0x1 data:byte lbl_805A807C = .sdata:0x805A807C; // type:object size:0x4 align:4 data:float lbl_805A8080 = .sdata:0x805A8080; // type:object size:0x1 data:byte @@ -20857,7 +20857,7 @@ lbl_805A8110 = .sdata:0x805A8110; // type:object size:0x4 lbl_805A8114 = .sdata:0x805A8114; // type:object size:0x4 lbl_805A8118 = .sdata:0x805A8118; // type:object size:0x4 lbl_805A811C = .sdata:0x805A811C; // type:object size:0x4 -@295 = .sdata:0x805A8120; // type:object size:0x4 scope:local data:4byte +@320 = .sdata:0x805A8120; // type:object size:0x4 scope:local data:4byte lbl_805A8128 = .sdata:0x805A8128; // type:object size:0x4 data:4byte lbl_805A812C = .sdata:0x805A812C; // type:object size:0x4 data:4byte lbl_805A8130 = .sdata:0x805A8130; // type:object size:0x4 data:4byte @@ -20958,7 +20958,7 @@ lbl_805A82B4 = .sdata:0x805A82B4; // type:object size:0x4 data:4byte @141 = .sdata:0x805A82BC; // type:object size:0x4 scope:local align:4 data:float lbl_805A82C0 = .sdata:0x805A82C0; // type:object size:0x4 data:4byte lbl_805A82C4 = .sdata:0x805A82C4; // type:object size:0x4 data:4byte -@207 = .sdata:0x805A82C8; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A82C8; // type:object size:0x4 scope:local data:4byte lbl_805A82D0 = .sdata:0x805A82D0; // type:object size:0x1 data:byte lbl_805A82D1 = .sdata:0x805A82D1; // type:object size:0x1 lbl_805A82D2 = .sdata:0x805A82D2; // type:object size:0x1 data:byte @@ -22929,8 +22929,8 @@ lbl_805AA5C8 = .sdata2:0x805AA5C8; // type:object size:0x8 align:8 data:double lbl_805AA5F0 = .sdata2:0x805AA5F0; // type:object size:0x4 align:4 data:float lbl_805AA5F4 = .sdata2:0x805AA5F4; // type:object size:0x4 align:4 data:float lbl_805AA5F8 = .sdata2:0x805AA5F8; // type:object size:0x8 align:4 data:float -@441 = .sdata2:0x805AA600; // type:object size:0x4 scope:local align:4 data:float -@445 = .sdata2:0x805AA608; // type:object size:0x8 scope:local align:8 data:double +@466 = .sdata2:0x805AA600; // type:object size:0x4 scope:local align:4 data:float +@470 = .sdata2:0x805AA608; // type:object size:0x8 scope:local align:8 data:double lbl_805AA610 = .sdata2:0x805AA610; // type:object size:0x4 align:4 data:float lbl_805AA614 = .sdata2:0x805AA614; // type:object size:0x4 align:4 data:float lbl_805AA618 = .sdata2:0x805AA618; // type:object size:0x4 @@ -23066,7 +23066,7 @@ lbl_805AA83C = .sdata2:0x805AA83C; // type:object size:0x4 align:4 data:float lbl_805AA840 = .sdata2:0x805AA840; // type:object size:0x8 align:8 data:double lbl_805AA848 = .sdata2:0x805AA848; // type:object size:0x4 align:4 data:float kDefaultKnockbackResistance = .sdata2:0x805AA84C; // type:object size:0x4 scope:global align:4 data:float -@249 = .sdata2:0x805AA850; // type:object size:0x4 scope:local align:4 data:float +@274 = .sdata2:0x805AA850; // type:object size:0x4 scope:local align:4 data:float lbl_805AA858 = .sdata2:0x805AA858; // type:object size:0x4 align:4 data:float lbl_805AA85C = .sdata2:0x805AA85C; // type:object size:0x4 align:4 data:float lbl_805AA860 = .sdata2:0x805AA860; // type:object size:0x4 align:4 data:float @@ -23161,15 +23161,15 @@ lbl_805AA9F8 = .sdata2:0x805AA9F8; // type:object size:0x4 align:4 data:float lbl_805AA9FC = .sdata2:0x805AA9FC; // type:object size:0x4 align:4 data:float lbl_805AAA00 = .sdata2:0x805AAA00; // type:object size:0x4 align:4 data:float lbl_805AAA08 = .sdata2:0x805AAA08; // type:object size:0x8 align:8 data:double -@298 = .sdata2:0x805AAA10; // type:object size:0x4 scope:local align:4 data:float +@323 = .sdata2:0x805AAA10; // type:object size:0x4 scope:local align:4 data:float lbl_805AAA18 = .sdata2:0x805AAA18; // type:object size:0x4 align:4 data:float lbl_805AAA1C = .sdata2:0x805AAA1C; // type:object size:0x4 align:4 data:float lbl_805AAA20 = .sdata2:0x805AAA20; // type:object size:0x8 align:4 data:float @233 = .sdata2:0x805AAA28; // type:object size:0x4 scope:local align:4 data:float @234 = .sdata2:0x805AAA2C; // type:object size:0x4 scope:local align:4 data:float -@270 = .sdata2:0x805AAA30; // type:object size:0x4 scope:local align:4 data:float -@280 = .sdata2:0x805AAA34; // type:object size:0x4 scope:local align:4 data:float -@285 = .sdata2:0x805AAA38; // type:object size:0x8 scope:local align:8 data:double +@295 = .sdata2:0x805AAA30; // type:object size:0x4 scope:local align:4 data:float +@305 = .sdata2:0x805AAA34; // type:object size:0x4 scope:local align:4 data:float +@310 = .sdata2:0x805AAA38; // type:object size:0x8 scope:local align:8 data:double lbl_805AAA40 = .sdata2:0x805AAA40; // type:object size:0x4 align:4 data:float lbl_805AAA44 = .sdata2:0x805AAA44; // type:object size:0x4 align:4 data:float lbl_805AAA48 = .sdata2:0x805AAA48; // type:object size:0x4 align:4 data:float @@ -23290,19 +23290,19 @@ lbl_805AAC40 = .sdata2:0x805AAC40; // type:object size:0x4 align:4 data:float lbl_805AAC44 = .sdata2:0x805AAC44; // type:object size:0x4 align:4 data:float lbl_805AAC48 = .sdata2:0x805AAC48; // type:object size:0x8 align:4 data:float kSoundId = .sdata2:0x805AAC50; // type:object size:0x4 scope:local -@510 = .sdata2:0x805AAC54; // type:object size:0x4 scope:local align:4 data:float -@511 = .sdata2:0x805AAC58; // type:object size:0x4 scope:local align:4 data:float -@584 = .sdata2:0x805AAC5C; // type:object size:0x4 scope:local align:4 data:float -@585 = .sdata2:0x805AAC60; // type:object size:0x4 scope:local align:4 data:float -@586 = .sdata2:0x805AAC64; // type:object size:0x4 scope:local align:4 data:float -@587 = .sdata2:0x805AAC68; // type:object size:0x4 scope:local align:4 data:float -@588 = .sdata2:0x805AAC6C; // type:object size:0x4 scope:local align:4 data:float -@641 = .sdata2:0x805AAC70; // type:object size:0x4 scope:local align:4 data:float -@642 = .sdata2:0x805AAC74; // type:object size:0x4 scope:local align:4 data:float -@643 = .sdata2:0x805AAC78; // type:object size:0x4 scope:local align:4 data:float -@644 = .sdata2:0x805AAC7C; // type:object size:0x4 scope:local align:4 data:float -@740 = .sdata2:0x805AAC80; // type:object size:0x4 scope:local align:4 data:float -@741 = .sdata2:0x805AAC84; // type:object size:0x4 scope:local align:4 data:float +@535 = .sdata2:0x805AAC54; // type:object size:0x4 scope:local align:4 data:float +@536 = .sdata2:0x805AAC58; // type:object size:0x4 scope:local align:4 data:float +@609 = .sdata2:0x805AAC5C; // type:object size:0x4 scope:local align:4 data:float +@610 = .sdata2:0x805AAC60; // type:object size:0x4 scope:local align:4 data:float +@611 = .sdata2:0x805AAC64; // type:object size:0x4 scope:local align:4 data:float +@612 = .sdata2:0x805AAC68; // type:object size:0x4 scope:local align:4 data:float +@613 = .sdata2:0x805AAC6C; // type:object size:0x4 scope:local align:4 data:float +@666 = .sdata2:0x805AAC70; // type:object size:0x4 scope:local align:4 data:float +@667 = .sdata2:0x805AAC74; // type:object size:0x4 scope:local align:4 data:float +@668 = .sdata2:0x805AAC78; // type:object size:0x4 scope:local align:4 data:float +@669 = .sdata2:0x805AAC7C; // type:object size:0x4 scope:local align:4 data:float +@765 = .sdata2:0x805AAC80; // type:object size:0x4 scope:local align:4 data:float +@766 = .sdata2:0x805AAC84; // type:object size:0x4 scope:local align:4 data:float skSoundId$473 = .sdata2:0x805AAC88; // type:object size:0x4 scope:local @630 = .sdata2:0x805AAC8C; // type:object size:0x4 scope:local align:4 data:float @631 = .sdata2:0x805AAC90; // type:object size:0x4 scope:local align:4 data:float @@ -23342,7 +23342,7 @@ lbl_805AAD28 = .sdata2:0x805AAD28; // type:object size:0x4 align:4 data:float lbl_805AAD2C = .sdata2:0x805AAD2C; // type:object size:0x4 align:4 data:float lbl_805AAD30 = .sdata2:0x805AAD30; // type:object size:0x4 align:4 data:float lbl_805AAD34 = .sdata2:0x805AAD34; // type:object size:0x4 align:4 data:float -@277 = .sdata2:0x805AAD38; // type:object size:0x4 scope:local align:4 data:float +@302 = .sdata2:0x805AAD38; // type:object size:0x4 scope:local align:4 data:float lbl_805AAD40 = .sdata2:0x805AAD40; // type:object size:0x4 align:4 data:float lbl_805AAD44 = .sdata2:0x805AAD44; // type:object size:0x4 align:4 data:float lbl_805AAD48 = .sdata2:0x805AAD48; // type:object size:0x4 align:4 data:float @@ -23377,7 +23377,7 @@ lbl_805AADD4 = .sdata2:0x805AADD4; // type:object size:0x4 align:4 data:float lbl_805AADD8 = .sdata2:0x805AADD8; // type:object size:0x4 align:4 data:float lbl_805AADDC = .sdata2:0x805AADDC; // type:object size:0x4 align:4 data:float lbl_805AADE0 = .sdata2:0x805AADE0; // type:object size:0x8 align:4 data:float -@223 = .sdata2:0x805AADE8; // type:object size:0x4 scope:local align:4 data:float +@248 = .sdata2:0x805AADE8; // type:object size:0x4 scope:local align:4 data:float lbl_805AADF0 = .sdata2:0x805AADF0; // type:object size:0x4 align:4 data:float lbl_805AADF4 = .sdata2:0x805AADF4; // type:object size:0x4 align:4 data:float lbl_805AADF8 = .sdata2:0x805AADF8; // type:object size:0x4 align:4 data:float @@ -23557,12 +23557,12 @@ lbl_805AB0F4 = .sdata2:0x805AB0F4; // type:object size:0x4 align:4 data:float lbl_805AB0F8 = .sdata2:0x805AB0F8; // type:object size:0x4 align:4 data:float lbl_805AB0FC = .sdata2:0x805AB0FC; // type:object size:0x4 align:4 data:float lbl_805AB100 = .sdata2:0x805AB100; // type:object size:0x8 align:4 data:float -@385 = .sdata2:0x805AB108; // type:object size:0x4 scope:local align:4 data:float -@386 = .sdata2:0x805AB10C; // type:object size:0x4 scope:local align:4 data:float -@387 = .sdata2:0x805AB110; // type:object size:0x4 scope:local align:4 data:float -@388 = .sdata2:0x805AB114; // type:object size:0x4 scope:local align:4 data:float -@389 = .sdata2:0x805AB118; // type:object size:0x4 scope:local align:4 data:float -@390 = .sdata2:0x805AB11C; // type:object size:0x4 scope:local align:4 data:float +@410 = .sdata2:0x805AB108; // type:object size:0x4 scope:local align:4 data:float +@411 = .sdata2:0x805AB10C; // type:object size:0x4 scope:local align:4 data:float +@412 = .sdata2:0x805AB110; // type:object size:0x4 scope:local align:4 data:float +@413 = .sdata2:0x805AB114; // type:object size:0x4 scope:local align:4 data:float +@414 = .sdata2:0x805AB118; // type:object size:0x4 scope:local align:4 data:float +@415 = .sdata2:0x805AB11C; // type:object size:0x4 scope:local align:4 data:float lbl_805AB120 = .sdata2:0x805AB120; // type:object size:0x4 data:4byte kDefaultPositionUpdateThreshold__12CActorLights = .sdata2:0x805AB124; // type:object size:0x4 scope:global align:4 data:float lbl_805AB128 = .sdata2:0x805AB128; // type:object size:0x4 align:4 data:float @@ -23829,10 +23829,10 @@ lbl_805AB5A4 = .sdata2:0x805AB5A4; // type:object size:0x4 align:4 data:float lbl_805AB5A8 = .sdata2:0x805AB5A8; // type:object size:0x4 align:4 data:float lbl_805AB5AC = .sdata2:0x805AB5AC; // type:object size:0x4 align:4 data:float lbl_805AB5B0 = .sdata2:0x805AB5B0; // type:object size:0x8 align:4 data:float -@356 = .sdata2:0x805AB5B8; // type:object size:0x4 scope:local align:4 data:float -@472 = .sdata2:0x805AB5BC; // type:object size:0x4 scope:local align:4 data:float -@473 = .sdata2:0x805AB5C0; // type:object size:0x4 scope:local align:4 data:float -@562 = .sdata2:0x805AB5C4; // type:object size:0x4 scope:local align:4 data:float +@381 = .sdata2:0x805AB5B8; // type:object size:0x4 scope:local align:4 data:float +@497 = .sdata2:0x805AB5BC; // type:object size:0x4 scope:local align:4 data:float +@498 = .sdata2:0x805AB5C0; // type:object size:0x4 scope:local align:4 data:float +@587 = .sdata2:0x805AB5C4; // type:object size:0x4 scope:local align:4 data:float lbl_805AB5C8 = .sdata2:0x805AB5C8; // type:object size:0x4 align:4 data:float lbl_805AB5CC = .sdata2:0x805AB5CC; // type:object size:0x4 align:4 data:float lbl_805AB5D0 = .sdata2:0x805AB5D0; // type:object size:0x4 align:4 data:float @@ -23865,7 +23865,7 @@ lbl_805AB63C = .sdata2:0x805AB63C; // type:object size:0x4 align:4 data:float lbl_805AB640 = .sdata2:0x805AB640; // type:object size:0x4 align:4 data:float lbl_805AB644 = .sdata2:0x805AB644; // type:object size:0x4 align:4 data:float lbl_805AB648 = .sdata2:0x805AB648; // type:object size:0x8 align:4 data:float -@360 = .sdata2:0x805AB650; // type:object size:0x4 scope:local align:4 data:float +@385 = .sdata2:0x805AB650; // type:object size:0x4 scope:local align:4 data:float @595 = .sdata2:0x805AB658; // type:object size:0x4 scope:local align:4 data:float @598 = .sdata2:0x805AB65C; // type:object size:0x4 scope:local align:4 data:float @748 = .sdata2:0x805AB660; // type:object size:0x4 scope:local align:4 data:float @@ -23893,10 +23893,10 @@ lbl_805AB6BC = .sdata2:0x805AB6BC; // type:object size:0x4 align:4 data:float lbl_805AB6C0 = .sdata2:0x805AB6C0; // type:object size:0x4 align:4 data:float lbl_805AB6C4 = .sdata2:0x805AB6C4; // type:object size:0x4 align:4 data:float lbl_805AB6C8 = .sdata2:0x805AB6C8; // type:object size:0x8 align:4 data:float -@253 = .sdata2:0x805AB6D0; // type:object size:0x4 scope:local align:4 data:float -@293 = .sdata2:0x805AB6D4; // type:object size:0x4 scope:local align:4 data:float -@294 = .sdata2:0x805AB6D8; // type:object size:0x4 scope:local align:4 data:float -@295 = .sdata2:0x805AB6DC; // type:object size:0x4 scope:local align:4 data:float +@278 = .sdata2:0x805AB6D0; // type:object size:0x4 scope:local align:4 data:float +@318 = .sdata2:0x805AB6D4; // type:object size:0x4 scope:local align:4 data:float +@319 = .sdata2:0x805AB6D8; // type:object size:0x4 scope:local align:4 data:float +@320 = .sdata2:0x805AB6DC; // type:object size:0x4 scope:local align:4 data:float lbl_805AB6E0 = .sdata2:0x805AB6E0; // type:object size:0x4 align:4 data:float lbl_805AB6E4 = .sdata2:0x805AB6E4; // type:object size:0x4 align:4 data:float lbl_805AB6E8 = .sdata2:0x805AB6E8; // type:object size:0x4 align:4 data:float @@ -23907,8 +23907,8 @@ lbl_805AB6F8 = .sdata2:0x805AB6F8; // type:object size:0x4 align:4 data:float lbl_805AB6FC = .sdata2:0x805AB6FC; // type:object size:0x4 align:4 data:float lbl_805AB700 = .sdata2:0x805AB700; // type:object size:0x4 align:4 data:float lbl_805AB708 = .sdata2:0x805AB708; // type:object size:0x8 align:8 data:double -@300 = .sdata2:0x805AB710; // type:object size:0x4 scope:local align:4 data:float -@301 = .sdata2:0x805AB714; // type:object size:0x4 scope:local align:4 data:float +@325 = .sdata2:0x805AB710; // type:object size:0x4 scope:local align:4 data:float +@326 = .sdata2:0x805AB714; // type:object size:0x4 scope:local align:4 data:float lbl_805AB718 = .sdata2:0x805AB718; // type:object size:0x4 align:4 data:float lbl_805AB71C = .sdata2:0x805AB71C; // type:object size:0x4 align:4 data:float lbl_805AB720 = .sdata2:0x805AB720; // type:object size:0x4 align:4 data:float @@ -23932,7 +23932,7 @@ lbl_805AB768 = .sdata2:0x805AB768; // type:object size:0x4 align:4 data:float lbl_805AB76C = .sdata2:0x805AB76C; // type:object size:0x4 align:4 data:float lbl_805AB770 = .sdata2:0x805AB770; // type:object size:0x4 align:4 data:float lbl_805AB774 = .sdata2:0x805AB774; // type:object size:0x4 align:4 data:float -@316 = .sdata2:0x805AB778; // type:object size:0x4 scope:local align:4 data:float +@341 = .sdata2:0x805AB778; // type:object size:0x4 scope:local align:4 data:float lbl_805AB780 = .sdata2:0x805AB780; // type:object size:0x4 align:4 data:float lbl_805AB784 = .sdata2:0x805AB784; // type:object size:0x4 align:4 data:float lbl_805AB788 = .sdata2:0x805AB788; // type:object size:0x4 align:4 data:float @@ -24052,8 +24052,8 @@ lbl_805AB98C = .sdata2:0x805AB98C; // type:object size:0x4 align:4 data:float lbl_805AB990 = .sdata2:0x805AB990; // type:object size:0x4 align:4 data:float lbl_805AB994 = .sdata2:0x805AB994; // type:object size:0x4 align:4 data:float lbl_805AB998 = .sdata2:0x805AB998; // type:object size:0x8 align:4 data:float -@320 = .sdata2:0x805AB9A0; // type:object size:0x4 scope:local align:4 data:float -@377 = .sdata2:0x805AB9A4; // type:object size:0x4 scope:local align:4 data:float +@345 = .sdata2:0x805AB9A0; // type:object size:0x4 scope:local align:4 data:float +@402 = .sdata2:0x805AB9A4; // type:object size:0x4 scope:local align:4 data:float lbl_805AB9A8 = .sdata2:0x805AB9A8; // type:object size:0x4 align:4 data:float lbl_805AB9AC = .sdata2:0x805AB9AC; // type:object size:0x4 align:4 data:float lbl_805AB9B0 = .sdata2:0x805AB9B0; // type:object size:0x4 align:4 data:float @@ -24072,12 +24072,12 @@ lbl_805AB9E0 = .sdata2:0x805AB9E0; // type:object size:0x4 align:4 data:float lbl_805AB9E4 = .sdata2:0x805AB9E4; // type:object size:0x4 align:4 data:float lbl_805AB9E8 = .sdata2:0x805AB9E8; // type:object size:0x4 align:4 data:float lbl_805AB9EC = .sdata2:0x805AB9EC; // type:object size:0x4 align:4 data:float -@280 = .sdata2:0x805AB9F0; // type:object size:0x4 scope:local align:4 data:float +@305 = .sdata2:0x805AB9F0; // type:object size:0x4 scope:local align:4 data:float lbl_805AB9F8 = .sdata2:0x805AB9F8; // type:object size:0x4 align:4 data:float lbl_805AB9FC = .sdata2:0x805AB9FC; // type:object size:0x4 align:4 data:float lbl_805ABA00 = .sdata2:0x805ABA00; // type:object size:0x8 align:4 data:float -@295 = .sdata2:0x805ABA08; // type:object size:0x4 scope:local align:4 data:float -@305 = .sdata2:0x805ABA0C; // type:object size:0x4 scope:local align:4 data:float +@320 = .sdata2:0x805ABA08; // type:object size:0x4 scope:local align:4 data:float +@330 = .sdata2:0x805ABA0C; // type:object size:0x4 scope:local align:4 data:float lbl_805ABA10 = .sdata2:0x805ABA10; // type:object size:0x4 align:4 data:float lbl_805ABA14 = .sdata2:0x805ABA14; // type:object size:0x4 align:4 data:float lbl_805ABA18 = .sdata2:0x805ABA18; // type:object size:0x4 align:4 data:float @@ -24094,14 +24094,14 @@ lbl_805ABA40 = .sdata2:0x805ABA40; // type:object size:0x4 align:4 data:float lbl_805ABA44 = .sdata2:0x805ABA44; // type:object size:0x4 align:4 data:float lbl_805ABA48 = .sdata2:0x805ABA48; // type:object size:0x4 align:4 data:float lbl_805ABA50 = .sdata2:0x805ABA50; // type:object size:0x8 align:8 data:double -@342 = .sdata2:0x805ABA58; // type:object size:0x4 scope:local align:4 data:float -@446 = .sdata2:0x805ABA5C; // type:object size:0x4 scope:local align:4 data:float -@447 = .sdata2:0x805ABA60; // type:object size:0x4 scope:local align:4 data:float -@448 = .sdata2:0x805ABA64; // type:object size:0x4 scope:local align:4 data:float -@449 = .sdata2:0x805ABA68; // type:object size:0x4 scope:local align:4 data:float -@450 = .sdata2:0x805ABA6C; // type:object size:0x4 scope:local align:4 data:float -@451 = .sdata2:0x805ABA70; // type:object size:0x4 scope:local align:4 data:float -@454 = .sdata2:0x805ABA78; // type:object size:0x8 scope:local align:8 data:double +@367 = .sdata2:0x805ABA58; // type:object size:0x4 scope:local align:4 data:float +@471 = .sdata2:0x805ABA5C; // type:object size:0x4 scope:local align:4 data:float +@472 = .sdata2:0x805ABA60; // type:object size:0x4 scope:local align:4 data:float +@473 = .sdata2:0x805ABA64; // type:object size:0x4 scope:local align:4 data:float +@474 = .sdata2:0x805ABA68; // type:object size:0x4 scope:local align:4 data:float +@475 = .sdata2:0x805ABA6C; // type:object size:0x4 scope:local align:4 data:float +@476 = .sdata2:0x805ABA70; // type:object size:0x4 scope:local align:4 data:float +@479 = .sdata2:0x805ABA78; // type:object size:0x8 scope:local align:8 data:double kEndingTime__10CPowerBomb = .sdata2:0x805ABA80; // type:object size:0x4 scope:global align:4 data:float @565 = .sdata2:0x805ABA84; // type:object size:0x4 scope:local align:4 data:float @566 = .sdata2:0x805ABA88; // type:object size:0x4 scope:local align:4 data:float @@ -24137,16 +24137,16 @@ lbl_805ABB0C = .sdata2:0x805ABB0C; // type:object size:0x4 align:4 data:float lbl_805ABB10 = .sdata2:0x805ABB10; // type:object size:0x8 align:4 data:float lbl_805ABB18 = .sdata2:0x805ABB18; // type:object size:0x4 align:4 data:float lbl_805ABB1C = .sdata2:0x805ABB1C; // type:object size:0x4 align:4 data:float -@378 = .sdata2:0x805ABB20; // type:object size:0x4 scope:local align:4 data:float -@379 = .sdata2:0x805ABB24; // type:object size:0x4 scope:local align:4 data:float -@380 = .sdata2:0x805ABB28; // type:object size:0x4 scope:local align:4 data:float -@381 = .sdata2:0x805ABB2C; // type:object size:0x4 scope:local align:4 data:float -@382 = .sdata2:0x805ABB30; // type:object size:0x4 scope:local align:4 data:float -@383 = .sdata2:0x805ABB34; // type:object size:0x4 scope:local align:4 data:float -@384 = .sdata2:0x805ABB38; // type:object size:0x4 scope:local align:4 data:float -@385 = .sdata2:0x805ABB3C; // type:object size:0x4 scope:local align:4 data:float -@386 = .sdata2:0x805ABB40; // type:object size:0x4 scope:local align:4 data:float -@390 = .sdata2:0x805ABB44; // type:object size:0x4 scope:local align:4 data:float +@403 = .sdata2:0x805ABB20; // type:object size:0x4 scope:local align:4 data:float +@404 = .sdata2:0x805ABB24; // type:object size:0x4 scope:local align:4 data:float +@405 = .sdata2:0x805ABB28; // type:object size:0x4 scope:local align:4 data:float +@406 = .sdata2:0x805ABB2C; // type:object size:0x4 scope:local align:4 data:float +@407 = .sdata2:0x805ABB30; // type:object size:0x4 scope:local align:4 data:float +@408 = .sdata2:0x805ABB34; // type:object size:0x4 scope:local align:4 data:float +@409 = .sdata2:0x805ABB38; // type:object size:0x4 scope:local align:4 data:float +@410 = .sdata2:0x805ABB3C; // type:object size:0x4 scope:local align:4 data:float +@411 = .sdata2:0x805ABB40; // type:object size:0x4 scope:local align:4 data:float +@415 = .sdata2:0x805ABB44; // type:object size:0x4 scope:local align:4 data:float lbl_805ABB48 = .sdata2:0x805ABB48; // type:object size:0x4 align:4 data:float lbl_805ABB4C = .sdata2:0x805ABB4C; // type:object size:0x4 align:4 data:float lbl_805ABB50 = .sdata2:0x805ABB50; // type:object size:0x4 align:4 data:float @@ -24187,8 +24187,8 @@ lbl_805ABBE0 = .sdata2:0x805ABBE0; // type:object size:0x8 align:8 data:double lbl_805ABBE8 = .sdata2:0x805ABBE8; // type:object size:0x4 align:4 data:float lbl_805ABBEC = .sdata2:0x805ABBEC; // type:object size:0x4 align:4 data:float lbl_805ABBF0 = .sdata2:0x805ABBF0; // type:object size:0x8 align:4 data:float -lbl_805ABBF8 = .sdata2:0x805ABBF8; // type:object size:0x4 data:4byte -lbl_805ABBFC = .sdata2:0x805ABBFC; // type:object size:0x4 align:4 data:float +skNumProperties__7CRipper = .sdata2:0x805ABBF8; // type:object size:0x4 data:4byte +@675 = .sdata2:0x805ABBFC; // type:object size:0x4 scope:local align:4 data:float lbl_805ABC00 = .sdata2:0x805ABC00; // type:object size:0x4 align:4 data:float lbl_805ABC04 = .sdata2:0x805ABC04; // type:object size:0x4 align:4 data:float lbl_805ABC08 = .sdata2:0x805ABC08; // type:object size:0x4 align:4 data:float @@ -24218,7 +24218,7 @@ lbl_805ABC6C = .sdata2:0x805ABC6C; // type:object size:0x4 align:4 data:float lbl_805ABC70 = .sdata2:0x805ABC70; // type:object size:0x4 align:4 data:float lbl_805ABC74 = .sdata2:0x805ABC74; // type:object size:0x4 align:4 data:float lbl_805ABC78 = .sdata2:0x805ABC78; // type:object size:0x8 align:4 data:float -@333 = .sdata2:0x805ABC80; // type:object size:0x4 scope:local align:4 data:float +@358 = .sdata2:0x805ABC80; // type:object size:0x4 scope:local align:4 data:float lbl_805ABC88 = .sdata2:0x805ABC88; // type:object size:0x4 align:4 data:float lbl_805ABC8C = .sdata2:0x805ABC8C; // type:object size:0x4 align:4 data:float lbl_805ABC90 = .sdata2:0x805ABC90; // type:object size:0x4 align:4 data:float @@ -24331,12 +24331,12 @@ lbl_805ABE60 = .sdata2:0x805ABE60; // type:object size:0x4 align:4 data:float lbl_805ABE64 = .sdata2:0x805ABE64; // type:object size:0x4 align:4 data:float lbl_805ABE68 = .sdata2:0x805ABE68; // type:object size:0x4 align:4 data:float lbl_805ABE6C = .sdata2:0x805ABE6C; // type:object size:0x4 align:4 data:float -@404 = .sdata2:0x805ABE70; // type:object size:0x4 scope:local align:4 data:float -@405 = .sdata2:0x805ABE74; // type:object size:0x4 scope:local align:4 data:float -@406 = .sdata2:0x805ABE78; // type:object size:0x4 scope:local align:4 data:float -@454 = .sdata2:0x805ABE80; // type:object size:0x8 scope:local align:8 data:double -@455 = .sdata2:0x805ABE88; // type:object size:0x4 scope:local align:4 data:float -@332 = .sdata2:0x805ABE90; // type:object size:0x4 scope:local align:4 data:float +@429 = .sdata2:0x805ABE70; // type:object size:0x4 scope:local align:4 data:float +@430 = .sdata2:0x805ABE74; // type:object size:0x4 scope:local align:4 data:float +@431 = .sdata2:0x805ABE78; // type:object size:0x4 scope:local align:4 data:float +@479 = .sdata2:0x805ABE80; // type:object size:0x8 scope:local align:8 data:double +@480 = .sdata2:0x805ABE88; // type:object size:0x4 scope:local align:4 data:float +@357 = .sdata2:0x805ABE90; // type:object size:0x4 scope:local align:4 data:float lbl_805ABE98 = .sdata2:0x805ABE98; // type:object size:0x4 align:4 data:float lbl_805ABE9C = .sdata2:0x805ABE9C; // type:object size:0x4 align:4 data:float lbl_805ABEA0 = .sdata2:0x805ABEA0; // type:object size:0x4 align:4 data:float @@ -24349,10 +24349,10 @@ lbl_805ABEBC = .sdata2:0x805ABEBC; // type:object size:0x4 align:4 data:float lbl_805ABEC0 = .sdata2:0x805ABEC0; // type:object size:0x4 align:4 data:float lbl_805ABEC4 = .sdata2:0x805ABEC4; // type:object size:0x4 align:4 data:float lbl_805ABEC8 = .sdata2:0x805ABEC8; // type:object size:0x8 align:4 data:float -@489 = .sdata2:0x805ABED0; // type:object size:0x4 scope:local align:4 data:float -@490 = .sdata2:0x805ABED4; // type:object size:0x4 scope:local align:4 data:float -@491 = .sdata2:0x805ABED8; // type:object size:0x4 scope:local align:4 data:float -@530 = .sdata2:0x805ABEDC; // type:object size:0x4 scope:local align:4 data:float +@514 = .sdata2:0x805ABED0; // type:object size:0x4 scope:local align:4 data:float +@515 = .sdata2:0x805ABED4; // type:object size:0x4 scope:local align:4 data:float +@516 = .sdata2:0x805ABED8; // type:object size:0x4 scope:local align:4 data:float +@555 = .sdata2:0x805ABEDC; // type:object size:0x4 scope:local align:4 data:float lbl_805ABEE0 = .sdata2:0x805ABEE0; // type:object size:0x4 align:4 data:float lbl_805ABEE4 = .sdata2:0x805ABEE4; // type:object size:0x4 align:4 data:float lbl_805ABEE8 = .sdata2:0x805ABEE8; // type:object size:0x4 align:4 data:float @@ -24504,7 +24504,7 @@ lbl_805AC16C = .sdata2:0x805AC16C; // type:object size:0x4 align:4 data:float lbl_805AC170 = .sdata2:0x805AC170; // type:object size:0x4 align:4 data:float lbl_805AC174 = .sdata2:0x805AC174; // type:object size:0x4 align:4 data:float lbl_805AC178 = .sdata2:0x805AC178; // type:object size:0x8 align:4 data:float -@257 = .sdata2:0x805AC180; // type:object size:0x4 scope:local align:4 data:float +@282 = .sdata2:0x805AC180; // type:object size:0x4 scope:local align:4 data:float lbl_805AC188 = .sdata2:0x805AC188; // type:object size:0x4 align:4 data:float lbl_805AC18C = .sdata2:0x805AC18C; // type:object size:0x4 align:4 data:float lbl_805AC190 = .sdata2:0x805AC190; // type:object size:0x4 align:4 data:float @@ -24729,12 +24729,12 @@ lbl_805AC580 = .sdata2:0x805AC580; // type:object size:0x4 align:4 data:float lbl_805AC584 = .sdata2:0x805AC584; // type:object size:0x4 align:4 data:float lbl_805AC588 = .sdata2:0x805AC588; // type:object size:0x8 align:8 data:double lbl_805AC590 = .sdata2:0x805AC590; // type:object size:0x8 align:4 data:float -@290 = .sdata2:0x805AC598; // type:object size:0x4 scope:local align:4 data:float -@291 = .sdata2:0x805AC59C; // type:object size:0x4 scope:local align:4 data:float -@333 = .sdata2:0x805AC5A0; // type:object size:0x4 scope:local align:4 data:float -@336 = .sdata2:0x805AC5A8; // type:object size:0x8 scope:local align:8 data:double -@346 = .sdata2:0x805AC5B0; // type:object size:0x4 scope:local align:4 data:float -@347 = .sdata2:0x805AC5B4; // type:object size:0x4 scope:local align:4 data:float +@315 = .sdata2:0x805AC598; // type:object size:0x4 scope:local align:4 data:float +@316 = .sdata2:0x805AC59C; // type:object size:0x4 scope:local align:4 data:float +@358 = .sdata2:0x805AC5A0; // type:object size:0x4 scope:local align:4 data:float +@361 = .sdata2:0x805AC5A8; // type:object size:0x8 scope:local align:8 data:double +@371 = .sdata2:0x805AC5B0; // type:object size:0x4 scope:local align:4 data:float +@372 = .sdata2:0x805AC5B4; // type:object size:0x4 scope:local align:4 data:float lbl_805AC5B8 = .sdata2:0x805AC5B8; // type:object size:0x4 data:4byte lbl_805AC5BC = .sdata2:0x805AC5BC; // type:object size:0x8 lbl_805AC5C4 = .sdata2:0x805AC5C4; // type:object size:0x8 @@ -24939,14 +24939,14 @@ lbl_805AC958 = .sdata2:0x805AC958; // type:object size:0x8 align:8 data:double @490 = .sdata2:0x805AC960; // type:object size:0x4 scope:local align:4 data:float @491 = .sdata2:0x805AC964; // type:object size:0x4 scope:local align:4 data:float @492 = .sdata2:0x805AC968; // type:object size:0x4 scope:local align:4 data:float -@736 = .sdata2:0x805AC970; // type:object size:0x4 scope:local align:4 data:float -@737 = .sdata2:0x805AC974; // type:object size:0x4 scope:local align:4 data:float -@738 = .sdata2:0x805AC978; // type:object size:0x4 scope:local align:4 data:float -@739 = .sdata2:0x805AC97C; // type:object size:0x4 scope:local align:4 data:float -@740 = .sdata2:0x805AC980; // type:object size:0x4 scope:local align:4 data:float -@741 = .sdata2:0x805AC984; // type:object size:0x4 scope:local align:4 data:float -@742 = .sdata2:0x805AC988; // type:object size:0x4 scope:local align:4 data:float -@835 = .sdata2:0x805AC98C; // type:object size:0x4 scope:local align:4 data:float +@761 = .sdata2:0x805AC970; // type:object size:0x4 scope:local align:4 data:float +@762 = .sdata2:0x805AC974; // type:object size:0x4 scope:local align:4 data:float +@763 = .sdata2:0x805AC978; // type:object size:0x4 scope:local align:4 data:float +@764 = .sdata2:0x805AC97C; // type:object size:0x4 scope:local align:4 data:float +@765 = .sdata2:0x805AC980; // type:object size:0x4 scope:local align:4 data:float +@766 = .sdata2:0x805AC984; // type:object size:0x4 scope:local align:4 data:float +@767 = .sdata2:0x805AC988; // type:object size:0x4 scope:local align:4 data:float +@860 = .sdata2:0x805AC98C; // type:object size:0x4 scope:local align:4 data:float lbl_805AC990 = .sdata2:0x805AC990; // type:object size:0x4 align:4 data:float lbl_805AC994 = .sdata2:0x805AC994; // type:object size:0x4 align:4 data:float lbl_805AC998 = .sdata2:0x805AC998; // type:object size:0x4 align:4 data:float @@ -25055,7 +25055,7 @@ lbl_805ACB50 = .sdata2:0x805ACB50; // type:object size:0x4 align:4 data:float lbl_805ACB54 = .sdata2:0x805ACB54; // type:object size:0x4 align:4 data:float lbl_805ACB58 = .sdata2:0x805ACB58; // type:object size:0x4 align:4 data:float lbl_805ACB5C = .sdata2:0x805ACB5C; // type:object size:0x4 align:4 data:float -@327 = .sdata2:0x805ACB60; // type:object size:0x4 scope:local align:4 data:float +@352 = .sdata2:0x805ACB60; // type:object size:0x4 scope:local align:4 data:float lbl_805ACB68 = .sdata2:0x805ACB68; // type:object size:0x4 align:4 data:float lbl_805ACB6C = .sdata2:0x805ACB6C; // type:object size:0x4 align:4 data:float lbl_805ACB70 = .sdata2:0x805ACB70; // type:object size:0x4 align:4 data:float @@ -25425,7 +25425,7 @@ lbl_805AD1C8 = .sdata2:0x805AD1C8; // type:object size:0x4 align:4 data:float lbl_805AD1CC = .sdata2:0x805AD1CC; // type:object size:0x4 align:4 data:float lbl_805AD1D0 = .sdata2:0x805AD1D0; // type:object size:0x4 align:4 data:float lbl_805AD1D4 = .sdata2:0x805AD1D4; // type:object size:0x4 align:4 data:float -@529 = .sdata2:0x805AD1D8; // type:object size:0x4 scope:local align:4 data:float +@554 = .sdata2:0x805AD1D8; // type:object size:0x4 scope:local align:4 data:float @66 = .sdata2:0x805AD1E0; // type:object size:0x4 scope:local align:4 data:float @67 = .sdata2:0x805AD1E4; // type:object size:0x4 scope:local align:4 data:float @68 = .sdata2:0x805AD1E8; // type:object size:0x4 scope:local align:4 data:float @@ -25515,9 +25515,9 @@ lbl_805AD338 = .sdata2:0x805AD338; // type:object size:0x4 align:4 data:float lbl_805AD33C = .sdata2:0x805AD33C; // type:object size:0x4 align:4 data:float lbl_805AD340 = .sdata2:0x805AD340; // type:object size:0x4 align:4 data:float lbl_805AD344 = .sdata2:0x805AD344; // type:object size:0x4 align:4 data:float -@308 = .sdata2:0x805AD348; // type:object size:0x4 scope:local align:4 data:float -@309 = .sdata2:0x805AD34C; // type:object size:0x4 scope:local align:4 data:float -@310 = .sdata2:0x805AD350; // type:object size:0x4 scope:local align:4 data:float +@333 = .sdata2:0x805AD348; // type:object size:0x4 scope:local align:4 data:float +@334 = .sdata2:0x805AD34C; // type:object size:0x4 scope:local align:4 data:float +@335 = .sdata2:0x805AD350; // type:object size:0x4 scope:local align:4 data:float lbl_805AD358 = .sdata2:0x805AD358; // type:object size:0x4 align:4 data:float lbl_805AD35C = .sdata2:0x805AD35C; // type:object size:0x4 align:4 data:float lbl_805AD360 = .sdata2:0x805AD360; // type:object size:0x4 align:4 data:float @@ -25552,14 +25552,14 @@ lbl_805AD3D4 = .sdata2:0x805AD3D4; // type:object size:0x4 align:4 data:float lbl_805AD3D8 = .sdata2:0x805AD3D8; // type:object size:0x4 align:4 data:float lbl_805AD3DC = .sdata2:0x805AD3DC; // type:object size:0x4 align:4 data:float lbl_805AD3E0 = .sdata2:0x805AD3E0; // type:object size:0x8 align:4 data:float -@430 = .sdata2:0x805AD3E8; // type:object size:0x4 scope:local align:4 data:float -@431 = .sdata2:0x805AD3EC; // type:object size:0x4 scope:local align:4 data:float -@432 = .sdata2:0x805AD3F0; // type:object size:0x4 scope:local align:4 data:float -@433 = .sdata2:0x805AD3F4; // type:object size:0x4 scope:local align:4 data:float -@436 = .sdata2:0x805AD3F8; // type:object size:0x8 scope:local align:8 data:double -@463 = .sdata2:0x805AD400; // type:object size:0x4 scope:local align:4 data:float -@464 = .sdata2:0x805AD404; // type:object size:0x4 scope:local align:4 data:float -@465 = .sdata2:0x805AD408; // type:object size:0x4 scope:local align:4 data:float +@455 = .sdata2:0x805AD3E8; // type:object size:0x4 scope:local align:4 data:float +@456 = .sdata2:0x805AD3EC; // type:object size:0x4 scope:local align:4 data:float +@457 = .sdata2:0x805AD3F0; // type:object size:0x4 scope:local align:4 data:float +@458 = .sdata2:0x805AD3F4; // type:object size:0x4 scope:local align:4 data:float +@461 = .sdata2:0x805AD3F8; // type:object size:0x8 scope:local align:8 data:double +@488 = .sdata2:0x805AD400; // type:object size:0x4 scope:local align:4 data:float +@489 = .sdata2:0x805AD404; // type:object size:0x4 scope:local align:4 data:float +@490 = .sdata2:0x805AD408; // type:object size:0x4 scope:local align:4 data:float lbl_805AD410 = .sdata2:0x805AD410; // type:object size:0x8 lbl_805AD418 = .sdata2:0x805AD418; // type:object size:0x4 align:4 data:float lbl_805AD41C = .sdata2:0x805AD41C; // type:object size:0x4 align:4 data:float @@ -26456,10 +26456,10 @@ gkEpsilon32 = .sdata2:0x805AE498; // type:object size:0x4 scope:local align:4 da @312 = .sdata2:0x805AE4AC; // type:object size:0x4 scope:local align:4 data:float @313 = .sdata2:0x805AE4B0; // type:object size:0x4 scope:local align:4 data:float @339 = .sdata2:0x805AE4B4; // type:object size:0x4 scope:local align:4 data:float -@205 = .sdata2:0x805AE4B8; // type:object size:0x4 scope:local data:4byte -@507 = .sdata2:0x805AE4BC; // type:object size:0x4 scope:local align:4 data:float -@508 = .sdata2:0x805AE4C0; // type:object size:0x4 scope:local align:4 data:float -@509 = .sdata2:0x805AE4C4; // type:object size:0x4 scope:local align:4 data:float +@207 = .sdata2:0x805AE4B8; // type:object size:0x4 scope:local data:4byte +@509 = .sdata2:0x805AE4BC; // type:object size:0x4 scope:local align:4 data:float +@510 = .sdata2:0x805AE4C0; // type:object size:0x4 scope:local align:4 data:float +@511 = .sdata2:0x805AE4C4; // type:object size:0x4 scope:local align:4 data:float kSpareBufferTexMapID__9CGraphics = .sdata2:0x805AE4C8; // type:object size:0x4 scope:global data:4byte lbl_805AE4CC = .sdata2:0x805AE4CC; // type:object size:0x4 data:4byte lbl_805AE4D0 = .sdata2:0x805AE4D0; // type:object size:0x8 data:byte @@ -27145,7 +27145,7 @@ lbl_805AF48C = .sbss2:0x805AF48C; // type:object size:0x4 data:4byte lbl_805AF490 = .sbss2:0x805AF490; // type:object size:0x4 data:4byte lbl_805AF494 = .sbss2:0x805AF494; // type:object size:0x4 data:4byte lbl_805AF498 = .sbss2:0x805AF498; // type:object size:0x8 data:4byte -@204 = .sbss2:0x805AF4A0; // type:object size:0x4 scope:local data:4byte +@206 = .sbss2:0x805AF4A0; // type:object size:0x4 scope:local data:4byte lbl_805AF4A8 = .sbss2:0x805AF4A8; // type:object size:0x4 data:4byte lbl_805AF4AC = .sbss2:0x805AF4AC; // type:object size:0x4 data:4byte lbl_805AF4B0 = .sbss2:0x805AF4B0; // type:object size:0x4 data:4byte diff --git a/config/GM8E01_01/symbols.txt b/config/GM8E01_01/symbols.txt index 9ddad943..1c93cc8d 100644 --- a/config/GM8E01_01/symbols.txt +++ b/config/GM8E01_01/symbols.txt @@ -1789,10 +1789,10 @@ GetSearchPath__10CPatternedFv = .text:0x80077878; // type:function size:0x8 scop GetModelAlphau8__10CPatternedCFRC13CStateManager = .text:0x80077880; // type:function size:0x8 scope:global IsOnGround__10CPatternedCFv = .text:0x80077888; // type:function size:0xC scope:global GetGravityConstant__10CPatternedCFv = .text:0x80077894; // type:function size:0x8 scope:global -GetProjectileInfo__10CPatternedFv = .text:0x8007789C; // type:function size:0x8 scope:global +ProjectileInfo__10CPatternedFv = .text:0x8007789C; // type:function size:0x8 scope:global GetDeathExplosionParticle__10CPatternedCFv = .text:0x800778A4; // type:function size:0x8 scope:global IsListening__3CAiCFv = .text:0x800778AC; // type:function size:0x8 scope:global -GetOrigin__3CAiCFv = .text:0x800778B4; // type:function size:0x1C scope:global +GetOrigin__3CAiCFRC13CStateManagerRC11CTeamAiRoleRC9CVector3f = .text:0x800778B4; // type:function size:0x1C scope:global UpdateThermalFrozenState__10CPatternedFb = .text:0x800778D0; // type:function size:0x40 scope:global MakeThermalColdAndHot__10CPatternedFv = .text:0x80077910; // type:function size:0x24 scope:global AddToRenderer__10CPatternedCFRC14CFrustumPlanesRC13CStateManager = .text:0x80077934; // type:function size:0xD8 scope:global @@ -1818,8 +1818,8 @@ GetContactDamage__10CPatternedCFv = .text:0x80078A40; // type:function size:0x3C DeathDelete__10CPatternedFR13CStateManager = .text:0x80078A7C; // type:function size:0x88 scope:global CalcDyingThinkRate__10CPatternedFv = .text:0x80078B04; // type:function size:0x54 scope:global PhazeOut__10CPatternedFR13CStateManager = .text:0x80078B58; // type:function size:0x84 scope:global -Freeze__10CPatternedFRC9CVector3f13CUnitVector3ff = .text:0x80078BDC; // type:function size:0x188 scope:global -Shock__10CPatternedFff = .text:0x80078D64; // type:function size:0xE4 scope:global +Freeze__10CPatternedFR13CStateManagerRC9CVector3fRC13CUnitVector3ff = .text:0x80078BDC; // type:function size:0x188 scope:global +Shock__10CPatternedFR13CStateManagerff = .text:0x80078D64; // type:function size:0xE4 scope:global Burn__10CPatternedFff = .text:0x80078E48; // type:function size:0xE4 scope:global DoUserAnimEvent__10CPatternedFR13CStateManagerRC13CInt32POINode14EUserEventTypef = .text:0x80078F2C; // type:function size:0x4B4 scope:global ThinkAboutMove__10CPatternedFf = .text:0x800793E0; // type:function size:0x2E4 scope:global @@ -1831,7 +1831,7 @@ AreStateStringsEqual__10CPatternedFPCcPCc = .text:0x8007A4D0; // type:function s CompareStateString__10CPatternedFPCcPCci = .text:0x8007A508; // type:function size:0x12C scope:global UpdateDamageColor__10CPatternedFf = .text:0x8007A634; // type:function size:0xD4 scope:global UpdateAlphaDelta__10CPatternedFfR13CStateManager = .text:0x8007A708; // type:function size:0xF0 scope:global -KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef = .text:0x8007A7F8; // type:function size:0x3B8 scope:global +KnockBack__10CPatternedFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypebf = .text:0x8007A7F8; // type:function size:0x3B8 scope:global MassiveFrozenDeath__10CPatternedFR13CStateManager = .text:0x8007ABB0; // type:function size:0x1B4 scope:global MassiveDeath__10CPatternedFR13CStateManager = .text:0x8007AD64; // type:function size:0xD0 scope:global GenerateIceDeathExplosion__10CPatternedFR13CStateManager = .text:0x8007AE34; // type:function size:0x220 scope:global @@ -7633,13 +7633,13 @@ ClearObjectList__17CScriptPlayerHintFv = .text:0x8015BCE0; // type:function size __ct__17CScriptPlayerHintF9TUniqueIdRCQ24rstl66basic_string,Q24rstl17rmemory_allocator>RC11CEntityInfoRC12CTransform4fbii = .text:0x8015BD38; // type:function size:0x110 scope:global RemovePlatform__7CRipperFR13CStateManager = .text:0x8015BE48; // type:function size:0x54 scope:global AddPlatform__7CRipperFR13CStateManager = .text:0x8015BE9C; // type:function size:0x214 scope:global -fn_8015C034 = .text:0x8015C0B0; // type:function size:0xAC scope:global -fn_8015C0E0 = .text:0x8015C15C; // type:function size:0x54 scope:global +ProcessGrapplePoint__7CRipperFR13CStateManager = .text:0x8015C0B0; // type:function size:0xAC scope:global +RemoveGrapplePoint__7CRipperFR13CStateManager = .text:0x8015C15C; // type:function size:0x54 scope:global AddGrapplePoint__7CRipperFR13CStateManager = .text:0x8015C1B0; // type:function size:0x148 scope:global Patrol__7CRipperFR13CStateManager9EStateMsgf = .text:0x8015C2F8; // type:function size:0x88 scope:global PathOver__7CRipperFR13CStateManagerf = .text:0x8015C380; // type:function size:0x8 scope:global -KnockBack__7CRipperFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypef = .text:0x8015C388; // type:function size:0xD8 scope:global -GetCollisionResponseType__7CRipperFRC9CVector3fRC9CVector3fRC11CWeaponModei = .text:0x8015C460; // type:function size:0x60 scope:global +KnockBack__7CRipperFRC9CVector3fR13CStateManagerRC11CDamageInfo14EKnockBackTypebf = .text:0x8015C388; // type:function size:0xD8 scope:global +GetCollisionResponseType__7CRipperCFRC9CVector3fRC9CVector3fRC11CWeaponModei = .text:0x8015C460; // type:function size:0x60 scope:global AcceptScriptMsg__7CRipperF20EScriptObjectMessage9TUniqueIdR13CStateManager = .text:0x8015C4C0; // type:function size:0x134 scope:global Think__7CRipperFfR13CStateManager = .text:0x8015C5F4; // type:function size:0x120 scope:global Accept__7CRipperFR8IVisitor = .text:0x8015C714; // type:function size:0x38 scope:global @@ -17159,7 +17159,7 @@ lbl_803D0447 = .rodata:0x803D0447; // type:object size:0x16 lbl_803D045D = .rodata:0x803D045D; // type:object size:0xB3 lbl_803D0510 = .rodata:0x803D0510; // type:object size:0x10 lbl_803D0520 = .rodata:0x803D0520; // type:object size:0x18 -lbl_803D0538 = .rodata:0x803D0538; // type:object size:0x38 +@stringBase0 = .rodata:0x803D0538; // type:object size:0x35 scope:local data:string_table lbl_803D0570 = .rodata:0x803D0570; // type:object size:0x8 lbl_803D0578 = .rodata:0x803D0578; // type:object size:0xC data:string lbl_803D0584 = .rodata:0x803D0584; // type:object size:0xF data:string @@ -17847,8 +17847,8 @@ lbl_803D70A8 = .rodata:0x803D70A8; // type:object size:0x1F8 lbl_803D72A0 = .rodata:0x803D72A0; // type:object size:0x2C8 lbl_803D7568 = .rodata:0x803D7568; // type:object size:0x10 lbl_803D7578 = .rodata:0x803D7578; // type:object size:0x8 -indMtx$268 = .rodata:0x803D7580; // type:object size:0x18 scope:local -vtxDescList$289 = .rodata:0x803D7598; // type:object size:0x10 scope:local +indMtx$270 = .rodata:0x803D7580; // type:object size:0x18 scope:local +vtxDescList$291 = .rodata:0x803D7598; // type:object size:0x10 scope:local lbl_803D75A8 = .rodata:0x803D75A8; // type:object size:0x20 @stringBase0 = .rodata:0x803D75C8; // type:object size:0x7 scope:local data:string_table @477 = .rodata:0x803D75D0; // type:object size:0x10 scope:local data:4byte @@ -18179,7 +18179,7 @@ jumptable_803DB05C = .data:0x803DB05C; // type:object size:0x2C scope:local jumptable_803DB088 = .data:0x803DB088; // type:object size:0x2C scope:local jumptable_803DB0B4 = .data:0x803DB0B4; // type:object size:0x1C scope:local __vt__14CScriptCounter = .data:0x803DB0D0; // type:object size:0x20 -@252 = .data:0x803DB0F0; // type:object size:0x24 scope:local +@277 = .data:0x803DB0F0; // type:object size:0x24 scope:local lbl_803DB118 = .data:0x803DB118; // type:object size:0x10 lbl_803DB128 = .data:0x803DB128; // type:object size:0x10 lbl_803DB138 = .data:0x803DB138; // type:object size:0xD74 data:4byte @@ -18280,7 +18280,7 @@ __vt__14CBCScriptedCmd = .data:0x803E0020; // type:object size:0xC scope:weak __vt__20CConsoleOutputWindow = .data:0x803E0030; // type:object size:0x1C lbl_803E0050 = .data:0x803E0050; // type:object size:0x80 __vt__7CWeapon = .data:0x803E00D0; // type:object size:0x6C -@391 = .data:0x803E013C; // type:object size:0x24 scope:local +@416 = .data:0x803E013C; // type:object size:0x24 scope:local __vt__16CLightParameters = .data:0x803E0160; // type:object size:0xC lbl_803E0170 = .data:0x803E0170; // type:object size:0x2CC jumptable_803E043C = .data:0x803E043C; // type:object size:0x48 scope:local @@ -18389,7 +18389,7 @@ lbl_803E2F08 = .data:0x803E2F08; // type:object size:0x2D0 lbl_803E31D8 = .data:0x803E31D8; // type:object size:0xC data:4byte lbl_803E31E4 = .data:0x803E31E4; // type:object size:0x2D4 __vt__17CScriptPlayerHint = .data:0x803E34B8; // type:object size:0x6C -lbl_803E3528 = .data:0x803E3528; // type:object size:0x2D0 +__vt__7CRipper = .data:0x803E3528; // type:object size:0x2CC lbl_803E37F8 = .data:0x803E37F8; // type:object size:0x20 __vt__22CScriptPointOfInterest = .data:0x803E3818; // type:object size:0x6C lbl_803E3888 = .data:0x803E3888; // type:object size:0x2E0 @@ -19203,7 +19203,7 @@ lbl_8045C778 = .bss:0x8045C778; // type:object size:0xC lbl_8045C784 = .bss:0x8045C784; // type:object size:0x10 lbl_8045C794 = .bss:0x8045C794; // type:object size:0xF3C8 lbl_8046BB5C = .bss:0x8046BB5C; // type:object size:0xA3C -@168 = .bss:0x8046C598; // type:object size:0xC scope:local +@193 = .bss:0x8046C598; // type:object size:0xC scope:local lbl_8046C5A8 = .bss:0x8046C5A8; // type:object size:0xC align:4 data:float lbl_8046C5B4 = .bss:0x8046C5B4; // type:object size:0xC data:4byte lbl_8046C5C0 = .bss:0x8046C5C0; // type:object size:0x28 align:4 data:float @@ -19213,7 +19213,7 @@ lbl_8046C618 = .bss:0x8046C618; // type:object size:0x18 data:4byte lbl_8046C630 = .bss:0x8046C630; // type:object size:0x20 data:2byte lbl_8046C650 = .bss:0x8046C650; // type:object size:0xC align:4 data:float lbl_8046C65C = .bss:0x8046C65C; // type:object size:0xC align:4 data:float -@314 = .bss:0x8046C668; // type:object size:0xC scope:local +@339 = .bss:0x8046C668; // type:object size:0xC scope:local lbl_8046C678 = .bss:0x8046C678; // type:object size:0x60 align:4 data:float lbl_8046C6D8 = .bss:0x8046C6D8; // type:object size:0xC lbl_8046C6E4 = .bss:0x8046C6E4; // type:object size:0x1C data:4byte @@ -19755,7 +19755,7 @@ lbl_805A7048 = .sdata:0x805A7048; // type:object size:0x4 data:4byte lbl_805A704C = .sdata:0x805A704C; // type:object size:0x2 data:2byte lbl_805A7050 = .sdata:0x805A7050; // type:object size:0x4 lbl_805A7054 = .sdata:0x805A7054; // type:object size:0x4 -@209 = .sdata:0x805A7058; // type:object size:0x4 scope:local data:4byte +@234 = .sdata:0x805A7058; // type:object size:0x4 scope:local data:4byte lbl_805A7060 = .sdata:0x805A7060; // type:object size:0x4 data:4byte lbl_805A7064 = .sdata:0x805A7064; // type:object size:0x4 lbl_805A7068 = .sdata:0x805A7068; // type:object size:0x4 @@ -19823,7 +19823,7 @@ lbl_805A7168 = .sdata:0x805A7168; // type:object size:0x4 lbl_805A716C = .sdata:0x805A716C; // type:object size:0x4 lbl_805A7170 = .sdata:0x805A7170; // type:object size:0x4 data:4byte lbl_805A7174 = .sdata:0x805A7174; // type:object size:0x4 data:4byte -@207 = .sdata:0x805A7178; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A7178; // type:object size:0x4 scope:local data:4byte lbl_805A7180 = .sdata:0x805A7180; // type:object size:0x4 data:4byte lbl_805A7184 = .sdata:0x805A7184; // type:object size:0x4 data:4byte lbl_805A7188 = .sdata:0x805A7188; // type:object size:0x4 data:4byte @@ -19973,8 +19973,8 @@ lbl_805A73E0 = .sdata:0x805A73E0; // type:object size:0x4 data:4byte lbl_805A73E4 = .sdata:0x805A73E4; // type:object size:0x4 data:4byte lbl_805A73E8 = .sdata:0x805A73E8; // type:object size:0x4 data:4byte lbl_805A73EC = .sdata:0x805A73EC; // type:object size:0x4 data:4byte -@207 = .sdata:0x805A73F0; // type:object size:0x4 scope:local data:4byte -@208 = .sdata:0x805A73F8; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A73F0; // type:object size:0x4 scope:local data:4byte +@233 = .sdata:0x805A73F8; // type:object size:0x4 scope:local data:4byte lbl_805A7400 = .sdata:0x805A7400; // type:object size:0x1 data:byte lbl_805A7401 = .sdata:0x805A7401; // type:object size:0x1 data:byte lbl_805A7402 = .sdata:0x805A7402; // type:object size:0x1 data:byte @@ -20047,7 +20047,7 @@ lbl_805A74F0 = .sdata:0x805A74F0; // type:object size:0x4 align:4 data:float lbl_805A74F4 = .sdata:0x805A74F4; // type:object size:0x4 align:4 data:float lbl_805A74F8 = .sdata:0x805A74F8; // type:object size:0x4 lbl_805A74FC = .sdata:0x805A74FC; // type:object size:0x4 -@361 = .sdata:0x805A7500; // type:object size:0x4 scope:local align:4 data:float +@386 = .sdata:0x805A7500; // type:object size:0x4 scope:local align:4 data:float @298 = .sdata:0x805A7508; // type:object size:0x1 scope:local data:byte @367 = .sdata:0x805A7509; // type:object size:0x1 scope:local data:byte lbl_805A7510 = .sdata:0x805A7510; // type:object size:0x4 data:4byte @@ -20182,7 +20182,7 @@ lbl_805A7728 = .sdata:0x805A7728; // type:object size:0x1 data:byte lbl_805A772C = .sdata:0x805A772C; // type:object size:0x4 data:4byte lbl_805A7730 = .sdata:0x805A7730; // type:object size:0x4 align:4 data:float lbl_805A7734 = .sdata:0x805A7734; // type:object size:0x4 data:4byte -@264 = .sdata:0x805A7738; // type:object size:0x4 scope:local +@289 = .sdata:0x805A7738; // type:object size:0x4 scope:local lbl_805A7740 = .sdata:0x805A7740; // type:object size:0x1 data:byte lbl_805A7744 = .sdata:0x805A7744; // type:object size:0x4 data:4byte lbl_805A7748 = .sdata:0x805A7748; // type:object size:0x4 data:4byte @@ -20259,7 +20259,7 @@ lbl_805A7874 = .sdata:0x805A7874; // type:object size:0x4 lbl_805A7878 = .sdata:0x805A7878; // type:object size:0x4 lbl_805A787C = .sdata:0x805A787C; // type:object size:0x4 lbl_805A7880 = .sdata:0x805A7880; // type:object size:0x8 -@207 = .sdata:0x805A7888; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A7888; // type:object size:0x4 scope:local data:4byte lbl_805A7890 = .sdata:0x805A7890; // type:object size:0x4 data:4byte lbl_805A7894 = .sdata:0x805A7894; // type:object size:0x4 data:4byte lbl_805A7898 = .sdata:0x805A7898; // type:object size:0x4 align:4 data:float @@ -20270,7 +20270,7 @@ lbl_805A78AC = .sdata:0x805A78AC; // type:object size:0x4 align:4 data:float lbl_805A78B0 = .sdata:0x805A78B0; // type:object size:0x8 align:4 data:float lbl_805A78B8 = .sdata:0x805A78B8; // type:object size:0x4 data:4byte lbl_805A78BC = .sdata:0x805A78BC; // type:object size:0x4 data:4byte -@207 = .sdata:0x805A78C0; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A78C0; // type:object size:0x4 scope:local data:4byte @441 = .sdata:0x805A78C8; // type:object size:0x4 scope:local align:4 data:float lbl_805A78D0 = .sdata:0x805A78D0; // type:object size:0x4 data:4byte lbl_805A78D4 = .sdata:0x805A78D4; // type:object size:0x4 data:4byte @@ -20314,7 +20314,7 @@ lbl_805A7970 = .sdata:0x805A7970; // type:object size:0x4 data:4byte lbl_805A7974 = .sdata:0x805A7974; // type:object size:0x4 data:4byte lbl_805A7978 = .sdata:0x805A7978; // type:object size:0x8 data:4byte lbl_805A7980 = .sdata:0x805A7980; // type:object size:0x8 data:4byte -@207 = .sdata:0x805A7988; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A7988; // type:object size:0x4 scope:local data:4byte lbl_805A7990 = .sdata:0x805A7990; // type:object size:0x8 data:4byte lbl_805A7998 = .sdata:0x805A7998; // type:object size:0x4 data:4byte lbl_805A799C = .sdata:0x805A799C; // type:object size:0x4 data:4byte @@ -20358,11 +20358,11 @@ lbl_805A7A3C = .sdata:0x805A7A3C; // type:object size:0x4 data:4byte lbl_805A7A40 = .sdata:0x805A7A40; // type:object size:0x8 data:4byte lbl_805A7A48 = .sdata:0x805A7A48; // type:object size:0x4 lbl_805A7A4C = .sdata:0x805A7A4C; // type:object size:0x4 -@225 = .sdata:0x805A7A50; // type:object size:0x4 scope:local data:4byte -lbl_805A7A58 = .sdata:0x805A7A58; // type:object size:0x4 data:4byte -lbl_805A7A5C = .sdata:0x805A7A5C; // type:object size:0x4 data:4byte -lbl_805A7A60 = .sdata:0x805A7A60; // type:object size:0x4 data:4byte -lbl_805A7A64 = .sdata:0x805A7A64; // type:object size:0x4 data:4byte +@250 = .sdata:0x805A7A50; // type:object size:0x4 scope:local data:4byte +@252 = .sdata:0x805A7A58; // type:object size:0x4 scope:local data:4byte +@253 = .sdata:0x805A7A5C; // type:object size:0x4 scope:local data:4byte +@254 = .sdata:0x805A7A60; // type:object size:0x4 scope:local data:4byte +@255 = .sdata:0x805A7A64; // type:object size:0x4 scope:local data:4byte lbl_805A7A68 = .sdata:0x805A7A68; // type:object size:0x4 lbl_805A7A6C = .sdata:0x805A7A6C; // type:object size:0x4 lbl_805A7A70 = .sdata:0x805A7A70; // type:object size:0x4 @@ -20370,7 +20370,7 @@ lbl_805A7A74 = .sdata:0x805A7A74; // type:object size:0x4 lbl_805A7A78 = .sdata:0x805A7A78; // type:object size:0x4 lbl_805A7A7C = .sdata:0x805A7A7C; // type:object size:0x4 lbl_805A7A80 = .sdata:0x805A7A80; // type:object size:0x8 data:4byte -@211 = .sdata:0x805A7A88; // type:object size:0x4 scope:local data:4byte +@236 = .sdata:0x805A7A88; // type:object size:0x4 scope:local data:4byte lbl_805A7A90 = .sdata:0x805A7A90; // type:object size:0x4 data:4byte lbl_805A7A94 = .sdata:0x805A7A94; // type:object size:0x4 data:4byte lbl_805A7A98 = .sdata:0x805A7A98; // type:object size:0x4 data:4byte @@ -20491,7 +20491,7 @@ lbl_805A7C70 = .sdata:0x805A7C70; // type:object size:0x8 align:8 data:double lbl_805A7C78 = .sdata:0x805A7C78; // type:object size:0x8 align:4 data:float lbl_805A7C80 = .sdata:0x805A7C80; // type:object size:0x4 data:4byte lbl_805A7C84 = .sdata:0x805A7C84; // type:object size:0x4 align:4 data:float -@207 = .sdata:0x805A7C88; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A7C88; // type:object size:0x4 scope:local data:4byte @384 = .sdata:0x805A7C90; // type:object size:0x4 scope:local data:4byte lbl_805A7C98 = .sdata:0x805A7C98; // type:object size:0x4 lbl_805A7C9C = .sdata:0x805A7C9C; // type:object size:0x4 @@ -20662,8 +20662,8 @@ lbl_805A7F4C = .sdata:0x805A7F4C; // type:object size:0x1 data:byte lbl_805A7F4D = .sdata:0x805A7F4D; // type:object size:0x1 data:byte lbl_805A7F4E = .sdata:0x805A7F4E; // type:object size:0x2 lbl_805A7F50 = .sdata:0x805A7F50; // type:object size:0x8 -@244 = .sdata:0x805A7F58; // type:object size:0x4 scope:local data:4byte -@417 = .sdata:0x805A7F60; // type:object size:0x4 scope:local align:4 data:float +@269 = .sdata:0x805A7F58; // type:object size:0x4 scope:local data:4byte +@442 = .sdata:0x805A7F60; // type:object size:0x4 scope:local align:4 data:float lbl_805A7F68 = .sdata:0x805A7F68; // type:object size:0x4 lbl_805A7F6C = .sdata:0x805A7F6C; // type:object size:0x4 lbl_805A7F70 = .sdata:0x805A7F70; // type:object size:0x8 data:4byte @@ -20702,7 +20702,7 @@ lbl_805A7FF4 = .sdata:0x805A7FF4; // type:object size:0x4 data:4byte lbl_805A7FF8 = .sdata:0x805A7FF8; // type:object size:0x4 data:4byte lbl_805A7FFC = .sdata:0x805A7FFC; // type:object size:0x4 lbl_805A8000 = .sdata:0x805A8000; // type:object size:0x8 -@207 = .sdata:0x805A8008; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A8008; // type:object size:0x4 scope:local data:4byte lbl_805A8010 = .sdata:0x805A8010; // type:object size:0x4 align:4 data:float lbl_805A8014 = .sdata:0x805A8014; // type:object size:0x4 align:4 data:float lbl_805A8018 = .sdata:0x805A8018; // type:object size:0x4 @@ -20839,7 +20839,7 @@ lbl_805A823C = .sdata:0x805A823C; // type:object size:0x4 data:4byte lbl_805A8240 = .sdata:0x805A8240; // type:object size:0x4 data:4byte lbl_805A8244 = .sdata:0x805A8244; // type:object size:0x4 data:4byte lbl_805A8248 = .sdata:0x805A8248; // type:object size:0x8 data:4byte -@207 = .sdata:0x805A8250; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A8250; // type:object size:0x4 scope:local data:4byte lbl_805A8258 = .sdata:0x805A8258; // type:object size:0x1 data:byte lbl_805A825C = .sdata:0x805A825C; // type:object size:0x4 align:4 data:float lbl_805A8260 = .sdata:0x805A8260; // type:object size:0x1 data:byte @@ -20880,7 +20880,7 @@ lbl_805A82F0 = .sdata:0x805A82F0; // type:object size:0x4 lbl_805A82F4 = .sdata:0x805A82F4; // type:object size:0x4 lbl_805A82F8 = .sdata:0x805A82F8; // type:object size:0x4 lbl_805A82FC = .sdata:0x805A82FC; // type:object size:0x4 -@295 = .sdata:0x805A8300; // type:object size:0x4 scope:local data:4byte +@320 = .sdata:0x805A8300; // type:object size:0x4 scope:local data:4byte lbl_805A8308 = .sdata:0x805A8308; // type:object size:0x4 data:4byte lbl_805A830C = .sdata:0x805A830C; // type:object size:0x4 data:4byte lbl_805A8310 = .sdata:0x805A8310; // type:object size:0x4 data:4byte @@ -20981,7 +20981,7 @@ lbl_805A8494 = .sdata:0x805A8494; // type:object size:0x4 data:4byte @141 = .sdata:0x805A849C; // type:object size:0x4 scope:local align:4 data:float lbl_805A84A0 = .sdata:0x805A84A0; // type:object size:0x4 data:4byte lbl_805A84A4 = .sdata:0x805A84A4; // type:object size:0x4 data:4byte -@207 = .sdata:0x805A84A8; // type:object size:0x4 scope:local data:4byte +@232 = .sdata:0x805A84A8; // type:object size:0x4 scope:local data:4byte lbl_805A84B0 = .sdata:0x805A84B0; // type:object size:0x1 data:byte lbl_805A84B1 = .sdata:0x805A84B1; // type:object size:0x1 lbl_805A84B2 = .sdata:0x805A84B2; // type:object size:0x1 data:byte @@ -22951,8 +22951,8 @@ lbl_805AA7A8 = .sdata2:0x805AA7A8; // type:object size:0x8 align:8 data:double lbl_805AA7D0 = .sdata2:0x805AA7D0; // type:object size:0x4 align:4 data:float lbl_805AA7D4 = .sdata2:0x805AA7D4; // type:object size:0x4 align:4 data:float lbl_805AA7D8 = .sdata2:0x805AA7D8; // type:object size:0x8 align:4 data:float -@441 = .sdata2:0x805AA7E0; // type:object size:0x4 scope:local align:4 data:float -@445 = .sdata2:0x805AA7E8; // type:object size:0x8 scope:local align:8 data:double +@466 = .sdata2:0x805AA7E0; // type:object size:0x4 scope:local align:4 data:float +@470 = .sdata2:0x805AA7E8; // type:object size:0x8 scope:local align:8 data:double lbl_805AA7F0 = .sdata2:0x805AA7F0; // type:object size:0x4 align:4 data:float lbl_805AA7F4 = .sdata2:0x805AA7F4; // type:object size:0x4 align:4 data:float lbl_805AA7F8 = .sdata2:0x805AA7F8; // type:object size:0x4 @@ -23088,7 +23088,7 @@ lbl_805AAA1C = .sdata2:0x805AAA1C; // type:object size:0x4 align:4 data:float lbl_805AAA20 = .sdata2:0x805AAA20; // type:object size:0x8 align:8 data:double lbl_805AAA28 = .sdata2:0x805AAA28; // type:object size:0x4 align:4 data:float lbl_805AAA2C = .sdata2:0x805AAA2C; // type:object size:0x4 align:4 data:float -@249 = .sdata2:0x805AAA30; // type:object size:0x4 scope:local align:4 data:float +@274 = .sdata2:0x805AAA30; // type:object size:0x4 scope:local align:4 data:float lbl_805AAA38 = .sdata2:0x805AAA38; // type:object size:0x4 align:4 data:float lbl_805AAA3C = .sdata2:0x805AAA3C; // type:object size:0x4 align:4 data:float lbl_805AAA40 = .sdata2:0x805AAA40; // type:object size:0x4 align:4 data:float @@ -23183,15 +23183,15 @@ lbl_805AABD8 = .sdata2:0x805AABD8; // type:object size:0x4 align:4 data:float lbl_805AABDC = .sdata2:0x805AABDC; // type:object size:0x4 align:4 data:float lbl_805AABE0 = .sdata2:0x805AABE0; // type:object size:0x4 align:4 data:float lbl_805AABE8 = .sdata2:0x805AABE8; // type:object size:0x8 align:8 data:double -@298 = .sdata2:0x805AABF0; // type:object size:0x4 scope:local align:4 data:float +@323 = .sdata2:0x805AABF0; // type:object size:0x4 scope:local align:4 data:float lbl_805AABF8 = .sdata2:0x805AABF8; // type:object size:0x4 align:4 data:float lbl_805AABFC = .sdata2:0x805AABFC; // type:object size:0x4 align:4 data:float lbl_805AAC00 = .sdata2:0x805AAC00; // type:object size:0x8 align:4 data:float @233 = .sdata2:0x805AAC08; // type:object size:0x4 scope:local align:4 data:float @234 = .sdata2:0x805AAC0C; // type:object size:0x4 scope:local align:4 data:float -@270 = .sdata2:0x805AAC10; // type:object size:0x4 scope:local align:4 data:float -@280 = .sdata2:0x805AAC14; // type:object size:0x4 scope:local align:4 data:float -@285 = .sdata2:0x805AAC18; // type:object size:0x8 scope:local align:8 data:double +@295 = .sdata2:0x805AAC10; // type:object size:0x4 scope:local align:4 data:float +@305 = .sdata2:0x805AAC14; // type:object size:0x4 scope:local align:4 data:float +@310 = .sdata2:0x805AAC18; // type:object size:0x8 scope:local align:8 data:double lbl_805AAC20 = .sdata2:0x805AAC20; // type:object size:0x4 align:4 data:float lbl_805AAC24 = .sdata2:0x805AAC24; // type:object size:0x4 align:4 data:float lbl_805AAC28 = .sdata2:0x805AAC28; // type:object size:0x4 align:4 data:float @@ -23312,19 +23312,19 @@ lbl_805AAE20 = .sdata2:0x805AAE20; // type:object size:0x4 align:4 data:float lbl_805AAE24 = .sdata2:0x805AAE24; // type:object size:0x4 align:4 data:float lbl_805AAE28 = .sdata2:0x805AAE28; // type:object size:0x8 align:4 data:float kSoundId = .sdata2:0x805AAE30; // type:object size:0x4 scope:local -@510 = .sdata2:0x805AAE34; // type:object size:0x4 scope:local align:4 data:float -@511 = .sdata2:0x805AAE38; // type:object size:0x4 scope:local align:4 data:float -@584 = .sdata2:0x805AAE3C; // type:object size:0x4 scope:local align:4 data:float -@585 = .sdata2:0x805AAE40; // type:object size:0x4 scope:local align:4 data:float -@586 = .sdata2:0x805AAE44; // type:object size:0x4 scope:local align:4 data:float -@587 = .sdata2:0x805AAE48; // type:object size:0x4 scope:local align:4 data:float -@588 = .sdata2:0x805AAE4C; // type:object size:0x4 scope:local align:4 data:float -@641 = .sdata2:0x805AAE50; // type:object size:0x4 scope:local align:4 data:float -@642 = .sdata2:0x805AAE54; // type:object size:0x4 scope:local align:4 data:float -@643 = .sdata2:0x805AAE58; // type:object size:0x4 scope:local align:4 data:float -@644 = .sdata2:0x805AAE5C; // type:object size:0x4 scope:local align:4 data:float -@740 = .sdata2:0x805AAE60; // type:object size:0x4 scope:local align:4 data:float -@741 = .sdata2:0x805AAE64; // type:object size:0x4 scope:local align:4 data:float +@535 = .sdata2:0x805AAE34; // type:object size:0x4 scope:local align:4 data:float +@536 = .sdata2:0x805AAE38; // type:object size:0x4 scope:local align:4 data:float +@609 = .sdata2:0x805AAE3C; // type:object size:0x4 scope:local align:4 data:float +@610 = .sdata2:0x805AAE40; // type:object size:0x4 scope:local align:4 data:float +@611 = .sdata2:0x805AAE44; // type:object size:0x4 scope:local align:4 data:float +@612 = .sdata2:0x805AAE48; // type:object size:0x4 scope:local align:4 data:float +@613 = .sdata2:0x805AAE4C; // type:object size:0x4 scope:local align:4 data:float +@666 = .sdata2:0x805AAE50; // type:object size:0x4 scope:local align:4 data:float +@667 = .sdata2:0x805AAE54; // type:object size:0x4 scope:local align:4 data:float +@668 = .sdata2:0x805AAE58; // type:object size:0x4 scope:local align:4 data:float +@669 = .sdata2:0x805AAE5C; // type:object size:0x4 scope:local align:4 data:float +@765 = .sdata2:0x805AAE60; // type:object size:0x4 scope:local align:4 data:float +@766 = .sdata2:0x805AAE64; // type:object size:0x4 scope:local align:4 data:float skSoundId$473 = .sdata2:0x805AAE68; // type:object size:0x4 scope:local @630 = .sdata2:0x805AAE6C; // type:object size:0x4 scope:local align:4 data:float @631 = .sdata2:0x805AAE70; // type:object size:0x4 scope:local align:4 data:float @@ -23364,7 +23364,7 @@ lbl_805AAF08 = .sdata2:0x805AAF08; // type:object size:0x4 align:4 data:float lbl_805AAF0C = .sdata2:0x805AAF0C; // type:object size:0x4 align:4 data:float lbl_805AAF10 = .sdata2:0x805AAF10; // type:object size:0x4 align:4 data:float lbl_805AAF14 = .sdata2:0x805AAF14; // type:object size:0x4 align:4 data:float -@277 = .sdata2:0x805AAF18; // type:object size:0x4 scope:local align:4 data:float +@302 = .sdata2:0x805AAF18; // type:object size:0x4 scope:local align:4 data:float lbl_805AAF20 = .sdata2:0x805AAF20; // type:object size:0x4 align:4 data:float lbl_805AAF24 = .sdata2:0x805AAF24; // type:object size:0x4 align:4 data:float lbl_805AAF28 = .sdata2:0x805AAF28; // type:object size:0x4 align:4 data:float @@ -23399,7 +23399,7 @@ lbl_805AAFB4 = .sdata2:0x805AAFB4; // type:object size:0x4 align:4 data:float lbl_805AAFB8 = .sdata2:0x805AAFB8; // type:object size:0x4 align:4 data:float lbl_805AAFBC = .sdata2:0x805AAFBC; // type:object size:0x4 align:4 data:float lbl_805AAFC0 = .sdata2:0x805AAFC0; // type:object size:0x8 align:4 data:float -@223 = .sdata2:0x805AAFC8; // type:object size:0x4 scope:local align:4 data:float +@248 = .sdata2:0x805AAFC8; // type:object size:0x4 scope:local align:4 data:float lbl_805AAFD0 = .sdata2:0x805AAFD0; // type:object size:0x4 align:4 data:float lbl_805AAFD4 = .sdata2:0x805AAFD4; // type:object size:0x4 align:4 data:float lbl_805AAFD8 = .sdata2:0x805AAFD8; // type:object size:0x4 align:4 data:float @@ -23579,12 +23579,12 @@ lbl_805AB2D4 = .sdata2:0x805AB2D4; // type:object size:0x4 align:4 data:float lbl_805AB2D8 = .sdata2:0x805AB2D8; // type:object size:0x4 align:4 data:float lbl_805AB2DC = .sdata2:0x805AB2DC; // type:object size:0x4 align:4 data:float lbl_805AB2E0 = .sdata2:0x805AB2E0; // type:object size:0x8 align:4 data:float -@385 = .sdata2:0x805AB2E8; // type:object size:0x4 scope:local align:4 data:float -@386 = .sdata2:0x805AB2EC; // type:object size:0x4 scope:local align:4 data:float -@387 = .sdata2:0x805AB2F0; // type:object size:0x4 scope:local align:4 data:float -@388 = .sdata2:0x805AB2F4; // type:object size:0x4 scope:local align:4 data:float -@389 = .sdata2:0x805AB2F8; // type:object size:0x4 scope:local align:4 data:float -@390 = .sdata2:0x805AB2FC; // type:object size:0x4 scope:local align:4 data:float +@410 = .sdata2:0x805AB2E8; // type:object size:0x4 scope:local align:4 data:float +@411 = .sdata2:0x805AB2EC; // type:object size:0x4 scope:local align:4 data:float +@412 = .sdata2:0x805AB2F0; // type:object size:0x4 scope:local align:4 data:float +@413 = .sdata2:0x805AB2F4; // type:object size:0x4 scope:local align:4 data:float +@414 = .sdata2:0x805AB2F8; // type:object size:0x4 scope:local align:4 data:float +@415 = .sdata2:0x805AB2FC; // type:object size:0x4 scope:local align:4 data:float lbl_805AB300 = .sdata2:0x805AB300; // type:object size:0x4 data:4byte kDefaultPositionUpdateThreshold__12CActorLights = .sdata2:0x805AB304; // type:object size:0x4 align:4 data:float lbl_805AB308 = .sdata2:0x805AB308; // type:object size:0x4 align:4 data:float @@ -23851,10 +23851,10 @@ lbl_805AB784 = .sdata2:0x805AB784; // type:object size:0x4 align:4 data:float lbl_805AB788 = .sdata2:0x805AB788; // type:object size:0x4 align:4 data:float lbl_805AB78C = .sdata2:0x805AB78C; // type:object size:0x4 align:4 data:float lbl_805AB790 = .sdata2:0x805AB790; // type:object size:0x8 align:4 data:float -@356 = .sdata2:0x805AB798; // type:object size:0x4 scope:local align:4 data:float -@472 = .sdata2:0x805AB79C; // type:object size:0x4 scope:local align:4 data:float -@473 = .sdata2:0x805AB7A0; // type:object size:0x4 scope:local align:4 data:float -@562 = .sdata2:0x805AB7A4; // type:object size:0x4 scope:local align:4 data:float +@381 = .sdata2:0x805AB798; // type:object size:0x4 scope:local align:4 data:float +@497 = .sdata2:0x805AB79C; // type:object size:0x4 scope:local align:4 data:float +@498 = .sdata2:0x805AB7A0; // type:object size:0x4 scope:local align:4 data:float +@587 = .sdata2:0x805AB7A4; // type:object size:0x4 scope:local align:4 data:float lbl_805AB7A8 = .sdata2:0x805AB7A8; // type:object size:0x4 align:4 data:float lbl_805AB7AC = .sdata2:0x805AB7AC; // type:object size:0x4 align:4 data:float lbl_805AB7B0 = .sdata2:0x805AB7B0; // type:object size:0x4 align:4 data:float @@ -23887,7 +23887,7 @@ lbl_805AB81C = .sdata2:0x805AB81C; // type:object size:0x4 align:4 data:float lbl_805AB820 = .sdata2:0x805AB820; // type:object size:0x4 align:4 data:float lbl_805AB824 = .sdata2:0x805AB824; // type:object size:0x4 align:4 data:float lbl_805AB828 = .sdata2:0x805AB828; // type:object size:0x8 align:4 data:float -@360 = .sdata2:0x805AB830; // type:object size:0x4 scope:local align:4 data:float +@385 = .sdata2:0x805AB830; // type:object size:0x4 scope:local align:4 data:float @595 = .sdata2:0x805AB838; // type:object size:0x4 scope:local align:4 data:float @598 = .sdata2:0x805AB83C; // type:object size:0x4 scope:local align:4 data:float @748 = .sdata2:0x805AB840; // type:object size:0x4 scope:local align:4 data:float @@ -23915,10 +23915,10 @@ lbl_805AB89C = .sdata2:0x805AB89C; // type:object size:0x4 align:4 data:float lbl_805AB8A0 = .sdata2:0x805AB8A0; // type:object size:0x4 align:4 data:float lbl_805AB8A4 = .sdata2:0x805AB8A4; // type:object size:0x4 align:4 data:float lbl_805AB8A8 = .sdata2:0x805AB8A8; // type:object size:0x8 align:4 data:float -@253 = .sdata2:0x805AB8B0; // type:object size:0x4 scope:local align:4 data:float -@293 = .sdata2:0x805AB8B4; // type:object size:0x4 scope:local align:4 data:float -@294 = .sdata2:0x805AB8B8; // type:object size:0x4 scope:local align:4 data:float -@295 = .sdata2:0x805AB8BC; // type:object size:0x4 scope:local align:4 data:float +@278 = .sdata2:0x805AB8B0; // type:object size:0x4 scope:local align:4 data:float +@318 = .sdata2:0x805AB8B4; // type:object size:0x4 scope:local align:4 data:float +@319 = .sdata2:0x805AB8B8; // type:object size:0x4 scope:local align:4 data:float +@320 = .sdata2:0x805AB8BC; // type:object size:0x4 scope:local align:4 data:float lbl_805AB8C0 = .sdata2:0x805AB8C0; // type:object size:0x4 align:4 data:float lbl_805AB8C4 = .sdata2:0x805AB8C4; // type:object size:0x4 align:4 data:float lbl_805AB8C8 = .sdata2:0x805AB8C8; // type:object size:0x4 align:4 data:float @@ -23929,8 +23929,8 @@ lbl_805AB8D8 = .sdata2:0x805AB8D8; // type:object size:0x4 align:4 data:float lbl_805AB8DC = .sdata2:0x805AB8DC; // type:object size:0x4 align:4 data:float lbl_805AB8E0 = .sdata2:0x805AB8E0; // type:object size:0x4 align:4 data:float lbl_805AB8E8 = .sdata2:0x805AB8E8; // type:object size:0x8 align:8 data:double -@300 = .sdata2:0x805AB8F0; // type:object size:0x4 scope:local align:4 data:float -@301 = .sdata2:0x805AB8F4; // type:object size:0x4 scope:local align:4 data:float +@325 = .sdata2:0x805AB8F0; // type:object size:0x4 scope:local align:4 data:float +@326 = .sdata2:0x805AB8F4; // type:object size:0x4 scope:local align:4 data:float lbl_805AB8F8 = .sdata2:0x805AB8F8; // type:object size:0x4 align:4 data:float lbl_805AB8FC = .sdata2:0x805AB8FC; // type:object size:0x4 align:4 data:float lbl_805AB900 = .sdata2:0x805AB900; // type:object size:0x4 align:4 data:float @@ -23954,7 +23954,7 @@ lbl_805AB948 = .sdata2:0x805AB948; // type:object size:0x4 align:4 data:float lbl_805AB94C = .sdata2:0x805AB94C; // type:object size:0x4 align:4 data:float lbl_805AB950 = .sdata2:0x805AB950; // type:object size:0x4 align:4 data:float lbl_805AB954 = .sdata2:0x805AB954; // type:object size:0x4 align:4 data:float -@316 = .sdata2:0x805AB958; // type:object size:0x4 scope:local align:4 data:float +@341 = .sdata2:0x805AB958; // type:object size:0x4 scope:local align:4 data:float lbl_805AB960 = .sdata2:0x805AB960; // type:object size:0x4 align:4 data:float lbl_805AB964 = .sdata2:0x805AB964; // type:object size:0x4 align:4 data:float lbl_805AB968 = .sdata2:0x805AB968; // type:object size:0x4 align:4 data:float @@ -24074,8 +24074,8 @@ lbl_805ABB6C = .sdata2:0x805ABB6C; // type:object size:0x4 align:4 data:float lbl_805ABB70 = .sdata2:0x805ABB70; // type:object size:0x4 align:4 data:float lbl_805ABB74 = .sdata2:0x805ABB74; // type:object size:0x4 align:4 data:float lbl_805ABB78 = .sdata2:0x805ABB78; // type:object size:0x8 align:4 data:float -@320 = .sdata2:0x805ABB80; // type:object size:0x4 scope:local align:4 data:float -@377 = .sdata2:0x805ABB84; // type:object size:0x4 scope:local align:4 data:float +@345 = .sdata2:0x805ABB80; // type:object size:0x4 scope:local align:4 data:float +@402 = .sdata2:0x805ABB84; // type:object size:0x4 scope:local align:4 data:float lbl_805ABB88 = .sdata2:0x805ABB88; // type:object size:0x4 align:4 data:float lbl_805ABB8C = .sdata2:0x805ABB8C; // type:object size:0x4 align:4 data:float lbl_805ABB90 = .sdata2:0x805ABB90; // type:object size:0x4 align:4 data:float @@ -24094,12 +24094,12 @@ lbl_805ABBC0 = .sdata2:0x805ABBC0; // type:object size:0x4 align:4 data:float lbl_805ABBC4 = .sdata2:0x805ABBC4; // type:object size:0x4 align:4 data:float lbl_805ABBC8 = .sdata2:0x805ABBC8; // type:object size:0x4 align:4 data:float lbl_805ABBCC = .sdata2:0x805ABBCC; // type:object size:0x4 align:4 data:float -@280 = .sdata2:0x805ABBD0; // type:object size:0x4 scope:local align:4 data:float +@305 = .sdata2:0x805ABBD0; // type:object size:0x4 scope:local align:4 data:float lbl_805ABBD8 = .sdata2:0x805ABBD8; // type:object size:0x4 align:4 data:float lbl_805ABBDC = .sdata2:0x805ABBDC; // type:object size:0x4 align:4 data:float lbl_805ABBE0 = .sdata2:0x805ABBE0; // type:object size:0x8 align:4 data:float -@295 = .sdata2:0x805ABBE8; // type:object size:0x4 scope:local align:4 data:float -@305 = .sdata2:0x805ABBEC; // type:object size:0x4 scope:local align:4 data:float +@320 = .sdata2:0x805ABBE8; // type:object size:0x4 scope:local align:4 data:float +@330 = .sdata2:0x805ABBEC; // type:object size:0x4 scope:local align:4 data:float lbl_805ABBF0 = .sdata2:0x805ABBF0; // type:object size:0x4 align:4 data:float lbl_805ABBF4 = .sdata2:0x805ABBF4; // type:object size:0x4 align:4 data:float lbl_805ABBF8 = .sdata2:0x805ABBF8; // type:object size:0x4 align:4 data:float @@ -24116,14 +24116,14 @@ lbl_805ABC20 = .sdata2:0x805ABC20; // type:object size:0x4 align:4 data:float lbl_805ABC24 = .sdata2:0x805ABC24; // type:object size:0x4 align:4 data:float lbl_805ABC28 = .sdata2:0x805ABC28; // type:object size:0x4 align:4 data:float lbl_805ABC30 = .sdata2:0x805ABC30; // type:object size:0x8 align:8 data:double -@342 = .sdata2:0x805ABC38; // type:object size:0x4 scope:local align:4 data:float -@446 = .sdata2:0x805ABC3C; // type:object size:0x4 scope:local align:4 data:float -@447 = .sdata2:0x805ABC40; // type:object size:0x4 scope:local align:4 data:float -@448 = .sdata2:0x805ABC44; // type:object size:0x4 scope:local align:4 data:float -@449 = .sdata2:0x805ABC48; // type:object size:0x4 scope:local align:4 data:float -@450 = .sdata2:0x805ABC4C; // type:object size:0x4 scope:local align:4 data:float -@451 = .sdata2:0x805ABC50; // type:object size:0x4 scope:local align:4 data:float -@454 = .sdata2:0x805ABC58; // type:object size:0x8 scope:local align:8 data:double +@367 = .sdata2:0x805ABC38; // type:object size:0x4 scope:local align:4 data:float +@471 = .sdata2:0x805ABC3C; // type:object size:0x4 scope:local align:4 data:float +@472 = .sdata2:0x805ABC40; // type:object size:0x4 scope:local align:4 data:float +@473 = .sdata2:0x805ABC44; // type:object size:0x4 scope:local align:4 data:float +@474 = .sdata2:0x805ABC48; // type:object size:0x4 scope:local align:4 data:float +@475 = .sdata2:0x805ABC4C; // type:object size:0x4 scope:local align:4 data:float +@476 = .sdata2:0x805ABC50; // type:object size:0x4 scope:local align:4 data:float +@479 = .sdata2:0x805ABC58; // type:object size:0x8 scope:local align:8 data:double kEndingTime__10CPowerBomb = .sdata2:0x805ABC60; // type:object size:0x4 align:4 data:float @565 = .sdata2:0x805ABC64; // type:object size:0x4 scope:local align:4 data:float @566 = .sdata2:0x805ABC68; // type:object size:0x4 scope:local align:4 data:float @@ -24159,16 +24159,16 @@ lbl_805ABCEC = .sdata2:0x805ABCEC; // type:object size:0x4 align:4 data:float lbl_805ABCF0 = .sdata2:0x805ABCF0; // type:object size:0x8 align:4 data:float lbl_805ABCF8 = .sdata2:0x805ABCF8; // type:object size:0x4 align:4 data:float lbl_805ABCFC = .sdata2:0x805ABCFC; // type:object size:0x4 align:4 data:float -@378 = .sdata2:0x805ABD00; // type:object size:0x4 scope:local align:4 data:float -@379 = .sdata2:0x805ABD04; // type:object size:0x4 scope:local align:4 data:float -@380 = .sdata2:0x805ABD08; // type:object size:0x4 scope:local align:4 data:float -@381 = .sdata2:0x805ABD0C; // type:object size:0x4 scope:local align:4 data:float -@382 = .sdata2:0x805ABD10; // type:object size:0x4 scope:local align:4 data:float -@383 = .sdata2:0x805ABD14; // type:object size:0x4 scope:local align:4 data:float -@384 = .sdata2:0x805ABD18; // type:object size:0x4 scope:local align:4 data:float -@385 = .sdata2:0x805ABD1C; // type:object size:0x4 scope:local align:4 data:float -@386 = .sdata2:0x805ABD20; // type:object size:0x4 scope:local align:4 data:float -@390 = .sdata2:0x805ABD24; // type:object size:0x4 scope:local align:4 data:float +@403 = .sdata2:0x805ABD00; // type:object size:0x4 scope:local align:4 data:float +@404 = .sdata2:0x805ABD04; // type:object size:0x4 scope:local align:4 data:float +@405 = .sdata2:0x805ABD08; // type:object size:0x4 scope:local align:4 data:float +@406 = .sdata2:0x805ABD0C; // type:object size:0x4 scope:local align:4 data:float +@407 = .sdata2:0x805ABD10; // type:object size:0x4 scope:local align:4 data:float +@408 = .sdata2:0x805ABD14; // type:object size:0x4 scope:local align:4 data:float +@409 = .sdata2:0x805ABD18; // type:object size:0x4 scope:local align:4 data:float +@410 = .sdata2:0x805ABD1C; // type:object size:0x4 scope:local align:4 data:float +@411 = .sdata2:0x805ABD20; // type:object size:0x4 scope:local align:4 data:float +@415 = .sdata2:0x805ABD24; // type:object size:0x4 scope:local align:4 data:float lbl_805ABD28 = .sdata2:0x805ABD28; // type:object size:0x4 align:4 data:float lbl_805ABD2C = .sdata2:0x805ABD2C; // type:object size:0x4 align:4 data:float lbl_805ABD30 = .sdata2:0x805ABD30; // type:object size:0x4 align:4 data:float @@ -24209,8 +24209,8 @@ lbl_805ABDC0 = .sdata2:0x805ABDC0; // type:object size:0x8 align:8 data:double lbl_805ABDC8 = .sdata2:0x805ABDC8; // type:object size:0x4 align:4 data:float lbl_805ABDCC = .sdata2:0x805ABDCC; // type:object size:0x4 align:4 data:float lbl_805ABDD0 = .sdata2:0x805ABDD0; // type:object size:0x8 align:4 data:float -lbl_805ABDD8 = .sdata2:0x805ABDD8; // type:object size:0x4 data:4byte -lbl_805ABDDC = .sdata2:0x805ABDDC; // type:object size:0x4 align:4 data:float +skNumProperties__7CRipper = .sdata2:0x805ABDD8; // type:object size:0x4 data:4byte +@675 = .sdata2:0x805ABDDC; // type:object size:0x4 scope:local align:4 data:float lbl_805ABDE0 = .sdata2:0x805ABDE0; // type:object size:0x4 align:4 data:float lbl_805ABDE4 = .sdata2:0x805ABDE4; // type:object size:0x4 align:4 data:float lbl_805ABDE8 = .sdata2:0x805ABDE8; // type:object size:0x4 align:4 data:float @@ -24240,7 +24240,7 @@ lbl_805ABE4C = .sdata2:0x805ABE4C; // type:object size:0x4 align:4 data:float lbl_805ABE50 = .sdata2:0x805ABE50; // type:object size:0x4 align:4 data:float lbl_805ABE54 = .sdata2:0x805ABE54; // type:object size:0x4 align:4 data:float lbl_805ABE58 = .sdata2:0x805ABE58; // type:object size:0x8 align:4 data:float -@333 = .sdata2:0x805ABE60; // type:object size:0x4 scope:local align:4 data:float +@358 = .sdata2:0x805ABE60; // type:object size:0x4 scope:local align:4 data:float lbl_805ABE68 = .sdata2:0x805ABE68; // type:object size:0x4 align:4 data:float lbl_805ABE6C = .sdata2:0x805ABE6C; // type:object size:0x4 align:4 data:float lbl_805ABE70 = .sdata2:0x805ABE70; // type:object size:0x4 align:4 data:float @@ -24353,12 +24353,12 @@ lbl_805AC040 = .sdata2:0x805AC040; // type:object size:0x4 align:4 data:float lbl_805AC044 = .sdata2:0x805AC044; // type:object size:0x4 align:4 data:float lbl_805AC048 = .sdata2:0x805AC048; // type:object size:0x4 align:4 data:float lbl_805AC04C = .sdata2:0x805AC04C; // type:object size:0x4 align:4 data:float -@404 = .sdata2:0x805AC050; // type:object size:0x4 scope:local align:4 data:float -@405 = .sdata2:0x805AC054; // type:object size:0x4 scope:local align:4 data:float -@406 = .sdata2:0x805AC058; // type:object size:0x4 scope:local align:4 data:float -@454 = .sdata2:0x805AC060; // type:object size:0x8 scope:local align:8 data:double -@455 = .sdata2:0x805AC068; // type:object size:0x4 scope:local align:4 data:float -@332 = .sdata2:0x805AC070; // type:object size:0x4 scope:local align:4 data:float +@429 = .sdata2:0x805AC050; // type:object size:0x4 scope:local align:4 data:float +@430 = .sdata2:0x805AC054; // type:object size:0x4 scope:local align:4 data:float +@431 = .sdata2:0x805AC058; // type:object size:0x4 scope:local align:4 data:float +@479 = .sdata2:0x805AC060; // type:object size:0x8 scope:local align:8 data:double +@480 = .sdata2:0x805AC068; // type:object size:0x4 scope:local align:4 data:float +@357 = .sdata2:0x805AC070; // type:object size:0x4 scope:local align:4 data:float lbl_805AC078 = .sdata2:0x805AC078; // type:object size:0x4 align:4 data:float lbl_805AC07C = .sdata2:0x805AC07C; // type:object size:0x4 align:4 data:float lbl_805AC080 = .sdata2:0x805AC080; // type:object size:0x4 align:4 data:float @@ -24371,10 +24371,10 @@ lbl_805AC09C = .sdata2:0x805AC09C; // type:object size:0x4 align:4 data:float lbl_805AC0A0 = .sdata2:0x805AC0A0; // type:object size:0x4 align:4 data:float lbl_805AC0A4 = .sdata2:0x805AC0A4; // type:object size:0x4 align:4 data:float lbl_805AC0A8 = .sdata2:0x805AC0A8; // type:object size:0x8 align:4 data:float -@489 = .sdata2:0x805AC0B0; // type:object size:0x4 scope:local align:4 data:float -@490 = .sdata2:0x805AC0B4; // type:object size:0x4 scope:local align:4 data:float -@491 = .sdata2:0x805AC0B8; // type:object size:0x4 scope:local align:4 data:float -@530 = .sdata2:0x805AC0BC; // type:object size:0x4 scope:local align:4 data:float +@514 = .sdata2:0x805AC0B0; // type:object size:0x4 scope:local align:4 data:float +@515 = .sdata2:0x805AC0B4; // type:object size:0x4 scope:local align:4 data:float +@516 = .sdata2:0x805AC0B8; // type:object size:0x4 scope:local align:4 data:float +@555 = .sdata2:0x805AC0BC; // type:object size:0x4 scope:local align:4 data:float lbl_805AC0C0 = .sdata2:0x805AC0C0; // type:object size:0x4 align:4 data:float lbl_805AC0C4 = .sdata2:0x805AC0C4; // type:object size:0x4 align:4 data:float lbl_805AC0C8 = .sdata2:0x805AC0C8; // type:object size:0x4 align:4 data:float @@ -24526,7 +24526,7 @@ lbl_805AC34C = .sdata2:0x805AC34C; // type:object size:0x4 align:4 data:float lbl_805AC350 = .sdata2:0x805AC350; // type:object size:0x4 align:4 data:float lbl_805AC354 = .sdata2:0x805AC354; // type:object size:0x4 align:4 data:float lbl_805AC358 = .sdata2:0x805AC358; // type:object size:0x8 align:4 data:float -@257 = .sdata2:0x805AC360; // type:object size:0x4 scope:local align:4 data:float +@282 = .sdata2:0x805AC360; // type:object size:0x4 scope:local align:4 data:float lbl_805AC368 = .sdata2:0x805AC368; // type:object size:0x4 align:4 data:float lbl_805AC36C = .sdata2:0x805AC36C; // type:object size:0x4 align:4 data:float lbl_805AC370 = .sdata2:0x805AC370; // type:object size:0x4 align:4 data:float @@ -24751,12 +24751,12 @@ lbl_805AC760 = .sdata2:0x805AC760; // type:object size:0x4 align:4 data:float lbl_805AC764 = .sdata2:0x805AC764; // type:object size:0x4 align:4 data:float lbl_805AC768 = .sdata2:0x805AC768; // type:object size:0x8 align:8 data:double lbl_805AC770 = .sdata2:0x805AC770; // type:object size:0x8 align:4 data:float -@290 = .sdata2:0x805AC778; // type:object size:0x4 scope:local align:4 data:float -@291 = .sdata2:0x805AC77C; // type:object size:0x4 scope:local align:4 data:float -@333 = .sdata2:0x805AC780; // type:object size:0x4 scope:local align:4 data:float -@336 = .sdata2:0x805AC788; // type:object size:0x8 scope:local align:8 data:double -@346 = .sdata2:0x805AC790; // type:object size:0x4 scope:local align:4 data:float -@347 = .sdata2:0x805AC794; // type:object size:0x4 scope:local align:4 data:float +@315 = .sdata2:0x805AC778; // type:object size:0x4 scope:local align:4 data:float +@316 = .sdata2:0x805AC77C; // type:object size:0x4 scope:local align:4 data:float +@358 = .sdata2:0x805AC780; // type:object size:0x4 scope:local align:4 data:float +@361 = .sdata2:0x805AC788; // type:object size:0x8 scope:local align:8 data:double +@371 = .sdata2:0x805AC790; // type:object size:0x4 scope:local align:4 data:float +@372 = .sdata2:0x805AC794; // type:object size:0x4 scope:local align:4 data:float lbl_805AC798 = .sdata2:0x805AC798; // type:object size:0x4 data:4byte lbl_805AC79C = .sdata2:0x805AC79C; // type:object size:0x8 lbl_805AC7A4 = .sdata2:0x805AC7A4; // type:object size:0x8 @@ -24961,14 +24961,14 @@ lbl_805ACB38 = .sdata2:0x805ACB38; // type:object size:0x8 align:8 data:double @490 = .sdata2:0x805ACB40; // type:object size:0x4 scope:local align:4 data:float @491 = .sdata2:0x805ACB44; // type:object size:0x4 scope:local align:4 data:float @492 = .sdata2:0x805ACB48; // type:object size:0x4 scope:local align:4 data:float -@736 = .sdata2:0x805ACB50; // type:object size:0x4 scope:local align:4 data:float -@737 = .sdata2:0x805ACB54; // type:object size:0x4 scope:local align:4 data:float -@738 = .sdata2:0x805ACB58; // type:object size:0x4 scope:local align:4 data:float -@739 = .sdata2:0x805ACB5C; // type:object size:0x4 scope:local align:4 data:float -@740 = .sdata2:0x805ACB60; // type:object size:0x4 scope:local align:4 data:float -@741 = .sdata2:0x805ACB64; // type:object size:0x4 scope:local align:4 data:float -@742 = .sdata2:0x805ACB68; // type:object size:0x4 scope:local align:4 data:float -@835 = .sdata2:0x805ACB6C; // type:object size:0x4 scope:local align:4 data:float +@761 = .sdata2:0x805ACB50; // type:object size:0x4 scope:local align:4 data:float +@762 = .sdata2:0x805ACB54; // type:object size:0x4 scope:local align:4 data:float +@763 = .sdata2:0x805ACB58; // type:object size:0x4 scope:local align:4 data:float +@764 = .sdata2:0x805ACB5C; // type:object size:0x4 scope:local align:4 data:float +@765 = .sdata2:0x805ACB60; // type:object size:0x4 scope:local align:4 data:float +@766 = .sdata2:0x805ACB64; // type:object size:0x4 scope:local align:4 data:float +@767 = .sdata2:0x805ACB68; // type:object size:0x4 scope:local align:4 data:float +@860 = .sdata2:0x805ACB6C; // type:object size:0x4 scope:local align:4 data:float lbl_805ACB70 = .sdata2:0x805ACB70; // type:object size:0x4 align:4 data:float lbl_805ACB74 = .sdata2:0x805ACB74; // type:object size:0x4 align:4 data:float lbl_805ACB78 = .sdata2:0x805ACB78; // type:object size:0x4 align:4 data:float @@ -25077,7 +25077,7 @@ lbl_805ACD30 = .sdata2:0x805ACD30; // type:object size:0x4 align:4 data:float lbl_805ACD34 = .sdata2:0x805ACD34; // type:object size:0x4 align:4 data:float lbl_805ACD38 = .sdata2:0x805ACD38; // type:object size:0x4 align:4 data:float lbl_805ACD3C = .sdata2:0x805ACD3C; // type:object size:0x4 align:4 data:float -@327 = .sdata2:0x805ACD40; // type:object size:0x4 scope:local align:4 data:float +@352 = .sdata2:0x805ACD40; // type:object size:0x4 scope:local align:4 data:float lbl_805ACD48 = .sdata2:0x805ACD48; // type:object size:0x4 align:4 data:float lbl_805ACD4C = .sdata2:0x805ACD4C; // type:object size:0x4 align:4 data:float lbl_805ACD50 = .sdata2:0x805ACD50; // type:object size:0x4 align:4 data:float @@ -25447,7 +25447,7 @@ lbl_805AD3A8 = .sdata2:0x805AD3A8; // type:object size:0x4 align:4 data:float lbl_805AD3AC = .sdata2:0x805AD3AC; // type:object size:0x4 align:4 data:float lbl_805AD3B0 = .sdata2:0x805AD3B0; // type:object size:0x4 align:4 data:float lbl_805AD3B4 = .sdata2:0x805AD3B4; // type:object size:0x4 align:4 data:float -@529 = .sdata2:0x805AD3B8; // type:object size:0x4 scope:local align:4 data:float +@554 = .sdata2:0x805AD3B8; // type:object size:0x4 scope:local align:4 data:float @66 = .sdata2:0x805AD3C0; // type:object size:0x4 scope:local align:4 data:float @67 = .sdata2:0x805AD3C4; // type:object size:0x4 scope:local align:4 data:float @68 = .sdata2:0x805AD3C8; // type:object size:0x4 scope:local align:4 data:float @@ -25537,9 +25537,9 @@ lbl_805AD518 = .sdata2:0x805AD518; // type:object size:0x4 align:4 data:float lbl_805AD51C = .sdata2:0x805AD51C; // type:object size:0x4 align:4 data:float lbl_805AD520 = .sdata2:0x805AD520; // type:object size:0x4 align:4 data:float lbl_805AD524 = .sdata2:0x805AD524; // type:object size:0x4 align:4 data:float -@308 = .sdata2:0x805AD528; // type:object size:0x4 scope:local align:4 data:float -@309 = .sdata2:0x805AD52C; // type:object size:0x4 scope:local align:4 data:float -@310 = .sdata2:0x805AD530; // type:object size:0x4 scope:local align:4 data:float +@333 = .sdata2:0x805AD528; // type:object size:0x4 scope:local align:4 data:float +@334 = .sdata2:0x805AD52C; // type:object size:0x4 scope:local align:4 data:float +@335 = .sdata2:0x805AD530; // type:object size:0x4 scope:local align:4 data:float lbl_805AD538 = .sdata2:0x805AD538; // type:object size:0x4 align:4 data:float lbl_805AD53C = .sdata2:0x805AD53C; // type:object size:0x4 align:4 data:float lbl_805AD540 = .sdata2:0x805AD540; // type:object size:0x4 align:4 data:float @@ -25574,14 +25574,14 @@ lbl_805AD5B4 = .sdata2:0x805AD5B4; // type:object size:0x4 align:4 data:float lbl_805AD5B8 = .sdata2:0x805AD5B8; // type:object size:0x4 align:4 data:float lbl_805AD5BC = .sdata2:0x805AD5BC; // type:object size:0x4 align:4 data:float lbl_805AD5C0 = .sdata2:0x805AD5C0; // type:object size:0x8 align:4 data:float -@430 = .sdata2:0x805AD5C8; // type:object size:0x4 scope:local align:4 data:float -@431 = .sdata2:0x805AD5CC; // type:object size:0x4 scope:local align:4 data:float -@432 = .sdata2:0x805AD5D0; // type:object size:0x4 scope:local align:4 data:float -@433 = .sdata2:0x805AD5D4; // type:object size:0x4 scope:local align:4 data:float -@436 = .sdata2:0x805AD5D8; // type:object size:0x8 scope:local align:8 data:double -@463 = .sdata2:0x805AD5E0; // type:object size:0x4 scope:local align:4 data:float -@464 = .sdata2:0x805AD5E4; // type:object size:0x4 scope:local align:4 data:float -@465 = .sdata2:0x805AD5E8; // type:object size:0x4 scope:local align:4 data:float +@455 = .sdata2:0x805AD5C8; // type:object size:0x4 scope:local align:4 data:float +@456 = .sdata2:0x805AD5CC; // type:object size:0x4 scope:local align:4 data:float +@457 = .sdata2:0x805AD5D0; // type:object size:0x4 scope:local align:4 data:float +@458 = .sdata2:0x805AD5D4; // type:object size:0x4 scope:local align:4 data:float +@461 = .sdata2:0x805AD5D8; // type:object size:0x8 scope:local align:8 data:double +@488 = .sdata2:0x805AD5E0; // type:object size:0x4 scope:local align:4 data:float +@489 = .sdata2:0x805AD5E4; // type:object size:0x4 scope:local align:4 data:float +@490 = .sdata2:0x805AD5E8; // type:object size:0x4 scope:local align:4 data:float lbl_805AD5F0 = .sdata2:0x805AD5F0; // type:object size:0x8 lbl_805AD5F8 = .sdata2:0x805AD5F8; // type:object size:0x4 align:4 data:float lbl_805AD5FC = .sdata2:0x805AD5FC; // type:object size:0x4 align:4 data:float @@ -26478,10 +26478,10 @@ gkEpsilon32 = .sdata2:0x805AE678; // type:object size:0x4 scope:local align:4 da @312 = .sdata2:0x805AE68C; // type:object size:0x4 scope:local align:4 data:float @313 = .sdata2:0x805AE690; // type:object size:0x4 scope:local align:4 data:float @339 = .sdata2:0x805AE694; // type:object size:0x4 scope:local align:4 data:float -@205 = .sdata2:0x805AE698; // type:object size:0x4 scope:local data:4byte -@507 = .sdata2:0x805AE69C; // type:object size:0x4 scope:local align:4 data:float -@508 = .sdata2:0x805AE6A0; // type:object size:0x4 scope:local align:4 data:float -@509 = .sdata2:0x805AE6A4; // type:object size:0x4 scope:local align:4 data:float +@207 = .sdata2:0x805AE698; // type:object size:0x4 scope:local data:4byte +@509 = .sdata2:0x805AE69C; // type:object size:0x4 scope:local align:4 data:float +@510 = .sdata2:0x805AE6A0; // type:object size:0x4 scope:local align:4 data:float +@511 = .sdata2:0x805AE6A4; // type:object size:0x4 scope:local align:4 data:float lbl_805AE6A8 = .sdata2:0x805AE6A8; // type:object size:0x4 data:4byte lbl_805AE6AC = .sdata2:0x805AE6AC; // type:object size:0x4 data:4byte lbl_805AE6B0 = .sdata2:0x805AE6B0; // type:object size:0x8 data:byte @@ -27167,7 +27167,7 @@ lbl_805AF66C = .sbss2:0x805AF66C; // type:object size:0x4 data:4byte lbl_805AF670 = .sbss2:0x805AF670; // type:object size:0x4 data:4byte lbl_805AF674 = .sbss2:0x805AF674; // type:object size:0x4 data:4byte lbl_805AF678 = .sbss2:0x805AF678; // type:object size:0x8 data:4byte -@204 = .sbss2:0x805AF680; // type:object size:0x4 scope:local data:4byte +@206 = .sbss2:0x805AF680; // type:object size:0x4 scope:local data:4byte lbl_805AF688 = .sbss2:0x805AF688; // type:object size:0x4 data:4byte lbl_805AF68C = .sbss2:0x805AF68C; // type:object size:0x4 data:4byte lbl_805AF690 = .sbss2:0x805AF690; // type:object size:0x4 data:4byte diff --git a/configure.py b/configure.py index 11efdff6..04029cd8 100755 --- a/configure.py +++ b/configure.py @@ -595,7 +595,7 @@ config.libs = [ Object(NonMatching, "MetroidPrime/Enemies/CParasite.cpp"), Object(NonMatching, "MetroidPrime/Player/CSamusFaceReflection.cpp"), Object(MatchingFor("GM8E01_00", "GM8E01_01"), "MetroidPrime/ScriptObjects/CScriptPlayerHint.cpp"), - Object(NonMatching, "MetroidPrime/Enemies/CRipper.cpp"), + Object(MatchingFor("GM8E01_00", "GM8E01_01"), "MetroidPrime/Enemies/CRipper.cpp"), Object(NonMatching, "MetroidPrime/Cameras/CCameraShakeData.cpp"), Object( NonMatching, "MetroidPrime/ScriptObjects/CScriptPickupGenerator.cpp" diff --git a/include/MetroidPrime/BodyState/CBodyStateCmdMgr.hpp b/include/MetroidPrime/BodyState/CBodyStateCmdMgr.hpp index 6986444a..a373a92a 100644 --- a/include/MetroidPrime/BodyState/CBodyStateCmdMgr.hpp +++ b/include/MetroidPrime/BodyState/CBodyStateCmdMgr.hpp @@ -426,8 +426,16 @@ public: x284_additiveReaction = cmd; } + void DeliverCmd(const CBCKnockBackCmd& cmd) { + DeliverCmd(cmd.GetCommandId()); + xf4_knockBack = cmd; + } + void DeliverTargetVector(const CVector3f& t) { x18_target = t; } void BlendSteeringCmds(); + void SetSteeringBlendMode(ESteeringBlendMode mode) { + x30_steeringMode = mode; + } void SetSteeringSpeedRange(float rmin, float rmax); void Reset(); CBodyStateCmd* GetCmd(EBodyStateCmd cmd); diff --git a/include/MetroidPrime/Enemies/CKnockBackController.hpp b/include/MetroidPrime/Enemies/CKnockBackController.hpp index 02355c82..48e0fda8 100644 --- a/include/MetroidPrime/Enemies/CKnockBackController.hpp +++ b/include/MetroidPrime/Enemies/CKnockBackController.hpp @@ -87,10 +87,10 @@ public: void sub80233d40(int i, float f1, float f2); void SetAutoResetImpulse(bool b); void SetImpulseDurationIdx(int i); - void SetAnimationStateRange(EKnockBackAnimationState a, EKnockBackAnimationState b) { + void SetAnimationStateRange(EKnockBackAnimationState a, EKnockBackAnimationState b);/* { x18_minAnimState = a; x1c_maxAnimState = b; - } + }*/ void Update(float dt, CStateManager& mgr, CPatterned& parent); void KnockBack(const CVector3f& backVec, CStateManager& mgr, CPatterned& parent, const CDamageInfo& info, EKnockBackType type, float magnitude); diff --git a/include/MetroidPrime/Enemies/CPatterned.hpp b/include/MetroidPrime/Enemies/CPatterned.hpp index 28dbffa0..dd5e1ec4 100644 --- a/include/MetroidPrime/Enemies/CPatterned.hpp +++ b/include/MetroidPrime/Enemies/CPatterned.hpp @@ -246,6 +246,7 @@ public: CStateMachineState& StateMachineState() { return x330_stateMachineState; } const CStateMachineState& GetStateMachineState() const { return x330_stateMachineState; } ECharacter GetCharacterType() const { return x34c_characterType; } + EFlavorType GetFlavorType() const { return x3fc_flavor; } const bool IsAlive() const { return x400_25_alive; } void SetWasHit(const bool v) { x400_24_hitByPlayerProjectile = v; } void SetPendingDeath(const bool v) { x401_30_pendingDeath = v; } diff --git a/include/MetroidPrime/Enemies/CRipper.hpp b/include/MetroidPrime/Enemies/CRipper.hpp new file mode 100644 index 00000000..840e196c --- /dev/null +++ b/include/MetroidPrime/Enemies/CRipper.hpp @@ -0,0 +1,38 @@ +#ifndef _CRIPPER +#define _CRIPPER + +#include "MetroidPrime/CGrappleParameters.hpp" +#include "MetroidPrime/Enemies/CPatterned.hpp" +#include "MetroidPrime/TCastTo.hpp" + +class CRipper : public CPatterned { + static const uint skNumProperties; + +public: + static uint GetNumProperties() { return skNumProperties; } + CRipper(TUniqueId uid, const rstl::string& name, EFlavorType type, const CEntityInfo& info, + const CTransform4f& transform, const CModelData& modelData, + const CPatternedInfo& patternedInfo, const CActorParameters& actorParams, + const CGrappleParameters& grappleParams); + ~CRipper(); + void Accept(IVisitor& visitor) override; + void Think(float dt, CStateManager& mgr) override; + void AcceptScriptMsg(EScriptObjectMessage msg, TUniqueId sender, CStateManager& mgr) override; + EWeaponCollisionResponseTypes GetCollisionResponseType(const CVector3f& position, const CVector3f& direction, const CWeaponMode& mode, int projectileAtrib) const override; + void KnockBack(const CVector3f& direction, CStateManager& mgr, const CDamageInfo& damage, EKnockBackType knockBack, bool inDeferred, float mag) override; + bool PathOver(CStateManager& mgr, float arg) override; + void Patrol(CStateManager& mgr, EStateMsg msg, float arg) override; + +private: + void ProcessGrapplePoint(CStateManager& mgr); + void AddGrapplePoint(CStateManager& mgr); + void RemoveGrapplePoint(CStateManager& mgr); + void AddPlatform(CStateManager& mgr); + void RemovePlatform(CStateManager& mgr); + CGrappleParameters mGrappleParams; + TUniqueId mGrapplePoint; + TUniqueId mPlatform; + bool mMuted : 1; +}; + +#endif // _CRIPPER diff --git a/src/MetroidPrime/Enemies/CRipper.cpp b/src/MetroidPrime/Enemies/CRipper.cpp new file mode 100644 index 00000000..0139f6b5 --- /dev/null +++ b/src/MetroidPrime/Enemies/CRipper.cpp @@ -0,0 +1,191 @@ +#include "MetroidPrime/Enemies/CRipper.hpp" + +#include "Collision/CMaterialList.hpp" +#include "Kyoto/Math/CAABox.hpp" +#include "MetroidPrime/BodyState/CBodyController.hpp" +#include "MetroidPrime/CEntityInfo.hpp" +#include "MetroidPrime/Enemies/CPatterned.hpp" +#include "MetroidPrime/Enemies/CRipperControlledPlatform.hpp" +#include "MetroidPrime/Player/CGrappleArm.hpp" +#include "MetroidPrime/Player/CPlayer.hpp" +#include "MetroidPrime/Player/CPlayerGun.hpp" +#include "MetroidPrime/ScriptObjects/CScriptGrapplePoint.hpp" +#include "MetroidPrime/TCastTo.hpp" +#include "MetroidPrime/TGameTypes.hpp" +#include "rstl/optional_object.hpp" +#include "rstl/string.hpp" + +#include + +const uint CRipper::skNumProperties = 8; + +CRipper::CRipper(TUniqueId uid, const rstl::string& name, EFlavorType type, const CEntityInfo& info, + const CTransform4f& transform, const CModelData& modelData, + const CPatternedInfo& patternedInfo, const CActorParameters& actorParams, + const CGrappleParameters& grappleParams) +: CPatterned(kC_Ripper, uid, name, type, info, transform, modelData, patternedInfo, kMT_Flyer, + kCT_One, kBT_Flyer, actorParams, kKBV_Medium) +, mGrappleParams(grappleParams) +, mGrapplePoint(kInvalidUniqueId) +, mPlatform(kInvalidUniqueId) +, mMuted(false) { + + SetMaterialFilter(CMaterialFilter::MakeIncludeExclude( + CMaterialList(kMT_Solid), + CMaterialList(kMT_NoStaticCollision, kMT_NoPlatformCollision, kMT_Platform))); + GetKnockBackCtrl().SetAutoResetImpulse(false); + GetKnockBackCtrl().SetAnimationStateRange(kKBAS_Flinch, kKBAS_KnockBack); +} + +CRipper::~CRipper() {} + +void CRipper::Accept(IVisitor& visitor) { visitor.Visit(*this); } + +void CRipper::Think(float dt, CStateManager& mgr) { + if (!GetActive()) { + return; + } + + ProcessGrapplePoint(mgr); + const CPlayer* player = mgr.GetPlayer(); + CGrappleArm::EArmState armState = player->GetPlayerGun()->GetGrappleArm().GetAnimState(); + if (mGrapplePoint == kInvalidUniqueId || player->GetOrbitTargetId() != mGrapplePoint || + player->GetGrappleState() == CPlayer::kGS_None) { + CPatterned::Think(dt, mgr); + if (mMuted) { + SetMuted(false); + mMuted = false; + } + + return; + } + + if (player->GetGrappleState() == CPlayer::kGS_Firing && + ((uint)armState <= (uint)CGrappleArm::kAS_FireGrapple || + armState == CGrappleArm::kAS_Three)) { + CPatterned::Think(dt, mgr); + } else { + Stop(); + if (!mMuted) { + SetMuted(true); + mMuted = true; + } + } +} + +void CRipper::AcceptScriptMsg(EScriptObjectMessage msg, TUniqueId sender, CStateManager& mgr) { + CPatterned::AcceptScriptMsg(msg, sender, mgr); + + switch (msg) { + case kSM_Registered: { + BodyCtrl()->Activate(mgr); + AddMaterial(kMT_Immovable, mgr); + RemoveMaterial(kMT_Solid, mgr); + + if (GetFlavorType() == kFT_One) { + AddGrapplePoint(mgr); + RemoveMaterial(kMT_Orbit, mgr); + } + AddPlatform(mgr); + break; + } + case kSM_Deleted: { + RemoveGrapplePoint(mgr); + RemovePlatform(mgr); + break; + } + case kSM_Activate: + AddGrapplePoint(mgr); + AddPlatform(mgr); + break; + case kSM_Deactivate: { + RemoveGrapplePoint(mgr); + RemovePlatform(mgr); + break; + } + default: + break; + } +} +EWeaponCollisionResponseTypes CRipper::GetCollisionResponseType(const CVector3f& position, + const CVector3f& direction, + const CWeaponMode& mode, + int projectileAtrib) const { + EWeaponCollisionResponseTypes ret = kWCR_Unknown32; + if (!GetDamageVulnerability()->WeaponHits(mode, 0)) { + ret = kWCR_Unknown82; + } + + return ret; +} + +void CRipper::KnockBack(const CVector3f& direction, CStateManager& mgr, const CDamageInfo& damage, + EKnockBackType knockback, bool inDeferred, float mag) { + CPatterned::KnockBack(direction, mgr, damage, knockback, inDeferred, mag); + BodyCtrl()->CommandMgr().DeliverCmd(CBCKnockBackCmd(-direction, pas::kS_One)); +} + +bool CRipper::PathOver(CStateManager& mgr, float arg) { return false; } + +void CRipper::Patrol(CStateManager& mgr, EStateMsg msg, float arg) { + BodyCtrl()->CommandMgr().SetSteeringBlendMode(kSBM_FullSpeed); + BodyCtrl()->CommandMgr().SetSteeringSpeedRange(1.f, 1.f); + CPatterned::Patrol(mgr, msg, arg); +} + +void CRipper::AddGrapplePoint(CStateManager& mgr) { + if (mGrapplePoint != kInvalidUniqueId) { + return; + } + + mGrapplePoint = mgr.AllocateUniqueId(); + mgr.AddObject( + rs_new CScriptGrapplePoint(mGrapplePoint, rstl::string_l("RipperGrapplePoint"), + CEntityInfo(GetCurrentAreaId(), CEntity::NullConnectionList), + GetTransform(), true, mGrappleParams)); +} + +void CRipper::RemoveGrapplePoint(CStateManager& mgr) { + if (mGrapplePoint == kInvalidUniqueId) { + return; + } + + mgr.DeleteObjectRequest(mGrapplePoint); + mGrapplePoint = kInvalidUniqueId; +} + +void CRipper::ProcessGrapplePoint(CStateManager& mgr) { + if (GetFlavorType() == kFT_One && mGrapplePoint != kInvalidUniqueId) { + if (CScriptGrapplePoint* gp = + TCastToPtr< CScriptGrapplePoint >(mgr.ObjectById(mGrapplePoint))) { + gp->SetTransform(GetTransform()); + } + } +} + +void CRipper::AddPlatform(CStateManager& mgr) { + if (mPlatform != kInvalidUniqueId) { + return; + } + mPlatform = mgr.AllocateUniqueId(); + CAABox bounds = GetModelData()->GetBounds(GetTransform().GetRotation()); + CRipperControlledPlatform* platform = rs_new CRipperControlledPlatform( + mPlatform, GetUniqueId(), rstl::string_l("Ripper Controlled Platform"), + CEntityInfo(GetCurrentAreaId(), CEntity::NullConnectionList), GetTransform(), bounds, + GetActive(), rstl::optional_object_null()); + + if (!platform) { + return; + } + mgr.AddObject(platform); + platform->AddMaterial(kMT_ProjectilePassthrough, mgr); +} + +void CRipper::RemovePlatform(CStateManager& mgr) { + if (mPlatform == kInvalidUniqueId) { + return; + } + + mgr.DeleteObjectRequest(mPlatform); + mPlatform = kInvalidUniqueId; +}