diff options
Diffstat (limited to 'macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty')
-rw-r--r-- | macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty | 53 |
1 files changed, 45 insertions, 8 deletions
diff --git a/macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty b/macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty index b0579a4086..ce50d3361f 100644 --- a/macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty +++ b/macros/latex/contrib/jeuxcartes/tex/JeuxCartes.sty @@ -11,8 +11,9 @@ % Uno v1 cards Image's Licence.: MIT License https://eperezcosano.github.io/uno-part1/ \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{JeuxCartes}[2023/03/18 v0.2.4 Jeux de cartes] -% 0.2.4 Style <fr> avec carte française + <bicycl> + modification des clés avec l'ajout de <StyleJeu> + Suppression xcolor +\ProvidesPackage{JeuxCartes}[2023/06/06 v0.2.5 Jeux de cartes] +% 0.2.5 Correction d'un dysfonctionnement avec le J qui peut désormais être utilisé en MiniCarte avec le Joker [en] + MiniMains [en] +% 0.2.4 Style <fr> avec cartes françaises + <bicycl> + modification des clés avec l'ajout de <StyleJeu> + Suppression xcolor % 0.2.3 Ajout d'une option pour présenter une main "inversée" + style <v5> % 0.2.2 Correction de 2 cartes de pokerv4 % 0.2.2 Ajout d'un style <v4> pour le poker @@ -376,6 +377,10 @@ \end{tikzpicture}% } +%------commande pour remonter le Q ttfamily +\DeclareRobustCommand*{\RaiseBoxByDepth}{% + \raisebox{\depth}% +} %------commande mini-cartes \defKV[AffMiniCartes]{% Largeur=\def\MiniCarteLargeur{#1},% @@ -409,11 +414,13 @@ \IfStrEq{\csVal}{21}{\def\csVal{\scalebox{0.5}[1]{21}}}{}% %le cas de Excuse \IfStrEq{#2}{Exc}% - {\def\csSymb{\ding{168}}\def\csCoul{blue}% - \def\csVal{\scalebox{0.33}[1]{EXC}}}{}% + {\def\csSymb{\ding{168}}\def\csCoul{blue}\def\csVal{\scalebox{0.33}[1]{EXC}}}{}% %le cas du Joker - \IfStrEq{\csVal}{J}% + \IfStrEq{\csVal}{JO}% {\def\csSymb{\ding{166}}\def\csVal{\scalebox{0.5}[1]{JO}}}{}% + %le cas de la dame [en] Q + \IfStrEq{\csVal}{Q}% + {\def\csVal{\RaiseBoxByDepth{\scalebox{1}[0.8]{Q}}}}{}% %si c'est un coeur \IfStrEq{\csCplt}{C}% {\def\csSymb{\ding{170}}\def\csCoul{red}}{}% @@ -433,7 +440,7 @@ \IfStrEq{\csCplt}{R}% {\def\csCoul{red}}{}% %minicarte - \tikz[baseline=(char.base)]\node[anchor=north west,line width=0.7pt,draw=gray,rectangle,rounded corners,inner sep=1.6pt,fill=\csFond,text=\csCoul,font=\ttfamily,minimum width=\MiniCarteLargeur](char){\csVal\scalebox{0.75}[0.75]{\csSymb}};% + \tikz[baseline=(char.base)]\node[anchor=north west,line width=0.7pt,draw=gray,rectangle,rounded corners=3pt,inner sep=1.5pt,fill=\csFond,text=\csCoul,font=\ttfamily,minimum width=\MiniCarteLargeur](char){\vphantom{A}\csVal\scalebox{0.75}[0.75]{\csSymb}};% } %------commande mini-main-cartes @@ -470,10 +477,14 @@ } \xdef\MiniCartesJeuPoker{2.P,3.P,4.P,5.P,6.P,7.P,8.P,9.P,10.P,V.P,D.P,R.P,A.P,2.T,3.T,4.T,5.T,6.T,7.T,8.T,9.T,10.T,V.T,D.T,R.T,A.T,2.C,3.C,4.C,5.C,6.C,7.C,8.C,9.C,10.C,V.C,D.C,R.C,A.C,2.K,3.K,4.K,5.K,6.K,7.K,8.K,9.K,10.K,V.K,D.K,R.K,A.K}% +\xdef\MiniCartesJeuPokerEN{2.P,3.P,4.P,5.P,6.P,7.P,8.P,9.P,10.P,J.P,Q.P,K.P,A.P,2.T,3.T,4.T,5.T,6.T,7.T,8.T,9.T,10.T,J.T,Q.T,K.T,A.T,2.C,3.C,4.C,5.C,6.C,7.C,8.C,9.C,10.C,J.C,Q.C,K.C,A.C,2.K,3.K,4.K,5.K,6.K,7.K,8.K,9.K,10.K,J.K,Q.K,K.K,A.K}% \xdef\MiniCartesJeuBelote{7.P,8.P,9.P,10.P,V.P,D.P,R.P,A.P,7.T,8.T,9.T,10.T,V.T,D.T,R.T,A.T,7.C,8.C,9.C,10.C,V.C,D.C,R.C,A.C,7.K,8.K,9.K,10.K,V.K,D.K,R.K,A.K}% -\xdef\MiniCartesJeuBataille{2.P,3.P,4.P,5.P,6.P,7.P,8.P,9.P,10.P,V.P,D.P,R.P,A.P,2.T,3.T,4.T,5.T,6.T,7.T,8.T,9.T,10.T,V.T,D.T,R.T,A.T,2.C,3.C,4.C,5.C,6.C,7.C,8.C,9.C,10.C,V.C,D.C,R.C,A.C,2.K,3.K,4.K,5.K,6.K,7.K,8.K,9.K,10.K,V.K,D.K,R.K,A.K,J.N,J.R}% +\xdef\MiniCartesJeuBeloteEN{7.P,8.P,9.P,10.P,J.P,Q.P,K.P,A.P,7.T,8.T,9.T,10.T,J.T,Q.T,K.T,A.T,7.C,8.C,9.C,10.C,J.C,Q.C,K.C,A.C,7.K,8.K,9.K,10.K,J.K,Q.K,K.K,A.K}% +\xdef\MiniCartesJeuBataille{2.P,3.P,4.P,5.P,6.P,7.P,8.P,9.P,10.P,V.P,D.P,R.P,A.P,2.T,3.T,4.T,5.T,6.T,7.T,8.T,9.T,10.T,V.T,D.T,R.T,A.T,2.C,3.C,4.C,5.C,6.C,7.C,8.C,9.C,10.C,V.C,D.C,R.C,A.C,2.K,3.K,4.K,5.K,6.K,7.K,8.K,9.K,10.K,V.K,D.K,R.K,A.K,JO.N,JO.R}% +\xdef\MiniCartesJeuBatailleEN{2.P,3.P,4.P,5.P,6.P,7.P,8.P,9.P,10.P,J.P,Q.P,K.P,A.P,2.T,3.T,4.T,5.T,6.T,7.T,8.T,9.T,10.T,J.T,Q.T,K.T,A.T,2.C,3.C,4.C,5.C,6.C,7.C,8.C,9.C,10.C,J.C,Q.C,K.C,A.C,2.K,3.K,4.K,5.K,6.K,7.K,8.K,9.K,10.K,J.K,Q.K,K.K,A.K,JO.N,JO.R}% \xdef\MiniCartesJeuTarot{2.P,3.P,4.P,5.P,6.P,7.P,8.P,9.P,10.P,V.P,C.P,D.P,R.P,A.P,2.T,3.T,4.T,5.T,6.T,7.T,8.T,9.T,10.T,V.T,C.T,D.T,R.T,A.T,2.C,3.C,4.C,5.C,6.C,7.C,8.C,9.C,10.C,V.C,C.C,D.C,R.C,A.C,2.K,3.K,4.K,5.K,6.K,7.K,8.K,9.K,10.K,V.K,C.K,D.K,R.K,A.K,1.AT,2.AT,3.AT,4.AT,5.AT,6.AT,7.AT,8.AT,9.AT,10.AT,11.AT,12.AT,13.AT,14.AT,15.AT,16.AT,17.AT,18.AT,19.AT,20.AT,21.AT,Exc}% -\xdef\MiniCartesJeuRami{2.P,3.P,4.P,5.P,6.P,7.P,8.P,9.P,10.P,V.P,D.P,R.P,A.P,2.T,3.T,4.T,5.T,6.T,7.T,8.T,9.T,10.T,V.T,D.T,R.T,A.T,2.C,3.C,4.C,5.C,6.C,7.C,8.C,9.C,10.C,V.C,D.C,R.C,A.C,2.K,3.K,4.K,5.K,6.K,7.K,8.K,9.K,10.K,V.K,D.K,R.K,A.K,J.N,J.R,2.P,3.P,4.P,5.P,6.P,7.P,8.P,9.P,10.P,V.P,D.P,R.P,A.P,2.T,3.T,4.T,5.T,6.T,7.T,8.T,9.T,10.T,V.T,D.T,R.T,A.T,2.C,3.C,4.C,5.C,6.C,7.C,8.C,9.C,10.C,V.C,D.C,R.C,A.C,2.K,3.K,4.K,5.K,6.K,7.K,8.K,9.K,10.K,V.K,D.K,R.K,A.K,J.N,J.R}% +\xdef\MiniCartesJeuRami{2.P,3.P,4.P,5.P,6.P,7.P,8.P,9.P,10.P,V.P,D.P,R.P,A.P,2.T,3.T,4.T,5.T,6.T,7.T,8.T,9.T,10.T,V.T,D.T,R.T,A.T,2.C,3.C,4.C,5.C,6.C,7.C,8.C,9.C,10.C,V.C,D.C,R.C,A.C,2.K,3.K,4.K,5.K,6.K,7.K,8.K,9.K,10.K,V.K,D.K,R.K,A.K,JO.N,JO.R,2.P,3.P,4.P,5.P,6.P,7.P,8.P,9.P,10.P,V.P,D.P,R.P,A.P,2.T,3.T,4.T,5.T,6.T,7.T,8.T,9.T,10.T,V.T,D.T,R.T,A.T,2.C,3.C,4.C,5.C,6.C,7.C,8.C,9.C,10.C,V.C,D.C,R.C,A.C,2.K,3.K,4.K,5.K,6.K,7.K,8.K,9.K,10.K,V.K,D.K,R.K,A.K,JO.N,JO.R}% +\xdef\MiniCartesJeuRamiEN{2.P,3.P,4.P,5.P,6.P,7.P,8.P,9.P,10.P,J.P,Q.P,K.P,A.P,2.T,3.T,4.T,5.T,6.T,7.T,8.T,9.T,10.T,J.T,Q.T,K.T,A.T,2.C,3.C,4.C,5.C,6.C,7.C,8.C,9.C,10.C,J.C,Q.C,K.C,A.C,2.K,3.K,4.K,5.K,6.K,7.K,8.K,9.K,10.K,J.K,Q.K,K.K,A.K,JO.N,JO.R,2.P,3.P,4.P,5.P,6.P,7.P,8.P,9.P,10.P,J.P,Q.P,K.P,A.P,2.T,3.T,4.T,5.T,6.T,7.T,8.T,9.T,10.T,J.T,Q.T,K.T,A.T,2.C,3.C,4.C,5.C,6.C,7.C,8.C,9.C,10.C,J.C,Q.C,K.C,A.C,2.K,3.K,4.K,5.K,6.K,7.K,8.K,9.K,10.K,J.K,Q.K,K.K,A.K,JO.N,JO.R}% \NewList{MiniCartesJeuMelange} \NewDocumentCommand\MainMiniCartesJeuAleatoire{ O{} m }{%1=options,2=nbcartes @@ -481,6 +492,7 @@ \setKV[MiniMainAleaCartes]{#1}% %melange du jeu \ClearList{MiniCartesJeuMelange}% + %Cartes [fr] \IfStrEq{\MiniMainAleaType}{Poker}%si c'est le poker {% \xintFor* ##1 in {\xintCSVtoList{\MiniCartesJeuPoker}}% @@ -511,6 +523,31 @@ \do{\InsertRandomItem{MiniCartesJeuMelange}{##1}}% }% {}% + %Cartes [en] + \IfStrEq{\MiniMainAleaType}{PokerEN}%si c'est le poker + {% + \xintFor* ##1 in {\xintCSVtoList{\MiniCartesJeuPokerEN}}% + \do{\InsertRandomItem{MiniCartesJeuMelange}{##1}}% + }% + {}% + \IfStrEq{\MiniMainAleaType}{BatailleEN}%si c'est la bataille + {% + \xintFor* ##1 in {\xintCSVtoList{\MiniCartesJeuBatailleEN}}% + \do{\InsertRandomItem{MiniCartesJeuMelange}{##1}}% + }% + {}% + \IfStrEq{\MiniMainAleaType}{BeloteEN}%si c'est le belote + {% + \xintFor* ##1 in {\xintCSVtoList{\MiniCartesJeuBeloteEN}}% + \do{\InsertRandomItem{MiniCartesJeuMelange}{##1}}% + }% + {}% + \IfStrEq{\MiniMainAleaType}{RamiEN}%si c'est le rami + {% + \xintFor* ##1 in {\xintCSVtoList{\MiniCartesJeuRamiEN}}% + \do{\InsertRandomItem{MiniCartesJeuMelange}{##1}}% + }% + {}% %création de la main \foreach \i in {1,2,...,#2}{% \GetItem{MiniCartesJeuMelange}{\inteval{\i-1}}{MiniCarteMainChoisie}% |