WebHost: sample yamls now render Range defaults correctly
This commit is contained in:
		
							parent
							
								
									a6a859b272
								
							
						
					
					
						commit
						ff2e57705e
					
				| 
						 | 
				
			
			@ -11,8 +11,18 @@ target_folder = os.path.join("WebHostLib", "static", "generated")
 | 
			
		|||
 | 
			
		||||
def create():
 | 
			
		||||
    for game_name, world in AutoWorldRegister.world_types.items():
 | 
			
		||||
        def dictify_range(option):
 | 
			
		||||
            data = {option.range_start: 0, option.range_end: 0, "random": 0, "random-low": 0, "random-high": 0,
 | 
			
		||||
                    option.default: 50}
 | 
			
		||||
            notes = {
 | 
			
		||||
                option.range_start: "minimum value",
 | 
			
		||||
                option.range_end: "maximum value"
 | 
			
		||||
            }
 | 
			
		||||
            return data, notes
 | 
			
		||||
 | 
			
		||||
        res = Template(open(os.path.join("WebHostLib", "templates", "options.yaml")).read()).render(
 | 
			
		||||
            options=world.options, __version__=__version__, game=game_name, yaml_dump=yaml.dump
 | 
			
		||||
            options=world.options, __version__=__version__, game=game_name, yaml_dump=yaml.dump,
 | 
			
		||||
            dictify_range=dictify_range
 | 
			
		||||
        )
 | 
			
		||||
 | 
			
		||||
        with open(os.path.join(target_folder, game_name + ".yaml"), "w") as f:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -18,7 +18,8 @@
 | 
			
		|||
# http://www.yamllint.com/
 | 
			
		||||
 | 
			
		||||
description: Default {{ game }} Template # Used to describe your yaml. Useful if you have multiple files
 | 
			
		||||
name: YourName{number} # Your name in-game. Spaces will be replaced with underscores and there is a 16 character limit
 | 
			
		||||
# Your name in-game. Spaces will be replaced with underscores and there is a 16 character limit
 | 
			
		||||
name: YourName{number}
 | 
			
		||||
#{player} will be replaced with the player's slot number.
 | 
			
		||||
#{PLAYER} will be replaced with the player's slot number if that slot number is greater than 1.
 | 
			
		||||
#{number} will be replaced with the counter value of the name.
 | 
			
		||||
| 
						 | 
				
			
			@ -51,16 +52,18 @@ progression_balancing:
 | 
			
		|||
#  - "Progressive Weapons"
 | 
			
		||||
# exclude_locations: # Force certain locations to never contain progression items, and always be filled with junk.
 | 
			
		||||
#  - "Master Sword Pedestal"
 | 
			
		||||
{%- macro range_option(option) %}
 | 
			
		||||
    # you can add additional values between minimum and maximum
 | 
			
		||||
    {%- set data, notes = dictify_range(option) %}
 | 
			
		||||
    {%- for entry, default in data.items() %}
 | 
			
		||||
    {{ entry }}: {{ default }}{% if notes[entry] %} # {{ notes[entry] }}{% endif %}
 | 
			
		||||
    {%- endfor -%}
 | 
			
		||||
{%- endmacro -%}
 | 
			
		||||
{{ game }}:
 | 
			
		||||
  {%- for option_key, option in options.items() %}
 | 
			
		||||
  {{ option_key }}:{% if option.__doc__ %} # {{ option.__doc__ | replace('\n', '\n#') | indent(4, first=False) }}{% endif %}
 | 
			
		||||
    {%- if option.range_start is defined  %}
 | 
			
		||||
    # you can add additional values between minimum and maximum
 | 
			
		||||
    {{ option.range_start }}: 0 # minimum value
 | 
			
		||||
    {{ option.range_end }}: 0 # maximum value
 | 
			
		||||
    random: 50
 | 
			
		||||
    random-low: 0
 | 
			
		||||
    random-high: 0
 | 
			
		||||
    {{- range_option(option) -}}
 | 
			
		||||
    {%- elif option.options -%}
 | 
			
		||||
    {%- for suboption_option_id, sub_option_name in option.name_lookup.items() %}
 | 
			
		||||
    {{ sub_option_name }}: {% if suboption_option_id == option.default %}50{% else %}0{% endif %}
 | 
			
		||||
| 
						 | 
				
			
			@ -69,4 +72,4 @@ progression_balancing:
 | 
			
		|||
    {{ yaml_dump(option.default) | indent(4, first=False) }}
 | 
			
		||||
  {%- endif -%}
 | 
			
		||||
  {%- endfor -%}
 | 
			
		||||
  {% if not options %}{}{% endif %}
 | 
			
		||||
  {% if not options %}{}{% endif %}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue