nereare_grimoire 1.13.10 → 1.18.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3bd92c1d8653c08e106efc71c9ed0970a0f3cd9af85c9a4ef53b6ac37ad210a7
4
- data.tar.gz: c998973bd916529d7c7f31f8119c70883d96691433dec3cb3576223b0e93fb60
3
+ metadata.gz: 964d714a040713d64260467fee4bbac52d3db69336d02b6b2ab1d19df79585f2
4
+ data.tar.gz: 40d9dd381247affb2057168f14a399fc1010f1c0e128ab22ae196cf6bfcbdff2
5
5
  SHA512:
6
- metadata.gz: e1aa015ec2c44348c5c8b5a438df367d079ea35109e6ddaf99e949fd5af845d23e39730d6f8b5f36f2f28214308d54c7272d8e1881b6c918a0e0961c96a45709
7
- data.tar.gz: 49ce64296491b22c9a7c89358c344c8f30d0b91915829db76378cc5d4ff84452464cf69f044b65ee0aaf19172afc1d1fc52c3d220f4d73cce1c4803086991abe
6
+ metadata.gz: d853ea58983c6abd84d7d86a2b74cadfd859b4edaccd34d5f288249ce5feaea4c3164c7043fb8e081db7fe3d3a18df7d3a5d3990603e3ce7a6f677d8a37f6e40
7
+ data.tar.gz: bfb1d671e918ba139c1c0c06da38a224610c7dfa898e0f05d6a95b2f721b7959e49f553f1a47a0213bace70ed5b2f26244193beca28d9d82f6da9b0abd5ea0b1
data/LICENSE.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # Hippocratic License Version 2.0
2
2
 
3
- Copyright `2019-2020` `Igor Padoim`
3
+ Copyright `2019-2022` `Igor Padoim`
4
4
 
5
5
  Licensor hereby grants permission by this license ("License"), free of charge, to any person or entity (the "Licensee") obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
6
 
@@ -15,10 +15,18 @@ layout: default
15
15
  <blockquote class="meta">
16
16
  <h5>{{ page.adventure.name | default: 'Adventure Name' }}</h5>
17
17
  <p class="subtitle">An adventure for {{ page.adventure.char-num | default: 4 | pluralize: 'player character', 'player characters' }} of {% if page.adventure.lvl.range %}levels {{ page.adventure.lvl.min | ordinal }} through {{ page.adventure.lvl.max | ordinal }}{% else %}{{ page.adventure.lvl.lvl | ordinal }} level{% endif %}.</p>
18
+ {% if page.adventure.max-xp %}
18
19
  <p><strong>Max XP:</strong> {{ page.adventure.max-xp | pretty_number }} xp</p>
20
+ {% endif %}
21
+ {% if page.adventure.max-gp %}
19
22
  <p><strong>Max Gold:</strong> {{ page.adventure.max-gp | pretty_number }} gp</p>
20
- <p><strong>&#35; Encounters:</strong> {{ page.adventure.encounters }}</p>
23
+ {% endif %}
24
+ {% if page.adventure.encounters %}
25
+ <p><strong>&#35; Encounters:</strong> {{ page.adventure.encounters | pretty_number }}</p>
26
+ {% endif %}
27
+ {% if page.adventure.type %}
21
28
  <p><strong>Type:</strong> {{ page.adventure.type }}</p>
29
+ {% endif %}
22
30
  {% if page.adventure.questline %}
23
31
  <p><strong>Questline:</strong> <em>{{ page.adventure.questline.name }}</em>{% if page.adventure.questline.chapter %}, Chapter {{ page.adventure.questline.chapter }}{% endif %}</p>
24
32
  {% endif %}
data/_layouts/armor.html CHANGED
@@ -15,16 +15,26 @@ layout: default
15
15
  <h2>{{ page.item.name | default: 'Armor' }}</h2>
16
16
  <p>{{ page.item.type | default: 'Light' }} Armor{% if page.item.rarity %}, {{ page.item.rarity }}{% endif %}{% if page.item.attunement %} (Requires attunement by {{ page.item.attunement }}){% endif %}</p>
17
17
  <p><strong>Weight:</strong> {{ page.item.weight }}</p>
18
- <p><strong>Base Value:</strong> {{ page.item.value }}gp</p>
18
+ <p><strong>Base Value:</strong> {{ page.item.value | pretty_number }}gp</p>
19
19
  <p><strong>Armor Class:</strong> {{ page.item.ac.base }}{% if page.item.ac.dex > 0 %} + Dex Mod. (Max {{ page.item.ac.dex }}){% endif %}</p>
20
- {% if page.item.str %}
21
- <p><strong>Min Strength</strong> {{ page.item.str }}</p>
22
- {% endif %}
23
- {% if page.item.stealth %}
20
+ {% if page.item.e5 %}
21
+ <!-- 5E Specifics -->
22
+ {% if page.item.e5.stealth %}
24
23
  <p><strong>Disadvantage on Stealth rolls</strong></p>
25
24
  {% endif %}
26
- {% if page.item.charges %}
27
- <p><strong>Charges:</strong> {{ page.item.charges.number }} (Regains {{ page.item.charges.regain }} {{ page.item.charges.reset }})</p>
25
+ {% if page.item.e5.charges %}
26
+ <p><strong>Charges:</strong> {{ page.item.e5.charges.number }} {% if page.item.e5.charges.regain %}(Regains {{ page.item.e5.charges.regain }} charges {{ page.item.e5.charges.reset }}){% else %}(Consumable){% endif %}</p>
27
+ {% endif %}
28
+ <!-- /5E Specifics -->
29
+ {% else %}
30
+ <!-- 3.5 Specifics -->
31
+ {% if page.item.e35.str %}
32
+ <p><strong>Min Strength</strong> {{ page.item.e35.str }}</p>
33
+ {% endif %}
34
+ {% if page.item.e35.penalty %}
35
+ <p><strong>Check Penalty</strong> {{ page.item.e35.penalty }}</p>
36
+ {% endif %}
37
+ <!-- /3.5 Specifics -->
28
38
  {% endif %}
29
39
  {% if page.item.attributes %}
30
40
  <ul>
data/_layouts/item.html CHANGED
@@ -13,11 +13,11 @@ layout: default
13
13
 
14
14
  <div class="four columns">
15
15
  <h2>{{ page.item.name | default: 'Item' }}</h2>
16
- <p>{{ page.item.type | default: 'Gadget' }}{% 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: 'Gadget' }}{% if page.item.5e.rarity %}, {{ page.item.5e.rarity }}{% endif %}{% if page.item.5e.attunement %} (Requires attunement by {{ page.item.5e.attunement }}){% endif %}</p>
17
17
  <p><strong>Weight:</strong> {{ page.item.weight }}</p>
18
- <p><strong>Base Value:</strong> {{ page.item.value }}gp</p>
19
- {% if page.item.charges %}
20
- <p><strong>Charges:</strong> {{ page.item.charges.number }} (Regains {{ page.item.charges.regain }} {{ page.item.charges.reset }})</p>
18
+ <p><strong>Base Value:</strong> {{ page.item.value | pretty_number }}gp</p>
19
+ {% if page.item.5e.charges %}
20
+ <p><strong>Charges:</strong> {{ page.item.5e.charges.number }}{% if page.item.5e.charges.regain %} (Regains {{ page.item.5e.charges.regain }} {{ page.item.5e.charges.reset }}){% else %}(Consumable){% endif %}</p>
21
21
  {% endif %}
22
22
  {% if page.item.attributes %}
23
23
  <ul>
@@ -11,181 +11,341 @@ layout: default
11
11
  {{ content }}
12
12
  </div>
13
13
 
14
+ {% if page.monster.e5 %}
15
+ <!-- 5e Stat Block -->
14
16
  <div class="four columns">
15
17
  <div class="stat-block-container">
16
18
  <div class="stat-block">
17
- <hr class="orange-border" />
18
- <div class="section-left">
19
- <div class="creature-heading">
20
- <h1>{{ page.monster.name | default: 'Terrasque' }}</h1>
21
- <h2>{{ page.monster.size | default: 'Colossal' }} {{ page.monster.type | default: 'magical beast' }}, {{ page.monster.align | default: 'always neutral' }}</h2>
19
+ <hr class="orange-border">
20
+ <div class="creature-heading">
21
+ <h1>{{ page.monster.name | default: 'Terrasque' }}</h1>
22
+ <h2>{{ page.monster.size | default: 'Colossal' }} {{ page.monster.type | default: 'magical beast' }}{% if page.monster.subtype %} ({{ page.monster.subtype }}){% endif %}, {{ page.monster.align | default: 'always neutral' }}</h2>
23
+ </div>
24
+ <!-- creature heading -->
25
+ <svg height="5" width="100%" class="tapered-rule">
26
+ <polyline points="0,0 400,2.5 0,5"></polyline>
27
+ </svg>
28
+ <div class="top-stats">
29
+ <div class="property-line">
30
+ <h4>Armor Class</h4>
31
+ <p>{{ page.monster.e5.ac.base }}{% if page.monster.e5.ac.desc != '' %} ({{ page.monster.e5.ac.desc }}){% endif %}</p>
32
+ </div>
33
+ <!-- property line -->
34
+ <div class="property-line">
35
+ <h4>Hit Points</h4>
36
+ <p>{{ page.monster.e5.hp.hp | pretty_number }} ({{ page.monster.e5.hp.hd }})</p>
22
37
  </div>
23
- <!-- creature heading -->
24
- <svg height="5" width="100%" class="tapered-rule">
38
+ <!-- property line -->
39
+ <div class="property-line">
40
+ <h4>Speed</h4>
41
+ <p>{{ page.monster.e5.speed | join: ', ' }}</p>
42
+ </div>
43
+ </div>
44
+ <svg height="5" width="100%" class="tapered-rule">
25
45
  <polyline points="0,0 400,2.5 0,5"></polyline>
26
46
  </svg>
27
- <div class="top-stats">
28
- <div class="property-line first">
29
- <h4>Armor Class</h4>
30
- <p>{{ page.monster.ac.base | default: '35' }}{% if page.monster.ac.desc != '' %} ({{ page.monster.ac.desc }}){% endif %}, touch {{ page.monster.ac.touch | default: '5' }}, flat-footed {{ page.monster.ac.flat | default: '32' }}</p>
31
- </div>
32
- <!-- property line -->
33
- <div class="property-line">
34
- <h4>Hit Points</h4>
35
- <p>{{ page.monster.hp.hp | default: '858' | pretty_number }}hp ({{ page.monster.hp.hd | default: '48d10 + 594' }})</p>
47
+ <div>
48
+ <div class="abilities">
49
+ <div class="ability-strength">
50
+ <h4>STR</h4>
51
+ <p>{{ page.monster.abilities.str | ability }}</p>
36
52
  </div>
37
- <!-- property line -->
38
- <div class="property-line">
39
- <h4>Speed</h4>
40
- <p>{{ page.monster.speed | default: '20ft' }}</p>
53
+ <!-- ability strength -->
54
+ <div class="ability-dexterity">
55
+ <h4>DEX</h4>
56
+ <p>{{ page.monster.abilities.dex | ability }}</p>
41
57
  </div>
42
- <!-- property line -->
43
- <div class="property-line">
44
- <h4>Initiative</h4>
45
- <p>{{ page.monster.initiative | default: 7 | add_sign }}</p>
58
+ <!-- ability dexterity -->
59
+ <div class="ability-constitution">
60
+ <h4>CON</h4>
61
+ <p>{{ page.monster.abilities.con | ability }}</p>
46
62
  </div>
47
- <!-- property line -->
48
- <div class="property-line">
49
- <h4>Space/Reach</h4>
50
- <p>{{ page.monster.space | default: '30ft' }}/{{ page.monster.reach | default: '20ft' }}</p>
63
+ <!-- ability constitution -->
64
+ <div class="ability-intelligence">
65
+ <h4>INT</h4>
66
+ <p>{{ page.monster.abilities.int | ability }}</p>
51
67
  </div>
52
- <!-- property line -->
53
- <div class="property-line">
54
- <h4>BA/Grapple</h4>
55
- <p>{{ page.monster.ba | default: '+48' }}/{{ page.monster.grapple | default: '+81' }}</p>
68
+ <!-- ability intelligence -->
69
+ <div class="ability-wisdom">
70
+ <h4>WIS</h4>
71
+ <p>{{ page.monster.abilities.wis | ability }}</p>
56
72
  </div>
57
- <!-- property line -->
58
- <div class="property-line last">
59
- <h4>Saves</h4>
60
- <p>Fort {{ page.monster.saves.fort | default: 38 | add_sign }}, Ref {{ page.monster.saves.ref | default: 29 | add_sign }}, Will {{ page.monster.saves.will | default: 20 | add_sign }}</p>
73
+ <!-- ability wisdom -->
74
+ <div class="ability-charisma">
75
+ <h4>CHA</h4>
76
+ <p>{{ page.monster.abilities.cha | ability }}</p>
61
77
  </div>
62
- <!-- property line -->
63
- <svg height="5" width="100%" class="tapered-rule">
78
+ <!-- ability charisma -->
79
+ </div>
80
+ </div>
81
+ <svg height="5" width="100%" class="tapered-rule">
64
82
  <polyline points="0,0 400,2.5 0,5"></polyline>
65
83
  </svg>
66
- <div class="abilities">
67
- <div class="ability-strength">
68
- <h4>STR</h4>
69
- <p>{{ page.monster.abilities.str | default: 45 | ability }}</p>
70
- </div>
71
- <!-- ability strength -->
72
- <div class="ability-dexterity">
73
- <h4>DEX</h4>
74
- <p>{{ page.monster.abilities.dex | default: 16 | ability }}</p>
75
- </div>
76
- <!-- ability dexterity -->
77
- <div class="ability-constitution">
78
- <h4>CON</h4>
79
- <p>{{ page.monster.abilities.con | default: 35 | ability }}</p>
80
- </div>
81
- <!-- ability constitution -->
82
- <div class="ability-intelligence">
83
- <h4>INT</h4>
84
- <p>{{ page.monster.abilities.int | default: 3 | ability }}</p>
85
- </div>
86
- <!-- ability intelligence -->
87
- <div class="ability-wisdom">
88
- <h4>WIS</h4>
89
- <p>{{ page.monster.abilities.wis | default: 14 | ability }}</p>
90
- </div>
91
- <!-- ability wisdom -->
92
- <div class="ability-charisma">
93
- <h4>CHA</h4>
94
- <p>{{ page.monster.abilities.cha | default: 14 | ability }}</p>
95
- </div>
96
- <!-- ability charisma -->
97
- </div>
98
- <!-- abilities -->
99
- <svg height="5" width="100%" class="tapered-rule">
84
+ <div>
85
+ {% if page.monster.e5.saves %}
86
+ <div class="property-line">
87
+ <h4>Saving Throws</h4>
88
+ <p>{{ page.monster.e5.saves | join: ', ' }}</p>
89
+ </div>
90
+ {% endif %}
91
+ {% if page.monster.e5.skills %}
92
+ <div class="property-line">
93
+ <h4>Skills</h4>
94
+ <p>{{ page.monster.e5.skills | join: ', ' }}</p>
95
+ </div>
96
+ {% endif %}
97
+ {% if page.monster.e5.dmg_vulnerabilities %}
98
+ <div class="property-line">
99
+ <h4>Damage Vulnerabilities</h4>
100
+ <p>{{ page.monster.e5.dmg_vulnerabilities | join: ', ' }}</p>
101
+ </div>
102
+ {% endif %}
103
+ {% if page.monster.e5.dmg_resistances %}
104
+ <div class="property-line">
105
+ <h4>Damage Resistances</h4>
106
+ <p>{{ page.monster.e5.dmg_resistances | join: ', ' }}</p>
107
+ </div>
108
+ {% endif %}
109
+ {% if page.monster.e5.dmg_immunities %}
110
+ <div class="property-line">
111
+ <h4>Damage Immunities</h4>
112
+ <p>{{ page.monster.e5.dmg_immunities | join: ', ' }}</p>
113
+ </div>
114
+ {% endif %}
115
+ {% if page.monster.e5.cond_immunities %}
116
+ <div class="property-line">
117
+ <h4>Condition Immunities</h4>
118
+ <p>{{ page.monster.e5.cond_immunities | join: ', ' }}</p>
119
+ </div>
120
+ {% endif %}
121
+ <div class="property-line">
122
+ <h4>Challenge</h4>
123
+ <p>{{ page.monster.e5.cr | cr_format }}</p>
124
+ </div>
125
+ <div class="property-line">
126
+ <h4>Senses</h4>
127
+ <p>{{ page.monster.e5.senses | join: ', ' }}</p>
128
+ </div>
129
+ <div class="property-line">
130
+ <h4>Languages</h4>
131
+ <p>{% if page.monster.e5.langs %}{{ page.monster.e5.langs | join: ', ' }}{% else %}&mdash;{% endif %}</p>
132
+ </div>
133
+ <div class="property-line">
134
+ <h4>Prof. Bonus</h4>
135
+ <p>{{ page.monster.e5.pb | add_sign }}</p>
136
+ </div>
137
+ </div>
138
+ {% if page.monster.e5.props or page.monster.e5.spellcasting %}
139
+ <svg height="5" width="100%" class="tapered-rule">
100
140
  <polyline points="0,0 400,2.5 0,5"></polyline>
101
141
  </svg>
102
- <div class="property-line first">
103
- <h4>Skills</h4>
104
- <p>{{ page.monster.skills | default: 'none' }}</p>
105
- </div>
106
- <!-- property line -->
107
- <div class="property-line">
108
- <h4>Feats</h4>
109
- <p>{{ page.monster.feats | default: 'none' }}</p>
110
- </div>
111
- <!-- property line -->
112
- <div class="property-line">
113
- <h4>Challenge Rating</h4>
114
- <p>{{ page.monster.cr | default: 20 }}</p>
142
+ <div>
143
+ {% if page.monster.e5.spellcasting %}
144
+ <div class="property-line">
145
+ <h4>Spellcasting</h4>
146
+ <p>{{ page.monster.e5.spellcasting.intro }}</p>
147
+ <ul>
148
+ {% for line in page.monster.e5.spellcasting.list %}
149
+ <li><em>{{ line.title }}.</em> {{ line.list | join: ', ' }}</li>
150
+ {% endfor %}
151
+ </ul>
152
+ </div>
153
+ {% endif %}
154
+ {% for prop in page.monster.e5.props %}
155
+ <div class="property-line">
156
+ <h4>{{ prop.title }}</h4>
157
+ <p>{{ prop.desc }}</p>
158
+ </div>
159
+ {% endfor %}
160
+ </div>
161
+ {% endif %}
162
+ {% if page.monster.e5.actions %}
163
+ {% for action in page.monster.e5.actions %}
164
+ <div class="actions">
165
+ <h3>{{ action.title }}</h3>
166
+ {% if action.intro %}
167
+ <p>{{ action.intro }}</p>
168
+ {% endif %}
169
+ {% for attack in action.list %}
170
+ <div class="property-block">
171
+ <h4>{{ attack.name }}</h4>
172
+ <p>{{ attack.desc | default: '+57 melee (4d8 + 17 / 18-20 / x3)' }}</p>
173
+ </div>
174
+ {% endfor %}
175
+ </div>
176
+ {% endfor %}
177
+ {% endif %}
178
+ <hr class="orange-border bottom">
179
+ </div>
180
+ <!-- stat block -->
181
+ </div>
182
+ </div>
183
+ <!-- /5e Stat Block -->
184
+ {% else %}
185
+ <!-- 3.5e Stat Block -->
186
+ <div class="four columns">
187
+ <div class="stat-block-container">
188
+ <div class="stat-block">
189
+ <hr class="orange-border">
190
+ <div>
191
+ <div class="creature-heading">
192
+ <h1>{{ page.monster.name | default: 'Terrasque' }}</h1>
193
+ <h2>{{ page.monster.size | default: 'Colossal' }} {{ page.monster.type | default: 'magical beast' }}{% if page.monster.subtype %} ({{ page.monster.subtype }}){% endif %}, {{ page.monster.align | default: 'always neutral' }}</h2>
194
+ </div>
195
+ </div>
196
+ <svg height="5" width="100%" class="tapered-rule">
197
+ <polyline points="0,0 400,2.5 0,5"></polyline>
198
+ </svg>
199
+ <div>
200
+ <div class="property-line">
201
+ <h4>Armor Class</h4>
202
+ <p>{{ page.monster.e35.ac.base }}{% if page.monster.e35.ac.desc != '' %} ({{ page.monster.e35.ac.desc }}){% endif %}, touch {{ page.monster.e35.ac.touch | default: '5' }}, flat-footed {{ page.monster.e35.ac.flat | default: '32' }}</p>
203
+ </div>
204
+ <!-- property line -->
205
+ <div class="property-line">
206
+ <h4>Hit Points</h4>
207
+ <p>{{ page.monster.e35.hp.hp | default: '858' | pretty_number }} ({{ page.monster.e35.hp.hd | default: '48d10 + 594' }})</p>
208
+ </div>
209
+ <!-- property line -->
210
+ <div class="property-line">
211
+ <h4>Speed</h4>
212
+ <p>{{ page.monster.e35.speed | default: '20ft' }}</p>
213
+ </div>
214
+ <!-- property line -->
215
+ <div class="property-line">
216
+ <h4>Initiative</h4>
217
+ <p>{{ page.monster.e35.initiative | default: 7 | add_sign }}</p>
218
+ </div>
219
+ <!-- property line -->
220
+ <div class="property-line">
221
+ <h4>Space/Reach</h4>
222
+ <p>{{ page.monster.e35.space | default: '30ft' }}/{{ page.monster.e35.reach | default: '20ft' }}</p>
223
+ </div>
224
+ <!-- property line -->
225
+ <div class="property-line">
226
+ <h4>BA/Grapple</h4>
227
+ <p>{{ page.monster.e35.ba | default: '+48' }}/{{ page.monster.e35.grapple | default: '+81' }}</p>
228
+ </div>
229
+ <!-- property line -->
230
+ <div class="property-line">
231
+ <h4>Saves</h4>
232
+ <p>Fort {{ page.monster.e35.saves.fort | default: 38 | add_sign }}, Ref {{ page.monster.e35.saves.ref | default: 29 | add_sign }}, Will {{ page.monster.e35.saves.will | default: 20 | add_sign }}</p>
233
+ </div>
234
+ </div>
235
+ <svg height="5" width="100%" class="tapered-rule">
236
+ <polyline points="0,0 400,2.5 0,5"></polyline>
237
+ </svg>
238
+ <div>
239
+ <div class="abilities">
240
+ <div class="ability-strength">
241
+ <h4>STR</h4>
242
+ <p>{{ page.monster.abilities.str | ability }}</p>
115
243
  </div>
116
- <!-- property line -->
117
- <div class="property-line">
118
- <h4>Treasure</h4>
119
- <p>{{ page.monster.treasure | default: 'None' }}</p>
244
+ <div class="ability-dexterity">
245
+ <h4>DEX</h4>
246
+ <p>{{ page.monster.abilities.dex | ability }}</p>
120
247
  </div>
121
- <!-- property line -->
122
- <div class="property-line">
123
- <h4>Advancement</h4>
124
- <p>{{ page.monster.advancement | default: '49+ HD (Colossal)' }}</p>
248
+ <div class="ability-constitution">
249
+ <h4>CON</h4>
250
+ <p>{{ page.monster.abilities.con | ability }}</p>
125
251
  </div>
126
- <!-- property line -->
127
- <div class="property-line">
128
- <h4>Level Adjustment</h4>
129
- <p>{{ page.monster.lvl_adj | default: 'N/A' }}</p>
252
+ <div class="ability-intelligence">
253
+ <h4>INT</h4>
254
+ <p>{{ page.monster.abilities.int | ability }}</p>
130
255
  </div>
131
- <!-- property line -->
132
- <div class="property-line">
133
- <h4>Environment</h4>
134
- <p>{{ page.monster.env | default: 'Any' }}</p>
256
+ <div class="ability-wisdom">
257
+ <h4>WIS</h4>
258
+ <p>{{ page.monster.abilities.wis | ability }}</p>
135
259
  </div>
136
- <!-- property line -->
137
- <div class="property-line last">
138
- <h4>Organization</h4>
139
- <p>{{ page.monster.org | default: 'Solitary' }}</p>
260
+ <div class="ability-charisma">
261
+ <h4>CHA</h4>
262
+ <p>{{ page.monster.abilities.cha | ability }}</p>
140
263
  </div>
141
- <!-- property line -->
142
264
  </div>
143
- <!-- top stats -->
144
- <svg height="5" width="100%" class="tapered-rule">
265
+ </div>
266
+ <svg height="5" width="100%" class="tapered-rule">
267
+ <polyline points="0,0 400,2.5 0,5"></polyline>
268
+ </svg>
269
+ <div>
270
+ <div class="property-line">
271
+ <h4>Skills</h4>
272
+ <p>{{ page.monster.e35.skills | default: 'none' }}</p>
273
+ </div>
274
+ <!-- property line -->
275
+ <div class="property-line">
276
+ <h4>Feats</h4>
277
+ <p>{{ page.monster.e35.feats | default: 'none' }}</p>
278
+ </div>
279
+ <!-- property line -->
280
+ <div class="property-line">
281
+ <h4>Challenge Rating</h4>
282
+ <p>{{ page.monster.e35.cr | default: 20 }}</p>
283
+ </div>
284
+ <!-- property line -->
285
+ <div class="property-line">
286
+ <h4>Treasure</h4>
287
+ <p>{{ page.monster.e35.treasure | default: 'None' }}</p>
288
+ </div>
289
+ <!-- property line -->
290
+ <div class="property-line">
291
+ <h4>Advancement</h4>
292
+ <p>{{ page.monster.e35.advancement | default: '49+ HD (Colossal)' }}</p>
293
+ </div>
294
+ <!-- property line -->
295
+ <div class="property-line">
296
+ <h4>Level Adjustment</h4>
297
+ <p>{{ page.monster.e35.lvl_adj | default: 'N/A' }}</p>
298
+ </div>
299
+ <!-- property line -->
300
+ <div class="property-line">
301
+ <h4>Environment</h4>
302
+ <p>{{ page.monster.e35.env | default: 'Any' }}</p>
303
+ </div>
304
+ <!-- property line -->
305
+ <div class="property-line">
306
+ <h4>Organization</h4>
307
+ <p>{{ page.monster.e35.org | default: 'Solitary' }}</p>
308
+ </div>
309
+ </div>
310
+ <svg height="5" width="100%" class="tapered-rule">
145
311
  <polyline points="0,0 400,2.5 0,5"></polyline>
146
312
  </svg>
313
+ <div>
147
314
  <div class="property-block">
148
315
  <h4>Special Qualities</h4>
149
- <p>{{ page.monster.qualities | default: 'none'}}</p>
316
+ <p>{{ page.monster.e35.qualities | default: 'none'}}</p>
150
317
  </div>
151
318
  <!-- property block -->
152
319
  <div class="property-block">
153
320
  <h4>Special Attacks</h4>
154
- <p>{{ page.monster.sp_attacks | default: 'none' }}</p>
321
+ <p>{{ page.monster.e35.sp_attacks | default: 'none' }}</p>
155
322
  </div>
156
323
  <!-- property block -->
157
324
  </div>
158
- <!-- section left -->
159
- <div class="section-right">
160
- <div class="actions">
161
- <h3>Actions</h3>
162
- {% for attack in page.monster.attacks %}
163
- <div class="property-block">
164
- <h4>{{ attack.name }}</h4>
165
- <p>{{ attack.desc | default: '+57 melee (4d8 + 17 / 18-20 / x3)' }}</p>
166
- </div>
167
- <!-- property block -->
168
- {% endfor %}
169
- </div>
170
- {% assign: items = page.monster.possessions | join: '' %}
171
- {% if items != '' %}
172
- <!-- actions -->
173
- <div class="actions">
174
- <h3>Possessions</h3>
175
- {% for item in page.monster.possessions %}
176
- <div class="property-block">
177
- <h4>{{ item.name }}</h4>
178
- <p>{{ item.desc }}</p>
179
- </div>
180
- <!-- property block -->
181
- {% endfor %}
325
+ <div class="actions">
326
+ <h3>Actions</h3>
327
+ {% for attack in page.monster.e35.attacks %}
328
+ <div class="property-block">
329
+ <h4>{{ attack.name }}</h4>
330
+ <p>{{ attack.desc | default: '+57 melee (4d8 + 17 / 18-20 / x3)' }}</p>
182
331
  </div>
183
- <!-- actions -->
184
- {% endif %}
332
+ {% endfor %}
185
333
  </div>
186
- <!-- section right -->
187
- <hr class="orange-border bottom" />
334
+ {% assign: items = page.monster.e35.possessions | join: '' %}
335
+ {% if items != '' %}
336
+ <div class="actions">
337
+ <h3>Possessions</h3>
338
+ {% for item in page.monster.e35.possessions %}
339
+ <div class="property-block">
340
+ <h4>{{ item.name }}</h4>
341
+ <p>{{ item.desc }}</p>
342
+ </div>
343
+ {% endfor %}
344
+ </div>
345
+ {% endif %}
346
+ <hr class="orange-border bottom">
188
347
  </div>
189
- <!-- stat block -->
190
348
  </div>
191
349
  </div>
350
+ <!-- /3.5e Stat Block -->
351
+ {% endif %}
@@ -22,7 +22,9 @@ layout: default
22
22
  <div class="building">
23
23
  <h5>{{ shop.name }}</h5>
24
24
  <p class="type">{{ shop.type }}</p>
25
- <p><strong>Owner:</strong> {{ shop.owner.name }}, {{ shop.owner.gender }} {{ shop.owner.race }}, {{ shop.owner.level | ordinal }}-level {{ shop.owner.class }}</p>
25
+ {% if shop.owner %}
26
+ <p><strong>Owner:</strong> {{ shop.owner.name }}, {{ shop.owner.gender }} {{ shop.owner.race }}, {% if shop.owner.level %}{{ shop.owner.level | ordinal }}-level{% endif %} {{ shop.owner.class }}</p>
27
+ {% endif %}
26
28
  <p><strong>Location:</strong> {{ shop.location }}</p>
27
29
  <p><strong>Description:</strong> {{ shop.desc }}</p>
28
30
  <h6>Transactions</h6>
@@ -59,7 +61,7 @@ layout: default
59
61
  <h6>Inhabitants</h6>
60
62
  <ul>
61
63
  {% for person in house.people %}
62
- <li><strong>{{ person.name }}:</strong> {{ person.gender }} {{ person.race }}, {{ person.level | ordinal }}-level {{ person.class }}{% if person.owner %}, <strong>owner</strong>{% endif %}.</li>
64
+ <li><strong>{{ person.name }}:</strong> {{ person.gender }} {{ person.race }}, {% if person.level %}{{ person.level | ordinal }}-level{% endif %} {{ person.class }}{% if person.owner %}, <strong>owner</strong>{% endif %}.</li>
63
65
  {% endfor %}
64
66
  </ul>
65
67
  {% assign: is = house.items | join: '' %}
@@ -86,8 +88,12 @@ layout: default
86
88
  <p><strong>Size:</strong> {{ page.settlement.size }}</p>
87
89
  <p><strong>Demographics:</strong> {% for race in page.settlement.demographics %}{{ race.percent }}% {{ race.race }}{% unless forloop.last %}, {% endunless %}{% endfor %}</p>
88
90
  <p><strong>Population:</strong> {{ page.settlement.population | pretty_number }} souls</p>
91
+ {% if page.settlement.wealth %}
89
92
  <p><strong>Wealth:</strong> {{ page.settlement.wealth | pretty_number }} gp</p>
93
+ {% endif %}
94
+ {% if page.settlement.gp-limit %}
90
95
  <p><strong>GP Limit:</strong> {{ page.settlement.gp-limit | pretty_number }} gp</p>
96
+ {% endif %}
91
97
 
92
98
  {% assign: cs = page.settlement.centres | join: '' %}
93
99
  {% if cs != '' %}
@@ -104,7 +110,7 @@ layout: default
104
110
  <h6>Authorities</h6>
105
111
  <ul>
106
112
  {% for authority in page.settlement.authorities %}
107
- <li><strong>{{ authority.name }}:</strong> {{ authority.title }}, {{ authority.level | ordinal }}-level {{ authority.class }}</li>
113
+ <li><strong>{{ authority.name }}:</strong> {{ authority.title }} ({% if authority.level %}{{ authority.level | ordinal }}-level {% endif %}{{ authority.class }})</li>
108
114
  {% endfor %}
109
115
  </ul>
110
116
  {% endif %}
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
- <p><strong>Base Value:</strong> {{ page.item.value }}gp</p>
18
+ <p><strong>Base Value:</strong> {{ page.item.value | pretty_number }}gp</p>
19
19
  {% assing: 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)
@@ -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
  }
@@ -80,6 +80,8 @@ a {
80
80
  &:hover, &:active { color: $alink; }
81
81
  }
82
82
 
83
+ img { width: 100%; }
84
+
83
85
  header {
84
86
  overflow: auto;
85
87
  background-color: transparent;
metadata CHANGED
@@ -1,43 +1,57 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nereare_grimoire
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.13.10
4
+ version: 1.18.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Igor Padoim
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-09-12 00:00:00.000000000 Z
11
+ date: 2022-08-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: html-proofer
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 3.15.1
19
+ version: 3.18.5
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 3.15.1
26
+ version: 3.18.5
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: nokogiri
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 1.10.8
33
+ version: 1.12.5
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: 1.10.8
40
+ version: 1.12.5
41
+ - !ruby/object:Gem::Dependency
42
+ name: webrick
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: jekyll-feed
43
57
  requirement: !ruby/object:Gem::Requirement
@@ -45,9 +59,6 @@ dependencies:
45
59
  - - ">="
46
60
  - !ruby/object:Gem::Version
47
61
  version: 0.12.1
48
- - - "<"
49
- - !ruby/object:Gem::Version
50
- version: 0.16.0
51
62
  type: :runtime
52
63
  prerelease: false
53
64
  version_requirements: !ruby/object:Gem::Requirement
@@ -55,9 +66,6 @@ dependencies:
55
66
  - - ">="
56
67
  - !ruby/object:Gem::Version
57
68
  version: 0.12.1
58
- - - "<"
59
- - !ruby/object:Gem::Version
60
- version: 0.16.0
61
69
  - !ruby/object:Gem::Dependency
62
70
  name: jekyll
63
71
  requirement: !ruby/object:Gem::Requirement
@@ -65,9 +73,6 @@ dependencies:
65
73
  - - ">="
66
74
  - !ruby/object:Gem::Version
67
75
  version: '4.0'
68
- - - "<"
69
- - !ruby/object:Gem::Version
70
- version: '4.2'
71
76
  type: :runtime
72
77
  prerelease: false
73
78
  version_requirements: !ruby/object:Gem::Requirement
@@ -75,9 +80,6 @@ dependencies:
75
80
  - - ">="
76
81
  - !ruby/object:Gem::Version
77
82
  version: '4.0'
78
- - - "<"
79
- - !ruby/object:Gem::Version
80
- version: '4.2'
81
83
  - !ruby/object:Gem::Dependency
82
84
  name: jekyll-redirect-from
83
85
  requirement: !ruby/object:Gem::Requirement
@@ -85,9 +87,6 @@ dependencies:
85
87
  - - ">="
86
88
  - !ruby/object:Gem::Version
87
89
  version: '0.15'
88
- - - "<"
89
- - !ruby/object:Gem::Version
90
- version: '0.17'
91
90
  type: :runtime
92
91
  prerelease: false
93
92
  version_requirements: !ruby/object:Gem::Requirement
@@ -95,21 +94,18 @@ dependencies:
95
94
  - - ">="
96
95
  - !ruby/object:Gem::Version
97
96
  version: '0.15'
98
- - - "<"
99
- - !ruby/object:Gem::Version
100
- version: '0.17'
101
97
  - !ruby/object:Gem::Dependency
102
98
  name: jekyll-seo-tag
103
99
  requirement: !ruby/object:Gem::Requirement
104
100
  requirements:
105
- - - "~>"
101
+ - - ">="
106
102
  - !ruby/object:Gem::Version
107
103
  version: 2.6.1
108
104
  type: :runtime
109
105
  prerelease: false
110
106
  version_requirements: !ruby/object:Gem::Requirement
111
107
  requirements:
112
- - - "~>"
108
+ - - ">="
113
109
  - !ruby/object:Gem::Version
114
110
  version: 2.6.1
115
111
  - !ruby/object:Gem::Dependency
@@ -119,9 +115,6 @@ dependencies:
119
115
  - - ">="
120
116
  - !ruby/object:Gem::Version
121
117
  version: 1.3.1
122
- - - "<"
123
- - !ruby/object:Gem::Version
124
- version: 1.5.0
125
118
  type: :runtime
126
119
  prerelease: false
127
120
  version_requirements: !ruby/object:Gem::Requirement
@@ -129,9 +122,6 @@ dependencies:
129
122
  - - ">="
130
123
  - !ruby/object:Gem::Version
131
124
  version: 1.3.1
132
- - - "<"
133
- - !ruby/object:Gem::Version
134
- version: 1.5.0
135
125
  - !ruby/object:Gem::Dependency
136
126
  name: jemoji
137
127
  requirement: !ruby/object:Gem::Requirement
@@ -139,9 +129,6 @@ dependencies:
139
129
  - - ">="
140
130
  - !ruby/object:Gem::Version
141
131
  version: 0.11.1
142
- - - "<"
143
- - !ruby/object:Gem::Version
144
- version: 0.13.0
145
132
  type: :runtime
146
133
  prerelease: false
147
134
  version_requirements: !ruby/object:Gem::Requirement
@@ -149,10 +136,7 @@ dependencies:
149
136
  - - ">="
150
137
  - !ruby/object:Gem::Version
151
138
  version: 0.11.1
152
- - - "<"
153
- - !ruby/object:Gem::Version
154
- version: 0.13.0
155
- description:
139
+ description:
156
140
  email:
157
141
  - igorpadoim@gmail.com
158
142
  executables: []
@@ -181,6 +165,7 @@ files:
181
165
  - _plugins/add-sign.rb
182
166
  - _plugins/animal-metadata.rb
183
167
  - _plugins/articulate.rb
168
+ - _plugins/cr-format.rb
184
169
  - _plugins/number.rb
185
170
  - _plugins/ordinal.rb
186
171
  - _plugins/plant-metadata.rb
@@ -215,7 +200,7 @@ metadata:
215
200
  source_code_uri: https://github.com/Nereare/Grimoire
216
201
  changelog_uri: https://github.com/Nereare/Grimoire/blob/master/CHANGELOG.md
217
202
  github_repo: https://github.com/Nereare/Grimoire.git
218
- post_install_message:
203
+ post_install_message:
219
204
  rdoc_options: []
220
205
  require_paths:
221
206
  - lib
@@ -230,8 +215,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
230
215
  - !ruby/object:Gem::Version
231
216
  version: '0'
232
217
  requirements: []
233
- rubygems_version: 3.0.6
234
- signing_key:
218
+ rubygems_version: 3.3.16
219
+ signing_key:
235
220
  specification_version: 4
236
221
  summary: A jekyll quasi-wiki for RPG-oriented worldbuilding.
237
222
  test_files: []