mirror of
https://github.com/Threnklyn/dungeon-sheets.git
synced 2026-05-19 04:33:26 +02:00
116 lines
2.8 KiB
TeX
116 lines
2.8 KiB
TeX
\documentclass[twocolumn,lettersize]{article}
|
|
|
|
\newlength{\zerosep}
|
|
[% if use_dnd_decorations %]
|
|
\usepackage[layout=true]{dnd}
|
|
\setlength{\zerosep}{0em}
|
|
[% else %]
|
|
\usepackage[margin=1.5cm]{geometry}
|
|
\setlength{\zerosep}{-1em}
|
|
\usepackage[dvipsnames]{color}
|
|
[% endif %]
|
|
\definecolor{mygrey}{gray}{0.7}
|
|
|
|
[% include 'preamble.tex' %]
|
|
|
|
\title{Wild Shapes}
|
|
\date{}
|
|
|
|
\author{[[ character.name ]]}
|
|
|
|
%%% Fallback definitions for Docutils-specific commands
|
|
[% raw %]
|
|
% admonition (specially marked topic)
|
|
\providecommand{\DUadmonition}[2][class-arg]{%
|
|
% try \DUadmonition#1{#2}:
|
|
\ifcsname DUadmonition#1\endcsname%
|
|
\csname DUadmonition#1\endcsname{#2}%
|
|
\else
|
|
\begin{center}
|
|
\fbox{\parbox{0.9\linewidth}{#2}}
|
|
\end{center}
|
|
\fi
|
|
}
|
|
|
|
% title for topics, admonitions, unsupported section levels, and sidebar
|
|
\providecommand*{\DUtitle}[2][class-arg]{%
|
|
% call \DUtitle#1{#2} if it exists:
|
|
\ifcsname DUtitle#1\endcsname%
|
|
\csname DUtitle#1\endcsname{#2}%
|
|
\else
|
|
\smallskip\noindent\textbf{#2}\smallskip%
|
|
\fi
|
|
}
|
|
[% endraw %]
|
|
|
|
\begin{document}
|
|
|
|
|
|
\twocolumn[
|
|
\begin{@twocolumnfalse}
|
|
\maketitle
|
|
\section*{Known Beasts}
|
|
[% for shape in character.all_wild_shapes|sort(attribute="name") %]%
|
|
[[ shape.name ]][% if not loop.last %], [% endif %]%
|
|
[% endfor %]%
|
|
\vspace{3ex}
|
|
\end{@twocolumnfalse}
|
|
]
|
|
|
|
|
|
[% for shape in character.all_wild_shapes|sort(attribute='challenge_rating') %]
|
|
[% if not character.can_assume_shape(shape) %]
|
|
{\color{mygrey}
|
|
[% else %]
|
|
{
|
|
[% endif %]
|
|
|
|
\section*{[[ shape.name ]]}
|
|
[% if shape.description %]
|
|
\subsection*{[[ shape.description ]]}
|
|
[% endif %]
|
|
|
|
\begin{tabular}{c | c | c}
|
|
Armor Class & Hit Points & Speed \\
|
|
\hline
|
|
[[ shape.armor_class ]] &
|
|
[[ shape.hp_max ]] ([[ shape.hit_dice ]]) &
|
|
[[ shape.speed ]] \\
|
|
[% if shape.swim_speed %]
|
|
& & [[ shape.swim_speed ]] swim \\
|
|
[% endif %]
|
|
[% if shape.fly_speed %]
|
|
& & [[ shape.fly_speed ]] fly \\
|
|
[% endif %]
|
|
|
|
\end{tabular}
|
|
|
|
\vspace{0.2cm}
|
|
|
|
\begin{tabular}{c | c | c}
|
|
STR & DEX & CON \\
|
|
\hline
|
|
[[ shape.strength.value ]] ([[ shape.strength.modifier|mod_str ]]) &
|
|
[[ shape.dexterity.value ]] ([[ shape.dexterity.modifier|mod_str ]]) &
|
|
[[ shape.constitution.value ]] ([[ shape.constitution.modifier|mod_str ]]) \\
|
|
\end{tabular}
|
|
|
|
\vspace{0.2cm}
|
|
|
|
\begin{tabular}{p{0.1\textwidth} p{0.32\textwidth}}
|
|
\textbf{Skills:} & [[ shape.skills ]] \\
|
|
\textbf{Senses:} & [[ shape.senses ]] \\
|
|
\textbf{Languages:} & [[ shape.languages ]] \\
|
|
\textbf{Resistance:} & [[ shape.damage_resistance ]] \\
|
|
\textbf{Immunities:} & [[ shape.condition_immunities ]] \\
|
|
\end{tabular}
|
|
|
|
\vspace{0.2cm}
|
|
|
|
[[ shape.__doc__ | rst_to_latex(top_heading_level=2) ]]
|
|
|
|
} %\color
|
|
[% endfor %]
|
|
|
|
\end{document}
|