Missing weapons now raise a warning, and recursive directory parsing.

In order to avoid parsing arbitrary python files encountered during
directory recursion, ``makesheets`` now checks each python file for a
string listing the *dungeonsheets_version* before trying to import the
character file.
This commit is contained in:
Mark Wolfman
2020-11-08 14:14:50 -06:00
parent debbfc5ae1
commit ccf886b8ae
10 changed files with 153 additions and 57 deletions
+9 -1
View File
@@ -257,8 +257,16 @@ spells and known cantrips** should be listed in the
# List of all the known wild shapes
wild_shapes = ["wolf", "crocodile", 'ape', 'ankylosaurus']
VTTES JSON Files
================
Dungeonsheets has partial support for reading JSON files exporting
using the `VTTES browser extension`_. This allows character sheets to
be exported from systems like Roll20.net, and then rendered into full
character sheets.
.. _player's handbook: http://dnd.wizards.com/products/tabletop-games/rpg-products/rpg_playershandbook
.. _issue: https://github.com/canismarko/dungeon-sheets/issues
.. _VTTES browser extension: https://wiki.5e.tools/index.php/R20es_Install_Guide
+5 -5
View File
@@ -15,7 +15,8 @@
# import os
# import sys
# sys.path.insert(0, os.path.abspath('.'))
from pathlib import Path
proj_root = Path(__file__).parent.parent
# -- Project information -----------------------------------------------------
@@ -23,11 +24,10 @@ project = 'dungeonsheets'
copyright = '2018, Mark Wolfman'
author = 'Mark Wolfman'
# The short X.Y version
version = ''
# The full version, including alpha/beta/rc tags
release = '0.4.2'
release = open(proj_root/'VERSION').read()
# The short X.Y version
version = ".".join(release.split('.')[0:2])
# -- General configuration ---------------------------------------------------
+94 -5
View File
@@ -2,19 +2,108 @@
Examples
==========
This page lists example character files. These files are found in the
``examples/`` directory, and can be compiled with ``$ makesheets
examples/``.
.. contents:: :local:
Wizard
Artificer
=========
.. literalinclude:: ../examples/artificer1.py
Barbarian
=========
.. literalinclude:: ../examples/barbarian1.py
.. literalinclude:: ../examples/barbarian2.py
Bard
====
.. literalinclude:: ../examples/bard1.py
.. literalinclude:: ../examples/bard2.py
Cleric
======
.. literalinclude:: ../examples/wizard.py
.. literalinclude:: ../examples/cleric1.py
Warlock
.. literalinclude:: ../examples/cleric2.py
Druid
=====
.. literalinclude:: ../examples/druid1.py
.. literalinclude:: ../examples/druid2.py
.. literalinclude:: ../examples/druid3.py
Fighter
=======
.. literalinclude:: ../examples/warlock.py
.. literalinclude:: ../examples/fighter1.py
.. literalinclude:: ../examples/fighter2.py
Monk
====
.. literalinclude:: ../examples/monk1.py
.. literalinclude:: ../examples/monk2.py
Multi-Classing
==============
.. literalinclude:: ../examples/multiclass1.py
.. literalinclude:: ../examples/multiclass2.py
Paladin
=======
.. literalinclude:: ../examples/paladin1.py
.. literalinclude:: ../examples/paladin2.py
Ranger
======
.. literalinclude:: ../examples/ranger1.py
.. literalinclude:: ../examples/ranger2.py
.. literalinclude:: ../examples/ranger3.py
Rogue
=====
.. literalinclude:: ../examples/rogue.py
.. literalinclude:: ../examples/rogue1.py
.. literalinclude:: ../examples/rogue2.py
Sorceror
=========
.. literalinclude:: ../examples/sorceror1.py
.. literalinclude:: ../examples/sorceror2.py
Warlock
=======
.. literalinclude:: ../examples/warlock1.py
.. literalinclude:: ../examples/warlock2.py
Wizard
======
.. literalinclude:: ../examples/wizard1.py
.. literalinclude:: ../examples/wizard2.py
+2 -5
View File
@@ -13,14 +13,11 @@ Welcome to Dungeonsheets's documentation!
character_files
examples
To-Do Tasks
===========
.. todolist::
Indices and tables
==================
* :ref:`genindex`
* :ref:`modindex`
* :ref:`search`
.. include:: ../README.rst