TUNIC: Add setting to disable local spoiler to host yaml (#3661)
* Add TunicSettings class for host yaml options * Update __init__.py * Update worlds/tunic/__init__.py Co-authored-by: Scipio Wright <scipiowright@gmail.com> * Use self.settings * Remove unused import --------- Co-authored-by: Scipio Wright <scipiowright@gmail.com>
This commit is contained in:
		
							parent
							
								
									5188375736
								
							
						
					
					
						commit
						ed4ad386e8
					
				|  | @ -1,4 +1,4 @@ | |||
| from typing import Dict, List, Any, Tuple, TypedDict | ||||
| from typing import Dict, List, Any, Tuple, TypedDict, ClassVar, Union | ||||
| from logging import warning | ||||
| from BaseClasses import Region, Location, Item, Tutorial, ItemClassification, MultiWorld | ||||
| from .items import item_name_to_id, item_table, item_name_groups, fool_tiers, filler_items, slot_data_item_names | ||||
|  | @ -12,6 +12,14 @@ from .options import TunicOptions, EntranceRando, tunic_option_groups, tunic_opt | |||
| from worlds.AutoWorld import WebWorld, World | ||||
| from Options import PlandoConnection | ||||
| from decimal import Decimal, ROUND_HALF_UP | ||||
| from settings import Group, Bool | ||||
| 
 | ||||
| 
 | ||||
| class TunicSettings(Group): | ||||
|     class DisableLocalSpoiler(Bool): | ||||
|         """Disallows the TUNIC client from creating a local spoiler log.""" | ||||
| 
 | ||||
|     disable_local_spoiler: Union[DisableLocalSpoiler, bool] = False | ||||
| 
 | ||||
| 
 | ||||
| class TunicWeb(WebWorld): | ||||
|  | @ -57,6 +65,7 @@ class TunicWorld(World): | |||
| 
 | ||||
|     options: TunicOptions | ||||
|     options_dataclass = TunicOptions | ||||
|     settings: ClassVar[TunicSettings] | ||||
|     item_name_groups = item_name_groups | ||||
|     location_name_groups = location_name_groups | ||||
| 
 | ||||
|  | @ -373,7 +382,8 @@ class TunicWorld(World): | |||
|             "Hexagon Quest Holy Cross": self.ability_unlocks["Pages 42-43 (Holy Cross)"], | ||||
|             "Hexagon Quest Icebolt": self.ability_unlocks["Pages 52-53 (Icebolt)"], | ||||
|             "Hexagon Quest Goal": self.options.hexagon_goal.value, | ||||
|             "Entrance Rando": self.tunic_portal_pairs | ||||
|             "Entrance Rando": self.tunic_portal_pairs, | ||||
|             "disable_local_spoiler": int(self.settings.disable_local_spoiler or self.multiworld.is_race), | ||||
|         } | ||||
| 
 | ||||
|         for tunic_item in filter(lambda item: item.location is not None and item.code is not None, self.slot_data_items): | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue