|
|
|
@ -38,6 +38,21 @@ typedef struct RestrictionFlags {
|
|
|
|
|
/* 0x03 */ u8 flags3;
|
|
|
|
|
} RestrictionFlags; // size = 0x4
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @param hGauge Flag unused, purpose unknown
|
|
|
|
|
* @param bButton true to disable B button
|
|
|
|
|
* @param aButton true to disable A button
|
|
|
|
|
* @param bottles true to disable bottle items
|
|
|
|
|
* @param tradeItems true to disable trade items
|
|
|
|
|
* @param hookshot true to disable hookshot
|
|
|
|
|
* @param ocarina true to disable ocarina
|
|
|
|
|
* @param warpSongs 3 to disable warp songs
|
|
|
|
|
* @param sunsSong 3 to disable sun's song time advance in areas where time doesn't move
|
|
|
|
|
* @param farores true to disable Farore's Wind
|
|
|
|
|
* @param dinsNayrus true to disable Din's Fire and Nayru's Love
|
|
|
|
|
* @param all true to disable items other than ocarina, bottles and trade items
|
|
|
|
|
* (except lens of truth in the treasure shop)
|
|
|
|
|
*/
|
|
|
|
|
#define RESTRICTION_FLAGS(hGauge, bButton, aButton, bottles, tradeItems, hookshot, ocarina, warpSongs, sunsSong, \
|
|
|
|
|
farores, dinsNayrus, all) \
|
|
|
|
|
(((hGauge) << 6) | ((bButton) << 4) | ((aButton) << 2) | (bottles)), \
|
|
|
|
@ -45,400 +60,143 @@ typedef struct RestrictionFlags {
|
|
|
|
|
(((sunsSong) << 6) | ((farores) << 4) | ((dinsNayrus) << 2) | (all))
|
|
|
|
|
|
|
|
|
|
static RestrictionFlags sRestrictionFlags[] = {
|
|
|
|
|
{ SCENE_HYRULE_FIELD,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_HYRULE_FIELD, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_KAKARIKO_VILLAGE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_GRAVEYARD, RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON,
|
|
|
|
|
RESTR_TRADE_ITEMS_ON, RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON,
|
|
|
|
|
RESTR_SUNS_SONG_0, RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_ZORAS_RIVER,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_KOKIRI_FOREST,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_GRAVEYARD, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_ZORAS_RIVER, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_KOKIRI_FOREST, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_SACRED_FOREST_MEADOW,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_LAKE_HYLIA,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_ZORAS_DOMAIN,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_ZORAS_FOUNTAIN,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_GERUDO_VALLEY,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_LOST_WOODS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_DESERT_COLOSSUS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_LAKE_HYLIA, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_ZORAS_DOMAIN, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_ZORAS_FOUNTAIN, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_GERUDO_VALLEY, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_LOST_WOODS, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_DESERT_COLOSSUS, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_GERUDOS_FORTRESS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_HAUNTED_WASTELAND,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_HYRULE_CASTLE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_HYRULE_CASTLE, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_OUTSIDE_GANONS_CASTLE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_DEATH_MOUNTAIN_TRAIL,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_DEATH_MOUNTAIN_CRATER,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_GORON_CITY,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_LON_LON_RANCH,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_TEMPLE_OF_TIME,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_CHAMBER_OF_THE_SAGES,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_2, RESTR_B_BTN_2, RESTR_A_BTN_0, RESTR_BOTTLES_OFF_2, RESTR_TRADE_ITEMS_OFF_2,
|
|
|
|
|
RESTR_HOOKSHOT_OFF_2, RESTR_OCARINA_OFF_2, RESTR_WARP_SONGS_ON_2, RESTR_SUNS_SONG_2,
|
|
|
|
|
RESTR_FARORES_OFF_2, RESTR_DINS_NAYRUS_OFF_2, RESTR_ALL_OFF_2) },
|
|
|
|
|
{ SCENE_SHOOTING_GALLERY,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_OFF, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_GORON_CITY, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_LON_LON_RANCH, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_TEMPLE_OF_TIME, RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_CHAMBER_OF_THE_SAGES, RESTRICTION_FLAGS(2, 2, false, 2, 2, 2, 2, 2, 2, 2, 2, 2) },
|
|
|
|
|
{ SCENE_SHOOTING_GALLERY, RESTRICTION_FLAGS(0, true, false, true, true, true, true, 1, 1, true, true, true) },
|
|
|
|
|
{ SCENE_CASTLE_COURTYARD_GUARDS_DAY,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_OFF, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
RESTRICTION_FLAGS(0, true, false, true, true, true, true, 1, 1, true, true, true) },
|
|
|
|
|
{ SCENE_CASTLE_COURTYARD_GUARDS_NIGHT,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_OFF, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_REDEAD_GRAVE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_3, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, true, false, true, true, true, true, 1, 1, true, true, true) },
|
|
|
|
|
{ SCENE_REDEAD_GRAVE, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 3, true, false, false) },
|
|
|
|
|
{ SCENE_GRAVE_WITH_FAIRYS_FOUNTAIN,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_3, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 3, true, false, false) },
|
|
|
|
|
{ SCENE_ROYAL_FAMILYS_TOMB,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_3, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 3, true, false, false) },
|
|
|
|
|
{ SCENE_GREAT_FAIRYS_FOUNTAIN_MAGIC,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_FAIRYS_FOUNTAIN,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_3, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_FAIRYS_FOUNTAIN, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 3, true, false, false) },
|
|
|
|
|
{ SCENE_GREAT_FAIRYS_FOUNTAIN_SPELLS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_GANONS_TOWER_COLLAPSE_EXTERIOR,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, true, 1, 1, true, false, false) },
|
|
|
|
|
{ SCENE_CASTLE_COURTYARD_ZELDA,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_OFF, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_FISHING_POND,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_OFF, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_BOMBCHU_BOWLING_ALLEY,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_OFF, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_LON_LON_BUILDINGS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, true, 1, 1, true, true, false) },
|
|
|
|
|
{ SCENE_FISHING_POND, RESTRICTION_FLAGS(0, true, false, true, true, true, true, 1, 1, true, true, true) },
|
|
|
|
|
{ SCENE_BOMBCHU_BOWLING_ALLEY, RESTRICTION_FLAGS(0, true, false, true, true, true, true, 1, 1, true, true, true) },
|
|
|
|
|
{ SCENE_LON_LON_BUILDINGS, RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_MARKET_GUARD_HOUSE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_POTION_SHOP_GRANNY,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_TREASURE_BOX_SHOP,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_HOUSE_OF_SKULLTULA,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 0, true, true, false) },
|
|
|
|
|
{ SCENE_POTION_SHOP_GRANNY, RESTRICTION_FLAGS(0, true, false, false, false, true, true, 1, 1, true, true, true) },
|
|
|
|
|
{ SCENE_TREASURE_BOX_SHOP, RESTRICTION_FLAGS(0, true, false, false, false, true, true, 1, 1, true, true, true) },
|
|
|
|
|
{ SCENE_HOUSE_OF_SKULLTULA, RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_MARKET_ENTRANCE_DAY,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_MARKET_ENTRANCE_NIGHT,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_MARKET_ENTRANCE_RUINS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_3, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_MARKET_DAY,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_MARKET_NIGHT,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_MARKET_RUINS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_3, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_BACK_ALLEY_DAY,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_BACK_ALLEY_NIGHT,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 3, true, true, true) },
|
|
|
|
|
{ SCENE_MARKET_DAY, RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_MARKET_NIGHT, RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_MARKET_RUINS, RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 3, true, true, true) },
|
|
|
|
|
{ SCENE_BACK_ALLEY_DAY, RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_BACK_ALLEY_NIGHT, RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_TEMPLE_OF_TIME_EXTERIOR_DAY,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_TEMPLE_OF_TIME_EXTERIOR_NIGHT,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_TEMPLE_OF_TIME_EXTERIOR_RUINS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_3, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_LINKS_HOUSE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 3, true, true, true) },
|
|
|
|
|
{ SCENE_LINKS_HOUSE, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_KAKARIKO_CENTER_GUEST_HOUSE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_BACK_ALLEY_HOUSE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_BACK_ALLEY_HOUSE, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_KNOW_IT_ALL_BROS_HOUSE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_TWINS_HOUSE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_MIDOS_HOUSE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_SARIAS_HOUSE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_STABLE, RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON,
|
|
|
|
|
RESTR_TRADE_ITEMS_ON, RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON,
|
|
|
|
|
RESTR_SUNS_SONG_0, RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_GRAVEKEEPERS_HUT,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_DOG_LADY_HOUSE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_IMPAS_HOUSE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_TWINS_HOUSE, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_MIDOS_HOUSE, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_SARIAS_HOUSE, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_STABLE, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_GRAVEKEEPERS_HUT, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_DOG_LADY_HOUSE, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_IMPAS_HOUSE, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_LAKESIDE_LABORATORY,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_CARPENTERS_TENT,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_BAZAAR, RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON,
|
|
|
|
|
RESTR_TRADE_ITEMS_ON, RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON,
|
|
|
|
|
RESTR_SUNS_SONG_0, RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_KOKIRI_SHOP,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_GORON_SHOP,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_ZORA_SHOP,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_CARPENTERS_TENT, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_BAZAAR, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_KOKIRI_SHOP, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_GORON_SHOP, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_ZORA_SHOP, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_POTION_SHOP_KAKARIKO,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_POTION_SHOP_MARKET,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_BOMBCHU_SHOP,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
{ SCENE_HAPPY_MASK_SHOP,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_1, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_OFF, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_OFF) },
|
|
|
|
|
RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_POTION_SHOP_MARKET, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_BOMBCHU_SHOP, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_HAPPY_MASK_SHOP, RESTRICTION_FLAGS(0, true, false, false, false, true, false, 0, 0, true, true, true) },
|
|
|
|
|
{ SCENE_GERUDO_TRAINING_GROUND,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_OFF, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_DEKU_TREE, RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON,
|
|
|
|
|
RESTR_TRADE_ITEMS_ON, RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON,
|
|
|
|
|
RESTR_SUNS_SONG_0, RESTR_FARORES_ON, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_DEKU_TREE_BOSS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 3, 0, true, false, false) },
|
|
|
|
|
{ SCENE_DEKU_TREE, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, false, false, false) },
|
|
|
|
|
{ SCENE_DEKU_TREE_BOSS, RESTRICTION_FLAGS(0, false, false, false, true, false, true, 1, 1, true, false, false) },
|
|
|
|
|
{ SCENE_DODONGOS_CAVERN,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_ON,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, false, false, false) },
|
|
|
|
|
{ SCENE_DODONGOS_CAVERN_BOSS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_JABU_JABU, RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON,
|
|
|
|
|
RESTR_TRADE_ITEMS_ON, RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON,
|
|
|
|
|
RESTR_SUNS_SONG_0, RESTR_FARORES_ON, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_JABU_JABU_BOSS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_FOREST_TEMPLE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_ON,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, true, false, true, 1, 1, true, false, false) },
|
|
|
|
|
{ SCENE_JABU_JABU, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, false, false, false) },
|
|
|
|
|
{ SCENE_JABU_JABU_BOSS, RESTRICTION_FLAGS(0, false, false, false, true, false, true, 1, 1, true, false, false) },
|
|
|
|
|
{ SCENE_FOREST_TEMPLE, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, false, false, false) },
|
|
|
|
|
{ SCENE_FOREST_TEMPLE_BOSS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, true, false, true, 1, 1, true, false, false) },
|
|
|
|
|
{ SCENE_BOTTOM_OF_THE_WELL,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_ON,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_SHADOW_TEMPLE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_ON,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, false, false, false) },
|
|
|
|
|
{ SCENE_SHADOW_TEMPLE, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, false, false, false) },
|
|
|
|
|
{ SCENE_SHADOW_TEMPLE_BOSS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_FIRE_TEMPLE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_ON,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_FIRE_TEMPLE_BOSS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_WATER_TEMPLE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_ON,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_WATER_TEMPLE_BOSS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_SPIRIT_TEMPLE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_ON,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, true, false, true, 1, 1, true, false, false) },
|
|
|
|
|
{ SCENE_FIRE_TEMPLE, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, false, false, false) },
|
|
|
|
|
{ SCENE_FIRE_TEMPLE_BOSS, RESTRICTION_FLAGS(0, false, false, false, true, false, true, 1, 1, true, false, false) },
|
|
|
|
|
{ SCENE_WATER_TEMPLE, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, false, false, false) },
|
|
|
|
|
{ SCENE_WATER_TEMPLE_BOSS, RESTRICTION_FLAGS(0, false, false, false, true, false, true, 1, 1, true, false, false) },
|
|
|
|
|
{ SCENE_SPIRIT_TEMPLE, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, false, false, false) },
|
|
|
|
|
{ SCENE_SPIRIT_TEMPLE_BOSS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_GANONS_TOWER,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_ON,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_GANONDORF_BOSS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_ICE_CAVERN,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_3, RESTR_FARORES_ON,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, true, false, true, 1, 1, true, false, false) },
|
|
|
|
|
{ SCENE_GANONS_TOWER, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, false, false, false) },
|
|
|
|
|
{ SCENE_GANONDORF_BOSS, RESTRICTION_FLAGS(0, false, false, false, true, false, true, 1, 1, true, false, false) },
|
|
|
|
|
{ SCENE_ICE_CAVERN, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 3, false, false, false) },
|
|
|
|
|
{ SCENE_WINDMILL_AND_DAMPES_GRAVE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_OFF, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_OFF, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 3, 0, true, true, false) },
|
|
|
|
|
{ SCENE_INSIDE_GANONS_CASTLE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_OFF, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_GANON_BOSS,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_OFF,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, false, 3, 0, true, false, false) },
|
|
|
|
|
{ SCENE_GANON_BOSS, RESTRICTION_FLAGS(0, false, false, false, true, false, true, 1, 1, true, false, false) },
|
|
|
|
|
{ SCENE_GANONS_TOWER_COLLAPSE_INTERIOR,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, true, 1, 1, true, false, false) },
|
|
|
|
|
{ SCENE_INSIDE_GANONS_CASTLE_COLLAPSE,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_OFF, RESTR_WARP_SONGS_ON_1, RESTR_SUNS_SONG_1,
|
|
|
|
|
RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_THIEVES_HIDEOUT,
|
|
|
|
|
RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON, RESTR_TRADE_ITEMS_ON,
|
|
|
|
|
RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON, RESTR_SUNS_SONG_0, RESTR_FARORES_OFF,
|
|
|
|
|
RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
{ SCENE_GROTTOS, RESTRICTION_FLAGS(RESTR_HGAUGE_0, RESTR_B_BTN_0, RESTR_A_BTN_0, RESTR_BOTTLES_ON,
|
|
|
|
|
RESTR_TRADE_ITEMS_ON, RESTR_HOOKSHOT_ON, RESTR_OCARINA_ON, RESTR_WARP_SONGS_ON,
|
|
|
|
|
RESTR_SUNS_SONG_3, RESTR_FARORES_OFF, RESTR_DINS_NAYRUS_ON, RESTR_ALL_ON) },
|
|
|
|
|
RESTRICTION_FLAGS(0, false, false, false, false, false, true, 1, 1, true, false, false) },
|
|
|
|
|
{ SCENE_THIEVES_HIDEOUT, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 0, true, false, false) },
|
|
|
|
|
{ SCENE_GROTTOS, RESTRICTION_FLAGS(0, false, false, false, false, false, false, 0, 3, true, false, false) },
|
|
|
|
|
{ 0xFF, 0, 0, 0 },
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
@ -1171,7 +929,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
|
|
|
|
|
Interface_ChangeHudVisibilityMode(HUD_VISIBILITY_ALL);
|
|
|
|
|
} else {
|
|
|
|
|
if (interfaceCtx->restrictions.bButton == RESTR_B_BTN_0) {
|
|
|
|
|
if (!interfaceCtx->restrictions.bButton) {
|
|
|
|
|
if ((gSaveContext.save.info.equips.buttonItems[0] == ITEM_SLINGSHOT) ||
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[0] == ITEM_BOW) ||
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[0] == ITEM_BOMBCHU) ||
|
|
|
|
@ -1195,7 +953,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
gSaveContext.save.info.equips.buttonItems[0] = gSaveContext.buttonStatus[0] & 0xFF;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else if (interfaceCtx->restrictions.bButton == RESTR_B_BTN_1) {
|
|
|
|
|
} else if (interfaceCtx->restrictions.bButton == true) {
|
|
|
|
|
if ((gSaveContext.save.info.equips.buttonItems[0] == ITEM_SLINGSHOT) ||
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[0] == ITEM_BOW) ||
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[0] == ITEM_BOMBCHU) ||
|
|
|
|
@ -1218,7 +976,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (interfaceCtx->restrictions.bottles != RESTR_BOTTLES_ON) {
|
|
|
|
|
if (interfaceCtx->restrictions.bottles) {
|
|
|
|
|
for (i = 1; i < 4; i++) {
|
|
|
|
|
if ((gSaveContext.save.info.equips.buttonItems[i] >= ITEM_BOTTLE_EMPTY) &&
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[i] <= ITEM_BOTTLE_POE)) {
|
|
|
|
@ -1229,7 +987,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
gSaveContext.buttonStatus[i] = BTN_DISABLED;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else if (interfaceCtx->restrictions.bottles == RESTR_BOTTLES_ON) {
|
|
|
|
|
} else if (!interfaceCtx->restrictions.bottles) {
|
|
|
|
|
for (i = 1; i < 4; i++) {
|
|
|
|
|
if ((gSaveContext.save.info.equips.buttonItems[i] >= ITEM_BOTTLE_EMPTY) &&
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[i] <= ITEM_BOTTLE_POE)) {
|
|
|
|
@ -1242,7 +1000,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (interfaceCtx->restrictions.tradeItems != RESTR_TRADE_ITEMS_ON) {
|
|
|
|
|
if (interfaceCtx->restrictions.tradeItems) {
|
|
|
|
|
for (i = 1; i < 4; i++) {
|
|
|
|
|
if ((gSaveContext.save.info.equips.buttonItems[i] >= ITEM_WEIRD_EGG) &&
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[i] <= ITEM_CLAIM_CHECK)) {
|
|
|
|
@ -1253,7 +1011,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
gSaveContext.buttonStatus[i] = BTN_DISABLED;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else if (interfaceCtx->restrictions.tradeItems == RESTR_TRADE_ITEMS_ON) {
|
|
|
|
|
} else if (!interfaceCtx->restrictions.tradeItems) {
|
|
|
|
|
for (i = 1; i < 4; i++) {
|
|
|
|
|
if ((gSaveContext.save.info.equips.buttonItems[i] >= ITEM_WEIRD_EGG) &&
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[i] <= ITEM_CLAIM_CHECK)) {
|
|
|
|
@ -1266,7 +1024,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (interfaceCtx->restrictions.hookshot != RESTR_HOOKSHOT_ON) {
|
|
|
|
|
if (interfaceCtx->restrictions.hookshot) {
|
|
|
|
|
for (i = 1; i < 4; i++) {
|
|
|
|
|
if ((gSaveContext.save.info.equips.buttonItems[i] == ITEM_HOOKSHOT) ||
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[i] == ITEM_LONGSHOT)) {
|
|
|
|
@ -1277,7 +1035,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
gSaveContext.buttonStatus[i] = BTN_DISABLED;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else if (interfaceCtx->restrictions.hookshot == RESTR_HOOKSHOT_ON) {
|
|
|
|
|
} else if (!interfaceCtx->restrictions.hookshot) {
|
|
|
|
|
for (i = 1; i < 4; i++) {
|
|
|
|
|
if ((gSaveContext.save.info.equips.buttonItems[i] == ITEM_HOOKSHOT) ||
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[i] == ITEM_LONGSHOT)) {
|
|
|
|
@ -1290,7 +1048,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (interfaceCtx->restrictions.ocarina != RESTR_OCARINA_ON) {
|
|
|
|
|
if (interfaceCtx->restrictions.ocarina) {
|
|
|
|
|
for (i = 1; i < 4; i++) {
|
|
|
|
|
if ((gSaveContext.save.info.equips.buttonItems[i] == ITEM_OCARINA_FAIRY) ||
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[i] == ITEM_OCARINA_OF_TIME)) {
|
|
|
|
@ -1301,7 +1059,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
gSaveContext.buttonStatus[i] = BTN_DISABLED;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else if (interfaceCtx->restrictions.ocarina == RESTR_OCARINA_ON) {
|
|
|
|
|
} else if (!interfaceCtx->restrictions.ocarina) {
|
|
|
|
|
for (i = 1; i < 4; i++) {
|
|
|
|
|
if ((gSaveContext.save.info.equips.buttonItems[i] == ITEM_OCARINA_FAIRY) ||
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[i] == ITEM_OCARINA_OF_TIME)) {
|
|
|
|
@ -1314,7 +1072,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (interfaceCtx->restrictions.farores != RESTR_FARORES_ON) {
|
|
|
|
|
if (interfaceCtx->restrictions.farores) {
|
|
|
|
|
for (i = 1; i < 4; i++) {
|
|
|
|
|
if (gSaveContext.save.info.equips.buttonItems[i] == ITEM_FARORES_WIND) {
|
|
|
|
|
if (gSaveContext.buttonStatus[i] == BTN_ENABLED) {
|
|
|
|
@ -1325,7 +1083,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
PRINTF("***(i=%d)*** ", i);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else if (interfaceCtx->restrictions.farores == RESTR_FARORES_ON) {
|
|
|
|
|
} else if (!interfaceCtx->restrictions.farores) {
|
|
|
|
|
for (i = 1; i < 4; i++) {
|
|
|
|
|
if (gSaveContext.save.info.equips.buttonItems[i] == ITEM_FARORES_WIND) {
|
|
|
|
|
if (gSaveContext.buttonStatus[i] == BTN_DISABLED) {
|
|
|
|
@ -1337,7 +1095,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (interfaceCtx->restrictions.dinsNayrus != RESTR_DINS_NAYRUS_ON) {
|
|
|
|
|
if (interfaceCtx->restrictions.dinsNayrus) {
|
|
|
|
|
for (i = 1; i < 4; i++) {
|
|
|
|
|
if ((gSaveContext.save.info.equips.buttonItems[i] == ITEM_DINS_FIRE) ||
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[i] == ITEM_NAYRUS_LOVE)) {
|
|
|
|
@ -1348,7 +1106,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
gSaveContext.buttonStatus[i] = BTN_DISABLED;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else if (interfaceCtx->restrictions.dinsNayrus == RESTR_DINS_NAYRUS_ON) {
|
|
|
|
|
} else if (!interfaceCtx->restrictions.dinsNayrus) {
|
|
|
|
|
for (i = 1; i < 4; i++) {
|
|
|
|
|
if ((gSaveContext.save.info.equips.buttonItems[i] == ITEM_DINS_FIRE) ||
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[i] == ITEM_NAYRUS_LOVE)) {
|
|
|
|
@ -1361,7 +1119,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (interfaceCtx->restrictions.all != RESTR_ALL_ON) {
|
|
|
|
|
if (interfaceCtx->restrictions.all) {
|
|
|
|
|
for (i = 1; i < 4; i++) {
|
|
|
|
|
if ((gSaveContext.save.info.equips.buttonItems[i] != ITEM_OCARINA_FAIRY) &&
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[i] != ITEM_OCARINA_OF_TIME) &&
|
|
|
|
@ -1385,7 +1143,7 @@ void func_80083108(PlayState* play) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
} else if (interfaceCtx->restrictions.all == RESTR_ALL_ON) {
|
|
|
|
|
} else if (!interfaceCtx->restrictions.all) {
|
|
|
|
|
for (i = 1; i < 4; i++) {
|
|
|
|
|
if ((gSaveContext.save.info.equips.buttonItems[i] != ITEM_DINS_FIRE) &&
|
|
|
|
|
(gSaveContext.save.info.equips.buttonItems[i] != ITEM_HOOKSHOT) &&
|
|
|
|
@ -1429,18 +1187,18 @@ void Interface_SetSceneRestrictions(PlayState* play) {
|
|
|
|
|
s32 pad2;
|
|
|
|
|
s32 pad3;
|
|
|
|
|
|
|
|
|
|
interfaceCtx->restrictions.all = RESTR_ALL_ON;
|
|
|
|
|
interfaceCtx->restrictions.dinsNayrus = RESTR_DINS_NAYRUS_ON;
|
|
|
|
|
interfaceCtx->restrictions.farores = RESTR_FARORES_ON;
|
|
|
|
|
interfaceCtx->restrictions.sunsSong = RESTR_SUNS_SONG_0;
|
|
|
|
|
interfaceCtx->restrictions.warpSongs = RESTR_WARP_SONGS_ON;
|
|
|
|
|
interfaceCtx->restrictions.ocarina = RESTR_OCARINA_ON;
|
|
|
|
|
interfaceCtx->restrictions.hookshot = RESTR_HOOKSHOT_ON;
|
|
|
|
|
interfaceCtx->restrictions.tradeItems = RESTR_TRADE_ITEMS_ON;
|
|
|
|
|
interfaceCtx->restrictions.bottles = RESTR_BOTTLES_ON;
|
|
|
|
|
interfaceCtx->restrictions.aButton = RESTR_A_BTN_0;
|
|
|
|
|
interfaceCtx->restrictions.bButton = RESTR_B_BTN_0;
|
|
|
|
|
interfaceCtx->restrictions.hGauge = RESTR_HGAUGE_0;
|
|
|
|
|
interfaceCtx->restrictions.all = false;
|
|
|
|
|
interfaceCtx->restrictions.dinsNayrus = false;
|
|
|
|
|
interfaceCtx->restrictions.farores = false;
|
|
|
|
|
interfaceCtx->restrictions.sunsSong = 0;
|
|
|
|
|
interfaceCtx->restrictions.warpSongs = 0;
|
|
|
|
|
interfaceCtx->restrictions.ocarina = false;
|
|
|
|
|
interfaceCtx->restrictions.hookshot = false;
|
|
|
|
|
interfaceCtx->restrictions.tradeItems = false;
|
|
|
|
|
interfaceCtx->restrictions.bottles = false;
|
|
|
|
|
interfaceCtx->restrictions.aButton = false;
|
|
|
|
|
interfaceCtx->restrictions.bButton = false;
|
|
|
|
|
interfaceCtx->restrictions.hGauge = 0;
|
|
|
|
|
|
|
|
|
|
PRINTF(
|
|
|
|
|
T("ボタン表示関係データ設定 scene_data_ID=%d\n", "Data settings related to button display scene_data_ID=%d\n"),
|
|
|
|
@ -4709,8 +4467,7 @@ void Interface_Update(PlayState* play) {
|
|
|
|
|
gTimeSpeed = sPrevTimeSpeed;
|
|
|
|
|
play->msgCtx.ocarinaMode = OCARINA_MODE_04;
|
|
|
|
|
}
|
|
|
|
|
} else if ((play->roomCtx.curRoom.type != ROOM_TYPE_DUNGEON) &&
|
|
|
|
|
(interfaceCtx->restrictions.sunsSong != RESTR_SUNS_SONG_3)) {
|
|
|
|
|
} else if ((play->roomCtx.curRoom.type != ROOM_TYPE_DUNGEON) && (interfaceCtx->restrictions.sunsSong != 3)) {
|
|
|
|
|
if ((gSaveContext.save.dayTime >= CLOCK_TIME(6, 30)) &&
|
|
|
|
|
(gSaveContext.save.dayTime < CLOCK_TIME(18, 0) + 1)) {
|
|
|
|
|
gSaveContext.nextDayTime = NEXT_TIME_NIGHT;
|
|
|
|
|