mirror of
https://github.com/ArchipelagoMW/Archipelago.git
synced 2026-03-25 11:03:21 -07:00
Jak 1: Add Scout Flies to Regions.
This commit is contained in:
@@ -3,7 +3,7 @@ from enum import Enum
|
||||
from BaseClasses import MultiWorld, Region
|
||||
from .Options import JakAndDaxterOptions
|
||||
from .Locations import JakAndDaxterLocation, location_table
|
||||
from .locs import CellLocations, SpecialLocations
|
||||
from .locs import CellLocations, SpecialLocations, ScoutLocations
|
||||
|
||||
|
||||
class JakAndDaxterLevel(int, Enum):
|
||||
@@ -75,15 +75,22 @@ def create_regions(multiworld: MultiWorld, options: JakAndDaxterOptions, player:
|
||||
region_menu = create_region(player, multiworld, "Menu")
|
||||
|
||||
region_gr = create_region(player, multiworld, level_table[JakAndDaxterLevel.GEYSER_ROCK])
|
||||
create_locations(region_gr, CellLocations.locGR_cellTable)
|
||||
create_locations(region_gr, {
|
||||
**CellLocations.locGR_cellTable,
|
||||
**ScoutLocations.locGR_scoutTable
|
||||
})
|
||||
|
||||
region_sv = create_region(player, multiworld, level_table[JakAndDaxterLevel.SANDOVER_VILLAGE])
|
||||
create_locations(region_sv, CellLocations.locSV_cellTable)
|
||||
create_locations(region_sv, {
|
||||
**CellLocations.locSV_cellTable,
|
||||
**ScoutLocations.locSV_scoutTable
|
||||
})
|
||||
|
||||
region_fj = create_region(player, multiworld, level_table[JakAndDaxterLevel.FORBIDDEN_JUNGLE])
|
||||
create_locations(region_fj, {
|
||||
**{k: CellLocations.locFJ_cellTable[k] for k in {10, 11, 12, 14, 15, 16, 17}},
|
||||
**{k: SpecialLocations.loc_specialTable[k] for k in {2213, 2216}}
|
||||
**{k: SpecialLocations.loc_specialTable[k] for k in {2213, 2216}},
|
||||
**ScoutLocations.locFJ_scoutTable
|
||||
})
|
||||
|
||||
sub_region_fjpr = create_subregion(region_fj, subLevel_table[JakAndDaxterSubLevel.FORBIDDEN_JUNGLE_PLANT_ROOM])
|
||||
@@ -92,52 +99,82 @@ def create_regions(multiworld: MultiWorld, options: JakAndDaxterOptions, player:
|
||||
region_sb = create_region(player, multiworld, level_table[JakAndDaxterLevel.SENTINEL_BEACH])
|
||||
create_locations(region_sb, {
|
||||
**{k: CellLocations.locSB_cellTable[k] for k in {18, 19, 20, 21, 23, 24, 25}},
|
||||
**{k: SpecialLocations.loc_specialTable[k] for k in {2215}}
|
||||
**{k: SpecialLocations.loc_specialTable[k] for k in {2215}},
|
||||
**ScoutLocations.locSB_scoutTable
|
||||
})
|
||||
|
||||
sub_region_sbct = create_subregion(region_sb, subLevel_table[JakAndDaxterSubLevel.SENTINEL_BEACH_CANNON_TOWER])
|
||||
create_locations(sub_region_sbct, {k: CellLocations.locSB_cellTable[k] for k in {22}})
|
||||
|
||||
region_mi = create_region(player, multiworld, level_table[JakAndDaxterLevel.MISTY_ISLAND])
|
||||
create_locations(region_mi, CellLocations.locMI_cellTable)
|
||||
create_locations(region_mi, {
|
||||
**CellLocations.locMI_cellTable,
|
||||
**ScoutLocations.locMI_scoutTable
|
||||
})
|
||||
|
||||
region_fc = create_region(player, multiworld, level_table[JakAndDaxterLevel.FIRE_CANYON])
|
||||
create_locations(region_fc, CellLocations.locFC_cellTable)
|
||||
create_locations(region_fc, {
|
||||
**CellLocations.locFC_cellTable,
|
||||
**ScoutLocations.locFC_scoutTable
|
||||
})
|
||||
|
||||
region_rv = create_region(player, multiworld, level_table[JakAndDaxterLevel.ROCK_VILLAGE])
|
||||
create_locations(region_rv, {
|
||||
**CellLocations.locRV_cellTable,
|
||||
**{k: SpecialLocations.loc_specialTable[k] for k in {2217}}
|
||||
**{k: SpecialLocations.loc_specialTable[k] for k in {2217}},
|
||||
**ScoutLocations.locRV_scoutTable
|
||||
})
|
||||
|
||||
region_pb = create_region(player, multiworld, level_table[JakAndDaxterLevel.PRECURSOR_BASIN])
|
||||
create_locations(region_pb, CellLocations.locPB_cellTable)
|
||||
create_locations(region_pb, {
|
||||
**CellLocations.locPB_cellTable,
|
||||
**ScoutLocations.locPB_scoutTable
|
||||
})
|
||||
|
||||
region_lpc = create_region(player, multiworld, level_table[JakAndDaxterLevel.LOST_PRECURSOR_CITY])
|
||||
create_locations(region_lpc, CellLocations.locLPC_cellTable)
|
||||
create_locations(region_lpc, {
|
||||
**CellLocations.locLPC_cellTable,
|
||||
**ScoutLocations.locLPC_scoutTable
|
||||
})
|
||||
|
||||
region_bs = create_region(player, multiworld, level_table[JakAndDaxterLevel.BOGGY_SWAMP])
|
||||
create_locations(region_bs, {k: CellLocations.locBS_cellTable[k] for k in {59, 60, 61, 62, 63, 64}})
|
||||
create_locations(region_bs, {
|
||||
**{k: CellLocations.locBS_cellTable[k] for k in {59, 60, 61, 62, 63, 64}},
|
||||
**{k: ScoutLocations.locBS_scoutTable[k] for k in {164, 165, 166, 167, 170}}
|
||||
})
|
||||
|
||||
sub_region_bsff = create_subregion(region_bs, subLevel_table[JakAndDaxterSubLevel.BOGGY_SWAMP_FLUT_FLUT])
|
||||
create_locations(sub_region_bsff, {k: CellLocations.locBS_cellTable[k] for k in {58, 65}})
|
||||
create_locations(sub_region_bsff, {
|
||||
**{k: CellLocations.locBS_cellTable[k] for k in {58, 65}},
|
||||
**{k: ScoutLocations.locBS_scoutTable[k] for k in {168, 169}}
|
||||
})
|
||||
|
||||
region_mp = create_region(player, multiworld, level_table[JakAndDaxterLevel.MOUNTAIN_PASS])
|
||||
create_locations(region_mp, {k: CellLocations.locMP_cellTable[k] for k in {66, 67, 69}})
|
||||
create_locations(region_mp, {
|
||||
**{k: CellLocations.locMP_cellTable[k] for k in {66, 67, 69}},
|
||||
**ScoutLocations.locMP_scoutTable
|
||||
})
|
||||
|
||||
sub_region_mps = create_subregion(region_mp, subLevel_table[JakAndDaxterSubLevel.MOUNTAIN_PASS_SHORTCUT])
|
||||
create_locations(sub_region_mps, {k: CellLocations.locMP_cellTable[k] for k in {68}})
|
||||
|
||||
region_vc = create_region(player, multiworld, level_table[JakAndDaxterLevel.VOLCANIC_CRATER])
|
||||
create_locations(region_vc, CellLocations.locVC_cellTable)
|
||||
create_locations(region_vc, {
|
||||
**CellLocations.locVC_cellTable,
|
||||
**ScoutLocations.locVC_scoutTable
|
||||
})
|
||||
|
||||
region_sc = create_region(player, multiworld, level_table[JakAndDaxterLevel.SPIDER_CAVE])
|
||||
create_locations(region_sc, CellLocations.locSC_cellTable)
|
||||
create_locations(region_sc, {
|
||||
**CellLocations.locSC_cellTable,
|
||||
**ScoutLocations.locSC_scoutTable
|
||||
})
|
||||
|
||||
region_sm = create_region(player, multiworld, level_table[JakAndDaxterLevel.SNOWY_MOUNTAIN])
|
||||
create_locations(region_sm, {
|
||||
**{k: CellLocations.locSM_cellTable[k] for k in {86, 87, 88, 89, 92}},
|
||||
**{k: SpecialLocations.loc_specialTable[k] for k in {2218}}
|
||||
**{k: SpecialLocations.loc_specialTable[k] for k in {2218}},
|
||||
**{k: ScoutLocations.locSM_scoutTable[k] for k in {192, 193, 194, 195, 196}}
|
||||
})
|
||||
|
||||
sub_region_smff = create_subregion(region_sm, subLevel_table[JakAndDaxterSubLevel.SNOWY_MOUNTAIN_FLUT_FLUT])
|
||||
@@ -147,16 +184,28 @@ def create_regions(multiworld: MultiWorld, options: JakAndDaxterOptions, player:
|
||||
})
|
||||
|
||||
sub_region_smlf = create_subregion(region_sm, subLevel_table[JakAndDaxterSubLevel.SNOWY_MOUNTAIN_LURKER_FORT])
|
||||
create_locations(sub_region_smlf, {k: CellLocations.locSM_cellTable[k] for k in {91, 93}})
|
||||
create_locations(sub_region_smlf, {
|
||||
**{k: CellLocations.locSM_cellTable[k] for k in {91, 93}},
|
||||
**{k: ScoutLocations.locSM_scoutTable[k] for k in {197, 198}}
|
||||
})
|
||||
|
||||
region_lt = create_region(player, multiworld, level_table[JakAndDaxterLevel.LAVA_TUBE])
|
||||
create_locations(region_lt, CellLocations.locLT_cellTable)
|
||||
create_locations(region_lt, {
|
||||
**CellLocations.locLT_cellTable,
|
||||
**ScoutLocations.locLT_scoutTable
|
||||
})
|
||||
|
||||
region_gmc = create_region(player, multiworld, level_table[JakAndDaxterLevel.GOL_AND_MAIAS_CITADEL])
|
||||
create_locations(region_gmc, {k: CellLocations.locGMC_cellTable[k] for k in {96, 97, 98}})
|
||||
create_locations(region_gmc, {
|
||||
**{k: CellLocations.locGMC_cellTable[k] for k in {96, 97, 98}},
|
||||
**{k: ScoutLocations.locGMC_scoutTable[k] for k in {206, 207, 208, 209, 210, 211}}
|
||||
})
|
||||
|
||||
sub_region_gmcrt = create_subregion(region_gmc, subLevel_table[JakAndDaxterSubLevel.GOL_AND_MAIAS_CITADEL_ROTATING_TOWER])
|
||||
create_locations(sub_region_gmcrt, {k: CellLocations.locGMC_cellTable[k] for k in {99, 100}})
|
||||
create_locations(sub_region_gmcrt, {
|
||||
**{k: CellLocations.locGMC_cellTable[k] for k in {99, 100}},
|
||||
**{k: ScoutLocations.locGMC_scoutTable[k] for k in {212}}
|
||||
})
|
||||
|
||||
|
||||
def create_region(player: int, multiworld: MultiWorld, name: str) -> JakAndDaxterRegion:
|
||||
|
||||
@@ -2,57 +2,57 @@
|
||||
|
||||
# Geyser Rock
|
||||
locGR_scoutTable = {
|
||||
101: "GR: Scout Fly 1",
|
||||
102: "GR: Scout Fly 2",
|
||||
103: "GR: Scout Fly 3",
|
||||
104: "GR: Scout Fly 4",
|
||||
105: "GR: Scout Fly 5",
|
||||
106: "GR: Scout Fly 6",
|
||||
107: "GR: Scout Fly 7"
|
||||
101: "GR: Scout Fly On Ground, Front",
|
||||
102: "GR: Scout Fly On Ground, Back",
|
||||
103: "GR: Scout Fly On Left Ledge",
|
||||
104: "GR: Scout Fly On Right Ledge",
|
||||
105: "GR: Scout Fly On Middle Ledge, Left",
|
||||
106: "GR: Scout Fly On Middle Ledge, Right",
|
||||
107: "GR: Scout Fly On Top Ledge"
|
||||
}
|
||||
|
||||
# Sandover Village
|
||||
locSV_scoutTable = {
|
||||
108: "SV: Scout Fly 1",
|
||||
109: "SV: Scout Fly 2",
|
||||
110: "SV: Scout Fly 3",
|
||||
111: "SV: Scout Fly 4",
|
||||
112: "SV: Scout Fly 5",
|
||||
113: "SV: Scout Fly 6",
|
||||
114: "SV: Scout Fly 7"
|
||||
108: "SV: Scout Fly In Fisherman's House",
|
||||
109: "SV: Scout Fly In Mayor's House",
|
||||
110: "SV: Scout Fly Under Bridge",
|
||||
111: "SV: Scout Fly Behind Sculptor's House",
|
||||
112: "SV: Scout Fly Overlooking Farmer's House",
|
||||
113: "SV: Scout Fly Near Oracle",
|
||||
114: "SV: Scout Fly In Farmer's House"
|
||||
}
|
||||
|
||||
# Forbidden Jungle
|
||||
locFJ_scoutTable = {
|
||||
115: "FJ: Scout Fly 1",
|
||||
116: "FJ: Scout Fly 2",
|
||||
117: "FJ: Scout Fly 3",
|
||||
118: "FJ: Scout Fly 4",
|
||||
119: "FJ: Scout Fly 5",
|
||||
120: "FJ: Scout Fly 6",
|
||||
121: "FJ: Scout Fly 7"
|
||||
115: "FJ: Scout Fly At End Of Path",
|
||||
116: "FJ: Scout Fly On Spiral Of Stumps",
|
||||
117: "FJ: Scout Fly Under Bridge",
|
||||
118: "FJ: Scout Fly At End Of River",
|
||||
119: "FJ: Scout Fly Behind Lurker Machine",
|
||||
120: "FJ: Scout Fly Around Temple Spire",
|
||||
121: "FJ: Scout Fly On Top Of Temple"
|
||||
}
|
||||
|
||||
# Sentinel Beach
|
||||
locSB_scoutTable = {
|
||||
122: "SB: Scout Fly 1",
|
||||
123: "SB: Scout Fly 2",
|
||||
124: "SB: Scout Fly 3",
|
||||
125: "SB: Scout Fly 4",
|
||||
126: "SB: Scout Fly 5",
|
||||
127: "SB: Scout Fly 6",
|
||||
128: "SB: Scout Fly 7"
|
||||
122: "SB: Scout Fly At Entrance",
|
||||
123: "SB: Scout Fly Overlooking Locked Boxes",
|
||||
124: "SB: Scout Fly On Path To Flut Flut",
|
||||
125: "SB: Scout Fly Under Wood Pillars",
|
||||
126: "SB: Scout Fly Overlooking Blue Eco Vents",
|
||||
127: "SB: Scout Fly Overlooking Green Eco Vents",
|
||||
128: "SB: Scout Fly On Sentinel"
|
||||
}
|
||||
|
||||
# Misty Island
|
||||
locMI_scoutTable = {
|
||||
129: "MI: Scout Fly 1",
|
||||
130: "MI: Scout Fly 2",
|
||||
131: "MI: Scout Fly 3",
|
||||
132: "MI: Scout Fly 4",
|
||||
133: "MI: Scout Fly 5",
|
||||
134: "MI: Scout Fly 6",
|
||||
135: "MI: Scout Fly 7"
|
||||
129: "MI: Scout Fly Overlooking Entrance",
|
||||
130: "MI: Scout Fly On Ledge Path, First",
|
||||
131: "MI: Scout Fly On Ledge Path, Second",
|
||||
132: "MI: Scout Fly Overlooking Shipyard",
|
||||
133: "MI: Scout Fly On Ship",
|
||||
134: "MI: Scout Fly On Barrel Ramps",
|
||||
135: "MI: Scout Fly On Zoomer Ramps"
|
||||
}
|
||||
|
||||
# Fire Canyon
|
||||
@@ -68,46 +68,46 @@ locFC_scoutTable = {
|
||||
|
||||
# Rock Village
|
||||
locRV_scoutTable = {
|
||||
143: "RV: Scout Fly 1",
|
||||
144: "RV: Scout Fly 2",
|
||||
145: "RV: Scout Fly 3",
|
||||
146: "RV: Scout Fly 4",
|
||||
147: "RV: Scout Fly 5",
|
||||
148: "RV: Scout Fly 6",
|
||||
149: "RV: Scout Fly 7"
|
||||
143: "RV: Scout Fly Behind Sage's Hut",
|
||||
144: "RV: Scout Fly On Path To Village",
|
||||
145: "RV: Scout Fly Behind Geologist",
|
||||
146: "RV: Scout Fly Behind Fiery Boulder",
|
||||
147: "RV: Scout Fly On Dock",
|
||||
148: "RV: Scout Fly At Pontoon Bridge",
|
||||
149: "RV: Scout Fly At Boggy Swamp Entrance"
|
||||
}
|
||||
|
||||
# Precursor Basin
|
||||
locPB_scoutTable = {
|
||||
150: "PB: Scout Fly 1",
|
||||
151: "PB: Scout Fly 2",
|
||||
152: "PB: Scout Fly 3",
|
||||
153: "PB: Scout Fly 4",
|
||||
154: "PB: Scout Fly 5",
|
||||
155: "PB: Scout Fly 6",
|
||||
156: "PB: Scout Fly 7"
|
||||
150: "PB: Scout Fly Overlooking Entrance",
|
||||
151: "PB: Scout Fly Near Mole Hole",
|
||||
152: "PB: Scout Fly At Purple Ring Start",
|
||||
153: "PB: Scout Fly Overlooking Dark Eco Plant",
|
||||
154: "PB: Scout Fly At Green Ring Start",
|
||||
155: "PB: Scout Fly Before Big Jump",
|
||||
156: "PB: Scout Fly Near Dark Eco Plant"
|
||||
}
|
||||
|
||||
# Lost Precursor City
|
||||
locLPC_scoutTable = {
|
||||
157: "LPC: Scout Fly 1",
|
||||
158: "LPC: Scout Fly 2",
|
||||
159: "LPC: Scout Fly 3",
|
||||
160: "LPC: Scout Fly 4",
|
||||
161: "LPC: Scout Fly 5",
|
||||
162: "LPC: Scout Fly 6",
|
||||
163: "LPC: Scout Fly 7"
|
||||
157: "LPC: Scout Fly First Room",
|
||||
158: "LPC: Scout Fly Before Second Room",
|
||||
159: "LPC: Scout Fly Second Room, Near Orb Vent",
|
||||
160: "LPC: Scout Fly Second Room, On Path To Cell",
|
||||
161: "LPC: Scout Fly Second Room, Green Switch",
|
||||
162: "LPC: Scout Fly Second Room, Blue Switch",
|
||||
163: "LPC: Scout Fly Across Steam Vents"
|
||||
}
|
||||
|
||||
# Boggy Swamp
|
||||
locBS_scoutTable = {
|
||||
164: "BS: Scout Fly 1",
|
||||
165: "BS: Scout Fly 2",
|
||||
166: "BS: Scout Fly 3",
|
||||
167: "BS: Scout Fly 4",
|
||||
168: "BS: Scout Fly 5",
|
||||
169: "BS: Scout Fly 6",
|
||||
170: "BS: Scout Fly 7"
|
||||
164: "BS: Scout Fly Near Entrance",
|
||||
165: "BS: Scout Fly Over First Jump Pad",
|
||||
166: "BS: Scout Fly Over Second Jump Pad",
|
||||
167: "BS: Scout Fly Across Black Swamp",
|
||||
168: "BS: Scout Fly Overlooking Flut Flut",
|
||||
169: "BS: Scout Fly On Flut Flut Platforms",
|
||||
170: "BS: Scout Fly In Field Of Boxes"
|
||||
}
|
||||
|
||||
# Mountain Pass
|
||||
@@ -123,35 +123,35 @@ locMP_scoutTable = {
|
||||
|
||||
# Volcanic Crater
|
||||
locVC_scoutTable = {
|
||||
178: "VC: Scout Fly 1",
|
||||
179: "VC: Scout Fly 2",
|
||||
180: "VC: Scout Fly 3",
|
||||
181: "VC: Scout Fly 4",
|
||||
182: "VC: Scout Fly 5",
|
||||
183: "VC: Scout Fly 6",
|
||||
184: "VC: Scout Fly 7"
|
||||
178: "VC: Scout Fly In Miner's Cave",
|
||||
179: "VC: Scout Fly Near Oracle",
|
||||
180: "VC: Scout Fly Overlooking Minecarts",
|
||||
181: "VC: Scout Fly On First Minecart Path",
|
||||
182: "VC: Scout Fly At Minecart Junction",
|
||||
183: "VC: Scout Fly At Spider Cave Entrance",
|
||||
184: "VC: Scout Fly Under Mountain Pass Exit"
|
||||
}
|
||||
|
||||
# Spider Cave
|
||||
locSC_scoutTable = {
|
||||
185: "SC: Scout Fly 1",
|
||||
186: "SC: Scout Fly 2",
|
||||
187: "SC: Scout Fly 3",
|
||||
188: "SC: Scout Fly 4",
|
||||
189: "SC: Scout Fly 5",
|
||||
190: "SC: Scout Fly 6",
|
||||
191: "SC: Scout Fly 7"
|
||||
185: "SC: Scout Fly Across Dark Eco Pool",
|
||||
186: "SC: Scout Fly At Dark Area Entrance",
|
||||
187: "SC: Scout Fly First Room, Overlooking Entrance",
|
||||
188: "SC: Scout Fly First Room, Near Dark Crystal",
|
||||
189: "SC: Scout Fly First Room, Near Dark Eco Pool",
|
||||
190: "SC: Scout Fly Robot Room, First Level",
|
||||
191: "SC: Scout Fly Robot Room, Second Level",
|
||||
}
|
||||
|
||||
# Snowy Mountain
|
||||
locSM_scoutTable = {
|
||||
192: "SM: Scout Fly 1",
|
||||
193: "SM: Scout Fly 2",
|
||||
194: "SM: Scout Fly 3",
|
||||
195: "SM: Scout Fly 4",
|
||||
196: "SM: Scout Fly 5",
|
||||
197: "SM: Scout Fly 6",
|
||||
198: "SM: Scout Fly 7"
|
||||
192: "SM: Scout Fly Near Entrance",
|
||||
193: "SM: Scout Fly Near Frozen Box",
|
||||
194: "SM: Scout Fly Near Yellow Eco Switch",
|
||||
195: "SM: Scout Fly On Cliff near Flut Flut",
|
||||
196: "SM: Scout Fly Under Bridge To Fort",
|
||||
197: "SM: Scout Fly On Top Of Fort Tower",
|
||||
198: "SM: Scout Fly On Top Of Fort"
|
||||
}
|
||||
|
||||
# Lava Tube
|
||||
@@ -167,11 +167,11 @@ locLT_scoutTable = {
|
||||
|
||||
# Gol and Maias Citadel
|
||||
locGMC_scoutTable = {
|
||||
206: "GMC: Scout Fly 1",
|
||||
207: "GMC: Scout Fly 2",
|
||||
208: "GMC: Scout Fly 3",
|
||||
209: "GMC: Scout Fly 4",
|
||||
210: "GMC: Scout Fly 5",
|
||||
211: "GMC: Scout Fly 6",
|
||||
212: "GMC: Scout Fly 7"
|
||||
206: "GMC: Scout Fly At Entrance",
|
||||
207: "GMC: Scout Fly At Jump Room Entrance",
|
||||
208: "GMC: Scout Fly On Ledge Across Rotators",
|
||||
209: "GMC: Scout Fly At Tile Color Puzzle",
|
||||
210: "GMC: Scout Fly At Blast Furnace",
|
||||
211: "GMC: Scout Fly At Path To Robot",
|
||||
212: "GMC: Scout Fly On Top Of Rotating Tower"
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user