sm64ex: All Bowser Stages Goal (#2112)
This commit is contained in:
		
							parent
							
								
									2353346768
								
							
						
					
					
						commit
						253f3e61f7
					
				|  | @ -88,6 +88,12 @@ class ExclamationBoxes(Choice): | |||
|     option_Off = 0 | ||||
|     option_1Ups_Only = 1 | ||||
| 
 | ||||
| class CompletionType(Choice): | ||||
|     """Set goal for game completion""" | ||||
|     display_name = "Completion Goal" | ||||
|     option_Last_Bowser_Stage = 0 | ||||
|     option_All_Bowser_Stages = 1 | ||||
| 
 | ||||
| 
 | ||||
| class ProgressiveKeys(DefaultOnToggle): | ||||
|     """Keys will first grant you access to the Basement, then to the Secound Floor""" | ||||
|  | @ -110,4 +116,5 @@ sm64_options: typing.Dict[str, type(Option)] = { | |||
|     "death_link": DeathLink, | ||||
|     "BuddyChecks": BuddyChecks, | ||||
|     "ExclamationBoxes": ExclamationBoxes, | ||||
|     "CompletionType" : CompletionType, | ||||
| } | ||||
|  |  | |||
|  | @ -124,4 +124,9 @@ def set_rules(world, player: int, area_connections): | |||
|     add_rule(world.get_location("MIPS 1", player), lambda state: state.can_reach("Basement", 'Region', player) and state.has("Power Star", player, world.MIPS1Cost[player].value)) | ||||
|     add_rule(world.get_location("MIPS 2", player), lambda state: state.can_reach("Basement", 'Region', player) and state.has("Power Star", player, world.MIPS2Cost[player].value)) | ||||
| 
 | ||||
|     world.completion_condition[player] = lambda state: state.can_reach("Bowser in the Sky", 'Region', player) | ||||
|     if world.CompletionType[player] == "last_bowser_stage": | ||||
|         world.completion_condition[player] = lambda state: state.can_reach("Bowser in the Sky", 'Region', player) | ||||
|     elif world.CompletionType[player] == "all_bowser_stages": | ||||
|         world.completion_condition[player] = lambda state: state.can_reach("Bowser in the Dark World", 'Region', player) and \ | ||||
|                                                            state.can_reach("Bowser in the Fire Sea", 'Region', player) and \ | ||||
|                                                            state.can_reach("Bowser in the Sky", 'Region', player) | ||||
|  |  | |||
|  | @ -154,6 +154,7 @@ class SM64World(World): | |||
|             "MIPS2Cost": self.multiworld.MIPS2Cost[self.player].value, | ||||
|             "StarsToFinish": self.multiworld.StarsToFinish[self.player].value, | ||||
|             "DeathLink": self.multiworld.death_link[self.player].value, | ||||
|             "CompletionType" : self.multiworld.CompletionType[self.player].value, | ||||
|         } | ||||
| 
 | ||||
|     def generate_output(self, output_directory: str): | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue