nereare_grimoire 1.13.13 → 1.21.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -88,8 +88,12 @@ layout: default
88
88
  <p><strong>Size:</strong> {{ page.settlement.size }}</p>
89
89
  <p><strong>Demographics:</strong> {% for race in page.settlement.demographics %}{{ race.percent }}% {{ race.race }}{% unless forloop.last %}, {% endunless %}{% endfor %}</p>
90
90
  <p><strong>Population:</strong> {{ page.settlement.population | pretty_number }} souls</p>
91
+ {% if page.settlement.wealth %}
91
92
  <p><strong>Wealth:</strong> {{ page.settlement.wealth | pretty_number }} gp</p>
93
+ {% endif %}
94
+ {% if page.settlement.gp-limit %}
92
95
  <p><strong>GP Limit:</strong> {{ page.settlement.gp-limit | pretty_number }} gp</p>
96
+ {% endif %}
93
97
 
94
98
  {% assign: cs = page.settlement.centres | join: '' %}
95
99
  {% if cs != '' %}
@@ -115,192 +119,25 @@ layout: default
115
119
  {% if ds != '' %}
116
120
  <h6>Demographics</h6>
117
121
 
122
+ {% for class in page.demographics %}
118
123
  <details>
119
- <summary>Overview</summary>
120
- <ul>
121
- <li><strong>Nobles:</strong> {{ page.demographics.overview.nobles | pretty_number }}</li>
122
- <li><strong>Officers:</strong> {{ page.demographics.overview.officers | pretty_number }}</li>
123
- <li><strong>Clergy:</strong> {{ page.demographics.overview.clergy | pretty_number }}</li>
124
- <li><strong>Freeholders:</strong> {{ page.demographics.overview.freeholders | pretty_number }}</li>
125
- <li><strong>Citizens:</strong> {{ page.demographics.overview.citizens | pretty_number }}</li>
126
- <li><strong>Hirelings:</strong> {{ page.demographics.overview.hirelings | pretty_number }}</li>
127
- </ul>
128
- </details>
129
-
130
- <details>
131
- <summary>Nobility</summary>
132
- <p><strong>Ruling House</strong></p>
133
- <ul>
134
- <li><strong>Nobles:</strong> {{ page.demographics.ruling-house.nobles | pretty_number }}</li>
135
- <li><strong>Relatives:</strong> {{ page.demographics.ruling-house.relatives | pretty_number }}</li>
136
- <li><strong>Servants:</strong> {{ page.demographics.ruling-house.servants | pretty_number }}</li>
137
- <li><strong>Guards:</strong> {{ page.demographics.ruling-house.guards | pretty_number }}</li>
138
- <li><strong>Serjaants:</strong> {{ page.demographics.ruling-house.serjaants | pretty_number }}</li>
139
- </ul>
140
- <p><strong>Other Noble Houses</strong></p>
141
- <ul>
142
- <li><strong>Houses:</strong> {{ page.demographics.other-houses.houses | pretty_number }}</li>
143
- <li><strong>Population:</strong> {{ page.demographics.other-houses.population | pretty_number }}</li>
144
- </ul>
145
- </details>
146
-
147
- <details>
148
- <summary>Officers</summary>
149
- <ul>
150
- <li><strong>Reeves:</strong> {{ page.demographics.officers.reeves | pretty_number }}</li>
151
- <li><strong>Messors:</strong> {{ page.demographics.officers.messors | pretty_number }}</li>
152
- <li><strong>Woodwards:</strong> {{ page.demographics.officers.woodwards | pretty_number }}</li>
153
- <li><strong>Constables:</strong> {{ page.demographics.officers.constables | pretty_number }}</li>
154
- <li><strong>Guards:</strong> {{ page.demographics.officers.guards | pretty_number }}</li>
155
- </ul>
156
- </details>
157
-
158
- <details>
159
- <summary>Clergy</summary>
160
- <ul>
161
- <li><strong>Clerics:</strong> {{ page.demographics.clergy.clerics | pretty_number }}</li>
162
- <li><strong>Priests:</strong> {{ page.demographics.clergy.priests | pretty_number }}</li>
163
- </ul>
164
- </details>
165
-
166
- <details>
167
- <summary>Freeholders</summary>
124
+ <summary>{{ class.title }}</summary>
168
125
  <ul>
169
- {% if page.demographics.freeholders.adventures != 0 and page.demographics.freeholders.adventures != '' %}
170
- <li><strong>Adventures:</strong> {{ page.demographics.freeholders.adventures | pretty_number }}</li>
171
- {% endif %}
172
- {% if page.demographics.freeholders.apothecaries != 0 and page.demographics.freeholders.apothecaries != '' %}
173
- <li><strong>Apothecaries:</strong> {{ page.demographics.freeholders.apothecaries | pretty_number }}</li>
174
- {% endif %}
175
- {% if page.demographics.freeholders.armourers != 0 and page.demographics.freeholders.armourers != '' %}
176
- <li><strong>Armourers&ast;:</strong> {{ page.demographics.freeholders.armourers | pretty_number }}</li>
177
- {% endif %}
178
- {% if page.demographics.freeholders.artists != 0 and page.demographics.freeholders.artists != '' %}
179
- <li><strong>Artists:</strong> {{ page.demographics.freeholders.artists | pretty_number }}</li>
180
- {% endif %}
181
- {% if page.demographics.freeholders.butchers != 0 and page.demographics.freeholders.butchers != '' %}
182
- <li><strong>Butchers&ast;:</strong> {{ page.demographics.freeholders.butchers | pretty_number }}</li>
183
- {% endif %}
184
- {% if page.demographics.freeholders.chandlers != 0 and page.demographics.freeholders.chandlers != '' %}
185
- <li><strong>Chandlers:</strong> {{ page.demographics.freeholders.chandlers | pretty_number }}</li>
186
- {% endif %}
187
- {% if page.demographics.freeholders.charcoalers != 0 and page.demographics.freeholders.charcoalers != '' %}
188
- <li><strong>Charcoalers:</strong> {{ page.demographics.freeholders.charcoalers | pretty_number }}</li>
189
- {% endif %}
190
- {% if page.demographics.freeholders.cobblers != 0 and page.demographics.freeholders.cobblers != '' %}
191
- <li><strong>Cobblers:</strong> {{ page.demographics.freeholders.cobblers | pretty_number }}</li>
192
- {% endif %}
193
- {% if page.demographics.freeholders.entertainers != 0 and page.demographics.freeholders.entertainers != '' %}
194
- <li><strong>Entertainers:</strong> {{ page.demographics.freeholders.entertainers | pretty_number }}</li>
195
- {% endif %}
196
- {% if page.demographics.freeholders.foresters != 0 and page.demographics.freeholders.foresters != '' %}
197
- <li><strong>Foresters:</strong> {{ page.demographics.freeholders.foresters | pretty_number }}</li>
198
- {% endif %}
199
- {% if page.demographics.freeholders.furriers != 0 and page.demographics.freeholders.furriers != '' %}
200
- <li><strong>Furriers:</strong> {{ page.demographics.freeholders.furriers | pretty_number }}</li>
201
- {% endif %}
202
- {% if page.demographics.freeholders.glassworkers != 0 and page.demographics.freeholders.glassworkers != '' %}
203
- <li><strong>Glassworkers:</strong> {{ page.demographics.freeholders.glassworkers | pretty_number }}</li>
204
- {% endif %}
205
- {% if page.demographics.freeholders.innkeepers != 0 and page.demographics.freeholders.innkeepers != '' %}
206
- <li><strong>Innkeepers:</strong> {{ page.demographics.freeholders.innkeepers | pretty_number }}</li>
207
- {% endif %}
208
- {% if page.demographics.freeholders.jewelers != 0 and page.demographics.freeholders.jewelers != '' %}
209
- <li><strong>Jewelers:</strong> {{ page.demographics.freeholders.jewelers | pretty_number }}</li>
210
- {% endif %}
211
- {% if page.demographics.freeholders.litigants != 0 and page.demographics.freeholders.litigants != '' %}
212
- <li><strong>Litigants:</strong> {{ page.demographics.freeholders.litigants | pretty_number }}</li>
213
- {% endif %}
214
- {% if page.demographics.freeholders.locksmiths != 0 and page.demographics.freeholders.locksmiths != '' %}
215
- <li><strong>Locksmiths:</strong> {{ page.demographics.freeholders.locksmiths | pretty_number }}</li>
216
- {% endif %}
217
- {% if page.demographics.freeholders.masons != 0 and page.demographics.freeholders.masons != '' %}
218
- <li><strong>Masons:</strong> {{ page.demographics.freeholders.masons | pretty_number }}</li>
219
- {% endif %}
220
- {% if page.demographics.freeholders.metalsmiths != 0 and page.demographics.freeholders.metalsmiths != '' %}
221
- <li><strong>Metalsmiths&ast;:</strong> {{ page.demographics.freeholders.metalsmiths | pretty_number }}</li>
222
- {% endif %}
223
- {% if page.demographics.freeholders.bakers != 0 and page.demographics.freeholders.bakers != '' %}
224
- <li><strong>Bakers&ast;:</strong> {{ page.demographics.freeholders.bakers | pretty_number }}</li>
225
- {% endif %}
226
- {% if page.demographics.freeholders.ostlers != 0 and page.demographics.freeholders.ostlers != '' %}
227
- <li><strong>Ostlers&ast;:</strong> {{ page.demographics.freeholders.ostlers | pretty_number }}</li>
228
- {% endif %}
229
- {% if page.demographics.freeholders.outfitters != 0 and page.demographics.freeholders.outfitters != '' %}
230
- <li><strong>Outfitters:</strong> {{ page.demographics.freeholders.outfitters | pretty_number }}</li>
231
- {% endif %}
232
- {% if page.demographics.freeholders.physicians != 0 and page.demographics.freeholders.physicians != '' %}
233
- <li><strong>Physicians:</strong> {{ page.demographics.freeholders.physicians | pretty_number }}</li>
234
- {% endif %}
235
- {% if page.demographics.freeholders.potters != 0 and page.demographics.freeholders.potters != '' %}
236
- <li><strong>Potters:</strong> {{ page.demographics.freeholders.potters | pretty_number }}</li>
237
- {% endif %}
238
- {% if page.demographics.freeholders.roofers != 0 and page.demographics.freeholders.roofers != '' %}
239
- <li><strong>Roofers:</strong> {{ page.demographics.freeholders.roofers | pretty_number }}</li>
240
- {% endif %}
241
- {% if page.demographics.freeholders.ropemakers != 0 and page.demographics.freeholders.ropemakers != '' %}
242
- <li><strong>Ropemakers:</strong> {{ page.demographics.freeholders.ropemakers | pretty_number }}</li>
243
- {% endif %}
244
- {% if page.demographics.freeholders.sages != 0 and page.demographics.freeholders.sages != '' %}
245
- <li><strong>Sages:</strong> {{ page.demographics.freeholders.sages | pretty_number }}</li>
246
- {% endif %}
247
- {% if page.demographics.freeholders.salters != 0 and page.demographics.freeholders.salters != '' %}
248
- <li><strong>Salters&ast;:</strong> {{ page.demographics.freeholders.salters | pretty_number }}</li>
249
- {% endif %}
250
- {% if page.demographics.freeholders.scribes != 0 and page.demographics.freeholders.scribes != '' %}
251
- <li><strong>Scribes:</strong> {{ page.demographics.freeholders.scribes | pretty_number }}</li>
252
- {% endif %}
253
- {% if page.demographics.freeholders.shipwrights != 0 and page.demographics.freeholders.shipwrights != '' %}
254
- <li><strong>Shipwrights&ast;:</strong> {{ page.demographics.freeholders.shipwrights | pretty_number }}</li>
255
- {% endif %}
256
- {% if page.demographics.freeholders.tailors != 0 and page.demographics.freeholders.tailors != '' %}
257
- <li><strong>Tailors:</strong> {{ page.demographics.freeholders.tailors | pretty_number }}</li>
258
- {% endif %}
259
- {% if page.demographics.freeholders.tanners != 0 and page.demographics.freeholders.tanners != '' %}
260
- <li><strong>Tanners&ast;:</strong> {{ page.demographics.freeholders.tanners | pretty_number }}</li>
261
- {% endif %}
262
- {% if page.demographics.freeholders.taverners != 0 and page.demographics.freeholders.taverners != '' %}
263
- <li><strong>Taverners:</strong> {{ page.demographics.freeholders.taverners | pretty_number }}</li>
264
- {% endif %}
265
- {% if page.demographics.freeholders.teamsters != 0 and page.demographics.freeholders.teamsters != '' %}
266
- <li><strong>Teamsters:</strong> {{ page.demographics.freeholders.teamsters | pretty_number }}</li>
267
- {% endif %}
268
- {% if page.demographics.freeholders.timberwrights != 0 and page.demographics.freeholders.timberwrights != '' %}
269
- <li><strong>Timberwrights&ast;:</strong> {{ page.demographics.freeholders.timberwrights | pretty_number }}</li>
270
- {% endif %}
271
- {% if page.demographics.freeholders.tinkers != 0 and page.demographics.freeholders.tinkers != '' %}
272
- <li><strong>Tinkers:</strong> {{ page.demographics.freeholders.tinkers | pretty_number }}</li>
273
- {% endif %}
274
- {% if page.demographics.freeholders.vintners != 0 and page.demographics.freeholders.vintners != '' %}
275
- <li><strong>Vintners:</strong> {{ page.demographics.freeholders.vintners | pretty_number }}</li>
276
- {% endif %}
277
- {% if page.demographics.freeholders.weaponcrafters != 0 and page.demographics.freeholders.weaponcrafters != '' %}
278
- <li><strong>Weaponcrafters&ast;:</strong> {{ page.demographics.freeholders.weaponcrafters | pretty_number }}</li>
279
- {% endif %}
280
- {% if page.demographics.freeholders.weavers != 0 and page.demographics.freeholders.weavers != '' %}
281
- <li><strong>Weavers:</strong> {{ page.demographics.freeholders.weavers | pretty_number }}</li>
282
- {% endif %}
283
- {% if page.demographics.freeholders.woodcrafters != 0 and page.demographics.freeholders.woodcrafters != '' %}
284
- <li><strong>Woodcrafters:</strong> {{ page.demographics.freeholders.woodcrafters | pretty_number }}</li>
285
- {% endif %}
286
- {% if page.demographics.freeholders.yeomen != 0 and page.demographics.freeholders.yeomen != '' %}
287
- <li><strong>Yeomen:</strong> {{ page.demographics.freeholders.yeomen | pretty_number }}</li>
288
- {% endif %}
126
+ {% for subclass in class.desc %}
127
+ <li><strong>{{ subclass.title }}:</strong> {{ subclass.qtt | pretty_number }}</li>
128
+ {% endfor %}
289
129
  </ul>
290
- <p>Freeholders typically live in the same building as their shop, unless marked with an asterisk (&ast;), in which case their dwelling is separate from their place of business.</p>
291
130
  </details>
131
+ {% endfor %}
132
+ {% endif %}
292
133
 
293
- <details>
294
- <summary>Buildings</summary>
295
- <ul>
296
- <li><strong>Mansions:</strong> {{ page.demographics.buildings.mansions | pretty_number }}</li>
297
- <li><strong>Churches:</strong> {{ page.demographics.buildings.churches | pretty_number }}</li>
298
- <li><strong>Businesses:</strong> {{ page.demographics.buildings.businesses | pretty_number }}</li>
299
- <li><strong>Municipal:</strong> {{ page.demographics.buildings.municipal | pretty_number }}</li>
300
- <li><strong>Homes:</strong> {{ page.demographics.buildings.homes | pretty_number }}</li>
301
- <li><strong>Total:</strong> {{ page.demographics.buildings.total | pretty_number }}</li>
302
- </ul>
303
- </details>
134
+ {% if page.buildings %}
135
+ <h6>Buildings</h6>
136
+ <ul>
137
+ {% for building in page.buildings %}
138
+ <li><strong>{{ building.title }}:</strong> {{ building.qtt | pretty_number }}</li>
139
+ {% endfor %}
140
+ </ul>
304
141
  {% endif %}
305
142
  </blockquote>
306
143
  </div>
data/_layouts/spell.html CHANGED
@@ -7,38 +7,69 @@ layout: default
7
7
  <p class="meta">{{ page.author | default: 'Unknown' }} &bull; {{ page.date | default: '1938-07-27' | date: '%A, %B %e, %Y' }}</p>
8
8
  <!-- -->
9
9
  <div>
10
- {% assign: descs = page.spell.descriptor | join: '' %}
11
- <p>{{ page.spell.school }}{% if page.spell.subschool != '' %} ({{ page.spell.subschool }}){% endif %}{% if descs != '' %} [{{ page.spell.descriptor | join: ', ' }}]{% endif %}</p>
10
+ <h3>{{ page.spell.name }}</h3>
11
+ {% if page.spell.e5 %}
12
+ <!-- 5e Specific -->
13
+ <p>{{ page.spell.e5.level | ordinal }}-level {{ page.spell.school }}</p>
12
14
 
13
- <p><strong>Level:</strong> {{ page.spell.level | join: ', ' }}</p>
14
- <p><strong>Components:</strong> {{ page.spell.components.list | join: ', ' }}</p>
15
+ <p><strong>Components:</strong> {{ page.spell.e5.components.list | join: ', ' }}{% if page.spell.e5.components.material %} ({{ page.spell.e5.components.material }}{% if page.spell.e5.components.consumed %}, which is consumed{% endif %}){% endif %}</p>
16
+ <p><strong>Casting Time:</strong> {{ page.spell.cast-time | default: '1 action' }}</p>
17
+ <p><strong>Range:</strong> {{ page.spell.range | default: 'Touch' }}</p>
18
+ <p><strong>Target:</strong> {{ page.spell.target | default: 'Self' }}</p>
19
+ <p><strong>Duration:</strong> {{ page.spell.e5.duration | default: 'Instantaneous' }}</p>
20
+ <p><strong>Save:</strong> {% if page.spell.e5.save %}{{ page.spell.e5.save }}{% else %}&mdash;{% endif %}</p>
21
+ <!-- /5e Specific -->
22
+ {% else %}
23
+ <!-- 3.5e Specific -->
24
+ {% assign: descs = page.spell.e35.descriptor | join: '' %}
25
+ <p>{{ page.spell.school }}{% if page.spell.e35.subschool != '' %} ({{ page.spell.e35.subschool }}){% endif %}{% if descs != '' %} [{{ page.spell.e35.descriptor | join: ', ' }}]{% endif %}</p>
26
+
27
+ <p><strong>Level:</strong> {{ page.spell.e35.level | join: ', ' }}</p>
28
+ <p><strong>Components:</strong> {{ page.spell.e35.components.list | join: ', ' }}</p>
15
29
  <p><strong>Casting Time:</strong> {{ page.spell.cast-time | default: '1 standard action' }}</p>
16
30
  <p><strong>Range:</strong> {{ page.spell.range | default: 'Touch' }}</p>
17
31
  <p><strong>Target:</strong> {{ page.spell.target | default: 'Self' }}</p>
18
- <p><strong>Duration:</strong> {{ page.spell.duration.desc | default: 'Instantaneous' }}{% if page.spell.duration.dismiss %} (D){% endif %}</p>
19
- <p><strong>Saving Throw:</strong> {% if page.spell.save.type != 'None' %}{{ page.spell.save.type | default: 'Will' }} {{ page.spell.save.effect | default: 'negates' }}{% else %}None{% endif %}{% if page.spell.save.harmless %} (harmless){% endif %}</p>
20
- <p><strong>Spell Resistance:</strong> {% if page.spell.resistance %}Yes{% else %}No{% endif %}</p>
32
+ <p><strong>Duration:</strong> {{ page.spell.e35.duration.desc | default: 'Instantaneous' }}{% if page.spell.e35.duration.dismiss %} (D){% endif %}</p>
33
+ <p><strong>Saving Throw:</strong> {% if page.spell.e35.save.type != 'None' %}{{ page.spell.e35.save.type | default: 'Will' }} {{ page.spell.e35.save.effect | default: 'negates' }}{% else %}None{% endif %}{% if page.spell.e35.save.harmless %} (harmless){% endif %}</p>
34
+ <p><strong>Spell Resistance:</strong> {% if page.spell.e35.resistance %}Yes{% else %}No{% endif %}</p>
35
+ <!-- /3.5e Specific -->
36
+ {% endif %}
21
37
  </div>
22
38
  </div>
23
39
 
24
40
  {{ content }}
25
41
 
26
42
  <div class="spell components">
43
+ <!-- 3.5e Specific -->
27
44
  <!-- Material Components, if applicable -->
28
- {% if page.spell.components.material != '' %}
45
+ {% if page.spell.e35.components.material != '' %}
29
46
  <h6>Material Component</h6>
30
- <p>{{ page.spell.components.material }}</p>
47
+ <p>{{ page.spell.e35.components.material }}</p>
31
48
  {% endif %}
32
49
 
33
50
  <!-- Arcane Focus, if applicable -->
34
- {% if page.spell.components.focus != '' %}
51
+ {% if page.spell.e35.components.focus != '' %}
35
52
  <h6>Arcane Focus</h6>
36
- <p>{{ page.spell.components.focus }}</p>
53
+ <p>{{ page.spell.e35.components.focus }}</p>
37
54
  {% endif %}
38
55
 
39
56
  <!-- XP Cost, if applicable -->
40
- {% if page.spell.components.xp != '' %}
57
+ {% if page.spell.e35.components.xp != '' %}
41
58
  <h6>XP Cost</h6>
42
- <p>{{ page.spell.components.xp }}</p>
59
+ <p>{{ page.spell.e35.components.xp }}</p>
60
+ {% endif %}
61
+ <!-- /3.5e Specific -->
62
+
63
+ <!-- 5e Specific -->
64
+ <!-- Classes to which the spell is available -->
65
+ {% if page.spell.e5.classes %}
66
+ <h6>Classes</h6>
67
+ <p>{{ page.spell.e5.classes | join: ', ' }}</p>
68
+ {% endif %}
69
+ <!-- Subclasses to which the spell is available -->
70
+ {% if page.spell.e5.subclasses %}
71
+ <h6>Subclasses</h6>
72
+ <p>{{ page.spell.e5.subclasses | join: ', ' }}</p>
43
73
  {% endif %}
74
+ <!-- /5e Specific -->
44
75
  </div>
data/_layouts/weapon.html CHANGED
@@ -13,13 +13,19 @@ layout: default
13
13
 
14
14
  <div class="four columns">
15
15
  <h2>{{ page.item.name | default: 'Weapon' }}</h2>
16
- <p>{{ page.item.type | default: 'Melee' }}{% if page.item.rarity %}, {{ page.item.rarity }}{% endif %}{% if page.item.attunement %} (Requires attunement by {{ page.item.attunement }}){% endif %}</p>
16
+ <p>{{ page.item.type | default: 'Melee' }}{% if page.item.e5.rarity %}, {{ page.item.e5.rarity }}{% endif %}{% if page.item.e5.attunement %} (Requires attunement by {{ page.item.e5.attunement }}){% endif %}</p>
17
17
  <p><strong>Weight:</strong> {{ page.item.weight }}</p>
18
18
  <p><strong>Base Value:</strong> {{ page.item.value | pretty_number }}gp</p>
19
- {% assing: damages = page.item.damage | join: ' &bull; ' %}
19
+ {% assign: damages = page.item.damage | join: ' &bull; ' %}
20
20
  <p><strong>Damage:</strong> {{ damages }}</p>
21
- {% if page.item.charges %}
22
- <p><strong>Charges:</strong> {{ page.item.charges.number }} (Regains {{ page.item.charges.regain }} {{ page.item.charges.reset }})</p>
21
+ {% if page.item.e35 %}
22
+ <!-- 3.5e Specific -->
23
+ <p><strong>Critical:</strong> {% if page.item.e35.critical %}{{ page.item.e35.critical }}{% else %}&times;2{% endif %}</p>
24
+ <p><strong>Range Increment:</strong> {% if page.item.e35.range %}{{ page.item.e35.range }}{% else %}&mdash;{% endif %}</p>
25
+ <!-- /3.5e Specific -->
26
+ {% endif %}
27
+ {% if page.item.e5.charges %}
28
+ <p><strong>Charges:</strong> {{ page.item.charges.e5.number }} {% if page.item.e5.charges.regain %}(Regains {{ page.item.e5.charges.regain }} {{ page.item.e5.charges.reset }}){% else %}(Consumable){% endif %}</p>
23
29
  {% endif %}
24
30
  {% if page.item.props %}
25
31
  <ul>
@@ -0,0 +1,80 @@
1
+ module Jekyll
2
+ module CRFormat
3
+ def cr_format(input)
4
+ case input
5
+ when 0
6
+ return "0 (0 XP or 10 XP)"
7
+ when "1/8"
8
+ return "1/8 (25 XP)"
9
+ when "1/4"
10
+ return "1/4 (50 XP)"
11
+ when "1/2"
12
+ return "1/2 (100 XP)"
13
+ when 1
14
+ return "1 (200 XP)"
15
+ when 2
16
+ return "2 (450 XP)"
17
+ when 3
18
+ return "3 (700 XP)"
19
+ when 4
20
+ return "4 (1,100 XP)"
21
+ when 5
22
+ return "5 (1,800 XP)"
23
+ when 6
24
+ return "6 (2,300 XP)"
25
+ when 7
26
+ return "7 (2,900 XP)"
27
+ when 8
28
+ return "8 (3,900 XP)"
29
+ when 9
30
+ return "9 (5,000 XP)"
31
+ when 10
32
+ return "10 (5,900 XP)"
33
+ when 11
34
+ return "11 (7,200 XP)"
35
+ when 12
36
+ return "12 (8,400 XP)"
37
+ when 13
38
+ return "13 (10,000 XP)"
39
+ when 14
40
+ return "14 (11,500 XP)"
41
+ when 15
42
+ return "15 (13,000 XP)"
43
+ when 16
44
+ return "16 (15,000 XP)"
45
+ when 17
46
+ return "17 (18,000 XP)"
47
+ when 18
48
+ return "18 (20,000 XP)"
49
+ when 19
50
+ return "19 (22,000 XP)"
51
+ when 20
52
+ return "20 (25,000 XP)"
53
+ when 21
54
+ return "21 (33,000 XP)"
55
+ when 22
56
+ return "22 (41,000 XP)"
57
+ when 23
58
+ return "23 (50,000 XP)"
59
+ when 24
60
+ return "24 (62,000 XP)"
61
+ when 25
62
+ return "25 (75,000 XP)"
63
+ when 26
64
+ return "26 (90,000 XP)"
65
+ when 27
66
+ return "27 (105,000 XP)"
67
+ when 28
68
+ return "28 (120,000 XP)"
69
+ when 29
70
+ return "29 (135,000 XP)"
71
+ when 30
72
+ return "30 (155,000 XP)"
73
+ else
74
+ return "&mdash;"
75
+ end
76
+ end
77
+ end
78
+ end
79
+
80
+ Liquid::Template.register_filter(Jekyll::CRFormat)
@@ -0,0 +1,15 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ {% assign: adventures = site.adventures | join: '' %}
6
+ {% if adventures != '' %}
7
+ <div class="collection">
8
+ <h1>Adventures</h1>
9
+ <ul>
10
+ {% for adventure in site.adventures %}
11
+ <li><strong><a href="{{ adventure.url }}">{{ adventure.adventure.name }}</a>:</strong> {{ adventure.adventure.type | articulate }} for {{ adventure.adventure.char-num | default: 4 | pluralize: 'player character', 'player characters' }} of {% if adventure.adventure.lvl.range %}levels {{ adventure.adventure.lvl.min | ordinal }} through {{ adventure.adventure.lvl.max | ordinal }}{% else %}{{ adventure.adventure.lvl.lvl | ordinal }} level{% endif %}.</li>
12
+ {% endfor %}
13
+ </ul>
14
+ </div>
15
+ {% endif %}
@@ -0,0 +1,15 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ {% assign: ages = site.ages | join: '' %}
6
+ {% if ages != '' %}
7
+ <div class="collection">
8
+ <h1>Ages</h1>
9
+ <ul>
10
+ {% for age in site.ages %}
11
+ <li><strong><a href="{{ age.url }}">{{ age.title }}</a> ({{ age.age.abbr }})</li>
12
+ {% endfor %}
13
+ </ul>
14
+ </div>
15
+ {% endif %}
@@ -0,0 +1,15 @@
1
+ ---
2
+ layout: default
3
+ ---
4
+
5
+ {% assign: animals = site.animals | join: '' %}
6
+ {% if animals != '' %}
7
+ <div class="collection">
8
+ <h1>Animals</h1>
9
+ <ul>
10
+ {% for animal in site.animals %}
11
+ <li><strong><a href="{{ animal.url }}">{{ animal.title }}</a> (<em>{{ animal.animal.species }}</em>)</li>
12
+ {% endfor %}
13
+ </ul>
14
+ </div>
15
+ {% endif %}
@@ -76,28 +76,34 @@ $bar : $h-line;
76
76
  padding-left: 1.1em;
77
77
  line-height: 1.4em;
78
78
 
79
- &.first{ margin: 8px 0 0; }
80
- &.last{ margin: 0 0 10px; }
79
+ &:first-child { margin-top: 8px; }
80
+ &:last-child { margin-bottom: 10px; }
81
81
 
82
82
  h4, p {
83
83
  display: inline;
84
84
  margin: 0;
85
- color: $header;
85
+ color: $body;
86
86
  font-size: 13.5px;
87
87
  line-height: 1.2em;
88
88
  }
89
89
  h4{
90
90
  font-family: 'Montserrat', sans-serif;
91
91
  font-variant: normal;
92
- color: $header;
93
- &:after { content: ':'; }
92
+ color: $body;
93
+ font-weight: 900;
94
+ &:after { content: '.'; }
94
95
  }
95
96
  p { color: black; }
97
+
98
+ ul {
99
+ list-style-type: none;
100
+ text-indent: 2px;
101
+ }
96
102
  }
97
103
 
98
104
  .abilities {
99
105
  text-align: center;
100
- color: $header;
106
+ color: $body;
101
107
 
102
108
  & > div {
103
109
  display: inline-block;
@@ -113,7 +119,8 @@ $bar : $h-line;
113
119
  font-size: 14px;
114
120
  line-height: 1.2em;
115
121
  text-transform: uppercase;
116
- color: $header;
122
+ color: $body;
123
+ font-weight: bold;
117
124
  }
118
125
  & p {
119
126
  margin: 0 0 10px;
@@ -133,27 +140,28 @@ $bar : $h-line;
133
140
  & h4 {
134
141
  font-family: 'Montserrat', sans-serif;
135
142
  font-variant: none;
136
- &:after { content: ':'; }
143
+ color: $body;
144
+ &:after { content: '.'; }
137
145
  }
138
146
  }
139
147
 
140
148
  .actions {
141
149
  margin: 0 0 20px;
142
-
143
- & h3 {
150
+ p {
151
+ text-indent: 10px;
152
+ margin-top: 5px;
153
+ }
154
+ h3 {
144
155
  border-bottom: 1px solid $header;
145
156
  color: $header;
146
157
  font-size: 21px;
147
158
  font-variant: small-caps;
148
159
  font-weight: normal;
149
- letter-spacing: 1px;
150
- margin: 20px 0 0;
151
- padding: 0 0 10px;
152
160
  text-indent: 5px;
153
161
  }
154
- &:last-child{ margin: 0; }
162
+ &:last-child { margin: 0; }
155
163
  }
156
164
 
157
- @media screen and (max-width: 575px){
165
+ @media screen and (max-width: 575px) {
158
166
  .stat-block { margin: 20px 0; }
159
167
  }
@@ -25,6 +25,8 @@ html, body {
25
25
  text-align: justify;
26
26
  color: $body;
27
27
  }
28
+ button { background-color: white; }
29
+ form { margin: 2rem 0 0 0; }
28
30
 
29
31
  h1, h2, h3, h4 {
30
32
  font-family: 'Libre Baskerville', serif;
@@ -50,6 +52,10 @@ h1 {
50
52
  line-height: 1em;
51
53
  margin-right: .1em;
52
54
  text-transform: uppercase;
55
+ background-image: radial-gradient(ellipse farthest-corner at right bottom, #FEDB37 0%, #FDB931 8%, #9f7928 30%, #8A6E2F 40%, transparent 80%),
56
+ radial-gradient(ellipse farthest-corner at left top, #FFFFFF 0%, #FFFFAC 8%, #D1B464 25%, #5d4a1f 62.5%, #5d4a1f 100%);
57
+ color: transparent;
58
+ -webkit-background-clip: text;
53
59
  }
54
60
  & + p.subtitle {
55
61
  margin-top: -1.5em;
@@ -80,6 +86,8 @@ a {
80
86
  &:hover, &:active { color: $alink; }
81
87
  }
82
88
 
89
+ img { width: 100%; }
90
+
83
91
  header {
84
92
  overflow: auto;
85
93
  background-color: transparent;
@@ -242,4 +250,17 @@ h2.collections {
242
250
  margin-left: 1.5em;
243
251
  margin-bottom: 0.3em;
244
252
  }
253
+
254
+ &.long {
255
+ width: 100%;
256
+ li { float: left; }
257
+ }
258
+ }
259
+
260
+ nav.posts {
261
+ li {
262
+ list-style: none;
263
+ margin-left: 1.5em;
264
+ margin-bottom: 0.3em;
265
+ }
245
266
  }
@@ -0,0 +1,34 @@
1
+ $(document).ready(function() {
2
+ console.log("App ready!");
3
+
4
+ // Hide non-default divs
5
+ $("#tags, #categories").css("display", "none");
6
+
7
+ // Show alphabetically
8
+ $("#go-alphabetical").on("click", function() {
9
+ if ( !$(this).hasClass("button-primary") ) {
10
+ $("#go-tags, #go-categories").removeClass("button-primary");
11
+ $(this).addClass("button-primary");
12
+ $("#alphabetical").css("display", "block");
13
+ $("#tags, #categories").css("display", "none");
14
+ }
15
+ });
16
+ // Show tags
17
+ $("#go-tags").on("click", function() {
18
+ if ( !$(this).hasClass("button-primary") ) {
19
+ $("#go-alphabetical, #go-categories").removeClass("button-primary");
20
+ $(this).addClass("button-primary");
21
+ $("#tags").css("display", "block");
22
+ $("#alphabetical, #categories").css("display", "none");
23
+ }
24
+ });
25
+ // Show categories
26
+ $("#go-categories").on("click", function() {
27
+ if ( !$(this).hasClass("button-primary") ) {
28
+ $("#go-alphabetical, #go-tags").removeClass("button-primary");
29
+ $(this).addClass("button-primary");
30
+ $("#categories").css("display", "block");
31
+ $("#alphabetical, #tags").css("display", "none");
32
+ }
33
+ });
34
+ });