summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/othelloboard
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-08-20 21:31:27 +0000
committerKarl Berry <karl@freefriends.org>2011-08-20 21:31:27 +0000
commit3274d4be4146f09f4d659c3fa36eb06928c1de19 (patch)
treebf420178be0f9dd8192803be7bf8d13498df3f80 /Master/texmf-dist/tex/latex/othelloboard
parente2c98c9e8f8051f4ad79a2015a0cd1288dd39310 (diff)
othelloboard 1.2 (19aug11)
git-svn-id: svn://tug.org/texlive/trunk@23620 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/othelloboard')
-rw-r--r--Master/texmf-dist/tex/latex/othelloboard/othelloboard.sty196
1 files changed, 159 insertions, 37 deletions
diff --git a/Master/texmf-dist/tex/latex/othelloboard/othelloboard.sty b/Master/texmf-dist/tex/latex/othelloboard/othelloboard.sty
index 435fc088208..e2bf8e2cd6f 100644
--- a/Master/texmf-dist/tex/latex/othelloboard/othelloboard.sty
+++ b/Master/texmf-dist/tex/latex/othelloboard/othelloboard.sty
@@ -17,7 +17,7 @@
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{othelloboard}[2011/06/28 Othello board diagram drawing package by Steven Hall]
+\ProvidesPackage{othelloboard}[2011/18/08 Othello board diagram drawing package by Steven Hall]
\RequirePackage{graphicx}
\RequirePackage{pict2e}
\RequirePackage{ifthen}
@@ -39,19 +39,13 @@
%------Conditional command depending on value of a single argument. 1=white disc, 2=black disc, 3=white diamond, 4=black diamond, 0=no disc. Other numbers give no disc by default.
-
-\newcommand{\othellodisc}[1]{\ifthenelse{#1=0}%
-{}%
-{\ifthenelse{#1=1}%
-{\whitedisc}%
-{\ifthenelse{#1=2}%
-{\blackdisc}%
-{\ifthenelse{#1=3}%
-{\whitediamond}%
-{\ifthenelse{#1=4}%
-{\blackdiamond}%
-{}%
-}}}}}
+\newcommand{\othellodisc}[1]{%
+\ifthenelse{#1=0}{}{}%
+\ifthenelse{#1=1}{\whitedisc}{}%
+\ifthenelse{#1=2}{\blackdisc}{}%
+\ifthenelse{#1=3}{\whitediamond}{}%
+\ifthenelse{#1=4}{\blackdiamond}{}%
+}%
%-------Declare all the counters to be used to store value inputted for each square. Only called upon to determine the text colour of annotations (white text if value=2 or 4, otherwise normal text).
\newcounter{disccolouraa} \newcounter{disccolourab} \newcounter{disccolourac}
@@ -339,8 +333,8 @@
%The othelloboardnorefs environment
\newenvironment{othelloboardnorefs}[1]%
-{\renewcommand{\scalefactor}{#1} \begin{lrbox}{\fmboard}\begin{picture}(192,192) \othellogrid}
-{\end{picture} \end{lrbox} \scalebox{\scalefactor}{\begin{picture}(192,192)(0,0) \frame{\usebox{\fmboard}} \resetalldisccolours \end{picture}}}
+{\renewcommand{\scalefactor}{#1} \begin{lrbox}{\fmboard}\begin{picture}(192,192)\resetalldisccolours \othellogrid}
+{\end{picture} \end{lrbox} \scalebox{\scalefactor}{\begin{picture}(192,192)(0,0) \frame{\usebox{\fmboard}} \end{picture}}}
%---- Commands used in the appendix of the documentation, in the example of counting discs using disccolourxy counters.
@@ -677,271 +671,399 @@
\expandafter\posannotation\expandafter{\mytwochars}{60}
}
-%------------Commands for drawing discs according to whether argument is dash, O or X.
+%------------Commands for drawing discs according to whether argument is dash, O or X. Now draws diamonds for 3 and 4 as argument too.
\newcommand{\othellodiscfromstring}[1]{%
\ifthenelse{\equal{#1}{-}}{}{}%
\ifthenelse{\equal{#1}{O} \or \equal{#1}{o}}{\whitedisc}{}%
\ifthenelse{\equal{#1}{X} \or \equal{#1}{x}}{\blackdisc}{}%
-%\ifthenelse{#1=3}{\whitediamond}{}%
-%\ifthenelse{#1=4}{\blackdiamond}{}%
+\ifthenelse{\equal{#1}{3}}{\whitediamond}{}%
+\ifthenelse{\equal{#1}{4}}{\blackdiamond}{}%
}
%----- Command for automated board creation from string of Os, Xs and -s. Sets values for each disccolourxy counter as well.
\newcommand{\drawboardfromstring}[1]{%
\StrMid{#1}{1}{1}[\mychar]%
\put(12,180){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
- \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolouraa}{2}}{%
- \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolouraa}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolouraa}{2}}{}%
+ \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolouraa}{1}}{}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolouraa}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolouraa}{4}}{}%
\StrMid{#1}{2}{2}[\mychar]%
\put(36,180){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
- \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourba}{2}}{%
- \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourba}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourba}{2}}{}%
+ \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourba}{1}}{}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourba}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourba}{4}}{}%
\StrMid{#1}{3}{3}[\mychar]%
\put(60,180){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
- \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourca}{2}}{%
- \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourca}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourca}{2}}{}%
+ \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourca}{1}}{}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourca}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourca}{4}}{}%
\StrMid{#1}{4}{4}[\mychar]%
\put(84,180){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
- \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourda}{2}}{%
- \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourda}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourda}{2}}{}%
+ \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourda}{1}}{}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourda}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourda}{4}}{}%
\StrMid{#1}{5}{5}[\mychar]%
\put(108,180){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
- \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourea}{2}}{%
- \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourea}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourea}{2}}{}%
+ \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourea}{1}}{}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourea}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourea}{4}}{}%
\StrMid{#1}{6}{6}[\mychar]%
\put(132,180){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
- \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourfa}{2}}{%
- \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourfa}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourfa}{2}}{}%
+ \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourfa}{1}}{}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourfa}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourfa}{4}}{}%
\StrMid{#1}{7}{7}[\mychar]%
\put(156,180){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
- \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourga}{2}}{%
- \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourga}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourga}{2}}{}%
+ \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourga}{1}}{}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourga}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourga}{4}}{}%
\StrMid{#1}{8}{8}[\mychar]%
\put(180,180){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
- \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourha}{2}}{%
- \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourha}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourha}{2}}{}%
+ \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourha}{1}}{}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourha}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourha}{4}}{}%
\StrMid{#1}{9}{9}[\mychar]%
\put(12,156){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourab}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourab}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourab}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourab}{4}}{}%
\StrMid{#1}{10}{10}[\mychar]%
\put(36,156){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourbb}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourbb}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourbb}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourbb}{4}}{}%
\StrMid{#1}{11}{11}[\mychar]%
\put(60,156){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourcb}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourcb}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourcb}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourcb}{4}}{}%
\StrMid{#1}{12}{12}[\mychar]%
\put(84,156){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourdb}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourdb}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourdb}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourdb}{4}}{}%
\StrMid{#1}{13}{13}[\mychar]%
\put(108,156){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccoloureb}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccoloureb}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccoloureb}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccoloureb}{4}}{}%
\StrMid{#1}{14}{14}[\mychar]%
\put(132,156){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourfb}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourfb}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourfb}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourfb}{4}}{}%
\StrMid{#1}{15}{15}[\mychar]%
\put(156,156){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourgb}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourgb}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourgb}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourgb}{4}}{}%
\StrMid{#1}{16}{16}[\mychar]%
\put(180,156){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourhb}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourhb}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourhb}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourhb}{4}}{}%
\StrMid{#1}{17}{17}[\mychar]%
\put(12,132){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourac}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourac}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourac}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourac}{4}}{}%
\StrMid{#1}{18}{18}[\mychar]%
\put(36,132){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourbc}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourbc}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourbc}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourbc}{4}}{}%
\StrMid{#1}{19}{19}[\mychar]%
\put(60,132){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourcc}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourcc}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourcc}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourcc}{4}}{}%
\StrMid{#1}{20}{20}[\mychar]%
\put(84,132){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourdc}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourdc}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourdc}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourdc}{4}}{}%
\StrMid{#1}{21}{21}[\mychar]%
\put(108,132){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourec}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourec}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourec}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourec}{4}}{}%
\StrMid{#1}{22}{22}[\mychar]%
\put(132,132){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourfc}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourfc}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourfc}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourfc}{4}}{}%
\StrMid{#1}{23}{23}[\mychar]%
\put(156,132){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourgc}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourgc}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourgc}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourgc}{4}}{}%
\StrMid{#1}{24}{24}[\mychar]%
\put(180,132){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourhc}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourhc}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourhc}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourhc}{4}}{}%
\StrMid{#1}{25}{25}[\mychar]%
\put(12,108){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourad}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourad}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourad}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourad}{4}}{}%
\StrMid{#1}{26}{26}[\mychar]%
\put(36,108){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourbd}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourbd}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourbd}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourbd}{4}}{}%
\StrMid{#1}{27}{27}[\mychar]%
\put(60,108){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourcd}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourcd}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourcd}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourcd}{4}}{}%
\StrMid{#1}{28}{28}[\mychar]%
\put(84,108){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourdd}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourdd}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourdd}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourdd}{4}}{}%
\StrMid{#1}{29}{29}[\mychar]%
\put(108,108){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccoloured}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccoloured}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccoloured}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccoloured}{4}}{}%
\StrMid{#1}{30}{30}[\mychar]%
\put(132,108){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourfd}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourfd}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourfd}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourfd}{4}}{}%
\StrMid{#1}{31}{31}[\mychar]%
\put(156,108){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourgd}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourgd}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourgd}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourgd}{4}}{}%
\StrMid{#1}{32}{32}[\mychar]%
\put(180,108){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
- \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourha}{2}}{%
- \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourha}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourhd}{2}}{%
+ \ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourhd}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourhd}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourhd}{4}}{}%
\StrMid{#1}{33}{33}[\mychar]%
\put(12,84){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourae}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourae}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourae}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourae}{4}}{}%
\StrMid{#1}{34}{34}[\mychar]%
\put(36,84){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourbe}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourbe}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourbe}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourbe}{4}}{}%
\StrMid{#1}{35}{35}[\mychar]%
\put(60,84){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolource}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolource}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolource}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolource}{4}}{}%
\StrMid{#1}{36}{36}[\mychar]%
\put(84,84){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourde}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourde}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourde}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourde}{4}}{}%
\StrMid{#1}{37}{37}[\mychar]%
\put(108,84){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolouree}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolouree}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolouree}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolouree}{4}}{}%
\StrMid{#1}{38}{38}[\mychar]%
\put(132,84){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourfe}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourfe}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourfe}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourfe}{4}}{}%
\StrMid{#1}{39}{39}[\mychar]%
\put(156,84){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourge}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourge}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourge}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourge}{4}}{}%
\StrMid{#1}{40}{40}[\mychar]%
\put(180,84){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourhe}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourhe}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourhe}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourhe}{4}}{}%
\StrMid{#1}{41}{41}[\mychar]%
\put(12,60){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolouraf}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolouraf}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolouraf}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolouraf}{4}}{}%
\StrMid{#1}{42}{42}[\mychar]%
\put(36,60){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourbf}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourbf}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourbf}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourbf}{4}}{}%
\StrMid{#1}{43}{43}[\mychar]%
\put(60,60){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourcf}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourcf}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourcf}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourcf}{4}}{}%
\StrMid{#1}{44}{44}[\mychar]%
\put(84,60){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourdf}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourdf}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourdf}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourdf}{4}}{}%
\StrMid{#1}{45}{45}[\mychar]%
\put(108,60){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolouref}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolouref}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolouref}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolouref}{4}}{}%
\StrMid{#1}{46}{46}[\mychar]%
\put(132,60){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourff}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourff}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourff}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourff}{4}}{}%
\StrMid{#1}{47}{47}[\mychar]%
\put(156,60){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourgf}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourgf}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourgf}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourgf}{4}}{}%
\StrMid{#1}{48}{48}[\mychar]%
\put(180,60){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourhf}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourhf}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourhf}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourhf}{4}}{}%
\StrMid{#1}{49}{49}[\mychar]%
\put(12,36){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourag}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourag}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourag}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourag}{4}}{}%
\StrMid{#1}{50}{50}[\mychar]%
\put(36,36){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourbg}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourbg}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourbg}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourbg}{4}}{}%
\StrMid{#1}{51}{51}[\mychar]%
\put(60,36){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourcg}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourcg}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourcg}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourcg}{4}}{}%
\StrMid{#1}{52}{52}[\mychar]%
\put(84,36){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourdg}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourdg}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourdg}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourdg}{4}}{}%
\StrMid{#1}{53}{53}[\mychar]%
\put(108,36){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccoloureg}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccoloureg}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccoloureg}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccoloureg}{4}}{}%
\StrMid{#1}{54}{54}[\mychar]%
\put(132,36){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourfg}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourfg}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourfg}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourfg}{4}}{}%
\StrMid{#1}{55}{55}[\mychar]%
\put(156,36){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourgg}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourgg}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourgg}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourgg}{4}}{}%
\StrMid{#1}{56}{56}[\mychar]%
\put(180,36){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourhg}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourhg}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourhg}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourhg}{4}}{}%
\StrMid{#1}{57}{57}[\mychar]%
\put(12,12){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourah}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourah}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourah}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourah}{4}}{}%
\StrMid{#1}{58}{58}[\mychar]%
\put(36,12){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourbh}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourbh}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourbh}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourbh}{4}}{}%
\StrMid{#1}{59}{59}[\mychar]%
\put(60,12){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourch}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourch}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourch}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourch}{4}}{}%
\StrMid{#1}{60}{60}[\mychar]%
\put(84,12){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourdh}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourdh}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourdh}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourdh}{4}}{}%
\StrMid{#1}{61}{61}[\mychar]%
\put(108,12){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccoloureh}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccoloureh}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccoloureh}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccoloureh}{4}}{}%
\StrMid{#1}{62}{62}[\mychar]%
\put(132,12){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourfh}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourfh}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourfh}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourfh}{4}}{}%
\StrMid{#1}{63}{63}[\mychar]%
\put(156,12){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourgh}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourgh}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourgh}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourgh}{4}}{}%
\StrMid{#1}{64}{64}[\mychar]%
\put(180,12){\expandafter\othellodiscfromstring\expandafter{\mychar}}%
\ifthenelse{\equal{\mychar}{X} \OR \equal{\mychar}{x}}{\setcounter{disccolourhh}{2}}{%
\ifthenelse{\equal{\mychar}{O} \OR \equal{\mychar}{o}}{\setcounter{disccolourhh}{1}}{}}%
+ \ifthenelse{\equal{\mychar}{3}}{\setcounter{disccolourhh}{3}}{}%
+ \ifthenelse{\equal{\mychar}{4}}{\setcounter{disccolourhh}{4}}{}%
} \ No newline at end of file