From 25fb89f9cc5eb35ef5a368a50c251c38cad2144a Mon Sep 17 00:00:00 2001
From: deadlocker <deadlocker@gmx.de>
Date: Wed, 13 Apr 2016 18:09:18 +0200
Subject: [PATCH] changed AI wishColor choose method

---
 class/application/Controller$3.class | Bin 1256 -> 1256 bytes
 class/application/Controller$4.class | Bin 3337 -> 3337 bytes
 class/application/Controller$5.class | Bin 1580 -> 1580 bytes
 class/application/Controller$6.class | Bin 1498 -> 1498 bytes
 class/application/Controller$7.class | Bin 2481 -> 2481 bytes
 class/application/Controller$8.class | Bin 2452 -> 2452 bytes
 class/application/Controller.class   | Bin 20703 -> 20749 bytes
 class/logic/AI.class                 | Bin 6027 -> 6766 bytes
 class/logic/Game.class               | Bin 9067 -> 9067 bytes
 src/application/Controller.java      |  10 +-
 src/logic/AI.java                    | 131 +++++++++++++++++----------
 src/logic/Game.java                  |   6 +-
 12 files changed, 91 insertions(+), 56 deletions(-)

diff --git a/class/application/Controller$3.class b/class/application/Controller$3.class
index 5af37a53a20cac3ee4c586dd3c0da87139da798f..2128f395e0c1285f380c5a39a35da7d4cc20120f 100644
GIT binary patch
delta 23
fcmaFC`GRu;GYjL_$t)}htiKpE7=BOAWT^)LWc>&%

delta 23
fcmaFC`GRu;GYjMA$t)}htUnku7=BL9WT^)LWWxw1

diff --git a/class/application/Controller$4.class b/class/application/Controller$4.class
index 83d0a0d6d7d5d44b27d64481536e0e22438f65a6..18e172e014f9f90cf9c77aac8d174c5207080d6d 100644
GIT binary patch
delta 104
zcmeB_>Xh1Wh>J0N^I<L>#?TlBX~sAPCB_5>C&m<pV8%3tXvTDg6vhmOa>h)CI>s!9
zF2)>&IgEJ>OBwSSHZT@4>|iWn*vDARaG0@_;TU5X!*Rw6hSQ8y4CfeY8LlxlFuY-G
Jp6tSN6aZ=s9DV=*

delta 104
zcmeB_>Xh1Wh>J0F^I<L>#?UARX~q}^CB`@gC&na(V8#@NXvS2A6vi}$a>jIqI>ro!
zF2*c|IgB|BOBr(+HZbNh>|iWl*vDANaG0@};TU5H!*RwkhSQ7{4CffD8LlzbF}z`H
Job1AL6aZm498drN

diff --git a/class/application/Controller$5.class b/class/application/Controller$5.class
index 50f44e4cf0791a6e12b8034d9836a60254a4090e..8af2d7a21736cb309334f3db6649df62f7150a7c 100644
GIT binary patch
delta 43
zcmZ3(vxa8_6D#Ai$;_<nlCv4u8Rs$xG0tNUWn9Q0!?>8ifN=?fKjYHLi&;AX?R*OG

delta 43
zcmZ3(vxa8_6D#AC$;_<nk~10D8D}#HG0tHSWt`6-!?=*afN>FnKjY%bi&;AX>_`gW

diff --git a/class/application/Controller$6.class b/class/application/Controller$6.class
index 3bf96ae40a12298d8a832db127f13f189970680a..c6e728912a18f3fbf8453904330e8e10bf5fec52 100644
GIT binary patch
delta 43
zcmcb`eT#d;eip`)lMk>|NS<S0XS~25#CVZGl<^9K4C6Hhb;j!q4vaS@2eNho085e$
A;Q#;t

delta 43
zcmcb`eT#d;eip{#lMk>|NS<L}XFSIs#CV=Tl<^XS4C56Bb;hd<4vg0(2eNho07_mB
A(EtDd

diff --git a/class/application/Controller$7.class b/class/application/Controller$7.class
index 2eaef6fcc54693b6cfbb760248ece358e8144d99..924830cc9a644c72f247fc5b0f8afae39ecf9e96 100644
GIT binary patch
delta 83
zcmdleyis_=4tB<mlXtRza{R`?&G?-`i17!5DB~{%O~yYA`iwsqESMM=!k8EtvY40{
p%9&UgI+)lPCNr@!Ok?6=Sjfc9u!4z)VFME{!!9QN$!|E00s#1}6<7cO

delta 83
zcmdleyis_=4tB=(lXtRza{R);&G?l;i18bPDB}+XO~zjg`i$QgEExYWgfaeS$YNq(
pC}(0~=wM=Dn9Rh=FpY_WVIdPI!wM!Yh7C;I47-?kC%@r13IIst7cu|<

diff --git a/class/application/Controller$8.class b/class/application/Controller$8.class
index f0bab148e9474b147897c65235e50a0deb680447..317db5cfe359ab74d87b9e022e8e2e9ded25904a 100644
GIT binary patch
delta 83
zcmbOtJVkiJGIquZlb5qUcbv+=%`}Zch-o^5DAP;^O{Uol`b^UqESTmq1TZaNh-O;I
qkioQ=p^|ASLkH6`hHj>n4AYoaG0bIJ&9Ibd4a0h-b(7C?90dT??ii2&

delta 83
zcmbOtJVkiJGIqw^$;;WFJ5FNYW}3_(#59FLlxZ4+CesWCeWoc47EE&(0+{A9L^I7}
q$Y5H)P|382p@V5LLpRehhG|U88RjyrU|7nul3_j5>dEIhjsgJ9t{7SX

diff --git a/class/application/Controller.class b/class/application/Controller.class
index 02b838e5e9596bac1ddb95e100477043cbca5fd7..5cfe2b26c0c85dea77f618ede9f90e9d5812753a 100644
GIT binary patch
delta 1539
zcmcb=kg<0W<AxGFE=ENLW(H;k28PL#>-2)P9ksSFJlA2_#wdS)QFR-m`Zh*wtt|}i
zby(3vKI$+}zM&__Y{tMl`KO*{U<JcEhAxKn43ii(GE8G&U{HXV$uON^1_KC8W;9|n
zW?%%_!)U^2%D}{E#=yY90~ax8U}CgjU|`^2VEWDA^P9nSa;E-4&ut7W3_BRu8Fnz3
zFzjZqXV}Bw&ajuki(x-QD8m7UScZcP2@HoBvKfvr6f+!UC}TLz(8zFtp_AbxLl47g
zh6xO37$!4ZWSGrxX>zea4Cgfl7KR%PJPbD{-!SmtyvxABaF0QN;r?VzLl4f!3>*wk
z7z7xePOdU^;C#uz!tjcLgW>h$!-fv5?-@84K1}8?3g`X8z`^j9L7d?qgFM6k$vH+L
ztjr7?j4YFn8hLPXFmNz(G6*noO%^jQ6y#&zViaJIW)x(QV-#V~XB3+}!#IRhih+Ys
zdh$o(AXa$>0Y-(%9wt7FDwC(0MDl7f2r+6gNHS_OC@|`7{%x|4G1Z8{jM13EmeGX4
zh0%<`gVBN^kkOJMlF^DGiP46khS83piP3?fgVBj$A)_<H8Ab<&+l+P$uNd7JJ}|m7
zd}j1w_{r$Q@So9-QIyf2(Sgy2(Vx+aF^(~aF@-UdF`Y4-v6``Mvz&PXqhU7#4`VNb
zC}SUk0%Jde8sh{89ma_aMvRjfEEp#<*fCCF@ME0H5XU%;A(wFlLlNW3&Fd|eF~+WC
z;AC9KAjG(yL4t83gBs%|23N){3;~Sm8R8jtFk~?9WGG?W%`k~^55rN$eGC^F4=~(f
zJjn2r@esos#={Js7>_XgU_8q3kMS5I3*&J{QN|ODYK$it%^7bq+A!YPyvb@7qw50(
zZpKFpGK`NIlo_8eXfr-#FlKzl;K=xb!He-FLnz}bhG@pu42g_y7}6QvGUPJ8V<={P
z&(O^Hfnh4+M~1~rLJTXIgf~yLnab!X&cMPX$so@p#h}e3&0x+X%izo;&*0Cb$dJgS
z%23Rt#n8&6&oG_IlwlK-8N&`HbA}^KmJAn|tQqbw*)qIia%5y+a$^)?^4^?pC(NiA
z#30WU%%I8?%3#P8&S1+F$>7Np%@EBL&ydTM!cfnYxp}euG{*V@1|g;*205k@1{J1K
z1|6m{1~aB|1_!1J27jh1h6tu=hGeE1hAgI9h61KKhBBslh8m^@h9;&ah6PM53>%qR
z8ICZuF&t-VXSl`G!SI@?li?jx7b7E6H=__!52Gm41V$C6jf|R1o50!5gMpoafl&*V
z?HIKt?{GXTxs8E?X*&Zy(+&n9rd<r`OnVq~nRYOkG40<x&#8zp@Gt`l(@_RCrsE7!
zOeYzXm`*cjF`Z$sWID$X%5<I~h3O(gG1Fy+CZ?+lQ<<(Y%wW37u$t*M!#bvW3<sGW
zFdSie%y6CQ8N*|y7Yxssjx&5<dbK&x<q>1zI|de}4-9NfpBSW>zA>mU{b0~#`pIC+
z^ozlP=`VvP(?5n#W=4isW@d&QW>$s{W_E_@%$y9%n7J9YGV?N=VCG{u%`C`pk6D=E
zA+s367iI~D@66JST+DKeyiA`M#hDd0FL5(xlvH8hU{+<|XI5hnV%A`=VAf)=V^(8u
zXV%^P#a)59-iU#f*@S_M*^GgQ*@8il*@{7(*@nS^*^a@V*@Yp8*^Qxx*_~k$vnRuR
zW^aZy%)Sgenf)2gFb6Q4XAWj~#2m`-lsSUo2Xhp|Z{}D=KIQ~QDdt2*S>|L$Tjmr-
zXXZ3UZ{`ff2<9xtROTGUBIZ2CR_1)h4(1}p*~}%3^P-r`88<RlGHzk6VLZ-U&v==+
zf$<u16XQ4LX2w6vtxPP;?M#BqolJ7f-Avldy-aq@eN2wb6PZGoCo_dJPh-krp23vM
zJe#S3c^*>_^L(a$=EY2tm@Sy*FfZNw*83r&;7SG-=G6>h%xf8>nO8HYFt6Wy-<O?H
ob~6Jv^A-k8=B*6o%-b09n71?3Fz;aKV&2Kn&%A3hv;Q4N0KzMHMF0Q*

delta 1509
zcmeBO#CU%p<AxGFE{4wx%nZy73=H{`>-2)zWwo|2eAHo`{6|lYS&xBxvaG(Qdmh7j
zhG`583<?l+4AU8AFn~ZlqY<Mq10zT;qY0xa0~4be0|NsOT*RD#iP3_Afq{*I={JLq
z;^gW22R*kiurO?6U}xCIV8XDI!Jc6kgFC}+1}}!a451AB7-AXrGbAt^WXNVX#8Av|
zn4yf}C_^K|F@{ct;|x6vCmAL%oMM>FaGqf{!-dHU4PrR2Ft9LOW8h)9KAFwXgYz~6
z2g4l(0fxJi!wo$+A2M(-JYo=FcszN9p#$f01{Q`F3>*wECx0|_V13KL!SHVKM?;ax
zUPjKmpBOk8J~N0j{9%x1_&a%)Q3xv|0|z4$Sf1V3gp-YdgOQy<fRSUei*cbK4+9q?
zAA>X_KZ6{j5Q9FW$mC<jA*>P%9E_5a<xPTEWf=q*<tCSz_%JF>K5P=ntIi<AsKFq~
zsL7zfsJ&U!bRT1?0fQN%A%iWW5rYe(34;ft8ABkWIYT6)1w#^}6+;c94MP*79YY7B
z1H(c_M}{+ub_}-}Z5UoLx-fiTbY=L==)v%l(Tm|fqYtAfqc5WaqZgw;qX%OgV*q0c
zV=!YnV<=-aW6NeA^8`l2P6i&vZU#}t9tH)*UIsPBJ_a4eeg-4P2@DpD6B+CnCo%Xj
zPG*Q>oWhXHxQwBQarx%E7Rwl8S2J)ju3->jT+1NAxSm0caRY-Z<0ggx#<dLbjN2G8
z7`HQ&Fz#fS#JG#$DB~W6i;VjiZZYm>c*=Ny;SJ+KhEI%#7=ADwX86Z=gpq~uD5EIj
zF-A4U<BaBvHyLdhZ*6{HHH*>p9s@Vy0|pt!hYZS$j~KKWA2S#;K4EZVe8%9#_?#h>
z@dZOP<4cA_##apKjISAT8Q(AzGrnbLW_-smmGM2pVkQBG6-<Jg_uEWm^b}=aVG?JM
zXOdvhW|CwuXOd=cW|C#_XOd?~WKw1*X3}72WzuDs&ScE6iOGav2a_qo5hinn3rv;_
zcbKdh-Z9xTGBCL?3Nd+Zo@*z}s2IQ?&lJd@$`s6C$P~(8%M{Mw$rQ;D%@oU!%ap`W
z&y>FTqWv_+%v=T`rhEoDra}f4rXmI%reX#&rV<7RrcwrfrgDY|rV55+rb>n^rYeR4
zrfP;VrW%GCrdoz3rh0}2OpOd1nVJ}mFf}tAXKG=%#nj61nyHQ99aB3aBU1;X5K||k
zC{r(^3e!49O{VpeFE~Dy+|0niw1t76X)A*e({=`RrkxDBOj{YunD%Tw<5a{Lcz}V0
z=@0`O(-8(Kreh3BOeYw$m`*ZSGM#1!Wje!<!gP+InCSvT6VoMzsZ5s{W-wi2Sj}{U
zVI9+LhJ#FZ8ICYLV7SionBg(gQ-)_uM;JaZJ>T5#@`$niH3JLNTLw0!_YBfZpBYq`
zzB1@CePgg?`p)3M^ozlh={G|t(?5n-W(I~FW+sLXW)_C&%xnzHm^m1>GIKGUVCH5x
z&CJJek6D1>A+s>U7iLk0@5~a6T+GspyiD&I#hGQn1xpYE2Ll761gv0TlwkVGXbLJu
zHh*xFWRz57;9yo_;Ad855MowkuwYhauwzzcaA(%qtmL7<T(8H#%51>E#cagD!)(H!
z$ZW=-&TPTpz--0f&+NdE!|cS+!|cp3iP@E5KC?T+8fH(1oy^`0XPA8$&NKTnJYo)H
zc*-2Y@Pj#w;Wu+6BOh}NqZD&2qbzegqb+j+qcd|7qc?L3V+3;=V=8k7V-a%}V=Hqu
zV+V5{<80;v#(7c9#f%%7OBuH?S1=xDu4cT<T*G*cxsLH0b3Nl9=0+wK=4K{A=2j*-
z=5{7+=1wL%<}M~j=3b@{=6<Gd=1ELh%u|?hnWr-~FwbJ@VV=#@&pe-L60-@@9Oi|a
zrF|YU3NB?}VP4K4#=Me2nt3^c3iImCyngJAvg;YRnKv+KGH+xsXWqn+$Gn-LhItD^
R7xPwze&%hP4gK#h0svCqX-ohB

diff --git a/class/logic/AI.class b/class/logic/AI.class
index df353ee3ae663b8b959e6662320e38974158bf54..a3f028bb804f8d16c225286e94be4567d305afbc 100644
GIT binary patch
literal 6766
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

literal 6027
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

diff --git a/class/logic/Game.class b/class/logic/Game.class
index 96d0da5970d79a85319aa8ca68ad9face9bcbbc4..9e2fd9f9c22dc0f1b41c3b2ef245685d31c800d3 100644
GIT binary patch
delta 52
tcmaFu_S$X3IuUgjHm&UpZrd0<!?m_BIP7L{iWKr?!4UG_d{tx`9{}C?5i9@z

delta 27
jcmaFu_S$X3IuR~^Hm&UpZrd0<!zY)EsBOL{(#r<`nSTm3

diff --git a/src/application/Controller.java b/src/application/Controller.java
index 510ebe8..c3bb0b7 100644
--- a/src/application/Controller.java
+++ b/src/application/Controller.java
@@ -168,8 +168,10 @@ public class Controller
 		}
 		
 		if(ais.size() == 3)
-		{			
-			labelAI3Name.setText(ais.get(2).getName());
+		{		
+			labelAI1Name.setText(ais.get(1).getName());
+			labelAI2Name.setText(ais.get(2).getName());
+			labelAI3Name.setText(ais.get(0).getName());
 			labelAI3Name.setVisible(true);
 		}
 	}
@@ -616,6 +618,7 @@ public class Controller
 		}			
 	}
 	
+	@SuppressWarnings("unused")
 	public void moveCardFromDeckToAI(AI ai, ArrayList<Card> cards)
 	{
 		Card card = game.getDeck().drawCard(game.getDeadDeck());
@@ -809,6 +812,7 @@ public class Controller
 		}
 	}
 
+	@SuppressWarnings("unused")
 	public void setAIDeck(AI ai)
 	{
 		clearAIDeck(ai);
@@ -816,7 +820,7 @@ public class Controller
 		ArrayList<Card> deck = ai.getDeck();
 
 		int counter = 1;
-
+		
 		for(Card currentCard : deck)
 		{
 			ImageView current = createBackCard();
diff --git a/src/logic/AI.java b/src/logic/AI.java
index 30414e2..793f957 100644
--- a/src/logic/AI.java
+++ b/src/logic/AI.java
@@ -1,7 +1,6 @@
 package logic;
 
 import java.util.ArrayList;
-import java.util.Random;
 
 public class AI
 {
@@ -34,7 +33,7 @@ public class AI
 	{
 		return wins;
 	}
-	
+
 	public int getID()
 	{
 		return id;
@@ -53,31 +52,31 @@ public class AI
 	}
 
 	public Card playCard(Card card)
-	{		
-		deck.remove(card);		
+	{
+		deck.remove(card);
 		return card;
 	}
 
 	public ArrayList<Card> getValidCards(Card lastCard, Color wishColor, boolean challenge)
-	{	
-		ArrayList<Card> validCards = new ArrayList<Card>();		
+	{
+		ArrayList<Card> validCards = new ArrayList<Card>();
 		if(challenge)
 		{
 			for(Card currentCard : deck)
-			{	
+			{
 				if(wishColor == null)
 				{
 					if(currentCard.getType().equals(CardType.DRAW_TWO) || currentCard.getType().equals(CardType.DRAW_FOUR))
 					{
 						validCards.add(currentCard);
 					}
-				}	
+				}
 				else if(wishColor.equals(Color.ALL))
-				{										
+				{
 					if(currentCard.getType().equals(CardType.DRAW_TWO) || currentCard.getType().equals(CardType.DRAW_FOUR))
 					{
 						validCards.add(currentCard);
-					}						
+					}
 				}
 				else
 				{
@@ -91,23 +90,24 @@ public class AI
 		else
 		{
 			if(wishColor == null)
-			{	
+			{
 				for(Card currentCard : deck)
-				{								
-					if(currentCard.getColor().equals(lastCard.getColor()) || currentCard.getType().equals(lastCard.getType()) || currentCard.getType().equals(CardType.WILD) || currentCard.getType().equals(CardType.DRAW_FOUR))
+				{
+					if(currentCard.getColor().equals(lastCard.getColor()) || currentCard.getType().equals(lastCard.getType()) || currentCard.getType().equals(CardType.WILD)
+							|| currentCard.getType().equals(CardType.DRAW_FOUR))
 					{
 						validCards.add(currentCard);
-					}						
+					}
 				}
 			}
 			else if(wishColor.equals(Color.ALL))
 			{
 				for(Card currentCard : deck)
-				{								
-					if(!currentCard.getType().equals(CardType.WILD) && !currentCard.getType().equals(CardType.DRAW_FOUR))
+				{
+					if( ! currentCard.getType().equals(CardType.WILD) && ! currentCard.getType().equals(CardType.DRAW_FOUR))
 					{
 						validCards.add(currentCard);
-					}						
+					}
 				}
 			}
 			else
@@ -117,11 +117,11 @@ public class AI
 					if(currentCard.getColor().equals(wishColor))
 					{
 						validCards.add(currentCard);
-					}	
+					}
 				}
-			}		
-		}		
-	
+			}
+		}
+
 		return validCards;
 	}
 
@@ -134,7 +134,7 @@ public class AI
 	{
 		return name;
 	}
-	
+
 	public ArrayList<Card> getDeck()
 	{
 		return deck;
@@ -150,50 +150,36 @@ public class AI
 			if(challenge)
 			{
 				System.out.println("draw " + game.getChallengeCounter() + " cards");
-				ArrayList<Card> drawedCards = game.getDeck().drawCards(game.getChallengeCounter(), game.getDeadDeck());	
+				ArrayList<Card> drawedCards = game.getDeck().drawCards(game.getChallengeCounter(), game.getDeadDeck());
 				game.getController().moveCardFromDeckToAI(this, drawedCards);
-				System.out.println("deack after draw: " + deck);				
+				System.out.println("deack after draw: " + deck);
 			}
 			else
 			{
 				System.out.println("draw one card");
 				ArrayList<Card> drawedCards = new ArrayList<Card>();
 				drawedCards.add(game.getDeck().drawCard(game.getDeadDeck()));
-				game.getController().moveCardFromDeckToAI(this, drawedCards);				
-				System.out.println("deack after draw: " + deck);				
-			}		
-		}	
+				game.getController().moveCardFromDeckToAI(this, drawedCards);
+				System.out.println("deack after draw: " + deck);
+			}
+		}
 		else
 		{
 			System.out.println("choose");
 			System.out.println("AI chooses: " + getHighestValuedCard(validDeck));
-			
-			
+
 			Card playedCard = getHighestValuedCard(validDeck);
 			Color newWishColor = null;
-			
+
 			if(playedCard.getType().equals(CardType.WILD) || playedCard.getType().equals(CardType.DRAW_FOUR))
 			{
-				//TODO choose color that is mostly in deck (except black)
-				Random random = new Random();
-				int colorInt = random.nextInt(4) + 1;
-				switch(colorInt)
-				{
-					case 1: newWishColor = Color.YELLOW;
-							break;
-					case 2: newWishColor = Color.RED;
-							break;
-					case 3: newWishColor = Color.BLUE;
-							break;
-					case 4: newWishColor = Color.GREEN;
-							break;
-				}			
+				newWishColor = getBestColor();				
 			}
-			
-			game.getController().moveAICardToDeadDeck(this, game.getCurrentPlayer(), playedCard, newWishColor);			
-		}	
+
+			game.getController().moveAICardToDeadDeck(this, game.getCurrentPlayer(), playedCard, newWishColor);
+		}
 	}
-	
+
 	private Card getHighestValuedCard(ArrayList<Card> validDeck)
 	{
 		Card highestValuedCard = validDeck.get(0);
@@ -204,7 +190,52 @@ public class AI
 				highestValuedCard = currentCard;
 			}
 		}
-		
+
 		return highestValuedCard;
 	}
+
+	private Color getBestColor()
+	{
+		int[] times = new int[4];
+
+		for(Card currentCard : deck)
+		{
+			switch(currentCard.getColor())
+			{
+				case YELLOW:
+					times[0]++;
+					break;
+				case RED:
+					times[0]++;
+					break;
+				case BLUE:
+					times[0]++;
+					break;
+				case GREEN:
+					times[0]++;
+					break;
+				default:
+					break;
+			}
+		}
+
+		int maxIndex = 0;
+		for(int i = 1; i < times.length; i++)
+		{
+			int newnumber = times[i];
+			if((newnumber > times[maxIndex]))
+			{
+				maxIndex = i;
+			}
+		}
+		
+		switch(maxIndex)
+		{
+			case 0:	return Color.YELLOW;
+			case 1: return Color.RED;
+			case 2: return Color.BLUE;
+			case 3: return Color.GREEN;
+			default: return null;
+		}		
+	}
 }
\ No newline at end of file
diff --git a/src/logic/Game.java b/src/logic/Game.java
index dca0ec9..4fddf15 100644
--- a/src/logic/Game.java
+++ b/src/logic/Game.java
@@ -47,9 +47,9 @@ public class Game
 		}
 		else if(numberOfAIs == 3)
 		{
-			ais.add(new AI("Computer 3", 3, this));
-			ais.add(new AI("Computer 1", 1, this));
-			ais.add(new AI("Computer 2", 2, this));
+			ais.add(new AI("Computer 1", 3, this));
+			ais.add(new AI("Computer 2", 1, this));
+			ais.add(new AI("Computer 3", 2, this));
 		}		
 
 		gameCount = 0;
-- 
GitLab