129 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			129 lines
		
	
	
		
			3.3 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
| import typing
 | |
| 
 | |
| from Options import Choice, Range, Option, Toggle, DeathLink, DefaultOnToggle
 | |
| 
 | |
| 
 | |
| class StartingGender(Choice):
 | |
|     """
 | |
|     Determines the gender of your initial 'Sir Lee' character.
 | |
|     """
 | |
|     displayname = "Starting Gender"
 | |
|     option_sir = 0
 | |
|     option_lady = 1
 | |
|     alias_male = 0
 | |
|     alias_female = 1
 | |
|     default = 0
 | |
| 
 | |
| 
 | |
| class StartingClass(Choice):
 | |
|     """
 | |
|     Determines the starting class of your initial 'Sir Lee' character.
 | |
|     """
 | |
|     displayname = "Starting Class"
 | |
|     option_knight = 0
 | |
|     option_mage = 1
 | |
|     option_barbarian = 2
 | |
|     option_knave = 3
 | |
|     default = 0
 | |
| 
 | |
| 
 | |
| class NewGamePlus(Choice):
 | |
|     """
 | |
|     Puts the castle in new game plus mode which vastly increases enemy level, but increases gold gain by 50%. Not
 | |
|     recommended for those inexperienced to Rogue Legacy!
 | |
|     """
 | |
|     displayname = "New Game Plus"
 | |
|     option_normal = 0
 | |
|     option_new_game_plus = 1
 | |
|     option_new_game_plus_2 = 2
 | |
|     alias_hard = 1
 | |
|     alias_brutal = 2
 | |
|     default = 0
 | |
| 
 | |
| 
 | |
| class FairyChestsPerZone(Range):
 | |
|     """
 | |
|     Determines the number of Fairy Chests in a given zone that contain items. After these have been checked, only stat
 | |
|     bonuses can be found in Fairy Chests.
 | |
|     """
 | |
|     displayname = "Fairy Chests Per Zone"
 | |
|     range_start = 5
 | |
|     range_end = 15
 | |
|     default = 5
 | |
| 
 | |
| 
 | |
| class ChestsPerZone(Range):
 | |
|     """
 | |
|     Determines the number of Non-Fairy Chests in a given zone that contain items. After these have been checked, only
 | |
|     gold or stat bonuses can be found in Chests.
 | |
|     """
 | |
|     displayname = "Chests Per Zone"
 | |
|     range_start = 15
 | |
|     range_end = 30
 | |
|     default = 15
 | |
| 
 | |
| 
 | |
| class Vendors(Choice):
 | |
|     """
 | |
|     Determines where to place the Blacksmith and Enchantress unlocks in logic (or start with them unlocked).
 | |
|     """
 | |
|     displayname = "Vendors"
 | |
|     option_start_unlocked = 0
 | |
|     option_early = 1
 | |
|     option_normal = 2
 | |
|     option_anywhere = 3
 | |
|     default = 1
 | |
| 
 | |
| 
 | |
| class DisableCharon(Toggle):
 | |
|     """
 | |
|     Prevents Charon from taking your money when you re-enter the castle. Also removes Haggling from the Item Pool.
 | |
|     """
 | |
|     displayname = "Disable Charon"
 | |
| 
 | |
| 
 | |
| class RequirePurchasing(DefaultOnToggle):
 | |
|     """
 | |
|     Determines where you will be required to purchase equipment and runes from the Blacksmith and Enchantress before
 | |
|     equipping them. If you disable require purchasing, Manor Renovations are scaled to take this into account.
 | |
|     """
 | |
|     displayname = "Require Purchasing"
 | |
| 
 | |
| 
 | |
| class GoldGainMultiplier(Choice):
 | |
|     """
 | |
|     Adjusts the multiplier for gaining gold from all sources.
 | |
|     """
 | |
|     displayname = "Gold Gain Multiplier"
 | |
|     option_normal = 0
 | |
|     option_quarter = 1
 | |
|     option_half = 2
 | |
|     option_double = 3
 | |
|     option_quadruple = 4
 | |
|     default = 0
 | |
| 
 | |
| 
 | |
| class NumberOfChildren(Range):
 | |
|     """
 | |
|     Determines the number of offspring you can choose from on the lineage screen after a death.
 | |
|     """
 | |
|     displayname = "Number of Children"
 | |
|     range_start = 1
 | |
|     range_end = 5
 | |
|     default = 3
 | |
| 
 | |
| 
 | |
| legacy_options: typing.Dict[str, type(Option)] = {
 | |
|     "starting_gender": StartingGender,
 | |
|     "starting_class": StartingClass,
 | |
|     "new_game_plus": NewGamePlus,
 | |
|     "fairy_chests_per_zone": FairyChestsPerZone,
 | |
|     "chests_per_zone": ChestsPerZone,
 | |
|     "vendors": Vendors,
 | |
|     "disable_charon": DisableCharon,
 | |
|     "require_purchasing": RequirePurchasing,
 | |
|     "gold_gain_multiplier": GoldGainMultiplier,
 | |
|     "number_of_children": NumberOfChildren,
 | |
|     "death_link": DeathLink,
 | |
| }
 | 
