Rando: Shuffle Beehives (Rando V3) (#3763)

* Shuffle Beehives

* Address review

* Fix build
This commit is contained in:
Pepe20129
2024-01-14 19:16:32 +01:00
committed by GitHub
parent 4cbf3a5621
commit 080038c39e
31 changed files with 505 additions and 83 deletions

View File

@@ -457,7 +457,7 @@ u32 Actor_HasParent(Actor* actor, PlayState* play);
// TODO: Rename the follwing 3 functions using whatever scheme we use when we rename func_8002F434 and func_8002F554.
s32 GiveItemEntryWithoutActor(PlayState* play, GetItemEntry getItemEntry);
s32 GiveItemEntryFromActor(Actor* actor, PlayState* play, GetItemEntry getItemEntry, f32 xzRange, f32 yRange);
void GiveItemEntryFromActorWithFixedRange(Actor* actor, PlayState* play, GetItemEntry getItemEntry);
s32 GiveItemEntryFromActorWithFixedRange(Actor* actor, PlayState* play, GetItemEntry getItemEntry);
s32 func_8002F434(Actor* actor, PlayState* play, s32 getItemId, f32 xzRange, f32 yRange);
void func_8002F554(Actor* actor, PlayState* play, s32 getItemId);
void func_8002F580(Actor* actor, PlayState* play);

View File

@@ -8,6 +8,7 @@
#include "z64bgcheck.h"
#include "soh/Enhancements/item-tables/ItemTableTypes.h"
#include "z64actor_enum.h"
#include "soh/Enhancements/randomizer/randomizerTypes.h"
#define ACTOR_NUMBER_MAX 2000
#define INVISIBLE_ACTOR_MAX 20
@@ -285,6 +286,8 @@ typedef struct EnItem00 {
/* 0x160 */ ColliderCylinder collider;
s16 ogParams;
GetItemEntry randoGiEntry;
RandomizerCheck randoCheck;
RandomizerInf randoInf;
} EnItem00; // size = 0x1AC
// Only A_OBJ_SIGNPOST_OBLONG and A_OBJ_SIGNPOST_ARROW are used in room files.

View File

@@ -283,7 +283,7 @@ typedef struct {
// #endregion
// #region SOH [Randomizer]
// Upstream TODO: Move these to their own struct or name to more obviously specific to Randomizer
/* */ u16 randomizerInf[14];
/* */ u16 randomizerInf[16];
/* */ u8 mqDungeonCount;
/* */ u16 adultTradeItems;
/* */ u8 triforcePiecesCollected;