nereare_grimoire 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/404.html +10 -0
- data/LICENSE.md +24 -0
- data/README.md +38 -0
- data/_layouts/adventure.html +26 -0
- data/_layouts/chapter.html +21 -0
- data/_layouts/default.html +63 -0
- data/_layouts/index.html +89 -0
- data/_layouts/monster.html +191 -0
- data/_layouts/post.html +26 -0
- data/_layouts/settlement.html +304 -0
- data/_layouts/spell.html +44 -0
- data/_plugins/abbr-align.rb +28 -0
- data/_plugins/ability.rb +10 -0
- data/_plugins/add-sign.rb +9 -0
- data/_plugins/articulate.rb +11 -0
- data/_plugins/number.rb +9 -0
- data/_plugins/ordinal.rb +21 -0
- data/_plugins/pluralize.rb +9 -0
- data/assets/404.png +0 -0
- data/assets/background.jpg +0 -0
- data/assets/desc-border.png +0 -0
- data/assets/favicon/android-chrome-192x192.png +0 -0
- data/assets/favicon/android-chrome-512x512.png +0 -0
- data/assets/favicon/apple-touch-icon.png +0 -0
- data/assets/favicon/browserconfig.xml +12 -0
- data/assets/favicon/favicon-16x16.png +0 -0
- data/assets/favicon/favicon-32x32.png +0 -0
- data/assets/favicon/favicon.ico +0 -0
- data/assets/favicon/mstile-144x144.png +0 -0
- data/assets/favicon/mstile-150x150.png +0 -0
- data/assets/favicon/mstile-310x150.png +0 -0
- data/assets/favicon/mstile-310x310.png +0 -0
- data/assets/favicon/mstile-70x70.png +0 -0
- data/assets/favicon/safari-pinned-tab.svg +133 -0
- data/assets/favicon/site.webmanifest +18 -0
- data/assets/favicon.png +0 -0
- data/assets/header.png +0 -0
- data/assets/note-border.png +0 -0
- data/css/boxes.scss +66 -0
- data/css/stats-block.scss +159 -0
- data/css/style.scss +230 -0
- metadata +212 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: 0c3c3607d9e610dedfa98b6bf5fbeaffa09b1284bd233d2864ec93db203d84e1
|
4
|
+
data.tar.gz: '0861be80b757c6c2fa4d36d8cadd58fc57b53391bfb5c799c65048dbe5a46a60'
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: fb43ab2b16152364f0c4315becbd5f397e19a8f3ad1c9b68501cea5f8bbe9f1f671091b97f7ad3953a35ef564e21eae9700e64ed609ae2cc07d49a0318937559
|
7
|
+
data.tar.gz: c5726ca2690f1f6794fb5b7745e657c45136bf889fe0d84581453b14404e4c5cccb9233910308c4c1a414b72b4e2cae1008724a75d6b8c6654ed05ebe3e131cb
|
data/404.html
ADDED
data/LICENSE.md
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
# The MIT License (MIT)
|
2
|
+
|
3
|
+
Copyright © `2019` `Igor Padoim`
|
4
|
+
|
5
|
+
Permission is hereby granted, free of charge, to any person
|
6
|
+
obtaining a copy of this software and associated documentation
|
7
|
+
files (the “Software”), to deal in the Software without
|
8
|
+
restriction, including without limitation the rights to use,
|
9
|
+
copy, modify, merge, publish, distribute, sublicense, and/or sell
|
10
|
+
copies of the Software, and to permit persons to whom the
|
11
|
+
Software is furnished to do so, subject to the following
|
12
|
+
conditions:
|
13
|
+
|
14
|
+
The above copyright notice and this permission notice shall be
|
15
|
+
included in all copies or substantial portions of the Software.
|
16
|
+
|
17
|
+
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND,
|
18
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
19
|
+
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
20
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
21
|
+
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
22
|
+
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
23
|
+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
24
|
+
OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,38 @@
|
|
1
|
+
# Grimoire
|
2
|
+
|
3
|
+
[](https://github.com/Nereare/Grimoire)
|
4
|
+
[]()
|
5
|
+
[](LICENSE.md)
|
6
|
+
[](CODE-OF-CONDUCT.md)
|
7
|
+
[](https://travis-ci.org/Nereare/Grimoire)
|
8
|
+
[](https://libraries.io/github/Nereare/Grimoire)
|
9
|
+
|
10
|
+
A jekyll quasi-wiki for RPG-oriented worldbuilding.
|
11
|
+
|
12
|
+
## Contributing
|
13
|
+
|
14
|
+
Please, also read our [Contributing Guidelines](CONTRIBUTING.md).
|
15
|
+
|
16
|
+
Also, note that this project is released with a [Contributor Code of Conduct](CODE-OF-CONDUCT.md). By participating in this project you agree to abide by its terms.
|
17
|
+
|
18
|
+
## History & Versioning
|
19
|
+
|
20
|
+
This project uses [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://github.com/Nereare/Grimoire/tags). See the [Change Log](CHANGELOG.md) for history.
|
21
|
+
|
22
|
+
## Legal Stuff
|
23
|
+
|
24
|
+
[](https://opensource.org/licenses/MIT)
|
25
|
+
|
26
|
+
### System Reference Document
|
27
|
+
|
28
|
+

|
29
|
+
|
30
|
+
Some of the contents of this site may fall under the [Open Game License](https://www.wizards.com/default.asp?x=d20/srdfaq/20040123b).
|
31
|
+
|
32
|
+
`d20 System` and the `d20 System` logo are trademarks of Wizards of the Coast, Inc. and are used according to the terms of the d20 System License. A copy of this License can be found at [www.wizards.com](http://www.wizards.com/default.asp?x=d20/article/srdarchive).
|
33
|
+
|
34
|
+
### Acknowledgements
|
35
|
+
|
36
|
+
* [MIT License Logo](http://excaliburzero.deviantart.com/art/MIT-License-Logo-595847140) by [ExcaliburZero](http://excaliburzero.deviantart.com/), available under a [Creative Commons Attribution 3.0 License](https://creativecommons.org/licenses/by/3.0/)
|
37
|
+
* Favicon adapted from [D20](https://thenounproject.com/term/d20/1279708/) by Rafaël Massé from the Noun Project (available under a [Creative Commons Attribution License 3.0](https://creativecommons.org/licenses/by/3.0/us/legalcode)).
|
38
|
+
* 404 image adapted from [D20](https://thenounproject.com/term/d20/1315314/) by HeadsOfBirds from the Noun Project (available under a [Creative Commons Attribution License 3.0](https://creativecommons.org/licenses/by/3.0/us/legalcode)).
|
@@ -0,0 +1,26 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<div class="eight columns">
|
6
|
+
<div class="metadata">
|
7
|
+
<h1>{{ page.title | default: 'Adventure' }}</h1>
|
8
|
+
<p class="meta">{{ page.author | default: 'Unknown' }} • {{ page.date | default: '1938-07-27' | date: '%A, %B %e, %Y' }}</p>
|
9
|
+
</div>
|
10
|
+
|
11
|
+
{{ content }}
|
12
|
+
</div>
|
13
|
+
|
14
|
+
<div class="four columns">
|
15
|
+
<blockquote class="meta">
|
16
|
+
<h5>{{ page.adventure.name | default: 'Adventure Name' }}</h5>
|
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
|
+
<p><strong>Max XP:</strong> {{ page.adventure.max-xp | pretty_number }} xp</p>
|
19
|
+
<p><strong>Max Gold:</strong> {{ page.adventure.max-gp | pretty_number }} gp</p>
|
20
|
+
<p><strong># Encounters:</strong> {{ page.adventure.max-xp }} xp</p>
|
21
|
+
<p><strong>Type:</strong> {{ page.adventure.type }}</p>
|
22
|
+
{% if page.adventure.questline %}
|
23
|
+
<p><strong>Questline:</strong> <em>{{ page.adventure.questline.name }}</em>{% if page.adventure.questline.chapter %}, Chapter {{ page.adventure.questline.chapter }}{% endif %}</p>
|
24
|
+
{% endif %}
|
25
|
+
</blockquote>
|
26
|
+
</div>
|
@@ -0,0 +1,21 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<div class="metadata">
|
6
|
+
<h1>{{ page.title | default: 'Post' }}</h1>
|
7
|
+
<p class="meta">{{ page.author | default: 'Unknown' }} • {{ page.date | default: '1938-07-27' | date: '%A, %B %e, %Y' }}</p>
|
8
|
+
<p class="chapter">{{ page.chapter.book }} • Chapter {{ page.chapter.number }}</p>
|
9
|
+
<!-- -->
|
10
|
+
</div>
|
11
|
+
|
12
|
+
{{ content }}
|
13
|
+
|
14
|
+
<div class="chapter links">
|
15
|
+
{% if page.chapter.previous != false %}
|
16
|
+
<a class="prev" href="{{ page.chapter.previous | prepend: 'chapters/' | append: '.html' | absolute_url }}">Previous Chapter</a>
|
17
|
+
{% endif %}
|
18
|
+
{% if page.chapter.next != false %}
|
19
|
+
<a class="next" href="{{ page.chapter.next | prepend: 'chapters/' | append: '.html' | absolute_url }}">Next Chapter</a>
|
20
|
+
{% endif %}
|
21
|
+
</div>
|
@@ -0,0 +1,63 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html lang="{{ site.lang | default: 'en-US' }}">
|
3
|
+
<head>
|
4
|
+
{% if site.google_analytics %}
|
5
|
+
<script async src="https://www.googletagmanager.com/gtag/js?id={{ site.google_analytics }}"></script>
|
6
|
+
<script>
|
7
|
+
window.dataLayer = window.dataLayer || [];
|
8
|
+
function gtag(){dataLayer.push(arguments);}
|
9
|
+
gtag('js', new Date());
|
10
|
+
gtag('config', '{{ site.google_analytics }}');
|
11
|
+
</script>
|
12
|
+
{% endif %}
|
13
|
+
|
14
|
+
{% seo %}
|
15
|
+
|
16
|
+
<meta charset="UTF-8">
|
17
|
+
<meta name="viewport" content="width=device-width, initial-scale=1">
|
18
|
+
|
19
|
+
<link rel="apple-touch-icon" sizes="180x180" href="{{ 'assets/favicon/apple-touch-icon.png' | absolute_url }}">
|
20
|
+
<link rel="icon" type="image/png" sizes="32x32" href="{{ 'assets/favicon/favicon-32x32.png' | absolute_url }}">
|
21
|
+
<link rel="icon" type="image/png" sizes="16x16" href="{{ 'assets/favicon/favicon-16x16.png' | absolute_url }}">
|
22
|
+
<link rel="manifest" href="{{ 'assets/favicon/site.webmanifest' | absolute_url }}">
|
23
|
+
<link rel="mask-icon" href="{{ 'assets/favicon/safari-pinned-tab.svg' | absolute_url }}" color="#5bbad5">
|
24
|
+
<link rel="shortcut icon" href="{{ 'assets/favicon/favicon.ico' | absolute_url }}">
|
25
|
+
<meta name="msapplication-TileColor" content="#922610">
|
26
|
+
<meta name="msapplication-TileImage" content="{{ 'assets/favicon/mstile-144x144.png' | absolute_url }}">
|
27
|
+
<meta name="msapplication-config" content="{{ 'assets/favicon/browserconfig.xml' | absolute_url }}">
|
28
|
+
<meta name="theme-color" content="#922610">
|
29
|
+
|
30
|
+
<title>{{ site.title }}</title>
|
31
|
+
|
32
|
+
<link rel="stylesheet" href="{{ 'node_modules/normalize.css/normalize.css' | absolute_url }}" />
|
33
|
+
<link rel="stylesheet" href="{{ 'node_modules/getskeleton/lib/css/skeleton.css' | absolute_url }}" />
|
34
|
+
<link rel="stylesheet" href="{{ 'node_modules/@mdi/font/css/materialdesignicons.min.css' | absolute_url }}" />
|
35
|
+
<link rel="stylesheet" href="{{ 'node_modules/typeface-montserrat/index.css' | absolute_url }}" />
|
36
|
+
<link rel="stylesheet" href="{{ 'node_modules/typeface-libre-baskerville/index.css' | absolute_url }}" />
|
37
|
+
<link rel="stylesheet" href="{{ 'node_modules/typeface-noto-sans/index.css' | absolute_url }}" />
|
38
|
+
<link rel="stylesheet" href="{{ 'node_modules/typeface-unifrakturcook/index.css' | absolute_url }}" />
|
39
|
+
<link rel="stylesheet" href="{{ 'css/style.css' | absolute_url }}" />
|
40
|
+
<link rel="stylesheet" href="{{ 'css/stats-block.css' | absolute_url }}" />
|
41
|
+
<link rel="stylesheet" href="{{ 'css/boxes.css' | absolute_url }}" />
|
42
|
+
|
43
|
+
{% feed_meta %}
|
44
|
+
</head>
|
45
|
+
|
46
|
+
<body>
|
47
|
+
<header>
|
48
|
+
<div class="container">
|
49
|
+
<div class="row">
|
50
|
+
<h1><a href="{{ '/' | absolute_url }}">{{ site.title }}</a></h1>
|
51
|
+
<p class="subtitle">{{ site.description }}</p>
|
52
|
+
</div>
|
53
|
+
</div>
|
54
|
+
</header>
|
55
|
+
|
56
|
+
<main class="container">
|
57
|
+
<div class="row">
|
58
|
+
<!-- CONTENTS -->
|
59
|
+
{{ content }}
|
60
|
+
</div>
|
61
|
+
</main>
|
62
|
+
</body>
|
63
|
+
</html>
|
data/_layouts/index.html
ADDED
@@ -0,0 +1,89 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
{{ content }}
|
6
|
+
|
7
|
+
<!-- Collections Title -->
|
8
|
+
{% assign: adventures = site.adventures | join: '' %}
|
9
|
+
{% assign: chapters = site.chapters | join: '' %}
|
10
|
+
{% assign: monsters = site.monsters | join: '' %}
|
11
|
+
{% assign: posts = site.posts | join: '' %}
|
12
|
+
{% assign: settlements = site.settlements | join: '' %}
|
13
|
+
{% assign: spells = site.spells | join: '' %}
|
14
|
+
|
15
|
+
{% if adventures != '' or chapters != '' or monsters != '' or posts != '' or settlements != '' or spells != '' %}
|
16
|
+
<h2 class="collections">Collections</h2>
|
17
|
+
{% endif %}
|
18
|
+
|
19
|
+
<!-- Adventure List -->
|
20
|
+
{% if adventures != '' %}
|
21
|
+
<div class="collection">
|
22
|
+
<h5>Adventures</h5>
|
23
|
+
<ul>
|
24
|
+
{% for adventure in site.adventures %}
|
25
|
+
<li><strong><a href="{{ adventure.url }}">{{ adventure.adventure.name }}</a>:</strong> {{ adventure.adventure.type | articulate: true }} 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>
|
26
|
+
{% endfor %}
|
27
|
+
</ul>
|
28
|
+
</div>
|
29
|
+
{% endif %}
|
30
|
+
|
31
|
+
<!-- Chapter List -->
|
32
|
+
{% if chapters != '' %}
|
33
|
+
<div class="collection">
|
34
|
+
<h5>Chapters</h5>
|
35
|
+
<ul>
|
36
|
+
{% for chapter in site.chapters %}
|
37
|
+
<li><strong><a href="{{ chapter.url }}">{{ chapter.title }}</a>:</strong> Chapter {{ chapter.chapter.number }} from {{ chapter.chapter.book }}.</li>
|
38
|
+
{% endfor %}
|
39
|
+
</ul>
|
40
|
+
</div>
|
41
|
+
{% endif %}
|
42
|
+
|
43
|
+
<!-- Monster List -->
|
44
|
+
{% if monsters != '' %}
|
45
|
+
<div class="collection">
|
46
|
+
<h5>Monsters</h5>
|
47
|
+
<ul>
|
48
|
+
{% for monster in site.monsters %}
|
49
|
+
<li><strong><a href="{{ monster.url }}">{{ monster.monster.name }}</a>:</strong> {{ monster.monster.size | articulate: true }} {{ monster.monster.type }}, CR {{ monster.monster.cr }}.</li>
|
50
|
+
{% endfor %}
|
51
|
+
</ul>
|
52
|
+
</div>
|
53
|
+
{% endif %}
|
54
|
+
|
55
|
+
<!-- Post List -->
|
56
|
+
{% if posts != '' %}
|
57
|
+
<div class="collection">
|
58
|
+
<h5>Posts</h5>
|
59
|
+
<ul>
|
60
|
+
{% for post in site.posts %}
|
61
|
+
<li><strong><a href="{{ post.url }}">{{ post.title }}</a>:</strong> {{ post.excerpt | strip_html | truncatewords: 50 }}(...)</li>
|
62
|
+
{% endfor %}
|
63
|
+
</ul>
|
64
|
+
</div>
|
65
|
+
{% endif %}
|
66
|
+
|
67
|
+
<!-- Settlement List -->
|
68
|
+
{% if settlements != '' %}
|
69
|
+
<div class="collection">
|
70
|
+
<h5>Settlements</h5>
|
71
|
+
<ul>
|
72
|
+
{% for settlement in site.settlements %}
|
73
|
+
<li><strong><a href="{{ settlement.url }}">{{ settlement.settlement.name }}</a>:</strong> {{ settlement.settlement.type | articulate: true }}.</li>
|
74
|
+
{% endfor %}
|
75
|
+
</ul>
|
76
|
+
</div>
|
77
|
+
{% endif %}
|
78
|
+
|
79
|
+
<!-- Spell List -->
|
80
|
+
{% if spells != '' %}
|
81
|
+
<div class="collection">
|
82
|
+
<h5>Spells</h5>
|
83
|
+
<ul>
|
84
|
+
{% for spell in site.spells %}
|
85
|
+
<li><strong><a href="{{ spell.url }}">{{ spell.spell.name }}</a>:</strong> {{ spell.spell.school | articulate: true }}{% if spell.spell.subschool %} ({{ spell.spell.subschool }}){% endif %}{% assign: descs = spell.spell.descriptor | join: '' %}{% if descs != '' %} [{{ spell.spell.descriptor | join: ', ' }}]{% endif %} for {{ spell.spell.level | join: ', ' }}.</li>
|
86
|
+
{% endfor %}
|
87
|
+
</ul>
|
88
|
+
</div>
|
89
|
+
{% endif %}
|
@@ -0,0 +1,191 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<div class="eight columns">
|
6
|
+
<div class="metadata">
|
7
|
+
<h1>{{ page.title | default: 'Monster' }}</h1>
|
8
|
+
<p class="meta">{{ page.author | default: 'Unknown' }} • {{ page.date | default: '1938-07-27' | date: '%A, %B %e, %Y' }}</p>
|
9
|
+
</div>
|
10
|
+
|
11
|
+
{{ content }}
|
12
|
+
</div>
|
13
|
+
|
14
|
+
<div class="four columns">
|
15
|
+
<div class="stat-block-container">
|
16
|
+
<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>
|
22
|
+
</div>
|
23
|
+
<!-- creature heading -->
|
24
|
+
<svg height="5" width="100%" class="tapered-rule">
|
25
|
+
<polyline points="0,0 400,2.5 0,5"></polyline>
|
26
|
+
</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>
|
36
|
+
</div>
|
37
|
+
<!-- property line -->
|
38
|
+
<div class="property-line">
|
39
|
+
<h4>Speed</h4>
|
40
|
+
<p>{{ page.monster.speed | default: '20ft' }}</p>
|
41
|
+
</div>
|
42
|
+
<!-- property line -->
|
43
|
+
<div class="property-line">
|
44
|
+
<h4>Initiative</h4>
|
45
|
+
<p>{{ page.monster.initiative | default: 7 | add_sign }}</p>
|
46
|
+
</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>
|
51
|
+
</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>
|
56
|
+
</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>
|
61
|
+
</div>
|
62
|
+
<!-- property line -->
|
63
|
+
<svg height="5" width="100%" class="tapered-rule">
|
64
|
+
<polyline points="0,0 400,2.5 0,5"></polyline>
|
65
|
+
</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">
|
100
|
+
<polyline points="0,0 400,2.5 0,5"></polyline>
|
101
|
+
</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>
|
115
|
+
</div>
|
116
|
+
<!-- property line -->
|
117
|
+
<div class="property-line">
|
118
|
+
<h4>Treasure</h4>
|
119
|
+
<p>{{ page.monster.treasure | default: 'None' }}</p>
|
120
|
+
</div>
|
121
|
+
<!-- property line -->
|
122
|
+
<div class="property-line">
|
123
|
+
<h4>Advancement</h4>
|
124
|
+
<p>{{ page.monster.advancement | default: '49+ HD (Colossal)' }}</p>
|
125
|
+
</div>
|
126
|
+
<!-- property line -->
|
127
|
+
<div class="property-line">
|
128
|
+
<h4>Level Adjustment</h4>
|
129
|
+
<p>{{ page.monster.lvl_adj | default: 'N/A' }}</p>
|
130
|
+
</div>
|
131
|
+
<!-- property line -->
|
132
|
+
<div class="property-line">
|
133
|
+
<h4>Environment</h4>
|
134
|
+
<p>{{ page.monster.env | default: 'Any' }}</p>
|
135
|
+
</div>
|
136
|
+
<!-- property line -->
|
137
|
+
<div class="property-line last">
|
138
|
+
<h4>Organization</h4>
|
139
|
+
<p>{{ page.monster.org | default: 'Solitary' }}</p>
|
140
|
+
</div>
|
141
|
+
<!-- property line -->
|
142
|
+
</div>
|
143
|
+
<!-- top stats -->
|
144
|
+
<svg height="5" width="100%" class="tapered-rule">
|
145
|
+
<polyline points="0,0 400,2.5 0,5"></polyline>
|
146
|
+
</svg>
|
147
|
+
<div class="property-block">
|
148
|
+
<h4>Special Qualities</h4>
|
149
|
+
<p>{{ page.monster.qualities | default: 'none'}}</p>
|
150
|
+
</div>
|
151
|
+
<!-- property block -->
|
152
|
+
<div class="property-block">
|
153
|
+
<h4>Special Attacks</h4>
|
154
|
+
<p>{{ page.monster.sp_attacks | default: 'none' }}</p>
|
155
|
+
</div>
|
156
|
+
<!-- property block -->
|
157
|
+
</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 %}
|
182
|
+
</div>
|
183
|
+
<!-- actions -->
|
184
|
+
{% endif %}
|
185
|
+
</div>
|
186
|
+
<!-- section right -->
|
187
|
+
<hr class="orange-border bottom" />
|
188
|
+
</div>
|
189
|
+
<!-- stat block -->
|
190
|
+
</div>
|
191
|
+
</div>
|
data/_layouts/post.html
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
---
|
2
|
+
layout: default
|
3
|
+
---
|
4
|
+
|
5
|
+
<div class="metadata">
|
6
|
+
<h1>{{ page.title | default: 'Post' }}</h1>
|
7
|
+
<p class="meta">{{ page.author | default: 'Unknown' }} • {{ page.date | default: '1938-07-27' | date: '%A, %B %e, %Y' }}</p>
|
8
|
+
{% assign: tagg = page.tags | join: '' %}
|
9
|
+
{% if tagg != '' %}
|
10
|
+
<p>
|
11
|
+
{% for tag in page.tags %}
|
12
|
+
<span class="mdi mdi-tag-outline tag"> {{ tag }}</span>
|
13
|
+
{% endfor %}
|
14
|
+
</p>
|
15
|
+
{% endif %}
|
16
|
+
{% assign: catt = page.categories | join: '' %}
|
17
|
+
{% if catt != '' %}
|
18
|
+
<p>
|
19
|
+
{% for category in page.categories %}
|
20
|
+
<span class="mdi mdi-folder-outline category"> {{ category }}</span>
|
21
|
+
{% endfor %}
|
22
|
+
</p>
|
23
|
+
{% endif %}
|
24
|
+
</div>
|
25
|
+
|
26
|
+
{{ content }}
|