Skip to content

Commit

Permalink
Merge branch 'master' into PR-shadow-temple-mq-rework
Browse files Browse the repository at this point in the history
  • Loading branch information
Joshua8600 authored Feb 6, 2025
2 parents 290acec + f715f3d commit f798a6c
Show file tree
Hide file tree
Showing 118 changed files with 1,210 additions and 270 deletions.
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,9 @@ All notable changes to this project will be documented in this file.

### Added

- Add Ice Traps.
- Add the ability to shuffle extra merchants in OoT.
- Add the ability to shuffle merchant prices in OoT.
- Implement the Deku Shield in MM.
- Completely rework bombchu, behavior is now a setting with 4 values : free like in OoT, tied to bomb bag like in MM, old-style bombchu bags, and a new bombchu bag setting where 3 bags are in the pool, allowing for 20/30/40 bombchu.

Expand All @@ -18,13 +21,19 @@ All notable changes to this project will be documented in this file.
- Change the Old Hag checks in MM, now the two checks are separate instead of progressing into each other.
- Completely reworked the stray fairy item model to be much closer to the actual fairies.
- Path hints now tell the exact world the path corresponds to in multiworld.
- Logic can now expect Sunlight Arrows to go through Spirit Temple child climb.
- Rework of OoT Fire Temple MQ and Shadow Temple MQ dungeon logic, including implementation of Age Swap, Climb Anywhere, and Hookshot Anywhere features.
- Add two macros for OoT that are needed for new logic situations given the logic reworks.

### Fixed

- Fix the twinmold blue warp item being gigantic when giant mask is equipped.
- Fix a vanilla bug where the frozen link effect would sometimes get distorded.
- Fix FD mask item having weird colors sometimes.
- Fix a small region issue near swamp spider house.
- Fix a bug where magical rupee would sometimes require a scene reload to work properly.
- Fix an odd interaction between open MM dungeons and the moon crash.
- Fix Ganondorf and Ganon fight not allowing Return to Dungeon Entrance.

## [27.0] - 2025-01-04

Expand Down
4 changes: 4 additions & 0 deletions packages/core/include/combo.h
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,7 @@
# include <combo/mm/actor_bgingate.h>
# include <combo/mm/actor_objboat.h>
# include <combo/mm/sequence.h>
# include <combo/mm/z_msgevent.h>
# include <combo/mm/actors/En_Elf.h>
# include <combo/mm/actors/Bg_Hakugin_Post.h>
# endif
Expand Down Expand Up @@ -202,6 +203,9 @@ void comboClearCustomRespawn(CustomRespawnMode customRespawnMode);

void LoadMmItemIcon(void* dst, int iconId);

/* Ice Traps */
void Play_UpdateIceTrap(PlayState* play);

#else
# include <combo/asm.h>
#endif
Expand Down
14 changes: 7 additions & 7 deletions packages/core/include/combo/csmc.h
Original file line number Diff line number Diff line change
Expand Up @@ -69,24 +69,24 @@ typedef struct Actor Actor;
/* Generic */
void* csmcLoadTexture(u8 custom, u32 addr, int fmt, int bpp, int w, int h, int mirror);
void* csmcLoadTextureEx(const CsmcDisplayList* dl);
int csmcFromItem(s16 gi);
int csmcFromItemCloaked(s16 gi, s16 cloakGi);
int csmcEnabled(void);
int csmcEnabledSkulltula(void);
int csmcEnabledCow(void);

/* Chest */
void csmcChestInit(Actor* this, PlayState* play, s16 gi);
void csmcChestPreDraw(Actor* this, PlayState* play, s16 gi);
int csmcChestLarge(s16 gi);
void csmcChestInit(Actor* this, PlayState* play, s16 gi, s16 cloakGi);
void csmcChestPreDraw(Actor* this, PlayState* play, s16 gi, s16 cloakGi);
int csmcChestLarge(s16 gi, s16 cloakGi);

/* Pots */
void csmcPotPreDraw(Actor* this, PlayState* play, s16 gi, int def);
void csmcPotPreDraw(Actor* this, PlayState* play, s16 gi, s16 cloakGi, int def);

/* Grass */
void csmcGrassPreDraw(PlayState* play, s16 gi, int def, int alt, int direct);
void csmcGrassPreDraw(PlayState* play, s16 gi, s16 cloakGi, int def, int alt, int direct);

/* GS */
void csmcGsPreDraw(PlayState* play, s16 gi);
void csmcGsPreDraw(PlayState* play, s16 gi, s16 cloakGi);

const Color_RGB8* csmcTypeColor(int type);

Expand Down
108 changes: 54 additions & 54 deletions packages/core/include/combo/custom.h
Original file line number Diff line number Diff line change
Expand Up @@ -164,59 +164,59 @@
#define CUSTOM_KEEP_GORON_SYMBOL_TEXTURE 0x58e0
#define CUSTOM_KEEP_GAUNTLET1_TEXTURE 0x5ce0
#define CUSTOM_KEEP_GAUNTLET2_TEXTURE 0x60e0
#define CUSTOM_KEEP_VROM 0x8051db0
#define CUSTOM_CHEST_MAJOR_FRONT_ADDR 0x8058690
#define CUSTOM_CHEST_MAJOR_SIDE_ADDR 0x8059690
#define CUSTOM_CHEST_KEY_FRONT_ADDR 0x8059e90
#define CUSTOM_CHEST_KEY_SIDE_ADDR 0x805ae90
#define CUSTOM_CHEST_SPIDER_FRONT_ADDR 0x805b690
#define CUSTOM_CHEST_SPIDER_SIDE_ADDR 0x805c690
#define CUSTOM_CHEST_FAIRY_FRONT_ADDR 0x805ce90
#define CUSTOM_CHEST_FAIRY_SIDE_ADDR 0x805de90
#define CUSTOM_CHEST_HEART_FRONT_ADDR 0x805e690
#define CUSTOM_CHEST_HEART_SIDE_ADDR 0x805f690
#define CUSTOM_CHEST_SOUL_FRONT_ADDR 0x805fe90
#define CUSTOM_CHEST_SOUL_SIDE_ADDR 0x8060e90
#define CUSTOM_CHEST_MAP_FRONT_ADDR 0x8061690
#define CUSTOM_CHEST_MAP_SIDE_ADDR 0x8062690
#define CUSTOM_CRATE_BOSS_KEY_ADDR 0x8062e90
#define CUSTOM_POT_MAJOR_SIDE_ADDR 0x8063e90
#define CUSTOM_POT_MAJOR_TOP_ADDR 0x8064e90
#define CUSTOM_POT_SPIDER_SIDE_ADDR 0x8065090
#define CUSTOM_POT_SPIDER_TOP_ADDR 0x8066090
#define CUSTOM_POT_KEY_SIDE_ADDR 0x8066290
#define CUSTOM_POT_FAIRY_SIDE_ADDR 0x8067290
#define CUSTOM_POT_FAIRY_TOP_ADDR 0x8068290
#define CUSTOM_POT_HEART_SIDE_ADDR 0x8068490
#define CUSTOM_POT_HEART_TOP_ADDR 0x8069490
#define CUSTOM_POT_BOSSKEY_SIDE_ADDR 0x8069690
#define CUSTOM_POT_BOSSKEY_TOP_ADDR 0x806a690
#define CUSTOM_POT_SOUL_SIDE_ADDR 0x806a890
#define CUSTOM_POT_SOUL_TOP_ADDR 0x806b890
#define CUSTOM_POT_MAP_SIDE_ADDR 0x806ba90
#define CUSTOM_GLITTER_ADDR 0x806ca90
#define CUSTOM_GRASS_ADDR 0x806cb90
#define CUSTOM_GRASS_ALT_ADDR 0x806d390
#define CUSTOM_HIVE_ADDR 0x806db90
#define CUSTOM_BUTTERFLY_ADDR 0x806e390
#define CUSTOM_SEQ_TABLE_OOT_VROM 0x806f390
#define CUSTOM_SEQ_TABLE_MM_VROM 0x806fb90
#define CUSTOM_BANK_TABLE_OOT_VROM 0x8070390
#define CUSTOM_BANK_TABLE_MM_VROM 0x8070690
#define CUSTOM_BANK_TABLE_CUSTOM_VROM 0x8070990
#define CUSTOM_AUDIO_TABLE_OOT_VROM 0x8071290
#define CUSTOM_AUDIO_TABLE_MM_VROM 0x8071310
#define CUSTOM_SEQ_BANKS_OOT_VROM 0x8071390
#define CUSTOM_SEQ_BANKS_MM_VROM 0x8071490
#define CUSTOM_MQ_ROOMS_ADDR 0x8071590
#define CUSTOM_MQ_SCENES_ADDR 0x807fba0
#define CUSTOM_MQ_MAPS_ADDR 0x80889a0
#define CUSTOM_XFLAG_TABLE_OOT_SCENES_ADDR 0x808cb00
#define CUSTOM_XFLAG_TABLE_OOT_SETUPS_ADDR 0x808cbd0
#define CUSTOM_XFLAG_TABLE_OOT_ROOMS_ADDR 0x808ccf0
#define CUSTOM_XFLAG_TABLE_MM_SCENES_ADDR 0x808fdd0
#define CUSTOM_XFLAG_TABLE_MM_SETUPS_ADDR 0x808fec0
#define CUSTOM_XFLAG_TABLE_MM_ROOMS_ADDR 0x808ffb0
#define CUSTOM_KEEP_VROM 0x8051dc0
#define CUSTOM_CHEST_MAJOR_FRONT_ADDR 0x80586a0
#define CUSTOM_CHEST_MAJOR_SIDE_ADDR 0x80596a0
#define CUSTOM_CHEST_KEY_FRONT_ADDR 0x8059ea0
#define CUSTOM_CHEST_KEY_SIDE_ADDR 0x805aea0
#define CUSTOM_CHEST_SPIDER_FRONT_ADDR 0x805b6a0
#define CUSTOM_CHEST_SPIDER_SIDE_ADDR 0x805c6a0
#define CUSTOM_CHEST_FAIRY_FRONT_ADDR 0x805cea0
#define CUSTOM_CHEST_FAIRY_SIDE_ADDR 0x805dea0
#define CUSTOM_CHEST_HEART_FRONT_ADDR 0x805e6a0
#define CUSTOM_CHEST_HEART_SIDE_ADDR 0x805f6a0
#define CUSTOM_CHEST_SOUL_FRONT_ADDR 0x805fea0
#define CUSTOM_CHEST_SOUL_SIDE_ADDR 0x8060ea0
#define CUSTOM_CHEST_MAP_FRONT_ADDR 0x80616a0
#define CUSTOM_CHEST_MAP_SIDE_ADDR 0x80626a0
#define CUSTOM_CRATE_BOSS_KEY_ADDR 0x8062ea0
#define CUSTOM_POT_MAJOR_SIDE_ADDR 0x8063ea0
#define CUSTOM_POT_MAJOR_TOP_ADDR 0x8064ea0
#define CUSTOM_POT_SPIDER_SIDE_ADDR 0x80650a0
#define CUSTOM_POT_SPIDER_TOP_ADDR 0x80660a0
#define CUSTOM_POT_KEY_SIDE_ADDR 0x80662a0
#define CUSTOM_POT_FAIRY_SIDE_ADDR 0x80672a0
#define CUSTOM_POT_FAIRY_TOP_ADDR 0x80682a0
#define CUSTOM_POT_HEART_SIDE_ADDR 0x80684a0
#define CUSTOM_POT_HEART_TOP_ADDR 0x80694a0
#define CUSTOM_POT_BOSSKEY_SIDE_ADDR 0x80696a0
#define CUSTOM_POT_BOSSKEY_TOP_ADDR 0x806a6a0
#define CUSTOM_POT_SOUL_SIDE_ADDR 0x806a8a0
#define CUSTOM_POT_SOUL_TOP_ADDR 0x806b8a0
#define CUSTOM_POT_MAP_SIDE_ADDR 0x806baa0
#define CUSTOM_GLITTER_ADDR 0x806caa0
#define CUSTOM_GRASS_ADDR 0x806cba0
#define CUSTOM_GRASS_ALT_ADDR 0x806d3a0
#define CUSTOM_HIVE_ADDR 0x806dba0
#define CUSTOM_BUTTERFLY_ADDR 0x806e3a0
#define CUSTOM_SEQ_TABLE_OOT_VROM 0x806f3a0
#define CUSTOM_SEQ_TABLE_MM_VROM 0x806fba0
#define CUSTOM_BANK_TABLE_OOT_VROM 0x80703a0
#define CUSTOM_BANK_TABLE_MM_VROM 0x80706a0
#define CUSTOM_BANK_TABLE_CUSTOM_VROM 0x80709a0
#define CUSTOM_AUDIO_TABLE_OOT_VROM 0x80712a0
#define CUSTOM_AUDIO_TABLE_MM_VROM 0x8071320
#define CUSTOM_SEQ_BANKS_OOT_VROM 0x80713a0
#define CUSTOM_SEQ_BANKS_MM_VROM 0x80714a0
#define CUSTOM_MQ_ROOMS_ADDR 0x80715a0
#define CUSTOM_MQ_SCENES_ADDR 0x807fbb0
#define CUSTOM_MQ_MAPS_ADDR 0x80889b0
#define CUSTOM_XFLAG_TABLE_OOT_SCENES_ADDR 0x808cb10
#define CUSTOM_XFLAG_TABLE_OOT_SETUPS_ADDR 0x808cbe0
#define CUSTOM_XFLAG_TABLE_OOT_ROOMS_ADDR 0x808cd00
#define CUSTOM_XFLAG_TABLE_MM_SCENES_ADDR 0x808fde0
#define CUSTOM_XFLAG_TABLE_MM_SETUPS_ADDR 0x808fed0
#define CUSTOM_XFLAG_TABLE_MM_ROOMS_ADDR 0x808ffc0
#define CUSTOM_OBJECT_ID_TRIFORCE 0x2035
#define CUSTOM_OBJECT_TRIFORCE_0 0x6000a30
#define CUSTOM_OBJECT_ID_BTN_A 0x2036
Expand Down Expand Up @@ -267,7 +267,7 @@
#define CUSTOM_OBJECT_ID_MM_ADULT_LINK_SPIN_ATTACK_VTX_2 0x203e
#define CUSTOM_OBJECT_ID_MM_ADULT_LINK_SPIN_ATTACK_VTX_3 0x203f
#define CUSTOM_OBJECT_ID_MM_ADULT_LINK_MASK_MTX 0x2040
#define CUSTOM_OBJECT_TABLE_VROM 0x80c5250
#define CUSTOM_OBJECT_TABLE_VROM 0x80c5260
#define CUSTOM_OBJECT_TABLE_SIZE 0x41

#endif
3 changes: 2 additions & 1 deletion packages/core/include/combo/draw.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,12 @@ typedef struct Actor Actor;

void Draw_SetObjectSegment(GraphicsContext* gfx, void* buffer);
void Draw_Gi(PlayState* play, Actor* actor, s16 gi, int flags);
void Draw_GiCloaked(PlayState* play, Actor* actor, s16 gi, s16 cloakGi, int flags);
void Draw_Init2D(Gfx** dl);
void Draw_Blit2D_RGBA32(Gfx** dl, u32 segAddr, int w, int h, float x, float y, float scale);
void Draw_Blit2D_RGBA16(Gfx** dl, u32 segAddr, int w, int h, float x, float y, float scale);
void Draw_Blit2D_IA4(Gfx** dl, u32 segAddr, int w, int h, float x, float y, float scale);
void Draw_GlitterGi(PlayState* play, Actor* actor, s16 gi);
void Draw_GlitterGi(PlayState* play, Actor* actor, s16 gi, s16 giCloak);

void DrawGiSystem_Reset(PlayState* play);
void DrawGiSystem_Update(PlayState* play);
Expand Down
1 change: 1 addition & 0 deletions packages/core/include/combo/drawgi.h
Original file line number Diff line number Diff line change
Expand Up @@ -83,6 +83,7 @@ void DrawGi_Clock(PlayState*, s16);
void DrawGi_Rupee(PlayState*, s16 index, u8 param);
void DrawGi_PondFish(PlayState*, s16 index, u8 param);
void DrawGi_CustomShield(PlayState* play, s16 drawGiId, u8 param);
void DrawGi_TrapIce(PlayState* play, s16 drawGiId, u8 param);

#endif

Expand Down
2 changes: 2 additions & 0 deletions packages/core/include/combo/item.h
Original file line number Diff line number Diff line change
Expand Up @@ -110,6 +110,7 @@
#define IA_MM_NUT_UPGRADE 0x65
#define IA_MM_STONE_AGONY 0x66
#define IA_OOT_SPIN_UPGRADE 0x67
#define IA_TRAP_ICE 0x68
#define IA_NONE 0xff

#define ITT_NONE 0x00
Expand Down Expand Up @@ -175,6 +176,7 @@ typedef struct ComboItemOverride
u8 playerFrom;
s16 giRaw;
s16 gi;
s16 cloakGi;
}
ComboItemOverride;

Expand Down
57 changes: 57 additions & 0 deletions packages/core/include/combo/mm/actors/En_S_Goro.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
#ifndef Z_EN_S_GORO_H
#define Z_EN_S_GORO_H

#include <combo/actor.h>

#define EN_S_GORO_GET_MAIN_TYPE(thisx) ((thisx)->params & 0xF)
#define EN_S_GORO_GET_SWITCH_FLAG(thisx) (((thisx)->params & 0x7F0) >> 4)

struct EnSGoro;

typedef void (*EnSGoroActionFunc)(struct EnSGoro*, PlayState*);

typedef struct EnSGoro {
/* 0x000 */ Actor actor;
/* 0x144 */ Actor* otherGoron;
/* 0x148 */ SkelAnime skelAnime;
/* 0x18C */ EnSGoroActionFunc actionFunc;
/* 0x190 */ ColliderCylinder collider;
/* 0x1DC */ u16 actionFlags;
/* 0x1DE */ u16 bombbuyFlags;
/* 0x1E0 */ char unk_1E0[0xC];
/* 0x1EC */ s16 eyeTexIndex;
/* 0x1EE */ s16 eyeTimer;
/* 0x1F0 */ s16 loseAttentionTimer;
/* 0x1F4 */ s32 objectSlot;
/* 0x1F8 */ Vec3s jointTable[18]; /* GORON_LIMB_MAX */
/* 0x264 */ Vec3s morphTable[18]; /* GORON_LIMB_MAX */
/* 0x2D0 */ f32 scaleFactor;
/* 0x2D4 */ s16 headRotZ;
/* 0x2D6 */ s16 headRotY;
/* 0x2D8 */ s16 bodyRotZ;
/* 0x2DA */ s16 bodyRotY;
/* 0x2DC */ Vec3f headTranslate;
/* 0x2E8 */ Vec3s headRotate;
/* 0x2F0 */ Vec3f bodyTranslate;
/* 0x2FC */ Vec3s bodyRotate;
/* 0x302 */ char unk_302[2];
/* 0x304 */ u16 textId;
/* 0x306 */ s16 snorePhase;
/* 0x308 */ s32 animIndex;
/* 0x30C */ s16 powderKegPrice;
} EnSGoro; // size = 0x310

typedef enum EnSGoroType {
/* 0x0 */ EN_S_GORO_TYPE_SHRINE_WINTER_A,
/* 0x1 */ EN_S_GORO_TYPE_SHRINE_WINTER_B,
/* 0x2 */ EN_S_GORO_TYPE_SHRINE_WINTER_C,
/* 0x3 */ EN_S_GORO_TYPE_SHRINE_SPRING_A,
/* 0x4 */ EN_S_GORO_TYPE_SHRINE_SPRING_B,
/* 0x5 */ EN_S_GORO_TYPE_SHRINE_SPRING_C,
/* 0x6 */ EN_S_GORO_TYPE_SHRINE_SPRING_D,
/* 0x7 */ EN_S_GORO_TYPE_SHRINE_SPRING_E,
/* 0x8 */ EN_S_GORO_TYPE_SHRINE_SPRING_F,
/* 0x9 */ EN_S_GORO_TYPE_BOMBSHOP
} EnSGoroType;

#endif // Z_EN_S_GORO_H
2 changes: 2 additions & 0 deletions packages/core/include/combo/mm/asm_defs.h
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,5 @@
#define PLAYER_TUNIC_GORON 2
#define PLAYER_TUNIC_ZORA 3
#define PLAYER_TUNIC_MAX 3

#define MSCRIPT_CUSTOM_CMD_ID_CHECK_STRENGTH_3 0x33
1 change: 1 addition & 0 deletions packages/core/include/combo/mm/player.h
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
struct Player;

int Player_GetMask(PlayState* play);
s32 Player_HasStrength(u8 requiredStrength);

typedef struct {
/* 0x00 */ u8 unk_00;
Expand Down
2 changes: 2 additions & 0 deletions packages/core/include/combo/mm/save.h
Original file line number Diff line number Diff line change
Expand Up @@ -444,6 +444,8 @@ ALIGNED(16) extern MmSaveContext gSaveContext;
ALIGNED(16) extern MmSave gMmSave;
#endif

extern s8 gPlayerFormItemRestrictions[5][0x72];

/* Custom */
typedef struct
{
Expand Down
25 changes: 25 additions & 0 deletions packages/core/include/combo/mm/z_msgevent.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#ifndef COMBO_MM_Z_MSGEVENT_H
#define COMBO_MM_Z_MSGEVENT_H

#include <combo.h>

typedef s32 (*MsgScriptCallback)(struct Actor*, struct PlayState*);
typedef s32 (*MsgScriptCmdHandler)(struct Actor*, struct PlayState*, u8**, MsgScriptCallback, s32*);
typedef u8 MsgScript;

extern u8 sMsgScriptCmdSizes[51];
extern MsgScriptCmdHandler sMsgScriptCmdHandlers[51];

#define SCRIPT_PACK_16(h, l) (((h) << 8) | (l))

typedef struct {
/* 0x0 */ u8 cmd;
} MsgScriptCmdBase;

typedef struct {
/* 0x0 */ MsgScriptCmdBase base;
/* 0x1 */ u8 offsetH;
/* 0x2 */ u8 offsetL;
} MsgScriptCmdCheckStrength3;

#endif
1 change: 1 addition & 0 deletions packages/core/include/combo/save.h
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@ typedef struct ALIGNED(16)
u8 bombchuBagMm:2;
u8 mmShieldIsDeku:1;
u8 mmProgressiveShields:2;
u8 pendingIceTraps;
#if defined(DEBUG)
u8 cheats[4];
#endif
Expand Down
2 changes: 2 additions & 0 deletions packages/core/include/combo/text.h
Original file line number Diff line number Diff line change
Expand Up @@ -43,6 +43,7 @@
# define TEXT_SIGNAL "\xe0"
# define TEXT_ICON ""
# define TEXT_BB "\x10"
# define TEXT_SFX(sfxId) "\x1e" sfxId
#endif

#define TEXT_C0 TEXT_COLOR_TEAL
Expand All @@ -57,6 +58,7 @@
#define TF_PROGRESSIVE (1 << 2)
#define TF_SIGNAL (1 << 3)
#define TF_PLURAL (1 << 4)
#define TF_NOCLOAK (1 << 5)

#define TFS_CONFIRM (1 << 0)
#define TFS_MUSHROOM (1 << 1)
Expand Down
1 change: 1 addition & 0 deletions packages/core/lib/combo/confvars.ts
Original file line number Diff line number Diff line change
Expand Up @@ -146,6 +146,7 @@ export const CONFVARS = [
'MM_TUNIC_ZORA',
'MM_SCALES',
'MM_STRENGTH',
'MM_KEG_STRENGTH_3',
'OOT_GANON_BOSS_KEY_HINT',
'BLAST_MASK_DELAY_INSTANT',
'BLAST_MASK_DELAY_VERYSHORT',
Expand Down
4 changes: 3 additions & 1 deletion packages/core/lib/combo/custom/custom-objects-builder.ts
Original file line number Diff line number Diff line change
Expand Up @@ -58,9 +58,11 @@ export class CustomObjectsBuilder {
//list = editor.stripList(list, 0x060242c8 - b, 0x060245a8 - b);
editor.submitList(list);

const bSheath = 0x06015100;
const bSheath = 0x06015010;
let listSheath = editor.listData(bSheath)!;
listSheath = editor.stripList(listSheath, 0x06015130 - bSheath, 0x06015140 - bSheath);
listSheath = editor.stripList(listSheath, 0x060150b0 - bSheath, 0x06015108 - bSheath);
listSheath = editor.stripList(listSheath, 0x06015018 - bSheath, 0x06015098 - bSheath);
editor.submitList(listSheath);

return { name: 'EQ_SHIELD_DEKU', ...editor.build() };
Expand Down
2 changes: 1 addition & 1 deletion packages/core/lib/combo/items/defs.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const ITEM_IDS = [
'OOT_ICE_TRAP',
'OOT_TRAP_ICE',
'OOT_BOTTLE_BLUE_FIRE',
'OOT_DEFENSE_UPGRADE',
'MM_DEFENSE_UPGRADE',
Expand Down
Loading

0 comments on commit f798a6c

Please sign in to comment.