diff --git a/Makefile b/Makefile index 88b464c..9e444a9 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -.PHONY: all clean check printrun cardrun +.PHONY: setup all clean check printrun cardrun .PRECIOUS: %.pdf %.png GENERATED_DIR?=generated @@ -31,6 +31,10 @@ RAW_DECK_LIST=$(shell ./scripts/decklist.sh) DECK_LIST=$(RAW_DECK_LIST:%=$(GENERATED_DIR)/%) DECK_DEPENDENCIES=$(DECK_LIST:%=%.d) +setup: $(SENTINEL) + ./scripts/generate_cards.sh $(GENERATED_DIR) + touch $(SENTINEL) + $(SENTINEL): cards.sql ./scripts/generate_cards.sh $(GENERATED_DIR) touch $@ diff --git a/cards.sql b/cards.sql index 33ec6bc..cc4adec 100644 --- a/cards.sql +++ b/cards.sql @@ -41,6 +41,10 @@ INSERT INTO Effects VALUES(18,'Remove your hypothermia','\nohypothermia'); INSERT INTO Effects VALUES(19,'Take damage','\damage{#}'); INSERT INTO Effects VALUES(20,'Double the final distance','\doubledistance'); INSERT INTO Effects VALUES(21,'Damage Effect','\damagetext'); +INSERT INTO Effects VALUES(22,'Counts as 2 dogs.','\istwodogs'); +INSERT INTO Effects VALUES(23,'Your other dogs have +1 speed','\otherdogshave{\speed{1}}'); +INSERT INTO Effects VALUES(24,'Can hold more attachments','\canholdattachments{#}'); +INSERT INTO Effects VALUES(25,'Turn Draw','\turndraw{#}'); CREATE TABLE Cards (id INTEGER PRIMARY KEY, Name TEXT, Energy TEXT, Health TEXT, Risk TEXT, Flavour TEXT, Image TEXT, Type INTEGER REFERENCES Types (id)); INSERT INTO Cards VALUES(1,'A Hat',2,2,0,'I bet its a valve hat.','hat',1); @@ -69,7 +73,25 @@ INSERT INTO Cards VALUES(28,'Meditate',1,1,0,'It \textit{is} just sitting.','med INSERT INTO Cards VALUES(29,'Diamorphine',1,1,1,'Highly addicting.','diamorphine',5); INSERT INTO Cards VALUES(30,'Desperate Times',99,0,0,'Desperate Measures hotline, how may I help you?','desperate_times',6); INSERT INTO Cards VALUES(31,'Lead Sled',1,1,1,'At least its not a Zeppelin.','lead_sled',6); -INSERT INTO Cards VALUES(32,'Damaged',1,1,0,'You have been hurt.','damaged',8); +INSERT INTO Cards VALUES(40,'Damaged',1,1,0,'You have been hurt.','damaged',8); +INSERT INTO Cards VALUES(100,'Dog Shoes',2,3,0,'Dogs look cute in shoes.','dog_shoes',1); +INSERT INTO Cards VALUES(101,'Squirrel',2,2,1,'Dogs \emph{hate} squirrels.','squirrel',1); +INSERT INTO Cards VALUES(102,'Tiara',2,2,1,'Makes the dog feel special.','tiara',1); +INSERT INTO Cards VALUES(103,'Bear',2,2,2,'In hindsight, not the best idea.','bear',2); +INSERT INTO Cards VALUES(104,'Big Dog',2,2,0,'He''s not red though.','big_dog',2); +INSERT INTO Cards VALUES(105,'Cat',1,1,0,'They say a cat has nine lives.','cat',2); +INSERT INTO Cards VALUES(106,'Chihuahua',1,1,2,'OMG shut up!','chihuahua',2); +INSERT INTO Cards VALUES(107,'Greyhound',0,0,2,'What happens when you mix the colours on a husky? You get a grey hound.','greyhound',2); +INSERT INTO Cards VALUES(108,'Lazy Dog',3,3,0,'Let''s go for a walk!','lazy_dog',2); +INSERT INTO Cards VALUES(109,'Malamute',4,4,1,'A common sled hauling breed.','malamute',2); +INSERT INTO Cards VALUES(110,'Polar Bear',1,1,1,'Do not go near a polar bear.','polar_bear',2); +INSERT INTO Cards VALUES(111,'Problem Dog',1,1,1,'I swear, if you weren''t so fast.','problem_dog',2); +INSERT INTO Cards VALUES(112,'Retriever',2,2,1,'Fetch!','retriever',2); +-- TODO: Be more stringent with which cards get included... +-- Likely removal candidates: +-- Polar Bear (can just be bear) +-- Cat +-- Malamute (maybe give it a different ability) [reduce ability count] CREATE TABLE Card_Effects (Card INTEGER REFERENCES Cards (id), Effect INTEGER REFERENCES Effects (id), Amount INTEGER); INSERT INTO Card_Effects VALUES(1,1,1); @@ -116,7 +138,25 @@ INSERT INTO Card_Effects VALUES(30,3,10); INSERT INTO Card_Effects VALUES(30,4,5); INSERT INTO Card_Effects VALUES(31,3,10); INSERT INTO Card_Effects VALUES(31,4,10); -INSERT INTO Card_Effects VALUES(32,21,1); +INSERT INTO Card_Effects VALUES(40,21,1); +INSERT INTO Card_Effects VALUES(100,7,2); +INSERT INTO Card_Effects VALUES(101,7,3); +INSERT INTO Card_Effects VALUES(102,7,1); +INSERT INTO Card_Effects VALUES(102,1,1); +INSERT INTO Card_Effects VALUES(103,7,5); +INSERT INTO Card_Effects VALUES(104,7,3); +INSERT INTO Card_Effects VALUES(105,10,1); +INSERT INTO Card_Effects VALUES(106,23,1); +INSERT INTO Card_Effects VALUES(107,7,3); +INSERT INTO Card_Effects VALUES(107,16,1); +INSERT INTO Card_Effects VALUES(108,7,-1); +INSERT INTO Card_Effects VALUES(108,24,2); +INSERT INTO Card_Effects VALUES(109,25,1); +INSERT INTO Card_Effects VALUES(110,7,3); +INSERT INTO Card_Effects VALUES(110,19,1); +INSERT INTO Card_Effects VALUES(111,7,3); +INSERT INTO Card_Effects VALUES(111,1,-1); +INSERT INTO Card_Effects VALUES(112,1,2); CREATE TABLE Deck_Cards (Deck INTEGER REFERENCES Decks (id), Card INTEGER REFERENCES Cards (id), Amount INTEGER); INSERT INTO Deck_Cards VALUES(1,1,1); @@ -187,5 +227,18 @@ INSERT INTO Deck_Cards VALUES(20,28,1); INSERT INTO Deck_Cards VALUES(20,29,1); INSERT INTO Deck_Cards VALUES(20,30,1); INSERT INTO Deck_Cards VALUES(20,31,1); -INSERT INTO Deck_Cards VALUES(21,32,26); +INSERT INTO Deck_Cards VALUES(21,40,26); +INSERT INTO Deck_Cards VALUES(10,105,2); +INSERT INTO Deck_Cards VALUES(10,108,2); +INSERT INTO Deck_Cards VALUES(10,109,2); +INSERT INTO Deck_Cards VALUES(10,112,2); +INSERT INTO Deck_Cards VALUES(11,100,4); +INSERT INTO Deck_Cards VALUES(11,101,2); +INSERT INTO Deck_Cards VALUES(11,102,2); +INSERT INTO Deck_Cards VALUES(11,103,2); +INSERT INTO Deck_Cards VALUES(11,104,2); +INSERT INTO Deck_Cards VALUES(11,106,2); +INSERT INTO Deck_Cards VALUES(11,107,2); +INSERT INTO Deck_Cards VALUES(11,110,2); +INSERT INTO Deck_Cards VALUES(11,111,2); COMMIT; diff --git a/iditacard.cls b/iditacard.cls index 6805ee0..7afafb0 100644 --- a/iditacard.cls +++ b/iditacard.cls @@ -6,6 +6,8 @@ \RequirePackage{fontspec} \RequirePackage{xcolor} \RequirePackage{xstring} +\RequirePackage{siunitx} +\DeclareSIPrefix\myria{my}{4} \RequirePackage[none]{hyphenat} @@ -22,30 +24,11 @@ \newfontfamily\bebas{Bebas Neue Regular} \newfontfamily\alegreya{Alegreya} -\definecolor{stage_one}{HTML}{7FDF7D} -\definecolor{stage_two}{HTML}{9FB76F} -\definecolor{stage_three}{HTML}{5F5FFF} -\definecolor{stage_four}{HTML}{3FDFDF} -\definecolor{stage_five}{HTML}{DFDF3F} -\definecolor{stage_six}{HTML}{9F9F9F} -\definecolor{stage_seven}{HTML}{FF5F5F} -\definecolor{stage_eight}{HTML}{CF5FCF} - -\definecolor{town}{HTML}{CF5FCF} -\definecolor{frozenlake}{HTML}{5F9FFF} -\definecolor{hills}{HTML}{7FDF7F} -\definecolor{wasteland}{HTML}{DFDF3F} -\definecolor{forest}{HTML}{9FB76F} -\definecolor{cliffface}{HTML}{FF5F5F} -\definecolor{ropebridge}{HTML}{CFAF7F} -\definecolor{blizzard}{HTML}{5F5FFF} -\definecolor{mountain}{HTML}{9F9F9F} -\definecolor{village}{HTML}{FF8F0F} - \definecolor{energy}{HTML}{003FFF} \definecolor{health}{HTML}{FF0000} \definecolor{risk}{HTML}{000000} +% Card Type \definecolor{utility}{HTML}{FFFFFF} \definecolor{attachment}{HTML}{5FAFCF} \definecolor{dog}{HTML}{BF9F7F} @@ -56,6 +39,7 @@ \definecolor{sled}{HTML}{7FDF7F} \definecolor{food}{HTML}{CFCF4F} +% Rarity \definecolor{info}{HTML}{FFFFFF} \definecolor{starting}{HTML}{777777} \definecolor{common}{HTML}{000000} @@ -63,17 +47,9 @@ \definecolor{epic}{HTML}{007700} \definecolor{legendary}{HTML}{770077} -\newcommand{\cardtype}[1]{% - \newcommand{\backgroundcolor}{#1} -} - -\newcommand{\rarity}[1]{% - \newcommand{\edgecolor}{#1} -} - -\newcommand{\deck}[1]{% - \newcommand{\whichdeck}{#1} -} +\newcommand{\cardtype}[1]{\newcommand{\backgroundcolor}{#1}} +\newcommand{\rarity}[1]{\newcommand{\edgecolor}{#1}} +\newcommand{\deck}[1]{\newcommand{\whichdeck}{#1}} \newcommand{\energy}[1]{% \node [minimum width=0.5in, minimum height=0.5in, anchor=center, inner sep=0mm] at (125.0/300.0,825.0/300.0) {\includegraphics[width=0.5in,height=0.5in]{icons/hand.png}}; @@ -89,9 +65,9 @@ \node [minimum width=0.5in, minimum height=0.5in, anchor=center, inner sep=0mm] at (125.0/300.0,700.0/300.0) {\includegraphics[width=0.5in, height=0.5in]{icons/deck.png}}; \StrLen{#1}[\arglen] \ifnum\arglen>1% -\node [text=black, minimum width=0.5in, minimum height=0.5in, text centered, text width=0.5in, anchor=center, inner sep=0mm] at (125.0/300.0, 700.0/300.0) {\bf\fontsize{14}{14}\bebas #1};% + \node [text=black, minimum width=0.5in, minimum height=0.5in, text centered, text width=0.5in, anchor=center, inner sep=0mm] at (125.0/300.0, 700.0/300.0) {\bf\fontsize{14}{14}\bebas #1};% \else -\node [text=black, minimum width=0.5in, minimum height=0.5in, text centered, text width=0.5in, anchor=center, inner sep=0mm] at (125.0/300.0, 700.0/300.0) {\bf\fontsize{25}{30}\bebas #1};% + \node [text=black, minimum width=0.5in, minimum height=0.5in, text centered, text width=0.5in, anchor=center, inner sep=0mm] at (125.0/300.0, 700.0/300.0) {\bf\fontsize{25}{30}\bebas #1};% \fi } @@ -99,54 +75,25 @@ \node [minimum width=0.5in, minimum height=0.5in, anchor=center, inner sep=0mm] at (125.0/300.0, 538.0/300.0) {\includegraphics[width=0.5in, height=0.5in]{icons/risk.png}}; \StrLen{#1}[\arglen] \ifnum\arglen>1% -\node [text=white, minimum width=0.5in, minimum height=0.5in, text centered, text width=0.5in, anchor=center, inner sep=0mm] at (125.0/300.0, 538.0/300.0) {\bf\fontsize{14}{14}\bebas #1};% + \node [text=white, minimum width=0.5in, minimum height=0.5in, text centered, text width=0.5in, anchor=center, inner sep=0mm] at (125.0/300.0, 538.0/300.0) {\bf\fontsize{14}{14}\bebas #1};% \else -\node [text=white, minimum width=0.5in, minimum height=0.5in, text centered, text width=0.5in, anchor=center, inner sep=0mm] at (125.0/300.0, 538.0/300.0) {\bf\fontsize{25}{30}\bebas #1};% + \node [text=white, minimum width=0.5in, minimum height=0.5in, text centered, text width=0.5in, anchor=center, inner sep=0mm] at (125.0/300.0, 538.0/300.0) {\bf\fontsize{25}{30}\bebas #1};% \fi } -\newenvironment{costcounts} -{% Begin -\begin{axis}[at={(300,350)}, - y axis line style={draw=none}, - tick style={draw=none}, - width=1in, - height=1in, - yticklabels={,,}, - enlargelimits=0.05, - ybar interval=1.0] -} -{% End -\end{axis}} - -\newcommand{\energycounts}[1]{\addplot[draw=none,fill=energy] coordinates {#1};} -\newcommand{\healthcounts}[1]{\addplot[draw=none,fill=health] coordinates {#1};} -\newcommand{\riskcounts}[1]{\addplot[draw=none,fill=risk] coordinates {#1};} - -\newcommand{\@condcost}[2]{\ifnum 0<#1#2\fi} -\newcommand{\costs}[3]{% -\@condcost{#1}{\energy{#1}}% -\@condcost{#2}{\health{#2}}% -\@condcost{#3}{\risk{#3}}% -} - \newcommand{\name}[1]{% -% add draw to the node to see its box \node [rectangle, anchor=north, minimum width=2.15in, minimum height=2.0/3.0in, text centered, text width=1.833333in, inner sep=0mm] at (375.0/300.0,975.0/300.0) {\bf\fontsize{20}{30}\bebas#1\par}; } \renewcommand{\text}[1]{% -% add draw to the node to see its box \node [rectangle, minimum width=1.833333in, minimum height=200.0/300.0, text centered, text width=1.833333in, inner sep=0mm, anchor=north] at (375.0/300.0,450.0/300) {\fontsize{16}{16}\bebas#1\par}; } \newcommand{\helptext}[1]{% -% add draw to the node to see its box \node [rectangle, minimum width=1.833333in, minimum height=200.0/300.0, text centered, text width=1.833333in, inner sep=0mm, anchor=north] at (375.0/300.0, 800.0/300.0) {\fontsize{16}{16}\bebas#1\par}; } \newcommand{\flava}[1]{% -% add draw to the node to see its box \node [rectangle, minimum width=1.833333in, minimum height=100.0/300.0, text centered, text width=1.833333in, inner sep=0mm, anchor=north] at (375.0/300.0,150.0/300.0) {\fontsize{6}{6}\alegreya"#1"\par}; } @@ -159,195 +106,28 @@ \node [rectangle, minimum width=649.8/300.0, minimum height=425.0/300.0, inner sep=0, anchor=north west] at (49.2/300.0, 888.0/300.0) {\noindent\includegraphics*[width=2.1664in, height=1.416667in]{#1}}; } -\newcommand{\utilcount}[1]{% -\node [anchor=center] at (274.2/300.0, 677.0/300.0) {#1}; % Coord is art NW +- offset of image -} - -\newcommand{\dogcount}[1]{% -\node [anchor=center] at (364.2/300.0, 807.0/300.0) {#1}; -} - -\newcommand{\movecount}[1]{% -\node [anchor=center] at (634.2/300.0, 677.0/300.0) {#1}; -} - -\newcommand{\foodcount}[1]{% -\node [anchor=center] at (544.2/300.0, 807.0/300.0) {#1}; -} - -\newcommand{\attachcount}[1]{% -\node [anchor=center] at (364.2/300.0, 547.0/300.0) {#1}; -} - -\newcommand{\personalcount}[1]{% -\node [anchor=center] at (454.2/300.0, 677.0/300.0) {#1}; -} - -\newcommand{\sledcount}[1]{% -\node [anchor=center] at (544.2/300.0, 547.0/300.0) {#1}; -} - -\newcommand{\energycount}[1]{% -\energy{#1} -%\node [anchor=center] at (0,0) {#1}; -} - -\newcommand{\healthcount}[1]{% -\health{#1} -%\node [anchor=center] at (1.0,1.0) {#1}; -} - -\newcommand{\riskcount}[1]{% -\risk{#1} -%\node [anchor=center] at (2.0,2.0) {#1}; -} - \newcommand{\useicon}[1]{\raisebox{-0.1em}{\includegraphics[height=1em]{icons/#1.png}}} -\newcommand{\upto}[1]{$\xrightarrow{\mttext{up to #1}}$} -\newcommand{\sendto}[1]{$\xrightarrow{\mttext{#1}}$} -\newcommand{\Mm}{Mm} -\newcommand{\Mms}{Mms} -\newcommand{\move}[1]{\raisebox{-0.4em}{\includegraphics[height=1.5em]{icons/dog-sled-icon.png}} #1} -\newcommand{\destroy}[2]{\useicon{eye} #2 \includegraphics[height=1em]{icons/trash-can.png} #1} % Destroy up to #1 of #2 -\newcommand{\take}[2]{\useicon{backpack} #2 \useicon{shopping-cart} #1} -\newcommand{\draw}[1]{Draw \ifnum 1=#1 a \else #1 \fi card\ifnum 1<#1s\fi} -\newcommand{\daydraw}[1]{Draw \ifnum 1<#1 #1 extra cards \else an extra card \fi when you take a new day.} -\newcommand{\personal}{\colorbox{personal}{personal}} -\newcommand{\attachment}{\colorbox{attachment}{attachment}} -\newcommand{\sled}{\colorbox{sled}{sled}} -\newcommand{\hypothermia}{\useicon{hypo}} -\newcommand{\starvation}{\useicon{starve}} -\newcommand{\speed}[1]{\useicon{speed}#1} -\newcommand{\healthcosts}[1]{\begin{tikzpicture}[x=1in,y=1in]\node [centered, inner sep=0pt] at (0,0) {\includegraphics[width=0.5in,height=0.5in]{icons/deck.png}}; \node [centered, inner sep=0pt] at (0,0) {#1}; \end{tikzpicture}} -\newcommand{\energycosts}[1]{\begin{tikzpicture}[x=1in,y=1in]\node [centered, inner sep=0pt] at (0,0) {\includegraphics[width=0.5in,height=0.5in]{icons/hand.png}}; \node [centered, inner sep=0pt] at (0,0) {#1}; \end{tikzpicture}} -\newcommand{\riskcosts}[1]{\begin{tikzpicture}[x=1in,y=1in]\node [centered, inner sep=0pt] at (0,0) {\includegraphics[width=0.5in,height=0.5in]{icons/risk.png}}; \node [centered, inner sep=0pt] at (0,0) {\textcolor{white}{#1}}; \end{tikzpicture}} - -\newcommand{\raw}[1]{% -\node [rectangle, minimum width=650.0/300.0, minimum height=950.0/300.0, text justified, text width=53mm, inner sep=1mm, anchor=north west] at (50.0/300.0,1000.0/300.0) {#1}; -} - -\newcommand{\rawcenter}[1]{% -\node [rectangle, minimum width=650.0/300.0, minimum height=950.0/300.0, text centered, text width=53mm, inner sep=1mm, anchor=north west] at (50.0/300.0,1000.0/300.0) {#1}; -} - -\newcommand{\rawleft}[1]{% -\node [rectangle, minimum width=650.0/300.0, minimum height=950.0/300.0, text ragged, text width=53mm, inner sep=1mm, anchor=north west] at (50.0/300.0,1000.0/300.0) {#1}; -} - -\newcommand{\hraw}[1]{% -\node [rectangle, rotate=90, minimum width=950.0/300.0, minimum height=650.0/300.0, text justified, text width=80mm, inner sep=1mm, anchor=north west] at (50.0/300.0,50.0/300.0) {#1}; -} - -\newcommand{\hrawcenter}[1]{% -\node [rectangle, rotate=90, minimum width=950.0/300.0, minimum height=650.0/300.0, text centered, text width=80mm, inner sep=1mm, anchor=north west] at (50.0/300.0,50.0/300.0) {#1}; -} - -\newcommand{\hrawleft}[1]{% -\node [rectangle, rotate=90, minimum width=950.0/300.0, minimum height=650.0/300.0, text ragged, text width=80mm, inner sep=1mm, anchor=north west] at (50.0/300.0,50.0/300.0) {#1}; -} - -\newcommand{\difficulty}[2]{% - \newcommand{\easybackgroundcolor}{#1} - \newcommand{\hardbackgroundcolor}{#2} -} - -\newcommand{\easyname}[1]{% - \node [rectangle, anchor=north, minimum width=1in, minimum height=1.0/3.0in, text centered, text width=1in, inner sep=0mm] at (200.0/300.0,450.0/300.0) {\bf\fontsize{16}{18}\bebas#1\par}; -} - -\newcommand{\hardname}[1]{% - \node [rectangle, anchor=north, minimum width=1in, minimum height=1.0/3.0in, text centered, text width=1in, inner sep=0mm] at (550.0/300.0,450.0/300.0) {\bf\fontsize{16}{18}\bebas#1\par}; -} - -\newcommand{\easyeffect}[1]{% - \node [rectangle, anchor=north, minimum width=1in, minimum height=1.0/3.0in, text centered, text width=1in, inner sep=0mm] at (200.0/300.0,175.0/300.0) {\bf\fontsize{10}{10}\bebas#1\par}; -} - -\newcommand{\hardeffect}[1]{% - \node [rectangle, anchor=north, minimum width=1in, minimum height=1.0/3.0in, text centered, text width=1in, inner sep=0mm] at (550.0/300.0,175.0/300.0) {\bf\fontsize{10}{10}\bebas#1\par}; -} - -% Aspect ratio of about 3:2 -\newcommand{\easyart}[1]{% - \node [rectangle, minimum width=0.9in, minimum height=200.0/300.0, inner sep=0, anchor=north west] at (65.0/300.0,390.0/300.0) {\noindent\includegraphics*[width=0.9in, height=0.66666in]{#1}}; -} - -\newcommand{\hardart}[1]{% - \node [rectangle, minimum width=0.9in, minimum height=200.0/300.0, inner sep=0, anchor=north west] at (415.0/300.0,390.0/300.0) {\noindent\includegraphics*[width=0.9in, height=0.66666in]{#1}}; -} - -\newcommand{\easyhypo}[1]{% - % TODO: Improve alignment - \ifnum 0<#1 - %\fill [left color=energy, right color=personal] (50.0/300.0,375.0/300.0) rectangle (65.0/300.0,325.0/300.0); - \node [rectangle, anchor=west, minimum width=0.25in, minimum height=0.25in, text centered, text width=0.25in, inner sep=0mm] at (50.0/300.0,360.0/300.0) {\includegraphics*[width=0.25in, height=0.25in]{icons/hypo.png}}; - \fi - \ifnum 1<#1 - %\fill [left color=energy, right color=personal] (50.0/300.0,315.0/300.0) rectangle (65.0/300.0,265.0/300.0); - \node [rectangle, anchor=west, minimum width=0.25in, minimum height=0.25in, text centered, text width=0.25in, inner sep=0mm] at (50.0/300.0,290.0/300.0) {\includegraphics*[width=0.25in, height=0.25in]{icons/hypo.png}}; - \fi - \ifnum 2<#1 - %\fill [left color=energy, right color=personal] (50.0/300.0,255.0/300.0) rectangle (65.0/300.0,205.0/300.0); - \node [rectangle, anchor=west, minimum width=0.25in, minimum height=0.25in, text centered, text width=0.25in, inner sep=0mm] at (50.0/300.0,220.0/300.0) {\includegraphics*[width=0.25in, height=0.25in]{icons/hypo.png}}; - \fi -} - -\newcommand{\easystarve}[1]{% - % TODO: Improve alignment - \ifnum 0<#1 - %\fill [right color=health, left color=food] (336.0/300.0,375.0/300.0) rectangle (350.0/300.0,325.0/300.0); - \node [rectangle, anchor=east, minimum width=0.25in, minimum height=0.25in, text centered, text width=0.25in, inner sep=0mm] at (350.0/300.0,360.0/300.0) {\includegraphics*[width=0.25in, height=0.25in]{icons/starve.png}}; - \fi - \ifnum 1<#1 - %\fill [right color=health, left color=food] (336.0/300.0,315.0/300.0) rectangle (350.0/300.0,265.0/300.0); - \node [rectangle, anchor=east, minimum width=0.25in, minimum height=0.25in, text centered, text width=0.25in, inner sep=0mm] at (350.0/300.0,290.0/300.0) {\includegraphics*[width=0.25in, height=0.25in]{icons/starve.png}}; - \fi - \ifnum 2<#1 - %\fill [right color=health, left color=food] (336.0/300.0,255.0/300.0) rectangle (350.0/300.0,205.0/300.0); - \node [rectangle, anchor=east, minimum width=0.25in, minimum height=0.25in, text centered, text width=0.25in, inner sep=0mm] at (350.0/300.0,220.0/300.0) {\includegraphics*[width=0.25in, height=0.25in]{icons/starve.png}}; - \fi -} - -\newcommand{\hardhypo}[1]{% - % TODO: Improve alignment - \ifnum 0<#1 - %\fill [left color=energy, right color=personal] (400.0/300.0,375.0/300.0) rectangle (415.0/300.0,325.0/300.0); - \node [rectangle, anchor=west, minimum width=0.25in, minimum height=0.25in, text centered, text width=0.25in, inner sep=0mm] at (400.0/300.0,360.0/300.0) {\includegraphics*[width=0.25in, height=0.25in]{icons/hypo.png}}; - \fi - \ifnum 1<#1 - %\fill [left color=energy, right color=personal] (400.0/300.0,315.0/300.0) rectangle (415.0/300.0,265.0/300.0); - \node [rectangle, anchor=west, minimum width=0.25in, minimum height=0.25in, text centered, text width=0.25in, inner sep=0mm] at (400.0/300.0,290.0/300.0) {\includegraphics*[width=0.25in, height=0.25in]{icons/hypo.png}}; - \fi - \ifnum 2<#1 - %\fill [left color=energy, right color=personal] (400.0/300.0,255.0/300.0) rectangle (415.0/300.0,205.0/300.0); - \node [rectangle, anchor=west, minimum width=0.25in, minimum height=0.25in, text centered, text width=0.25in, inner sep=0mm] at (400.0/300.0,220.0/300.0) {\includegraphics*[width=0.25in, height=0.25in]{icons/hypo.png}}; - \fi -} - -\newcommand{\hardstarve}[1]{% - % TODO: Improve alignment - \ifnum 0<#1 - %\fill [right color=health, left color=food] (686.0/300.0,375.0/300.0) rectangle (700.0/300.0,325.0/300.0); - \node [rectangle, anchor=east, minimum width=0.25in, minimum height=0.25in, text centered, text width=0.25in, inner sep=0mm] at (700.0/300.0,360.0/300.0) {\includegraphics*[width=0.25in, height=0.25in]{icons/starve.png}}; - \fi - \ifnum 1<#1 - %\fill [right color=health, left color=food] (686.0/300.0,315.0/300.0) rectangle (700.0/300.0,265.0/300.0); - \node [rectangle, anchor=east, minimum width=0.25in, minimum height=0.25in, text centered, text width=0.25in, inner sep=0mm] at (700.0/300.0,290.0/300.0) {\includegraphics*[width=0.25in, height=0.25in]{icons/starve.png}}; - \fi - \ifnum 2<#1 - %\fill [right color=health, left color=food] (686.0/300.0,255.0/300.0) rectangle (700.0/300.0,205.0/300.0); - \node [rectangle, anchor=east, minimum width=0.25in, minimum height=0.25in, text centered, text width=0.25in, inner sep=0mm] at (700.0/300.0,220.0/300.0) {\includegraphics*[width=0.25in, height=0.25in]{icons/starve.png}}; - \fi -} - -\newcommand{\easyflava}[1]{% - \node [rectangle, minimum width=1in, minimum height=50.0/300.0, text centered, text width=1in, inner sep=0mm, anchor=north] at (200.0/300.0,75.0/300.0) {\fontsize{4}{6}\alegreya"#1"\par}; -} - -\newcommand{\hardflava}[1]{% - \node [rectangle, minimum width=1in, minimum height=50.0/300.0, text centered, text width=1in, inner sep=0mm, anchor=north] at (550.0/300.0,75.0/300.0) {\fontsize{4}{6}\alegreya"#1"\par}; -} +% Effects (%-- indicates should have icon) +\newcommand{\daydraw}[1]{Draw \ifnum 1=#1 an extra card \else #1 extra cards \fi when you take a new day} %-- +\newcommand{\draw}[1]{Draw \ifnum 1=#1 a card\else #1 cards\fi} %-- +\newcommand{\supply}[1]{Add \ifnum 1=#1 a card \else #1 cards \fi to the supply} %-- +\newcommand{\take}[1]{\ifnum 0<#1 Take \ifnum 1=#1 a card \else #1 cards \fi from the supply\fi} %-- +\newcommand{\see}[1]{Look at the top \ifnum 1=#1 card \else #1 cards \fi of your deck} % TODO: Eye icon %-- +\newcommand{\destroy}[1]{\ifnum 0<#1 Destroy up to #1 of them\fi discard as many as you want and shuffle the rest back into your deck} % TODO: Trash icon %-- +\newcommand{\speed}[1]{Speed #1} %-- +\newcommand{\move}[1]{Move #1\,mym} % TODO: SIify mym %-- +\newcommand{\discardonkill}{Discarded when killed} +\newcommand{\inplayatstart}{Play when the game starts} +\newcommand{\immortal}{Cannot Die} +\newcommand{\safepass}{Passing does not incur damage} +\newcommand{\passdie}{Dies when passing} +\newcommand{\nohold}{Cannot hold attachments} +\newcommand{\nostarvation}{Remove your \useicon{starve}} +\newcommand{\nohypothermia}{Remove your \useicon{hypo}} +\newcommand{\damage}[1]{Take #1 damage} %--? +\newcommand{\doubledistance}{Double the final distance} +\newcommand{\damagetext}{Destroy this card \vskip 0.5em When you discard this card, end your turn immediately} \newenvironment{card} {% Begin @@ -359,16 +139,6 @@ {% End \end{tikzpicture}} -\newenvironment{playcard}[3][@] -{% Begin -\cardtype{#2}\rarity{#3} -\begin{card} -\type{\if #1@#2\else#1 #2\fi} -} -{% End -\end{card} -} - \newenvironment{board} {% Begin \noindent\begin{tikzpicture}[x=1cm,y=1cm] @@ -376,16 +146,3 @@ } {% End \end{tikzpicture}} - -\newenvironment{cardstretch} -{% Begin -\noindent\begin{tikzpicture}[x=1in,y=1in] -\fill [left color=\hardbackgroundcolor, right color=\easybackgroundcolor] (0,0) rectangle (2.5,1.75); -%\fill [\hardbackgroundcolor] (0,0) rectangle (1.25,1.75); -%\fill [\easybackgroundcolor] (1.25,0) rectangle (2.5,1.75); -\fill[rounded corners=10pt] [\easybackgroundcolor] (50.0/300.0,50.0/300.0) rectangle (350.0/300.0,475.0/300.0); -\fill[rounded corners=10pt] [\hardbackgroundcolor] (400.0/300.0,50.0/300.0) rectangle (700.0/300.0,475.0/300.0); -} -{% End -\end{tikzpicture}} - diff --git a/images/bufferpanel.jpg b/images/buffer_panel.jpg similarity index 100% rename from images/bufferpanel.jpg rename to images/buffer_panel.jpg diff --git a/images/lead_sled.jpg b/images/lead_sled.jpg new file mode 100644 index 0000000..f74d606 Binary files /dev/null and b/images/lead_sled.jpg differ diff --git a/images/waffles.jpg b/images/waffles.jpg new file mode 100644 index 0000000..344264f Binary files /dev/null and b/images/waffles.jpg differ diff --git a/scripts/list_cards.sql b/scripts/list_cards.sql index 3e239a8..1695039 100644 --- a/scripts/list_cards.sql +++ b/scripts/list_cards.sql @@ -6,7 +6,7 @@ SELECT Cards.Flavour, Cards.Image, Types.Name, - group_concat(Effects.Command, '\\'), + group_concat(replace(Effects.Command,'#',Card_Effects.Amount), '\\'), Decks.Name, Deck_Cards.Amount FROM Cards