Factorio: align tech tree sections in growing ingredient requirements
This commit is contained in:
parent
50f06c3aac
commit
6d15aef88a
|
@ -27,6 +27,7 @@ class MultiWorld():
|
|||
class AttributeProxy():
|
||||
def __init__(self, rule):
|
||||
self.rule = rule
|
||||
|
||||
def __getitem__(self, player) -> bool:
|
||||
return self.rule(player)
|
||||
|
||||
|
|
|
@ -27,7 +27,7 @@ class CustomClientMessageProcessor(ClientMessageProcessor):
|
|||
self.ctx.save()
|
||||
self.output(f"Registered Twitch Stream https://www.twitch.tv/{user}")
|
||||
return True
|
||||
elif platform.lower().startswith("y"): # youtube
|
||||
elif platform.lower().startswith("y"): # youtube
|
||||
self.ctx.video[self.client.team, self.client.slot] = "Youtube", user
|
||||
self.ctx.save()
|
||||
self.output(f"Registered Youtube Stream for {user}")
|
||||
|
|
|
@ -13,7 +13,7 @@ with open(source_file) as f:
|
|||
with open(recipe_source_file) as f:
|
||||
raw_recipes = json.load(f)
|
||||
tech_table = {}
|
||||
technology_table = {}
|
||||
technology_table:Dict[str, Technology] = {}
|
||||
|
||||
always = lambda state: True
|
||||
|
||||
|
|
|
@ -43,8 +43,11 @@ def get_shapes(world: MultiWorld, player: int) -> Dict[str, List[str]]:
|
|||
tech_names.sort()
|
||||
world.random.shuffle(tech_names)
|
||||
while len(tech_names) > 4:
|
||||
diamond_0, diamond_1, diamond_2, diamond_3 = tech_names[:4]
|
||||
slice = tech_names[:4]
|
||||
tech_names = tech_names[4:]
|
||||
slice.sort(key=lambda tech_name: len(technology_table[tech_name].ingredients))
|
||||
diamond_0, diamond_1, diamond_2, diamond_3 = slice
|
||||
|
||||
# 0 |
|
||||
# 1 2 |
|
||||
# 3 V
|
||||
|
|
Loading…
Reference in New Issue