summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorballoondude2 <55861555+balloondude2@users.noreply.github.com>2025-05-18 15:06:47 -0600
committerGitHub <noreply@github.com>2025-05-18 16:06:47 -0500
commitc01e3f42d9a813bfb70f586a538a2f24ca5b9e07 (patch)
tree22a2a2887317e00310749a198785f81e5cd6ce4e
parent089f845144da87a33fea21d6ba364d42de5fda60 (diff)
[Rando] Shuffle Grass v2 (#1155)
* Initial Commit for Grasssanity * Migrate to Whole Numbers for consistency and fix Linux/macOS crash. * baguette * Implemented Romani Ranch grass checks. * Some Grottos, ABC Enums * Randomize poisoned + cleared swamp grass. * Added more Termina Field Grottos * Fix peahat grass location * Address Grottos sharing Coors * Snowhead region (wip) * Trimmed out regrowing grass and reenumerated. * Add Snowhead Region * Add Lone Peak Shrine * Add Ikana Region * Finish Ikana grottos * Revert ActorViewer * re-add line end * Add missing grass from Smiffics Strim * Thrown Grass actors now drop their appropriate RC's * remove comment * Revert ActorViewer * ugh * Add missing Grass... again * Logic cleanup * Update using Archez suggestions * Fixing grass... finally * Initial Commit for Grasssanity * Migrate to Whole Numbers for consistency and fix Linux/macOS crash. * baguette * Implemented Romani Ranch grass checks. * Some Grottos, ABC Enums * Randomize poisoned + cleared swamp grass. * Trimmed out regrowing grass and reenumerated. * Added more Termina Field Grottos * Fix peahat grass location * Address Grottos sharing Coors * Snowhead region (wip) * Add Snowhead Region * Add Lone Peak Shrine * Add Ikana Region * Finish Ikana grottos * Revert ActorViewer * re-add line end * Add missing grass from Smiffics Strim * Thrown Grass actors now drop their appropriate RC's * remove comment * Revert ActorViewer * ugh * Add missing Grass... again * Logic cleanup * Update using Archez suggestions * Fixing grass... finally * Dev Rebase * Use Entrance Builder where applicable. * Clang * remove unneeded Ternary, thanks Archez * split regions and build * prevent rando drops when not shuffled * clang format * fix include --------- Co-authored-by: Caladius <Caladius@users.noreply.github.com> Co-authored-by: sitton76 <58642183+sitton76@users.noreply.github.com> Co-authored-by: Caladius <clatini88@gmail.com>
-rw-r--r--mm/2s2h/GameInteractor/GameInteractor.h1
-rw-r--r--mm/2s2h/Rando/ActorBehavior/ActorBehavior.cpp1
-rw-r--r--mm/2s2h/Rando/ActorBehavior/ActorBehavior.h1
-rw-r--r--mm/2s2h/Rando/ActorBehavior/ObjGrass.cpp1068
-rw-r--r--mm/2s2h/Rando/CheckTracker/CheckTracker.cpp2
-rw-r--r--mm/2s2h/Rando/Logic/Regions/Central.cpp168
-rw-r--r--mm/2s2h/Rando/Logic/Regions/East.cpp53
-rw-r--r--mm/2s2h/Rando/Logic/Regions/MilkRoad.cpp186
-rw-r--r--mm/2s2h/Rando/Logic/Regions/North.cpp110
-rw-r--r--mm/2s2h/Rando/Logic/Regions/South.cpp257
-rw-r--r--mm/2s2h/Rando/Logic/Regions/TerminaField.cpp519
-rw-r--r--mm/2s2h/Rando/Logic/Regions/West.cpp105
-rw-r--r--mm/2s2h/Rando/Menu.cpp1
-rw-r--r--mm/2s2h/Rando/MiscBehavior/OnFileCreate.cpp5
-rw-r--r--mm/2s2h/Rando/StaticData/Checks.cpp852
-rw-r--r--mm/2s2h/Rando/StaticData/Options.cpp1
-rw-r--r--mm/2s2h/Rando/Types.h853
-rw-r--r--mm/2s2h/ShipUtils.cpp4
-rw-r--r--mm/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c7
-rw-r--r--mm/src/overlays/actors/ovl_Obj_Grass/z_obj_grass.c7
-rw-r--r--mm/src/overlays/actors/ovl_Obj_Grass_Carry/z_obj_grass_carry.c5
21 files changed, 3940 insertions, 266 deletions
diff --git a/mm/2s2h/GameInteractor/GameInteractor.h b/mm/2s2h/GameInteractor/GameInteractor.h
index 01e5ca4f7..bcc84f4bc 100644
--- a/mm/2s2h/GameInteractor/GameInteractor.h
+++ b/mm/2s2h/GameInteractor/GameInteractor.h
@@ -219,6 +219,7 @@ typedef enum {
VB_GIBDO_TRADE_SEQUENCE_TAKE_MORE_THAN_ONE_ITEM,
VB_GIBDO_TRADE_SEQUENCE_DO_TRADE,
VB_GET_ITEM_ACTION_FROM_MASK,
+ VB_GRASS_DROP_COLLECTIBLE,
VB_GRANT_MAGIC_UPON_REQUEST,
VB_SCOPENUTS_CONSIDER_FIRST_CYCLE,
VB_JS_OVERRIDE_MASK_CHECK,
diff --git a/mm/2s2h/Rando/ActorBehavior/ActorBehavior.cpp b/mm/2s2h/Rando/ActorBehavior/ActorBehavior.cpp
index 03145c5ef..3797f6f22 100644
--- a/mm/2s2h/Rando/ActorBehavior/ActorBehavior.cpp
+++ b/mm/2s2h/Rando/ActorBehavior/ActorBehavior.cpp
@@ -132,6 +132,7 @@ void Rando::ActorBehavior::OnFileLoad() {
Rando::ActorBehavior::InitItemBHeartBehavior();
Rando::ActorBehavior::InitItemGetBehavior();
Rando::ActorBehavior::InitObjKibakoBehavior();
+ Rando::ActorBehavior::InitObjGrassBehavior();
Rando::ActorBehavior::InitObjMoonStoneBehavior();
Rando::ActorBehavior::InitObjSnowballBehavior();
Rando::ActorBehavior::InitObjTaruBehavior();
diff --git a/mm/2s2h/Rando/ActorBehavior/ActorBehavior.h b/mm/2s2h/Rando/ActorBehavior/ActorBehavior.h
index d38dec113..59683149e 100644
--- a/mm/2s2h/Rando/ActorBehavior/ActorBehavior.h
+++ b/mm/2s2h/Rando/ActorBehavior/ActorBehavior.h
@@ -88,6 +88,7 @@ void InitEnZowBehavior();
void InitItemBHeartBehavior();
void InitItemGetBehavior();
void InitObjKibakoBehavior();
+void InitObjGrassBehavior();
void InitObjMoonStoneBehavior();
void InitObjSnowballBehavior();
void InitObjTaruBehavior();
diff --git a/mm/2s2h/Rando/ActorBehavior/ObjGrass.cpp b/mm/2s2h/Rando/ActorBehavior/ObjGrass.cpp
new file mode 100644
index 000000000..613754d1a
--- /dev/null
+++ b/mm/2s2h/Rando/ActorBehavior/ObjGrass.cpp
@@ -0,0 +1,1068 @@
+#include "ActorBehavior.h"
+#include "public/bridge/consolevariablebridge.h"
+
+#include "2s2h/CustomItem/CustomItem.h"
+#include "2s2h/Rando/Rando.h"
+#include "2s2h/ShipInit.hpp"
+#include "assets/2s2h_assets.h"
+
+extern "C" {
+#include "variables.h"
+#include "overlays/actors/ovl_Obj_Grass/z_obj_grass.h"
+#include "overlays/actors/ovl_En_Kusa/z_en_kusa.h"
+#include "overlays/actors/ovl_Obj_Grass_Carry/z_obj_grass_carry.h"
+
+void ObjGrass_Draw(Actor* actor, PlayState* play);
+}
+
+// clang-format off
+std::map<int16_t, std::map<std::pair<float, float>, RandoCheckId>> overworldGrassMap = {
+ // Termina Field //
+ { SCENE_00KEIKOKU,
+ {
+ { { -3932.00f, 2092.00f }, RC_TERMINA_FIELD_GRASS_01 },
+ { { -3954.00f, 2122.00f }, RC_TERMINA_FIELD_GRASS_02 },
+ { { -3996.00f, 2118.00f }, RC_TERMINA_FIELD_GRASS_03 },
+ { { -4012.00f, 2080.00f }, RC_TERMINA_FIELD_GRASS_04 },
+ { { -3972.00f, 2066.00f }, RC_TERMINA_FIELD_GRASS_05 },
+ { { -3901.00f, 2122.00f }, RC_TERMINA_FIELD_GRASS_06 },
+ { { -3972.00f, 2166.00f }, RC_TERMINA_FIELD_GRASS_07 },
+ { { -4043.00f, 2122.00f }, RC_TERMINA_FIELD_GRASS_08 },
+ { { -4043.00f, 2050.00f }, RC_TERMINA_FIELD_GRASS_09 },
+ { { -4008.00f, 2015.00f }, RC_TERMINA_FIELD_GRASS_10 },
+ { { -3960.00f, 2007.00f }, RC_TERMINA_FIELD_GRASS_11 },
+ { { -3930.00f, 2044.00f }, RC_TERMINA_FIELD_GRASS_12 },
+ { { -3036.00f, 2613.00f }, RC_TERMINA_FIELD_GRASS_13 },
+ { { -3058.00f, 2643.00f }, RC_TERMINA_FIELD_GRASS_14 },
+ { { -3100.00f, 2639.00f }, RC_TERMINA_FIELD_GRASS_15 },
+ { { -3116.00f, 2601.00f }, RC_TERMINA_FIELD_GRASS_16 },
+ { { -3076.00f, 2587.00f }, RC_TERMINA_FIELD_GRASS_17 },
+ { { -3005.00f, 2643.00f }, RC_TERMINA_FIELD_GRASS_18 },
+ { { -3076.00f, 2687.00f }, RC_TERMINA_FIELD_GRASS_19 },
+ { { -3147.00f, 2643.00f }, RC_TERMINA_FIELD_GRASS_20 },
+ { { -3147.00f, 2571.00f }, RC_TERMINA_FIELD_GRASS_21 },
+ { { -3112.00f, 2536.00f }, RC_TERMINA_FIELD_GRASS_22 },
+ { { -3064.00f, 2528.00f }, RC_TERMINA_FIELD_GRASS_23 },
+ { { -3034.00f, 2565.00f }, RC_TERMINA_FIELD_GRASS_24 },
+ { { -2852.00f, 1585.00f }, RC_TERMINA_FIELD_GRASS_25 },
+ { { -2874.00f, 1615.00f }, RC_TERMINA_FIELD_GRASS_26 },
+ { { -2916.00f, 1611.00f }, RC_TERMINA_FIELD_GRASS_27 },
+ { { -2932.00f, 1573.00f }, RC_TERMINA_FIELD_GRASS_28 },
+ { { -2892.00f, 1559.00f }, RC_TERMINA_FIELD_GRASS_29 },
+ { { -2821.00f, 1615.00f }, RC_TERMINA_FIELD_GRASS_30 },
+ { { -2892.00f, 1659.00f }, RC_TERMINA_FIELD_GRASS_31 },
+ { { -2963.00f, 1615.00f }, RC_TERMINA_FIELD_GRASS_32 },
+ { { -2963.00f, 1543.00f }, RC_TERMINA_FIELD_GRASS_33 },
+ { { -2928.00f, 1508.00f }, RC_TERMINA_FIELD_GRASS_34 },
+ { { -2880.00f, 1500.00f }, RC_TERMINA_FIELD_GRASS_35 },
+ { { -2850.00f, 1537.00f }, RC_TERMINA_FIELD_GRASS_36 },
+ { { -2676.00f, -1137.00f }, RC_TERMINA_FIELD_GRASS_37 },
+ { { -2698.00f, -1107.00f }, RC_TERMINA_FIELD_GRASS_38 },
+ { { -2740.00f, -1111.00f }, RC_TERMINA_FIELD_GRASS_39 },
+ { { -2756.00f, -1149.00f }, RC_TERMINA_FIELD_GRASS_40 },
+ { { -2716.00f, -1163.00f }, RC_TERMINA_FIELD_GRASS_41 },
+ { { -2645.00f, -1107.00f }, RC_TERMINA_FIELD_GRASS_42 },
+ { { -2716.00f, -1063.00f }, RC_TERMINA_FIELD_GRASS_43 },
+ { { -2787.00f, -1107.00f }, RC_TERMINA_FIELD_GRASS_44 },
+ { { -2787.00f, -1179.00f }, RC_TERMINA_FIELD_GRASS_45 },
+ { { -2752.00f, -1214.00f }, RC_TERMINA_FIELD_GRASS_46 },
+ { { -2704.00f, -1222.00f }, RC_TERMINA_FIELD_GRASS_47 },
+ { { -2674.00f, -1185.00f }, RC_TERMINA_FIELD_GRASS_48 },
+ { { -2645.00f, 4303.00f }, RC_TERMINA_FIELD_GRASS_49 },
+ { { -2667.00f, 4333.00f }, RC_TERMINA_FIELD_GRASS_50 },
+ { { -2709.00f, 4329.00f }, RC_TERMINA_FIELD_GRASS_51 },
+ { { -2725.00f, 4291.00f }, RC_TERMINA_FIELD_GRASS_52 },
+ { { -2685.00f, 4277.00f }, RC_TERMINA_FIELD_GRASS_53 },
+ { { -2614.00f, 4333.00f }, RC_TERMINA_FIELD_GRASS_54 },
+ { { -2685.00f, 4377.00f }, RC_TERMINA_FIELD_GRASS_55 },
+ { { -2756.00f, 4333.00f }, RC_TERMINA_FIELD_GRASS_56 },
+ { { -2756.00f, 4261.00f }, RC_TERMINA_FIELD_GRASS_57 },
+ { { -2721.00f, 4226.00f }, RC_TERMINA_FIELD_GRASS_58 },
+ { { -2673.00f, 4218.00f }, RC_TERMINA_FIELD_GRASS_59 },
+ { { -2643.00f, 4255.00f }, RC_TERMINA_FIELD_GRASS_60 },
+ { { -1418.00f, -2600.00f }, RC_TERMINA_FIELD_GRASS_61 },
+ { { -1440.00f, -2570.00f }, RC_TERMINA_FIELD_GRASS_62 },
+ { { -1482.00f, -2574.00f }, RC_TERMINA_FIELD_GRASS_63 },
+ { { -1498.00f, -2612.00f }, RC_TERMINA_FIELD_GRASS_64 },
+ { { -1458.00f, -2626.00f }, RC_TERMINA_FIELD_GRASS_65 },
+ { { -1387.00f, -2570.00f }, RC_TERMINA_FIELD_GRASS_66 },
+ { { -1458.00f, -2526.00f }, RC_TERMINA_FIELD_GRASS_67 },
+ { { -1529.00f, -2570.00f }, RC_TERMINA_FIELD_GRASS_68 },
+ { { -1529.00f, -2642.00f }, RC_TERMINA_FIELD_GRASS_69 },
+ { { -1494.00f, -2677.00f }, RC_TERMINA_FIELD_GRASS_70 },
+ { { -1446.00f, -2685.00f }, RC_TERMINA_FIELD_GRASS_71 },
+ { { -1416.00f, -2648.00f }, RC_TERMINA_FIELD_GRASS_72 },
+ { { -1383.00f, 3960.00f }, RC_TERMINA_FIELD_GRASS_73 },
+ { { -1405.00f, 3990.00f }, RC_TERMINA_FIELD_GRASS_74 },
+ { { -1447.00f, 3986.00f }, RC_TERMINA_FIELD_GRASS_75 },
+ { { -1463.00f, 3948.00f }, RC_TERMINA_FIELD_GRASS_76 },
+ { { -1423.00f, 3934.00f }, RC_TERMINA_FIELD_GRASS_77 },
+ { { -1352.00f, 3990.00f }, RC_TERMINA_FIELD_GRASS_78 },
+ { { -1423.00f, 4034.00f }, RC_TERMINA_FIELD_GRASS_79 },
+ { { -1494.00f, 3990.00f }, RC_TERMINA_FIELD_GRASS_80 },
+ { { -1494.00f, 3918.00f }, RC_TERMINA_FIELD_GRASS_81 },
+ { { -1459.00f, 3883.00f }, RC_TERMINA_FIELD_GRASS_82 },
+ { { -1411.00f, 3875.00f }, RC_TERMINA_FIELD_GRASS_83 },
+ { { -1381.00f, 3912.00f }, RC_TERMINA_FIELD_GRASS_84 },
+ { { -271.00f, 3243.00f }, RC_TERMINA_FIELD_GRASS_85 },
+ { { -293.00f, 3273.00f }, RC_TERMINA_FIELD_GRASS_86 },
+ { { -335.00f, 3269.00f }, RC_TERMINA_FIELD_GRASS_87 },
+ { { -351.00f, 3231.00f }, RC_TERMINA_FIELD_GRASS_88 },
+ { { -311.00f, 3217.00f }, RC_TERMINA_FIELD_GRASS_89 },
+ { { -240.00f, 3273.00f }, RC_TERMINA_FIELD_GRASS_90 },
+ { { -311.00f, 3317.00f }, RC_TERMINA_FIELD_GRASS_91 },
+ { { -382.00f, 3273.00f }, RC_TERMINA_FIELD_GRASS_92 },
+ { { -382.00f, 3201.00f }, RC_TERMINA_FIELD_GRASS_93 },
+ { { -347.00f, 3166.00f }, RC_TERMINA_FIELD_GRASS_94 },
+ { { -299.00f, 3158.00f }, RC_TERMINA_FIELD_GRASS_95 },
+ { { -269.00f, 3195.00f }, RC_TERMINA_FIELD_GRASS_96 },
+ { { 954.00f, -2549.00f }, RC_TERMINA_FIELD_GRASS_97 },
+ { { 932.00f, -2519.00f }, RC_TERMINA_FIELD_GRASS_98 },
+ { { 890.00f, -2523.00f }, RC_TERMINA_FIELD_GRASS_99 },
+ { { 874.00f, -2561.00f }, RC_TERMINA_FIELD_GRASS_100 },
+ { { 914.00f, -2575.00f }, RC_TERMINA_FIELD_GRASS_101 },
+ { { 985.00f, -2519.00f }, RC_TERMINA_FIELD_GRASS_102 },
+ { { 914.00f, -2475.00f }, RC_TERMINA_FIELD_GRASS_103 },
+ { { 843.00f, -2519.00f }, RC_TERMINA_FIELD_GRASS_104 },
+ { { 843.00f, -2591.00f }, RC_TERMINA_FIELD_GRASS_105 },
+ { { 878.00f, -2626.00f }, RC_TERMINA_FIELD_GRASS_106 },
+ { { 926.00f, -2634.00f }, RC_TERMINA_FIELD_GRASS_107 },
+ { { 956.00f, -2597.00f }, RC_TERMINA_FIELD_GRASS_108 },
+ { { 1286.00f, 3183.00f }, RC_TERMINA_FIELD_GRASS_109 },
+ { { 1264.00f, 3213.00f }, RC_TERMINA_FIELD_GRASS_110 },
+ { { 1222.00f, 3209.00f }, RC_TERMINA_FIELD_GRASS_111 },
+ { { 1206.00f, 3171.00f }, RC_TERMINA_FIELD_GRASS_112 },
+ { { 1246.00f, 3157.00f }, RC_TERMINA_FIELD_GRASS_113 },
+ { { 1317.00f, 3213.00f }, RC_TERMINA_FIELD_GRASS_114 },
+ { { 1246.00f, 3257.00f }, RC_TERMINA_FIELD_GRASS_115 },
+ { { 1175.00f, 3213.00f }, RC_TERMINA_FIELD_GRASS_116 },
+ { { 1175.00f, 3141.00f }, RC_TERMINA_FIELD_GRASS_117 },
+ { { 1210.00f, 3106.00f }, RC_TERMINA_FIELD_GRASS_118 },
+ { { 1258.00f, 3098.00f }, RC_TERMINA_FIELD_GRASS_119 },
+ { { 1288.00f, 3135.00f }, RC_TERMINA_FIELD_GRASS_120 },
+ { { 1554.00f, 2053.00f }, RC_TERMINA_FIELD_GRASS_121 },
+ { { 1532.00f, 2083.00f }, RC_TERMINA_FIELD_GRASS_122 },
+ { { 1490.00f, 2079.00f }, RC_TERMINA_FIELD_GRASS_123 },
+ { { 1474.00f, 2041.00f }, RC_TERMINA_FIELD_GRASS_124 },
+ { { 1514.00f, 2027.00f }, RC_TERMINA_FIELD_GRASS_125 },
+ { { 1585.00f, 2083.00f }, RC_TERMINA_FIELD_GRASS_126 },
+ { { 1514.00f, 2127.00f }, RC_TERMINA_FIELD_GRASS_127 },
+ { { 1443.00f, 2083.00f }, RC_TERMINA_FIELD_GRASS_128 },
+ { { 1443.00f, 2011.00f }, RC_TERMINA_FIELD_GRASS_129 },
+ { { 1478.00f, 1976.00f }, RC_TERMINA_FIELD_GRASS_130 },
+ { { 1526.00f, 1968.00f }, RC_TERMINA_FIELD_GRASS_131 },
+ { { 1556.00f, 2005.00f }, RC_TERMINA_FIELD_GRASS_132 },
+ { { 1770.00f, 2736.00f }, RC_TERMINA_FIELD_GRASS_133 },
+ { { 1748.00f, 2766.00f }, RC_TERMINA_FIELD_GRASS_134 },
+ { { 1706.00f, 2762.00f }, RC_TERMINA_FIELD_GRASS_135 },
+ { { 1690.00f, 2724.00f }, RC_TERMINA_FIELD_GRASS_136 },
+ { { 1730.00f, 2710.00f }, RC_TERMINA_FIELD_GRASS_137 },
+ { { 1801.00f, 2766.00f }, RC_TERMINA_FIELD_GRASS_138 },
+ { { 1730.00f, 2810.00f }, RC_TERMINA_FIELD_GRASS_139 },
+ { { 1659.00f, 2766.00f }, RC_TERMINA_FIELD_GRASS_140 },
+ { { 1659.00f, 2694.00f }, RC_TERMINA_FIELD_GRASS_141 },
+ { { 1694.00f, 2659.00f }, RC_TERMINA_FIELD_GRASS_142 },
+ { { 1742.00f, 2651.00f }, RC_TERMINA_FIELD_GRASS_143 },
+ { { 1772.00f, 2688.00f }, RC_TERMINA_FIELD_GRASS_144 },
+ { { 2007.00f, -1295.00f }, RC_TERMINA_FIELD_GRASS_145 },
+ { { 1985.00f, -1265.00f }, RC_TERMINA_FIELD_GRASS_146 },
+ { { 1943.00f, -1269.00f }, RC_TERMINA_FIELD_GRASS_147 },
+ { { 1927.00f, -1307.00f }, RC_TERMINA_FIELD_GRASS_148 },
+ { { 1967.00f, -1321.00f }, RC_TERMINA_FIELD_GRASS_149 },
+ { { 2038.00f, -1265.00f }, RC_TERMINA_FIELD_GRASS_150 },
+ { { 1967.00f, -1221.00f }, RC_TERMINA_FIELD_GRASS_151 },
+ { { 1896.00f, -1265.00f }, RC_TERMINA_FIELD_GRASS_152 },
+ { { 1896.00f, -1337.00f }, RC_TERMINA_FIELD_GRASS_153 },
+ { { 1931.00f, -1372.00f }, RC_TERMINA_FIELD_GRASS_154 },
+ { { 1979.00f, -1380.00f }, RC_TERMINA_FIELD_GRASS_155 },
+ { { 2009.00f, -1343.00f }, RC_TERMINA_FIELD_GRASS_156 },
+ { { 2637.00f, 565.00f }, RC_TERMINA_FIELD_GRASS_157 },
+ { { 2615.00f, 595.00f }, RC_TERMINA_FIELD_GRASS_158 },
+ { { 2573.00f, 591.00f }, RC_TERMINA_FIELD_GRASS_159 },
+ { { 2557.00f, 553.00f }, RC_TERMINA_FIELD_GRASS_160 },
+ { { 2597.00f, 539.00f }, RC_TERMINA_FIELD_GRASS_161 },
+ { { 2668.00f, 595.00f }, RC_TERMINA_FIELD_GRASS_162 },
+ { { 2597.00f, 639.00f }, RC_TERMINA_FIELD_GRASS_163 },
+ { { 2526.00f, 595.00f }, RC_TERMINA_FIELD_GRASS_164 },
+ { { 2526.00f, 523.00f }, RC_TERMINA_FIELD_GRASS_165 },
+ { { 2561.00f, 488.00f }, RC_TERMINA_FIELD_GRASS_166 },
+ { { 2609.00f, 480.00f }, RC_TERMINA_FIELD_GRASS_167 },
+ { { 2639.00f, 517.00f }, RC_TERMINA_FIELD_GRASS_168 },
+ { { 2718.00f, 2414.00f }, RC_TERMINA_FIELD_GRASS_169 },
+ { { 2696.00f, 2444.00f }, RC_TERMINA_FIELD_GRASS_170 },
+ { { 2654.00f, 2440.00f }, RC_TERMINA_FIELD_GRASS_171 },
+ { { 2638.00f, 2402.00f }, RC_TERMINA_FIELD_GRASS_172 },
+ { { 2678.00f, 2388.00f }, RC_TERMINA_FIELD_GRASS_173 },
+ { { 2749.00f, 2444.00f }, RC_TERMINA_FIELD_GRASS_174 },
+ { { 2678.00f, 2488.00f }, RC_TERMINA_FIELD_GRASS_175 },
+ { { 2607.00f, 2444.00f }, RC_TERMINA_FIELD_GRASS_176 },
+ { { 2607.00f, 2372.00f }, RC_TERMINA_FIELD_GRASS_177 },
+ { { 2642.00f, 2337.00f }, RC_TERMINA_FIELD_GRASS_178 },
+ { { 2690.00f, 2329.00f }, RC_TERMINA_FIELD_GRASS_179 },
+ { { 2720.00f, 2366.00f }, RC_TERMINA_FIELD_GRASS_180 },
+ { { 2933.00f, 1832.00f }, RC_TERMINA_FIELD_GRASS_181 },
+ { { 2911.00f, 1862.00f }, RC_TERMINA_FIELD_GRASS_182 },
+ { { 2869.00f, 1858.00f }, RC_TERMINA_FIELD_GRASS_183 },
+ { { 2853.00f, 1820.00f }, RC_TERMINA_FIELD_GRASS_184 },
+ { { 2893.00f, 1806.00f }, RC_TERMINA_FIELD_GRASS_185 },
+ { { 2964.00f, 1862.00f }, RC_TERMINA_FIELD_GRASS_186 },
+ { { 2893.00f, 1906.00f }, RC_TERMINA_FIELD_GRASS_187 },
+ { { 2822.00f, 1862.00f }, RC_TERMINA_FIELD_GRASS_188 },
+ { { 2822.00f, 1790.00f }, RC_TERMINA_FIELD_GRASS_189 },
+ { { 2857.00f, 1755.00f }, RC_TERMINA_FIELD_GRASS_190 },
+ { { 2905.00f, 1747.00f }, RC_TERMINA_FIELD_GRASS_191 },
+ { { 2935.00f, 1784.00f }, RC_TERMINA_FIELD_GRASS_192 },
+ { { 3847.00f, 742.00f }, RC_TERMINA_FIELD_GRASS_193 },
+ { { 3825.00f, 772.00f }, RC_TERMINA_FIELD_GRASS_194 },
+ { { 3783.00f, 768.00f }, RC_TERMINA_FIELD_GRASS_195 },
+ { { 3767.00f, 730.00f }, RC_TERMINA_FIELD_GRASS_196 },
+ { { 3807.00f, 716.00f }, RC_TERMINA_FIELD_GRASS_197 },
+ { { 3878.00f, 772.00f }, RC_TERMINA_FIELD_GRASS_198 },
+ { { 3807.00f, 816.00f }, RC_TERMINA_FIELD_GRASS_199 },
+ { { 3736.00f, 772.00f }, RC_TERMINA_FIELD_GRASS_200 },
+ { { 3736.00f, 700.00f }, RC_TERMINA_FIELD_GRASS_201 },
+ { { 3771.00f, 665.00f }, RC_TERMINA_FIELD_GRASS_202 },
+ { { 3819.00f, 657.00f }, RC_TERMINA_FIELD_GRASS_203 },
+ { { 3849.00f, 694.00f }, RC_TERMINA_FIELD_GRASS_204 },
+ { { 4455.00f, 418.00f }, RC_TERMINA_FIELD_GRASS_205 },
+ { { 4433.00f, 448.00f }, RC_TERMINA_FIELD_GRASS_206 },
+ { { 4391.00f, 444.00f }, RC_TERMINA_FIELD_GRASS_207 },
+ { { 4375.00f, 406.00f }, RC_TERMINA_FIELD_GRASS_208 },
+ { { 4415.00f, 392.00f }, RC_TERMINA_FIELD_GRASS_209 },
+ { { 4486.00f, 448.00f }, RC_TERMINA_FIELD_GRASS_210 },
+ { { 4415.00f, 492.00f }, RC_TERMINA_FIELD_GRASS_211 },
+ { { 4344.00f, 448.00f }, RC_TERMINA_FIELD_GRASS_212 },
+ { { 4344.00f, 376.00f }, RC_TERMINA_FIELD_GRASS_213 },
+ { { 4379.00f, 341.00f }, RC_TERMINA_FIELD_GRASS_214 },
+ { { 4427.00f, 333.00f }, RC_TERMINA_FIELD_GRASS_215 },
+ { { 4457.00f, 370.00f }, RC_TERMINA_FIELD_GRASS_216 },
+ } },
+ // Great Bay Coast
+ { SCENE_30GYOSON,
+ {
+ { { 863.00f, 4646.00f }, RC_GREAT_BAY_COAST_GRASS_01 },
+ { { 769.00f, 4647.00f }, RC_GREAT_BAY_COAST_GRASS_02 },
+ { { 885.00f, 4881.00f }, RC_GREAT_BAY_COAST_GRASS_03 },
+ { { 793.00f, 4880.00f }, RC_GREAT_BAY_COAST_GRASS_04 },
+ { { 782.00f, 4766.00f }, RC_GREAT_BAY_COAST_GRASS_05 },
+ } },
+ // Clock Town
+ { SCENE_ALLEY,
+ {
+ { { -1900.00f, 316.00f }, RC_CLOCK_TOWN_LAUNDRY_POOL_GRASS_01 },
+ { { -1921.00f, 228.00f }, RC_CLOCK_TOWN_LAUNDRY_POOL_GRASS_02 },
+ { { -1864.00f, 216.00f }, RC_CLOCK_TOWN_LAUNDRY_POOL_GRASS_03 },
+ } },
+ // Romani Ranch
+ { SCENE_F01,
+ {
+ { { -135.00f, 1834.00f }, RC_ROMANI_RANCH_GRASS_01 },
+ { { -157.00f, 1864.00f }, RC_ROMANI_RANCH_GRASS_02 },
+ { { -199.00f, 1860.00f }, RC_ROMANI_RANCH_GRASS_03 },
+ { { -215.00f, 1822.00f }, RC_ROMANI_RANCH_GRASS_04 },
+ { { -175.00f, 1808.00f }, RC_ROMANI_RANCH_GRASS_05 },
+ { { -104.00f, 1864.00f }, RC_ROMANI_RANCH_GRASS_06 },
+ { { -175.00f, 1908.00f }, RC_ROMANI_RANCH_GRASS_07 },
+ { { -246.00f, 1864.00f }, RC_ROMANI_RANCH_GRASS_08 },
+ { { -246.00f, 1792.00f }, RC_ROMANI_RANCH_GRASS_09 },
+ { { -211.00f, 1757.00f }, RC_ROMANI_RANCH_GRASS_10 },
+ { { -163.00f, 1749.00f }, RC_ROMANI_RANCH_GRASS_11 },
+ { { -133.00f, 1786.00f }, RC_ROMANI_RANCH_GRASS_12 },
+ { { -1529.00f, 1630.00f }, RC_ROMANI_RANCH_GRASS_13 },
+ { { -1551.00f, 1660.00f }, RC_ROMANI_RANCH_GRASS_14 },
+ { { -1593.00f, 1656.00f }, RC_ROMANI_RANCH_GRASS_15 },
+ { { -1609.00f, 1618.00f }, RC_ROMANI_RANCH_GRASS_16 },
+ { { -1569.00f, 1604.00f }, RC_ROMANI_RANCH_GRASS_17 },
+ { { -1498.00f, 1660.00f }, RC_ROMANI_RANCH_GRASS_18 },
+ { { -1569.00f, 1704.00f }, RC_ROMANI_RANCH_GRASS_19 },
+ { { -1640.00f, 1660.00f }, RC_ROMANI_RANCH_GRASS_20 },
+ { { -1640.00f, 1588.00f }, RC_ROMANI_RANCH_GRASS_21 },
+ { { -1605.00f, 1553.00f }, RC_ROMANI_RANCH_GRASS_22 },
+ { { -1557.00f, 1545.00f }, RC_ROMANI_RANCH_GRASS_23 },
+ { { -1527.00f, 1582.00f }, RC_ROMANI_RANCH_GRASS_24 },
+ { { 1874.00f, 1167.00f }, RC_ROMANI_RANCH_GRASS_25 },
+ { { 1852.00f, 1197.00f }, RC_ROMANI_RANCH_GRASS_26 },
+ { { 1810.00f, 1193.00f }, RC_ROMANI_RANCH_GRASS_27 },
+ { { 1794.00f, 1155.00f }, RC_ROMANI_RANCH_GRASS_28 },
+ { { 1834.00f, 1141.00f }, RC_ROMANI_RANCH_GRASS_29 },
+ { { 1905.00f, 1197.00f }, RC_ROMANI_RANCH_GRASS_30 },
+ { { 1834.00f, 1241.00f }, RC_ROMANI_RANCH_GRASS_31 },
+ { { 1763.00f, 1197.00f }, RC_ROMANI_RANCH_GRASS_32 },
+ { { 1763.00f, 1125.00f }, RC_ROMANI_RANCH_GRASS_33 },
+ { { 1798.00f, 1090.00f }, RC_ROMANI_RANCH_GRASS_34 },
+ { { 1846.00f, 1082.00f }, RC_ROMANI_RANCH_GRASS_35 },
+ { { 1876.00f, 1119.00f }, RC_ROMANI_RANCH_GRASS_36 },
+ { { 1203.00f, -1379.00f }, RC_ROMANI_RANCH_GRASS_37 },
+ { { 1181.00f, -1349.00f }, RC_ROMANI_RANCH_GRASS_38 },
+ { { 1139.00f, -1353.00f }, RC_ROMANI_RANCH_GRASS_39 },
+ { { 1123.00f, -1391.00f }, RC_ROMANI_RANCH_GRASS_40 },
+ { { 1163.00f, -1405.00f }, RC_ROMANI_RANCH_GRASS_41 },
+ { { 1234.00f, -1349.00f }, RC_ROMANI_RANCH_GRASS_42 },
+ { { 1163.00f, -1305.00f }, RC_ROMANI_RANCH_GRASS_43 },
+ { { 1092.00f, -1349.00f }, RC_ROMANI_RANCH_GRASS_44 },
+ { { 1092.00f, -1421.00f }, RC_ROMANI_RANCH_GRASS_45 },
+ { { 1127.00f, -1456.00f }, RC_ROMANI_RANCH_GRASS_46 },
+ { { 1175.00f, -1464.00f }, RC_ROMANI_RANCH_GRASS_47 },
+ { { 1205.00f, -1427.00f }, RC_ROMANI_RANCH_GRASS_48 },
+ { { -223.00f, -2271.00f }, RC_ROMANI_RANCH_GRASS_49 },
+ { { -143.00f, -2271.00f }, RC_ROMANI_RANCH_GRASS_50 },
+ { { -166.00f, -2214.00f }, RC_ROMANI_RANCH_GRASS_51 },
+ { { -223.00f, -2191.00f }, RC_ROMANI_RANCH_GRASS_52 },
+ { { -280.00f, -2214.00f }, RC_ROMANI_RANCH_GRASS_53 },
+ { { -303.00f, -2271.00f }, RC_ROMANI_RANCH_GRASS_54 },
+ { { -280.00f, -2328.00f }, RC_ROMANI_RANCH_GRASS_55 },
+ { { -223.00f, -2351.00f }, RC_ROMANI_RANCH_GRASS_56 },
+ { { -166.00f, -2328.00f }, RC_ROMANI_RANCH_GRASS_57 },
+ } },
+ // Southern Swamp(Cleaned)
+ { SCENE_20SICHITAI2,
+ {
+ { { 115.00f, -977.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_01 },
+ { { 93.00f, -947.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_02 },
+ { { 51.00f, -951.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_03 },
+ { { 35.00f, -989.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_04 },
+ { { 75.00f, -1003.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_05 },
+ { { 146.00f, -947.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_06 },
+ { { 75.00f, -903.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_07 },
+ { { 4.00f, -947.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_08 },
+ { { 4.00f, -1019.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_09 },
+ { { 39.00f, -1054.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_10 },
+ { { 87.00f, -1062.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_11 },
+ { { 117.00f, -1025.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_12 },
+ { { 3013.00f, -896.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_13 },
+ { { 3093.00f, -896.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_14 },
+ { { 3070.00f, -839.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_15 },
+ { { 3013.00f, -816.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_16 },
+ { { 2956.00f, -839.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_17 },
+ { { 2933.00f, -896.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_18 },
+ { { 2956.00f, -953.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_19 },
+ { { 3013.00f, -976.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_20 },
+ { { 3070.00f, -953.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_21 },
+ { { 2982.00f, -1255.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_22 },
+ { { 3062.00f, -1255.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_23 },
+ { { 3039.00f, -1198.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_24 },
+ { { 2982.00f, -1175.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_25 },
+ { { 2925.00f, -1198.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_26 },
+ { { 2902.00f, -1255.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_27 },
+ { { 2925.00f, -1312.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_28 },
+ { { 2982.00f, -1335.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_29 },
+ { { 3039.00f, -1312.00f }, RC_SOUTHERN_SWAMP_CLEARED_GRASS_30 },
+ } },
+ // Southern Swamp(Poisoned)
+ { SCENE_20SICHITAI,
+ {
+ { { 115.00f, -977.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_01 },
+ { { 93.00f, -947.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_02 },
+ { { 51.00f, -951.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_03 },
+ { { 35.00f, -989.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_04 },
+ { { 75.00f, -1003.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_05 },
+ { { 146.00f, -947.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_06 },
+ { { 75.00f, -903.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_07 },
+ { { 4.00f, -947.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_08 },
+ { { 4.00f, -1019.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_09 },
+ { { 39.00f, -1054.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_10 },
+ { { 87.00f, -1062.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_11 },
+ { { 117.00f, -1025.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_12 },
+ { { 3013.00f, -896.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_13 },
+ { { 3093.00f, -896.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_14 },
+ { { 3070.00f, -839.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_15 },
+ { { 3013.00f, -816.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_16 },
+ { { 2956.00f, -839.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_17 },
+ { { 2933.00f, -896.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_18 },
+ { { 2956.00f, -953.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_19 },
+ { { 3013.00f, -976.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_20 },
+ { { 3070.00f, -953.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_21 },
+ { { 2982.00f, -1255.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_22 },
+ { { 3062.00f, -1255.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_23 },
+ { { 3039.00f, -1198.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_24 },
+ { { 2982.00f, -1175.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_25 },
+ { { 2925.00f, -1198.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_26 },
+ { { 2902.00f, -1255.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_27 },
+ { { 2925.00f, -1312.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_28 },
+ { { 2982.00f, -1335.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_29 },
+ { { 3039.00f, -1312.00f }, RC_SOUTHERN_SWAMP_POISON_GRASS_30 },
+ } },
+ // Road to Southern Swamp
+ { SCENE_24KEMONOMITI,
+ {
+ { { 2734.00f, 3399.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_01 },
+ { { 2757.00f, 3443.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_02 },
+ { { 127.00f, 1839.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_03 },
+ { { 47.00f, 1839.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_04 },
+ { { 70.00f, 1782.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_05 },
+ { { 127.00f, 1759.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_06 },
+ { { 184.00f, 1782.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_07 },
+ { { 207.00f, 1839.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_08 },
+ { { 184.00f, 1896.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_09 },
+ { { 127.00f, 1919.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_10 },
+ { { 70.00f, 1896.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_11 },
+ { { 321.00f, 1647.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_12 },
+ { { 241.00f, 1647.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_13 },
+ { { 264.00f, 1590.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_14 },
+ { { 321.00f, 1567.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_15 },
+ { { 378.00f, 1590.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_16 },
+ { { 401.00f, 1647.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_17 },
+ { { 378.00f, 1704.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_18 },
+ { { 321.00f, 1727.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_19 },
+ { { 264.00f, 1704.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_20 },
+ } },
+ { SCENE_10YUKIYAMANOMURA2,
+ {
+ { { -279.00f, 1379.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_01 },
+ { { -203.00f, 1155.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_02 },
+ { { -545.00f, 1069.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_03 },
+ { { 267.00f, 402.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_04 },
+ { { 267.00f, 482.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_05 },
+ { { 324.00f, 459.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_06 },
+ { { 347.00f, 402.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_07 },
+ { { 324.00f, 345.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_08 },
+ { { 267.00f, 322.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_09 },
+ { { 210.00f, 345.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_10 },
+ { { 187.00f, 402.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_11 },
+ { { 210.00f, 459.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_12 },
+ { { 86.00f, 145.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_13 },
+ { { 86.00f, 225.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_14 },
+ { { 143.00f, 202.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_15 },
+ { { 166.00f, 145.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_16 },
+ { { 143.00f, 88.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_17 },
+ { { 86.00f, 65.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_18 },
+ { { 29.00f, 88.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_19 },
+ { { 6.00f, 145.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_20 },
+ { { 29.00f, 202.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_21 },
+ { { 365.00f, 165.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_22 },
+ { { 365.00f, 245.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_23 },
+ { { 422.00f, 222.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_24 },
+ { { 445.00f, 165.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_25 },
+ { { 422.00f, 108.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_26 },
+ { { 365.00f, 85.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_27 },
+ { { 308.00f, 108.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_28 },
+ { { 285.00f, 165.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_29 },
+ { { 308.00f, 222.00f }, RC_MOUNTAIN_VILLAGE_SPRING_GRASS_30 },
+ } },
+ { SCENE_17SETUGEN2,
+ {
+ { { -1383.00f, 1049.00f }, RC_TWIN_ISLANDS_SPRING_GRASS_01 },
+ { { -1405.00f, 1079.00f }, RC_TWIN_ISLANDS_SPRING_GRASS_02 },
+ { { -1447.00f, 1075.00f }, RC_TWIN_ISLANDS_SPRING_GRASS_03 },
+ { { -1463.00f, 1037.00f }, RC_TWIN_ISLANDS_SPRING_GRASS_04 },
+ { { -1423.00f, 1023.00f }, RC_TWIN_ISLANDS_SPRING_GRASS_05 },
+ { { -1352.00f, 1079.00f }, RC_TWIN_ISLANDS_SPRING_GRASS_06 },
+ { { -1423.00f, 1123.00f }, RC_TWIN_ISLANDS_SPRING_GRASS_07 },
+ { { -1494.00f, 1079.00f }, RC_TWIN_ISLANDS_SPRING_GRASS_08 },
+ { { -1494.00f, 1007.00f }, RC_TWIN_ISLANDS_SPRING_GRASS_09 },
+ { { -1459.00f, 972.00f }, RC_TWIN_ISLANDS_SPRING_GRASS_10 },
+ { { -1411.00f, 964.00f }, RC_TWIN_ISLANDS_SPRING_GRASS_11 },
+ { { -1381.00f, 1001.00f }, RC_TWIN_ISLANDS_SPRING_GRASS_12 },
+ } },
+ { SCENE_BOTI,
+ {
+ { { -597.00f, -1943.00f }, RC_IKANA_GRAVEYARD_GRASS_01 },
+ { { -597.00f, -1863.00f }, RC_IKANA_GRAVEYARD_GRASS_02 },
+ { { -540.00f, -1886.00f }, RC_IKANA_GRAVEYARD_GRASS_03 },
+ { { -517.00f, -1943.00f }, RC_IKANA_GRAVEYARD_GRASS_04 },
+ { { -540.00f, -2000.00f }, RC_IKANA_GRAVEYARD_GRASS_05 },
+ { { -597.00f, -2023.00f }, RC_IKANA_GRAVEYARD_GRASS_06 },
+ { { -654.00f, -2000.00f }, RC_IKANA_GRAVEYARD_GRASS_07 },
+ { { -677.00f, -1943.00f }, RC_IKANA_GRAVEYARD_GRASS_08 },
+ { { -654.00f, -1886.00f }, RC_IKANA_GRAVEYARD_GRASS_09 },
+ } },
+ { SCENE_KOEPONARACE,
+ {
+ { { 2810.00f, 446.00f }, RC_GORMAN_TRACK_GRASS_01 },
+ { { 2788.00f, 476.00f }, RC_GORMAN_TRACK_GRASS_02 },
+ { { 2746.00f, 472.00f }, RC_GORMAN_TRACK_GRASS_03 },
+ { { 2730.00f, 434.00f }, RC_GORMAN_TRACK_GRASS_04 },
+ { { 2770.00f, 420.00f }, RC_GORMAN_TRACK_GRASS_05 },
+ { { 2841.00f, 476.00f }, RC_GORMAN_TRACK_GRASS_06 },
+ { { 2770.00f, 520.00f }, RC_GORMAN_TRACK_GRASS_07 },
+ { { 2699.00f, 476.00f }, RC_GORMAN_TRACK_GRASS_08 },
+ { { 2699.00f, 404.00f }, RC_GORMAN_TRACK_GRASS_09 },
+ { { 2734.00f, 369.00f }, RC_GORMAN_TRACK_GRASS_10 },
+ { { 2782.00f, 361.00f }, RC_GORMAN_TRACK_GRASS_11 },
+ { { 2812.00f, 398.00f }, RC_GORMAN_TRACK_GRASS_12 },
+ { { 2502.00f, -353.00f }, RC_GORMAN_TRACK_GRASS_13 },
+ { { 2480.00f, -323.00f }, RC_GORMAN_TRACK_GRASS_14 },
+ { { 2438.00f, -327.00f }, RC_GORMAN_TRACK_GRASS_15 },
+ { { 2422.00f, -365.00f }, RC_GORMAN_TRACK_GRASS_16 },
+ { { 2462.00f, -379.00f }, RC_GORMAN_TRACK_GRASS_17 },
+ { { 2533.00f, -323.00f }, RC_GORMAN_TRACK_GRASS_18 },
+ { { 2462.00f, -279.00f }, RC_GORMAN_TRACK_GRASS_19 },
+ { { 2391.00f, -323.00f }, RC_GORMAN_TRACK_GRASS_20 },
+ { { 2391.00f, -395.00f }, RC_GORMAN_TRACK_GRASS_21 },
+ { { 2426.00f, -430.00f }, RC_GORMAN_TRACK_GRASS_22 },
+ { { 2474.00f, -438.00f }, RC_GORMAN_TRACK_GRASS_23 },
+ { { 2504.00f, -401.00f }, RC_GORMAN_TRACK_GRASS_24 },
+ } },
+ { SCENE_26SARUNOMORI,
+ {
+ { { 81.00f, 85.00f }, RC_WOODS_OF_MYSTERY_GRASS_01 },
+ { { 44.00f, 125.00f }, RC_WOODS_OF_MYSTERY_GRASS_02 },
+ { { 91.00f, 137.00f }, RC_WOODS_OF_MYSTERY_GRASS_03 },
+ { { -77.00f, 779.00f }, RC_WOODS_OF_MYSTERY_GRASS_04 },
+ { { 6.00f, 988.00f }, RC_WOODS_OF_MYSTERY_GRASS_05 },
+ { { -796.00f, 793.00f }, RC_WOODS_OF_MYSTERY_GRASS_06 },
+ { { -946.00f, 1054.00f }, RC_WOODS_OF_MYSTERY_GRASS_07 },
+ { { -798.00f, 56.00f }, RC_WOODS_OF_MYSTERY_GRASS_08 },
+ { { -872.00f, -3.00f }, RC_WOODS_OF_MYSTERY_GRASS_09 },
+ { { -952.00f, 77.00f }, RC_WOODS_OF_MYSTERY_GRASS_10 },
+ { { -915.00f, -74.00f }, RC_WOODS_OF_MYSTERY_GRASS_11 },
+ { { -958.00f, -755.00f }, RC_WOODS_OF_MYSTERY_GRASS_12 },
+ { { -906.00f, -1034.00f }, RC_WOODS_OF_MYSTERY_GRASS_13 },
+ { { -1894.00f, -874.00f }, RC_WOODS_OF_MYSTERY_GRASS_14 },
+ { { -1876.00f, -821.00f }, RC_WOODS_OF_MYSTERY_GRASS_15 },
+ { { -1696.00f, -892.00f }, RC_WOODS_OF_MYSTERY_GRASS_16 },
+ { { -1690.00f, -1023.00f }, RC_WOODS_OF_MYSTERY_GRASS_17 },
+ { { -1631.00f, -727.00f }, RC_WOODS_OF_MYSTERY_GRASS_18 },
+ { { -1942.00f, 42.00f }, RC_WOODS_OF_MYSTERY_GRASS_19 },
+ { { -1702.00f, -24.00f }, RC_WOODS_OF_MYSTERY_GRASS_20 },
+ { { 100.00f, -970.00f }, RC_WOODS_OF_MYSTERY_GRASS_21 },
+ } },
+ { SCENE_21MITURINMAE,
+ {
+ { { -135.00f, -1401.00f }, RC_WOODFALL_GRASS_01 },
+ { { -200.00f, -1447.00f }, RC_WOODFALL_GRASS_02 },
+ { { -186.00f, -1379.00f }, RC_WOODFALL_GRASS_03 },
+ { { 70.00f, -1409.00f }, RC_WOODFALL_GRASS_04 },
+ { { 126.00f, -1455.00f }, RC_WOODFALL_GRASS_05 },
+ { { 114.00f, -1377.00f }, RC_WOODFALL_GRASS_06 },
+ } },
+};
+
+std::map<int16_t, std::map<std::pair<float, float>, RandoCheckId>> grottoGrassMap = {
+ { -1,
+ {
+ { { 2285.00f, 883.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_01 },
+ { { 2263.00f, 913.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_02 },
+ { { 2221.00f, 909.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_03 },
+ { { 2205.00f, 871.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_04 },
+ { { 2245.00f, 857.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_05 },
+ { { 2316.00f, 913.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_06 },
+ { { 2245.00f, 957.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_07 },
+ { { 2174.00f, 913.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_08 },
+ { { 2174.00f, 841.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_09 },
+ { { 2209.00f, 806.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_10 },
+ { { 2257.00f, 798.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_11 },
+ { { 2287.00f, 835.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_12 },
+ { { 2324.00f, 1073.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_13 },
+ { { 2302.00f, 1103.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_14 },
+ { { 2260.00f, 1099.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_15 },
+ { { 2244.00f, 1061.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_16 },
+ { { 2284.00f, 1047.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_17 },
+ { { 2355.00f, 1103.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_18 },
+ { { 2284.00f, 1147.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_19 },
+ { { 2213.00f, 1103.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_20 },
+ { { 2213.00f, 1031.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_21 },
+ { { 2248.00f, 996.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_22 },
+ { { 2296.00f, 988.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_23 },
+ { { 2326.00f, 1025.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_24 },
+ { { 2438.00f, 993.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_25 },
+ { { 2416.00f, 1023.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_26 },
+ { { 2374.00f, 1019.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_27 },
+ { { 2358.00f, 981.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_28 },
+ { { 2398.00f, 967.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_29 },
+ { { 2469.00f, 1023.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_30 },
+ { { 2398.00f, 1067.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_31 },
+ { { 2327.00f, 1023.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_32 },
+ { { 2327.00f, 951.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_33 },
+ { { 2362.00f, 916.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_34 },
+ { { 2410.00f, 908.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_35 },
+ { { 2440.00f, 945.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_36 },
+ { { 2466.00f, 747.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_37 },
+ { { 2444.00f, 777.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_38 },
+ { { 2402.00f, 773.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_39 },
+ { { 2386.00f, 735.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_40 },
+ { { 2426.00f, 721.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_41 },
+ { { 2497.00f, 777.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_42 },
+ { { 2426.00f, 821.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_43 },
+ { { 2355.00f, 777.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_44 },
+ { { 2355.00f, 705.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_45 },
+ { { 2390.00f, 670.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_46 },
+ { { 2438.00f, 662.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_47 },
+ { { 2468.00f, 699.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_48 },
+ { { 2576.00f, 842.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_49 },
+ { { 2554.00f, 872.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_50 },
+ { { 2512.00f, 868.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_51 },
+ { { 2496.00f, 830.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_52 },
+ { { 2536.00f, 816.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_53 },
+ { { 2607.00f, 872.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_54 },
+ { { 2536.00f, 916.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_55 },
+ { { 2465.00f, 872.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_56 },
+ { { 2465.00f, 800.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_57 },
+ { { 2500.00f, 765.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_58 },
+ { { 2548.00f, 757.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_59 },
+ { { 2578.00f, 794.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_60 },
+ { { 2593.00f, 1073.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_61 },
+ { { 2571.00f, 1103.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_62 },
+ { { 2529.00f, 1099.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_63 },
+ { { 2513.00f, 1061.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_64 },
+ { { 2553.00f, 1047.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_65 },
+ { { 2624.00f, 1103.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_66 },
+ { { 2553.00f, 1147.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_67 },
+ { { 2482.00f, 1103.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_68 },
+ { { 2482.00f, 1031.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_69 },
+ { { 2517.00f, 996.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_70 },
+ { { 2565.00f, 988.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_71 },
+ { { 2595.00f, 1025.00f }, RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_72 },
+ } },
+ { ENTRANCE(GROTTOS, 16),
+ {
+ { { 4323.00f, -466.00f }, RC_LONE_PEAK_SHRINE_GRASS_01 },
+ { { 4301.00f, -436.00f }, RC_LONE_PEAK_SHRINE_GRASS_02 },
+ { { 4259.00f, -440.00f }, RC_LONE_PEAK_SHRINE_GRASS_03 },
+ { { 4243.00f, -478.00f }, RC_LONE_PEAK_SHRINE_GRASS_04 },
+ { { 4283.00f, -492.00f }, RC_LONE_PEAK_SHRINE_GRASS_05 },
+ { { 4354.00f, -436.00f }, RC_LONE_PEAK_SHRINE_GRASS_06 },
+ { { 4283.00f, -392.00f }, RC_LONE_PEAK_SHRINE_GRASS_07 },
+ { { 4212.00f, -436.00f }, RC_LONE_PEAK_SHRINE_GRASS_08 },
+ { { 4212.00f, -508.00f }, RC_LONE_PEAK_SHRINE_GRASS_09 },
+ { { 4247.00f, -543.00f }, RC_LONE_PEAK_SHRINE_GRASS_10 },
+ { { 4295.00f, -551.00f }, RC_LONE_PEAK_SHRINE_GRASS_11 },
+ { { 4325.00f, -514.00f }, RC_LONE_PEAK_SHRINE_GRASS_12 },
+ { { 4592.00f, -613.00f }, RC_LONE_PEAK_SHRINE_GRASS_13 },
+ { { 4570.00f, -583.00f }, RC_LONE_PEAK_SHRINE_GRASS_14 },
+ { { 4528.00f, -587.00f }, RC_LONE_PEAK_SHRINE_GRASS_15 },
+ { { 4512.00f, -625.00f }, RC_LONE_PEAK_SHRINE_GRASS_16 },
+ { { 4552.00f, -639.00f }, RC_LONE_PEAK_SHRINE_GRASS_17 },
+ { { 4623.00f, -583.00f }, RC_LONE_PEAK_SHRINE_GRASS_18 },
+ { { 4552.00f, -539.00f }, RC_LONE_PEAK_SHRINE_GRASS_19 },
+ { { 4481.00f, -583.00f }, RC_LONE_PEAK_SHRINE_GRASS_20 },
+ { { 4481.00f, -655.00f }, RC_LONE_PEAK_SHRINE_GRASS_21 },
+ { { 4516.00f, -690.00f }, RC_LONE_PEAK_SHRINE_GRASS_22 },
+ { { 4564.00f, -698.00f }, RC_LONE_PEAK_SHRINE_GRASS_23 },
+ { { 4594.00f, -661.00f }, RC_LONE_PEAK_SHRINE_GRASS_24 },
+ } },
+ { ENTRANCE(GROTTOS, 12),
+ {
+ { { 4137.00f, 1073.00f }, RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_01 },
+ { { 4115.00f, 1103.00f }, RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_02 },
+ { { 4073.00f, 1099.00f }, RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_03 },
+ { { 4057.00f, 1061.00f }, RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_04 },
+ { { 4097.00f, 1047.00f }, RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_05 },
+ { { 4168.00f, 1103.00f }, RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_06 },
+ { { 4097.00f, 1147.00f }, RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_07 },
+ { { 4026.00f, 1103.00f }, RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_08 },
+ { { 4026.00f, 1031.00f }, RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_09 },
+ { { 4061.00f, 996.00f }, RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_10 },
+ { { 4109.00f, 988.00f }, RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_11 },
+ { { 4139.00f, 1025.00f }, RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_12 },
+ } },
+ { 31,
+ {
+ { { 2285.00f, 883.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_01 },
+ { { 2263.00f, 913.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_02 },
+ { { 2221.00f, 909.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_03 },
+ { { 2205.00f, 871.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_04 },
+ { { 2245.00f, 857.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_05 },
+ { { 2316.00f, 913.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_06 },
+ { { 2245.00f, 957.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_07 },
+ { { 2174.00f, 913.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_08 },
+ { { 2174.00f, 841.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_09 },
+ { { 2209.00f, 806.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_10 },
+ { { 2257.00f, 798.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_11 },
+ { { 2287.00f, 835.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_12 },
+ { { 2324.00f, 1073.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_13 },
+ { { 2302.00f, 1103.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_14 },
+ { { 2260.00f, 1099.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_15 },
+ { { 2244.00f, 1061.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_16 },
+ { { 2284.00f, 1047.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_17 },
+ { { 2355.00f, 1103.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_18 },
+ { { 2284.00f, 1147.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_19 },
+ { { 2213.00f, 1103.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_20 },
+ { { 2213.00f, 1031.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_21 },
+ { { 2248.00f, 996.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_22 },
+ { { 2296.00f, 988.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_23 },
+ { { 2326.00f, 1025.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_24 },
+ { { 2438.00f, 993.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_25 },
+ { { 2416.00f, 1023.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_26 },
+ { { 2374.00f, 1019.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_27 },
+ { { 2358.00f, 981.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_28 },
+ { { 2398.00f, 967.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_29 },
+ { { 2469.00f, 1023.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_30 },
+ { { 2398.00f, 1067.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_31 },
+ { { 2327.00f, 1023.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_32 },
+ { { 2327.00f, 951.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_33 },
+ { { 2362.00f, 916.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_34 },
+ { { 2410.00f, 908.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_35 },
+ { { 2440.00f, 945.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_36 },
+ { { 2466.00f, 747.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_37 },
+ { { 2444.00f, 777.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_38 },
+ { { 2402.00f, 773.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_39 },
+ { { 2386.00f, 735.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_40 },
+ { { 2426.00f, 721.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_41 },
+ { { 2497.00f, 777.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_42 },
+ { { 2426.00f, 821.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_43 },
+ { { 2355.00f, 777.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_44 },
+ { { 2355.00f, 705.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_45 },
+ { { 2390.00f, 670.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_46 },
+ { { 2438.00f, 662.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_47 },
+ { { 2468.00f, 699.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_48 },
+ { { 2576.00f, 842.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_49 },
+ { { 2554.00f, 872.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_50 },
+ { { 2512.00f, 868.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_51 },
+ { { 2496.00f, 830.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_52 },
+ { { 2536.00f, 816.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_53 },
+ { { 2607.00f, 872.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_54 },
+ { { 2536.00f, 916.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_55 },
+ { { 2465.00f, 872.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_56 },
+ { { 2465.00f, 800.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_57 },
+ { { 2500.00f, 765.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_58 },
+ { { 2548.00f, 757.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_59 },
+ { { 2578.00f, 794.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_60 },
+ { { 2593.00f, 1073.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_61 },
+ { { 2571.00f, 1103.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_62 },
+ { { 2529.00f, 1099.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_63 },
+ { { 2513.00f, 1061.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_64 },
+ { { 2553.00f, 1047.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_65 },
+ { { 2624.00f, 1103.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_66 },
+ { { 2553.00f, 1147.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_67 },
+ { { 2482.00f, 1103.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_68 },
+ { { 2482.00f, 1031.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_69 },
+ { { 2517.00f, 996.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_70 },
+ { { 2565.00f, 988.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_71 },
+ { { 2595.00f, 1025.00f }, RC_TERMINA_FIELD_COW_GROTTO_GRASS_72 },
+ } },
+ { ENTRANCE(GROTTOS, 11),
+ {
+ { { 2927.00f, 1308.00f }, RC_TERMINA_FIELD_BIO_BABA_GROTTO_GRASS_01 },
+ { { 2966.00f, 1409.00f }, RC_TERMINA_FIELD_BIO_BABA_GROTTO_GRASS_02 },
+ } },
+ { ENTRANCE(GROTTOS, 13),
+ {
+ { { 5415.00f, 454.00f }, RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_01 },
+ { { 5393.00f, 484.00f }, RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_02 },
+ { { 5351.00f, 480.00f }, RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_03 },
+ { { 5335.00f, 442.00f }, RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_04 },
+ { { 5375.00f, 428.00f }, RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_05 },
+ { { 5446.00f, 484.00f }, RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_06 },
+ { { 5375.00f, 528.00f }, RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_07 },
+ { { 5304.00f, 484.00f }, RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_08 },
+ { { 5304.00f, 412.00f }, RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_09 },
+ { { 5339.00f, 377.00f }, RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_10 },
+ { { 5387.00f, 369.00f }, RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_11 },
+ { { 5417.00f, 406.00f }, RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_12 },
+ } },
+ { ENTRANCE(GROTTOS, 2),
+ {
+ { { 1153.00f, 218.00f }, RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_01 },
+ { { 1199.00f, -365.00f }, RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_02 },
+ { { 1252.00f, -372.00f }, RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_03 },
+ { { 1295.00f, 27.00f }, RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_04 },
+ { { 1321.00f, 113.00f }, RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_05 },
+ } },
+ { ENTRANCE(GROTTOS, 0),
+ {
+ { { -42.00f, -3.00f }, RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_01 },
+ { { 87.00f, -26.00f }, RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_02 },
+ { { 103.00f, -112.00f }, RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_03 },
+ { { 113.00f, 43.00f }, RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_04 },
+ { { 137.00f, 93.00f }, RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_05 },
+ } },
+ { 51,
+ {
+ { { 2339.00f, 129.00f }, RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_01 },
+ { { 2345.00f, -174.00f }, RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_02 },
+ { { 2355.00f, -310.00f }, RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_03 },
+ { { 2355.00f, -225.00f }, RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_04 },
+ { { 2391.00f, -313.00f }, RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_05 },
+ { { 2403.00f, -360.00f }, RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_06 },
+ { { 2460.00f, 215.00f }, RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_07 },
+ { { 2484.00f, -213.00f }, RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_08 },
+ { { 2500.00f, 26.00f }, RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_09 },
+ { { 2508.00f, 152.00f }, RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_10 },
+ { { 2520.00f, -463.00f }, RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_11 },
+ { { 2522.00f, -243.00f }, RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_12 },
+ { { 2524.00f, 58.00f }, RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_13 },
+ { { 2534.00f, -190.00f }, RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_14 },
+ } },
+ { 55,
+ {
+ { { 2339.00f, 129.00f }, RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_01 },
+ { { 2345.00f, -174.00f }, RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_02 },
+ { { 2355.00f, -310.00f }, RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_03 },
+ { { 2355.00f, -225.00f }, RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_04 },
+ { { 2391.00f, -313.00f }, RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_05 },
+ { { 2403.00f, -360.00f }, RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_06 },
+ { { 2460.00f, 215.00f }, RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_07 },
+ { { 2484.00f, -213.00f }, RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_08 },
+ { { 2500.00f, 26.00f }, RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_09 },
+ { { 2508.00f, 152.00f }, RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_10 },
+ { { 2520.00f, -463.00f }, RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_11 },
+ { { 2522.00f, -243.00f }, RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_12 },
+ { { 2524.00f, 58.00f }, RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_13 },
+ { { 2534.00f, -190.00f }, RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_14 },
+ } },
+ { 59,
+ {
+ { { 2339.00f, 129.00f }, RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_01 },
+ { { 2345.00f, -174.00f }, RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_02 },
+ { { 2355.00f, -310.00f }, RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_03 },
+ { { 2355.00f, -225.00f }, RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_04 },
+ { { 2391.00f, -313.00f }, RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_05 },
+ { { 2403.00f, -360.00f }, RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_06 },
+ { { 2460.00f, 215.00f }, RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_07 },
+ { { 2484.00f, -213.00f }, RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_08 },
+ { { 2500.00f, 26.00f }, RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_09 },
+ { { 2508.00f, 152.00f }, RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_10 },
+ { { 2520.00f, -463.00f }, RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_11 },
+ { { 2522.00f, -243.00f }, RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_12 },
+ { { 2524.00f, 58.00f }, RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_13 },
+ { { 2534.00f, -190.00f }, RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_14 },
+ } },
+ { 61,
+ {
+ { { 2339.00f, 129.00f }, RC_SOUTHERN_SWAMP_GROTTO_GRASS_01 },
+ { { 2345.00f, -174.00f }, RC_SOUTHERN_SWAMP_GROTTO_GRASS_02 },
+ { { 2355.00f, -310.00f }, RC_SOUTHERN_SWAMP_GROTTO_GRASS_03 },
+ { { 2355.00f, -225.00f }, RC_SOUTHERN_SWAMP_GROTTO_GRASS_04 },
+ { { 2391.00f, -313.00f }, RC_SOUTHERN_SWAMP_GROTTO_GRASS_05 },
+ { { 2403.00f, -360.00f }, RC_SOUTHERN_SWAMP_GROTTO_GRASS_06 },
+ { { 2460.00f, 215.00f }, RC_SOUTHERN_SWAMP_GROTTO_GRASS_07 },
+ { { 2484.00f, -213.00f }, RC_SOUTHERN_SWAMP_GROTTO_GRASS_08 },
+ { { 2500.00f, 26.00f }, RC_SOUTHERN_SWAMP_GROTTO_GRASS_09 },
+ { { 2508.00f, 152.00f }, RC_SOUTHERN_SWAMP_GROTTO_GRASS_10 },
+ { { 2520.00f, -463.00f }, RC_SOUTHERN_SWAMP_GROTTO_GRASS_11 },
+ { { 2522.00f, -243.00f }, RC_SOUTHERN_SWAMP_GROTTO_GRASS_12 },
+ { { 2524.00f, 58.00f }, RC_SOUTHERN_SWAMP_GROTTO_GRASS_13 },
+ { { 2534.00f, -190.00f }, RC_SOUTHERN_SWAMP_GROTTO_GRASS_14 },
+ } },
+ { 62,
+ {
+ { { 2339.00f, 129.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_01 },
+ { { 2345.00f, -174.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_02 },
+ { { 2355.00f, -310.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_03 },
+ { { 2355.00f, -225.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_04 },
+ { { 2391.00f, -313.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_05 },
+ { { 2403.00f, -360.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_06 },
+ { { 2460.00f, 215.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_07 },
+ { { 2484.00f, -213.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_08 },
+ { { 2500.00f, 26.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_09 },
+ { { 2508.00f, 152.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_10 },
+ { { 2520.00f, -463.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_11 },
+ { { 2522.00f, -243.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_12 },
+ { { 2524.00f, 58.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_13 },
+ { { 2534.00f, -190.00f }, RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_14 },
+ } },
+ { 63,
+ {
+ { { 2339.00f, 129.00f }, RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_01 },
+ { { 2345.00f, -174.00f }, RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_02 },
+ { { 2355.00f, -310.00f }, RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_03 },
+ { { 2355.00f, -225.00f }, RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_04 },
+ { { 2391.00f, -313.00f }, RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_05 },
+ { { 2403.00f, -360.00f }, RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_06 },
+ { { 2460.00f, 215.00f }, RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_07 },
+ { { 2484.00f, -213.00f }, RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_08 },
+ { { 2500.00f, 26.00f }, RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_09 },
+ { { 2508.00f, 152.00f }, RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_10 },
+ { { 2520.00f, -463.00f }, RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_11 },
+ { { 2522.00f, -243.00f }, RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_12 },
+ { { 2524.00f, 58.00f }, RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_13 },
+ { { 2534.00f, -190.00f }, RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_14 },
+ } },
+ { -72,
+ {
+ { { 2339.00f, 129.00f }, RC_IKANA_GRAVEYARD_GROTTO_GRASS_01 },
+ { { 2345.00f, -174.00f }, RC_IKANA_GRAVEYARD_GROTTO_GRASS_02 },
+ { { 2355.00f, -310.00f }, RC_IKANA_GRAVEYARD_GROTTO_GRASS_03 },
+ { { 2355.00f, -225.00f }, RC_IKANA_GRAVEYARD_GROTTO_GRASS_04 },
+ { { 2391.00f, -313.00f }, RC_IKANA_GRAVEYARD_GROTTO_GRASS_05 },
+ { { 2403.00f, -360.00f }, RC_IKANA_GRAVEYARD_GROTTO_GRASS_06 },
+ { { 2460.00f, 215.00f }, RC_IKANA_GRAVEYARD_GROTTO_GRASS_07 },
+ { { 2484.00f, -213.00f }, RC_IKANA_GRAVEYARD_GROTTO_GRASS_08 },
+ { { 2500.00f, 26.00f }, RC_IKANA_GRAVEYARD_GROTTO_GRASS_09 },
+ { { 2508.00f, 152.00f }, RC_IKANA_GRAVEYARD_GROTTO_GRASS_10 },
+ { { 2520.00f, -463.00f }, RC_IKANA_GRAVEYARD_GROTTO_GRASS_11 },
+ { { 2522.00f, -243.00f }, RC_IKANA_GRAVEYARD_GROTTO_GRASS_12 },
+ { { 2524.00f, 58.00f }, RC_IKANA_GRAVEYARD_GROTTO_GRASS_13 },
+ { { 2534.00f, -190.00f }, RC_IKANA_GRAVEYARD_GROTTO_GRASS_14 },
+ } },
+ { -76,
+ {
+ { { 2339.00f, 129.00f }, RC_IKANA_CANYON_GROTTO_GRASS_01 },
+ { { 2345.00f, -174.00f }, RC_IKANA_CANYON_GROTTO_GRASS_02 },
+ { { 2355.00f, -310.00f }, RC_IKANA_CANYON_GROTTO_GRASS_03 },
+ { { 2355.00f, -225.00f }, RC_IKANA_CANYON_GROTTO_GRASS_04 },
+ { { 2391.00f, -313.00f }, RC_IKANA_CANYON_GROTTO_GRASS_05 },
+ { { 2403.00f, -360.00f }, RC_IKANA_CANYON_GROTTO_GRASS_06 },
+ { { 2460.00f, 215.00f }, RC_IKANA_CANYON_GROTTO_GRASS_07 },
+ { { 2484.00f, -213.00f }, RC_IKANA_CANYON_GROTTO_GRASS_08 },
+ { { 2500.00f, 26.00f }, RC_IKANA_CANYON_GROTTO_GRASS_09 },
+ { { 2508.00f, 152.00f }, RC_IKANA_CANYON_GROTTO_GRASS_10 },
+ { { 2520.00f, -463.00f }, RC_IKANA_CANYON_GROTTO_GRASS_11 },
+ { { 2522.00f, -243.00f }, RC_IKANA_CANYON_GROTTO_GRASS_12 },
+ { { 2524.00f, 58.00f }, RC_IKANA_CANYON_GROTTO_GRASS_13 },
+ { { 2534.00f, -190.00f }, RC_IKANA_CANYON_GROTTO_GRASS_14 },
+ } },
+ { 92,
+ {
+ { { 2339.00f, 129.00f }, RC_WOODS_OF_MYSTERY_GROTTO_GRASS_01 },
+ { { 2345.00f, -174.00f }, RC_WOODS_OF_MYSTERY_GROTTO_GRASS_02 },
+ { { 2355.00f, -310.00f }, RC_WOODS_OF_MYSTERY_GROTTO_GRASS_03 },
+ { { 2355.00f, -225.00f }, RC_WOODS_OF_MYSTERY_GROTTO_GRASS_04 },
+ { { 2391.00f, -313.00f }, RC_WOODS_OF_MYSTERY_GROTTO_GRASS_05 },
+ { { 2403.00f, -360.00f }, RC_WOODS_OF_MYSTERY_GROTTO_GRASS_06 },
+ { { 2460.00f, 215.00f }, RC_WOODS_OF_MYSTERY_GROTTO_GRASS_07 },
+ { { 2484.00f, -213.00f }, RC_WOODS_OF_MYSTERY_GROTTO_GRASS_08 },
+ { { 2500.00f, 26.00f }, RC_WOODS_OF_MYSTERY_GROTTO_GRASS_09 },
+ { { 2508.00f, 152.00f }, RC_WOODS_OF_MYSTERY_GROTTO_GRASS_10 },
+ { { 2520.00f, -463.00f }, RC_WOODS_OF_MYSTERY_GROTTO_GRASS_11 },
+ { { 2522.00f, -243.00f }, RC_WOODS_OF_MYSTERY_GROTTO_GRASS_12 },
+ { { 2524.00f, 58.00f }, RC_WOODS_OF_MYSTERY_GROTTO_GRASS_13 },
+ { { 2534.00f, -190.00f }, RC_WOODS_OF_MYSTERY_GROTTO_GRASS_14 },
+ } },
+ { -102,
+ {
+ { { 2339.00f, 129.00f }, RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_01 },
+ { { 2345.00f, -174.00f }, RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_02 },
+ { { 2355.00f, -310.00f }, RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_03 },
+ { { 2355.00f, -225.00f }, RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_04 },
+ { { 2391.00f, -313.00f }, RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_05 },
+ { { 2403.00f, -360.00f }, RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_06 },
+ { { 2460.00f, 215.00f }, RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_07 },
+ { { 2484.00f, -213.00f }, RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_08 },
+ { { 2500.00f, 26.00f }, RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_09 },
+ { { 2508.00f, 152.00f }, RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_10 },
+ { { 2520.00f, -463.00f }, RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_11 },
+ { { 2522.00f, -243.00f }, RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_12 },
+ { { 2524.00f, 58.00f }, RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_13 },
+ { { 2534.00f, -190.00f }, RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_14 },
+ } },
+ { -103,
+ {
+ { { 2339.00f, 129.00f }, RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_01 },
+ { { 2345.00f, -174.00f }, RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_02 },
+ { { 2355.00f, -310.00f }, RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_03 },
+ { { 2355.00f, -225.00f }, RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_04 },
+ { { 2391.00f, -313.00f }, RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_05 },
+ { { 2403.00f, -360.00f }, RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_06 },
+ { { 2460.00f, 215.00f }, RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_07 },
+ { { 2484.00f, -213.00f }, RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_08 },
+ { { 2500.00f, 26.00f }, RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_09 },
+ { { 2508.00f, 152.00f }, RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_10 },
+ { { 2520.00f, -463.00f }, RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_11 },
+ { { 2522.00f, -243.00f }, RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_12 },
+ { { 2524.00f, 58.00f }, RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_13 },
+ { { 2534.00f, -190.00f }, RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_14 },
+ } },
+ { -106,
+ {
+ { { 2339.00f, 129.00f }, RC_ROAD_TO_IKANA_GROTTO_GRASS_01 },
+ { { 2345.00f, -174.00f }, RC_ROAD_TO_IKANA_GROTTO_GRASS_02 },
+ { { 2355.00f, -310.00f }, RC_ROAD_TO_IKANA_GROTTO_GRASS_03 },
+ { { 2355.00f, -225.00f }, RC_ROAD_TO_IKANA_GROTTO_GRASS_04 },
+ { { 2391.00f, -313.00f }, RC_ROAD_TO_IKANA_GROTTO_GRASS_05 },
+ { { 2403.00f, -360.00f }, RC_ROAD_TO_IKANA_GROTTO_GRASS_06 },
+ { { 2460.00f, 215.00f }, RC_ROAD_TO_IKANA_GROTTO_GRASS_07 },
+ { { 2484.00f, -213.00f }, RC_ROAD_TO_IKANA_GROTTO_GRASS_08 },
+ { { 2500.00f, 26.00f }, RC_ROAD_TO_IKANA_GROTTO_GRASS_09 },
+ { { 2508.00f, 152.00f }, RC_ROAD_TO_IKANA_GROTTO_GRASS_10 },
+ { { 2520.00f, -463.00f }, RC_ROAD_TO_IKANA_GROTTO_GRASS_11 },
+ { { 2522.00f, -243.00f }, RC_ROAD_TO_IKANA_GROTTO_GRASS_12 },
+ { { 2524.00f, 58.00f }, RC_ROAD_TO_IKANA_GROTTO_GRASS_13 },
+ { { 2534.00f, -190.00f }, RC_ROAD_TO_IKANA_GROTTO_GRASS_14 },
+ } },
+ { -107,
+ {
+ { { 2339.00f, 129.00f }, RC_ZORA_CAPE_GROTTO_GRASS_01 },
+ { { 2345.00f, -174.00f }, RC_ZORA_CAPE_GROTTO_GRASS_02 },
+ { { 2355.00f, -310.00f }, RC_ZORA_CAPE_GROTTO_GRASS_03 },
+ { { 2355.00f, -225.00f }, RC_ZORA_CAPE_GROTTO_GRASS_04 },
+ { { 2391.00f, -313.00f }, RC_ZORA_CAPE_GROTTO_GRASS_05 },
+ { { 2403.00f, -360.00f }, RC_ZORA_CAPE_GROTTO_GRASS_06 },
+ { { 2460.00f, 215.00f }, RC_ZORA_CAPE_GROTTO_GRASS_07 },
+ { { 2484.00f, -213.00f }, RC_ZORA_CAPE_GROTTO_GRASS_08 },
+ { { 2500.00f, 26.00f }, RC_ZORA_CAPE_GROTTO_GRASS_09 },
+ { { 2508.00f, 152.00f }, RC_ZORA_CAPE_GROTTO_GRASS_10 },
+ { { 2520.00f, -463.00f }, RC_ZORA_CAPE_GROTTO_GRASS_11 },
+ { { 2522.00f, -243.00f }, RC_ZORA_CAPE_GROTTO_GRASS_12 },
+ { { 2524.00f, 58.00f }, RC_ZORA_CAPE_GROTTO_GRASS_13 },
+ { { 2534.00f, -190.00f }, RC_ZORA_CAPE_GROTTO_GRASS_14 },
+ } },
+};
+// clang-format on
+
+float roundToWholeNumber(float value) {
+ int rounded = std::round(value);
+ float fnum = static_cast<float>(rounded);
+
+ return fnum;
+}
+
+RandoCheckId IdentifyGrass(Vec3f pos) {
+ RandoCheckId randoCheckId = RC_UNKNOWN;
+ pos.x = roundToWholeNumber(pos.x);
+ pos.z = roundToWholeNumber(pos.z);
+
+ const auto& grassMap = (gPlayState->sceneId != SCENE_KAKUSIANA) ? overworldGrassMap : grottoGrassMap;
+ uint32_t key =
+ (gPlayState->sceneId != SCENE_KAKUSIANA) ? static_cast<uint16_t>(gPlayState->sceneId)
+ : (gSaveContext.save.entrance == ENTRANCE(GROTTOS, 4) || gSaveContext.save.entrance == ENTRANCE(GROTTOS, 10))
+ ? gSaveContext.respawn[RESPAWN_MODE_UNK_3].data
+ : gSaveContext.save.entrance;
+
+ auto it = grassMap.find(key);
+ if (it == grassMap.end()) {
+ return randoCheckId;
+ }
+
+ auto innerIt = it->second.find({ pos.x, pos.z });
+ if (innerIt == it->second.end()) {
+ return randoCheckId;
+ }
+
+ randoCheckId = innerIt->second;
+ if (!RANDO_SAVE_CHECKS[randoCheckId].shuffled || RANDO_SAVE_CHECKS[randoCheckId].cycleObtained) {
+ return RC_UNKNOWN;
+ }
+
+ return randoCheckId;
+}
+
+void SpawnGrassDrop(Vec3f pos, RandoCheckId randoCheckId) {
+ CustomItem::Spawn(
+ pos.x, pos.y, pos.z, 0, CustomItem::KILL_ON_TOUCH | CustomItem::TOSS_ON_SPAWN | CustomItem::ABLE_TO_ZORA_RANG,
+ randoCheckId,
+ [](Actor* actor, PlayState* play) {
+ RandoSaveCheck& randoSaveCheck = RANDO_SAVE_CHECKS[CUSTOM_ITEM_PARAM];
+ randoSaveCheck.eligible = true;
+ },
+ [](Actor* actor, PlayState* play) {
+ auto& randoSaveCheck = RANDO_SAVE_CHECKS[CUSTOM_ITEM_PARAM];
+ RandoItemId randoItemId = Rando::ConvertItem(randoSaveCheck.randoItemId);
+ Matrix_Scale(30.0f, 30.0f, 30.0f, MTXMODE_APPLY);
+ Rando::DrawItem(Rando::ConvertItem(randoSaveCheck.randoItemId, (RandoCheckId)CUSTOM_ITEM_PARAM), actor);
+ });
+}
+
+void Rando::ActorBehavior::InitObjGrassBehavior() {
+ COND_VB_SHOULD(VB_GRASS_DROP_COLLECTIBLE, IS_RANDO, {
+ auto actorId = static_cast<ActorId>(va_arg(args, int32_t));
+ ObjGrassElement* grassElemActor;
+ EnKusa* kusaActor;
+ ObjGrassCarry* grassCarryActor;
+ Vec3f grassIdPos = gZeroVec3f;
+ Vec3f collectiblePos = gZeroVec3f;
+
+ if (actorId == ACTOR_OBJ_GRASS) {
+ grassElemActor = va_arg(args, ObjGrassElement*);
+ grassIdPos = grassElemActor->pos;
+ collectiblePos = grassIdPos;
+ } else if (actorId == ACTOR_EN_KUSA) {
+ kusaActor = va_arg(args, EnKusa*);
+ grassIdPos = kusaActor->actor.home.pos;
+ collectiblePos = kusaActor->actor.world.pos;
+ } else if (actorId == ACTOR_OBJ_GRASS_CARRY) {
+ grassCarryActor = va_arg(args, ObjGrassCarry*);
+ grassIdPos = grassCarryActor->grassElem->pos;
+ collectiblePos = grassCarryActor->actor.world.pos;
+ }
+
+ RandoCheckId randoCheckId = IdentifyGrass(grassIdPos);
+ if (randoCheckId == RC_UNKNOWN) {
+ return;
+ }
+
+ SpawnGrassDrop(collectiblePos, randoCheckId);
+ *should = false;
+ });
+}
diff --git a/mm/2s2h/Rando/CheckTracker/CheckTracker.cpp b/mm/2s2h/Rando/CheckTracker/CheckTracker.cpp
index d1f33e607..6a6b43e54 100644
--- a/mm/2s2h/Rando/CheckTracker/CheckTracker.cpp
+++ b/mm/2s2h/Rando/CheckTracker/CheckTracker.cpp
@@ -14,6 +14,7 @@
#include "assets/archives/icon_item_24_static/icon_item_24_static_yar.h"
#include "assets/archives/schedule_dma_static/schedule_dma_static_yar.h"
#include "assets/interface/icon_item_field_static/icon_item_field_static.h"
+#include "assets/objects/gameplay_keep/gameplay_keep.h"
extern "C" {
s16 Play_GetOriginalSceneId(s16 sceneId);
@@ -69,6 +70,7 @@ std::vector<const char*> checkTypeIconList = {
/*RCTYPE_COW*/ gItemIconRomaniMaskTex,
/*RCTYPE_CRATE*/ gCrateTrackerIcon,
/*RCTYPE_FREESTANDING*/ gRupeeCounterIconTex,
+ /*RCTYPE_GRASS*/ gameplay_keep_Tex_053140,
/*RCTYPE_HEART*/ gQuestIconPieceOfHeartTex,
/*RCTYPE_MINIGAME*/ gArcheryScoreIconTex,
/*RCTYPE_NPC*/ gItemIconBombersNotebookTex,
diff --git a/mm/2s2h/Rando/Logic/Regions/Central.cpp b/mm/2s2h/Rando/Logic/Regions/Central.cpp
index 650d62f91..bed629d15 100644
--- a/mm/2s2h/Rando/Logic/Regions/Central.cpp
+++ b/mm/2s2h/Rando/Logic/Regions/Central.cpp
@@ -125,6 +125,9 @@ static RegisterShipInitFunc initFunc([]() {
CHECK(RC_CLOCK_TOWN_LAUNDRY_FREESTANDING_RUPEE_03, true),
CHECK(RC_CLOCK_TOWN_LAUNDRY_GURU_GURU, true),
CHECK(RC_CLOCK_TOWN_LAUNDRY_SMALL_CRATE, true),
+ CHECK(RC_CLOCK_TOWN_LAUNDRY_POOL_GRASS_01, true),
+ CHECK(RC_CLOCK_TOWN_LAUNDRY_POOL_GRASS_02, true),
+ CHECK(RC_CLOCK_TOWN_LAUNDRY_POOL_GRASS_03, true),
},
.exits = { // TO FROM
EXIT(ENTRANCE(SOUTH_CLOCK_TOWN, 6), ENTRANCE(LAUNDRY_POOL, 0), true),
@@ -308,171 +311,6 @@ static RegisterShipInitFunc initFunc([]() {
EXIT(ENTRANCE(WEST_CLOCK_TOWN, 3), ENTRANCE(SWORDMANS_SCHOOL, 0), true),
},
};
- Regions[RR_TERMINA_FIELD_BEFORE_GREAT_BAY_COAST] = RandoRegion{ .name = "Before Great Bay Coast", .sceneId = SCENE_00KEIKOKU,
- .exits = { // TO FROM
- EXIT(ENTRANCE(GREAT_BAY_COAST, 0), ENTRANCE(TERMINA_FIELD, 2), true),
- },
- .connections = {
- CONNECTION(RR_TERMINA_FIELD, CAN_PLAY_SONG(EPONA)),
- },
- };
- Regions[RR_TERMINA_FIELD_BEFORE_PATH_TO_MOUNTAIN_VILLAGE] = RandoRegion{ .sceneId = SCENE_00KEIKOKU,
- .exits = { // TO FROM
- EXIT(ENTRANCE(PATH_TO_MOUNTAIN_VILLAGE, 0), ENTRANCE(TERMINA_FIELD, 3), true),
- },
- .connections = {
- CONNECTION(RR_TERMINA_FIELD, HAS_ITEM(ITEM_BOW)),
- },
- };
- Regions[RR_TERMINA_FIELD_BIO_BABA_GROTTO] = RandoRegion{ .name = "Termina Field Bio Baba", .sceneId = SCENE_KAKUSIANA,
- .checks = {
- CHECK(RC_TERMINA_FIELD_BIO_BABA_GROTTO, CAN_BE_ZORA),
- },
- .exits = { // TO FROM
- EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 11), true), // TODO: Grotto mapping
- },
- };
- Regions[RR_TERMINA_FIELD_COW_GROTTO] = RandoRegion{ .name = "Termina Field Cow", .sceneId = SCENE_KAKUSIANA,
- .checks = {
- CHECK(RC_TERMINA_FIELD_COW_BACK, CAN_PLAY_SONG(EPONA)),
- CHECK(RC_TERMINA_FIELD_COW_FRONT, CAN_PLAY_SONG(EPONA)),
- },
- .connections = {
- CONNECTION(RR_TERMINA_FIELD, true), // TODO: Grotto mapping
- },
- };
- Regions[RR_TERMINA_FIELD_DODONGO_GROTTO] = RandoRegion{ .name = "Termina Field Dodongo", .sceneId = SCENE_KAKUSIANA,
- .checks = {
- CHECK(RC_TERMINA_FIELD_DODONGO_GROTTO_CHEST, CAN_USE_SWORD || CAN_BE_ZORA || CAN_BE_GORON),
- },
- .exits = { // TO FROM
- EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 7), true), // TODO: Grotto mapping
- },
- };
- Regions[RR_TERMINA_FIELD_GOSSIP_STONE_GROTTO_1] = RandoRegion{ .name = "Termina Field Gossip Stone #1", .sceneId = SCENE_KAKUSIANA,
- .exits = { // TO FROM
- EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 1), true), // TODO: Grotto mapping
- },
- .events = {
- // TODO: gSaveContext.save.saveInfo.unk_EA0 for gossip stone check
- },
- };
- Regions[RR_TERMINA_FIELD_GOSSIP_STONE_GROTTO_2] = RandoRegion{ .name = "Termina Field Gossip Stone #2", .sceneId = SCENE_KAKUSIANA,
- .exits = { // TO FROM
- EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 3), true), // TODO: Grotto mapping
- },
- .events = {
- // TODO: gSaveContext.save.saveInfo.unk_EA0 for gossip stone check
- },
- };
- Regions[RR_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3] = RandoRegion{ .name = "Termina Field Gossip Stone #3", .sceneId = SCENE_KAKUSIANA,
- .checks = {
- CHECK(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO, (CAN_BE_DEKU && CAN_PLAY_SONG(SONATA)) || (CAN_BE_GORON && CAN_PLAY_SONG(LULLABY)) || (CAN_BE_ZORA && CAN_PLAY_SONG(BOSSA_NOVA))),
- },
- .exits = { // TO FROM
- EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 0), true), // TODO: Grotto mapping
- },
- .events = {
- // TODO: gSaveContext.save.saveInfo.unk_EA0 for gossip stone check
- },
- };
- Regions[RR_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4] = RandoRegion{ .name = "Termina Field Gossip Stone #4", .sceneId = SCENE_KAKUSIANA,
- .exits = { // TO FROM
- EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 2), true), // TODO: Grotto mapping
- },
- .events = {
- // TODO: gSaveContext.save.saveInfo.unk_EA0 for gossip stone check
- },
- };
- Regions[RR_TERMINA_FIELD_PEAHAT_GROTTO] = RandoRegion{ .name = "Termina Field Peahat", .sceneId = SCENE_KAKUSIANA,
- .checks = {
- CHECK(RC_TERMINA_FIELD_PEAHAT_GROTTO_CHEST, CAN_USE_SWORD || CAN_BE_ZORA || CAN_BE_GORON),
- },
- .exits = { // TO FROM
- EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 13), true), // TODO: Grotto mapping
- },
- };
- Regions[RR_TERMINA_FIELD_PILLAR_GROTTO] = RandoRegion{ .name = "Termina Field Pillar", .sceneId = SCENE_KAKUSIANA,
- .checks = {
- CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_CHEST, true),
- },
- .connections = {
- CONNECTION(RR_TERMINA_FIELD, true), // TODO: Grotto mapping
- },
- };
- Regions[RR_TERMINA_FIELD_SCRUB_GROTTO] = RandoRegion{ .name = "Termina Field Scrub", .sceneId = SCENE_KAKUSIANA,
- .checks = {
- CHECK(RC_TERMINA_FIELD_GROTTO_SCRUB, CUR_UPG_VALUE(UPG_WALLET) >= 1 && RANDO_EVENTS[RE_TERMINA_FIELD_SCRUB_ENTERED_GROTTO]),
- CHECK(RC_TERMINA_FIELD_SCRUB_LARGE_CRATE, true),
- CHECK(RC_TERMINA_FIELD_SCRUB_POT, true),
- },
- .exits = { // TO FROM
- EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 9), true), // TODO: Grotto mapping
- },
- };
- Regions[RR_TERMINA_FIELD_TALL_GRASS_GROTTO] = RandoRegion{ .name = "Termina Field Tall Grass", .sceneId = SCENE_KAKUSIANA,
- .checks = {
- CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_CHEST, true),
- },
- .connections = {
- CONNECTION(RR_TERMINA_FIELD, true), // TODO: Grotto mapping
- },
- };
- Regions[RR_TERMINA_FIELD] = RandoRegion{ .sceneId = SCENE_00KEIKOKU,
- .checks = {
- CHECK(RC_TERMINA_FIELD_KAMARO_MASK, CAN_PLAY_SONG(HEALING)),
- CHECK(RC_TERMINA_FIELD_POT, CAN_GROW_BEAN_PLANT),
- CHECK(RC_TERMINA_FIELD_TALL_GRASS_CHEST, true),
- CHECK(RC_TERMINA_FIELD_TREE_STUMP_CHEST, CAN_GROW_BEAN_PLANT || HAS_ITEM(ITEM_HOOKSHOT)),
- CHECK(RC_TERMINA_FIELD_WATER_CHEST, CAN_BE_ZORA),
- CHECK(RC_TERMINA_FIELD_FREESTANDING_RUPEE_01, true), // TODO: Fix duplicate item get...
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_01, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_02, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_03, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_04, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_05, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_06, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_07, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_08, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_09, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_10, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_11, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_12, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_13, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_14, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_15, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_16, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_17, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_18, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_19, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_20, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
- },
- .exits = { // TO FROM
- EXIT(ENTRANCE(GROTTOS, 0), ENTRANCE(TERMINA_FIELD, 0), CAN_USE_EXPLOSIVE || CAN_BE_GORON), // TODO: Grotto mapping Gossip Stone #3
- EXIT(ENTRANCE(GROTTOS, 1), ENTRANCE(TERMINA_FIELD, 0), true), // TODO: Grotto mapping Gossip Stone #1
- EXIT(ENTRANCE(GROTTOS, 2), ENTRANCE(TERMINA_FIELD, 0), true), // TODO: Grotto mapping Gossip Stone #4
- EXIT(ENTRANCE(GROTTOS, 3), ENTRANCE(TERMINA_FIELD, 0), true), // TODO: Grotto mapping Gossip Stone #2
- EXIT(ENTRANCE(GROTTOS, 7), ENTRANCE(TERMINA_FIELD, 0), true), // TODO: Grotto mapping Dodongo
- EXIT(ENTRANCE(GROTTOS, 9), ENTRANCE(TERMINA_FIELD, 0), true), // TODO: Grotto mapping Scrub
- EXIT(ENTRANCE(GROTTOS, 11), ENTRANCE(TERMINA_FIELD, 0), CAN_USE_EXPLOSIVE || CAN_BE_GORON), // TODO: Grotto mapping bio baba grotto
- EXIT(ENTRANCE(GROTTOS, 13), ENTRANCE(TERMINA_FIELD, 0), true), // TODO: Grotto mapping peahat grotto
- EXIT(ENTRANCE(WEST_CLOCK_TOWN, 0), ENTRANCE(TERMINA_FIELD, 0), true),
- EXIT(ENTRANCE(ROAD_TO_SOUTHERN_SWAMP, 0), ENTRANCE(TERMINA_FIELD, 1), true),
- EXIT(ENTRANCE(ROAD_TO_IKANA, 0), ENTRANCE(TERMINA_FIELD, 4), true),
- EXIT(ENTRANCE(MILK_ROAD, 0), ENTRANCE(TERMINA_FIELD, 5), true),
- EXIT(ENTRANCE(SOUTH_CLOCK_TOWN, 1), ENTRANCE(TERMINA_FIELD, 6), true),
- EXIT(ENTRANCE(EAST_CLOCK_TOWN, 0), ENTRANCE(TERMINA_FIELD, 7), true),
- EXIT(ENTRANCE(NORTH_CLOCK_TOWN, 0), ENTRANCE(TERMINA_FIELD, 8), true),
- },
- .connections = {
- CONNECTION(RR_TERMINA_FIELD_BEFORE_PATH_TO_MOUNTAIN_VILLAGE, HAS_ITEM(ITEM_BOW)),
- CONNECTION(RR_TERMINA_FIELD_BEFORE_GREAT_BAY_COAST, CAN_PLAY_SONG(EPONA)),
- CONNECTION(RR_ASTRAL_OBSERVATORY_OUTSIDE, CAN_BE_DEKU),
- CONNECTION(RR_TERMINA_FIELD_COW_GROTTO, CAN_USE_EXPLOSIVE), // TODO: Grotto mapping
- CONNECTION(RR_TERMINA_FIELD_PILLAR_GROTTO, true), // TODO: Grotto mapping
- CONNECTION(RR_TERMINA_FIELD_TALL_GRASS_GROTTO, true), // TODO: Grotto mapping
- },
- };
Regions[RR_TOWN_DEKU_PLAYGROUND] = RandoRegion{ .sceneId = SCENE_DEKUTES,
.checks = {
CHECK(RC_DEKU_PLAYGROUND_ALL_DAYS, CAN_BE_DEKU),
diff --git a/mm/2s2h/Rando/Logic/Regions/East.cpp b/mm/2s2h/Rando/Logic/Regions/East.cpp
index 829f0f039..00cab380b 100644
--- a/mm/2s2h/Rando/Logic/Regions/East.cpp
+++ b/mm/2s2h/Rando/Logic/Regions/East.cpp
@@ -113,6 +113,20 @@ static RegisterShipInitFunc initFunc([]() {
Regions[RR_IKANA_CANYON_GROTTO] = RandoRegion{ .name = "Ikana Canyon Grotto", .sceneId = SCENE_KAKUSIANA,
.checks = {
CHECK(RC_IKANA_CANYON_GROTTO_CHEST, true),
+ CHECK(RC_IKANA_CANYON_GROTTO_GRASS_01, true),
+ CHECK(RC_IKANA_CANYON_GROTTO_GRASS_02, true),
+ CHECK(RC_IKANA_CANYON_GROTTO_GRASS_03, true),
+ CHECK(RC_IKANA_CANYON_GROTTO_GRASS_04, true),
+ CHECK(RC_IKANA_CANYON_GROTTO_GRASS_05, true),
+ CHECK(RC_IKANA_CANYON_GROTTO_GRASS_06, true),
+ CHECK(RC_IKANA_CANYON_GROTTO_GRASS_07, true),
+ CHECK(RC_IKANA_CANYON_GROTTO_GRASS_08, true),
+ CHECK(RC_IKANA_CANYON_GROTTO_GRASS_09, true),
+ CHECK(RC_IKANA_CANYON_GROTTO_GRASS_10, true),
+ CHECK(RC_IKANA_CANYON_GROTTO_GRASS_11, true),
+ CHECK(RC_IKANA_CANYON_GROTTO_GRASS_12, true),
+ CHECK(RC_IKANA_CANYON_GROTTO_GRASS_13, true),
+ CHECK(RC_IKANA_CANYON_GROTTO_GRASS_14, true),
},
.connections = {
CONNECTION(RR_IKANA_CANYON_LOWER, true), // TODO: Grotto mapping
@@ -173,12 +187,37 @@ static RegisterShipInitFunc initFunc([]() {
Regions[RR_IKANA_GRAVEYARD_GROTTO] = RandoRegion{ .name = "Ikana Graveyard Grotto", .sceneId = SCENE_KAKUSIANA,
.checks = {
CHECK(RC_IKANA_GRAVEYARD_GROTTO, true),
+ CHECK(RC_IKANA_GRAVEYARD_GROTTO_GRASS_01, true),
+ CHECK(RC_IKANA_GRAVEYARD_GROTTO_GRASS_02, true),
+ CHECK(RC_IKANA_GRAVEYARD_GROTTO_GRASS_03, true),
+ CHECK(RC_IKANA_GRAVEYARD_GROTTO_GRASS_04, true),
+ CHECK(RC_IKANA_GRAVEYARD_GROTTO_GRASS_05, true),
+ CHECK(RC_IKANA_GRAVEYARD_GROTTO_GRASS_06, true),
+ CHECK(RC_IKANA_GRAVEYARD_GROTTO_GRASS_07, true),
+ CHECK(RC_IKANA_GRAVEYARD_GROTTO_GRASS_08, true),
+ CHECK(RC_IKANA_GRAVEYARD_GROTTO_GRASS_09, true),
+ CHECK(RC_IKANA_GRAVEYARD_GROTTO_GRASS_10, true),
+ CHECK(RC_IKANA_GRAVEYARD_GROTTO_GRASS_11, true),
+ CHECK(RC_IKANA_GRAVEYARD_GROTTO_GRASS_12, true),
+ CHECK(RC_IKANA_GRAVEYARD_GROTTO_GRASS_13, true),
+ CHECK(RC_IKANA_GRAVEYARD_GROTTO_GRASS_14, true),
},
.connections = {
CONNECTION(RR_IKANA_GRAVEYARD_LOWER, true), // TODO: Grotto mapping
},
};
Regions[RR_IKANA_GRAVEYARD_LOWER] = RandoRegion{ .name = "Lower", .sceneId = SCENE_BOTI,
+ .checks = {
+ CHECK(RC_IKANA_GRAVEYARD_GRASS_01, true),
+ CHECK(RC_IKANA_GRAVEYARD_GRASS_02, true),
+ CHECK(RC_IKANA_GRAVEYARD_GRASS_03, true),
+ CHECK(RC_IKANA_GRAVEYARD_GRASS_04, true),
+ CHECK(RC_IKANA_GRAVEYARD_GRASS_05, true),
+ CHECK(RC_IKANA_GRAVEYARD_GRASS_06, true),
+ CHECK(RC_IKANA_GRAVEYARD_GRASS_07, true),
+ CHECK(RC_IKANA_GRAVEYARD_GRASS_08, true),
+ CHECK(RC_IKANA_GRAVEYARD_GRASS_09, true),
+ },
.exits = { // TO FROM
EXIT(ENTRANCE(ROAD_TO_IKANA, 2), ENTRANCE(IKANA_GRAVEYARD, 0), true),
EXIT(ENTRANCE(DAMPES_HOUSE, 0), ONE_WAY_EXIT, HAS_ITEM(ITEM_MASK_CAPTAIN)), // Day 3 hole
@@ -253,6 +292,20 @@ static RegisterShipInitFunc initFunc([]() {
Regions[RR_ROAD_TO_IKANA_GROTTO] = RandoRegion{ .name = "Road to Ikana Grotto", .sceneId = SCENE_KAKUSIANA,
.checks = {
CHECK(RC_ROAD_TO_IKANA_GROTTO_CHEST, true),
+ CHECK(RC_ROAD_TO_IKANA_GROTTO_GRASS_01, true),
+ CHECK(RC_ROAD_TO_IKANA_GROTTO_GRASS_02, true),
+ CHECK(RC_ROAD_TO_IKANA_GROTTO_GRASS_03, true),
+ CHECK(RC_ROAD_TO_IKANA_GROTTO_GRASS_04, true),
+ CHECK(RC_ROAD_TO_IKANA_GROTTO_GRASS_05, true),
+ CHECK(RC_ROAD_TO_IKANA_GROTTO_GRASS_06, true),
+ CHECK(RC_ROAD_TO_IKANA_GROTTO_GRASS_07, true),
+ CHECK(RC_ROAD_TO_IKANA_GROTTO_GRASS_08, true),
+ CHECK(RC_ROAD_TO_IKANA_GROTTO_GRASS_09, true),
+ CHECK(RC_ROAD_TO_IKANA_GROTTO_GRASS_10, true),
+ CHECK(RC_ROAD_TO_IKANA_GROTTO_GRASS_11, true),
+ CHECK(RC_ROAD_TO_IKANA_GROTTO_GRASS_12, true),
+ CHECK(RC_ROAD_TO_IKANA_GROTTO_GRASS_13, true),
+ CHECK(RC_ROAD_TO_IKANA_GROTTO_GRASS_14, true),
},
.connections = {
CONNECTION(RR_ROAD_TO_IKANA_FIELD_SIDE, true), // TODO: Grotto mapping
diff --git a/mm/2s2h/Rando/Logic/Regions/MilkRoad.cpp b/mm/2s2h/Rando/Logic/Regions/MilkRoad.cpp
new file mode 100644
index 000000000..420be8e31
--- /dev/null
+++ b/mm/2s2h/Rando/Logic/Regions/MilkRoad.cpp
@@ -0,0 +1,186 @@
+#include "2s2h/GameInteractor/GameInteractor.h"
+#include "2s2h/ShipInit.hpp"
+
+#include "2s2h/Rando/Logic/Logic.h"
+
+using namespace Rando::Logic;
+
+// clang-format off
+static RegisterShipInitFunc initFunc([]() {
+ Regions[RR_CUCCO_SHACK] = RandoRegion{ .sceneId = SCENE_F01C,
+ .checks = {
+ CHECK(RC_ROMANI_RANCH_GROG, HAS_ITEM(ITEM_MASK_BREMEN)),
+ CHECK(RC_CUCCO_SHACK_LARGE_CRATE_01, true),
+ CHECK(RC_CUCCO_SHACK_LARGE_CRATE_02, true),
+ CHECK(RC_CUCCO_SHACK_LARGE_CRATE_03, true),
+ },
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(ROMANI_RANCH, 4), ENTRANCE(CUCCO_SHACK, 0), true),
+ },
+ };
+ Regions[RR_DOGGY_RACETRACK] = RandoRegion{ .sceneId = SCENE_F01_B,
+ .checks = {
+ // TODO: Trick: Jumpslash to clip through (similar to Clock Town Straw).
+ // Zora can just climb up, adding it to logic for now but if someone wants to make it a trick later feel free.
+ CHECK(RC_DOGGY_RACETRACK_CHEST, HAS_ITEM(ITEM_HOOKSHOT) || CAN_GROW_BEAN_PLANT || CAN_BE_ZORA),
+ CHECK(RC_DOGGY_RACETRACK_PIECE_OF_HEART, HAS_ITEM(ITEM_MASK_TRUTH)),
+ CHECK(RC_DOGGY_RACETRACK_POT_01, true),
+ CHECK(RC_DOGGY_RACETRACK_POT_02, true),
+ CHECK(RC_DOGGY_RACETRACK_POT_03, true),
+ CHECK(RC_DOGGY_RACETRACK_POT_04, true),
+ },
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(ROMANI_RANCH, 5), ENTRANCE(DOGGY_RACETRACK, 0), true),
+ },
+ };
+ Regions[RR_GORMAN_TRACK] = RandoRegion{ .sceneId = SCENE_KOEPONARACE,
+ .checks = {
+ CHECK(RC_GORMAN_MILK_PURCHASE, CAN_AFFORD(RC_GORMAN_MILK_PURCHASE)),
+ // TODO : Also apparently can be obtained using a trick with Goron mask and Bombs. Add trick later here
+ CHECK(RC_GORMAN_TRACK_LARGE_CRATE, RANDO_EVENTS[RE_COWS_FROM_ALIENS]), // Night 2 only, after defending cows from aliens.
+ CHECK(RC_GORMAN_TRACK_GARO_MASK, CAN_PLAY_SONG(EPONA)),
+ CHECK(RC_GORMAN_TRACK_GRASS_01, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_02, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_03, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_04, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_05, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_06, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_07, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_08, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_09, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_10, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_11, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_12, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_13, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_14, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_15, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_16, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_17, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_18, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_19, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_20, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_21, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_22, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_23, true),
+ CHECK(RC_GORMAN_TRACK_GRASS_24, true),
+ },
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(MILK_ROAD, 2), ENTRANCE(GORMAN_TRACK, 3), CAN_PLAY_SONG(EPONA)),
+ EXIT(ENTRANCE(MILK_ROAD, 3), ENTRANCE(GORMAN_TRACK, 0), true),
+ },
+ };
+ Regions[RR_MILK_ROAD] = RandoRegion{ .sceneId = SCENE_ROMANYMAE,
+ .checks = {
+ CHECK(RC_KEATON_QUIZ, HAS_ITEM(ITEM_MASK_KEATON)),
+ CHECK(RC_MILK_ROAD_OWL_STATUE, CAN_USE_SWORD),
+ CHECK(RC_MILK_ROAD_TINGLE_MAP_01, CAN_USE_PROJECTILE && CAN_AFFORD(RC_MILK_ROAD_TINGLE_MAP_01)),
+ CHECK(RC_MILK_ROAD_TINGLE_MAP_02, CAN_USE_PROJECTILE && CAN_AFFORD(RC_MILK_ROAD_TINGLE_MAP_02)),
+ },
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(TERMINA_FIELD, 5), ENTRANCE(MILK_ROAD, 0), true),
+ EXIT(ENTRANCE(ROMANI_RANCH, 0), ENTRANCE(MILK_ROAD, 1), true),
+ EXIT(ENTRANCE(GORMAN_TRACK, 3), ENTRANCE(MILK_ROAD, 2), CAN_PLAY_SONG(EPONA)),
+ EXIT(ENTRANCE(GORMAN_TRACK, 0), ENTRANCE(MILK_ROAD, 3), true),
+ },
+ .events = {
+ EVENT(RE_ACCESS_PICTOGRAPH_TINGLE, HAS_ITEM(ITEM_PICTOGRAPH_BOX)),
+ },
+ .oneWayEntrances = {
+ ENTRANCE(MILK_ROAD, 4), // From Song of Soaring
+ }
+ };
+ Regions[RR_RANCH_BARN] = RandoRegion{ .sceneId = SCENE_OMOYA,
+ .checks = {
+ CHECK(RC_ROMANI_RANCH_BARN_COW_LEFT, CAN_PLAY_SONG(EPONA) && CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG)),
+ CHECK(RC_ROMANI_RANCH_BARN_COW_MIDDLE, CAN_PLAY_SONG(EPONA) && CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG)),
+ CHECK(RC_ROMANI_RANCH_BARN_COW_RIGHT, CAN_PLAY_SONG(EPONA) && CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG))
+ },
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(ROMANI_RANCH, 2), ENTRANCE(RANCH_HOUSE, 0), true),
+ },
+ };
+ Regions[RR_RANCH_HOUSE] = RandoRegion{ .sceneId = SCENE_OMOYA,
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(ROMANI_RANCH, 3), ENTRANCE(RANCH_HOUSE, 1), true),
+ },
+ };
+ Regions[RR_ROMANI_RANCH] = RandoRegion{ .sceneId = SCENE_F01,
+ .checks = {
+ CHECK(RC_ROMANI_RANCH_ALIENS, HAS_ITEM(ITEM_BOW) && CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG)),
+ CHECK(RC_ROMANI_RANCH_EPONAS_SONG, CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG)),
+ CHECK(RC_ROMANI_RANCH_FIELD_COW_ENTRANCE, CAN_PLAY_SONG(EPONA) && CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG)),
+ CHECK(RC_ROMANI_RANCH_FIELD_COW_NEAR_HOUSE_BACK, CAN_PLAY_SONG(EPONA) && CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG)),
+ CHECK(RC_ROMANI_RANCH_FIELD_COW_NEAR_HOUSE_FRONT, CAN_PLAY_SONG(EPONA) && CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG)),
+ CHECK(RC_ROMANI_RANCH_FIELD_LARGE_CRATE, true),
+ CHECK(RC_CREMIA_ESCORT, HAS_ITEM(ITEM_BOW) && RANDO_EVENTS[RE_COWS_FROM_ALIENS]),
+ CHECK(RC_ROMANI_RANCH_GRASS_01, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_02, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_03, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_04, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_05, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_06, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_07, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_08, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_09, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_10, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_11, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_12, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_13, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_14, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_15, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_16, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_17, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_18, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_19, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_20, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_21, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_22, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_23, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_24, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_25, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_26, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_27, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_28, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_29, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_30, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_31, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_32, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_33, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_34, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_35, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_36, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_37, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_38, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_39, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_40, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_41, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_42, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_43, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_44, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_45, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_46, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_47, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_48, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_49, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_50, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_51, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_52, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_53, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_54, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_55, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_56, true),
+ CHECK(RC_ROMANI_RANCH_GRASS_57, true),
+ },
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(MILK_ROAD, 1), ENTRANCE(ROMANI_RANCH, 0), true),
+ EXIT(ENTRANCE(RANCH_HOUSE, 0), ENTRANCE(ROMANI_RANCH, 2), true), // Barn
+ EXIT(ENTRANCE(RANCH_HOUSE, 1), ENTRANCE(ROMANI_RANCH, 3), true), // House
+ EXIT(ENTRANCE(CUCCO_SHACK, 0), ENTRANCE(ROMANI_RANCH, 4), true),
+ EXIT(ENTRANCE(DOGGY_RACETRACK, 0), ENTRANCE(ROMANI_RANCH, 5), true),
+ },
+ .events = {
+ EVENT(RE_COWS_FROM_ALIENS, CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG) && HAS_ITEM(ITEM_BOW)),
+ },
+ };
+}, {});
+// clang-format on
diff --git a/mm/2s2h/Rando/Logic/Regions/North.cpp b/mm/2s2h/Rando/Logic/Regions/North.cpp
index 57d8d1bc9..70849ea0b 100644
--- a/mm/2s2h/Rando/Logic/Regions/North.cpp
+++ b/mm/2s2h/Rando/Logic/Regions/North.cpp
@@ -146,7 +146,31 @@ static RegisterShipInitFunc initFunc([]() {
.checks = {
CHECK(RC_LONE_PEAK_SHRINE_BOULDER_CHEST, CAN_USE_EXPLOSIVE),
CHECK(RC_LONE_PEAK_SHRINE_INVISIBLE_CHEST, HAS_ITEM(ITEM_LENS_OF_TRUTH) && HAS_MAGIC),
- CHECK(RC_LONE_PEAK_SHRINE_LENS_CHEST, true)
+ CHECK(RC_LONE_PEAK_SHRINE_LENS_CHEST, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_01, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_02, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_03, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_04, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_05, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_06, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_07, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_08, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_09, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_10, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_11, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_12, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_13, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_14, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_15, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_16, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_17, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_18, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_19, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_20, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_21, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_22, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_23, true),
+ CHECK(RC_LONE_PEAK_SHRINE_GRASS_24, true),
},
.exits = { // TO FROM
EXIT(ENTRANCE(GORON_VILLAGE_WINTER, 3), ENTRANCE(GROTTOS, 16), true)
@@ -164,6 +188,20 @@ static RegisterShipInitFunc initFunc([]() {
Regions[RR_MOUNTAIN_VILLAGE_TUNNEL_GROTTO] = RandoRegion{ .name = "Mountain Village Tunnel Grotto", .sceneId = SCENE_KAKUSIANA,
.checks = {
CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_CHEST, true),
+ CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_01, true),
+ CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_02, true),
+ CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_03, true),
+ CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_04, true),
+ CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_05, true),
+ CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_06, true),
+ CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_07, true),
+ CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_08, true),
+ CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_09, true),
+ CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_10, true),
+ CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_11, true),
+ CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_12, true),
+ CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_13, true),
+ CHECK(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_14, true),
},
.connections = {
CONNECTION(RR_MOUNTAIN_VILLAGE, true), // TODO: Grotto mapping
@@ -179,6 +217,36 @@ static RegisterShipInitFunc initFunc([]() {
CHECK(RC_MOUNTAIN_VILLAGE_WINTER_POT, CAN_HOOK_SCARECROW),
CHECK(RC_MOUNTAIN_VILLAGE_SPRING_POT, CAN_HOOK_SCARECROW && RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
CHECK(RC_MOUNTAIN_VILLAGE_SPRING_FREESTANDING_RUPEE_01, CAN_BE_GORON && RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_01, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_02, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_03, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_04, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_05, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_06, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_07, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_08, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_09, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_10, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_11, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_12, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_13, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_14, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_15, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_16, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_17, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_18, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_19, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_20, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_21, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_22, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_23, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_24, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_25, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_26, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_27, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_28, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_29, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_30, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
CHECK(RC_MOUNTAIN_VILLAGE_LARGE_SNOWBALL_01, CanKillEnemy(ACTOR_OBJ_SNOWBALL)),
CHECK(RC_MOUNTAIN_VILLAGE_LARGE_SNOWBALL_02, CanKillEnemy(ACTOR_OBJ_SNOWBALL)),
CHECK(RC_MOUNTAIN_VILLAGE_LARGE_SNOWBALL_03, CanKillEnemy(ACTOR_OBJ_SNOWBALL)),
@@ -225,6 +293,20 @@ static RegisterShipInitFunc initFunc([]() {
Regions[RR_PATH_TO_GORON_VILLAGE_RAMP_GROTTO] = RandoRegion{ .name = "Path to Goron Village Ramp Grotto", .sceneId = SCENE_KAKUSIANA,
.checks = {
CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_CHEST, true),
+ CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_01, true),
+ CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_02, true),
+ CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_03, true),
+ CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_04, true),
+ CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_05, true),
+ CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_06, true),
+ CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_07, true),
+ CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_08, true),
+ CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_09, true),
+ CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_10, true),
+ CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_11, true),
+ CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_12, true),
+ CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_13, true),
+ CHECK(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_14, true),
},
.connections = {
CONNECTION(RR_PATH_TO_GORON_VILLAGE, true), // TODO: Grotto mapping
@@ -242,6 +324,18 @@ static RegisterShipInitFunc initFunc([]() {
CHECK(RC_TWIN_ISLANDS_FREESTANDING_RUPEE_02, CAN_BE_ZORA && RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
CHECK(RC_TWIN_ISLANDS_FREESTANDING_RUPEE_03, CAN_BE_ZORA && RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
CHECK(RC_TWIN_ISLANDS_FREESTANDING_RUPEE_04, CAN_BE_ZORA && RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_TWIN_ISLANDS_SPRING_GRASS_01, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_TWIN_ISLANDS_SPRING_GRASS_02, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_TWIN_ISLANDS_SPRING_GRASS_03, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_TWIN_ISLANDS_SPRING_GRASS_04, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_TWIN_ISLANDS_SPRING_GRASS_05, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_TWIN_ISLANDS_SPRING_GRASS_06, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_TWIN_ISLANDS_SPRING_GRASS_07, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_TWIN_ISLANDS_SPRING_GRASS_08, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_TWIN_ISLANDS_SPRING_GRASS_09, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_TWIN_ISLANDS_SPRING_GRASS_10, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_TWIN_ISLANDS_SPRING_GRASS_11, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
+ CHECK(RC_TWIN_ISLANDS_SPRING_GRASS_12, RANDO_EVENTS[RE_CLEARED_SNOWHEAD_TEMPLE]),
CHECK(RC_TWIN_ISLANDS_LARGE_SNOWBALL_01, CanKillEnemy(ACTOR_OBJ_SNOWBALL)),
CHECK(RC_TWIN_ISLANDS_LARGE_SNOWBALL_02, CanKillEnemy(ACTOR_OBJ_SNOWBALL)),
CHECK(RC_TWIN_ISLANDS_LARGE_SNOWBALL_03, CanKillEnemy(ACTOR_OBJ_SNOWBALL)),
@@ -315,6 +409,20 @@ static RegisterShipInitFunc initFunc([]() {
Regions[RR_PATH_TO_SNOWHEAD_GROTTO] = RandoRegion{ .name = "Path To Snowhead Grotto", .sceneId = SCENE_KAKUSIANA,
.checks = {
CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_CHEST, true),
+ CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_01, true),
+ CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_02, true),
+ CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_03, true),
+ CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_04, true),
+ CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_05, true),
+ CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_06, true),
+ CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_07, true),
+ CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_08, true),
+ CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_09, true),
+ CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_10, true),
+ CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_11, true),
+ CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_12, true),
+ CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_13, true),
+ CHECK(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_14, true),
},
.connections = {
CONNECTION(RR_PATH_TO_SNOWHEAD_UPPER, true), // TODO: Grotto mapping
diff --git a/mm/2s2h/Rando/Logic/Regions/South.cpp b/mm/2s2h/Rando/Logic/Regions/South.cpp
index be476a814..e78b5ee16 100644
--- a/mm/2s2h/Rando/Logic/Regions/South.cpp
+++ b/mm/2s2h/Rando/Logic/Regions/South.cpp
@@ -7,17 +7,6 @@ using namespace Rando::Logic;
// clang-format off
static RegisterShipInitFunc initFunc([]() {
- Regions[RR_CUCCO_SHACK] = RandoRegion{ .sceneId = SCENE_F01C,
- .checks = {
- CHECK(RC_ROMANI_RANCH_GROG, HAS_ITEM(ITEM_MASK_BREMEN)),
- CHECK(RC_CUCCO_SHACK_LARGE_CRATE_01, true),
- CHECK(RC_CUCCO_SHACK_LARGE_CRATE_02, true),
- CHECK(RC_CUCCO_SHACK_LARGE_CRATE_03, true),
- },
- .exits = { // TO FROM
- EXIT(ENTRANCE(ROMANI_RANCH, 4), ENTRANCE(CUCCO_SHACK, 0), true),
- },
- };
Regions[RR_DEKU_KINGS_CHAMBER_HOLDING_CELL] = RandoRegion{ .name = "Holding Cell", .sceneId = SCENE_DEKU_KING,
.checks = {
CHECK(RC_DEKU_KINGS_CHAMBER_MONKEY, CAN_BE_DEKU && HAS_ITEM(ITEM_OCARINA_OF_TIME)),
@@ -38,6 +27,18 @@ static RegisterShipInitFunc initFunc([]() {
Regions[RR_DEKU_PALACE_BEAN_SALESMAN_GROTTO] = RandoRegion{ .name = "Deku Palace Bean Salesman Grotto", .sceneId = SCENE_KAKUSIANA,
.checks = {
CHECK(RC_DEKU_PALACE_GROTTO_CHEST, CAN_GROW_BEAN_PLANT || HAS_ITEM(ITEM_HOOKSHOT)),
+ CHECK(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_01, true),
+ CHECK(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_02, true),
+ CHECK(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_03, true),
+ CHECK(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_04, true),
+ CHECK(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_05, true),
+ CHECK(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_06, true),
+ CHECK(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_07, true),
+ CHECK(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_08, true),
+ CHECK(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_09, true),
+ CHECK(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_10, true),
+ CHECK(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_11, true),
+ CHECK(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_12, true),
// TODO: Bean salesman check
},
.exits = { // TO FROM
@@ -141,33 +142,6 @@ static RegisterShipInitFunc initFunc([]() {
CONNECTION(RR_DEKU_SHRINE_ENTRANCE, RANDO_EVENTS[RE_RETURN_DEKU_PRINCESS]),
},
};
- Regions[RR_DOGGY_RACETRACK] = RandoRegion{ .sceneId = SCENE_F01_B,
- .checks = {
- // TODO: Trick: Jumpslash to clip through (similar to Clock Town Straw).
- // Zora can just climb up, adding it to logic for now but if someone wants to make it a trick later feel free.
- CHECK(RC_DOGGY_RACETRACK_CHEST, HAS_ITEM(ITEM_HOOKSHOT) || CAN_GROW_BEAN_PLANT || CAN_BE_ZORA),
- CHECK(RC_DOGGY_RACETRACK_PIECE_OF_HEART, HAS_ITEM(ITEM_MASK_TRUTH)),
- CHECK(RC_DOGGY_RACETRACK_POT_01, true),
- CHECK(RC_DOGGY_RACETRACK_POT_02, true),
- CHECK(RC_DOGGY_RACETRACK_POT_03, true),
- CHECK(RC_DOGGY_RACETRACK_POT_04, true),
- },
- .exits = { // TO FROM
- EXIT(ENTRANCE(ROMANI_RANCH, 5), ENTRANCE(DOGGY_RACETRACK, 0), true),
- },
- };
- Regions[RR_GORMAN_TRACK] = RandoRegion{ .sceneId = SCENE_KOEPONARACE,
- .checks = {
- CHECK(RC_GORMAN_MILK_PURCHASE, CAN_AFFORD(RC_GORMAN_MILK_PURCHASE)),
- // TODO : Also apparently can be obtained using a trick with Goron mask and Bombs. Add trick later here
- CHECK(RC_GORMAN_TRACK_LARGE_CRATE, RANDO_EVENTS[RE_COWS_FROM_ALIENS]), // Night 2 only, after defending cows from aliens.
- CHECK(RC_GORMAN_TRACK_GARO_MASK, CAN_PLAY_SONG(EPONA)),
- },
- .exits = { // TO FROM
- EXIT(ENTRANCE(MILK_ROAD, 2), ENTRANCE(GORMAN_TRACK, 3), CAN_PLAY_SONG(EPONA)),
- EXIT(ENTRANCE(MILK_ROAD, 3), ENTRANCE(GORMAN_TRACK, 0), true),
- },
- };
Regions[RR_MAGIC_HAGS_POTION_SHOP] = RandoRegion{ .sceneId = SCENE_WITCH_SHOP,
.checks = {
CHECK(RC_HAGS_POTION_SHOP_FREESTANDING_RUPEE, true),
@@ -184,44 +158,23 @@ static RegisterShipInitFunc initFunc([]() {
EVENT(RE_ACCESS_RED_POTION_REFILL, true),
},
};
- Regions[RR_MILK_ROAD] = RandoRegion{ .sceneId = SCENE_ROMANYMAE,
- .checks = {
- CHECK(RC_KEATON_QUIZ, HAS_ITEM(ITEM_MASK_KEATON)),
- CHECK(RC_MILK_ROAD_OWL_STATUE, CAN_USE_SWORD),
- CHECK(RC_MILK_ROAD_TINGLE_MAP_01, CAN_USE_PROJECTILE && CAN_AFFORD(RC_MILK_ROAD_TINGLE_MAP_01)),
- CHECK(RC_MILK_ROAD_TINGLE_MAP_02, CAN_USE_PROJECTILE && CAN_AFFORD(RC_MILK_ROAD_TINGLE_MAP_02)),
- },
- .exits = { // TO FROM
- EXIT(ENTRANCE(TERMINA_FIELD, 5), ENTRANCE(MILK_ROAD, 0), true),
- EXIT(ENTRANCE(ROMANI_RANCH, 0), ENTRANCE(MILK_ROAD, 1), true),
- EXIT(ENTRANCE(GORMAN_TRACK, 3), ENTRANCE(MILK_ROAD, 2), CAN_PLAY_SONG(EPONA)),
- EXIT(ENTRANCE(GORMAN_TRACK, 0), ENTRANCE(MILK_ROAD, 3), true),
- },
- .events = {
- EVENT(RE_ACCESS_PICTOGRAPH_TINGLE, HAS_ITEM(ITEM_PICTOGRAPH_BOX)),
- },
- .oneWayEntrances = {
- ENTRANCE(MILK_ROAD, 4), // From Song of Soaring
- }
- };
- Regions[RR_RANCH_BARN] = RandoRegion{ .sceneId = SCENE_OMOYA,
- .checks = {
- CHECK(RC_ROMANI_RANCH_BARN_COW_LEFT, CAN_PLAY_SONG(EPONA) && CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG)),
- CHECK(RC_ROMANI_RANCH_BARN_COW_MIDDLE, CAN_PLAY_SONG(EPONA) && CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG)),
- CHECK(RC_ROMANI_RANCH_BARN_COW_RIGHT, CAN_PLAY_SONG(EPONA) && CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG))
- },
- .exits = { // TO FROM
- EXIT(ENTRANCE(ROMANI_RANCH, 2), ENTRANCE(RANCH_HOUSE, 0), true),
- },
- };
- Regions[RR_RANCH_HOUSE] = RandoRegion{ .sceneId = SCENE_OMOYA,
- .exits = { // TO FROM
- EXIT(ENTRANCE(ROMANI_RANCH, 3), ENTRANCE(RANCH_HOUSE, 1), true),
- },
- };
Regions[RR_ROAD_TO_SOUTHERN_SWAMP_GROTTO] = RandoRegion{ .name = "Road to Southern Swamp Grotto", .sceneId = SCENE_KAKUSIANA,
.checks = {
CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_CHEST, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_01, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_02, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_03, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_04, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_05, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_06, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_07, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_08, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_09, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_10, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_11, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_12, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_13, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_14, true),
},
.connections = {
CONNECTION(RR_ROAD_TO_SOUTHERN_SWAMP, true), // TODO: Grotto mapping
@@ -232,6 +185,26 @@ static RegisterShipInitFunc initFunc([]() {
CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_PIECE_OF_HEART, CAN_USE_PROJECTILE || HAS_ITEM(ITEM_BOMBCHU)),
CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_TINGLE_MAP_01, CAN_USE_PROJECTILE && CAN_AFFORD(RC_ROAD_TO_SOUTHERN_SWAMP_TINGLE_MAP_01)),
CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_TINGLE_MAP_02, CAN_USE_PROJECTILE && CAN_AFFORD(RC_ROAD_TO_SOUTHERN_SWAMP_TINGLE_MAP_02)),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_01, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_02, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_03, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_04, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_05, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_06, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_07, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_08, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_09, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_10, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_11, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_12, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_13, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_14, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_15, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_16, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_17, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_18, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_19, true),
+ CHECK(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_20, true),
},
.exits = { // TO FROM
EXIT(ENTRANCE(TERMINA_FIELD, 1), ENTRANCE(ROAD_TO_SOUTHERN_SWAMP, 0), true),
@@ -246,30 +219,23 @@ static RegisterShipInitFunc initFunc([]() {
EVENT(RE_ACCESS_SPRING_WATER, true),
},
};
- Regions[RR_ROMANI_RANCH] = RandoRegion{ .sceneId = SCENE_F01,
- .checks = {
- CHECK(RC_ROMANI_RANCH_ALIENS, HAS_ITEM(ITEM_BOW) && CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG)),
- CHECK(RC_ROMANI_RANCH_EPONAS_SONG, CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG)),
- CHECK(RC_ROMANI_RANCH_FIELD_COW_ENTRANCE, CAN_PLAY_SONG(EPONA) && CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG)),
- CHECK(RC_ROMANI_RANCH_FIELD_COW_NEAR_HOUSE_BACK, CAN_PLAY_SONG(EPONA) && CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG)),
- CHECK(RC_ROMANI_RANCH_FIELD_COW_NEAR_HOUSE_FRONT, CAN_PLAY_SONG(EPONA) && CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG)),
- CHECK(RC_ROMANI_RANCH_FIELD_LARGE_CRATE, true),
- CHECK(RC_CREMIA_ESCORT, HAS_ITEM(ITEM_BOW) && RANDO_EVENTS[RE_COWS_FROM_ALIENS]),
- },
- .exits = { // TO FROM
- EXIT(ENTRANCE(MILK_ROAD, 1), ENTRANCE(ROMANI_RANCH, 0), true),
- EXIT(ENTRANCE(RANCH_HOUSE, 0), ENTRANCE(ROMANI_RANCH, 2), true), // Barn
- EXIT(ENTRANCE(RANCH_HOUSE, 1), ENTRANCE(ROMANI_RANCH, 3), true), // House
- EXIT(ENTRANCE(CUCCO_SHACK, 0), ENTRANCE(ROMANI_RANCH, 4), true),
- EXIT(ENTRANCE(DOGGY_RACETRACK, 0), ENTRANCE(ROMANI_RANCH, 5), true),
- },
- .events = {
- EVENT(RE_COWS_FROM_ALIENS, CAN_BE_GORON && HAS_ITEM(ITEM_POWDER_KEG) && HAS_ITEM(ITEM_BOW)),
- },
- };
Regions[RR_SOUTHERN_SWAMP_GROTTO] = RandoRegion{ .name = "Southern Swamp Grotto", .sceneId = SCENE_KAKUSIANA,
.checks = {
CHECK(RC_SOUTHERN_SWAMP_GROTTO_CHEST, true),
+ CHECK(RC_SOUTHERN_SWAMP_GROTTO_GRASS_01, true),
+ CHECK(RC_SOUTHERN_SWAMP_GROTTO_GRASS_02, true),
+ CHECK(RC_SOUTHERN_SWAMP_GROTTO_GRASS_03, true),
+ CHECK(RC_SOUTHERN_SWAMP_GROTTO_GRASS_04, true),
+ CHECK(RC_SOUTHERN_SWAMP_GROTTO_GRASS_05, true),
+ CHECK(RC_SOUTHERN_SWAMP_GROTTO_GRASS_06, true),
+ CHECK(RC_SOUTHERN_SWAMP_GROTTO_GRASS_07, true),
+ CHECK(RC_SOUTHERN_SWAMP_GROTTO_GRASS_08, true),
+ CHECK(RC_SOUTHERN_SWAMP_GROTTO_GRASS_09, true),
+ CHECK(RC_SOUTHERN_SWAMP_GROTTO_GRASS_10, true),
+ CHECK(RC_SOUTHERN_SWAMP_GROTTO_GRASS_11, true),
+ CHECK(RC_SOUTHERN_SWAMP_GROTTO_GRASS_12, true),
+ CHECK(RC_SOUTHERN_SWAMP_GROTTO_GRASS_13, true),
+ CHECK(RC_SOUTHERN_SWAMP_GROTTO_GRASS_14, true),
},
.connections = {
CONNECTION(RR_SOUTHERN_SWAMP_SOUTH, true), // TODO: Grotto mapping
@@ -289,6 +255,66 @@ static RegisterShipInitFunc initFunc([]() {
CHECK(RC_SOUTHERN_SWAMP_CLEAR_POT_03, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
CHECK(RC_SOUTHERN_SWAMP_FREESTANDING_RUPEE_01, CAN_BE_DEKU || CAN_BE_ZORA),
CHECK(RC_SOUTHERN_SWAMP_FREESTANDING_RUPEE_02, CAN_BE_DEKU || CAN_BE_ZORA),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_01, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_02, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_03, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_04, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_05, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_06, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_07, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_08, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_09, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_10, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_11, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_12, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_13, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_14, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_15, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_16, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_17, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_18, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_19, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_20, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_21, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_22, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_23, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_24, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_25, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_26, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_27, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_28, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_29, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_CLEARED_GRASS_30, RANDO_EVENTS[RE_CLEARED_WOODFALL_TEMPLE]),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_01, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_02, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_03, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_04, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_05, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_06, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_07, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_08, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_09, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_10, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_11, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_12, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_13, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_14, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_15, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_16, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_17, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_18, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_19, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_20, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_21, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_22, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_23, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_24, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_25, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_26, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_27, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_28, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_29, true),
+ CHECK(RC_SOUTHERN_SWAMP_POISON_GRASS_30, true),
},
.exits = { // TO FROM
EXIT(ENTRANCE(ROAD_TO_SOUTHERN_SWAMP, 1), ENTRANCE(SOUTHERN_SWAMP_POISONED, 0), true),
@@ -370,6 +396,12 @@ static RegisterShipInitFunc initFunc([]() {
CHECK(RC_WOODFALL_POT_02, CAN_BE_DEKU || CAN_OWL_WARP(OWL_WARP_WOODFALL)),
CHECK(RC_WOODFALL_POT_03, CAN_BE_DEKU || CAN_OWL_WARP(OWL_WARP_WOODFALL)),
CHECK(RC_WOODFALL_FREESTANDING_RUPEE, CAN_BE_DEKU),
+ CHECK(RC_WOODFALL_GRASS_01, true),
+ CHECK(RC_WOODFALL_GRASS_02, true),
+ CHECK(RC_WOODFALL_GRASS_03, true),
+ CHECK(RC_WOODFALL_GRASS_04, true),
+ CHECK(RC_WOODFALL_GRASS_05, true),
+ CHECK(RC_WOODFALL_GRASS_06, true),
},
.exits = { // TO FROM
EXIT(ENTRANCE(SOUTHERN_SWAMP_POISONED, 2), ENTRANCE(WOODFALL, 0), true),
@@ -381,12 +413,49 @@ static RegisterShipInitFunc initFunc([]() {
Regions[RR_WOODS_OF_MYSTERY_GROTTO] = RandoRegion{ .name = "Woods of Mystery Grotto", .sceneId = SCENE_KAKUSIANA,
.checks = {
CHECK(RC_WOODS_OF_MYSTERY_GROTTO_CHEST, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_01, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_02, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_03, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_04, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_05, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_06, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_07, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_08, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_09, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_10, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_11, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_12, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_13, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_14, true),
},
.connections = {
CONNECTION(RR_WOODS_OF_MYSTERY, true), // TODO: Grotto mapping
},
};
Regions[RR_WOODS_OF_MYSTERY] = RandoRegion{ .sceneId = SCENE_26SARUNOMORI,
+ .checks = {
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_01, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_02, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_03, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_04, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_05, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_06, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_07, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_08, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_09, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_10, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_11, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_12, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_13, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_14, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_15, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_16, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_17, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_18, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_19, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_20, true),
+ CHECK(RC_WOODS_OF_MYSTERY_GRASS_21, true),
+ },
.exits = { // TO FROM
EXIT(ENTRANCE(SOUTHERN_SWAMP_POISONED, 7), ENTRANCE(WOODS_OF_MYSTERY, 0), true),
},
diff --git a/mm/2s2h/Rando/Logic/Regions/TerminaField.cpp b/mm/2s2h/Rando/Logic/Regions/TerminaField.cpp
new file mode 100644
index 000000000..bb1b83a35
--- /dev/null
+++ b/mm/2s2h/Rando/Logic/Regions/TerminaField.cpp
@@ -0,0 +1,519 @@
+#include "2s2h/GameInteractor/GameInteractor.h"
+#include "2s2h/ShipInit.hpp"
+
+#include "2s2h/Rando/Logic/Logic.h"
+
+using namespace Rando::Logic;
+
+// clang-format off
+static RegisterShipInitFunc initFunc([]() {
+ Regions[RR_TERMINA_FIELD_BEFORE_GREAT_BAY_COAST] = RandoRegion{ .name = "Before Great Bay Coast", .sceneId = SCENE_00KEIKOKU,
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(GREAT_BAY_COAST, 0), ENTRANCE(TERMINA_FIELD, 2), true),
+ },
+ .connections = {
+ CONNECTION(RR_TERMINA_FIELD, CAN_PLAY_SONG(EPONA)),
+ },
+ };
+ Regions[RR_TERMINA_FIELD_BEFORE_PATH_TO_MOUNTAIN_VILLAGE] = RandoRegion{ .sceneId = SCENE_00KEIKOKU,
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(PATH_TO_MOUNTAIN_VILLAGE, 0), ENTRANCE(TERMINA_FIELD, 3), true),
+ },
+ .connections = {
+ CONNECTION(RR_TERMINA_FIELD, HAS_ITEM(ITEM_BOW)),
+ },
+ };
+ Regions[RR_TERMINA_FIELD_BIO_BABA_GROTTO] = RandoRegion{ .name = "Termina Field Bio Baba", .sceneId = SCENE_KAKUSIANA,
+ .checks = {
+ CHECK(RC_TERMINA_FIELD_BIO_BABA_GROTTO, CAN_BE_ZORA),
+ CHECK(RC_TERMINA_FIELD_BIO_BABA_GROTTO_GRASS_01, true),
+ CHECK(RC_TERMINA_FIELD_BIO_BABA_GROTTO_GRASS_02, true),
+ },
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 11), true), // TODO: Grotto mapping
+ },
+ };
+ Regions[RR_TERMINA_FIELD_COW_GROTTO] = RandoRegion{ .name = "Termina Field Cow", .sceneId = SCENE_KAKUSIANA,
+ .checks = {
+ CHECK(RC_TERMINA_FIELD_COW_BACK, CAN_PLAY_SONG(EPONA)),
+ CHECK(RC_TERMINA_FIELD_COW_FRONT, CAN_PLAY_SONG(EPONA)),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_01, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_02, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_03, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_04, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_05, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_06, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_07, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_08, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_09, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_10, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_11, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_12, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_13, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_14, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_15, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_16, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_17, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_18, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_19, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_20, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_21, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_22, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_23, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_24, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_25, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_26, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_27, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_28, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_29, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_30, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_31, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_32, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_33, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_34, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_35, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_36, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_37, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_38, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_39, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_40, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_41, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_42, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_43, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_44, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_45, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_46, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_47, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_48, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_49, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_50, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_51, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_52, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_53, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_54, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_55, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_56, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_57, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_58, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_59, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_60, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_61, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_62, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_63, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_64, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_65, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_66, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_67, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_68, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_69, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_70, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_71, true),
+ CHECK(RC_TERMINA_FIELD_COW_GROTTO_GRASS_72, true),
+ },
+ .connections = {
+ CONNECTION(RR_TERMINA_FIELD, true), // TODO: Grotto mapping
+ },
+ };
+ Regions[RR_TERMINA_FIELD_DODONGO_GROTTO] = RandoRegion{ .name = "Termina Field Dodongo", .sceneId = SCENE_KAKUSIANA,
+ .checks = {
+ CHECK(RC_TERMINA_FIELD_DODONGO_GROTTO_CHEST, CAN_USE_SWORD || CAN_BE_ZORA || CAN_BE_GORON),
+ },
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 7), true), // TODO: Grotto mapping
+ },
+ };
+ Regions[RR_TERMINA_FIELD_GOSSIP_STONE_GROTTO_1] = RandoRegion{ .name = "Termina Field Gossip Stone #1", .sceneId = SCENE_KAKUSIANA,
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 1), true), // TODO: Grotto mapping
+ },
+ .events = {
+ // TODO: gSaveContext.save.saveInfo.unk_EA0 for gossip stone check
+ },
+ };
+ Regions[RR_TERMINA_FIELD_GOSSIP_STONE_GROTTO_2] = RandoRegion{ .name = "Termina Field Gossip Stone #2", .sceneId = SCENE_KAKUSIANA,
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 3), true), // TODO: Grotto mapping
+ },
+ .events = {
+ // TODO: gSaveContext.save.saveInfo.unk_EA0 for gossip stone check
+ },
+ };
+ Regions[RR_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3] = RandoRegion{ .name = "Termina Field Gossip Stone #3", .sceneId = SCENE_KAKUSIANA,
+ .checks = {
+ CHECK(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO, (CAN_BE_DEKU && CAN_PLAY_SONG(SONATA)) || (CAN_BE_GORON && CAN_PLAY_SONG(LULLABY)) || (CAN_BE_ZORA && CAN_PLAY_SONG(BOSSA_NOVA))),
+ CHECK(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_01, true),
+ CHECK(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_02, true),
+ CHECK(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_03, true),
+ CHECK(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_04, true),
+ CHECK(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_05, true),
+ },
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 0), true), // TODO: Grotto mapping
+ },
+ .events = {
+ // TODO: gSaveContext.save.saveInfo.unk_EA0 for gossip stone check
+ },
+ };
+ Regions[RR_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4] = RandoRegion{ .name = "Termina Field Gossip Stone #4", .sceneId = SCENE_KAKUSIANA,
+ .checks = {
+ CHECK(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_01, true),
+ CHECK(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_02, true),
+ CHECK(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_03, true),
+ CHECK(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_04, true),
+ CHECK(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_05, true),
+ },
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 2), true), // TODO: Grotto mapping
+ },
+ .events = {
+ // TODO: gSaveContext.save.saveInfo.unk_EA0 for gossip stone check
+ },
+ };
+ Regions[RR_TERMINA_FIELD_PEAHAT_GROTTO] = RandoRegion{ .name = "Termina Field Peahat", .sceneId = SCENE_KAKUSIANA,
+ .checks = {
+ CHECK(RC_TERMINA_FIELD_PEAHAT_GROTTO_CHEST, CAN_USE_SWORD || CAN_BE_ZORA || CAN_BE_GORON),
+ CHECK(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_01, true),
+ CHECK(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_02, true),
+ CHECK(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_03, true),
+ CHECK(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_04, true),
+ CHECK(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_05, true),
+ CHECK(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_06, true),
+ CHECK(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_07, true),
+ CHECK(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_08, true),
+ CHECK(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_09, true),
+ CHECK(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_10, true),
+ CHECK(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_11, true),
+ CHECK(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_12, true),
+ },
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 13), true), // TODO: Grotto mapping
+ },
+ };
+ Regions[RR_TERMINA_FIELD_PILLAR_GROTTO] = RandoRegion{ .name = "Termina Field Pillar", .sceneId = SCENE_KAKUSIANA,
+ .checks = {
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_CHEST, true),
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_01, true),
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_02, true),
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_03, true),
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_04, true),
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_05, true),
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_06, true),
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_07, true),
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_08, true),
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_09, true),
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_10, true),
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_11, true),
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_12, true),
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_13, true),
+ CHECK(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_14, true),
+ },
+ .connections = {
+ CONNECTION(RR_TERMINA_FIELD, true), // TODO: Grotto mapping
+ },
+ };
+ Regions[RR_TERMINA_FIELD_SCRUB_GROTTO] = RandoRegion{ .name = "Termina Field Scrub", .sceneId = SCENE_KAKUSIANA,
+ .checks = {
+ CHECK(RC_TERMINA_FIELD_GROTTO_SCRUB, CUR_UPG_VALUE(UPG_WALLET) >= 1 && RANDO_EVENTS[RE_TERMINA_FIELD_SCRUB_ENTERED_GROTTO]),
+ CHECK(RC_TERMINA_FIELD_SCRUB_LARGE_CRATE, true),
+ CHECK(RC_TERMINA_FIELD_SCRUB_POT, true),
+ },
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(TERMINA_FIELD, 0), ENTRANCE(GROTTOS, 9), true), // TODO: Grotto mapping
+ },
+ };
+ Regions[RR_TERMINA_FIELD_TALL_GRASS_GROTTO] = RandoRegion{ .name = "Termina Field Tall Grass", .sceneId = SCENE_KAKUSIANA,
+ .checks = {
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_CHEST, true),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_01, true),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_02, true),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_03, true),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_04, true),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_05, true),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_06, true),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_07, true),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_08, true),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_09, true),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_10, true),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_11, true),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_12, true),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_13, true),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_14, true),
+ },
+ .connections = {
+ CONNECTION(RR_TERMINA_FIELD, true), // TODO: Grotto mapping
+ },
+ };
+ Regions[RR_TERMINA_FIELD] = RandoRegion{ .sceneId = SCENE_00KEIKOKU,
+ .checks = {
+ CHECK(RC_TERMINA_FIELD_KAMARO_MASK, CAN_PLAY_SONG(HEALING)),
+ CHECK(RC_TERMINA_FIELD_POT, CAN_GROW_BEAN_PLANT),
+ CHECK(RC_TERMINA_FIELD_TALL_GRASS_CHEST, true),
+ CHECK(RC_TERMINA_FIELD_TREE_STUMP_CHEST, CAN_GROW_BEAN_PLANT || HAS_ITEM(ITEM_HOOKSHOT)),
+ CHECK(RC_TERMINA_FIELD_WATER_CHEST, CAN_BE_ZORA),
+ CHECK(RC_TERMINA_FIELD_FREESTANDING_RUPEE_01, true), // TODO: Fix duplicate item get...
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_01, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_02, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_03, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_04, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_05, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_06, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_07, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_08, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_09, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_10, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_11, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_12, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_13, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_14, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_15, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_16, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_17, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_18, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_19, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GUAY_RUPEE_DROP_20, CAN_PLAY_SONG(SONATA) || CAN_PLAY_SONG(LULLABY) || CAN_PLAY_SONG(BOSSA_NOVA)),
+ CHECK(RC_TERMINA_FIELD_GRASS_01, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_02, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_03, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_04, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_05, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_06, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_07, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_08, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_09, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_10, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_11, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_12, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_13, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_14, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_15, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_16, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_17, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_18, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_19, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_20, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_21, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_22, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_23, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_24, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_25, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_26, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_27, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_28, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_29, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_30, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_31, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_32, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_33, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_34, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_35, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_36, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_37, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_38, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_39, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_40, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_41, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_42, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_43, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_44, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_45, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_46, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_47, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_48, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_49, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_50, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_51, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_52, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_53, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_54, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_55, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_56, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_57, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_58, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_59, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_60, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_61, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_62, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_63, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_64, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_65, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_66, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_67, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_68, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_69, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_70, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_71, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_72, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_73, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_74, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_75, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_76, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_77, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_78, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_79, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_80, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_81, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_82, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_83, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_84, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_85, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_86, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_87, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_88, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_89, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_90, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_91, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_92, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_93, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_94, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_95, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_96, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_97, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_98, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_99, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_100, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_101, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_102, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_103, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_104, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_105, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_106, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_107, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_108, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_109, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_110, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_111, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_112, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_113, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_114, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_115, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_116, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_117, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_118, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_119, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_120, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_121, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_122, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_123, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_124, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_125, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_126, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_127, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_128, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_129, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_130, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_131, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_132, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_133, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_134, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_135, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_136, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_137, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_138, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_139, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_140, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_141, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_142, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_143, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_144, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_145, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_146, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_147, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_148, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_149, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_150, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_151, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_152, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_153, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_154, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_155, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_156, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_157, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_158, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_159, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_160, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_161, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_162, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_163, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_164, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_165, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_166, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_167, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_168, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_169, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_170, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_171, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_172, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_173, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_174, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_175, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_176, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_177, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_178, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_179, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_180, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_181, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_182, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_183, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_184, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_185, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_186, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_187, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_188, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_189, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_190, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_191, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_192, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_193, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_194, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_195, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_196, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_197, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_198, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_199, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_200, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_201, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_202, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_203, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_204, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_205, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_206, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_207, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_208, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_209, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_210, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_211, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_212, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_213, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_214, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_215, true),
+ CHECK(RC_TERMINA_FIELD_GRASS_216, true),
+
+ },
+ .exits = { // TO FROM
+ EXIT(ENTRANCE(GROTTOS, 0), ENTRANCE(TERMINA_FIELD, 0), CAN_USE_EXPLOSIVE || CAN_BE_GORON), // TODO: Grotto mapping Gossip Stone #3
+ EXIT(ENTRANCE(GROTTOS, 1), ENTRANCE(TERMINA_FIELD, 0), true), // TODO: Grotto mapping Gossip Stone #1
+ EXIT(ENTRANCE(GROTTOS, 2), ENTRANCE(TERMINA_FIELD, 0), true), // TODO: Grotto mapping Gossip Stone #4
+ EXIT(ENTRANCE(GROTTOS, 3), ENTRANCE(TERMINA_FIELD, 0), true), // TODO: Grotto mapping Gossip Stone #2
+ EXIT(ENTRANCE(GROTTOS, 7), ENTRANCE(TERMINA_FIELD, 0), true), // TODO: Grotto mapping Dodongo
+ EXIT(ENTRANCE(GROTTOS, 9), ENTRANCE(TERMINA_FIELD, 0), true), // TODO: Grotto mapping Scrub
+ EXIT(ENTRANCE(GROTTOS, 11), ENTRANCE(TERMINA_FIELD, 0), CAN_USE_EXPLOSIVE || CAN_BE_GORON), // TODO: Grotto mapping bio baba grotto
+ EXIT(ENTRANCE(GROTTOS, 13), ENTRANCE(TERMINA_FIELD, 0), true), // TODO: Grotto mapping peahat grotto
+ EXIT(ENTRANCE(WEST_CLOCK_TOWN, 0), ENTRANCE(TERMINA_FIELD, 0), true),
+ EXIT(ENTRANCE(ROAD_TO_SOUTHERN_SWAMP, 0), ENTRANCE(TERMINA_FIELD, 1), true),
+ EXIT(ENTRANCE(ROAD_TO_IKANA, 0), ENTRANCE(TERMINA_FIELD, 4), true),
+ EXIT(ENTRANCE(MILK_ROAD, 0), ENTRANCE(TERMINA_FIELD, 5), true),
+ EXIT(ENTRANCE(SOUTH_CLOCK_TOWN, 1), ENTRANCE(TERMINA_FIELD, 6), true),
+ EXIT(ENTRANCE(EAST_CLOCK_TOWN, 0), ENTRANCE(TERMINA_FIELD, 7), true),
+ EXIT(ENTRANCE(NORTH_CLOCK_TOWN, 0), ENTRANCE(TERMINA_FIELD, 8), true),
+ },
+ .connections = {
+ CONNECTION(RR_TERMINA_FIELD_BEFORE_PATH_TO_MOUNTAIN_VILLAGE, HAS_ITEM(ITEM_BOW)),
+ CONNECTION(RR_TERMINA_FIELD_BEFORE_GREAT_BAY_COAST, CAN_PLAY_SONG(EPONA)),
+ CONNECTION(RR_ASTRAL_OBSERVATORY_OUTSIDE, CAN_BE_DEKU),
+ CONNECTION(RR_TERMINA_FIELD_COW_GROTTO, CAN_USE_EXPLOSIVE), // TODO: Grotto mapping
+ CONNECTION(RR_TERMINA_FIELD_PILLAR_GROTTO, true), // TODO: Grotto mapping
+ CONNECTION(RR_TERMINA_FIELD_TALL_GRASS_GROTTO, true), // TODO: Grotto mapping
+ },
+ };
+}, {});
+// clang-format on
diff --git a/mm/2s2h/Rando/Logic/Regions/West.cpp b/mm/2s2h/Rando/Logic/Regions/West.cpp
index 51decb2f8..98aff33fc 100644
--- a/mm/2s2h/Rando/Logic/Regions/West.cpp
+++ b/mm/2s2h/Rando/Logic/Regions/West.cpp
@@ -20,6 +20,78 @@ static RegisterShipInitFunc initFunc([]() {
.checks = {
CHECK(RC_GREAT_BAY_COAST_COW_BACK, CAN_PLAY_SONG(EPONA)),
CHECK(RC_GREAT_BAY_COAST_COW_FRONT, CAN_PLAY_SONG(EPONA)),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_01, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_02, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_03, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_04, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_05, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_06, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_07, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_08, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_09, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_10, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_11, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_12, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_13, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_14, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_15, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_16, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_17, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_18, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_19, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_20, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_21, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_22, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_23, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_24, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_25, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_26, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_27, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_28, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_29, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_30, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_31, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_32, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_33, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_34, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_35, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_36, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_37, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_38, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_39, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_40, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_41, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_42, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_43, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_44, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_45, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_46, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_47, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_48, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_49, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_50, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_51, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_52, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_53, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_54, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_55, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_56, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_57, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_58, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_59, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_60, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_61, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_62, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_63, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_64, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_65, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_66, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_67, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_68, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_69, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_70, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_71, true),
+ CHECK(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_72, true),
},
.connections = {
CONNECTION(RR_GREAT_BAY_COAST, true), // TODO: Grotto mapping
@@ -28,6 +100,20 @@ static RegisterShipInitFunc initFunc([]() {
Regions[RR_GREAT_BAY_COAST_FISHERMAN_GROTTO] = RandoRegion{ .name = "Great Bay Coast Fisherman Grotto", .sceneId = SCENE_KAKUSIANA,
.checks = {
CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_CHEST, true),
+ CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_01, true),
+ CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_02, true),
+ CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_03, true),
+ CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_04, true),
+ CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_05, true),
+ CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_06, true),
+ CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_07, true),
+ CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_08, true),
+ CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_09, true),
+ CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_10, true),
+ CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_11, true),
+ CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_12, true),
+ CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_13, true),
+ CHECK(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_14, true),
},
.connections = {
CONNECTION(RR_GREAT_BAY_COAST, true), // TODO: Grotto mapping
@@ -56,6 +142,11 @@ static RegisterShipInitFunc initFunc([]() {
CHECK(RC_GREAT_BAY_COAST_LEDGE_POT_03, HAS_ITEM(ITEM_HOOKSHOT)),
CHECK(RC_GREAT_BAY_COAST_TINGLE_MAP_01, (HAS_ITEM(ITEM_BOW) || HAS_ITEM(ITEM_HOOKSHOT)) && CAN_AFFORD(RC_GREAT_BAY_COAST_TINGLE_MAP_01)),
CHECK(RC_GREAT_BAY_COAST_TINGLE_MAP_02, (HAS_ITEM(ITEM_BOW) || HAS_ITEM(ITEM_HOOKSHOT)) && CAN_AFFORD(RC_GREAT_BAY_COAST_TINGLE_MAP_02)),
+ CHECK(RC_GREAT_BAY_COAST_GRASS_01, true),
+ CHECK(RC_GREAT_BAY_COAST_GRASS_02, true),
+ CHECK(RC_GREAT_BAY_COAST_GRASS_03, true),
+ CHECK(RC_GREAT_BAY_COAST_GRASS_04, true),
+ CHECK(RC_GREAT_BAY_COAST_GRASS_05, true),
},
.exits = { // TO FROM
EXIT(ENTRANCE(TERMINA_FIELD, 2), ENTRANCE(GREAT_BAY_COAST, 0), true),
@@ -161,6 +252,20 @@ static RegisterShipInitFunc initFunc([]() {
Regions[RR_ZORA_CAPE_GROTTO] = RandoRegion{ .name = "Zora Cape Grotto", .sceneId = SCENE_KAKUSIANA,
.checks = {
CHECK(RC_ZORA_CAPE_GROTTO_CHEST, true),
+ CHECK(RC_ZORA_CAPE_GROTTO_GRASS_01, true),
+ CHECK(RC_ZORA_CAPE_GROTTO_GRASS_02, true),
+ CHECK(RC_ZORA_CAPE_GROTTO_GRASS_03, true),
+ CHECK(RC_ZORA_CAPE_GROTTO_GRASS_04, true),
+ CHECK(RC_ZORA_CAPE_GROTTO_GRASS_05, true),
+ CHECK(RC_ZORA_CAPE_GROTTO_GRASS_06, true),
+ CHECK(RC_ZORA_CAPE_GROTTO_GRASS_07, true),
+ CHECK(RC_ZORA_CAPE_GROTTO_GRASS_08, true),
+ CHECK(RC_ZORA_CAPE_GROTTO_GRASS_09, true),
+ CHECK(RC_ZORA_CAPE_GROTTO_GRASS_10, true),
+ CHECK(RC_ZORA_CAPE_GROTTO_GRASS_11, true),
+ CHECK(RC_ZORA_CAPE_GROTTO_GRASS_12, true),
+ CHECK(RC_ZORA_CAPE_GROTTO_GRASS_13, true),
+ CHECK(RC_ZORA_CAPE_GROTTO_GRASS_14, true),
},
.connections = {
CONNECTION(RR_ZORA_CAPE, true), // TODO: Grotto mapping
diff --git a/mm/2s2h/Rando/Menu.cpp b/mm/2s2h/Rando/Menu.cpp
index d336a674c..4548162a4 100644
--- a/mm/2s2h/Rando/Menu.cpp
+++ b/mm/2s2h/Rando/Menu.cpp
@@ -184,6 +184,7 @@ static void DrawLocationsTab() {
CVarCheckbox("Shuffle Crate Drops", Rando::StaticData::Options[RO_SHUFFLE_CRATE_DROPS].cvar);
CVarCheckbox("Shuffle Barrel Drops", Rando::StaticData::Options[RO_SHUFFLE_BARREL_DROPS].cvar);
CVarCheckbox("Shuffle Snowball Drops", Rando::StaticData::Options[RO_SHUFFLE_SNOWBALL_DROPS].cvar);
+ CVarCheckbox("Shuffle Grass Drops", Rando::StaticData::Options[RO_SHUFFLE_GRASS_DROPS].cvar);
CVarCheckbox("Shuffle Hive Drops", "gPlaceholderBool",
CheckboxOptions({ { .disabled = true, .disabledTooltip = "Coming Soon" } }));
CVarCheckbox("Shuffle Freestanding Items", Rando::StaticData::Options[RO_SHUFFLE_FREESTANDING_ITEMS].cvar);
diff --git a/mm/2s2h/Rando/MiscBehavior/OnFileCreate.cpp b/mm/2s2h/Rando/MiscBehavior/OnFileCreate.cpp
index 77c9d5f2c..d67835b54 100644
--- a/mm/2s2h/Rando/MiscBehavior/OnFileCreate.cpp
+++ b/mm/2s2h/Rando/MiscBehavior/OnFileCreate.cpp
@@ -150,6 +150,11 @@ void Rando::MiscBehavior::OnFileCreate(s16 fileNum) {
continue;
}
+ if (randoStaticCheck.randoCheckType == RCTYPE_GRASS &&
+ RANDO_SAVE_OPTIONS[RO_SHUFFLE_GRASS_DROPS] == RO_GENERIC_NO) {
+ continue;
+ }
+
if (randoStaticCheck.randoCheckType == RCTYPE_FREESTANDING &&
RANDO_SAVE_OPTIONS[RO_SHUFFLE_FREESTANDING_ITEMS] == RO_GENERIC_NO) {
continue;
diff --git a/mm/2s2h/Rando/StaticData/Checks.cpp b/mm/2s2h/Rando/StaticData/Checks.cpp
index 6c5c968f0..ce68b79a6 100644
--- a/mm/2s2h/Rando/StaticData/Checks.cpp
+++ b/mm/2s2h/Rando/StaticData/Checks.cpp
@@ -1371,6 +1371,858 @@ std::map<RandoCheckId, RandoStaticCheck> Checks = {
RC(RC_TWIN_ISLANDS_SMALL_SNOWBALL_05, RCTYPE_SNOWBALL, SCENE_17SETUGEN, FLAG_NONE, 0x0, RI_JUNK),
RC(RC_TWIN_ISLANDS_SMALL_SNOWBALL_06, RCTYPE_SNOWBALL, SCENE_17SETUGEN, FLAG_NONE, 0x0, RI_JUNK),
+
+ // Grass //
+ RC(RC_CLOCK_TOWN_LAUNDRY_POOL_GRASS_01, RCTYPE_GRASS, SCENE_ALLEY, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_CLOCK_TOWN_LAUNDRY_POOL_GRASS_02, RCTYPE_GRASS, SCENE_ALLEY, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_CLOCK_TOWN_LAUNDRY_POOL_GRASS_03, RCTYPE_GRASS, SCENE_ALLEY, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_01, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_02, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_03, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_04, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_05, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_06, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_07, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_08, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_09, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_10, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_11, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_12, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_13, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_14, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_15, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_16, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_17, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_18, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_19, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_20, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_21, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_22, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_23, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GORMAN_TRACK_GRASS_24, RCTYPE_GRASS, SCENE_KOEPONARACE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_15, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_16, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_17, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_18, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_19, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_20, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_21, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_22, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_23, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_24, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_25, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_26, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_27, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_28, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_29, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_30, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_31, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_32, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_33, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_34, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_35, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_36, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_37, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_38, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_39, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_40, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_41, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_42, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_43, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_44, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_45, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_46, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_47, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_48, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_49, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_50, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_51, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_52, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_53, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_54, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_55, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_56, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_57, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_58, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_59, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_60, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_61, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_62, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_63, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_64, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_65, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_66, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_67, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_68, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_69, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_70, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_71, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_72, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_GRASS_01, RCTYPE_GRASS, SCENE_30GYOSON, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_GRASS_02, RCTYPE_GRASS, SCENE_30GYOSON, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_GRASS_03, RCTYPE_GRASS, SCENE_30GYOSON, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_GRASS_04, RCTYPE_GRASS, SCENE_30GYOSON, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_GREAT_BAY_COAST_GRASS_05, RCTYPE_GRASS, SCENE_30GYOSON, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_CANYON_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_CANYON_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_CANYON_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_CANYON_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_CANYON_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_CANYON_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_CANYON_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_CANYON_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_CANYON_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_CANYON_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_CANYON_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_CANYON_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_CANYON_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_CANYON_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GRASS_01, RCTYPE_GRASS, SCENE_BOTI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GRASS_02, RCTYPE_GRASS, SCENE_BOTI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GRASS_03, RCTYPE_GRASS, SCENE_BOTI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GRASS_04, RCTYPE_GRASS, SCENE_BOTI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GRASS_05, RCTYPE_GRASS, SCENE_BOTI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GRASS_06, RCTYPE_GRASS, SCENE_BOTI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GRASS_07, RCTYPE_GRASS, SCENE_BOTI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GRASS_08, RCTYPE_GRASS, SCENE_BOTI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GRASS_09, RCTYPE_GRASS, SCENE_BOTI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_IKANA_GRAVEYARD_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_15, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_16, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_17, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_18, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_19, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_20, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_21, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_22, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_23, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_LONE_PEAK_SHRINE_GRASS_24, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_01, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_02, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_03, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_04, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_05, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_06, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_07, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_08, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_09, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_10, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_11, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_12, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_13, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_14, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_15, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_16, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_17, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_18, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_19, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_20, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_21, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_22, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_23, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_24, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_25, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_26, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_27, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_28, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_29, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_SPRING_GRASS_30, RCTYPE_GRASS, SCENE_10YUKIYAMANOMURA2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_IKANA_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_IKANA_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_IKANA_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_IKANA_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_IKANA_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_IKANA_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_IKANA_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_IKANA_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_IKANA_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_IKANA_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_IKANA_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_IKANA_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_IKANA_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_IKANA_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_01, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_02, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_03, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_04, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_05, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_06, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_07, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_08, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_09, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_10, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_11, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_12, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_13, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_14, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_15, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_16, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_17, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_18, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_19, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_20, RCTYPE_GRASS, SCENE_24KEMONOMITI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_01, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_02, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_03, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_04, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_05, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_06, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_07, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_08, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_09, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_10, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_11, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_12, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_13, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_14, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_15, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_16, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_17, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_18, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_19, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_20, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_21, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_22, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_23, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_24, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_25, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_26, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_27, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_28, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_29, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_30, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_31, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_32, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_33, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_34, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_35, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_36, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_37, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_38, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_39, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_40, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_41, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_42, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_43, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_44, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_45, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_46, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_47, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_48, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_49, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_50, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_51, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_52, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_53, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_54, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_55, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_56, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ROMANI_RANCH_GRASS_57, RCTYPE_GRASS, SCENE_F01, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_01, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_02, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_03, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_04, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_05, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_06, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_07, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_08, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_09, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_10, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_11, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_12, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_13, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_14, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_15, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_16, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_17, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_18, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_19, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_20, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_21, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_22, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_23, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_24, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_25, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_26, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_27, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_28, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_29, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_CLEARED_GRASS_30, RCTYPE_GRASS, SCENE_20SICHITAI2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_01, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_02, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_03, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_04, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_05, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_06, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_07, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_08, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_09, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_10, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_11, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_12, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_13, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_14, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_15, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_16, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_17, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_18, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_19, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_20, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_21, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_22, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_23, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_24, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_25, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_26, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_27, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_28, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_29, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_POISON_GRASS_30, RCTYPE_GRASS, SCENE_20SICHITAI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_SOUTHERN_SWAMP_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_BIO_BABA_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_BIO_BABA_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_15, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_16, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_17, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_18, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_19, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_20, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_21, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_22, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_23, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_24, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_25, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_26, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_27, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_28, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_29, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_30, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_31, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_32, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_33, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_34, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_35, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_36, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_37, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_38, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_39, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_40, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_41, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_42, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_43, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_44, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_45, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_46, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_47, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_48, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_49, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_50, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_51, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_52, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_53, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_54, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_55, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_56, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_57, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_58, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_59, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_60, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_61, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_62, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_63, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_64, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_65, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_66, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_67, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_68, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_69, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_70, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_71, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_COW_GROTTO_GRASS_72, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_01, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_02, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_03, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_04, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_05, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_06, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_07, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_08, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_09, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_10, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_11, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_12, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_13, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_14, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_15, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_16, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_17, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_18, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_19, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_20, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_21, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_22, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_23, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_24, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_25, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_26, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_27, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_28, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_29, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_30, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_31, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_32, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_33, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_34, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_35, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_36, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_37, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_38, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_39, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_40, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_41, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_42, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_43, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_44, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_45, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_46, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_47, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_48, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_49, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_50, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_51, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_52, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_53, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_54, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_55, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_56, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_57, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_58, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_59, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_60, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_61, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_62, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_63, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_64, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_65, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_66, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_67, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_68, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_69, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_70, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_71, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_72, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_73, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_74, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_75, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_76, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_77, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_78, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_79, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_80, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_81, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_82, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_83, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_84, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_85, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_86, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_87, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_88, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_89, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_90, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_91, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_92, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_93, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_94, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_95, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_96, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_97, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_98, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_99, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_100, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_101, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_102, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_103, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_104, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_105, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_106, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_107, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_108, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_109, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_110, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_111, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_112, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_113, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_114, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_115, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_116, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_117, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_118, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_119, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_120, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_121, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_122, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_123, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_124, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_125, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_126, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_127, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_128, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_129, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_130, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_131, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_132, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_133, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_134, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_135, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_136, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_137, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_138, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_139, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_140, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_141, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_142, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_143, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_144, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_145, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_146, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_147, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_148, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_149, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_150, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_151, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_152, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_153, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_154, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_155, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_156, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_157, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_158, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_159, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_160, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_161, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_162, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_163, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_164, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_165, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_166, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_167, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_168, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_169, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_170, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_171, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_172, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_173, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_174, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_175, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_176, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_177, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_178, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_179, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_180, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_181, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_182, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_183, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_184, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_185, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_186, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_187, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_188, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_189, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_190, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_191, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_192, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_193, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_194, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_195, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_196, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_197, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_198, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_199, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_200, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_201, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_202, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_203, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_204, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_205, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_206, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_207, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_208, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_209, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_210, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_211, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_212, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_213, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_214, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_215, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_GRASS_216, RCTYPE_GRASS, SCENE_00KEIKOKU, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_SPRING_GRASS_01, RCTYPE_GRASS, SCENE_17SETUGEN2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_SPRING_GRASS_02, RCTYPE_GRASS, SCENE_17SETUGEN2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_SPRING_GRASS_03, RCTYPE_GRASS, SCENE_17SETUGEN2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_SPRING_GRASS_04, RCTYPE_GRASS, SCENE_17SETUGEN2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_SPRING_GRASS_05, RCTYPE_GRASS, SCENE_17SETUGEN2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_SPRING_GRASS_06, RCTYPE_GRASS, SCENE_17SETUGEN2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_SPRING_GRASS_07, RCTYPE_GRASS, SCENE_17SETUGEN2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_SPRING_GRASS_08, RCTYPE_GRASS, SCENE_17SETUGEN2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_SPRING_GRASS_09, RCTYPE_GRASS, SCENE_17SETUGEN2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_SPRING_GRASS_10, RCTYPE_GRASS, SCENE_17SETUGEN2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_SPRING_GRASS_11, RCTYPE_GRASS, SCENE_17SETUGEN2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_TWIN_ISLANDS_SPRING_GRASS_12, RCTYPE_GRASS, SCENE_17SETUGEN2, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_01, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_02, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_03, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_04, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_05, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_06, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_07, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_08, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_09, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_10, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_11, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_12, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_13, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_14, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_15, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_16, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_17, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_18, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_19, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_20, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GRASS_21, RCTYPE_GRASS, SCENE_26SARUNOMORI, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODS_OF_MYSTERY_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODFALL_GRASS_01, RCTYPE_GRASS, SCENE_21MITURINMAE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODFALL_GRASS_02, RCTYPE_GRASS, SCENE_21MITURINMAE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODFALL_GRASS_03, RCTYPE_GRASS, SCENE_21MITURINMAE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODFALL_GRASS_04, RCTYPE_GRASS, SCENE_21MITURINMAE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODFALL_GRASS_05, RCTYPE_GRASS, SCENE_21MITURINMAE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_WOODFALL_GRASS_06, RCTYPE_GRASS, SCENE_21MITURINMAE, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ZORA_CAPE_GROTTO_GRASS_01, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ZORA_CAPE_GROTTO_GRASS_02, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ZORA_CAPE_GROTTO_GRASS_03, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ZORA_CAPE_GROTTO_GRASS_04, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ZORA_CAPE_GROTTO_GRASS_05, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ZORA_CAPE_GROTTO_GRASS_06, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ZORA_CAPE_GROTTO_GRASS_07, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ZORA_CAPE_GROTTO_GRASS_08, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ZORA_CAPE_GROTTO_GRASS_09, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ZORA_CAPE_GROTTO_GRASS_10, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ZORA_CAPE_GROTTO_GRASS_11, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ZORA_CAPE_GROTTO_GRASS_12, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ZORA_CAPE_GROTTO_GRASS_13, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+ RC(RC_ZORA_CAPE_GROTTO_GRASS_14, RCTYPE_GRASS, SCENE_KAKUSIANA, FLAG_NONE, 0x0, RI_JUNK),
+
};
// clang-format on
diff --git a/mm/2s2h/Rando/StaticData/Options.cpp b/mm/2s2h/Rando/StaticData/Options.cpp
index 74ec3bb89..3ee08806d 100644
--- a/mm/2s2h/Rando/StaticData/Options.cpp
+++ b/mm/2s2h/Rando/StaticData/Options.cpp
@@ -32,6 +32,7 @@ std::map<RandoOptionId, RandoStaticOption> Options = {
RO(RO_SHUFFLE_CRATE_DROPS, RO_GENERIC_OFF),
RO(RO_SHUFFLE_FREESTANDING_ITEMS, RO_GENERIC_OFF),
RO(RO_SHUFFLE_GOLD_SKULLTULAS, RO_GENERIC_OFF),
+ RO(RO_SHUFFLE_GRASS_DROPS, RO_GENERIC_OFF),
RO(RO_SHUFFLE_OWL_STATUES, RO_GENERIC_OFF),
RO(RO_SHUFFLE_POT_DROPS, RO_GENERIC_OFF),
RO(RO_SHUFFLE_SHOPS, RO_GENERIC_OFF),
diff --git a/mm/2s2h/Rando/Types.h b/mm/2s2h/Rando/Types.h
index a74812da9..ff78407e0 100644
--- a/mm/2s2h/Rando/Types.h
+++ b/mm/2s2h/Rando/Types.h
@@ -8,6 +8,7 @@ typedef enum {
RCTYPE_COW,
RCTYPE_CRATE,
RCTYPE_FREESTANDING,
+ RCTYPE_GRASS,
RCTYPE_HEART,
RCTYPE_MINIGAME,
RCTYPE_NPC,
@@ -1377,6 +1378,857 @@ typedef enum {
RC_TWIN_ISLANDS_SMALL_SNOWBALL_05,
RC_TWIN_ISLANDS_SMALL_SNOWBALL_06,
+ // Grass //
+ RC_CLOCK_TOWN_LAUNDRY_POOL_GRASS_01,
+ RC_CLOCK_TOWN_LAUNDRY_POOL_GRASS_02,
+ RC_CLOCK_TOWN_LAUNDRY_POOL_GRASS_03,
+ RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_01,
+ RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_02,
+ RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_03,
+ RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_04,
+ RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_05,
+ RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_06,
+ RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_07,
+ RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_08,
+ RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_09,
+ RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_10,
+ RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_11,
+ RC_DEKU_PALACE_BEAN_SALESMAN_GROTTO_GRASS_12,
+ RC_GORMAN_TRACK_GRASS_01,
+ RC_GORMAN_TRACK_GRASS_02,
+ RC_GORMAN_TRACK_GRASS_03,
+ RC_GORMAN_TRACK_GRASS_04,
+ RC_GORMAN_TRACK_GRASS_05,
+ RC_GORMAN_TRACK_GRASS_06,
+ RC_GORMAN_TRACK_GRASS_07,
+ RC_GORMAN_TRACK_GRASS_08,
+ RC_GORMAN_TRACK_GRASS_09,
+ RC_GORMAN_TRACK_GRASS_10,
+ RC_GORMAN_TRACK_GRASS_11,
+ RC_GORMAN_TRACK_GRASS_12,
+ RC_GORMAN_TRACK_GRASS_13,
+ RC_GORMAN_TRACK_GRASS_14,
+ RC_GORMAN_TRACK_GRASS_15,
+ RC_GORMAN_TRACK_GRASS_16,
+ RC_GORMAN_TRACK_GRASS_17,
+ RC_GORMAN_TRACK_GRASS_18,
+ RC_GORMAN_TRACK_GRASS_19,
+ RC_GORMAN_TRACK_GRASS_20,
+ RC_GORMAN_TRACK_GRASS_21,
+ RC_GORMAN_TRACK_GRASS_22,
+ RC_GORMAN_TRACK_GRASS_23,
+ RC_GORMAN_TRACK_GRASS_24,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_01,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_02,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_03,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_04,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_05,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_06,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_07,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_08,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_09,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_10,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_11,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_12,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_13,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_14,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_15,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_16,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_17,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_18,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_19,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_20,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_21,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_22,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_23,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_24,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_25,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_26,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_27,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_28,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_29,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_30,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_31,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_32,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_33,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_34,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_35,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_36,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_37,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_38,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_39,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_40,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_41,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_42,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_43,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_44,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_45,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_46,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_47,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_48,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_49,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_50,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_51,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_52,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_53,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_54,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_55,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_56,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_57,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_58,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_59,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_60,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_61,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_62,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_63,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_64,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_65,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_66,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_67,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_68,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_69,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_70,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_71,
+ RC_GREAT_BAY_COAST_COW_GROTTO_GRASS_72,
+ RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_01,
+ RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_02,
+ RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_03,
+ RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_04,
+ RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_05,
+ RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_06,
+ RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_07,
+ RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_08,
+ RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_09,
+ RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_10,
+ RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_11,
+ RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_12,
+ RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_13,
+ RC_GREAT_BAY_COAST_FISHERMAN_GROTTO_GRASS_14,
+ RC_GREAT_BAY_COAST_GRASS_01,
+ RC_GREAT_BAY_COAST_GRASS_02,
+ RC_GREAT_BAY_COAST_GRASS_03,
+ RC_GREAT_BAY_COAST_GRASS_04,
+ RC_GREAT_BAY_COAST_GRASS_05,
+ RC_IKANA_CANYON_GROTTO_GRASS_01,
+ RC_IKANA_CANYON_GROTTO_GRASS_02,
+ RC_IKANA_CANYON_GROTTO_GRASS_03,
+ RC_IKANA_CANYON_GROTTO_GRASS_04,
+ RC_IKANA_CANYON_GROTTO_GRASS_05,
+ RC_IKANA_CANYON_GROTTO_GRASS_06,
+ RC_IKANA_CANYON_GROTTO_GRASS_07,
+ RC_IKANA_CANYON_GROTTO_GRASS_08,
+ RC_IKANA_CANYON_GROTTO_GRASS_09,
+ RC_IKANA_CANYON_GROTTO_GRASS_10,
+ RC_IKANA_CANYON_GROTTO_GRASS_11,
+ RC_IKANA_CANYON_GROTTO_GRASS_12,
+ RC_IKANA_CANYON_GROTTO_GRASS_13,
+ RC_IKANA_CANYON_GROTTO_GRASS_14,
+ RC_IKANA_GRAVEYARD_GRASS_01,
+ RC_IKANA_GRAVEYARD_GRASS_02,
+ RC_IKANA_GRAVEYARD_GRASS_03,
+ RC_IKANA_GRAVEYARD_GRASS_04,
+ RC_IKANA_GRAVEYARD_GRASS_05,
+ RC_IKANA_GRAVEYARD_GRASS_06,
+ RC_IKANA_GRAVEYARD_GRASS_07,
+ RC_IKANA_GRAVEYARD_GRASS_08,
+ RC_IKANA_GRAVEYARD_GRASS_09,
+ RC_IKANA_GRAVEYARD_GROTTO_GRASS_01,
+ RC_IKANA_GRAVEYARD_GROTTO_GRASS_02,
+ RC_IKANA_GRAVEYARD_GROTTO_GRASS_03,
+ RC_IKANA_GRAVEYARD_GROTTO_GRASS_04,
+ RC_IKANA_GRAVEYARD_GROTTO_GRASS_05,
+ RC_IKANA_GRAVEYARD_GROTTO_GRASS_06,
+ RC_IKANA_GRAVEYARD_GROTTO_GRASS_07,
+ RC_IKANA_GRAVEYARD_GROTTO_GRASS_08,
+ RC_IKANA_GRAVEYARD_GROTTO_GRASS_09,
+ RC_IKANA_GRAVEYARD_GROTTO_GRASS_10,
+ RC_IKANA_GRAVEYARD_GROTTO_GRASS_11,
+ RC_IKANA_GRAVEYARD_GROTTO_GRASS_12,
+ RC_IKANA_GRAVEYARD_GROTTO_GRASS_13,
+ RC_IKANA_GRAVEYARD_GROTTO_GRASS_14,
+ RC_LONE_PEAK_SHRINE_GRASS_01,
+ RC_LONE_PEAK_SHRINE_GRASS_02,
+ RC_LONE_PEAK_SHRINE_GRASS_03,
+ RC_LONE_PEAK_SHRINE_GRASS_04,
+ RC_LONE_PEAK_SHRINE_GRASS_05,
+ RC_LONE_PEAK_SHRINE_GRASS_06,
+ RC_LONE_PEAK_SHRINE_GRASS_07,
+ RC_LONE_PEAK_SHRINE_GRASS_08,
+ RC_LONE_PEAK_SHRINE_GRASS_09,
+ RC_LONE_PEAK_SHRINE_GRASS_10,
+ RC_LONE_PEAK_SHRINE_GRASS_11,
+ RC_LONE_PEAK_SHRINE_GRASS_12,
+ RC_LONE_PEAK_SHRINE_GRASS_13,
+ RC_LONE_PEAK_SHRINE_GRASS_14,
+ RC_LONE_PEAK_SHRINE_GRASS_15,
+ RC_LONE_PEAK_SHRINE_GRASS_16,
+ RC_LONE_PEAK_SHRINE_GRASS_17,
+ RC_LONE_PEAK_SHRINE_GRASS_18,
+ RC_LONE_PEAK_SHRINE_GRASS_19,
+ RC_LONE_PEAK_SHRINE_GRASS_20,
+ RC_LONE_PEAK_SHRINE_GRASS_21,
+ RC_LONE_PEAK_SHRINE_GRASS_22,
+ RC_LONE_PEAK_SHRINE_GRASS_23,
+ RC_LONE_PEAK_SHRINE_GRASS_24,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_01,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_02,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_03,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_04,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_05,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_06,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_07,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_08,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_09,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_10,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_11,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_12,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_13,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_14,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_15,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_16,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_17,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_18,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_19,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_20,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_21,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_22,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_23,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_24,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_25,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_26,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_27,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_28,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_29,
+ RC_MOUNTAIN_VILLAGE_SPRING_GRASS_30,
+ RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_01,
+ RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_02,
+ RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_03,
+ RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_04,
+ RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_05,
+ RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_06,
+ RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_07,
+ RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_08,
+ RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_09,
+ RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_10,
+ RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_11,
+ RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_12,
+ RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_13,
+ RC_MOUNTAIN_VILLAGE_TUNNEL_GROTTO_GRASS_14,
+ RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_01,
+ RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_02,
+ RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_03,
+ RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_04,
+ RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_05,
+ RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_06,
+ RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_07,
+ RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_08,
+ RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_09,
+ RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_10,
+ RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_11,
+ RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_12,
+ RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_13,
+ RC_PATH_TO_SNOWHEAD_GROTTO_GRASS_14,
+ RC_ROAD_TO_IKANA_GROTTO_GRASS_01,
+ RC_ROAD_TO_IKANA_GROTTO_GRASS_02,
+ RC_ROAD_TO_IKANA_GROTTO_GRASS_03,
+ RC_ROAD_TO_IKANA_GROTTO_GRASS_04,
+ RC_ROAD_TO_IKANA_GROTTO_GRASS_05,
+ RC_ROAD_TO_IKANA_GROTTO_GRASS_06,
+ RC_ROAD_TO_IKANA_GROTTO_GRASS_07,
+ RC_ROAD_TO_IKANA_GROTTO_GRASS_08,
+ RC_ROAD_TO_IKANA_GROTTO_GRASS_09,
+ RC_ROAD_TO_IKANA_GROTTO_GRASS_10,
+ RC_ROAD_TO_IKANA_GROTTO_GRASS_11,
+ RC_ROAD_TO_IKANA_GROTTO_GRASS_12,
+ RC_ROAD_TO_IKANA_GROTTO_GRASS_13,
+ RC_ROAD_TO_IKANA_GROTTO_GRASS_14,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_01,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_02,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_03,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_04,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_05,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_06,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_07,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_08,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_09,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_10,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_11,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_12,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_13,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_14,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_15,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_16,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_17,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_18,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_19,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GRASS_20,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_01,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_02,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_03,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_04,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_05,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_06,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_07,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_08,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_09,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_10,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_11,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_12,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_13,
+ RC_ROAD_TO_SOUTHERN_SWAMP_GROTTO_GRASS_14,
+ RC_ROMANI_RANCH_GRASS_01,
+ RC_ROMANI_RANCH_GRASS_02,
+ RC_ROMANI_RANCH_GRASS_03,
+ RC_ROMANI_RANCH_GRASS_04,
+ RC_ROMANI_RANCH_GRASS_05,
+ RC_ROMANI_RANCH_GRASS_06,
+ RC_ROMANI_RANCH_GRASS_07,
+ RC_ROMANI_RANCH_GRASS_08,
+ RC_ROMANI_RANCH_GRASS_09,
+ RC_ROMANI_RANCH_GRASS_10,
+ RC_ROMANI_RANCH_GRASS_11,
+ RC_ROMANI_RANCH_GRASS_12,
+ RC_ROMANI_RANCH_GRASS_13,
+ RC_ROMANI_RANCH_GRASS_14,
+ RC_ROMANI_RANCH_GRASS_15,
+ RC_ROMANI_RANCH_GRASS_16,
+ RC_ROMANI_RANCH_GRASS_17,
+ RC_ROMANI_RANCH_GRASS_18,
+ RC_ROMANI_RANCH_GRASS_19,
+ RC_ROMANI_RANCH_GRASS_20,
+ RC_ROMANI_RANCH_GRASS_21,
+ RC_ROMANI_RANCH_GRASS_22,
+ RC_ROMANI_RANCH_GRASS_23,
+ RC_ROMANI_RANCH_GRASS_24,
+ RC_ROMANI_RANCH_GRASS_25,
+ RC_ROMANI_RANCH_GRASS_26,
+ RC_ROMANI_RANCH_GRASS_27,
+ RC_ROMANI_RANCH_GRASS_28,
+ RC_ROMANI_RANCH_GRASS_29,
+ RC_ROMANI_RANCH_GRASS_30,
+ RC_ROMANI_RANCH_GRASS_31,
+ RC_ROMANI_RANCH_GRASS_32,
+ RC_ROMANI_RANCH_GRASS_33,
+ RC_ROMANI_RANCH_GRASS_34,
+ RC_ROMANI_RANCH_GRASS_35,
+ RC_ROMANI_RANCH_GRASS_36,
+ RC_ROMANI_RANCH_GRASS_37,
+ RC_ROMANI_RANCH_GRASS_38,
+ RC_ROMANI_RANCH_GRASS_39,
+ RC_ROMANI_RANCH_GRASS_40,
+ RC_ROMANI_RANCH_GRASS_41,
+ RC_ROMANI_RANCH_GRASS_42,
+ RC_ROMANI_RANCH_GRASS_43,
+ RC_ROMANI_RANCH_GRASS_44,
+ RC_ROMANI_RANCH_GRASS_45,
+ RC_ROMANI_RANCH_GRASS_46,
+ RC_ROMANI_RANCH_GRASS_47,
+ RC_ROMANI_RANCH_GRASS_48,
+ RC_ROMANI_RANCH_GRASS_49,
+ RC_ROMANI_RANCH_GRASS_50,
+ RC_ROMANI_RANCH_GRASS_51,
+ RC_ROMANI_RANCH_GRASS_52,
+ RC_ROMANI_RANCH_GRASS_53,
+ RC_ROMANI_RANCH_GRASS_54,
+ RC_ROMANI_RANCH_GRASS_55,
+ RC_ROMANI_RANCH_GRASS_56,
+ RC_ROMANI_RANCH_GRASS_57,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_01,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_02,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_03,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_04,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_05,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_06,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_07,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_08,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_09,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_10,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_11,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_12,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_13,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_14,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_15,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_16,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_17,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_18,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_19,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_20,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_21,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_22,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_23,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_24,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_25,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_26,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_27,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_28,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_29,
+ RC_SOUTHERN_SWAMP_CLEARED_GRASS_30,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_01,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_02,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_03,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_04,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_05,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_06,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_07,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_08,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_09,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_10,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_11,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_12,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_13,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_14,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_15,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_16,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_17,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_18,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_19,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_20,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_21,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_22,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_23,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_24,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_25,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_26,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_27,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_28,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_29,
+ RC_SOUTHERN_SWAMP_POISON_GRASS_30,
+ RC_SOUTHERN_SWAMP_GROTTO_GRASS_01,
+ RC_SOUTHERN_SWAMP_GROTTO_GRASS_02,
+ RC_SOUTHERN_SWAMP_GROTTO_GRASS_03,
+ RC_SOUTHERN_SWAMP_GROTTO_GRASS_04,
+ RC_SOUTHERN_SWAMP_GROTTO_GRASS_05,
+ RC_SOUTHERN_SWAMP_GROTTO_GRASS_06,
+ RC_SOUTHERN_SWAMP_GROTTO_GRASS_07,
+ RC_SOUTHERN_SWAMP_GROTTO_GRASS_08,
+ RC_SOUTHERN_SWAMP_GROTTO_GRASS_09,
+ RC_SOUTHERN_SWAMP_GROTTO_GRASS_10,
+ RC_SOUTHERN_SWAMP_GROTTO_GRASS_11,
+ RC_SOUTHERN_SWAMP_GROTTO_GRASS_12,
+ RC_SOUTHERN_SWAMP_GROTTO_GRASS_13,
+ RC_SOUTHERN_SWAMP_GROTTO_GRASS_14,
+ RC_TERMINA_FIELD_BIO_BABA_GROTTO_GRASS_01,
+ RC_TERMINA_FIELD_BIO_BABA_GROTTO_GRASS_02,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_01,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_02,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_03,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_04,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_05,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_06,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_07,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_08,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_09,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_10,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_11,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_12,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_13,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_14,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_15,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_16,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_17,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_18,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_19,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_20,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_21,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_22,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_23,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_24,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_25,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_26,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_27,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_28,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_29,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_30,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_31,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_32,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_33,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_34,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_35,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_36,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_37,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_38,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_39,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_40,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_41,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_42,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_43,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_44,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_45,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_46,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_47,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_48,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_49,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_50,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_51,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_52,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_53,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_54,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_55,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_56,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_57,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_58,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_59,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_60,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_61,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_62,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_63,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_64,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_65,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_66,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_67,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_68,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_69,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_70,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_71,
+ RC_TERMINA_FIELD_COW_GROTTO_GRASS_72,
+ RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_01,
+ RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_02,
+ RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_03,
+ RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_04,
+ RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_3_GRASS_05,
+ RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_01,
+ RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_02,
+ RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_03,
+ RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_04,
+ RC_TERMINA_FIELD_GOSSIP_STONE_GROTTO_4_GRASS_05,
+ RC_TERMINA_FIELD_GRASS_01,
+ RC_TERMINA_FIELD_GRASS_02,
+ RC_TERMINA_FIELD_GRASS_03,
+ RC_TERMINA_FIELD_GRASS_04,
+ RC_TERMINA_FIELD_GRASS_05,
+ RC_TERMINA_FIELD_GRASS_06,
+ RC_TERMINA_FIELD_GRASS_07,
+ RC_TERMINA_FIELD_GRASS_08,
+ RC_TERMINA_FIELD_GRASS_09,
+ RC_TERMINA_FIELD_GRASS_10,
+ RC_TERMINA_FIELD_GRASS_11,
+ RC_TERMINA_FIELD_GRASS_12,
+ RC_TERMINA_FIELD_GRASS_13,
+ RC_TERMINA_FIELD_GRASS_14,
+ RC_TERMINA_FIELD_GRASS_15,
+ RC_TERMINA_FIELD_GRASS_16,
+ RC_TERMINA_FIELD_GRASS_17,
+ RC_TERMINA_FIELD_GRASS_18,
+ RC_TERMINA_FIELD_GRASS_19,
+ RC_TERMINA_FIELD_GRASS_20,
+ RC_TERMINA_FIELD_GRASS_21,
+ RC_TERMINA_FIELD_GRASS_22,
+ RC_TERMINA_FIELD_GRASS_23,
+ RC_TERMINA_FIELD_GRASS_24,
+ RC_TERMINA_FIELD_GRASS_25,
+ RC_TERMINA_FIELD_GRASS_26,
+ RC_TERMINA_FIELD_GRASS_27,
+ RC_TERMINA_FIELD_GRASS_28,
+ RC_TERMINA_FIELD_GRASS_29,
+ RC_TERMINA_FIELD_GRASS_30,
+ RC_TERMINA_FIELD_GRASS_31,
+ RC_TERMINA_FIELD_GRASS_32,
+ RC_TERMINA_FIELD_GRASS_33,
+ RC_TERMINA_FIELD_GRASS_34,
+ RC_TERMINA_FIELD_GRASS_35,
+ RC_TERMINA_FIELD_GRASS_36,
+ RC_TERMINA_FIELD_GRASS_37,
+ RC_TERMINA_FIELD_GRASS_38,
+ RC_TERMINA_FIELD_GRASS_39,
+ RC_TERMINA_FIELD_GRASS_40,
+ RC_TERMINA_FIELD_GRASS_41,
+ RC_TERMINA_FIELD_GRASS_42,
+ RC_TERMINA_FIELD_GRASS_43,
+ RC_TERMINA_FIELD_GRASS_44,
+ RC_TERMINA_FIELD_GRASS_45,
+ RC_TERMINA_FIELD_GRASS_46,
+ RC_TERMINA_FIELD_GRASS_47,
+ RC_TERMINA_FIELD_GRASS_48,
+ RC_TERMINA_FIELD_GRASS_49,
+ RC_TERMINA_FIELD_GRASS_50,
+ RC_TERMINA_FIELD_GRASS_51,
+ RC_TERMINA_FIELD_GRASS_52,
+ RC_TERMINA_FIELD_GRASS_53,
+ RC_TERMINA_FIELD_GRASS_54,
+ RC_TERMINA_FIELD_GRASS_55,
+ RC_TERMINA_FIELD_GRASS_56,
+ RC_TERMINA_FIELD_GRASS_57,
+ RC_TERMINA_FIELD_GRASS_58,
+ RC_TERMINA_FIELD_GRASS_59,
+ RC_TERMINA_FIELD_GRASS_60,
+ RC_TERMINA_FIELD_GRASS_61,
+ RC_TERMINA_FIELD_GRASS_62,
+ RC_TERMINA_FIELD_GRASS_63,
+ RC_TERMINA_FIELD_GRASS_64,
+ RC_TERMINA_FIELD_GRASS_65,
+ RC_TERMINA_FIELD_GRASS_66,
+ RC_TERMINA_FIELD_GRASS_67,
+ RC_TERMINA_FIELD_GRASS_68,
+ RC_TERMINA_FIELD_GRASS_69,
+ RC_TERMINA_FIELD_GRASS_70,
+ RC_TERMINA_FIELD_GRASS_71,
+ RC_TERMINA_FIELD_GRASS_72,
+ RC_TERMINA_FIELD_GRASS_73,
+ RC_TERMINA_FIELD_GRASS_74,
+ RC_TERMINA_FIELD_GRASS_75,
+ RC_TERMINA_FIELD_GRASS_76,
+ RC_TERMINA_FIELD_GRASS_77,
+ RC_TERMINA_FIELD_GRASS_78,
+ RC_TERMINA_FIELD_GRASS_79,
+ RC_TERMINA_FIELD_GRASS_80,
+ RC_TERMINA_FIELD_GRASS_81,
+ RC_TERMINA_FIELD_GRASS_82,
+ RC_TERMINA_FIELD_GRASS_83,
+ RC_TERMINA_FIELD_GRASS_84,
+ RC_TERMINA_FIELD_GRASS_85,
+ RC_TERMINA_FIELD_GRASS_86,
+ RC_TERMINA_FIELD_GRASS_87,
+ RC_TERMINA_FIELD_GRASS_88,
+ RC_TERMINA_FIELD_GRASS_89,
+ RC_TERMINA_FIELD_GRASS_90,
+ RC_TERMINA_FIELD_GRASS_91,
+ RC_TERMINA_FIELD_GRASS_92,
+ RC_TERMINA_FIELD_GRASS_93,
+ RC_TERMINA_FIELD_GRASS_94,
+ RC_TERMINA_FIELD_GRASS_95,
+ RC_TERMINA_FIELD_GRASS_96,
+ RC_TERMINA_FIELD_GRASS_97,
+ RC_TERMINA_FIELD_GRASS_98,
+ RC_TERMINA_FIELD_GRASS_99,
+ RC_TERMINA_FIELD_GRASS_100,
+ RC_TERMINA_FIELD_GRASS_101,
+ RC_TERMINA_FIELD_GRASS_102,
+ RC_TERMINA_FIELD_GRASS_103,
+ RC_TERMINA_FIELD_GRASS_104,
+ RC_TERMINA_FIELD_GRASS_105,
+ RC_TERMINA_FIELD_GRASS_106,
+ RC_TERMINA_FIELD_GRASS_107,
+ RC_TERMINA_FIELD_GRASS_108,
+ RC_TERMINA_FIELD_GRASS_109,
+ RC_TERMINA_FIELD_GRASS_110,
+ RC_TERMINA_FIELD_GRASS_111,
+ RC_TERMINA_FIELD_GRASS_112,
+ RC_TERMINA_FIELD_GRASS_113,
+ RC_TERMINA_FIELD_GRASS_114,
+ RC_TERMINA_FIELD_GRASS_115,
+ RC_TERMINA_FIELD_GRASS_116,
+ RC_TERMINA_FIELD_GRASS_117,
+ RC_TERMINA_FIELD_GRASS_118,
+ RC_TERMINA_FIELD_GRASS_119,
+ RC_TERMINA_FIELD_GRASS_120,
+ RC_TERMINA_FIELD_GRASS_121,
+ RC_TERMINA_FIELD_GRASS_122,
+ RC_TERMINA_FIELD_GRASS_123,
+ RC_TERMINA_FIELD_GRASS_124,
+ RC_TERMINA_FIELD_GRASS_125,
+ RC_TERMINA_FIELD_GRASS_126,
+ RC_TERMINA_FIELD_GRASS_127,
+ RC_TERMINA_FIELD_GRASS_128,
+ RC_TERMINA_FIELD_GRASS_129,
+ RC_TERMINA_FIELD_GRASS_130,
+ RC_TERMINA_FIELD_GRASS_131,
+ RC_TERMINA_FIELD_GRASS_132,
+ RC_TERMINA_FIELD_GRASS_133,
+ RC_TERMINA_FIELD_GRASS_134,
+ RC_TERMINA_FIELD_GRASS_135,
+ RC_TERMINA_FIELD_GRASS_136,
+ RC_TERMINA_FIELD_GRASS_137,
+ RC_TERMINA_FIELD_GRASS_138,
+ RC_TERMINA_FIELD_GRASS_139,
+ RC_TERMINA_FIELD_GRASS_140,
+ RC_TERMINA_FIELD_GRASS_141,
+ RC_TERMINA_FIELD_GRASS_142,
+ RC_TERMINA_FIELD_GRASS_143,
+ RC_TERMINA_FIELD_GRASS_144,
+ RC_TERMINA_FIELD_GRASS_145,
+ RC_TERMINA_FIELD_GRASS_146,
+ RC_TERMINA_FIELD_GRASS_147,
+ RC_TERMINA_FIELD_GRASS_148,
+ RC_TERMINA_FIELD_GRASS_149,
+ RC_TERMINA_FIELD_GRASS_150,
+ RC_TERMINA_FIELD_GRASS_151,
+ RC_TERMINA_FIELD_GRASS_152,
+ RC_TERMINA_FIELD_GRASS_153,
+ RC_TERMINA_FIELD_GRASS_154,
+ RC_TERMINA_FIELD_GRASS_155,
+ RC_TERMINA_FIELD_GRASS_156,
+ RC_TERMINA_FIELD_GRASS_157,
+ RC_TERMINA_FIELD_GRASS_158,
+ RC_TERMINA_FIELD_GRASS_159,
+ RC_TERMINA_FIELD_GRASS_160,
+ RC_TERMINA_FIELD_GRASS_161,
+ RC_TERMINA_FIELD_GRASS_162,
+ RC_TERMINA_FIELD_GRASS_163,
+ RC_TERMINA_FIELD_GRASS_164,
+ RC_TERMINA_FIELD_GRASS_165,
+ RC_TERMINA_FIELD_GRASS_166,
+ RC_TERMINA_FIELD_GRASS_167,
+ RC_TERMINA_FIELD_GRASS_168,
+ RC_TERMINA_FIELD_GRASS_169,
+ RC_TERMINA_FIELD_GRASS_170,
+ RC_TERMINA_FIELD_GRASS_171,
+ RC_TERMINA_FIELD_GRASS_172,
+ RC_TERMINA_FIELD_GRASS_173,
+ RC_TERMINA_FIELD_GRASS_174,
+ RC_TERMINA_FIELD_GRASS_175,
+ RC_TERMINA_FIELD_GRASS_176,
+ RC_TERMINA_FIELD_GRASS_177,
+ RC_TERMINA_FIELD_GRASS_178,
+ RC_TERMINA_FIELD_GRASS_179,
+ RC_TERMINA_FIELD_GRASS_180,
+ RC_TERMINA_FIELD_GRASS_181,
+ RC_TERMINA_FIELD_GRASS_182,
+ RC_TERMINA_FIELD_GRASS_183,
+ RC_TERMINA_FIELD_GRASS_184,
+ RC_TERMINA_FIELD_GRASS_185,
+ RC_TERMINA_FIELD_GRASS_186,
+ RC_TERMINA_FIELD_GRASS_187,
+ RC_TERMINA_FIELD_GRASS_188,
+ RC_TERMINA_FIELD_GRASS_189,
+ RC_TERMINA_FIELD_GRASS_190,
+ RC_TERMINA_FIELD_GRASS_191,
+ RC_TERMINA_FIELD_GRASS_192,
+ RC_TERMINA_FIELD_GRASS_193,
+ RC_TERMINA_FIELD_GRASS_194,
+ RC_TERMINA_FIELD_GRASS_195,
+ RC_TERMINA_FIELD_GRASS_196,
+ RC_TERMINA_FIELD_GRASS_197,
+ RC_TERMINA_FIELD_GRASS_198,
+ RC_TERMINA_FIELD_GRASS_199,
+ RC_TERMINA_FIELD_GRASS_200,
+ RC_TERMINA_FIELD_GRASS_201,
+ RC_TERMINA_FIELD_GRASS_202,
+ RC_TERMINA_FIELD_GRASS_203,
+ RC_TERMINA_FIELD_GRASS_204,
+ RC_TERMINA_FIELD_GRASS_205,
+ RC_TERMINA_FIELD_GRASS_206,
+ RC_TERMINA_FIELD_GRASS_207,
+ RC_TERMINA_FIELD_GRASS_208,
+ RC_TERMINA_FIELD_GRASS_209,
+ RC_TERMINA_FIELD_GRASS_210,
+ RC_TERMINA_FIELD_GRASS_211,
+ RC_TERMINA_FIELD_GRASS_212,
+ RC_TERMINA_FIELD_GRASS_213,
+ RC_TERMINA_FIELD_GRASS_214,
+ RC_TERMINA_FIELD_GRASS_215,
+ RC_TERMINA_FIELD_GRASS_216,
+ RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_01,
+ RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_02,
+ RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_03,
+ RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_04,
+ RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_05,
+ RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_06,
+ RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_07,
+ RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_08,
+ RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_09,
+ RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_10,
+ RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_11,
+ RC_TERMINA_FIELD_PEAHAT_GROTTO_GRASS_12,
+ RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_01,
+ RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_02,
+ RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_03,
+ RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_04,
+ RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_05,
+ RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_06,
+ RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_07,
+ RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_08,
+ RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_09,
+ RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_10,
+ RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_11,
+ RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_12,
+ RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_13,
+ RC_TERMINA_FIELD_PILLAR_GROTTO_GRASS_14,
+ RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_01,
+ RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_02,
+ RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_03,
+ RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_04,
+ RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_05,
+ RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_06,
+ RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_07,
+ RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_08,
+ RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_09,
+ RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_10,
+ RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_11,
+ RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_12,
+ RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_13,
+ RC_TERMINA_FIELD_TALL_GRASS_GROTTO_GRASS_14,
+ RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_01,
+ RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_02,
+ RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_03,
+ RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_04,
+ RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_05,
+ RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_06,
+ RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_07,
+ RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_08,
+ RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_09,
+ RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_10,
+ RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_11,
+ RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_12,
+ RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_13,
+ RC_TWIN_ISLANDS_RAMP_GROTTO_GRASS_14,
+ RC_TWIN_ISLANDS_SPRING_GRASS_01,
+ RC_TWIN_ISLANDS_SPRING_GRASS_02,
+ RC_TWIN_ISLANDS_SPRING_GRASS_03,
+ RC_TWIN_ISLANDS_SPRING_GRASS_04,
+ RC_TWIN_ISLANDS_SPRING_GRASS_05,
+ RC_TWIN_ISLANDS_SPRING_GRASS_06,
+ RC_TWIN_ISLANDS_SPRING_GRASS_07,
+ RC_TWIN_ISLANDS_SPRING_GRASS_08,
+ RC_TWIN_ISLANDS_SPRING_GRASS_09,
+ RC_TWIN_ISLANDS_SPRING_GRASS_10,
+ RC_TWIN_ISLANDS_SPRING_GRASS_11,
+ RC_TWIN_ISLANDS_SPRING_GRASS_12,
+ RC_WOODS_OF_MYSTERY_GRASS_01,
+ RC_WOODS_OF_MYSTERY_GRASS_02,
+ RC_WOODS_OF_MYSTERY_GRASS_03,
+ RC_WOODS_OF_MYSTERY_GRASS_04,
+ RC_WOODS_OF_MYSTERY_GRASS_05,
+ RC_WOODS_OF_MYSTERY_GRASS_06,
+ RC_WOODS_OF_MYSTERY_GRASS_07,
+ RC_WOODS_OF_MYSTERY_GRASS_08,
+ RC_WOODS_OF_MYSTERY_GRASS_09,
+ RC_WOODS_OF_MYSTERY_GRASS_10,
+ RC_WOODS_OF_MYSTERY_GRASS_11,
+ RC_WOODS_OF_MYSTERY_GRASS_12,
+ RC_WOODS_OF_MYSTERY_GRASS_13,
+ RC_WOODS_OF_MYSTERY_GRASS_14,
+ RC_WOODS_OF_MYSTERY_GRASS_15,
+ RC_WOODS_OF_MYSTERY_GRASS_16,
+ RC_WOODS_OF_MYSTERY_GRASS_17,
+ RC_WOODS_OF_MYSTERY_GRASS_18,
+ RC_WOODS_OF_MYSTERY_GRASS_19,
+ RC_WOODS_OF_MYSTERY_GRASS_20,
+ RC_WOODS_OF_MYSTERY_GRASS_21,
+ RC_WOODS_OF_MYSTERY_GROTTO_GRASS_01,
+ RC_WOODS_OF_MYSTERY_GROTTO_GRASS_02,
+ RC_WOODS_OF_MYSTERY_GROTTO_GRASS_03,
+ RC_WOODS_OF_MYSTERY_GROTTO_GRASS_04,
+ RC_WOODS_OF_MYSTERY_GROTTO_GRASS_05,
+ RC_WOODS_OF_MYSTERY_GROTTO_GRASS_06,
+ RC_WOODS_OF_MYSTERY_GROTTO_GRASS_07,
+ RC_WOODS_OF_MYSTERY_GROTTO_GRASS_08,
+ RC_WOODS_OF_MYSTERY_GROTTO_GRASS_09,
+ RC_WOODS_OF_MYSTERY_GROTTO_GRASS_10,
+ RC_WOODS_OF_MYSTERY_GROTTO_GRASS_11,
+ RC_WOODS_OF_MYSTERY_GROTTO_GRASS_12,
+ RC_WOODS_OF_MYSTERY_GROTTO_GRASS_13,
+ RC_WOODS_OF_MYSTERY_GROTTO_GRASS_14,
+ RC_WOODFALL_GRASS_01,
+ RC_WOODFALL_GRASS_02,
+ RC_WOODFALL_GRASS_03,
+ RC_WOODFALL_GRASS_04,
+ RC_WOODFALL_GRASS_05,
+ RC_WOODFALL_GRASS_06,
+ RC_ZORA_CAPE_GROTTO_GRASS_01,
+ RC_ZORA_CAPE_GROTTO_GRASS_02,
+ RC_ZORA_CAPE_GROTTO_GRASS_03,
+ RC_ZORA_CAPE_GROTTO_GRASS_04,
+ RC_ZORA_CAPE_GROTTO_GRASS_05,
+ RC_ZORA_CAPE_GROTTO_GRASS_06,
+ RC_ZORA_CAPE_GROTTO_GRASS_07,
+ RC_ZORA_CAPE_GROTTO_GRASS_08,
+ RC_ZORA_CAPE_GROTTO_GRASS_09,
+ RC_ZORA_CAPE_GROTTO_GRASS_10,
+ RC_ZORA_CAPE_GROTTO_GRASS_11,
+ RC_ZORA_CAPE_GROTTO_GRASS_12,
+ RC_ZORA_CAPE_GROTTO_GRASS_13,
+ RC_ZORA_CAPE_GROTTO_GRASS_14,
+
RC_MAX,
} RandoCheckId;
@@ -1884,6 +2736,7 @@ typedef enum {
RO_SHUFFLE_COWS,
RO_SHUFFLE_CRATE_DROPS,
RO_SHUFFLE_FREESTANDING_ITEMS,
+ RO_SHUFFLE_GRASS_DROPS,
RO_SHUFFLE_GOLD_SKULLTULAS,
RO_SHUFFLE_OWL_STATUES,
RO_SHUFFLE_POT_DROPS,
diff --git a/mm/2s2h/ShipUtils.cpp b/mm/2s2h/ShipUtils.cpp
index 08a0be183..bc26f3790 100644
--- a/mm/2s2h/ShipUtils.cpp
+++ b/mm/2s2h/ShipUtils.cpp
@@ -15,6 +15,7 @@
#include "assets/archives/icon_item_static/icon_item_static_yar.h"
#include "assets/interface/icon_item_dungeon_static/icon_item_dungeon_static.h"
#include "assets/interface/icon_item_field_static/icon_item_field_static.h"
+#include "assets/objects/gameplay_keep/gameplay_keep.h"
extern "C" {
#include "z64.h"
@@ -44,7 +45,7 @@ std::unordered_map<s16, const char*> sceneNames = {
#undef DEFINE_SCENE_UNSET
// These textures are not in existing lists that we iterate over.
-std::array<const char*, 18> miscellaneousTextures = {
+std::array<const char*, 19> miscellaneousTextures = {
gArcheryScoreIconTex,
gBarrelTrackerIcon,
gChestTrackerIcon,
@@ -63,6 +64,7 @@ std::array<const char*, 18> miscellaneousTextures = {
gStrayFairyWoodfallIconTex,
gTimerClockIconTex,
gWorldMapOwlFaceTex,
+ gameplay_keep_Tex_053140,
};
std::array<const char*, 11> digitList = { gCounterDigit0Tex, gCounterDigit1Tex, gCounterDigit2Tex, gCounterDigit3Tex,
diff --git a/mm/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c b/mm/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c
index 9fcffda65..d94cb284b 100644
--- a/mm/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c
+++ b/mm/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c
@@ -11,6 +11,7 @@
#include "overlays/actors/ovl_En_Insect/z_en_insect.h"
#include "2s2h/ShipUtils.h"
+#include "GameInteractor/GameInteractor.h"
#define FLAGS (ACTOR_FLAG_10 | ACTOR_FLAG_800000)
@@ -248,8 +249,10 @@ void EnKusa_DropCollectible(EnKusa* this, PlayState* play) {
if ((KUSA_GET_TYPE(&this->actor) == ENKUSA_TYPE_GRASS) || (KUSA_GET_TYPE(&this->actor) == ENKUSA_TYPE_BUSH)) {
if (!KUSA_GET_PARAM_0C(&this->actor)) {
- Item_DropCollectibleRandom(play, NULL, &this->actor.world.pos,
- KUSA_GET_RAND_COLLECTIBLE_ID(&this->actor) * 0x10);
+ if (GameInteractor_Should(VB_GRASS_DROP_COLLECTIBLE, true, ACTOR_EN_KUSA, this)) {
+ Item_DropCollectibleRandom(play, NULL, &this->actor.world.pos,
+ KUSA_GET_RAND_COLLECTIBLE_ID(&this->actor) * 0x10);
+ }
}
} else if (KUSA_GET_TYPE(&this->actor) == ENKUSA_TYPE_REGROWING_GRASS) {
Item_DropCollectible(play, &this->actor.world.pos, 3);
diff --git a/mm/src/overlays/actors/ovl_Obj_Grass/z_obj_grass.c b/mm/src/overlays/actors/ovl_Obj_Grass/z_obj_grass.c
index e0a1df6ae..4e28ed917 100644
--- a/mm/src/overlays/actors/ovl_Obj_Grass/z_obj_grass.c
+++ b/mm/src/overlays/actors/ovl_Obj_Grass/z_obj_grass.c
@@ -14,6 +14,7 @@
#include "2s2h/ShipUtils.h"
#include "2s2h/Enhancements/FrameInterpolation/FrameInterpolation.h"
#include "public/bridge/consolevariablebridge.h"
+#include "GameInteractor/GameInteractor.h"
#define FLAGS (ACTOR_FLAG_10 | ACTOR_FLAG_20)
@@ -113,8 +114,10 @@ void ObjGrass_OverrideMatrixCurrent(MtxF* matrix) {
}
void ObjGrass_DropCollectible(ObjGrassElement* grassElem, PlayState* play) {
- if (!(grassElem->dropTable & 0x10)) {
- Item_DropCollectibleRandom(play, NULL, &grassElem->pos, grassElem->dropTable * 0x10);
+ if (GameInteractor_Should(VB_GRASS_DROP_COLLECTIBLE, true, ACTOR_OBJ_GRASS, grassElem)) {
+ if (!(grassElem->dropTable & 0x10)) {
+ Item_DropCollectibleRandom(play, NULL, &grassElem->pos, grassElem->dropTable * 0x10);
+ }
}
}
diff --git a/mm/src/overlays/actors/ovl_Obj_Grass_Carry/z_obj_grass_carry.c b/mm/src/overlays/actors/ovl_Obj_Grass_Carry/z_obj_grass_carry.c
index 4c937b2f9..b642d6f40 100644
--- a/mm/src/overlays/actors/ovl_Obj_Grass_Carry/z_obj_grass_carry.c
+++ b/mm/src/overlays/actors/ovl_Obj_Grass_Carry/z_obj_grass_carry.c
@@ -8,6 +8,7 @@
#include "objects/gameplay_field_keep/gameplay_field_keep.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "overlays/actors/ovl_Obj_Grass/z_obj_grass.h"
+#include "GameInteractor/GameInteractor.h"
#define FLAGS (ACTOR_FLAG_10 | ACTOR_FLAG_20 | ACTOR_FLAG_800000)
@@ -287,7 +288,9 @@ void ObjGrassCarry_Fall(ObjGrassCarry* this, PlayState* play) {
if ((this->actor.bgCheckFlags & (BGCHECKFLAG_GROUND | BGCHECKFLAG_GROUND_TOUCH | BGCHECKFLAG_WALL)) || atHit ||
(this->fallTimer <= 0)) {
ObjGrassCarry_SpawnFragments(&this->actor.world.pos, play);
- ObjGrassCarry_DropCollectible(&this->actor.world.pos, this->dropTable, play);
+ if (GameInteractor_Should(VB_GRASS_DROP_COLLECTIBLE, true, ACTOR_OBJ_GRASS_CARRY, this)) {
+ ObjGrassCarry_DropCollectible(&this->actor.world.pos, this->dropTable, play);
+ }
this->actor.draw = NULL;
this->actor.shape.shadowDraw = NULL;