From 1bd6eeb7b82e610f2c4eee6791c91e34413b4ede Mon Sep 17 00:00:00 2001 From: clement Date: Wed, 6 Jan 2021 18:09:08 +0100 Subject: [PATCH] correction de la limitation d'une carte pour jouer --- bin/game/Board.class | Bin 740 -> 830 bytes bin/game/Joueur.class | Bin 7930 -> 8162 bytes bin/game/cards/Card.class | Bin 1309 -> 1592 bytes src/game/Board.java | 4 ++++ src/game/Joueur.java | 14 +++++++++++--- src/game/cards/Card.java | 13 +++++++++++++ 6 files changed, 28 insertions(+), 3 deletions(-) diff --git a/bin/game/Board.class b/bin/game/Board.class index 3067fe93e1f90b06dda03577db06c25d5db64122..d57af3e26dfc72e5462e0e972b0734aba75b44ef 100644 GIT binary patch delta 125 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 diff --git a/bin/game/cards/Card.class b/bin/game/cards/Card.class index 919b78c8ffb9641f865958d8ecaccc6b5353a42b..b74ecc71302f6fea34f4704a78d7059257db35a7 100644 GIT binary patch literal 1592 zcmah}*-jKe6g|akOw;U}47i{oFredtE3SYBbOZwgqdpZg<kX$Y(3!7md|Dt)F8d_RzFI@T z_B|sF8!f0J3ssMEs;mQl$3$9uZ?zJ5D_RDWs#*IhI&i#_K+o8C{!q(mbUKAGf&TjN zOvQ1FDzGq$HY3`EjY(W28i~xhvP{n1|DlD!X$v`AN#Qa@s%vOjm7KCx!H$iqxJFY5 zWEj;DszQt}n4;Hh+`vs^^!B#$*woP2!cp=OOO_qQZ5t!Fz#%XU{W8HVEjQJi+>#}# zA7?&?qC;-^6;Cg{o!?&d^M09cS}9av^SRuPENPW)pk#4pUwaM!6Ri#TUhRik0#!aV z$6E0#K|wunjLT``%_Spee3;`9<8a5&WJZU(CNmr1%DLm(#v7bPK5d>>`Cf3%WWS>| z8{b8HHoJ$;UG$o@e;1jrVeSy0eMAH?;zUdnqmw8DL^;W*T}8nuoaU($XV4Q>$Z<6l z64`I){me}h3|KM@cGV;&4w8o(CTHrCGe?v8G>Ras2d z0Evi&z`5fSFE>m)e|+Lp!$i&!2^(7;M7H$)!sx5-7^fH6AGoxKsXg5K!V9$`-l_rX ztgMm_e^ccuj;i4H0HT!RP(~pN{jP literal 1309 zcmah|T~8B16g|@q`oUIOJ}L-)Afjzis-mJ6H40HGMT`&h)KEVR31yEWmj`09f% zJZK_dH1P-cql{;^3)Dhln#|6bOO;)LF6p|mye%M#3^tXlxtrX~n3m~26$oass{)}}yQ1O?^V**&KroJi;7F8rQS5_ z>&jV?>orA!l3kXyRq2>I_LCuZ(`*Q&N*xa@2*jx6NQBdy3wrdg{fCyp@~x>Yv} zWRN8rh0NAugPQyPVe^uOI3{o_f|~+^9S?e^s%FDg&aQz;&i^DXW*JHZ7)GJ*m4B8l}5I&SZc;PJ*|i)%g5QDMA-Z$910?p5(%-&)q`!KwL9V?BagB0~!62}oG(*f7Eif)%m{AHNNczNi zel>A8_YJ8%ZUWFmU0yQP1`Z#CFP;fbcY=pbgF~Dwg7yE5!_G1SmyVw};l<3IJg22% zqK!!SDg-Y7ADBNAc;)}VsWX9`1Paz}JUepZC&tzeF-{+@e+Spw2e|iz7uuUR-9|Rh zlF#=)@ZUd;hd!yxK?o2#PAAgCpJ;QC-hM_Rx26*n2KwY9!lAvOZg$XfD$Th8UeWX- k5_nD81r}NKil$qHe$PmaN1n5fi3lT@j73?yz#xE`zi5ioPXGV_ diff --git a/src/game/Board.java b/src/game/Board.java index 2d1f94a..b68791e 100644 --- a/src/game/Board.java +++ b/src/game/Board.java @@ -28,4 +28,8 @@ public class Board { return board[zone]; } + public int getNumberCardInZone() { + return board.length; + } + } diff --git a/src/game/Joueur.java b/src/game/Joueur.java index b4de8e6..463effb 100644 --- a/src/game/Joueur.java +++ b/src/game/Joueur.java @@ -219,7 +219,12 @@ public class Joueur { * cette methode a pour but d'executé les evenement de fin de trous des cartes */ public void endPhase() { - // TODO Auto-generated method stub + for (int i = 0; i < board.getNumberCardInZone(); i++) { + Card c = board.getCardInZone(i); + if (c != null) { + c.resetAttack(); + } + } } public ComsJoueur getComs() { @@ -312,14 +317,17 @@ public class Joueur { if (attackingCard == null) { throw new RuntimeException("invalid attack"); } else { - if (carteCible.equals("100")) { + if (carteCible.equals("100") && attackingCard.alreadyAttack()) { boolean isadvDead = handleAttackAgainstPlayer(attackingCard, adversaire); if(isadvDead) { phaseActive = false; } } else { - handleAttackAgainstCard(attackingCard, carteCible, adversaire); + if (attackingCard.alreadyAttack()) { + handleAttackAgainstCard(attackingCard, carteCible, adversaire); + attackingCard.haveAttack(); + } } } break; diff --git a/src/game/cards/Card.java b/src/game/cards/Card.java index 5ec4396..0012454 100644 --- a/src/game/cards/Card.java +++ b/src/game/cards/Card.java @@ -4,6 +4,7 @@ public abstract class Card{ private int attack; private int health; + private boolean notPlay=true; public Card() { attack = getDefaultAttack(); @@ -76,5 +77,17 @@ public abstract class Card{ } return health == 0; } + + public boolean alreadyAttack() { + return notPlay; + } + + public void haveAttack() { + notPlay = false; + } + + public void resetAttack() { + notPlay=true; + } }