27 lines
		
	
	
		
			951 B
		
	
	
	
		
			Python
		
	
	
	
	
	
			
		
		
	
	
			27 lines
		
	
	
		
			951 B
		
	
	
	
		
			Python
		
	
	
	
	
	
| import typing
 | |
| 
 | |
| import settings
 | |
| 
 | |
| 
 | |
| class FactorioSettings(settings.Group):
 | |
|     class Executable(settings.UserFilePath):
 | |
|         is_exe = True
 | |
| 
 | |
|     class ServerSettings(settings.OptionalUserFilePath):
 | |
|         """
 | |
|         by default, no settings are loaded if this file does not exist. \
 | |
| If this file does exist, then it will be used.
 | |
|         server_settings: "factorio\\\\data\\\\server-settings.json"
 | |
|         """
 | |
| 
 | |
|     class FilterItemSends(settings.Bool):
 | |
|         """Whether to filter item send messages displayed in-game to only those that involve you."""
 | |
| 
 | |
|     class BridgeChatOut(settings.Bool):
 | |
|         """Whether to send chat messages from players on the Factorio server to Archipelago."""
 | |
| 
 | |
|     executable: Executable = Executable("factorio/bin/x64/factorio")
 | |
|     server_settings: typing.Optional[ServerSettings] = None
 | |
|     filter_item_sends: typing.Union[FilterItemSends, bool] = False
 | |
|     bridge_chat_out: typing.Union[BridgeChatOut, bool] = True
 | 
