diff options
Diffstat (limited to 'Master/texmf-dist/doc/latex/tikz-among-us/tikz-among-us.tex')
-rw-r--r-- | Master/texmf-dist/doc/latex/tikz-among-us/tikz-among-us.tex | 619 |
1 files changed, 424 insertions, 195 deletions
diff --git a/Master/texmf-dist/doc/latex/tikz-among-us/tikz-among-us.tex b/Master/texmf-dist/doc/latex/tikz-among-us/tikz-among-us.tex index 0cce2ebe76d..36072de0343 100644 --- a/Master/texmf-dist/doc/latex/tikz-among-us/tikz-among-us.tex +++ b/Master/texmf-dist/doc/latex/tikz-among-us/tikz-among-us.tex @@ -13,43 +13,29 @@ % ========== Pacotes \usepackage{FHZ-packages-minimum} \usepackage{FHZ-packages-TikZ-mydef} -% ---------- Pacotes locais -%\usepackage[brazil]{babel} -%\selectlanguage{brazil} % ========== \usepackage{enumitem} \usepackage{paracol} \usepackage{multicol} -\usepackage{animate} +\usepackage[]{animate} %draft % ========== - - -% ========== Caminho de figuras externas -%\graphicspath{ -% {C:/Users/FHZ/Dropbox/<PATH1>/}, -% {C:/Users/FHZ/Dropbox/<PATH2>/} -%} +\usepackage{abstract} +\renewcommand{\abstractnamefont}{\normalfont\Large\bfseries} +%\renewcommand{\abstracttextfont}{\normalfont\Huge} % ========== % ========== \usepackage{FHZ-textos} % ========== - % =================== Formatações e marca d'água em arquivos de estilos .sty % ---------- Formatacao -- hf -%\usepackage{FHZ-formatacao-hf-headings_h_RO_LE_thepage} \usepackage{FHZ-formatacao-hf-headings_h_R_thepage} -%\usepackage{FHZ-formatacao-hf-myheadings_h_R_thepage} -%\usepackage{FHZ-formatacao-hf-plain_h_R_thepage} % ---------- Formatacao -- hyperref \usepackage[07]{FHZ-formatacao-hyperref-opt} -%\usepackage{FHZ-formatacao-hyperref-01} -%\usepackage{FHZ-formatacao-hyperref-06_orange} % =================== % ========== Novos comandos para inserir figuras e TikZ de forma padronizada -%\usepackage{FHZ-figures-TikZ} \usepackage{FHZ-figures-TikZ-IEEE} % ========== @@ -61,7 +47,13 @@ \usepackage{tikz-among-us-fancyhdr} \usepackage[cor=violet!70!white,BG,type=1]{tikz-among-us-watermark-eso-pic} +%\usepackage{FHZ-tcolorbox-01} + \usepackage{FHZ-listings-showexpl-style} +\lstset{style=estiloBaseGeral, + frame=none, + keywordstyle=\color{blue} +} \usepackage[skins,listings,breakable,raster]{tcolorbox} \tcbuselibrary{listings} @@ -70,22 +62,21 @@ enhanced, colback=cyan!5!white, colframe=violet!75!black, fonttitle=\large\bfseries, colbacktitle=violet!85!black, - listing and text, - breakable, + listing and text, breakable, + after={\par\vspace{0.5\baselineskip}\noindent}, + listing options={style=estiloTcbAzul}, #1 - % listing style=estiloExemVerd - % attach boxed title to top center={yshift=-2mm}, } \newtcolorbox{FHZboxEnumerateStyle}{ - enhanced, + enhanced, breakable, colback=orange!15!white, colframe=orange!50!black, watermark tikz={\tikz \node[opacity=0.4, rotate around={-45:(1.75,2.3)}]{\amongUsOriginal{blue}{white}}; \node[opacity=0.4, rotate around={45:(1.75,2.3)}] at (5,0) {\amongUsOriginal{pink}{white}}; \node[opacity=0.4, rotate around={-135:(1.75,2.3)}] at (10,0) {\amongUsOriginal{green}{white}}; - \node[opacity=0.4, rotate around={135:(1.75,2.3)}] at (15,0) {\amongUsOriginal{olive}{white}}; + \node[opacity=0.4, rotate around={135:(1.75,2.3)}] at (15,0) {\amongUsOriginal{olive}{white}{black}{white}}; } } \newenvironment{FHZtcbEnumerate}{% @@ -95,16 +86,12 @@ % ========== Dados capa folha rosto ========== Sempre crie uma cópia local \newcommand{\edicao}{1} -\newcommand{\versao}{1.0.1} -%\input{input_Dados_Capa_Folha_Rosto_local} +\newcommand{\versao}{1.1.0} % ====================== \newcommand{\textoEdicao}{Edition} \newcommand{\textoVersao}{Version} -%\newcommand{\edicao}{1} -%\newcommand{\versao}{1.0} \newcommand{\textoCopyright}{} % ====================== -% --- \newcommand{\Universidade}{} \newcommand{\Curso}{} %{Curso --} \newcommand{\Departamento}{} @@ -133,11 +120,6 @@ \newcommand{\textoCoOrientador}{} % ====================== Input_Folha_Rosto_Livro_Versao -% ========== Dados ficha catalográfica ========== Sempre crie uma cópia local -%\input{C:/Users/FHZ/Dropbox/LaTeX_Inputs_padrao/input_Dados/input_Dados_FichaCatalografica_Bibliotecario_01} -%\input{C:/Users/FHZ/Dropbox/LaTeX_Inputs_padrao/input_Dados/input_Dados_FichaCatalografica_Bibliotecario_02_Preenchida_Quaternios} -% ========== - % ========== Hypersetup local \hypersetup{pdfinfo={ Title={\Titulo}, @@ -147,20 +129,7 @@ \begin{document} % ========== Capas -%{\FHZCapaArticle} {\FHZCapaArticleCabecalho} -%{\FHZCapaArticleEstiloLivro} -% ========== - -% ========== Folhas de Rosto -%\clearpage -%{\FHZFolhaRosto} -%{\FHZFolhaRostoLivroISBN} -%{\FHZFolhaRostoLivroProvisoria} -% ========== - -% ========== -%\clearpage % ========== \begin{abstract} @@ -169,6 +138,11 @@ \end{FHZboxEnumerateStyle} \end{abstract} +\begin{FHZboxEnumerateStyle} + \begin{multicols}{2} + {\small \tableofcontents} + \end{multicols} +\end{FHZboxEnumerateStyle} \section{Introduction} The following packages are used in the examples and applications. @@ -177,15 +151,18 @@ The following packages are used in the examples and applications. Whose following packages are always used as reference of quality and capabilities: \begin{enumerate} - \item \href{https://www.ctan.org/pkg/tikzducks}{{\CTAN} -- tikzducks} - \item \href{https://www.ctan.org/pkg/tikzmarmots}{{\CTAN} -- tikzmarmots} + \begin{multicols}{2} + \item \href{https://www.ctan.org/pkg/tikzducks}{{\CTAN} -- tikzducks} + \item \href{https://www.ctan.org/pkg/tikzmarmots}{{\CTAN} -- tikzmarmots} + \end{multicols} \end{enumerate} - - \item \href{https://www.ctan.org/pkg/adjustbox}{{\CTAN} -- adjustbox} - \item \href{https://www.ctan.org/pkg/tcolorbox}{{\CTAN} -- tcolorbox} - \item \href{https://www.ctan.org/pkg/fancyhdr}{{\CTAN} -- fancyhdr} - \item \href{https://www.ctan.org/pkg/eso-pic}{{\CTAN} -- eso-pic} - \item \href{https://www.ctan.org/pkg/animate}{{\CTAN} -- animate} + \begin{multicols}{2} +% \item \href{https://www.ctan.org/pkg/adjustbox}{{\CTAN} -- adjustbox} + \item \href{https://www.ctan.org/pkg/tcolorbox}{{\CTAN} -- tcolorbox} + \item \href{https://www.ctan.org/pkg/fancyhdr}{{\CTAN} -- fancyhdr} + \item \href{https://www.ctan.org/pkg/eso-pic}{{\CTAN} -- eso-pic} + \item \href{https://www.ctan.org/pkg/animate}{{\CTAN} -- animate} + \end{multicols} \end{FHZtcbEnumerate} The basic concept started as a question at {\TeXStackExchange} and after some research some new ideas have been found to improve the initial sketch. @@ -194,6 +171,7 @@ The basic concept started as a question at {\TeXStackExchange} and after some re \begin{enumerate} \item \href{https://tex.stackexchange.com/questions/424113/how-to-use-tikz-shade-command-in-order-to-achieve-3d-like-results}{{\TeXStackExchange} -- How to use Tikz {\textbackslash}shade command in order to achieve 3D like results}: is the inspiration to create commands with parts of a drawing to build a greater design in {\TikZ} and the command shade. \item \href{https://youtu.be/1zZZBB9-Nm8}{{\YouTube} -- MatPat's Game Theory}: is the inspiration to the design of the shadow. Many artists have replicated the original design of the game. + \item \href{https://youtu.be/yZrhRKyFP-U}{{\YouTube} -- Game Toons -- Among Us Logic Movie | Cartoon Animation}: is a animation featuring Among Us characters and source to many emotional expressions and hand positions since many of them are used to make characters much more expressive. \end{enumerate} \end{FHZtcbEnumerate} @@ -206,9 +184,9 @@ The original game is available in different online stores. I don't own the game, There are three base style files. \begin{FHZtcbAmongUs}[listing only] - \usepackage{tikz-among-us} - \usepackage{tikz-among-us-fancyhdr} - \usepackage{tikz-among-us-watermark-eso-pic} +\usepackage{tikz-among-us} +\usepackage{tikz-among-us-fancyhdr} +\usepackage{tikz-among-us-watermark-eso-pic} \end{FHZtcbAmongUs} A brief description follows: @@ -220,35 +198,6 @@ A brief description follows: \item \verb|\usepackage{tikz-among-us-watermark-eso-pic}|: A preset implementation of watermarks using the \texttt{eso-pic} package. This implementation takes advantage of the \texttt{kvoptions} packages in order to add some degrees of flexibility to the watermarks. Of course anyone could just replace the basic command from \texttt{eso-pic} in each file they want. The preset configurations aim to be a synthesis and make its usage a little bit more flexible than just copying and pasting content in each file. \end{FHZtcbEnumerate} -%These are the required package for each style. -%\begin{FHZtcbEnumerate} -% \begin{multicols}{3} -% \item tikz-among-us -% \begin{enumerate} -% \item tikz $\to$ tikzlibraries -% \begin{enumerate} -% \item calc -% \item shadings -% \end{enumerate} -% \item xifthen -% \end{enumerate} -% \item tikz-among-us-fancyhdr -% \begin{enumerate} -% \item tikz-among-us -% \item fancyhdr -% \item adjustbox -% \end{enumerate} -% \item tikz-among-us-watermark-eso-pic -% \begin{enumerate} -% \item tikz-among-us -% \item tikz -% \item xifthen -% \item eso-pic -% \item kvoptions -% \end{enumerate} -% \end{multicols} -%\end{FHZtcbEnumerate} - \section{Examples -- tikz-among-us} While creating the drawing, I did a first attempt, now called \texttt{Original}, which is a command with a \texttt{tikzpicture} inside it. This command was not made with the best method to be flexible, but it is indeed very simple and direct. I chose to keep it as an alternative to the new commands and because it has a different style. @@ -259,19 +208,18 @@ In this sense, I chose to keep both styles and using the roman number as a suffi The basic syntax to insert each character is: \begin{FHZtcbAmongUs}[listing only] - \amongUsI[<options>]{<BodyColor>}{<EyeColor>} +\amongUsI[<options>]{<BodyColor>}{<EyeColor>} \end{FHZtcbAmongUs} -%\begin{lstlisting}[style=estiloExemVerd] -% \amongUsI[<options>]{<BodyColor>}{<EyeColor>} -%\end{lstlisting} +\noindent and for each body part, the commands are: \begin{FHZtcbAmongUs}[listing only] - \amongUsBackpackI[<options>]{<BodyColor>} - \amongUsBodyI[<options>]{<BodyColor>} - \amongUsEyesI[<options>]{<EyeColor>} +\amongUsBackpackI[<options>]{<BodyColor>} +\amongUsBodyI[<options>]{<BodyColor>} +\amongUsEyesI[<options>]{<EyeColor>} \end{FHZtcbAmongUs} +\noindent where \texttt{<options>} is any suitable option of the environment \texttt{scope} of {\TikZ}; and \texttt{<BodyColor>} and \texttt{<EyeColor>} are any color provided such as {\TikZ} recognizes them. -For each command with suffix \texttt{I} there is another command with suffix \texttt{II}, that represents the alternative method to create shades. +For each basic command with suffix \texttt{I} there is another command with suffix \texttt{II}, that represents the alternative method to create shades. There are no \texttt{Style II} for every design. This is the basic use of the package. @@ -296,54 +244,53 @@ On the other hand, the \texttt{shift=\{(x,y)\}} command of the environment \text \begin{FHZtcbAmongUs}[title=Each body part -- Style I] \begin{tikzpicture} \amongUsBackpackI - [shift={(0,0)}]{blue}; + [shift={(0,0)}]{blue} \amongUsBodyI - [shift={(0.6,0)}]{blue}; + [shift={(0.6,0)}]{blue} \amongUsEyesI - [shift={(3,0)}]{cyan}; + [shift={(3,0)}]{cyan} \end{tikzpicture} \end{FHZtcbAmongUs} \switchcolumn \begin{FHZtcbAmongUs}[title=Each body part -- Style II] \begin{tikzpicture} \amongUsBackpackII - [shift={(0,0)}]{green}; + [shift={(0,0)}]{green} \amongUsBodyII - [shift={(0.6,0)}]{green}; + [shift={(0.6,0)}]{green} \amongUsEyesII - [shift={(3,0)}]{red}; + [shift={(3,0)}]{red} \end{tikzpicture} \end{FHZtcbAmongUs} \end{paracol} -Unfortunately, I'm (still) not the most proficient {\TikZ} user, so I didn't create the most optimized style to properly use the command \texttt{scale}, therefore, it is suggested to use the command \texttt{{\textbackslash}adjustbox} from the package \texttt{adjustbox} to scale the drawing without incurring in some errors with the \texttt{rounded corners} used in the design. +%Unfortunately, I'm (still) not the most proficient {\TikZ} user, so I didn't create the most optimized style to properly use the command \texttt{scale}, therefore, it is suggested to use the command \texttt{{\textbackslash}adjustbox} from the package \texttt{adjustbox} to scale the drawing without incurring in some errors with the \texttt{rounded corners} used in the design. + +After learning the issues between \texttt{scale} and \texttt{rounded corners}, I update the drawing since version \texttt{1.1.0} to work with the \texttt{scale} options. Despite the update, the alternative method using the command \texttt{{\textbackslash}adjustbox} from the package \texttt{adjustbox} is still a valid option. To rotate the draw around its center the command \texttt{rotate around=\{angle:(x0,y0)\}} should be used. The center of mass is close to the coordinates $x_0 = 1.75$ and $y_0 = 2.3$. -\begin{FHZtcbAmongUs}[title=Scaling with adjustbox, sidebyside] -% \usepackage{adjustbox} -\adjustbox{scale=0.5}{ +\begin{FHZtcbAmongUs}[title=Scaling with scale, sidebyside, righthand ratio=0.40] \begin{tikzpicture} - \amongUsI{cyan}{gray}; - \amongUsI[shift={(5,3)}, + \amongUsI[scale=0.5]{cyan}{gray} + \amongUsI[scale=0.3, shift={(10,3)}, rotate around={180:(1.75,2.3)}] - {green!50!black}{cyan}; - \amongUsI[shift={(10.5,0)}, + {green!50!black}{cyan} + \amongUsI[scale=0.1, shift={(50.5,0)}, rotate around={45:(1.75,2.3)}] - {orange!50!black}{orange}; + {orange!50!black}{orange} \end{tikzpicture} -} \end{FHZtcbAmongUs} -\subsection{Styles Original} +\subsection{Style -- Original} The original design is much more simplistic. \begin{FHZtcbAmongUs}[title=Original Design -- Inside \textit{tikzpicture}] - \begin{tikzpicture} - \node at (0,0) {\amongUsOriginal{blue}{orange}}; - \node at (5,0) {\amongUsOriginal{orange}{blue}}; - \node at (10,0) {\amongUsOriginal{red}{cyan}}; - \end{tikzpicture} +\begin{tikzpicture} + \node at (0,0) {\amongUsOriginal{blue}{orange}}; + \node at (5,0) {\amongUsOriginal{orange}{blue}}; + \node[scale=0.25] at (10,0) {\amongUsOriginal{red}{cyan}}; +\end{tikzpicture} \end{FHZtcbAmongUs} Although it is simplistic, it was a good start point to insert emotions as options to the style. The emotions shall be added to \texttt{Styles I} and \texttt{II} in the future. The \texttt{Original} style can be use outside a \texttt{tikzpicture} environment. @@ -357,25 +304,265 @@ Although it is simplistic, it was a good start point to insert emotions as optio Inside the \texttt{tikzpicture} environment is possible to use some options of the command \texttt{node} to produce some more combinations. Indeed, that's the best method to achieve a black body suit with visible lines. \begin{FHZtcbAmongUs}[title=Original Design -- Inside \textit{tikzpicture} with \textit{node} options] - \begin{tikzpicture}[every path/.style={very thick}] - \node[red, fill=black] at (0,0) {\amongUsOriginal{white}{cyan}}; - \node[blue, fill=violet] at (5,0) {\amongUsOriginal[angry]{white}{cyan}}; - \node[yellow, fill=green] at (10,0) - {\amongUsOriginal[very angry]{black}{cyan}}; - \end{tikzpicture} +\begin{tikzpicture}[every path/.style={very thick}] + \node[red, fill=black] at (0,0) {\amongUsOriginal{white}{cyan}}; + \node[blue, fill=violet] at (5,0) {\amongUsOriginal[angry]{white}{cyan}}; + \node[yellow, fill=green] at (10,0) + {\amongUsOriginal[very angry]{black}{cyan}}; +\end{tikzpicture} \end{FHZtcbAmongUs} +\subsection{Show me your Hands} + +The following command is used to present some hands +\begin{FHZtcbAmongUs}[listing only] +\amongUsHands<X>[<options>]{HandColor} +\end{FHZtcbAmongUs} +\noindent +where <X> is a letter from $A$ to $G$. + +\begin{FHZtcbAmongUs}[title=Hands] +\begin{tikzpicture}[every path/.style={very thick}] + \amongUsHandsA[shift={(0,0)}]{yellow} + \amongUsHandsB[shift={(2,0)}]{red} + \amongUsHandsC[shift={(4,0)}]{blue} + \amongUsHandsD[shift={(6,0)}]{green!50!black} + \amongUsHandsE[shift={(8,0)}]{orange} + \amongUsHandsF[shift={(10,0)}]{violet} + \amongUsHandsG[shift={(12,0)}]{gray} +\end{tikzpicture} +\end{FHZtcbAmongUs} -\section{Use as Watermark} +\subsection{Smile as an Impostor} + +The following commands are used to create the impostor design +\begin{FHZtcbAmongUs}[listing only] +\impostorSmile[<options>]{SmileColor} +\impostorTeethUp[<options>]{SmileColor} +\impostorTeethLw[<options>]{TeethColor} +\impostorTeeth[<options>]{TeethColor} +\impostorI[<options>]{BodyColor}{EyeColor}{SmileColor}{TeethColor} +\impostorII[<options>]{BodyColor}{EyeColor}{SmileColor}{TeethColor} +\end{FHZtcbAmongUs} + +There are two separated commands to draw the teeth in order to give some flexibility to new designs. The command \verb|\impostorTeeth| just call both commands and is used by the command \verb|\impostorI|. + +\begin{FHZtcbAmongUs}[title=Why so serious? Smile!] +\begin{tikzpicture}[every path/.style={very thick}] +\amongUsI[shift={(5,0)}]{green}{violet} +\impostorSmile[shift={(5,0)}]{black} +\impostorTeethUp[shift={(5,0)}]{white} +\impostorTeethLw[shift={(5,0)}]{white} + +\amongUsI[shift={(10,0)}]{orange}{red} +\impostorTeeth[shift={(10,0)}]{yellow} + +\impostorI[shift={(15,0)}]{violet}{gray}{green}{red} +\end{tikzpicture} +\end{FHZtcbAmongUs} + +\subsection{There are emotions on your Eyes} + +The options to draw emotional eyes are: +\begin{FHZtcbAmongUs}[listing only] +\amongUsEyesAngryI[<options>]{EyeColor} +\amongUsEyesVeryangryI[<options>]{EyeColor} +\amongUsEyesHappyI[<options>]{EyeColor} +\amongUsEyesScaredI[<options>]{EyeColor} +\end{FHZtcbAmongUs} +\noindent +and respective \texttt{Style II} version. + +\begin{FHZtcbAmongUs}[title=Are you angry?] +\begin{tikzpicture}[every path/.style={very thick}] + \amongUsBackpackI{yellow} + \amongUsBodyI{yellow} + \amongUsEyesAngryI{cyan} + + \begin{scope}[shift={(5,0)}] + \amongUsBackpackI{red} + \amongUsBodyI{red} + \amongUsEyesVeryangryI{blue} + \end{scope} + + \begin{scope}[shift={(10,0)}] + \amongUsBackpackI{blue} + \amongUsBodyI{blue} + \amongUsEyesVeryangryI{orange} + \impostorSmile{black} + \impostorTeeth{white} + \end{scope} +\end{tikzpicture} +\end{FHZtcbAmongUs} + +\begin{FHZtcbAmongUs}[title=Are you scared or is that a smile?] +\begin{tikzpicture}[every path/.style={very thick}] + \amongUsBackpackI{yellow!60!green} + \amongUsBodyI{yellow!60!green} + \amongUsEyesScaredI{cyan!90!red} + + \begin{scope}[shift={(5,0)}] + \amongUsBackpackI{red!75!purple} + \amongUsBodyI{red!75!purple} + \amongUsEyesHappyI{green!50!orange} + \end{scope} + + \begin{scope}[shift={(10,0)}] + \amongUsBackpackI{blue!70!white} + \amongUsBodyI{blue!70!white} + \amongUsEyesHappyI{orange!75!black} + \impostorSmile{black} + \impostorTeeth{white} + \end{scope} +\end{tikzpicture} +\end{FHZtcbAmongUs} + +\subsection{That's a {\TikZ} impostor!} + +Let's just create an example unifying impostor, hands and a crew member. The option \verb|xscale=-1| is used to create a mirror effect to draw the left hand from the original right hand design.\footnote{A future release might have starred options to directly insert left hands.} + +\begin{FHZtcbAmongUs}[title=Watch out! That's a {\TikZ}-impostor!] +\begin{tikzpicture}[every path/.style={very thick}] + \impostorI{brown}{cyan}{black}{white} + \amongUsHandsF[shift={(3.75,-1)}, rotate around={270:(0.5,2.5)}, + xscale=-1]{brown} + \amongUsHandsG[shift={(1.5,-1)}]{brown} + \begin{scope}[shift={(6,0)}] + \amongUsI{yellow}{green} + \amongUsHandsB[shift={(0,3)}]{yellow} + \amongUsHandsB[xscale=-1, shift={(-4,3)}]{yellow} + \end{scope} +\end{tikzpicture} +\end{FHZtcbAmongUs} + +\subsection{Oh no! Now you are a Ghost!} + +The following commands draw the ectoplasmic body and the full ghost adding its eyes. +\begin{FHZtcbAmongUs}[listing only] +\amongUsGhostBodyI[<options>]{BodyColor} +\amongUsGhostI[<options>]{BodyColor}{EyeColor} +\end{FHZtcbAmongUs} +and also \texttt{Style II} versions. + +After meeting the impostor at the last frame, you are now a ghost. And there are no excuses if you find a angry ghost floating around. +\begin{FHZtcbAmongUs}[title=Oh no! Now you are a Ghost!] +\begin{tikzpicture}[every path/.style={very thick}] + \amongUsBackpackI{red!35!white} + \amongUsGhostBodyI{red!35!white} + \amongUsEyesAngryI{brown} + + \begin{scope}[shift={(5,0)}] + \amongUsGhostI{purple}{orange!50!white} + \amongUsHandsC[shift={(2,0)}]{purple} + \amongUsHandsE[shift={(5,0)},xscale=-1]{purple} + \end{scope} + + \begin{scope}[shift={(15,0)}, xscale=-1] + \amongUsGhostI{green!50!blue}{yellow!50!black} + \amongUsHandsA[shift={(1,0)}]{green!50!blue} + \amongUsHandsB[shift={(5,0)},xscale=-1]{green!50!blue} + \end{scope} +\end{tikzpicture} +\end{FHZtcbAmongUs} + +\subsection{There is a Amoonguss among us} + +The Pokémon named Amoonguss is a fungus whose name is very similar to the game, so that another artist create a fan art exploring this idea. +\begin{FHZtcbEnumerate} + \item \href{https://www.reddit.com/r/AmongUs/comments/insse3/there_is_one_ditto_amoonguss/}{Reddit -- u/Sarasinapellido -- There is one ditto amoonguss}: Main discussion about the design. + + \begin{enumerate} + \item \href{https://www.instagram.com/p/CEzs-cNKuQJ/}{Instagram -- leroleroart}: Original Amoonguss as among us design. + \end{enumerate} +\end{FHZtcbEnumerate} + +\begin{FHZtcbAmongUs}[title=There is one Ditto Amoonguss] +\begin{tikzpicture}[every path/.style={very thick}, scale=0.5] + \amongUsBackpackI{yellow} \amoongussBodyI{yellow} + \amoongussNoseI{red} \amoongussLeftHandI{yellow} + \amoongussRightHandI{yellow} \amongUsEyesI{cyan} + + \amoongussI[shift={(8,0)}]{green!40!black}{orange}{red}{red}{red} + \impostorSmile[shift={(9.5,1)}, scale=0.5]{white} + + \amoongussII[shift={(16,0)}]{purple}{gray}{green}{orange}{yellow} + + \begin{scope}[shift={(22,0)}] + \amongUsI{teal!70}{red!25!purple} + \amoongussNoseI{yellow} + \amoongussRightHandI[shift={(0.5,0.5)}]{violet} + \amongUsHandsA[shift={(5.5,0)},xscale=-1]{teal!70} + \end{scope} +\end{tikzpicture} +\end{FHZtcbAmongUs} + +\begin{FHZtcbAmongUs}[title=Wait! Is Amoonguss a ghost Pokémon?] +\begin{tikzpicture}[every path/.style={very thick}] + \amoongussGhostI[scale=0.5]{lime}{magenta} + {blue!50!white}{blue!50!white}{red} + \begin{scope}[shift={(4,0)},scale=0.5] + \amongUsBackpackI{lime!50!black} + \amoongussGhostBodyI{lime!50!black} + \amoongussNoseI{red} + \amoongussLeftHandI{magenta!50!black} + \amoongussRightHandI{magenta!50!black} + \amongUsEyesAngryI{cyan!40!orange} + \end{scope} + \amoongussGhostII[shift={(14,0)},scale=0.5, xscale=-1] + {magenta}{lime}{red}{red}{blue!50!white} + \impostorSmile[shift={(11.8,1.8)}, scale=0.4, yscale=-1]{white} + \begin{scope}[shift={(10,0)}, scale=0.5, xscale=-1] + \amongUsBackpackII{cyan!50!black} + \amoongussGhostBodyII{cyan!50!black} + \amoongussNoseII{yellow} + \amoongussLeftHandII{green!50!black} + \amoongussRightHandII{green!50!black} + \amongUsEyesHappyII{orange!40!olive} + \impostorSmile[shift={(4,1)}, scale=0.5, xscale=-1]{white} + \end{scope} +\end{tikzpicture} +\end{FHZtcbAmongUs} + +\subsection{Don't forget Style II} + +\texttt{Style II} should not be forget, and it also can be combined with ghost, hands and eyes emotions. +\begin{FHZtcbAmongUs}[title=Style II are looking back to you] +\begin{tikzpicture}[every path/.style={very thick}, scale=0.5, xscale=-1] + \amongUsBackpackII{yellow} \amongUsBodyII{yellow} + \amongUsEyesAngryII{cyan} \impostorSmile{black} + \impostorTeeth{white} + \begin{scope}[shift={(6,0)}] + \amongUsBackpackII{blue} \amongUsGhostBodyII{blue} + \amongUsEyesHappyII{orange!75!black} \amongUsHandsE[shift={(2,0)}]{blue} + \amongUsHandsG[shift={(3,1)}, xscale=-1, rotate around={90:(0,1)}]{blue} + \end{scope} + \begin{scope}[shift={(12,0)}] + \amongUsBackpackII{red} \amongUsGhostBodyII{red} + \amongUsEyesVeryangryII{violet} + \impostorSmile{black} \impostorTeeth{white} + \end{scope} + \begin{scope}[shift={(17,0)}] + \amongUsBackpackII{orange} \amongUsBodyII{orange} + \amongUsEyesScaredII{blue} + \amongUsHandsA{orange} \amongUsHandsD[shift={(4,0)}, xscale=-1]{orange} + \end{scope} + \amongUsGhostII[shift={(22,0)}]{lime}{red} + \impostorII[shift={(27,0)}]{green!75!red}{gray}{black}{green} +\end{tikzpicture} +\end{FHZtcbAmongUs} + +\section{Using with own \texttt{.sty} file} + +\subsection{Use as watermark} The chosen package to add watermarks is \begin{FHZtcbAmongUs}[listing only] - \usepackage{eso-pic} +\usepackage{eso-pic} \end{FHZtcbAmongUs} -The syntax of the style created to insert Among us characters from the package \texttt{tikz-among-us} is +A \texttt{.sty} file has been created to insert Among us characters from the package \texttt{tikz-among-us}, which syntax is \begin{FHZtcbAmongUs}[listing only] - \usepackage[cor=<color>,<FG/BG,type=<0/1>]{tikz-among-us-watermark-eso-pic} +\usepackage[cor=<color>,<FG/BG>,type=<0/1>]{tikz-among-us-watermark-eso-pic} \end{FHZtcbAmongUs} The options are @@ -384,7 +571,7 @@ The options are \begin{itemize} \item default color is red \end{itemize} - \item FG (default if empty) \textsf{OR} BG + \item FG (default option) \textsl{OR} BG \begin{itemize} \item These options select between \texttt{{\textbackslash}AddToShipoutPictureFG} and \texttt{{\textbackslash}AddToShipoutPictureBG} from the package \texttt{eso-pic}. \end{itemize} @@ -394,17 +581,18 @@ The options are \end{itemize} \end{FHZtcbEnumerate} -The package \texttt{kvoptions} have been used to provide flexible command with direct acess to the options values in \texttt{cor} and \texttt{type}, and a simple true/false statement with \texttt{FG} and \texttt{BG}. -Any other kind or variation of watermark can be achieved by directing setting values to each <parameter> in: +The package \texttt{kvoptions} have been used to provide flexible command with direct access to the options values in \texttt{cor} and \texttt{type}, and a simple true/false statement with \texttt{FG} and \texttt{BG}. +Any other kind or variation of watermark can be achieved by directing setting values to each \texttt{<parameter>} in: \begin{FHZtcbAmongUs}[listing only] - \put(X,Y){\scalebox{<factor>}{\rotatebox{<degrees>}{\usebox\myboxAmongUs}}} +\put(<X>,<Y>){\scalebox{<factor>}{\rotatebox{<degrees>}{\usebox\myboxAmongUs}}} \end{FHZtcbAmongUs} -where \texttt{{\textbackslash}myboxAmongUs} is +\noindent +where \texttt{{\textbackslash}myboxAmongUs} must be previously defined as \begin{FHZtcbAmongUs}[listing only] - \myboxAmongUs\savebox\myboxAmongUs{% - \tikz[color=<color>, opacity=<factor>] +\myboxAmongUs\savebox\myboxAmongUs{% + \tikz[color=<color>, opacity=<factor>] \node{\amongUsOriginal{<color>}{white}}; - } +} \end{FHZtcbAmongUs} The following box presents some possible combinations of parameters which results are presented at \autoref{fig:fig_AmongUg}. @@ -449,14 +637,38 @@ The following box presents some possible combinations of parameters which result The selected combination used in this documentation is \begin{FHZtcbAmongUs}[listing only] - \usepackage[cor=violet!70!white,BG,type=1]{tikz-among-us-watermark-eso-pic} +\usepackage[cor=violet!70!white,BG,type=1]{tikz-among-us-watermark-eso-pic} +\end{FHZtcbAmongUs} + +\subsection{Use as page number} + +The required packages are: +\begin{FHZtcbAmongUs}[listing only] +\usepackage{fancyhdr} +\end{FHZtcbAmongUs} +The package \texttt{fancyhdr} enables the user to edit headers and footers. I present a simple possibility to use the Among us characters in the footer of each page, such as the ones in this documentation. + +The central core of the idea is to shift the position of the \verb|\amongUsI|, scale it to match its center around the displacement of the command \verb|\thepage| -- that inserts the page's number -- and \texttt{rotate around} using some math to rotate to body around its center. +In the example below, it turns 45 degrees each new page, creating the idea of a body floating around. + +The following command just changes the footer. To apply other options check the package \texttt{fancyhdr}. +\begin{FHZtcbAmongUs}[listing only] +\fancyfoot[RO,LE]{% + \begin{tikzpicture} + \amongUsI[rotate around={45*(\thepage-1):(1.75,2.3)}, + scale=0.25, shift={(5,7)}]{yellow}{cyan} + \node at (1.75,2.3) {\thepage}; + \end{tikzpicture} +} \end{FHZtcbAmongUs} -\section{Use as Watermark inside a tcolorbox} +\section{Using inside other packages} -\texttt{tcolorbox} is one of the most versatile packages of all {\LaTeX}. One of its feature is the possibility to create boxes with many styles, including boxes with watermarks as presented in page 174 of the \texttt{tcolorbox} manual (\texttt{/tcb/watermark tikz)}. +\subsection{Use as watermark in tcolorbox} + +The package \texttt{tcolorbox} is one of the most versatile packages of all {\LaTeX}. One of its feature is the possibility to create boxes with many styles, including boxes with watermarks as presented in page 174 of the \texttt{tcolorbox} manual (\texttt{/tcb/watermark tikz)}. \begin{FHZtcbAmongUs}[listing only] - \usepackage{tcolorbox} +\usepackage{tcolorbox} \end{FHZtcbAmongUs} The very implementation used in this report to create enumerated list with some Among us floating around is: @@ -465,11 +677,15 @@ The very implementation used in this report to create enumerated list with some enhanced, colback=orange!15!white, colframe=orange!50!black, - watermark tikz={\tikz[opacity=0.4] - \node[rotate around={-45:(1.75,2.3)}] {\amongUsOriginal{blue}{white}}; - \node[rotate around={45:(1.75,2.3)}] at (5,0) {\amongUsOriginal{pink}{white}}; - \node[rotate around={-135:(1.75,2.3)}] at (10,0) {\amongUsOriginal{green}{white}}; - \node[rotate around={135:(1.75,2.3)}] at (15,0) {\amongUsOriginal{olive}{white}}; + watermark tikz={\tikz + \node[opacity=0.4, rotate around={-45:(1.75,2.3)}] + {\amongUsOriginal{blue}{white}}; + \node[opacity=0.4, rotate around={45:(1.75,2.3)}] at (5,0) + {\amongUsOriginal{pink}{white}}; + \node[opacity=0.4, rotate around={-135:(1.75,2.3)}] at (10,0) + {\amongUsOriginal{green}{white}}; + \node[opacity=0.4, rotate around={135:(1.75,2.3)}] at (15,0) + {\amongUsOriginal{olive}{white}{black}{white}}; } } \newenvironment{FHZtcbEnumerate}{% @@ -482,76 +698,79 @@ The very implementation used in this report to create enumerated list with some \item This is an example of a \texttt{enumerate} list inside a \texttt{tcolorbox} with \texttt{tikz-among-us} as watermark. \end{FHZtcbEnumerate} -\section{Use as Page numbering} - -The required packages are: -\begin{FHZtcbAmongUs}[listing only] -\usepackage{fancyhdr} -\usepackage{adjustbox} -\end{FHZtcbAmongUs} -The package \texttt{fancyhdr} enables the user to edit headers and footers. I present a simple possibility to use the Among us characters in the footer of each page, such as the ones in this documentation. - -The central core of the idea is to use \texttt{adjustbox} to correct scale down the \texttt{tikzpicture}, since the draw was made with \texttt{rounded corners} and this feature has some issue while scaling, and insert a \texttt{rotate around} command using some math to rotate to body around its center. -In the example below, it turns 45 degrees each new page, creating the idea of floating around. - -Next, a \texttt{node} is insert with the inverse factor of the scaling made in \texttt{adjustbox}, it returns the page number to its original size, and also places it at the correct local on the footer. -\begin{FHZtcbAmongUs}[listing only] -\fancyfoot[RO,LE]{% - \adjustbox{scale=0.25}{% - \begin{tikzpicture} - \amongUsI[rotate around={45*(\thepage-1):(1.75,2.3)}]{yellow}{cyan}; - \node[scale=4] at (1.75,2.3) {\thepage}; - \end{tikzpicture} - } -} -\end{FHZtcbAmongUs} -\section{Use as Animation} +\subsection{Use as animation} This example uses the following package \begin{FHZtcbAmongUs}[listing only] - \usepackage{animate} +\usepackage{animate} \end{FHZtcbAmongUs} -This example creates a variable from 0 to 360 to represent each degree of a full rotation.\footnote{Animation requires some PDF visualization software to properly work. Internet browsers are not normally suitable for this task.} Four Among us characters are placed around the screen by using the option \texttt{shift={(x0,y0)}} and then rotating them around each respective center of mass. In order to achieve this effect, the most left command must be \texttt{shift} and then \texttt{rotate around}, the opposite order will rotate around the given point by will shift the object relative center of rotation. To make a body rotate in the opposite direction it is just necessary to add a minus sign in front of the angle variable. +This example creates a variable from 0 to 360 to represent each degree of a full rotation.\footnote{Animation requires some PDF visualization software to properly work. Internet browsers are not normally suitable for this task.} Four Among us characters are placed around the screen by using the option \texttt{shift={(x0,y0)}} and then rotating them around each respective center of mass. In order to achieve this effect, the most left command must be \texttt{shift} and then \texttt{rotate around}, the opposite order will rotate around the given point by will shift the object relative center of rotation. To make a body rotate in the opposite direction it is just necessary to add a minus sign in front of the angle variable. Animation is present in \autoref{fig:anim_floating_around}. \begin{FHZtcbAmongUs}[listing only] \begin{animateinline}[controls,loop]{30} - \multiframe{360}{rt=0+1}{% + \multiframe{180}{rt=0+1}{% \begin{tikzpicture} \draw (-2,-10) rectangle (15,7); - \amongUsI[rotate around={\rt:(2,3)}] - {orange}{blue}; - \amongUsI[shift={(8,0)}, rotate around={-\rt:(2,3)}] - {cyan}{orange}; - \amongUsII[shift={(0,-8)}, rotate around={\rt:(2,3)}] - {red}{gray}; - \amongUsII[shift={(8,-8)}, rotate around={-\rt:(2,3)}] - {green!50!black}{cyan}; + \useasboundingbox (-2,-10) rectangle (15,7); + \amoongussI[shift={(\rt/9-2.5,-3)}, scale=0.3] + {purple!40!black}{yellow}{green}{green}{red} + \amongUsI[rotate around={2*\rt:(2,3)}] + {orange}{blue} + \amongUsGhostI[shift={(8,0)}, rotate around={-2*\rt:(2,3)}] + {cyan}{orange} + \amongUsII[shift={(0,-8)}, rotate around={2*\rt:(2,3)}] + {red}{gray} + \impostorI[shift={(8,-8)}, rotate around={-2*\rt:(2,3)}] + {green!50!black}{cyan}{black}{white} \end{tikzpicture} } \end{animateinline} \end{FHZtcbAmongUs} -\begin{animateinline}[controls,loop]{30} - \multiframe{360}{rt=0+1}{% - \begin{tikzpicture} - \draw (-2,-10) rectangle (15,7); - \amongUsI[rotate around={\rt:(2,3)}]{orange}{blue}; - \amongUsI[shift={(8,0)}, rotate around={-\rt:(2,3)}]{cyan}{orange}; - \amongUsII[shift={(0,-8)}, rotate around={\rt:(2,3)}]{red}{gray}; - \amongUsII[shift={(8,-8)}, rotate around={-\rt:(2,3)}]{green!50!black}{cyan}; - \end{tikzpicture} - } -\end{animateinline} + +\begin{figure}[ht!] + \begin{animateinline}[controls,loop]{30} + \multiframe{180}{rt=0+1}{% + \begin{tikzpicture} + \draw (-2,-10) rectangle (15,7); + \useasboundingbox (-2,-10) rectangle (15,7); + \amoongussI[shift={(\rt/9-2.5,-3)}, scale=0.3] + {purple!40!black}{yellow}{green}{green}{red} + \amongUsI[rotate around={2*\rt:(2,3)}] + {orange}{blue} + \amongUsGhostI[shift={(8,0)}, rotate around={-2*\rt:(2,3)}] + {cyan}{orange} + \amongUsII[shift={(0,-8)}, rotate around={2*\rt:(2,3)}] + {red}{gray} + \impostorI[shift={(8,-8)}, rotate around={-2*\rt:(2,3)}] + {green!50!black}{cyan}{black}{white} + \end{tikzpicture} + } + \end{animateinline} + \caption{Example of a floating around animation.} + \label{fig:anim_floating_around} +\end{figure} \section{Future features and ideas} \begin{FHZtcbEnumerate} - \item Add options for hands; - \item Add options to different emotions through the eyes in styles I and II; - \item Improve scale method; - \item Draw the impostor; - \item Draw maps. + \item Add options for hands $\checkmark$ + \item Add options to different emotions through the eyes in styles I $\checkmark$ and II $\checkmark$ + \item Improve scale method $\checkmark$ + \item Draw a impostor design $\checkmark$ + \item Draw maps + \item Create left and right hand options + \begin{enumerate} + \item Create a starred version of right hands as left hands + \end{enumerate} + \item Add other emotions than ``angry'' ones + \begin{enumerate} + \item Happy $\checkmark$ + \item Scared $\checkmark$ + \end{enumerate} + \item Create ghost design $\checkmark$ + \item Create Pokémon Amoonguss design $\checkmark$ \end{FHZtcbEnumerate} \section{Historic and version} @@ -559,6 +778,16 @@ This example creates a variable from 0 to 360 to represent each degree of a full \begin{FHZtcbEnumerate}[leftmargin=3.5cm] \item[1.0.0 (2020-10-20):] Publication of the style with the original design and Styles I and II of shadows. \item[1.0.1 (2020-10-23):] Minor typos have been corrected. + \item[1.1.0 (2020-10-31):] Added new features (both \texttt{Styles}) + \begin{itemize}[leftmargin=-2cm] + \item Hands; + \item Eyes with emotions (Angry, Very angry, Happy, Scared); + \item Impostor parts and full body; + \item Ghost body; + \item Pokémon Amoonguss parts and full body; + \item \texttt{rounded corners} removed to improve \texttt{scale}; + \item Ghost Amoonguss body. + \end{itemize} \end{FHZtcbEnumerate} \section{Implementation} |