Update ArchipIDLE item count to 200, and add a few more items (#1627)
This commit is contained in:
parent
a5373e3672
commit
f3dad894ec
|
@ -300,4 +300,13 @@ item_table = (
|
||||||
'Roomba with a Knife',
|
'Roomba with a Knife',
|
||||||
'Wet Cat',
|
'Wet Cat',
|
||||||
'The missing moderator, Frostwares',
|
'The missing moderator, Frostwares',
|
||||||
|
'1,793 Crossbows',
|
||||||
|
'Holographic First Edition Charizard (Gen 1)',
|
||||||
|
'VR Headset',
|
||||||
|
'Archipelago 1.0 Release Date',
|
||||||
|
'Strand of Galadriel\'s Hair',
|
||||||
|
'Can of Meow-Mix',
|
||||||
|
'Shake-Weight',
|
||||||
|
'DVD Collection of Billy Mays Infomercials',
|
||||||
|
'Old CD Key',
|
||||||
)
|
)
|
||||||
|
|
|
@ -16,22 +16,28 @@ class ArchipIDLELogic(LogicMixin):
|
||||||
def set_rules(world: MultiWorld, player: int):
|
def set_rules(world: MultiWorld, player: int):
|
||||||
for i in range(16, 31):
|
for i in range(16, 31):
|
||||||
set_rule(
|
set_rule(
|
||||||
world.get_location(f"IDLE for at least {int(i / 2)} minutes {30 if (i % 2) else 0} seconds", player),
|
world.get_location(f"IDLE item number {i}", player),
|
||||||
lambda state: state._archipidle_location_is_accessible(player, 4)
|
lambda state: state._archipidle_location_is_accessible(player, 4)
|
||||||
)
|
)
|
||||||
|
|
||||||
for i in range(31, 51):
|
for i in range(31, 51):
|
||||||
set_rule(
|
set_rule(
|
||||||
world.get_location(f"IDLE for at least {int(i / 2)} minutes {30 if (i % 2) else 0} seconds", player),
|
world.get_location(f"IDLE item number {i}", player),
|
||||||
lambda state: state._archipidle_location_is_accessible(player, 10)
|
lambda state: state._archipidle_location_is_accessible(player, 10)
|
||||||
)
|
)
|
||||||
|
|
||||||
for i in range(51, 101):
|
for i in range(51, 101):
|
||||||
set_rule(
|
set_rule(
|
||||||
world.get_location(f"IDLE for at least {int(i / 2)} minutes {30 if (i % 2) else 0} seconds", player),
|
world.get_location(f"IDLE item number {i}", player),
|
||||||
lambda state: state._archipidle_location_is_accessible(player, 20)
|
lambda state: state._archipidle_location_is_accessible(player, 20)
|
||||||
)
|
)
|
||||||
|
|
||||||
|
for i in range(101, 201):
|
||||||
|
set_rule(
|
||||||
|
world.get_location(f"IDLE item number {i}", player),
|
||||||
|
lambda state: state._archipidle_location_is_accessible(player, 40)
|
||||||
|
)
|
||||||
|
|
||||||
world.completion_condition[player] =\
|
world.completion_condition[player] =\
|
||||||
lambda state:\
|
lambda state:\
|
||||||
state.can_reach(world.get_location("IDLE for at least 50 minutes 0 seconds", player), "Location", player)
|
state.can_reach(world.get_location("IDLE item number 200", player), "Location", player)
|
||||||
|
|
|
@ -25,7 +25,7 @@ class ArchipIDLEWorld(World):
|
||||||
"""
|
"""
|
||||||
game = "ArchipIDLE"
|
game = "ArchipIDLE"
|
||||||
topology_present = False
|
topology_present = False
|
||||||
data_version = 4
|
data_version = 5
|
||||||
hidden = (datetime.now().month != 4) # ArchipIDLE is only visible during April
|
hidden = (datetime.now().month != 4) # ArchipIDLE is only visible during April
|
||||||
web = ArchipIDLEWebWorld()
|
web = ArchipIDLEWebWorld()
|
||||||
|
|
||||||
|
@ -37,8 +37,8 @@ class ArchipIDLEWorld(World):
|
||||||
|
|
||||||
location_name_to_id = {}
|
location_name_to_id = {}
|
||||||
start_id = 9000
|
start_id = 9000
|
||||||
for i in range(1, 101):
|
for i in range(1, 201):
|
||||||
location_name_to_id[f"IDLE for at least {int(i / 2)} minutes {30 if (i % 2) else 0} seconds"] = start_id
|
location_name_to_id[f"IDLE item number {i}"] = start_id
|
||||||
start_id += 1
|
start_id += 1
|
||||||
|
|
||||||
def generate_basic(self):
|
def generate_basic(self):
|
||||||
|
@ -46,10 +46,10 @@ class ArchipIDLEWorld(World):
|
||||||
self.multiworld.random.shuffle(item_table_copy)
|
self.multiworld.random.shuffle(item_table_copy)
|
||||||
|
|
||||||
item_pool = []
|
item_pool = []
|
||||||
for i in range(100):
|
for i in range(200):
|
||||||
item = ArchipIDLEItem(
|
item = ArchipIDLEItem(
|
||||||
item_table_copy[i],
|
item_table_copy[i],
|
||||||
ItemClassification.progression if i < 20 else ItemClassification.filler,
|
ItemClassification.progression if i < 40 else ItemClassification.filler,
|
||||||
self.item_name_to_id[item_table_copy[i]],
|
self.item_name_to_id[item_table_copy[i]],
|
||||||
self.player
|
self.player
|
||||||
)
|
)
|
||||||
|
|
Loading…
Reference in New Issue