From 97a27887a3ef0edb2bc41954d15c9850ac4ea3bf Mon Sep 17 00:00:00 2001 From: suvam prasad Date: Fri, 2 Oct 2020 14:22:15 +0530 Subject: [PATCH 1/5] [Added]: connect 4 game --- Scripts/Miscellaneous/Connect4Game/README.md | 19 ++ .../Miscellaneous/Connect4Game/addNames.png | Bin 0 -> 8480 bytes .../Connect4Game/connect4game.py | 178 ++++++++++++++++++ .../Miscellaneous/Connect4Game/gameplay.png | Bin 0 -> 19182 bytes 4 files changed, 197 insertions(+) create mode 100644 Scripts/Miscellaneous/Connect4Game/README.md create mode 100644 Scripts/Miscellaneous/Connect4Game/addNames.png create mode 100644 Scripts/Miscellaneous/Connect4Game/connect4game.py create mode 100644 Scripts/Miscellaneous/Connect4Game/gameplay.png diff --git a/Scripts/Miscellaneous/Connect4Game/README.md b/Scripts/Miscellaneous/Connect4Game/README.md new file mode 100644 index 000000000..fab913ed5 --- /dev/null +++ b/Scripts/Miscellaneous/Connect4Game/README.md @@ -0,0 +1,19 @@ +# Connect 4 Game + +:heart_eyes: **Connect Four** (also known as **Four Up**, **Plot Four**, **Find Four**, **Four in a Row**, **Four in a Line**, **Drop Four**, and **Gravitrips** in the Soviet Union) is a two-player connection board game , in which the players choose a color and then take turns dropping colored discs into a seven-column, six-row vertically suspended grid. The pieces fall straight down, occupying the lowest available space within the column. The objective of the game is to be the first to form a horizontal, vertical, or diagonal line of four of one's own discs. Connect Four is a "Solved game". The first player can always win by playing the right moves. + +The game was first sold under the _Connect Four_ trademark by "Milton Bradley Company") in February 1974. + +## How To Play the Game ? + +:exclamation: **NOTE:** Play this game along with your friends + + python3 connect4game.py + +## ScreenShots + + + +## Creator + +:heart: Suvam Prasad diff --git a/Scripts/Miscellaneous/Connect4Game/addNames.png b/Scripts/Miscellaneous/Connect4Game/addNames.png new file mode 100644 index 0000000000000000000000000000000000000000..17b20010f72cb6f55da5291b25cb816b7c3601c6 GIT binary patch literal 8480 zcmc(F2T)U8*X}{=3L@|d(u*{yiV!*?A|h2#>7oJw1VWS0yMl@o0qMm8_#z-LH9&w+ z1R^bT2q6hd0!RxrF(iRM`hIi&?|$?BbMJp={<)bsb7rq(uf6ulTF=_&S?7g?nIYRr zzLNj|uo>OFZV3P^Tg=Pw_)(_BE_3J{^TrZjX?P9zJS6agIXLX5XQ~GP)hVaw505a% zCwy<(1^@ti*RPAE*XK_crcm^Wfz15@v_(Tg{BS-S=T6)4nB&h`56^c0C3?X& zOv=LE_mz=#upa<< zq6UYv2rJ@ejqWYzDHcwEF0{}0qEGH)?{lf<@o~KQLE1C2$&8WE~JS{Gs z&WPGUx$MnR2<1+UPvKkXMLP?ufKmm65doUSyXn$wLC{MkrlwzE2*z3=#?@(RQHP?= z{P+co_B)6l%*CA{EG<=o_Gt*K&1-amCWWXkyl2tJp_>+lG7nLlrJhraLE&~^R`c&b8l;fG}t6H>dM$tnT_ASkzb!26dwhx^a^;5VN z5yikBT+GYM!v%}oZ+A@ZvNmh^aMmYS--RMi`Pmd^yl$ecNZBi0x39S!Lg<12Rkb-Y zMJ%BV-Jj1x3H61oKLpx|u4k0?do`oDPi>n$$MnW)AOFftFfY`4t;-lA1r;%Y zmwQK7SG``&G?u-> zd%q-c2#Duk+rAy&_(le~vfE5A-xF?~v0C8<>x#`k z{ybc@S*hu^qGg{D#^zJtT^@n->7q`Aa@IpX0p| ze=6qgH8{R4S4VJq9SF@W;Y_*cK2LK8;3r#p&{_CRR*Y#FZn;iidL}A0gw3Z#4)?uv zY9qg;Zs}eoL51b&nSzu3Z&^NYd6}J2txdVMAaXG1#0UXNY`vZ*AbnXH&?6dZrWHCAZj%#B55v<6>4}Q_nV|jNgU=#P)IRH$tHy5k?nid}TxKtb zRQ(1;nT3h+9uHMMn3y`2ZzcRiUU_n7mHlEG$Or?bT=i|UPG2l6{~AVW?TqGqZ%24NkiVB-A z!#0wJBH-YMnzP)tJDoF6T{kX~v^M@~ZDqLTx@g-M1#v%QzlaO5Dr6g=oKb)vc_47` z%J9ey|N8-Zd18vtNzm^57W)9xEzo4KWT~XjB3>)QO?d(t)+z}!I(W_P@+*jiRcEu$yN^=3?1WzXG4}DYw)Wb@O%|Y?io7EZ(;-)cTlfBbKeza6{wtAV zz|~8!0szo`+#dkA#s5p897QY3{RnVX{_!u9GQ$!)E1BBQsr;HXFYpV`Z;SuZ^?Om? z-{SvT*}q>lkLi)Oe@~tN_4?+w5rwq`mGxt-+iX3ITGSS-du`nm?$&>nTg#D#9|la}}G(kGsYbtH4o zjC$$#&G(qxe!0kCcubXCK?qSlXSvcEB@I9-W=4JX?<_J)N(^jmE)fR@S+8X0=H#fO z@%W&0UKq4iA&-CM5m~B?yYH^8y`%bp;AMrjo9^d69jk%)7dquPj2my)2+@X8bdj}L zFmJRS5#ZDCO%8uFFjQfgMkVfO{!u<*lSQPa-N}8Y8a&tOd9V4|&&K+}&;%Ku{>$be zah!*#*RPa3^1Lvjee0dv#2Tx*np)=k{M>^@Z{vCg--GFqw4SY&jOA5_x7TaM`q@Ab z?vo>=9kriCZ}rT%BQnI1tKrnZ<9;}2e97M3MII;xI+d2GJ+xMWIk!y|L^BmMb;DC6oz zv3hN;)zTINR%|Bh)|e^4!=a}Gt_F8syUXqnE%k^MyZWG^A2Q=niGTC3W|lmo%|APE zX>)SK>sG+P3g1EKsy}O7o~C67F)S{xD*4nM5HW(}IZv8Ar|9Eq#R_66eBUxbHeu7Y z#PRi)tPE@!N#I#)#$MqS|1|L|0q( zit;;UdF_D*TEoSYV+QaayWSg9-dX&-v*cG#1es>)`wBAdaR#S|wRU+YjpFy`l&&jD z41dP69e%9$$)4+Hj%{5Fdg#f*TlI)zx2^Pr8(MNub(YKfIicIl8TDX^pVT`8QZuH_ zHNIrQi#eoJHZTQsNz!7Fwn!4DuQ{x1;q$E1Zeg|XjG)Kq(uUT&dOE75H)_t_+7t}} zhuES&<(3?-n{-vyOLxMY^0iW$;(sR?Zc;9~(hoLt4!Vps_Ihs?5xJ;s6S1)pSJRWa0Sg*8ef1#Z*Fk3}=B6G8TtG@XZhm#tz$ zDEC((3#V=`dfBYOKVE)@6nKZCoZPrCn6hft!~N%uHZ+A^bl%`pg{?X2E_$0$W_~p} zOnX1MawWOfKH>bVODgv4AV#n@Zyn`i*rK0#$z4#}(~~DA#IfUC%(c4>lAB|&Q@3$@ z;XW0RqB0pz@{~0CO#WEr5dRLb6&5X_CqDZN?z7ai1rZ?biXEpfDFlcE6 z=LrP&v$B@VI+=-8o5@)Co6ObXn_GSr9~r*ATA`9ujS82Q^N$6of1If74DW;Uh<)uc zty{SJmHfq03-bLJ{IEOXEN|@#UhI49W#DRS++0mPVtZ18>U_ds1F*qcR`h;INeHl`%^>05BWm9_^osMW!BB2voo5xTj$uTu8c+`Y}E!p z24ozv2npIFjLvrg-Oy9aT|XB?Di%m>snt2z4%Ar9*CLVt?$@O}X>H8sTuF(o)xJWkxYzOj_c(tIM6mR{=qrY=t*P_XcrhP{Ec-@6I z`|RuL*SPg`*he}q8?A{4KM3(u!y1d{ZGYiLWbN;P1{E6sD2 z?@9LkWHB?{9r#fswb1{3>-Jt5TEwU?Put)dPa)Kda{sXBHDq6*-ZW7kQn$hp`o48PXk&A=Aoo2{exm-&p2vE8R9{n_QYmUD zO+d~3w{L{AzCT`qz3ak3$DJQvE17eQ8{oh@84P)YpvsO{E|4+P#`r?sNPN$BdKS{H zOD1dNMFwod;pTdnCdOZn;>UO&gQBnFU~+@CWYyG?Q8b5f+LA^ZwpBrTkG2@l6iXZkl*#JPi67pr z8>D>V2o29J`U5KCv)$!bt{Iv$vd#d$6TQWE&tBK`UsN5Gyq(NpkeXsueXb4q7upZi z3xU2isS9|GJwaZU5MZzcJF8>a<)PT6+p|WuVm4@*hH+2&j%&82+mFIWf_q@S*4C#~B-`YztFhC785YVs3NBG5_*ZQm@Y=~$5BT4_kp zT4hw6a4Fn6Chz5oHy{jO>MB^D94%_sFp~^vw>WnGJE; zXu!V91{6*66rlv%bMmrn7;780dIc1=az(Q)lyYbSGRdGh8$vH~A!ZlU6Y+Hq(V81I zMOGkkz!ph%9UQzTO#i~ZezdYHLiL;1kD$#rOCcCn88j+lqi}~4Ndp}_(H6;7LC$O$ zQym_p4ZnKAxvP;BO7b%*UCa`%pLYRWec_~tjc<~fS8Z=@A?;HngWDgN%Qub~KVUk} ztrQFfn~^CL?1i4*$qEt_@ip?%5v~gR6YF=zAD&7m>)y2~X{|fM_~CIcvsrA%nJ$XZIJEK|Bf6qV8328U;LE!x0&o zc1!POt=L#hoxG1QrRf6caNk+2aimnwIQQeQP5vb*0z+slygEIh(UtVoo3x3Ec!pD# z1_?b1dQdhMnDdilU*At#D1vP#@KV|&W~kG&65)?d2@IiWn#P%#Kn%v2yf<4FZx&L1 z#ec2H)^u_@fYPMHr*N4)@H);2_lU2TNa#lB^-;1!1u)^w_HZ}D0p#Je3)CCHCdA} zNKm3R(eza3!k{mRiL#O=X>UL@Aq;ABZd%~WXKpS8>fwnqB3|e=PFHW{zjLM1={Whj z0%Y8oqsni(ZKUphF>n9+RQdb+|Gz@h!GVGNRT2qq1Y}Lb z9Xm72n>sX@2O=_`r6DJI*!0*P&Z;8U*v}(lMG%edcK`ON72%(2nNyhgqus)zIbkRX zTbeeGf%seI{;|C$3tj`>^5{iM{81e0E7#k*Zz0=^)-JFbPByh)mI&aem9>Nh09R#W z1*|RZ-y;v`nRt(wvPR!OtS(@^@)@%LMtp50-0fJSyL#L-o?INHn`wr_6-veysAk)B zh*!5t#!J4=$Rk3?T2WNL!CP)k;El<}skizc0k7KNGKkP6OCMv-R@@nM3{O z$5U&nU$RC5;c-=`08SBP)dilu4q!8zn!>}7q^#A{O@aoU4ax+4jGM*;NcCNL?Ya2Z zC1%_724s)N)q29lUS^JyGV0akemn=d2BrSz%L@G3jDu4}6LDr&RdwJXn{UU?mJjY` zKQrrnGsL@lys{Qz%!&PN0+zL7%Dr&RrZ5x!2qxP6DiXs6d_7CBw%ia1Q6db`?}F|+ zT=^CuZHTQYiEt4*A#hqQZ*Om2YP};?PM&}b&amCjWOEWnhEgRCp=L_9T$K)7Jc}*zssFWZ_?Fv zwz#kXgWsp!qv(YNSHFIp)W;ozpalN%3H_?cna@7RZ==^lR^zdm8KDqoJ1!gq$l}yX z-r1_X?6&;wM_#Ob&GxYNN9JMF&eir6cq+Yj^rA!7dChf33TP_b$%Ye+&KML_FDHU= znW8)Bo-d)^ASU%ud_C34C`Qszd1v_vv{X9Ll_F5(Y<>GNPJNv^=9(Y)bNQo4KniK^ zKo_A9fN>mh&lliX<8LR3YL?euf+f8u=z_8~W;D{y zOMW3Q;Zj$Qg~f1~p~&a(jwV}}pzD4V<@ zH&}pZ)h5JG!~yDW&M0bY-*8qM0EQ){bc+%E%)Uhqcai@GCXd9=MUaAU1Ax1-%J!^c z(JF!}1>tOW-JR=T1syF8*j_LV+1n}0>oic_T~UnKBj~p7yZ!osYuxO5YK+|RtwdRh zv2e+h22&?-|NBS+_V+TqXg>hh`EK|(!{wxIT4rM2|K!1+SFrkvJrFCSWp9u=%U~aR zMbXs18&G<5nEK{U>T*Z5fG|zJatTbiLVYV(4s}dEr&$$czc5LoXAiMGA^j1dfX1X2Me!Zca1AAR0C5Y@5-QuoO!sc-WTlD)MSY~NR~5L_jQJ3L8G zmJ7^Xgc+!sv3`%Df_fDEca8bHSJrW4kp{CYHdM4 zJvzf*SB)+UdRZ<$T`JV?W zC4~k+KUJRvkwC3u zG~N4XsKy+-flQt=v_mJsyDb%~=t69lNlbzZxtGBUId06dD71)FRQS!Hjk`{O`%!e@85PJqCjpT%w}zriYNrIc|l1&No+#o%Yi1l-~s%5lJeuhd~Nj$TOZ0 z&a3xSk@%>C2+*_QHtL{HAFORxK2`wvoKIaztU%=8XRq%1g2;s#v z!ux;mGrOxZ7UIVgV!*C;rLv}=iII%Hx*TENTe}Tm1AIGb0Gq!q4UJ*~#haNxw3?hT z)mQ(!y2IZuqYnTN^~ zFiZBiQBfpIHyyltq*@)4=HOKl9uZ&>*eo*THtTNvYtn1xBs){IgO5=^)FPmDXmPM^ zN3+-4bE8r{XE$9J@@rjzSb^bBO|nT$BDO_nvEbX)PueIyP|4+ArAtMoS^eQJMQ6_v zqAdrp@!V#46PjMzp&fVnG>vd+yVN1l7Z72uqk89BG?S1B~~-BZ?5|`_uY&O-!c^C?074qlrByCG7XBV&>)3ck#cwGHeA{fZ1gk zVpe+T9@2l=T=~}&>L+5E&Ff()$`3bP;@_qEOk~Wjlq#R4>4x$)p3(jO|o0^rH8d5p#p_M41BK0)wDwVmX zjNwwEl6#_JtGg1eiJ}#_;DUiGF7P`S6}6e?^LxJE&!68vx?S+xd(S!docC*azxB>> zb5pq=6n=ogU~-2K9XJ7leM1BPK779fd=vW0@(}oMk@pGH{jl_!pLyWJw=Tb%{SJd= z5SLG$`wo0wcJYv{Hw?D&4fJnOsn^p#z?Yjb2Tx;+FFT#XxOsVQI^~9Tg6-M0XP4gY zU3$CrY}&1@w+pVPrQIHPngW9zu|9m@_fuCK`q|406Ks%blXdLF*b&T6tB!xGw{_?3 zOkIUD?|mqj^n^#v7ZK5EjE;X4ZRR2pq{&(9qReVpqMX$E68%@>8eAB@%J;P;MS!EB+O^ z=8$|qnPY9aM^lor$V)dV51G$|Er$Kp?hdC}Ox@M0Ba9Q`VwJ|8SC%NFCSHvunzoLb z)&=XfJzNMi^2YJ(^7D!6q=q z9uFuH_{tKVa-A__ED6&ejC#Nyjne#?u(RNk7u~>cxLFb@{`7|QIA96vYHm@N;XqU? ztC_4k)m@&p-nX9>);7h*GA4_JQ+`#BN}=wa1|O1y<*ul~H7-dEgXjAFhN4_SsiuGP z^16vO5rxy@*3TcJwd2@houA(1C1;rzsNfr~32srkST+fz1AYO1?{Y$k>IGX2vGD_o zVb->uYq8_2Ej=$6e-WUxb1WI8N=bNe(zA+Sz7~Dtk)YirQ8!7xaMY$&*MN82uhpek z1Z2ks^j}mh+X2*81XQ*4$sdr!dEsKU7QqDUIf9v)t1jQq)Wiq-9%lCCr|X^M;F*^NVXu8+coV&2c)Q`yYeE0&V6kM>2wx)6?G-;B^U6oq z7>TYJ7kn6i!K$+8FSG~b-&j6l7JYnuD*-j$fjVO0-(!t0{O%t zmby~h&Iw*j?JWteEym=`BL{I$>&uWcUnVil-s#5%ik&eNpOc9S4Z7_uE9j!0h-78@ z70e(@J|vn}-v3~E9KqJFMi5il5!NnP{H0t?`=#2Xk;sLJpmVo}%4KtiRCDDj{CTk` ze|ynI;ctP$4qk;oGrRnTyxBVB)GI-caE%vT4|%zHTYlxw_yBZ;VP}!i=(l7EVJf0+ zTvAOl;d-rj$LPr z`QOP2M{9fQ?9;2|#;5Ql;pr6)vw_SWw zTKh=_8{{>>^08qR44fVxEA>2PY9Z>$?(OqBIyyPXsqG>Smth#pg4#FK0@YamntdE9 zyE$x>&W*bq>f2HBL+5uE<&;O7W}586{kT^yNw<(VH$NWNYNGYq_JYg))f07L>kPGn zQQ69pRDnxxxe;M#b)KiqUgmdhlN3XbqD2g4RBYR1?PwPY6KG6tHXn5n7PJ;zcdRcf z9up3aXODqi?|7BEn!)n)Rfp5O#$t67?Y;IrjvFm%kJ>qPP5F@W)Gdi7zQG26*ze_H zrAWSi`(UjpgGJ&ae2@6m^VE`K`2Lci46wC?vHJPH81_vu^yp@13zdh%cx}UVlP9L$ z?6in5>dQ2X;L-LLUCu1kAuzIPw<&54qbA?*I(W61b7EVDAHna#esvm|WYne}@JZ0V zT@rQqeAA0%%JAA=xhvwao=U32*~*tIp#hvR6y+f~MQ;>`-3G8Q*v*}~f9g-&`K5Tn z+eTF^+b=5ygjBnMppnO24iA-lKHaKqB6O722J4c-#r(y23I67OhiJkn;xXl7-f>$0 zh<=?oi*dwDa?i+uFrlko^xZ|e-OGD*#?&Z$QFDOLHC-dT2AXYnky?oS^m;V8vQYm{}X=Iiu^-_v1HRa(qxAjkJ0Aq z=+~-ZaYT7+qWCC5ux{XpE?8Dv%DPLFdNfW%PZRagMQVAmS?(GGk+3TvkM7vp1cSZ2 z6qdIW{CB_Jj`?K}eDC7NGp3#US$FI|<%W&*fDC3)#U*s~G?5PLDAhoV3)YuJPA!95E z({^3y(Fh7-sW)XLF3s+`u6!(6JjqC|3mi{YL&;G-1r1EKWshPBSfQm4wvfAx$I)$z z^u)7!RY{Ak?pcw}G!$uyxAaSDHO+YG1-0m6p*n9hxnv}1v`CXJ7Dgnql_ghLl0VfF zPC5*yWKWFus2DYT3n=g(a9CkrWH1k5%75%~%WJV$#d@35CO*Exv{0w)Xj937zxIo|2yp>Rx6vk65!X|H>%6WAyJ`#FWFoEo$mp3X z=k$bW?RugrU(+~25N2pMF)H9&*vk}!Q{;lK@!mQ^dH)Ywax>qrHncWl@lsXgMX=|0 z!R1N?418^z2Q@Z8yCwdprWsaTMm&aK-M2WQKXB4$xJ|37u0PL0?DQt8U9fRf>@W7N zP)F?(McgsIRlAQQ5vc{3iM?x7l%r}NsDx@NY+xh0KFPO__;dv}x&#wStktGSl2CKJ zsIo4Kam7Thi%B%^!n2Zt8CQ)a?pPd4o)l^(V}`o9>K2$D##C#O(ZnN(z^InqRE+4C zWNIGm0#w3HvW{?xHDOB77SjxEP_Z@RNnQ$)DsQEU57`57>IMQGUEo=u5j&Aj@_&u5 zQ9E3Hxf6?TT88rH-&mJ~JbAfU(t!$m-PBjRDS0uf7A;$B*e9E36iMPih{DK}2 zMwTWFBBts}i@n>{de{25X^E0V=3+{*LVMm6>dSW=TAcr@?>NyU!GHv>$4jBqHm^fH zHuoFwS3|LbwTk;&_(do+$uKIp4mJ7N->7Z8tB)#*F2`2qP0)I4H!ui+dR?oCdmTu( z5ZbY#{`R<$$^Le8`gwY2yC4Kp;!V<5QWOayd%Z_&0-f}RT>@46X~T`>Hp5(gK`DpR zr)IP-)?X~*wOTsh9zPz>j0jfFYTmb0zRjLuOKiT)(LNQs=-$G*t9t?)9Gzuv8tTZ(^AaM}Dngw+f5hU2p`0QLHn=ByKwh#dRrm0)(^QmfJvIf%^IC>NtBqsi9F8QRaBoXIzImiDy z;6^Z;GX78l6nPiIuuXD-$*5Nw=Tdm6>1bCflfxMyjorbNEO)rSGT2jD+~~EjJ&&zC z<*L^a?Dey*cV4hU4%y<$Yi>c(i@_R9iM;qMYob_!)zfxgKcFz>FlzAS8mIKj3(KDy zbd_OT!(r3n?t7~3^|8#*GkPBNk)6(?@4GMgVlZbjeTC(`1m@t&XXJ@cLWBiF%+}5gV`{#^ zY-=)I7{=?w7O5w)wbquJ$_e%n{m+0dJzZ%ufD5%~)OP=?CXiL8AsK9vOJl)lX{A@C;GnE2DmP=OpZwh(~9X`V{;6Vl{H1~ z{PaaP(6M82q-rpq)tzy9;%T#?a6ruFqICNF*}b(qO+QN-k3C?{%dS%;88Q!(3%yU` z2KC#cLShMGZkAew8M8U!%$^q}qkWcx#kp9oaqd$~Qe$6NLs{Vue%=nExW=krC5lV1 zk~gRH^V3g^;E&qLL6<9i=srX1nLKH4e%HC9oJ)8za%-9mZ;Hc z+%a7}-j7WvTE88?&Z6D#Xvm5&3BBNXc{D`zW>zu3w?y+`=V5X7I{L-dKZmwi+%7Pw zZY(E^xP&q;V1+2L6Kjepp^b5)`kO=fexFyDMp(C$#}7=<(V@*5w+yy!#J^QBk2J{g zH(9#0Kq639Q_j(pDB<4iKrQi1x75n)8W4L1z;7U0MI^~!y{fMM9{1eA#+yatR_Ai{ zocwbYHWQH@-4S?O+QcBjt1!iIt7y|ERIXR!-H}h0Y~OZ24?R)87b&3gK>n&4&BXR` z`(k*OsA46d37hza5zu+X$v`&}xo@~BP@|tN>cq5YPQC_@skDy`30Y}^ZNFT})mq+j zNjd?iu6tlg&Gpf(_ghEWCH^!Ke&DEX@dTS!!~7#hoq9P)p`wtXqpOaz*B`9Ha24sB zV}-rN2!Jukg`IF-SsjV)c=A-a>%%s$3OYyqaIDx;a7-eR%zp_X5W zm$C}@AddN;8zcqzv&TFd8%u)EDX+wLVa+|wcBeFDEJa)dbZ&>KvSduqU?hBH<*=w` z!Zx|Ty3h#&!;F%Z;3C&eCXT)7u_MAb%n4doosnUG+@)p3CrunL7qZXQzo-r!We#kB zU&2wnZOn0C@5WF5`YNbF(TujRCP&;LxTO zIAp3OVWkyD>>OyQ^4H2^`MiyK@oG78$KO4O>jq1S{* zsS|BuCFM3N-#$xD@<()eoA1q6Z`wW((K;+3CKnNeYN3n}zvNN6E_<+e3(!gh6jFeP`?l#|Y7;YME+@_ce2)3mqCl z)ALo?!;g}o&6ShIFvsGV>w;}m3+|)P<(mCA&7^3X)5O@oae(eyg6dp-mfTLgZGz3p znP}5xi?xhGN2Y29f?`tAJCmf`0bCVcCxvRBC;p@yVqsoRaW(cHvLqf+>nciLjT;{1Tc(8smPZ6p?-cITr5U#v zz3^?c<<(T~R3x1pyJM*pHhR2G5NfoK?v-C&?NZc5(X7&2UVI4Kwok0?rDj+B`emUJ z4&~m)s=I*8X~;g^VkOYI;id}G=LW-x|IVD!!1^}cvr(i85nhHPuxSr zylS)R3`gFhCc4hXz>zF9Ql#eq_n5?ojFm$sgP~b4c=)E)p9;yZdRF|{d{%*7 zDEBF$SQK-FlI`C<-grp`-pfrY{3bM*5l1@5Sc=%?`SRBdW(K!N!>NLtlT96ID@1=h zz*KAxWgN@%um84f(2b-ca=ocP@H49DoU3q|eQAw>R_tWlDB!rGG|W~K_mKyo=NV`9 z(8$z?7f~_j3|XMWzV-pI;8U#Y1>vIso_f4=4^igX0-a*F@}Ic9?>lYw_!7E}Lm4}o zuAFfQ#6^#&YQ%KtVm=(szNC;=1GAL#?A;$&`ee8WTNl*MskJzR}y{Oy(UY>Hf{5=JssiIwc1_ib9)fcNw;oqxv#aa!-}fl6P{&px>9XL z$300Gga%` zI8KZvYYlefIRA{{YAjPL?nQE_G22*sgRNbzJ_WqHb4_LdvUUn3+{RfRPi$YgmwL9N z_jzZMoA$Ym(1Rh9Erghr9jmW7H|MCcMI`Y_J^YZ%0AO_$Uf(@NIT+#UA9vVI4?PmgQ11Cq~z#HbJs~MaNh)Tin170mJG5ffoebA7TC#j1BS`XDpl(#(0p+=VED#nPx~^jn-3V7?GygR z5xxYjN~xv`wh77ci0cgNnSz4o+XOeSgX}P4hQ9*~&k5!vIWxL z!#(<)UV{m&KXWRZlAE^QS0MxBY6)Tzc5cJ21>Rcw3CDR*5}>h@G`@wf0utV!j7 zvu{cFovB9VfiTUoIL1eY%TQOuzXpG>rt5StuP-h2;`xnolypVuu^k#KMcXO`cMs7K z-Ns6L0&U2JKgCepqS`lT6!!)8rDoM?kR{kQxccB>s|nIjf}r2twAvi8FY#{SHvv5i zai5^_(Ntw|kcIZXk-wHEl2McIIANa+uEmYtD~>b=h_6h*w}n5@B!^pEEiabvG;!r) zgUuPtKVqrvw7^xOI&mf8aPm~GW?~L=ssKGSI&OcbbD5;CFz5W%Vvm-M8)LO|M(?VZ zcscrYJ>BquHPn%3f|z=zsZ{*??})uos#KF$ExqT@F#DNhV_RdHiz++QepEx^I>t5@ z>!8}TNp}c?Ep0mVBc-&-5LB|H-ogx_fUg!$aY$iVA9g6acIa*@3ue%nj=$(4L`YWV zr1#(t!w-(`JdCYwCb4e>?6*qypr^9q0?G>v{Y!{<&JY8f?oHlYf+a??t4G9CNm$L~ zh?hlyPEmfTA(vJTH-#L`-Yz}Dw((bQaWyyepyPOr-1<12%AJ{JnD|16Yq z4>-RS_6`^m6f{~RR_th`6L^$8Y?uXm^gDTZY7*JB)FyfFU=-tLRN9te&IXv%r9BGI zf2tWDry6}?HG7Ee{%f>YGRDmc$hnb?9pIv1zuYic2fMnZ8Kf^}k{JI>&jO@D{@=TU zThq10OB+@57Qy~nZ;e?5`{ki@R^8@K7CA5_XnJ)*Q(k)3JVkmX&(EH@ar}B}Hu-niji62oKiGB!^WQK2;NHFXtLLQfFunWT zHveHvx0rvY(_BlWOR(pi&8do?@u3T!;%C=RJAN5fcYwe%UfAiibrV+WV6eaB)6%-r zSr1CAnIYeHY$hI>8$qI*Qd(+vy5IM<2?}M#O3b+-AFWf+_Qc$HzInd}H{VheLz}ivY{lhsr!ec8@G}jOC z!s^o=7)o=2zT{q4G7aIrjo7oW!LzV6NEqzyDGJjk+Y%K44>iRvn4^@&)XU(p?|dxv zaXZWxbUBPQy-|OKx*YA1byMiNph0D!0%TqObw~kvf_5G=C$%k3$9+3-WNt>lf@^*j zK5v!wf9STe_Cke5SCAKW#JQpVuFU*Qhzd@38s_gfVUNR@&hJ!ZHf!E96XqU2eR@(6 z>GG{F)jYU^X}DnZ*n3FOGiTVkm6|jO{U)O8Pbu{;xceST(!9G@qcIxPyyRfJ3bNsX z7v`IiD1D>T0}fL_R`yos*c#)s)fTK72e~xJMNX&)PA7-_^V@B(W3Dm5BO8w?4VTZ` zwdbGNY1xAv@XLvQlO{`3AAJ20rG|wKPO7UztIjPRG$;+gHy%=YHvu1uxOeomp`=eb@Ph z-;{*6P3D$GbmQ5XkZ6CY!OF(WGwo)#{Qd=(3Qq@3Zg_9 zT{wt!m4B>v^Gf@IewC5q%=30WT3>R1AawqFU5h)_)ZBO@?Iyk6fpz_>yZJWSlM6gu zuRYS)l>4^`SKRaZzLIOA{M};zx<;D6mU>E>mny4QIG%%a``BsyBZ1WU1UyAnLR zVM=|AP!1P<0RS?NT(^yQ`erTH89H^6U7ys8K8Wp>&#Vnu(y^-YeN0KMHFoau8a*$} zEv1*%#>$&O*R!pd@w$bxT`MC;LyKqaejV-v0L~);JVM!M`Pl4>J=J7Owm<)UuXN2F zEuXNzb)`LMwqK@(XcA&iF9Ek zy2&Z%()NG&F@CKOIz+e1t#UsXaN$e9nrX^l=6;R{MQ8W=Zavlq&nWnVQs2tdI}NS< z;kK(ej`|FnnfK^wwiY1ZuIZf*u*{5qq4H_4V0TOxWtxB3Cg?1O)AmPF84Bf&0MZi5 zW5MYL^{^S*-W6aVXf5kymb?2LLP1!P>4#nWEX{zHbqI~N@2=UB14qy}qF<-! zRZ>Ia+`a#nHH>C;>#02V_i^7rzeIOZsUjlsXNWxdRou*@6}r?LGYMf_&)ZayGH<~bkJ%# z#2urg&BHW(9a?x(OH)FU5Sk+v{XJb34o9$L4_n9-@`KYmhDWk3kK&;D2dx1GaSO2!z9xka ztsX(f-r042BGEU;8gpZYQ2`9i`unPL?)?Vrm=t!mUeD8XqFp(}&z!9Cpku%(*=Ty| zE2L9r_mt^VzZ*q@KZFpqEQJpp$08ZCb5x(ke63D<9f{tM^Pm*kQ_k32r}~ny$m-b^ z3!xS4%W6KfM+F(Nvb~qBIwEBSB@inBTYNJS+UHhS<3H`zD=W(OL#SPL<`eax)A0MI zsS2*XjtwuzKqQz}1ZE!3dtY8#>=D|M_M#_+qMB!IJhU|4;CwzGBxa!xs_k8idy)sOF6+!$JxT`AfE0os8v{uQwf2?WZF5lUbh_F8Q z+c6d5=_l#@^!?ZMgJsu$cwP_i)#(3&IWMXVT0G&w3y*FcV8U` zlgFd*8d|L#X9iaJYv(GEO;7DVzTzfOVMklcsGYeRW=Cedjrb*)zhm&5J+N^wWu5Ss z3ar2lGhlhbPU$)tFr~9<0Jm1aVB>#%&4d3LpQYb&HLkkdFgPz*`!Zt|e8K%bDY9|j zQ7f;y0a{h%;o4gZ)0K5Jg$p{0E*Q&NzqJ8?Yc3d}c2UFZ#hG^@`Z4hvCG z{vFY6t7rQP*vXC@Cel~nV%zXLh_>PE)|$)|GwQrKd}N~Q4zo|IfB`77RBTPNPW%K% zNF^UY$(G?jTt@t#_vLt4jVx7b?>wL~gNXgJySnlT-1Y^) zK`3?@INO_`wezzy$T}sZ7viYXv+cA%XpW~oP{jg({v)7jE?6~|Nq6+A0!U5*Jbno2 zg9>*~=s5PYX0}iD{~$Y&jaBZRKyFlxJ(UHuQ)#vxCN|$gcq}}9W?fDlcPEIs8J{9&`-Qmi4T&;r$!}B>+%xng#;4i}ywUCr~=CGzfsalEIaWm+z(5&)lp_dG9W%aQ!gW9XH#ZW;@6K zsXNZ(-l~_=Lfhp5izeI;kq!ZK<1EnaNz0w5N+I>`Fr(hV98K&8I<|hyl{EXXD65n6 z9@Z%Z@;VcZ4kiT36Z`#HPZI@9rP+IDp457nQags-On0$J(|V5>32z5-^TI$J!#iPJ zTi~+*_Q2FIHm!SQ|Fx5)KMurzALH8j;6xUCpC;F(E#G!?_q4RR;Cm~8GRaS9U86R2RXj>-1ToxD6*@=H&&#qylD&W zpBd9;h4ysWJrlrzZTWp&w`ZfxFH4Ley-7{7@wS%%`&Yslty>h`;ygPt+c1OIy0omS zH7pmur9SX#OLhtVDUwgA(+eY)v+dNp(nkJ-fmxc>t zG&~D0oW|%#BPcw#ee=R)@CS#8MRiq$%L;a`4$zvD(9;KF+fB#h72-oo5 z;iBj{u%2lXX&PygM}^uveo8I(UmH4pXWZS>g*g;gHg@~nB*csWZ3$;}?*xFK+Ox?P z+^90eyr<94 zVoqxxdHl9XPCySUEcUrQS}hyXe8Fug{1#z06ybhUrn;wR=RxUtzv3Ri?1$oWfTY&1 z{qQU6!N-)eQ|LA54)+G@%XxQmGr<&8yqR3(A-;dhV2fL{De%iEO8eJ7TS7tHae3hW zyvNKFd?*3z8oU;%os~4Fz*Plc&&QXufetT$Y_MH~3%8Fi$6dH@y5ny$Ji{&rIBDnM zSb+O)#~@+8n{XkoD!R;3AMnvRG4A*i2?z%!wN2LDVutNFsbmu%fhghHr63fQrKQ|GDH4M3x(b~b`z z5OJKA8YLprcY3H2#{p|>hz5%5#&ZzWU4BB%Cjx*ObV}pA)SW){EOt6_pMd;shyvuK z%%=lQ&T`etGCTA?a01QBTu3R-k^*oZZN!qIloFV;1(?LjfJ|*b3WhT;Kv0)^V+8)} znE;{*Z~~;`JD3QdD;7Gp5SzdPF!i&|g{VR94G3O2Waxa736!rokq@}&0#kS%L6|-T zy1VB4K8IKZeR3ht@qKrfvneMXIb?8tLEH_#uO$0}1c-Luzxw^g>c9a)e=KGUz!havNoGHpy(Ee5m+eZ3<)nl z)B#)rjFu8p=v+jec3wbaT)YF^kEPQIAlyNHUD_-H$ zkTPHM11qaaxnbB+9d`=aPG1ZEOm{et|CuTJ;J60??Z!?bv>OdNq3z_6{RMd65N|)$ zIiF)dCcvc3X|LRpEj#Y)_x`^|;2~tNk z%&oo^24WZy{-+1!@*aI}A=fDRPqG^PpXXvnG0e;~LM zr_N{Tb0_|g!4R2Nle_Z*d?<0GR_T;6;aP5W(jVRS8;*Fe=HR0*HO~age*evO^lum7 z*~^OFTIE&WZ2S^l_?-$6eKY+AtiuMmzIJii(C-iA+|KX7|HQaizc(BxwmGC);Njn) z`Q`kudQ98W25S@lDz-$1GypwyXfYc4kE}MX$lBq50@YCN4{Ylq3aho|{A|Zl{UF!7 zdi;lXXP+if53{*QGZf?!C;%EX2-)gRYX-k>1}w%Guox}0MUU!$Gt1Kto(I|LGEM+o z_i)^z4X~+b-B&TsC*agYjqgV)XM3_;gZN4ZDAnhoASDZatrGwL`+ErUVhbQB*{|&% zmweW^>Ij(C^eh#AcahP#rf}!tq$u2KU!>}ob0<98$L(s2tOYPP?gx9eyd%Ba^em|# zA|ZZoG_dSl{U~#7b`wF_7Yb^#&k_|nx9OL%@dyC1HeB;ka@JgTgdDKGiViC zA2DYzNE>Y-${lsXke57fNLg|J>FP0%jgB`(U(B-$yE%`{%+CP8A00MOtR0{|jn~d^ zz8~0haBii|GaG&$PdLr$X^`atW=KX~>Yxd>dl6V|i%zgo81L1FWTwOHYE1&9Iq}AQ zIT0dkthV$1z{xwBQ}QCj+*6*WXPM-^{jm{ZD0}ZvLH1f5N9dg<-ZNvGm%k=+mjy(3 zYc_(TN=(b#Iyom0x&iBF2dWCYX;m^W^+02W1khb)b9^10C6Hn zY9xxM69}7#r=#m%Pg{S$)y#&HedlxBA&TNYV@duk8ts5Q4k(swMS$D^xjYuomE8y^ z+*L{GiZIelDFZm1Hx!VYs{k)K_8H?U*Y#*Cs$Fw=^Z}lx#OI6Ar*AIfY&;AkGaIee6=D~HXvUfyXph*FnmpLqku}RSqHI*5>x1Wk_o;KHys6d z+o)jw-+7cL71`4zDV0h1_oPLFD0VzeX(*PEk zZNq<9b_I3-si9RIRn-f4Ni-WG+5#v~p+%U^k&(da{5r#5kzxfocqubJ9>`Wi8KnR| zFMJ9rK4#6l?Bl>Lfl_vVG`K@Ys~L9??8XHu!Sxg1N>xB;L{_;#HeU_iP87e0{(b;TEmY;cR&hbO{L0}P_J14E_2*HoiAy$!8C;ha#u~2c~NR@(r=Dj z#_-e&j9b#r$(oYmYOFE0MqWO1ygiC`U5(smT-Lp5YIc7RmPOj;wHm#A$f| zbaci_v%xdc(saIOa#MT)?PgXk^G#;p@YW-PfpoahsRokfG;X-GS{$0zCy_ zaiyo9O-_F7yIB%3Kha@^3Z<17MAM@ks?kvXUMk=hBs*Af^=56=+3X>A&jp-7mhgak z{ag3ksE5Pi)cF30SvdROCq42W2fwqgDUs2uE6YE|RjXe?E;*((sM<$6_N96*^D#Y- z^XuWvTBIbzodt{#<`9&|nQ1exG~o$db-?ymk6I5UKlWgq{}vffn_ndNM>Dt)Memtr zL4K^0RgA-Iqk~F{;kDf+a%U-48#Y<0eMz%++D~MC^vwBH4$79yypDdq;=&Kdfz2^g zu+#mQ&?`C#?LL;qZkMy5Qo22}9E`gg=>>9Xg!^H>+Ixo%XJj`};&p=))A%6wAzMeX za=L_UD^k2gcVgPzl|@kMWp=fiL92E7WDP~*x%{M=LK)z_(C`U$1` zcEVaHZrt3aJ2$3zc@oodz=WBo6pguLiIl}2RJzBTN&$xK`&*456ViXkk>YClZ%Xco z98knSv9d2`1HzInSfwrx6o<$d)cz#QtH4VIYy03_MMH-BSuxNixH6UKxx`82TPSCu zI+N!7O51#uJ$dWiFu$_lZ_!AWLpdA(`Msg~fUY6K01c<+IcSCX5US-;a1(jAz6KN(z8i!}|DgPXYWwm@+c2@HX9zeM7l=>x- zP=1^MN$3tHpfyo8#$WmS4J`oaigvU>27k+p!4I8_A-eL&)E_{ldCvT*2~hr)36;Oq zS7u7#b?tuvuUU`_1KfpPr)J1YX;}*uMSyw+a6TxdD+V+Gum5FDL|>3_K~V&t6(Y!2 z0kskUmj16QBLc+NWJCp}g#15tYM^pQt;GdkP_eesaaQ~nRID~cTKNFHln587S|V2y zGNb_M0N;opU*%Wg2pEtpe17pEs9C{5H7m7%+(1PunlnW!;Ji~xS8&;&-ts@xOgO|r z1u?Rs3E-}DN_`cBXt3V?RykptV+WXVR?2@`cC+;pT2W0+PSx545Ygs9j-ay`;xFZ7 z;H;gy&R}5o>XVp_-<^Y8)yOI+rz*?cfMkwnCgBPZ8jthSB~q=R-~$pu z)@k!IIDokf%8D9m6V`$f;vZD3<&JgErg6XrpdsBi0U=hGy`*5}&wHQiCsNPI^>=jF+W6ke zMZS?WouAWbd9O-?>K$b@7c=}}uHy0Jolp@ZQLFhNNj?WdJ$fy)=MC>8SV#Sj%S|P+ zYNH>eoVcYrLAFv^hwr{;&^P38noHlOJoW;DvY=b2& vpvvZ@Ie_Z*AWr~(Sz^JjJ6t<4Ud;ClUmHNxfc}6L?C?SJ1L^zE{`>y}Y4tTI literal 0 HcmV?d00001 From f851c0e5ed6e9daaab68b076d07dc2b78d44f2a0 Mon Sep 17 00:00:00 2001 From: suvam prasad Date: Fri, 2 Oct 2020 14:28:09 +0530 Subject: [PATCH 2/5] [Added]: connect 4 game --- Scripts/Miscellaneous/Connect4Game/requirements.txt | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 Scripts/Miscellaneous/Connect4Game/requirements.txt diff --git a/Scripts/Miscellaneous/Connect4Game/requirements.txt b/Scripts/Miscellaneous/Connect4Game/requirements.txt new file mode 100644 index 000000000..b3f35d579 --- /dev/null +++ b/Scripts/Miscellaneous/Connect4Game/requirements.txt @@ -0,0 +1,5 @@ +Before starting the game make sure to install pygame package into your local system or virtual environment + +install process - pip install pygame or python3 -m pip install -U pygame --user + +more details about pygame - https://www.pygame.org/wiki/GettingStarted \ No newline at end of file From bec9dcf17adee36dc7c78b6d59c71f9f3bf2a608 Mon Sep 17 00:00:00 2001 From: suvam prasad Date: Fri, 2 Oct 2020 14:31:09 +0530 Subject: [PATCH 3/5] [Added]: connect 4 game --- Scripts/Miscellaneous/Connect4Game/README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Scripts/Miscellaneous/Connect4Game/README.md b/Scripts/Miscellaneous/Connect4Game/README.md index fab913ed5..57fc0fe13 100644 --- a/Scripts/Miscellaneous/Connect4Game/README.md +++ b/Scripts/Miscellaneous/Connect4Game/README.md @@ -12,7 +12,8 @@ The game was first sold under the _Connect Four_ trademark by "Milton Bradley Co ## ScreenShots - +![add names](./addNames.png) +![gameplay](./gameplay.png) ## Creator From 8fed1868c4e7456f215dc56f9193d553cdf669da Mon Sep 17 00:00:00 2001 From: suvam prasad Date: Fri, 2 Oct 2020 14:32:09 +0530 Subject: [PATCH 4/5] [Added]: connect 4 game --- Scripts/Miscellaneous/Connect4Game/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Scripts/Miscellaneous/Connect4Game/README.md b/Scripts/Miscellaneous/Connect4Game/README.md index 57fc0fe13..0725d809a 100644 --- a/Scripts/Miscellaneous/Connect4Game/README.md +++ b/Scripts/Miscellaneous/Connect4Game/README.md @@ -12,8 +12,8 @@ The game was first sold under the _Connect Four_ trademark by "Milton Bradley Co ## ScreenShots -![add names](./addNames.png) -![gameplay](./gameplay.png) +![add names](addNames.png) +![gameplay](gameplay.png) ## Creator From b69b43fb57cf6b3da4b8f6505109afffeb646111 Mon Sep 17 00:00:00 2001 From: SuvamPrasd Date: Fri, 2 Oct 2020 19:25:41 +0530 Subject: [PATCH 5/5] [Updated]: Connect 4 game --- .../Miscellaneous/Connect4Game/connect4game.py | 15 ++++++++------- .../Miscellaneous/Connect4Game/requirements.txt | 7 ++----- 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/Scripts/Miscellaneous/Connect4Game/connect4game.py b/Scripts/Miscellaneous/Connect4Game/connect4game.py index 624137070..7b3a037b3 100644 --- a/Scripts/Miscellaneous/Connect4Game/connect4game.py +++ b/Scripts/Miscellaneous/Connect4Game/connect4game.py @@ -36,8 +36,6 @@ def get_next_open_row(board, col): if board[r][col] == 0: return r -# def print_board(board): -# print(np.flip(board, 0)) def winning_move(board, piece): # Check horizontal locations for win @@ -97,7 +95,7 @@ def draw_board(board): if player_names[0] != '' and player_names[1] != '': board = create_board() - # print_board(board) + game_over = False turn = 0 @@ -135,7 +133,7 @@ def draw_board(board): if event.type == pygame.MOUSEBUTTONDOWN: pygame.draw.rect(screen, GREY, (0,0, width, SQUARESIZE)) - #print(event.pos) + # Ask for Player 1 Input if turn == 0: posx = event.pos[0] @@ -144,6 +142,8 @@ def draw_board(board): if is_valid_location(board, col): row = get_next_open_row(board, col) drop_piece(board, row, col, 1) + turn += 1 + turn = turn % 2 if winning_move(board, 1): label = myfont.render(player_names[0] + " wins the game", 1, RED) @@ -159,17 +159,18 @@ def draw_board(board): if is_valid_location(board, col): row = get_next_open_row(board, col) drop_piece(board, row, col, 2) + turn += 1 + turn = turn % 2 if winning_move(board, 2): label = myfont.render(player_names[1] + " wins the game", 1, YELLOW) screen.blit(label, (40,10)) game_over = True - # print_board(board) + draw_board(board) - turn += 1 - turn = turn % 2 + if game_over: pygame.time.wait(3000) diff --git a/Scripts/Miscellaneous/Connect4Game/requirements.txt b/Scripts/Miscellaneous/Connect4Game/requirements.txt index b3f35d579..014aeb86f 100644 --- a/Scripts/Miscellaneous/Connect4Game/requirements.txt +++ b/Scripts/Miscellaneous/Connect4Game/requirements.txt @@ -1,5 +1,2 @@ -Before starting the game make sure to install pygame package into your local system or virtual environment - -install process - pip install pygame or python3 -m pip install -U pygame --user - -more details about pygame - https://www.pygame.org/wiki/GettingStarted \ No newline at end of file +numpy==1.19.2 +pygame==1.9.6 \ No newline at end of file