From 8f0deb8c358ffa271a582926953a4b195c504abb Mon Sep 17 00:00:00 2001
From: Zening Li <zeningl@student.unimelb.edu.au>
Date: Fri, 28 May 2021 08:44:01 +1000
Subject: [PATCH] V1.1

---
 Cribbage/cribbage.log                         |  54 ++++++++----------
 Cribbage/cribbage.properties                  |   4 +-
 .../Cribbage/cribbage/Cribbage.class          | Bin 16020 -> 15982 bytes
 Cribbage/src/cribbage/Cribbage.java           |  27 +++++----
 4 files changed, 38 insertions(+), 47 deletions(-)

diff --git a/Cribbage/cribbage.log b/Cribbage/cribbage.log
index aa5c683..b8ec5f8 100644
--- a/Cribbage/cribbage.log
+++ b/Cribbage/cribbage.log
@@ -1,33 +1,25 @@
-seed,30006
+seed,55510
 cribbage.RandomPlayer,P0
 cribbage.RandomPlayer,P1
-deal,P0,[AH,3H,4D,4S,7D,8C]
-deal,P1,[AS,3S,6S,9S,TS,JS]
-discard,P0,[3H,7D]
-discard,P1,[3S,9S]
-starter,3D
-play,P0,4,4D
-play,P1,10,6S
-play,P0,14,4S
-play,P1,15,AS
-score,P1,2,2,fifteen
-play,P0,23,8C
-score,P0,1,1,go
-play,P0,24,AH
-score,P0,2,1,go
-score,P0,3,1,go
-play,P1,10,JS
-score,P1,3,1,go
-play,P1,20,TS
-score,P1,4,1,go
-show,P0,3D+[AH,4D,4S,8C]
-score,P0,5,2,fifteen,[3D,4D,8C]
-score,P0,5,2,fifteen,[3D,4S,8C]
-score,P0,9,2,pair2,[4D,4S]
-show,P1,3D+[AS,6S,TS,JS]
-score,P1,8,4,flush4,[AS,6S,TS,JS]
-show,P1,3D+[3H,3S,7D,9S]
-score,P1,10,2,fifteen,[3H,3S,9S]
-score,P1,10,2,fifteen,[3D,3H,9S]
-score,P1,10,2,fifteen,[3D,3S,9S]
-score,P1,20,6,pair3,[3D,3H,3S]
+deal,P0,[2C,2H,7C,QC,QD,KH]
+deal,P1,[AD,AH,TD,JS,QH,KC]
+discard,P0,[2C,QC]
+discard,P1,[JS,KC]
+starter,8H
+play,P0,2,2H
+play,P1,3,AD
+play,P0,13,QD
+play,P1,23,QH
+score,P1,2,2,pair2
+play,P0,30,7C
+play,P1,31,AH
+score,P1,4,2,thirtyone
+play,P0,10,KH
+play,P1,20,TD
+score,P1,5,1,go
+show,P0,8H+[2H,7C,QD,KH]
+score,P0,2,2,fifteen,[7C,8H]
+show,P1,8H+[AD,AH,TD,QH]
+score,P1,7,2,pair2,[AD,AH]
+show,P1,8H+[2C,JS,QC,KC]
+score,P1,10,3,run3,[JS,QC,KC]
diff --git a/Cribbage/cribbage.properties b/Cribbage/cribbage.properties
index fba8e4a..07cd098 100644
--- a/Cribbage/cribbage.properties
+++ b/Cribbage/cribbage.properties
@@ -1,7 +1,7 @@
-#Seed=55510
+Seed=55510
 #Seed=12345
 #Seed=1248
-Seed=30006
+#Seed=30006
 #Animate=true
 Animate=false
 #Player0=cribbage.HumanPlayer
diff --git a/Cribbage/out/production/Cribbage/cribbage/Cribbage.class b/Cribbage/out/production/Cribbage/cribbage/Cribbage.class
index 741a399389144ae4f656afaf3367d4e2d2a1f342..6c70f9e298f56a3fb038383ee51473a682db7d22 100644
GIT binary patch
delta 1309
zcmbPI`>uxT)W2Q(7#J8Vm<2a-2@2bBF=#T*<YAn}SkK77m7AZEnN}H`kzdZiIERse
zw>TreTqnRlN3~d6wU~>+f^i-X<9tSSMh5ou)DoY>;*!mg!nr(5oEejE$Ul-g$H*X@
zl~|UjpP8@k>F-*RoLW$lnV-kbbYb!p1y#mNlYc3wFkYD~uV}z{ZE}F3D&vjGWs3QH
z_qmuJFg;{vdc?zE#`JjdXT>ApPZ=4Q7#aE5n4WVny<mFD&h(0h={3`v&F7R@7+K#j
zGN@@xwwF<z{70EH`x7Grb2MWt2h$fu2F{e!#2k=&89A7~!MTPyj2uiq7#X-zGK-TF
zi&AtLK?1)R890ke5{pVwi$L5zj126-si`Se3XB{~{}>tAic?clbQn3985kK@7<B>+
zIGC9x7pQo#a4|9{PIeSioP1w}pOJU+dlfAfentkl$?{5ao2^w11VW}Wa4;}2FfdB*
zW~_|d&RFfErM-=D#wJE?VaD04dl~a0nYFaGFxqZooV$(DIXIF9#4~3$+Qujxyo0fH
z8>6^3^G?PFCI)S-EeyMv^>#A0GBHfvZ))Lzteyo~JqtoT3q-xP))q!{79)^7T3Z;b
zb~1LbFlg^&>|taG*J7Fc&{V7*$uL<YtF^W;%A)83If4bE)nAKc8)N@Q1_lNuralG+
z20sR21_nk?1`b9q23|%V1`9@C275+725&}xhIqyRhHS<_h62W5hS`iE42u{;8P+j|
zF&ttHXE@0i!C-ujF^b_kV>BZtV+^AxV=SW-V;oaI0|SE?B<z?bF>GUCVBlaBX4=QJ
zoq>^ofpOMkS@UGwL<U~QBnBzQWCnG{6b2K<R0c=JG=xqDC#X&a1}CQdlh>L@nr1R^
zFlIA|GUhNSG3GMpGv<L+D=;uKFfbUvRU0tv2iwEJpuu#2>ELE-3x6iYqRHJ>;l9O;
zlNd`FXEK&DE?_KUT*6qvxR$Y!aTjA1<9^0!#-ofijHeiD8P74+F@9idWc<n4#Q2x7
znTd(9g^7)^m5Gb7ok@nVgGrgOlS!SiYqGwzCi5Yt!<(b6{Tb^gGH@_XW)Nna!XU>u
zl|hqn27?LXOa@EFSqu)0GZ=yx=Q6}IE@VhyT*OeoxP+mCaVbL$<1&Ue#uW^c8CNqb
zWL(d%hH(SKVaAON=NLCJJZ0R*@R@NtBP-($MsdbnjPi`T!G1MiU}Z32kYhT+bd-UK
zp@Ko0=@{b)P&f-PDli>q)CLE%1k(wolanoNrPWR`FfmPMU|_IhVE@nHz`)GTbef&X
zjGf7ofsvgl^gjbT0}DIT>B&{Lvf^hL7#R2%*qF{TooBkpbeZWY({%<8rkj)3*_zki
z0w<K)Om`R<7<d?18Kf9}86PvSGw?CpWnf_NVBluD$H2(+gy|UrGt*n9_e>wa{EuMr
zGno7eCclHppJ4JgnEVSS|AR<oMrKevIx%oCurp{fvp7gH@G)pIvpPr`Fi0^lFfa&k
tFhnz0Fta&GGWs%TGP5%<Fg|9`WaeOCVCH1J!OYFZ$;`vd$1K1g2>`)fHnac$

delta 1357
zcmaD?Go_a6)W2Q(7#J8Vn1wcS2@2bBFwSIT;4RL`FV_h$&`~YcRxRdYuwb0c!#Iag
zosoe(J+;IqvABebL6dPF5955sdPWAW-29Zxw94R&{PN9_!nr&`+yw?6iFql`iA5>J
zj11fbh8~ko$Ul-g&&VL0l~|UjpP8@k>F-*RoLW$lnV-kbbaC<#1y#n&lV2&QFkYR^
zuV}z{eX@h1D&x(`X^Q!L54e~fGCg8vdd$OM#`I+JW5pxl&lnk)7#aE5m|k!(y<~dD
z&h(mx=?&A{&HI#C7+K#lGN@@xwwF<z{6?8G`!gd0b2MWt2h&$Z2F{e!#2k>f7&(}}
z!?}h!j2uiq85y`!GK-TFi&AtLK?1)S890ke5{pVwi$L7Jj126-si`Se3XB{~{}~zB
zic?clbQn3985tQ^7<B>+IGC9yC#ZO_a5FL}PIeSioP1t|pOJ6!eHASh0Y(P7$^1%k
zo3&L91VYv_a4;}4Ffb}_V&oQPoWZ)6F)xx?OKS_G?KZ|)+ZdgLBUwN^b7rG$jKaY?
z7)!S?itlEujNHyx?W4`Sld*w`L0fAJ!)|81os6wa3|iXT80Su2Z)#DGteFK<v#$;d
zShEgDGYeF+&NjxmI$B#8%~^~<F3{S-V6~I6gM~q7Cu0vILpa!p3vfA67U4i0tu6M9
zvM5G?t$~>1uf?*Bv40~20|OIN9|HqJ5Q7K<1EUv%HlsI#F{2NI6{9bM+vK@s;(?19
zLm5^vhB0ho3}@KQ7{PF!F_PgLV>H8m#u!FH##lyK#yCbL#(1WF1_lNNNH8)@V%WyO
zz+lYqfoUJpb_Pa<#S9Hh`<b>gFflMN&Y%3<ELk*(ftN9vL5eYjL7g#`!Gtl5!I3e2
za=y7Z<AKTT=8=L~3>=I(45Ey=3`&f74El`ulRuh^^Bw@3#=)S$bdc%LW>E`&CdT5)
zsaD~>C5)38OBrV}mN711EN5K8Sjo7Sv5IjQV>RP`#u~<>jJ1rX80#3%G1fDFU~FRi
z$=J;Jm$8M3iLsT5jj@f1i?M@AhOv`LnX!vWow0i|r?n>YVWuOSO|AVI>nAaAFiv3*
zW}M0($2g5alW``43F9mVOUBs@4vaGyf*9v9#4|2pNMT&eP{6p9p@MN4Lk;6{hBn5P
z43inxFf3%;z_5mKBg0|FO$_H4H#0nC+|KZsaR(zS<4#6##@&qajC;T#XTreBV8S5B
zbd>2B0~139gEZ4|#uK3Ms%KPSI>D&Tz`(%4D8Y1+=@bJa!y1MXrnyY>7?_wAFfcIi
zz(r0oFfmPMU|_IhVE@nHz`)GTbcUVDjGf7ofsvgl^gjbT0}EV;ohcM7%KnpqQT7jm
zC_975F9sf_vkVLjd<<+%=a?=qU1GYzbd8Pa1_KAvt;rp>=JmJ1$>k2yU9hdJ3{s4~
zjE@=E8Tgp)F)%QAFmN;7XJBM{%JiIpndu$V2d0l;{wFZ`1x$VelRv=ZFEIHBO#TCr
z%nV?XiJ66gfx(G^gMpnvlbO{)l7WvwlbOvy(ttsVfq{WRfP*2L!Gf9HL6XszL6ez-
efr0TcgC;X40|PS`;|*pWHcn<<W`1Tt21x+&a7pg~

diff --git a/Cribbage/src/cribbage/Cribbage.java b/Cribbage/src/cribbage/Cribbage.java
index 522a7fa..d65dd4b 100644
--- a/Cribbage/src/cribbage/Cribbage.java
+++ b/Cribbage/src/cribbage/Cribbage.java
@@ -326,27 +326,26 @@ private void play() {
 }
 
 void showHandsCrib() {
+	HandCards handCards = new CribbageHandCards();
+	modifyShow(handCards);
 	// score player 0 (non dealer)
 	log.writeLog(String.format("show,P0,%s+%s", canonical(starter.getLast()), canonical(handsCopy[0])));
-	HandCards p0HandCards = new CribbageHandCards();
-	p0HandCards.setPlayer(0);
-	p0HandCards.setScore(scores[0]);
-	modifyShow(p0HandCards);
-	p0HandCards.sendHandCards(handsCopy[0], starter, deck);
-	scores[0] = p0HandCards.scoreHandCards();
+	handCards.setPlayer(0);
+	handCards.setScore(scores[0]);
+	handCards.sendHandCards(handsCopy[0], starter, deck);
+	scores[0] = handCards.scoreHandCards();
 	updateScore(0);
 	// score player 1 (dealer)
 	log.writeLog(String.format("show,P1,%s+%s", canonical(starter.getLast()), canonical(handsCopy[1])));
-	HandCards p1HandCards = new CribbageHandCards();
-	p1HandCards.setPlayer(1);
-	p1HandCards.setScore(scores[1]);
-	modifyShow(p1HandCards);
-	p1HandCards.sendHandCards(handsCopy[1], starter, deck);
-	p1HandCards.scoreHandCards();
+	handCards.setPlayer(1);
+	handCards.setScore(scores[1]);
+	handCards.sendHandCards(handsCopy[1], starter, deck);
+	handCards.scoreHandCards();
+	updateScore(1);
 	// score crib (for dealer)
 	log.writeLog(String.format("show,P1,%s+%s", canonical(starter.getLast()), canonical(crib)));
-	p1HandCards.sendHandCards(crib, starter, deck);
-	scores[1] = p1HandCards.scoreHandCards();
+	handCards.sendHandCards(crib, starter, deck);
+	scores[1] = handCards.scoreHandCards();
 	updateScore(1);
 }
 
-- 
GitLab