Add rolltable support, fix regions
This commit is contained in:
@@ -6,11 +6,21 @@
|
||||
{% endif %}
|
||||
{% endmacro %}
|
||||
|
||||
{% macro rolltable(t) %}
|
||||
{% macro list_to_cols(l, headers) %}
|
||||
{% if l is mapping %}
|
||||
{% for key in l if key in headers%}
|
||||
{{ list_to_cols(l[key], headers) }}
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
<td>{{ l if l else "" }}</td>
|
||||
{% endif %}
|
||||
{% endmacro %}
|
||||
|
||||
{% macro table(t, headers=[]) %}
|
||||
<table>
|
||||
<tr><th>Roll</th><th>Effect</th></tr>
|
||||
{% for die in t %}
|
||||
<tr><td>{{ die }}</td><td>{{ t[die] }}</td></tr>
|
||||
<tr>{% for h in headers %}{% if h %}<th>{{ h }}</th>{% endif %}{% endfor %}</tr>
|
||||
{% for key in t %}
|
||||
<tr><td>{{ key }}</td>{{ list_to_cols(t[key], headers) }}</tr>
|
||||
{% endfor %}
|
||||
</table>
|
||||
{% endmacro %}
|
||||
|
||||
@@ -30,29 +30,13 @@
|
||||
<dl>
|
||||
<dt>Size</dt><dd>{{ r.size }} sq. miles </dd>
|
||||
<dt>Terrain</dt><dd>{{ r.terrain }} (walking: {{ r.size / 10 if r.terrain == 'difficult' else 20 |round }} days)</dd>
|
||||
<dt>Skill Challenges</dt><dd>
|
||||
<table>
|
||||
<tr>
|
||||
<th>Skill</td>
|
||||
<th style='text-align: right;'>DC</th>
|
||||
<th>Resources</th>
|
||||
</tr>
|
||||
{% for (k, v) in [ ('Travel', r.travel), ('Forage', r.forage), ('Track', r.track), ('Evade', r.evade), ('Survey', r.survey) ] %}
|
||||
<tr>
|
||||
<td>{{ k }}</td>
|
||||
<td style='text-align: right;'>{{ v.dc or ""}}</td>
|
||||
<td>{{ v.resources or ""}}</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</table>
|
||||
</dd>
|
||||
<dt>Encounters (CR {{r.cr}})</dt><dd>{{ macros.rolltable(r.encounters) }}</dd>
|
||||
<dt>Regional Effects</dt><dd>{{ macros.rolltable(r.regional_effects) }}</dd>
|
||||
<dt>Weather Effects</dt><dd>{{ macros.rolltable(r.weather) }}</dd>
|
||||
<dt>Regional Effects</dt><dd>{{ macros.table(r.regional_effects) }}</dd>
|
||||
<dt>Skill Challenges</dt><dd>{{ macros.table(r.skills, ['Skills', 'DC', 'Notes']) }}</dd>
|
||||
<dt>Encounters (CR {{r.cr}})</dt><dd>{{ macros.table(r.encounters, ['Roll', 'Difficulty']) }}</dd>
|
||||
<dt>Weather Effects</dt><dd>{{ macros.table(r.weather, ['Roll', None, 'Description', 'Effect']) }}</dd>
|
||||
</dl>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<hr>
|
||||
{% include "bottom-nav.html" %}
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user