mirror of
https://github.com/Xeeynamo/sotn-decomp.git
synced 2024-11-23 13:09:44 +00:00
6b4fcfff9f
Wow. This is perhaps one of the hardest functions I've ever done. It does disgusting things with pointers that I've never seen anything like before - some of them are the fault of the programmers, some are the compiler. Once I was like 98% done, I found func_801B69F8 which is very similar (and decompiled), but wasn't picked up by the duplicate finder, so that was a little sad. Once I found that though, the last of my mysteries were quickly solved. This is a huge function and it's nice to get it cracked.
133 lines
4.2 KiB
Plaintext
133 lines
4.2 KiB
Plaintext
g_SpriteBanks = 0x80180040;
|
|
g_pStObjLayoutHorizontal = 0x80180728;
|
|
g_pStObjLayoutVertical = 0x801807FC;
|
|
PfnEntityUpdates = 0x801808D0;
|
|
g_eBreakableInit = 0x80180A3C;
|
|
g_InitializeData0 = 0x80180A48;
|
|
g_InitializeEntityData0 = 0x80180A54;
|
|
g_EInitGeneric = 0x80180A6C;
|
|
g_InitDataEnt13 = 0x80180A78;
|
|
g_eInitGeneric2 = 0x80180A90;
|
|
g_eDamageDisplayInit = 0x80180A9C;
|
|
g_eRedDoorTiles = 0x80180D78;
|
|
g_eBreakableAnimations = 0x80180E28;
|
|
g_eBreakableHitboxes = 0x80180E48;
|
|
g_eBreakableExplosionTypes = 0x80180E50;
|
|
g_eBreakableanimSets = 0x80180E58;
|
|
g_eBreakableDrawModes = 0x80180E68;
|
|
g_TrapDoorFlag = 0x80181104;
|
|
UNK_Invincibility0 = 0x8018164C;
|
|
g_goldCollectTexts = 0x80181DC4;
|
|
c_GoldPrizes = 0x80181DEC;
|
|
c_HeartPrizes = 0x80181E7C;
|
|
g_ExplosionYVelocities = 0x80181E80;
|
|
g_bigRedFireballAnim = 0x80181EA8;
|
|
g_ExplosionAnimations = 0x80181F2C;
|
|
g_eUnk14SpawnRots = 0x80181FA4;
|
|
unk15_rot = 0x80181FB4;
|
|
unk15_yVel = 0x80181FC4;
|
|
unk14_yVel = 0x80181FDC;
|
|
unk14_startFrame = 0x80181FF4;
|
|
unk14_lifetime = 0x80181FF8;
|
|
g_olroxDroolCollOffsets = 0x80182000;
|
|
g_ESoulStealOrbAngles = 0x8018205C;
|
|
g_ESoulStealOrbSprt = 0x8018206C;
|
|
g_ESoulStealOrbAnim = 0x801820CC;
|
|
g_Rooms = 0x80183A7C;
|
|
EntityBreakable = 0x801B26FC;
|
|
EntityShuttingWindow = 0x801B2C20;
|
|
EntityCastleDoor = 0x801B2F30;
|
|
EntityTransparentWater = 0x801B39CC;
|
|
EntityCavernDoorLever = 0x801B3E84;
|
|
EntityCavernDoorPlatform = 0x801B4004;
|
|
EntityClickSwitch = 0x801B4558;
|
|
EntityPathBlockSmallWeight = 0x801B4680;
|
|
EntityPathBlockTallWeight = 0x801B4940;
|
|
EntityTrapDoor = 0x801B4BE8;
|
|
EntityMermanRockLeftSide = 0x801B4D60;
|
|
EntityMermanRockRightSide = 0x801B5108;
|
|
EntityFallingRock2 = 0x801B560C;
|
|
EntityStairwayPiece = 0x801B5790;
|
|
EntityFallingRock = 0x801B5C5C;
|
|
EntitySwitch = 0x801B5F60;
|
|
EntityHeartRoomGoldDoor = 0x801B6084;
|
|
EntityUnkId49 = 0x801B644C;
|
|
EntitySlogra = 0x801B6990;
|
|
EntitySlograSpear = 0x801B75EC;
|
|
EntitySlograSpearProjectile = 0x801B7798;
|
|
EntityGaibon = 0x801B78BC;
|
|
EntitySmallGaibonProjectile = 0x801B8D84;
|
|
EntityLargeGaibonProjectile = 0x801B8E94;
|
|
Random = 0x801B90BC;
|
|
Update = 0x801B90EC;
|
|
UpdateStageEntities = 0x801B93E8;
|
|
HitDetection = 0x801B94F0;
|
|
EntityDamageDisplay = 0x801BA608;
|
|
InitRoomEntities = 0x801BB508;
|
|
UpdateRoomPosition = 0x801BB680;
|
|
CreateEntityFromCurrentEntity = 0x801BB734;
|
|
CreateEntityFromEntity = 0x801BB7A8;
|
|
EntityRedDoor = 0x801BB89C;
|
|
DestroyEntity = 0x801BC4D4;
|
|
AnimateEntity = 0x801BC604;
|
|
GetDistanceToPlayerX = 0x801BC7D4;
|
|
GetDistanceToPlayerY = 0x801BC810;
|
|
GetSideToPlayer = 0x801BC844;
|
|
MoveEntity = 0x801BC888;
|
|
AllocEntity = 0x801BCD44;
|
|
AdjustValueWithinThreshold = 0x801BCF20;
|
|
SetStep = 0x801BD114;
|
|
SetSubStep = 0x801BD134;
|
|
InitializeEntity = 0x801BD1E4;
|
|
EntityDummy = 0x801BD2E0;
|
|
EntityPrizeDrop = 0x801BDEF4;
|
|
EntityExplosion = 0x801BE768;
|
|
EntityEquipItemDrop = 0x801BE908;
|
|
EntityRelicOrb = 0x801BF1A0;
|
|
EntityHeartDrop = 0x801BFC70;
|
|
EntityMessageBox = 0x801BFD98;
|
|
EntityUnkId13 = 0x801C03E4;
|
|
EntityUnkId15Spawner = 0x801C0624;
|
|
EntityUnkId14 = 0x801C070C;
|
|
EntityUnkId15 = 0x801C07FC;
|
|
EntityIntenseExplosion = 0x801C119C;
|
|
EntityStageNamePopup = 0x801C2860;
|
|
EntitySoulStealOrb = 0x801C34E4;
|
|
EntityEnemyBlood = 0x801C3878;
|
|
EntityRoomForeground = 0x801C3D28;
|
|
EntitySplashWater = 0x801C4DCC;
|
|
EntitySurfacingWater = 0x801C56D8;
|
|
EntitySideWaterSplash = 0x801C5BC4;
|
|
EntitySmallWaterDrop = 0x801C5F58;
|
|
EntityWaterDrop = 0x801C61B4;
|
|
EntityMerman2 = 0x801C6564;
|
|
EntityExplosion2 = 0x801C7650;
|
|
EntityMediumWaterSplash = 0x801C7880;
|
|
EntityMermanWaterSplash = 0x801C7954;
|
|
EntityLargeFallingObject = 0x801C8010;
|
|
EntityMermanSpawner = 0x801C80DC;
|
|
EntityMerman = 0x801C8238;
|
|
EntityMermanExplosion = 0x801C8FEC;
|
|
EntityBoneScimitar = 0x801C91C4;
|
|
EntityBoneScimitarParts = 0x801C9874;
|
|
EntityBat = 0x801C997C;
|
|
EntityZombie = 0x801C9BC8;
|
|
EntityZombieSpawner = 0x801C9E28;
|
|
EntityBloodSplatter = 0x801C9F98;
|
|
EntityBloodyZombie = 0x801CA654;
|
|
EntityOwl = 0x801CB018;
|
|
EntityOwlKnight = 0x801CC2E0;
|
|
EntityHammer = 0x801CE69C;
|
|
EntityGurkhaBodyParts = 0x801CF254;
|
|
EntityHammerWeapon = 0x801CF5B8;
|
|
EntityGurkha = 0x801CF94C;
|
|
EntityGurkhaSword = 0x801D0730;
|
|
EntityBlade = 0x801D0D40;
|
|
EntityBladeSword = 0x801D1BB8;
|
|
PrimDecreaseBrightness = 0x801D2704;
|
|
g_LayoutObjHorizontal = 0x801D2768;
|
|
g_LayoutObjVertical = 0x801D276C;
|
|
g_LayoutObjPosHorizontal = 0x801D2770;
|
|
g_LayoutObjPosVertical = 0x801D2774;
|
|
g_ItemIconSlots = 0x801D33F4;
|