mirror of
				https://github.com/MarioSpore/Grinch-AP.git
				synced 2025-10-21 20:21:32 -06:00 
			
		
		
		
	
		
			
	
	
		
			61 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
		
		
			
		
	
	
			61 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
|   | # Copyright (c) 2022 FelicitusNeko | ||
|  | # | ||
|  | # This software is released under the MIT License. | ||
|  | # https://opensource.org/licenses/MIT | ||
|  | 
 | ||
|  | import typing | ||
|  | from Options import Option, DeathLink, Toggle, DefaultOnToggle, Choice | ||
|  | 
 | ||
|  | 
 | ||
|  | cost_scales = { | ||
|  |     0: [80, 5, 4], | ||
|  |     1: [60, 5, 3], | ||
|  |     2: [50, 4, 3] | ||
|  | } | ||
|  | 
 | ||
|  | 
 | ||
|  | class Goal(Choice): | ||
|  |     """Which goal must be achieved to trigger completion.""" | ||
|  |     display_name = "Goal" | ||
|  |     option_return_the_cursed_seal = 0 | ||
|  |     option_any_ending = 1 | ||
|  |     option_true_ending = 2 | ||
|  |     alias_normal_ending = 1 | ||
|  |     alias_agate_knife = 2 | ||
|  |     default = 0 | ||
|  | 
 | ||
|  | 
 | ||
|  | class IncludePSIKeys(DefaultOnToggle): | ||
|  |     """Whether PSI Keys should be included in the multiworld pool. If not, they will be in their vanilla locations.""" | ||
|  |     display_name = "Include PSI Keys" | ||
|  | 
 | ||
|  | 
 | ||
|  | class IncludeEvolutionTraps(Toggle): | ||
|  |     """
 | ||
|  |         Whether evolution traps should be included in the multiworld pool. | ||
|  |         If not, they will be activated by bosses, as in vanilla. | ||
|  |     """
 | ||
|  |     display_name = "Include Evolution Traps" | ||
|  | 
 | ||
|  | 
 | ||
|  | class ItemCacheCost(Choice): | ||
|  |     """
 | ||
|  |         Determines how the cost for Alpha, Beta, and Gamma caches will scale. | ||
|  |         Vanilla has a total cost of about 1B crystals on Normal difficulty; | ||
|  |         Reduced has about 750M; and Heavily Reduced has about 600M. | ||
|  |     """
 | ||
|  |     display_name = "Item cache cost scaling" | ||
|  |     option_vanilla = 0 | ||
|  |     option_reduced = 1 | ||
|  |     option_heavily_reduced = 2 | ||
|  |     default = 0 | ||
|  | 
 | ||
|  | 
 | ||
|  | meritous_options: typing.Dict[str, type(Option)] = { | ||
|  |     "goal": Goal, | ||
|  |     "include_psi_keys": IncludePSIKeys, | ||
|  |     "include_evolution_traps": IncludeEvolutionTraps, | ||
|  |     "item_cache_cost": ItemCacheCost, | ||
|  |     "death_link": DeathLink | ||
|  | } |