diff options
| author | Florian Fischer <florian.fischer@muhq.space> | 2025-08-26 14:48:19 +0200 |
|---|---|---|
| committer | Florian Fischer <florian.fischer@muhq.space> | 2025-08-26 14:48:19 +0200 |
| commit | f1353ebaf7f55367fcda17bc1b9ae85d23916b40 (patch) | |
| tree | e0cb3b1a145f722e420342f344ae6e4e0351687a | |
| parent | 1cdbad70ae11b988db883fb6433c088eba4f25b0 (diff) | |
| download | muhqs-game-f1353ebaf7f55367fcda17bc1b9ae85d23916b40.tar.gz muhqs-game-f1353ebaf7f55367fcda17bc1b9ae85d23916b40.zip | |
add red and yellow player tableaus
| -rw-r--r-- | latex/Makefile | 28 | ||||
| -rw-r--r-- | latex/material/player-tableau/de/_player-tableau.tex | 80 | ||||
| -rw-r--r-- | latex/material/player-tableau/de/player-tableau-red.tex | 8 | ||||
| -rw-r--r-- | latex/material/player-tableau/de/player-tableau-yellow.tex | 8 | ||||
| -rw-r--r-- | latex/material/player-tableau/en/_player-tableau.tex | 79 | ||||
| -rw-r--r-- | latex/material/player-tableau/en/player-tableau-red.tex | 8 | ||||
| -rw-r--r-- | latex/material/player-tableau/en/player-tableau-yellow.tex | 8 |
7 files changed, 212 insertions, 7 deletions
diff --git a/latex/Makefile b/latex/Makefile index ab59bc14..0dd395b5 100644 --- a/latex/Makefile +++ b/latex/Makefile @@ -28,7 +28,6 @@ CARDS_TEX_DIR := $(LATEX_ROOT)/cards/$(LANGUAGE) BUILDDIR := $(LATEX_ROOT)/build/$(LANGUAGE) ASSETS_PATH := $(GAME_ROOT)/assets -PDFLATEX_ENV := TEXINPUTS=".:$(ASSETS_PATH):" GENERATE_CARD := $(GAME_ROOT)/scripts/generate_card.py GENERATE_CARD_FLAGS := --language=$(LANGUAGE) @@ -75,6 +74,15 @@ CARDFMT = $(LATEX_ROOT)/card.fmt $(CARDFMT): $(COMMON_TEX_FILES) $(PDFLATEX) -ini -jobname="card" "&$(PDFLATEX)" mylatexformat.ltx $(CARDS_TEX_DIR)/base/archer.tex +MATERIAL_DIR := $(LATEX_ROOT)/material +MATERIAL_BUILDDIR := $(BUILDDIR)/material +PLAYER_TABLEAU_DIR := $(MATERIAL_DIR)/player-tableau/$(LANGUAGE) +PLAYER_TABLEAU_BUILDDIR := $(MATERIAL_BUILDDIR)/player-tableau +PLAYER_TABLEAU_TEX := $(wildcard $(PLAYER_TABLEAU_DIR)/player-tableau-*.tex) +PLAYER_TABLEAU_PDF := $(subst $(PLAYER_TABLEAU_DIR),$(MATERIAL_BUILDDIR)/player-tableau,$(PLAYER_TABLEAU_TEX:.tex=.pdf)) + +MATERIAL := $(PLAYER_TABLEAU_PDF) + VERBOSE ?= @ MAKEFILE_LIST = Makefile @@ -121,14 +129,15 @@ define generatePdfRules $(1)/%.pdf: $(2)%.tex $(COMMON_TEX_FILES) $(MAKEFILE_LIST) @echo building $$@ @if test \( ! \( -d $$(@D) \) \) ;then mkdir -p $$(@D);fi - $(VERBOSE) $(PDFLATEX_ENV) $(PDFLATEX) --output-directory $$(@D) $$< + $(VERBOSE) TEXINPUTS=".:$(ASSETS_PATH):$(2):" $(PDFLATEX) --output-directory $$(@D) $$< + endef define generateCardPdfRules $(1)/%.pdf: %.tex $(COMMON_TEX_FILES) $(CARDFMT) $(MAKEFILE_LIST) @echo building $$@ @if test \( ! \( -d $$(@D) \) \) ;then mkdir -p $$(@D);fi - $(VERBOSE) $(PDFLATEX_ENV) $(PDFLATEX) --fmt $(CARDFMT) --output-directory $$(@D) $$< + $(VERBOSE) TEXINPUTS=".:$(ASSETS_PATH):$(2):" $(PDFLATEX) --fmt $(CARDFMT) --output-directory $$(@D) $$< endef # Generate cards pdf rules @@ -136,18 +145,20 @@ $(foreach pdfdir, $(SETS_BUILDDIRS), $(eval $(call generateCardPdfRules, $(pdfdi # Misc cards not in a set $(eval $(call generatePdfRules, $(BUILDDIR),)) # Generate sets pdf rule -$(eval $(call generatePdfRules, $(SETS_PDF_DIR), $(SETS_TEX_DIR)/)) +$(eval $(call generatePdfRules, $(SETS_PDF_DIR),$(SETS_TEX_DIR)/)) # Generate decks pdf rule -$(eval $(call generatePdfRules, $(DECKS_PDF_DIR), $(DECKS_TEX_DIR)/)) +$(eval $(call generatePdfRules, $(DECKS_PDF_DIR),$(DECKS_TEX_DIR)/)) +# Misc player tableau pdf rules +$(eval $(call generatePdfRules, $(PLAYER_TABLEAU_BUILDDIR),$(PLAYER_TABLEAU_DIR)/)) .PHONY: all de en all: de en de: - $(MAKE) LANGUAGE=de cards-all sets decks + $(MAKE) LANGUAGE=de cards-all sets decks material en: - $(MAKE) cards-all sets decks + $(MAKE) cards-all sets decks material .PHONY: sets sets-tex sets-pdf sets: sets-tex sets-pdf @@ -159,6 +170,9 @@ decks: decks-tex decks-pdf sets-tex: $(DECKS_TEX) sets-pdf: $(DECKS_PDF) +.PHONY: material +material: $(MATERIAL) + .PHONY: cards-all cards-tex cards-pdf cards-png cards-all: cards-tex cards-pdf cards-png @echo "building $(LANGUAGE) cards" diff --git a/latex/material/player-tableau/de/_player-tableau.tex b/latex/material/player-tableau/de/_player-tableau.tex new file mode 100644 index 00000000..cb0146de --- /dev/null +++ b/latex/material/player-tableau/de/_player-tableau.tex @@ -0,0 +1,80 @@ +\input{common.tex} +\usetikzlibrary{backgrounds, positioning} + +\usepackage{enumitem} + +\usepackage{verbatimbox} + +% The named colors BG, cardBG and cardHint must be defined before inputting this file. + +\begin{document} +\begin{myverbbox}[\fontfamily{antt}\fontseries{l}\selectfont\small]{\actionsVerb} +Solange du eine ungetappte Unit kontrollierst oder +eine spielbare Handkarte hast + Spiele eine Handkarte oder + wähle eine ungetappte Unit <U>, die du kontrollierst + Solange <U> Aktionen übrig hat + Deklariere eine Aktion von <U> + Tappe <U>s Karte +\end{myverbbox} + +\begin{myverbbox}[\fontfamily{antt}\fontseries{l}\selectfont\small]{\upkeepVerb} +Für jede nicht deklarierte Unit + Bezahle Upkeepkosten oder zerstöre die Unit falls + du den Gesamtbetrag nicht bezahlen kannst +Zerstöre alle deklarierten Units +\end{myverbbox} + +\begin{tikzpicture}[ + background rectangle/.style={opacity=0.9, fill=BG!70!black}, show background rectangle, + bordered/.style={draw=black, rounded corners=2pt, line width=1pt, anchor=north west, fill=gray!40}, + hint/.style={font=\Large, text=cardHint, minimum width=\cardwidth{}cm, minimum height=\cardheight{}cm}, + explanation/.style={align=left, minimum width=8cm, text width=7.9cm}, + turn/.style={bordered, explanation}, + upkeep/.style={bordered, explanation}, + actions/.style={bordered, explanation}, + deck/.style={bordered, hint, align=center, fill=cardBG}, + discard/.style={bordered, hint, align=center, fill=cardBG}, +] +\clip[rounded corners=2pt] (-0.25cm, 0.25cm) rectangle (29.75cm, -8cm); +\node[turn] at (0, 0) (t) { +\textbf{Ein Spielerzug:} \\ +\begin{enumerate}[itemsep=0cm, topsep=0.1cm, leftmargin=0.5cm] +\item \textit{[Mische \textcolor{cardHint}{den Ablagestapel} und ersetzte dein leeres \textcolor{cardHint}{Deck}]} +\item \textit{[Ziehe Karten bis du drei Handkarten hast]} +\item \textbf{Upkeep} +\item \textbf{Aktionsphase} +\item \textbf{Kaufen}: Bezahle für eine Karte aus dem Store und lege sie auf den \textcolor{cardHint}{Ablagestapel} +\item{} \textit{[Werfe beliebig viele Handkarten ab]} +\end{enumerate} +}; +\node[explanation, below=0.05 of t, font=\footnotesize] (te) { + Schritte in \textit{[]} sind optional und niemand kann währenddessen Aktionen ausführen \\[0.35cm] +}; + +\node[minimum width=1cm, below=0.7 of te.west, xshift=0.4cm] (di) { \includegraphics[height=0.75cm, keepaspectratio]{../assets/icons/discard2.png} }; + +\node[explanation, text width=7cm, right=-0.4cm of di, font=\footnotesize] (dh) { + Du kannst immer zwei Handkarten abwerfen, um eine Ressource zu erhalten \\[0.25cm] +}; + +\node[explanation, below=1.1cm of dh.east, xshift=-0.2cm, anchor=east, align=right, font=\footnotesize] { + Eine Karte tappen, sie um 90\textdegree{} drehen, hat keine Bedeutung außer daran zu erinnern, dass sie keine Aktionen übrig hat. +}; +\node[upkeep] at (8.5cm, 0) (u) { +\textbf{Upkeep:} \\ +\begin{enumerate}[itemsep=0cm, topsep=0.1cm, leftmargin=0.5cm] +\item Erhalte vom Spielfeld vorgegeben Ressource +\item Behandle alle Trigger +\item Bezahle deine Units: \\[0.15cm] +\upkeepVerb +\end{enumerate} +}; +\node[actions, below=0.35cm of u] { +\textbf{Aktionsphase:} \\[0.3cm] +\actionsVerb +}; +\node[deck] (d) at (17cm, 0) { DECK \\ \\ \small{Möglicherweise leer}}; +\node[discard] at (23.35cm, 0) { ABLAGESTAPEL \\ \\ \small{Karten hier sind offen und haben keine Ordnung}}; +\end{tikzpicture} +\end{document} diff --git a/latex/material/player-tableau/de/player-tableau-red.tex b/latex/material/player-tableau/de/player-tableau-red.tex new file mode 100644 index 00000000..f9973800 --- /dev/null +++ b/latex/material/player-tableau/de/player-tableau-red.tex @@ -0,0 +1,8 @@ +\documentclass[]{standalone} + +\usepackage{xcolor} +\definecolor{BG}{HTML}{600915} +\colorlet{cardBG}{gray!40!black} +\colorlet{cardHint}{gray} + +\input{_player-tableau.tex} diff --git a/latex/material/player-tableau/de/player-tableau-yellow.tex b/latex/material/player-tableau/de/player-tableau-yellow.tex new file mode 100644 index 00000000..ac810f9f --- /dev/null +++ b/latex/material/player-tableau/de/player-tableau-yellow.tex @@ -0,0 +1,8 @@ +\documentclass[]{standalone} + +\usepackage{xcolor} +\definecolor{BG}{HTML}{ffc202} +\colorlet{cardBG}{gray!70} +\colorlet{cardHint}{gray!70!black} + +\input{_player-tableau.tex} diff --git a/latex/material/player-tableau/en/_player-tableau.tex b/latex/material/player-tableau/en/_player-tableau.tex new file mode 100644 index 00000000..8db58d2f --- /dev/null +++ b/latex/material/player-tableau/en/_player-tableau.tex @@ -0,0 +1,79 @@ +\input{common.tex} +\usetikzlibrary{backgrounds, positioning} + +\usepackage{enumitem} + +\usepackage{verbatimbox} + +% The named colors BG, cardBG and cardHint must be defined before inputting this file. + +\begin{document} +\begin{myverbbox}[\fontfamily{antt}\fontseries{l}\selectfont\small]{\actionsVerb} +While you control an untapped permanent or +have a playable card in hand + You may play a card from your hand or + select untapped unit <U> you control + While <U> has actions left + You may declare an action of <U> + Tap <U>'s card +\end{myverbbox} + +\begin{myverbbox}[\fontfamily{antt}\fontseries{l}\selectfont\small]{\upkeepVerb} +For each not declared unit + Pay upkeep cost or destroy unit if + paying the total cost is not possible +Destroy all declared units +\end{myverbbox} + +\begin{tikzpicture}[ + background rectangle/.style={opacity=0.9, fill=BG!70!black}, show background rectangle, + bordered/.style={draw=black, rounded corners=2pt, line width=1pt, anchor=north west, fill=gray!40}, + hint/.style={font=\Large, text=cardHint, minimum width=\cardwidth{}cm, minimum height=\cardheight{}cm}, + explanation/.style={align=left, minimum width=8cm, text width=7.9cm}, + turn/.style={bordered, explanation}, + upkeep/.style={bordered, explanation}, + actions/.style={bordered, explanation}, + deck/.style={bordered, hint, align=center, fill=cardBG}, + discard/.style={bordered, hint, align=center, fill=cardBG}, +] +\clip[rounded corners=2pt] (-0.25cm, 0.25cm) rectangle (29.75cm, -8cm); +\node[turn] at (0, 0) (t) { +\textbf{A player's turn:} \\ +\begin{enumerate}[itemsep=0cm, topsep=0.1cm, leftmargin=0.5cm] +\item \textit{[shuffle \textcolor{cardHint}{discard pile} and replace empty \textcolor{cardHint}{deck}]} +\item \textit{[draw until you have three hand cards]} +\item \textbf{upkeep} +\item \textbf{actions phase} +\item \textbf{buying}: pay for a card from the store and place it on your \textcolor{cardHint}{discard pile} \item{} \textit{[discard any number of cards]} +\end{enumerate} +}; +\node[explanation, below=0.05 of t, font=\footnotesize] (te) { + Steps in \textit{[]} are optional and no one can use actions during those steps \\[0.35cm] +}; + +\node[minimum width=1cm, below=0.7 of te.west, xshift=0.4cm] (di) { \includegraphics[height=0.75cm, keepaspectratio]{icons/discard2.png} }; + +\node[explanation, text width=7cm, right=-0.4cm of di, font=\footnotesize] (dh) { + You can always discard two card from your hand to gain one resource \\[0.25cm] +}; + +\node[explanation, below=1.1cm of dh.east, xshift=-0.2cm, anchor=east, align=right, font=\footnotesize] { + Tappig a card, turning it 90\textdegree{}, has no meaning other than reminding you that it has no actions left. +}; +\node[upkeep] at (8.5cm, 0) (u) { +\textbf{Upkeep:} \\ +\begin{enumerate}[itemsep=0cm, topsep=0.1cm, leftmargin=0.5cm] +\item Gain amount of resource defined by the map +\item Process all triggered effects +\item Pay your units: \\[0.15cm] +\upkeepVerb +\end{enumerate} +}; +\node[actions, below=0.35cm of u] { +\textbf{Actions Phase:} \\[0.3cm] +\actionsVerb +}; +\node[deck] (d) at (17cm, 0) { DECK \\ \\ \small{May be empty}}; +\node[discard] at (23.35cm, 0) { DISCARD PILE \\ \\ \small{Cards here are open and have no order}}; +\end{tikzpicture} +\end{document} diff --git a/latex/material/player-tableau/en/player-tableau-red.tex b/latex/material/player-tableau/en/player-tableau-red.tex new file mode 100644 index 00000000..f9973800 --- /dev/null +++ b/latex/material/player-tableau/en/player-tableau-red.tex @@ -0,0 +1,8 @@ +\documentclass[]{standalone} + +\usepackage{xcolor} +\definecolor{BG}{HTML}{600915} +\colorlet{cardBG}{gray!40!black} +\colorlet{cardHint}{gray} + +\input{_player-tableau.tex} diff --git a/latex/material/player-tableau/en/player-tableau-yellow.tex b/latex/material/player-tableau/en/player-tableau-yellow.tex new file mode 100644 index 00000000..ac810f9f --- /dev/null +++ b/latex/material/player-tableau/en/player-tableau-yellow.tex @@ -0,0 +1,8 @@ +\documentclass[]{standalone} + +\usepackage{xcolor} +\definecolor{BG}{HTML}{ffc202} +\colorlet{cardBG}{gray!70} +\colorlet{cardHint}{gray!70!black} + +\input{_player-tableau.tex} |
