From 051325686046c43f03b6dfd530d9af8f9e5ac328 Mon Sep 17 00:00:00 2001
From: Vincent <vincent.teissier@etu.u-pec.fr>
Date: Thu, 24 Oct 2024 17:59:46 +0200
Subject: [PATCH] Pair Programming Bamba David Vincent

---
 bin/controller/GameController.class           | Bin 2325 -> 0 bytes
 bin/controller/HexagonMouseListener.class     | Bin 0 -> 957 bytes
 bin/model/TerrainType.class                   | Bin 0 -> 968 bytes
 bin/model/Tile$TerrainType.class              | Bin 1071 -> 0 bytes
 bin/model/Tile.class                          | Bin 1723 -> 1632 bytes
 bin/view/GameView$1.class                     | Bin 604 -> 0 bytes
 bin/view/GameView$2.class                     | Bin 897 -> 0 bytes
 bin/view/GameView.class                       | Bin 5245 -> 5186 bytes
 bin/view/HexagonGridPanel.class               | Bin 0 -> 386 bytes
 bin/view/HexagonTile$1.class                  | Bin 812 -> 754 bytes
 bin/view/HexagonTile.class                    | Bin 2739 -> 2697 bytes
 bin/view/TileView$1.class                     | Bin 803 -> 745 bytes
 bin/view/TileView.class                       | Bin 2259 -> 2217 bytes
 .../java/controller/HexagonMouseListener.java |  28 ++++++++++++++++++
 src/main/java/model/TerrainType.java          |   5 ++++
 src/main/java/model/Tile.java                 |   4 ---
 src/main/java/view/GameView.java              |  25 +++++-----------
 src/main/java/view/HexagonGridPanel.java      |  16 ++++++++++
 src/main/java/view/HexagonTile.java           |   3 +-
 src/main/java/view/TileView.java              |   3 +-
 20 files changed, 60 insertions(+), 24 deletions(-)
 delete mode 100644 bin/controller/GameController.class
 create mode 100644 bin/controller/HexagonMouseListener.class
 create mode 100644 bin/model/TerrainType.class
 delete mode 100644 bin/model/Tile$TerrainType.class
 delete mode 100644 bin/view/GameView$1.class
 delete mode 100644 bin/view/GameView$2.class
 create mode 100644 bin/view/HexagonGridPanel.class
 create mode 100644 src/main/java/controller/HexagonMouseListener.java
 create mode 100644 src/main/java/model/TerrainType.java
 create mode 100644 src/main/java/view/HexagonGridPanel.java

diff --git a/bin/controller/GameController.class b/bin/controller/GameController.class
deleted file mode 100644
index 102081dfc92e528bbf2821eef8276ae640e8f17b..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 2325
zcmaJ?ZBrXn6n-|l$-=UQl(#m0r?#2|3W}E6Qfragk`@YWkeXtZC2Yge%?6VVrM|yZ
zzxWI6$Idt%M?dIH0V~=WzxcsFq%+P~pR*evIO-&O_nwz~&bjA#?%m)1`tdP<6ZqV~
z5sWmV9T^=L4XB}TNi?G}jOn;+pdnO`>zFXmgey(BimZ-F1I>6%+@=f;*JSp(=yE!)
z8#s+=8Qu`v4Vk?uv$u52G%|=K!>mNg%P=R&Z38z^&@peI3yye?=vYwDP_T;jlw;pk
z&@#Hjci)AYVo*V&@3{7Gsp|O(l#GICC0{DrTvW7{CuyoE*fCu4D!%3UQ<ht`Rc^hX
zcF$h+#X*5NS}e`kZl6eu7%N-eT&bv_b#%d6vihpb(04V^(b`It<65(>JyEJSzQfQ`
z)|O}1_NA<>Q}8UmDy4L7x1J6~>$cxFQF1(g@Qfrq?RbuVMuD14O)1cZS&_tbJo|FB
zIBS<DB_-3(vk=!Fv6rnv$s2Z^{4E6?$*?UoZLklCvLowT`CDVwVz5{TU3XU(=PchI
z`j<_#CI4AiYD$O8@OjJ4S6wd4N^j4X%3<GFDjVKfusyp>W7wk5)SOIhZ>m<b98W=K
zaym@nT3(?q>z5s`Fes%O*;2Kfx6cQFv<bch%`cZ+*Dm);b4?t_fQdAc3gTPc4wIVb
z!?PxyLDED@Ja%q*j98U<Vq)SsfxS5}Z1!HF7Ik<gN?2sWwy{f$Z<{!Zr%k+qVH3yD
zYoZJSp2%-j7m#tQSQ9>~CYEs9#90iPSjHU_FM-fTrZXnqks9BX;XN#xcwdGO@S%>6
zOni#F?8FusrGU>iwi|S8e0IUklj-rG&^o+Hoat$ye=?H^px<f$H&3fIHy02k(AUKp
zOkG!SAUXP<8w%kGX%im8L(EZ+?sj?y{tZrrP`WmAk|oTbSM1tpYf09xm0Ft$w!d+h
z$R|=~J4iep$}*ojJhf6LnM4R;WxH5f;*rqhBxmIOYsri-vU970M<(rZnf{Y^7U|iv
zO)@hci976Cm5SUFu_d`3IN6&_P1luJAA*(atuKF@Ej7h!tDQG0pd%u*;VdGg4Bq4=
z->t%6DCiD!J+zZlfu0NwbfhWm&j<4t5aXQ0=XipeuMy=8aMEi~(((QkMAGX}b8FC6
z5KXHqh{>Q+*+6CE3XJqa80%=tsp=ZcN7xa;HCmf<jL@=zcsjj`ohxXiTbxgfkIqMA
zV-;=RGns-HIrj3t20Ec(Ck(Wq1G}&XyKxW+ZfOr0z7H8nS8xdPY=nZ7I8`hA7nU92
z>RXZ_-hUr+lHym~=w3y~Jxq0rxQfnnj&^NEcEOp>(sohM({$UtibQ&2xgkYAfTsL^
z;gO*5!~A}MXzU^q2if}+e*@^j8Ez@ddt-qY!yrBOLH!;4#<f485aC<rH!FO1C0IU>
zaJU_%nfOY~wRr4j?8&LopNyQUjpsCVJe$)3DN>W7fuvH>Xp3!15lZ^zI*}SS*U@vV
z=kl?~1DZMz?TB`0_i^r6N3{P`OmOUeh`ouJ+B?I^zC=vxoguEL1T!O{Kf?Y9?xAHv
z6149|l?PAOMbrHV2dEHC>sxai*NN34(fWdo_>#N+it;zSy;d<4v}QllC&(ifG^I($
z%ls?k;hz}#BY>6{T@C6Z3@r>bnJ^kBg$`;n-%<`qBy0v=r4R4Z+KQ9>^2;|l@dFNx
z3KOE;kGZUWY#m*>o;4i)ZgY8a;CPW7yo5ML(TH;l79NeGwZx6<Xeafb3bq+$HE04R
Zh}jj+&T}5Y1$@G{!NoU8){oC7{s!a@_jv#S

diff --git a/bin/controller/HexagonMouseListener.class b/bin/controller/HexagonMouseListener.class
new file mode 100644
index 0000000000000000000000000000000000000000..f6471d36ba7962d6d2722c90193eaf18dc5d2db8
GIT binary patch
literal 957
zcmb7C+iuf95IyUpb(1(vbD>ZIEh)Fey_m}b4~Z(Fs(?gVDy7N;ZyRS7wsq{t*`)my
zJ_Csq!2=(_M<He%M{No($nwm3c6{c{nfdkm$4>yS@FI;A?xnDV``WB)vysLFR5IAa
z!!#b@v56-po-&x9#Knp91Vf=Ymg3xbCoXs|@O7-tu+-yy(WW><ZhHSV4$x(RkGb@C
z#}miFP%0VtL!EX?VP~YI=d^^Pv{Xy>e6B_z6{*bMHm0BaTsg;q^i_S2@)sM@muipU
zW%X}LH%QFG)oX2r<bKelO1Y-=#nGtW5#foZ$Z+t#aQ|SZ3t0VNG!*-ubk9VWVZD0Q
zgcu87IfwfGKp!JQ*_Pt&*&!dqJkqUT6uRO~r21N{cl1wF4wdjlxT__!P(al}8W{@~
zvKE$+Gf}f(W6Q+0g&pjga4bB-bA}B!@KqRio(N|noP%U2M|06qUt{^Y%Lht?42i04
zZRO?)Fl2f{&BjY3uhy=*osNtlJ2!D!8qI}Ey$!cwaXjw#oDZE-;gTjF>6fU`Y?o+9
z1|E0CbP<c!1f7<swNarRPSJKJNEMQVP6e$><VhG1cRCx$(@Qi_BwwOPgM5;F$^Hgr
zZ%ts>+Y==0oe7d(C{7f~u3~}g3T5W0N`a&<(o>2tS1Ic@?vT}p?+MW$ziEF(l3wEy
p3*WJ5;4|{{nTSJ|Fg3mr;V%<!5JC}a)Jd7F?u1nc@@|w={sZ7E=p+CD

literal 0
HcmV?d00001

diff --git a/bin/model/TerrainType.class b/bin/model/TerrainType.class
new file mode 100644
index 0000000000000000000000000000000000000000..0a2f465df0989b0dcf75c2e20a5d1f5717a42fe1
GIT binary patch
literal 968
zcmZuvZEw<06n<`7Xz9A~I=0~yotp!u;M6%2$TC8hn((qvTtfU*u#zsN7+#k6**~N#
zaYm!rXMdFO+&i;j;5Io=o^#L3b5GCjKi_`=*vE?i6r^=zu%jZO;-QWR9&wY^5Y_22
z%Oi3cmN`Dw5a+n7VTI!p4XYfVs(8jASIZ5CXr<SGXS=zkJs4Py*Zlaw&NKK*uZq=U
ziaBnSi5=A&<tBqxt=F2xmo;*!n<vG}o3hCedpoy+|IBj7_K+c-O3#l_O4OJkSaCeN
zHtx0ULDOox<WWUx{XN5Ws&Z<bSvlA8x;b++aJ+6lJ-=PS@tn~CZ#SFrI(@<rFrBVv
zjm87&Ag8!TD|Fm{SzA*{WpCUo%xQ8!bJ5NIc+jzr9Ii7oHM1<&X<&{2m4tykJZA{c
zOx8dW`v&e|!$1@<1IygRxmn?66)}dTn<sNAH2#j;_o!bim7bDWZ=c$o5oy|+esRgQ
zhQs_+*!9%@ubMyHrA3I)R{0OtxE6qr<On210!frW(glPP{CSk2Ab?v~2g7Y*8-)Dm
z6R@w4E+Ky=#&CzMU);$QpTynkcu9Emh?4mR-zAjUc!`e)lBl1AOdp_TcGfT8|1wkj
zK6xZ;Lc<o>D^Z_FBtP9BP+AdHzJPX)fFQae$buk-Pmo1Hmi&SQ1qrEwgtebkL7ve1
rw3G=J%$9G0MYH9fAZWJK3Bu+%*o`Qir0@w9Nwb72X%DbXJ_)J6_+z~<

literal 0
HcmV?d00001

diff --git a/bin/model/Tile$TerrainType.class b/bin/model/Tile$TerrainType.class
deleted file mode 100644
index 50630a35a0fc2ee188c91b4c72575c5f1f8bcfb8..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1071
zcmaJ<ZEw<06n-w0wv_ITO$H2|Q&eC$+;mO_7s$fg5(W#!CB#n!E9p{-DX_%P{vl<F
zGaAi4`=gBK-WiA4%WZO=Jg4X7x#yl=zrXziuz{CBNO-7W1vv!?1&=g@vC7Swidl_*
zuJMS+D&{#pQ4!_1t|G?qsfswq4F%5_{Cnj(L#SbSo@u*{5AQ7oeb;p@Z_6?JeXGw9
zt#o^DEhpEo9V<B&m}dxV?UeTRsmgx6Ol-SWFE<#}y;`+VdQ~Ntk~}C?UY8Aq*qf`%
z$Va9#<gFG`>1)EIEz-d-Rk2;GI_$PAuVJ<v@+cy|_KqQ&svMd}X3jC)PR<y3w%f_4
zuW4McU3;*}5V<68H+{emH0+LR4u&4J@u#>)Ewr7#S(&kBWp~&uT-9llW~CXuq1U#y
zX^K>q4|9b}rGizfKiKK@2MV6+Sl~~Z(D4G46S;iyI+jq-aTiG)vxw-J=O)TcjGH(j
z43p=B;Mz#Qc`<scw$pP-$XqHtc8OZ+&}t8;@%s2Y#3tm&!u}2R{}%b;D(zL6mQ*gr
zxG;c_v<W160!g7j5(!Ml`GqM%LJ&7`3k-|I?hx{$jljOZcMAU}Vhp#*%Hp3)@k=7^
zEZ!%)T3E__Mc@?D#dsf|7kr}rBK-6LN@h860{QcW;`hko!+ofDK=w@3M-s_T=R2fk
zSn;1gJw{LvO%fy|h#nARLXb&WkSRf?6+vdyA5_6VqUCBzBZQ1*V1x;yDUUE^G?fu%
njAO8KQ5s1httipmC7el1Ax%CXGFTRv#SKD@q)NzQt{D3R>U7r@

diff --git a/bin/model/Tile.class b/bin/model/Tile.class
index 1acfb64e5b9b16fd2ad29ca03f6c52ba21d59d3e..2c471096a0da1f50c42e8f87b0e3ec6348b8d7f4 100644
GIT binary patch
delta 754
zcmb7?&rTCj6vn?hGfX?f75ay^mOqtJp;NRD2w1gMv>;L~E(j(@7do+%h_;=kEhf6r
zHy~y<?tKGyYT^T!_ztdo2t$nLOslwMF~6I0?svX>?z!{j)DPME_WSc!043Zr5ygB6
z3kD*{n*@td;Be8z7|t0`aGp_QTwvIYr5G8khOovea<~*iNg&*JyIp6$-4mF2RBw3=
zw`spSJTwzlVHo*EF*TaBYX9N~V)u<i5-EY`pkQy{vG=OuO2iPCm_$lq8Z#0TNJw19
z6^W}TOH>%w7}pu=C<{cYp4ad7yH01v?LYGxy>T5k!ni3>#RhFZcV0U7L4Ut#?>g;<
z*Ann6N+}%w+u&QpRyT3W|ER21pIF1}e?65?l=3TTR^Q^Y@AyyELZ&XD*FEpWK}SH=
z+HJSH(R6w}mnQb!s{4<%jQ>e}t?dZR2f=-9Elo3^VNdeqY1JWkT*TA<2W>8!rd$jf
z(IA?T7^T;f^hPwcK=o5AEFG&N2+^ZQNs}Vqsi00df+Bv=0Sb>fC|V!c+UBA~vII#D
zq%lsGT#^n{Gsq!>JkFqqSuA62Xr>(@E)2sUn+$DopWjDv3v4z9m6#_pi~q2oK!u2q
zXcpN(n$+zCOZl3BjWGERuJKTxUOC<gkyVZq3eKWNt4aFXxQlJ-ZkggR#TV&Y`2!UJ
BdjkLf

delta 788
zcmZWmO-~b16g_WdXgkx_GA-p}T0mM5S|}6*zW@<IkYbC*G%j>i!;2EzPSY6|uGqLY
zX4d=>P5c2SF8l{BT<PA0A;x<P2_@!b&YO4dx#!(;-*@>bcKqe<$Ik$6;<1GU@?jKA
z*qF5l<`{~6oVO6if(Z>JhDC-YhHDJVNfrp>7PCm<b{MMy(VFUX>PM~G+qM#r<yK2|
zwi|WNQ=UM?KTCSHfb+c4bPrXdR6A;@sSnNftLc29H`F7vCSbi({&_?olP_PQ21W7Y
znC?DMo?lhX7pmh)jKC2X>bavwP$GpviBUKb<G3O*gkgy_tV`U%hQwWlO@@06Ti6h=
zw_Mlv{7$`HRsJjY(CZIjJA(TXJJ=Nnev19rNUwolT`TDiuotwnmAIe3l=`Nn4E7!T
z|MNr3hRQ5j38H$zIuHm|T=(^xc2Lz%#G~Ms{?wuFY4~YwoAwX{yCqBq&x~9)L$M?b
z!Wdy368-d=HoX}c?y^pd!r}!hg)r$QXePt7#;A_o_Y|7=Lm`a^)GhjL?Cx>VEG)td
zk;X`P90QbhFhQp*CXvGo;XJ0Wgz0lJ;}iqJG)<D3AQJcau5WUh#p2Kj=SZwb9WHbW
zbO@VBInrV3*S^vqQ`si4j0kC;*+_&&cP=tfGJBO68r?fXyFq-7y5nJJv}`0d9qglu
Phg82p@dz=l(|6+^*@}Wt

diff --git a/bin/view/GameView$1.class b/bin/view/GameView$1.class
deleted file mode 100644
index efcaa4dd8e366e787b2d602711f92439767c16c3..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 604
zcmZWmT~8W86g|V&%9jFKYNcA68Uxh0?Nc9Ye6bX0(3ogQ`Z&TBr-9jIW)SsP=|h9D
zNq<0pRMWf0Lcq=LoIB_4x%b?eKYt&71NeluNyPCYg#?NoUZxPms)tt|N&*RYq3qTN
zfu+`^qLE*h18Q@y$EnXsE4MFDEzjjzKjfwK<;eLhc^wShq13WRX0Or~h#dr73d<=?
zN5jDxnNxYzXC~JpcWmgKjG^v{x?!qVu1rgPQ3KLe1)5u@PJ*H7&{q`-v;RHqhHbfY
zO?Uc%Rl0Xb?jq=Vc%8vIHUt)q$ht;gT?QT&GDzZ$Kw)Bb(jm-ja-o@tw>}DFnp%@N
z=u2zKK1r{9JK|pcw_~ZP&vs^10{M<1>8L?hvKQ#OQQhfavsxakRGtp}{Osc8X0y`9
zCf`<qFHYog;T#-A_)8)Mfiy?&cpqg<SKt4HsP2prx#KO{=QY6y)OgKe@ky|a*dx36
p3(@cS^gX|0#BS#_4gPD1xd?K|GsaNBGFBd$0@fHq193)v{sCh&hXDWp

diff --git a/bin/view/GameView$2.class b/bin/view/GameView$2.class
deleted file mode 100644
index d772ee02d88c085090868fd8a2e6823b1a40c135..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 897
zcmZuw?M@Rx6g|_{ez9$#2%;#WF0w7iB5M3mV`3T<Oj}7H{2<Xd-JP@p+uf!+ZFv<R
z!vrw;!w2x8jCZzeL~xUxJA3ckbI(0@_Sf$pKLNbNiwx3O)XUv0GPsw)0+zD4kL4*m
zz{4zkK1#t%;W5M1fO}?JoE}I|FcfP8DTelrIOVOt*S-ovQnh7hZZZ@`(RaKf4(XT<
zy^_9EuNh41O6)pN>5w5&4O}Wys7YTm`kkie9q^_uY;=NtD5{=xPK3*_WYv!OfZKei
zY%vhNvg<m&t+y2ol-pO_IjQsRI6u1|^m~qY8+DPJFx=1}RBqdMydac*t1eVKa8p<{
zV4=j2ZirCr1feouAZH+pDFb<w4Xj~3g(n6!V5hKY;3>8YJi~KBizJ$qFt>>OuJ4Op
z)#G6(LWafvQGes|t`a?B{!cnXp1bZPy&0@az3&B*8jiF$wZkEGV87qvzVIr$T7|f!
z*CI73J+0#&HK}Ca6N$n|z`l~6y)P8aYWnJEY4|OnCOL#-mHw(es!VjFW+pJCm=pMl
zOI>1aOw{8<>qGNcI5e9hhD_Jvju>62*=x;|4zWx(Geb8uHa)Es2gs8A+Cy(11rS@>
zt<ra#Y@xh%4pv@2N38q}@vr1!n4vXE7C54{h}m&cgOW7NO8E@z3<)x^3*7jQWDH+0
zqrGF-1yUL+7D45sN*^(gPcZQrHz^VaGm*etbZ8#8$R_CDxs5xKX8|i@vs5=tmYzR8
CdeG$n

diff --git a/bin/view/GameView.class b/bin/view/GameView.class
index d99d8eaf21de856bff1503d35db86640692d0819..3d0e8f8b98dc310238081b57c0f1365c53d62234 100644
GIT binary patch
delta 1883
zcmZ8i3sh896x|nO-tguk0|>|{%37r%tDGf9WN3?|@)LeaC8bhFc?_e&49<X<l|*W#
zsHra%)6%l9nQ2&-mX(&3S!UTs%l`H+`)B!UpTWW<i*?>T_ny1YIs5K==Xmb++=g8z
zwrm4Xs5+Z)q0zuCCgRYTh%(GHFv~<jt20|>Zgt`|li%A7%#rV015GB9&?wG4G4myC
zfsF2u(Lw`@Omx6v1Gb3_+$qiyCzeXYGMWZ7JF(orT_&<+wG1o7tQ2#%n0v&m60_Qc
zdvTwP*0^v#9uW6I0}q+#Ath$xVKI+5ik<9-e<s%AQAcrX3>a8vA|H>5S#RKR69w2{
zq9Gp}1?>qFgV7>plb9z3{3%)3EE}E{^NcjKMe=Vo@T`gcXmk`0YK51!o-?rx&x?6M
z%!>xL3lu5cVWJc-i8If@%TDYxF$}MmconZ@3i6UvqP%Hh58g7cS28rVtWh(Sdb{PE
z_?4=Qh96Z5DU*Ctecrm-K+rqT7p)rNtI;UOHTL0l8HHmpPQyZ_LegNXE~moE8Ce$y
zT2YO6uumaXwoda#>jNRbcktyAU$v$2F5a{ICU`R6#|Ikqn5N;w1dT9=I~rr`>V(b(
ze(XQB+v}^Z^<EmNwnEWBI3y(<(D)D^DL6{3P^}fwIEarmZa|H_Ey2?;89|NfF<s*m
zRB3#Q{TiR)bB!s882CctOB~Xu!&C!bX?!itK^#&@pBk|0y#uXjK7TkgAQGq;?h9Fj
z`UaI6-=fmMcN*X02L<=(kt5ly6vfCN@smPB*NNd!Z6q8FT9N<IhJ@>)R%swwYlWm-
zKMrgBj9)Z<#cz`Rca1-!)<4DkB^4dP-x~kmsKzlI*O-V3jamd1%<6E374)`dJ%N*k
zf>uh!X%#P~9aPZX>F~z;Rf2uQajwgceTH&qWhkfZH8Ro@-Ka`-C{rt!(uPXXs=Z2X
zDL0yx-8Hdauim+(XEs;VIx~PrS4M`4O54;h!m4eVk(dzYbgLAqN2S_Lu1Z&$RvlDF
zjTxx2kGTr6Jv^z>aCmZE4Qm|~A_XNuUo>h(6?W&^dv!;9Sdw9n)$3I!J1MDb5G6oa
z#)-tBaBXaS9eqmee}6oEiYB&3a$;YqkYCLhs+KljuS;5MP2yY`(rGi$4w*<sM|hBh
zuIPkr=!`tx-2&vGAI`#MI2%`Tb^^L1z}p?-Y8}o)1A1Z>yqJq#SipN@qc@syK5L-Z
zVwtwKuW67>-H}LJ$QSKG=DUdaMU3x@V&a$LV#>RSeO!WSMs-5`NhWg`C^L|4AjE&A
zfcztT`{Lv}2s8t8=y4v-t>`gkGx9cYtRU$evH456J_RWeIugEz(+0mY>>bG?jVwoA
z-X<8f$DKP=w&ar`@I}zLf}Ia##lz4CSD^$W=#3()SF`WY?0XDvQ8{knDM+;j)N%A-
zeG1W2O)qp$C~j+d9N**dY|2N-i6pFo6!_VA6%$RuaDoU-0@P7DaiV6a*UnEV?<OE!
zVl~&W_9<j7Lgu5mfKmPF59BLRZEs9T%Q%B0-r^X@ffT!>jgRSs=d*H(j?>udPxeaA
zWN$X3`CP<sHl&W~AvhkE0n8yub6Hpuk9r<EX(CDU8O@g_7Tq&#dO=(N3*p2f3T-ik
zWK&X0dCbd5YBLXfIhj~NY1~LUrRjrdo-ElZKY73^?p*CQ<-){P-5orIZQZOwJOwBh
c;%1c@+oM#v%2F8=@h<uz_}3Y;8*gCuzcmtoNB{r;

delta 1991
zcmZ`)3sh896y0}l<_(XF!$(CBl}Zh;)fA=WGLvLgYCyU~mReF{JYf)KU_OGHQK5aT
zOnZJPKdG4&R$5e+l$HIpGVNm@D=RB2``FhqwS5LwEORw8>)d<ZJ$K)8_S@&q*6btM
zjoXfH-U8qp)z?G<nheY_;XqS7N-@{K4JMrJ&W-ZqCO2+2InFb1i;TA#xXnZ&n#7qe
z=5`5NAhU%syTgEOq8k<&SZtyPmWZ>|jb@3slco`Oxv|W^audB}wG=DFtQ2#%m{np{
zi&>L^d$3k!_a<N+?i2TZ0}q(UK}$ThuNU*6E8op}_%ZPi9(Lu&=750>Ci1XR%p(RK
zH8BXSCK~hbn4mpwVl<u*vq{X80{)aNY?cjeVxE?Qo{{sn7<ksi2sF9!N43LCS<jhx
z9$Uq{Am&8_F9{SWec41IUJ+-$fmhvl&BUeHW@0;DA0Ws}Q;4$D#4fyT;2k-kNkNYa
z1gua&wJ#jD!mW!`lTz=t_KaJu8Wj?Xt#G8ss+nSi!WxzED<oI>ru)3nh`-u9(ig5Q
z^3`fwhRaV_7-vN^uE3QVQ&FLiINFM4m0MXQQGc~XtoN{6Aw{qnyy1F(pu#))qL8n~
z(s&;qD0JtF-QU?Q?L&N|(SR8mQ*f0=E$TETVv;?^nHg7!J$BHU)~ga9YkY!F6<h^Y
zAYz3y_Tn>*t5IjKc4jnIqef#UW@&s5zs48Xqp=TPYJ?Cr@Ri2b*sn1i^#;Dt_*R^~
z*stK3?zif_7c;9;PWqiG41A|?02LbFqr$)s8b9JEg``;ENUOnD5e$^DK#Am;2k|pe
z8jpv`lf_>&e#LJZzvB-%?2yKvlG<Nl4od=m<A}yl9McL)X_SMQQPe1yHNkSL+8aAX
zIaHjXx@hH8F0BkPZizXbS9_bQZ(OB{w-2~Z8(fLqhBCEEP()4|5e!Dck&v&p$cj`3
z%flX*N=$;ELszXlD#=jETBWGe)?%Ys4b06hJg$_Xg)uGo>LcDl-;7{1QsfKxDy-1Z
zoKkzAd-%!yPKf_6Ppu{KPKUdj>P{`H9=0!GYC@V;JykD_M)>Vr34_eue5-}Q;IwG1
zouzkn>7&r!F4JlD2JNy_5(kf>7$|CoXb=jMWAifll-|F-k3QuSTO*UPk*egV8ADmq
zR@n;^TdZk(R*LSlY3PEU@E{!-{PsmA`m^hE(TDwf5{984F65K37(nDxiI9r`2J#i1
z&dj}-gEKIX9XB6m!N%EW<}L>)#Mnuzy4E(zNdpj1doJ(8A-uDO@{IGiXBhHvJ{x&B
zCeSZq{|6Y=3vtJIpvyq1f!+p!{3!+G9pcUDkj4;b24*vH2S?q8oQb(=6LJd&Zltdu
zN6MuOrk-x%5>D9x9ox1O#^BOSdzGgoE;rp}ANFJy%a%N{1dO2_O9o1q^?2qx0R?Qt
zVzNJ(3{;WbI;u2Ec4x5TC1V5X2!=362O=GX*CkEK?<~BEH~KUdR!ztNi3^g75Q`5p
zwI~m4h`~6a4%2an{A28;CQpjx)hCwkEV$U{nV8Kta192N{Sov>;`&b3JpaoYdp-u)
zmTVVDUM_mTTpq?Nr-PU*dh*oWh7l7tp`eq?_UHv%=j9T^S(q|DM{qKT1S}$Diz%2T
z6u?r}wS<&4Gn)5OEZUPgb5JK6%izXxN^b>D!Ai<yH7>v!jN|`98P-y)>nN7lEK#Jo
zB{d^mcDBFG7Vcc1#Q&HMAs<Z57}r@%3-xd<V;#7Tq)3epqUZ1hN}h3?w|{cl2bHce
TRR(4M27PIdHyN`7Z(+wj1Im+h

diff --git a/bin/view/HexagonGridPanel.class b/bin/view/HexagonGridPanel.class
new file mode 100644
index 0000000000000000000000000000000000000000..e682ddc64cbc5a1b39c71021246652a2b235ee43
GIT binary patch
literal 386
zcmZXQO-sW-5Qg7Pn?&2%FRd3(dXUtEIeMsgQPfJ5LZ#qwYsRqBZeW{!=&#aKMZq87
zj}m8VQP5=>X5QIn*mpiYU*7>7pizK}vX4pu4yrzCKI#JAq0%Zl637M3o<ROMjY*&q
zDNR@7VV}&k><?I}CX{sy-H|aAchw_Hn?W<WmlGMvX%?QSA?cAybxWYoO~>YzPL%~4
z=QNW^s?UsyJ5tkN-!dh5SQn`O=WS<$v5BH-_?KN0vv4$3Itecp0|mB%-;YG{AsuIz
zQp<!)%X)HycDvcbHuAgxdmOND_#9Wb+F8_qw<qQh&#VZna<pp#XD(;#3B~36U7jPj
aQ+|VUQ!Bpkog?@3!+GCbjwRL{tbGBM8c|vR

literal 0
HcmV?d00001

diff --git a/bin/view/HexagonTile$1.class b/bin/view/HexagonTile$1.class
index c283fa52daf74db3c1ee6945634e439f577664e6..5037da24dda8fbfea07c6c2570af62e1e40bdb7e 100644
GIT binary patch
delta 167
zcmZ3(_KB72)W2Q(7#JAL84M?K84Jp&1ea%)Bxm?07O3Rrr=;dg4DJ<G<6%%|(BNU<
zVc_Lq&}7i!VbEsKnfO&+NEgJ`0}=Wl!hk_*vKpfoCnJL(Sg-!%env5MF%8XV9|%7r
zwWugDGcTmFAk~_Yf!WtJh><}UDmVEWqwQn`rfrOoldm&5adR;+GH?Oi#UQ`|0KG9N
A1ONa4

delta 243
zcmeywx`vJG)W2Q(7#JAL8B8W}8H*{Z1ea%)Bxm?07O3Rrr=;engk<KVPW0;)Rp(*Q
zWYFSa;9=n9VbEsK;bG8a(3|){UPvFrHUJTZAi{`2XR;!rR~kEmF(ZQ**bIG;87d*E
zMMa63c_Ebrsf-NVC_J{Z#GKO9VnzmO4b5mD?0T#j8JK-tgBTekkQGec$Y{&U$iRir
jGx;6kHpYm_OPQR6g&3F^xPX3R5a3{tU{GVwaF7H5r_4U;

diff --git a/bin/view/HexagonTile.class b/bin/view/HexagonTile.class
index 4ba5635a9453d9630d864fd29908956390bada26..4fbf64790e727eca5b290c218f17eab56667a230 100644
GIT binary patch
delta 852
zcmYk5*HaWh5Qo3LJ6Lv^0x?yIfL4hmD0&9WVqx|aM7=Yfi0gSO@$fuB#eiAFyyk>C
zzgWKcz`H*9H~6gof?9TCDEHx;>EBFGchB^`AJ#MM=%=3_`hl6eb(u)5Lj|i8bvCPA
zLacGcSgVNYhM3JdHP$OOC^ot{Y|`0ghce=7Zc)^$xz(m2R9y`&L)fOWr`Yb2V23z)
zB-P$&v&&^9wJwb`DVh~6F3V_Dv?)>!lW2F@Lt4+?tH>z!*>t!vcB-*oalq!FO_$A~
zcVBEPblB#I|IKPBIckx=E18KU(`m1<ZBeQvm9`jLR@0i=k!%V3M*?+LxBodXCij@(
zI42Az>Gr<|iW8?eZ8)P?!cxOodJKzLY&b`+;XD@%7gf7Nuf@<Nufq#_otf}LZ*OBF
znn|aclZHwz8?JEG;L~Gs&2XI?hUG*IH@W2>3YN!j8}4w|a8Gex@qj+VL&YPy4Uc(Z
z^VIN6b9t`8UnpK`+`NBr2P)HuuMDqs{SCeTk6_pPE1_a5cX(N({BOzqSqEnnl}0-o
zGl|``UVG`lO_ct*pxA--q(vYeu_*X`MgJ}M4cWH~@})-x$qN>c$6$&X;yd<uYq(!&
zhn+&Q<V_ul{1$tvHOlX^`>IMs8!O!~PCUvOLAm%;$ZVoKZJ6myVIk9qNal6SBF1du
z%wackX=9$>mD62NEhjFZQ1(ryTJ*)fajumw7d0Y1wt^B?GJzWLuBD1qqONAGa3fLb
ziTNL$(N@I&>a;~SN#r<_MXjVk_IuJ}3Gq%cUw(-kvMYkYU|x`*oC*P1sgW^+HIOS(
QZ$M`94a$)^mr0h+FLTkRL;wH)

delta 895
zcmY+DSx-|z6vzL!E!^Jgq-;S04XB}!MQjaXTnJJ{g|b+sRSRXiltPQ8t)+s12;z!Z
zw~GsIxa0a@criZsZ2T0ync#OYo<oemm*33UXU?3N$z95w{QmpPR{%TkQN<Rx6_n#J
z<A{tF6()F861<F~>~KuRaTa`xRz{l&1%BSOD=0w+i=B)v7Q1C=CZ`ink%Jyq2N=C7
zg6N|l4gD;KWQ0{%;Z|`15yl`Rs-g}tMx1d{fgK4IE(~$*B;yogSjLD->uDB78DlcW
zWt@>Q@#%*wna;|X)PG4`l~WQj`h!VtFp<#0(b`xfmXL8y!kWJt?`S+Ip{%57FxDH4
zIK1IV(58nBZfRQoY$)=a7r20n0+%o?Py?rgoB?fEb7&(;M_odThr)rOiv0qYaYbN;
zaR3Jeu3}c87G$`Fl)!b|5V*;@TS)14qqX3+fQ~tVJD8PmSKuD*3)G`gU>*<jK4Yox
zp}-?N7I?x~U_8Y$f#-}De43YdCGeU{E^>`GjJHThu>3pW%5?=Q@lN19+dokGW#jm|
zwX1Hssu4>8(|Re>TH-4GuN|qhvEq$3&qz2K2sLYQ+e)x)rB$nfB^dlJy*hn9%R*z6
zL64jX3$jpvZ2f0?nUt$%%MK+EX~-v=Rd0|hq(Xf{UZ^f2os9-&6L}XSk6yC?n~CN0
z`gUx`R_sFs4Z$|JX>PsP2|sorgx!duN^dn!Wz|qdC*|Es-ZiK~t-frYE3G4KJ&mCY
zg=nCRjTG60YBZC^jTW-`h#m0gi^>M6QU9hy{XVMNMitwsYn|lZO=H+Yk-gYMzs8L8
qa--2`F~Ufh00ZSZM5_rBozy|Qe6rYSMW&gm1kvEkqcN|;0F*yO&9ZC&

diff --git a/bin/view/TileView$1.class b/bin/view/TileView$1.class
index 2a5831f811e8eaf1259b1347b73e23126714c9f0..ad13987544ddc67f0e1b59e68a4d0474deed8eac 100644
GIT binary patch
delta 211
zcmZ3?_L7zB)W2Q(7#JAL84M?K84Jp&1ea%)Bxm?07O3Rrr=;dg4DNDM<6%%|(BNU<
zVc_Lq&}7i!VbEsKVPufXN-Rs%&q>Tn*Z0d0E=|sG%S_ElaV;v!FXCa)1u4@55&9s)
zfI(}rGNX$dBZDB=SpAUHqN2piypYO*R7M82vc#Oy)M7>kF%8XV9}ET7j10`au0f0p
h!ce)%XBllLi!*Iwbe(*T$%&hbfsug==m!P?4geu}HY5N5

delta 243
zcmaFKx|ogY)W2Q(7#JAL8B8W}8H*{Z1ea%)Bxm?07O3Rrr=;engk<KVPW0;%Rp(*Q
zWYFSa;9=n9VbEsK;bG8a(3|*HUPvFrHUJTZAi{`2XR;ilOBy?aF(ZQ**bIG;87d*E
zMMa63c_Ebrsf-NVC_J{Z#GKO9VnzmO4b5mD?0T#j8JK-tgBTekkQGc`!D!3N$iRir
jGx;gwHb$4pbC{fjg&3F^xPX3R5a3{tU{GVwaF7H5hm$^<

diff --git a/bin/view/TileView.class b/bin/view/TileView.class
index 0dbfc178de18ab678a7042cc8a88fad15af5b354..609dff24adc539d6c6078787eb1f1cabcd8576ce 100644
GIT binary patch
delta 766
zcmYk4*-}$M5Qe{#1P(clK%~SKN~=H<h=9l{V4?&uLS$7DM2!$37)T5;2#UC`xZuGD
z@X}Y{!W-`_uk^}C@RkQqdvGahs=n#Jr>AFndcJzzdzL=^So;7p^47vfz>Sxn$x#a@
z$1D-;+8r|K(Bim8r^X2jld!f<x+$Ye%Wjj1D;NZe0#0d9k4CRWAN@LXK+8ds(-zwZ
zSe#`jqIphZ*rJ&cjq@6#ZYsE7agj^<fT+f0jWLsPOXipsS2QL}CQafdQ!Ag>ORpLf
zOvEySv2;2bpJ`7fl4*l-Z})U^JeH`o*Ntu?VFw(gp=reoNkuJ(42q_r*=TiiE>qo^
zj;1E#W3#m(MT%>Rv_>OMidiy>I_eeI$tvc!VZU?iDw$U-a8q%MjLD+nHcN`bv?%Uy
z*Z$`4joee*=Yis(#v_f#JW)K=ct%3;oMn?2ikJGVS33D?jTN#6`TwrAQH-LBHws&?
zuadQgoxS!)=g&>W-mvd)kzZU34ZF(*=Hi*L$w)L+wo!Z8pC=idPsI!zBVhy2???G>
z!Jf@o-kgt1I_Rd5?RadJyLfObITTA@MYBW3PD*5WDV59YrAeC5MmZt&NvrouGrjg&
zZq(zK90w$}ihBICP-FYeRbQQW>nWl^b~jQfyPKrnZSrDaTIrXyAp(pNw7;8sj27F<
zn;Gbk{hicEL>*lc9}(3fR-a^nJaYX`r!(IvpSD%BL$V!_*@YpWs8Xyg;;WFE!aVtU
I&78sg3q>D`zyJUM

delta 791
zcmY+C$x~B75Qo2)2R!l|mMDsdP*6r8fJRFYP{Sg~8jvLlh^P@F1Ve&|Y>J4xf(t&d
zyn6KP&4X8~EN|W{{{YLQe}H8V<pJMReQ)|V)7{h4^WO8#v-IW9$4@{dZ)|+jyD8?B
zMT3n=qb<g1EjL*-YokS@Rin+uqFv8|ZoG78v(w^CQe7R`WYDFRZjBzBUP5~7S#6%P
z=(EYD-e!RF;yA#d#s!;dhBPi}Tyj&wWt$U(b%HAz!x|$N5nKLOwK1wOW)Za*x45?U
z^>=y9AY(K#9g0j%g`@F?L@Y67F=4RnpAwp%j2M&@2PYCEk(fUejYYi94<l&A9iJ;d
zC83z)y3^sxE1cqnVp^k;D#cA^6y;PXW|>pWv*4__atm%LZnLPk!;Hm};x5aI;{+7<
zxNnf_ESp)*ch~m*2a1P0QasjpqVbexiWQAj;)>_IP`uRnUg-pD8n2l%NFNW+g#F>!
zY5!(9ibFVxb-lj9oYQP}W$)Tj&6YwxY?y|TnOofI`>))0Nee}V-rm{h^zc|mc+$J+
z?A^SIEzSn6!B(d`c{MGKB+_w9TX&P`{7POtl0`B*rP0}VM9Yzp$6jf1o}8_KD)teO
z&NQ;0ZVu2#k@Ges>?xHPW$fV~6_iSA{f=#|`;LlQ&JNM?IVQT?wv2#0f>znnBWwNC
zFhs5M*(xvs&QB{o*eG$DI82MIw#n`w&2-XEmqdV6Qp!xzOgH5f*NE++7I~Lag>+sr
YAZIXTCSPW%<mlyOU5?aJEt%YZ0Y0jd_W%F@

diff --git a/src/main/java/controller/HexagonMouseListener.java b/src/main/java/controller/HexagonMouseListener.java
new file mode 100644
index 0000000..976944d
--- /dev/null
+++ b/src/main/java/controller/HexagonMouseListener.java
@@ -0,0 +1,28 @@
+package controller;
+
+import java.awt.Point;
+import java.awt.event.MouseAdapter;
+import java.awt.event.MouseEvent;
+import java.util.Set;
+
+import view.HexagonTile;
+import view.GameView;
+
+public class HexagonMouseListener extends MouseAdapter {
+    private final HexagonTile hexTile;
+    private final GameView gameView;
+    private final Set<Point> availablePositions;
+
+    public HexagonMouseListener(HexagonTile hexTile, GameView gameView, Set<Point> availablePositions) {
+        this.hexTile = hexTile;
+        this.gameView = gameView;
+        this.availablePositions = availablePositions;
+    }
+
+    @Override
+    public void mouseClicked(MouseEvent e) {
+        if (availablePositions.contains(hexTile.getPosition())) {
+            gameView.placeTile(hexTile.getPosition());
+        }
+    }
+}
diff --git a/src/main/java/model/TerrainType.java b/src/main/java/model/TerrainType.java
new file mode 100644
index 0000000..2e6c009
--- /dev/null
+++ b/src/main/java/model/TerrainType.java
@@ -0,0 +1,5 @@
+package model;
+
+public enum TerrainType {
+    MER, CHAMP, PRE, FORET, MONTAGNE
+}
diff --git a/src/main/java/model/Tile.java b/src/main/java/model/Tile.java
index 8df26c8..0195d63 100644
--- a/src/main/java/model/Tile.java
+++ b/src/main/java/model/Tile.java
@@ -3,10 +3,6 @@ package model;
 import java.util.Random;
 
 public class Tile {
-    public enum TerrainType {
-        MER, CHAMP, PRE, FORET, MONTAGNE
-    }
-
     private TerrainType[] terrains;  // 4 terrains pour chaque quart de la tuile
     private static final Random random = new Random();
 
diff --git a/src/main/java/view/GameView.java b/src/main/java/view/GameView.java
index 6d79406..77c7a46 100644
--- a/src/main/java/view/GameView.java
+++ b/src/main/java/view/GameView.java
@@ -1,11 +1,10 @@
 package view;
 
 import model.Tile;
+import controller.HexagonMouseListener;
 
 import javax.swing.*;
 import java.awt.*;
-import java.awt.event.MouseAdapter;
-import java.awt.event.MouseEvent;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Map;
@@ -66,14 +65,9 @@ public class GameView extends JFrame {
     }
 
     private JPanel createHexagonGrid() {
-        JPanel panel = new JPanel(null) {
-            @Override
-            public Dimension getPreferredSize() {
-                return new Dimension(3000, 3000);
-            }
-        };
-        return panel;
+        return new HexagonGridPanel();
     }
+    
 
     // Ajouter un hexagone à une position donnée
     private void addHexagonTile(Point position, JPanel panel, int hexSize) {
@@ -87,14 +81,9 @@ public class GameView extends JFrame {
 
         HexagonTile hexTile = new HexagonTile(position);
         hexTile.setBounds(xOffset, yOffset, hexSize, hexSize);
-        hexTile.addMouseListener(new MouseAdapter() {
-            @Override
-            public void mouseClicked(MouseEvent e) {
-                if (availablePositions.contains(hexTile.getPosition())) {
-                    placeTile(hexTile.getPosition());
-                }
-            }
-        });
+        // Utiliser la classe HexagonMouseListener à la place de la classe anonyme
+        hexTile.addMouseListener(new HexagonMouseListener(hexTile, this, availablePositions));
+
         hexagonMap.put(position, hexTile);
         panel.add(hexTile);
         panel.revalidate();
@@ -102,7 +91,7 @@ public class GameView extends JFrame {
     }
 
     // Placer une tuile à la position spécifiée
-    private void placeTile(Point position) {
+    public void placeTile(Point position) {
         if (availablePositions.contains(position)) {
             HexagonTile hexTile = hexagonMap.get(position);
             if (hexTile != null && !hexTile.isFilled()) {
diff --git a/src/main/java/view/HexagonGridPanel.java b/src/main/java/view/HexagonGridPanel.java
new file mode 100644
index 0000000..dd9fda6
--- /dev/null
+++ b/src/main/java/view/HexagonGridPanel.java
@@ -0,0 +1,16 @@
+package view;
+
+import javax.swing.*;
+import java.awt.*;
+
+public class HexagonGridPanel extends JPanel {
+
+    public HexagonGridPanel() {
+        super(null);  // Layout null pour gérer manuellement la position des composants
+    }
+
+    @Override
+    public Dimension getPreferredSize() {
+        return new Dimension(3000, 3000);
+    }
+}
diff --git a/src/main/java/view/HexagonTile.java b/src/main/java/view/HexagonTile.java
index 707b475..044363f 100644
--- a/src/main/java/view/HexagonTile.java
+++ b/src/main/java/view/HexagonTile.java
@@ -1,6 +1,7 @@
 package view;
 
 import model.Tile;
+import model.TerrainType;  // Ajout de l'import pour TerrainType
 
 import javax.swing.*;
 import java.awt.*;
@@ -84,7 +85,7 @@ public class HexagonTile extends JPanel {
     }
 
     // Obtenir la couleur en fonction du type de terrain
-    private Color getTerrainColor(Tile.TerrainType terrain) {
+    private Color getTerrainColor(TerrainType terrain) {
         switch (terrain) {
             case MER:
                 return Color.BLUE;
diff --git a/src/main/java/view/TileView.java b/src/main/java/view/TileView.java
index ee0ed26..dd10353 100644
--- a/src/main/java/view/TileView.java
+++ b/src/main/java/view/TileView.java
@@ -1,6 +1,7 @@
 package view;
 
 import model.Tile;
+import model.TerrainType;  // Ajout de l'import pour TerrainType
 
 import javax.swing.*;
 import java.awt.*;
@@ -64,7 +65,7 @@ public class TileView extends JPanel {
     }
 
     // Obtenir la couleur en fonction du type de terrain
-    private Color getTerrainColor(Tile.TerrainType terrain) {
+    private Color getTerrainColor(TerrainType terrain) {
         switch (terrain) {
             case MER:
                 return Color.BLUE;