From 4fe3ab401043fb9d75a10d01cdbb5c0494aa3c6f Mon Sep 17 00:00:00 2001 From: antoniolucasma <103431084+antoniolma@users.noreply.github.com> Date: Mon, 18 Sep 2023 23:36:29 -0300 Subject: [PATCH 1/2] minor changes --- __pycache__/assets.cpython-39.pyc | Bin 1848 -> 1858 bytes __pycache__/enemy_class.cpython-39.pyc | Bin 2637 -> 2824 bytes __pycache__/level_class.cpython-39.pyc | Bin 9381 -> 10159 bytes __pycache__/player_class.cpython-39.pyc | Bin 5120 -> 5140 bytes __pycache__/settings.cpython-39.pyc | Bin 1581 -> 1703 bytes assets.py | 3 +-- settings.py | 1 - 7 files changed, 1 insertion(+), 3 deletions(-) diff --git a/__pycache__/assets.cpython-39.pyc b/__pycache__/assets.cpython-39.pyc index e52eab28e0aa4a6eb299a6e3bb5bb04a44682885..001ecaf5367de3188c4fbe9824d1c6bd1bf8626f 100644 GIT binary patch delta 65 zcmdnNcZiQSk(ZZ?0SMv)*;1o7@@`;LFi*CM2`x@7Dh87=smVE+1;wel<@rU~#RZAU Qsgp0WnJ}_U=3qAf0B&RyBme*a delta 55 zcmX@aw}X#2k(ZZ?0SHzuTaXmLk#_@|m~OIFOlWaxQ8Ac|aY-%CF3B&Le3#9Hk#({V Gy8!^#DG^uz diff --git a/__pycache__/enemy_class.cpython-39.pyc b/__pycache__/enemy_class.cpython-39.pyc index 7d6afefea9a117b9fde4b96dcb4ff69a090089ae..00fc0973760562fe98b233e01dd12188907429fd 100644 GIT binary patch delta 294 zcmX|)u}Z{15Qc99cQJuGEW~;m!GH=@;$eB6hX}#$nsGB6t4SvACb82>u(Q~_!4)EC zA=lVh1nl$y?0pY6BKH^5{QvjO=f?f!2#3S4=d$?lX}bP8Dm*xne-I|eyTG4i|kK)8W^uNWxUJSm(#2)&0Vt@JWZwWEAKWjH4wn-3+WBV2~V)6@} CL|>}_ delta 105 zcmeAWJ1fGM$ji&c00h5hFG%X;-^f?MBxaOs6%$&VT2u@sV_Z^;vrF;|HqT?4!oyJ%97|&X4z~S|Sk*!1KmeOW4obFR1Ng;KG`E?eTySGva3hM*K{0I1QtOp~6UI z!HL*J%bCz{26RcI33N@qt`&4kjTGoozAg*8W+M%{w69wRx)vh?x{R;Ofv(laf-VcX zC9_7_>f_`z2?l!QPeF@r)&~yn6O0QF4>P@FRs`!kVe@06qUlVQL#s%(elc_*SZmrF z$S-x@gNsG!+_ST6>ZVpQs~Xj)ZkNZ*qRX|ZccH9=Y{CLyVharmg`mtx`fk zw@aqL>x|pntlDKqDB8iuarB~M`PE}R?xF0UsmrY75S;Um6YV~>gt+7PLYv>G3%1S+Zqv!PH1%M5@dl8 zCT5#sTN<4DrlI*P2F)7~nwgvM%wV7jd3DYoSs3yA z5cVP<0X_sUERQ8OL>mpOI3jeLGxQH}T#_>= z16t9zhNU!Hab-+cVUNO`&Y=c5g~H)B^^fD&pSXh1h!6uP7S0dLHu zrtC_$*Zb2weK!~JHTqi&>RK@U~ugOmZf7GPzUoB?so-L&KK>7$8&YwKc^sB z%M-DqX#OyQ=bL1RyXA+FMi1x$4RX50%wYuhlL+3zqbOljLmZA|+B;i86lnm++=Mcu ztXKM#h>}*qN{d3dDz~*Sm$4OV>Q^&qLiWpFTL;M@xhuQAL5Dpf^7(A8WeiU%B8(%n zA?WgQc6sty6mtj<0u0F?vfp)2;IM??B6v%dq2#T@&AR+{*>E?OG_N9@MDUg@tV8R^ z24jN|kYq+c@i$P6ego2pnM>f!oq<1HZ4|myblldL^zKP$_LrfJEMz86AV;8~1ZF#VL7wk87kd%OrI1`$($0xK3~xR>d%rEX!@Js9 zlopHktMZG^uH5ai&D*BSH#?g<7vetvXI0T^1O(_YQ6@QZBSY){~e=JF$O?rZXD*S+NOW%>Pz1GT#| z`Q%n6+ik1jLa^`3WHT`N5O;<_0Iw<>HTm}Gpe;Dw%S+>F`B8U2Da#w(56F(5-JAMg f0zZdY_~R!M8~yyx)6D7BTA&u#mX3SBp0xTmM9f(Y delta 1797 zcma)6+iM(U6rXSQ;$&xc_L9kDvp1T%V>HqbFI{VBsAwB)N}A2KtgX7u4C$uH?)uH7 z)ll6?N(9kDIMkQqp@k~={{srPgiw}!nMX-$srHYiIpy$lSjTM(S?)?QDL0T}iRA^&zJ=Clu6I1Vc80mjxrZDi%6$6*3fDDW*6t z&ugomLML)zBZ6F{$;FY28ZqQzO|A>Mc0)x@ZE^|ZIt&dtt;r>k>onrX$?+zcat!tX z6IXP&BQ9zqv)R)#mdPy_PrqbZ=j}=rY|kL;ayC8dqF048Uh zr4&WyL+Mu*B?a%~%bX##>+5h*jb9$m0{X z|60iKUS~|O72CgxZ=>NkSGtSAZT*GU7KN&Z`7pltAOR)Ca|AO4ClTskMn@EXv063D zM%`ECrLqmzqoeYVxM{@^1O~UGDht4G(TR3Gjf5`pc6{*>f;>#d((HF%J)FqFQv2bV?Y$>jIovIHBML~EA^(B)fjGxJ^TJViyRZvBZPsE2rk2)8s< zlZIid0vllSZPvCyvUgm5Q?)IOm?H? diff --git a/__pycache__/player_class.cpython-39.pyc b/__pycache__/player_class.cpython-39.pyc index 2ef771e3cb0cd7281994882bb61c7b8ad4dbbf8b..f6a783ebb1a584d2c2b3e59c799e194bfc419e18 100644 GIT binary patch delta 1367 zcmZvaOH30%7{_ zb0y6IR*C3p>VbVw#D$VlED)=K^F`sSg*`$RIEPLlyqzm0`0_#sQ;w2e|}CL)C$pXmS{80%ZN_(Wofp6W&kwdiU&IK zo^Erhv?;lFa7eK*wYNz&NeM%VH7bosp?uzHujO%jEotSi?0-EubbdxLBXOo}KXo*c zvYtrirsu6vFkjw^ntGB7} zNaZQ;t@B6T&GBgr4Iz#cZbVxck(nvh4B2;w5kuD;;;?qwxoA+;(l+_BZ)|iL11JJ7 z%djq+2c&(9646!DjA**9C|MdK7=rJ@TmUC5(+hAD?-gF+zeb`w;(tRdo|iY#C7!np zydlSKQ#gWgkFL_Vp{ogvF&zw9;zG9&Z14H&yq9(2L&1C|BW4lDJrs8Qnd^b_D+?GB zM;Hi{68FifA;uvJMZvob%X9$T#O-HM{yor6dbun4+sX`~mVzrr$Y05@U1qK$rN!>o~KHI-S+1P@z6EF&^1 w2O~>E*{YhvVQ;2JKRABE+ON^i*9v+{aRdy@GxTT4?k4hI1*LL*VM(F?KY!#XEdT%j delta 1329 zcmZvaOH30{6o%(cJ8h|LDNv1XM5MH}rM5n*f?7>|A~6wlfsk?Ro%F#d_0E9S6d|%T z#(3SRi7C;Iaig+wWpL>uajD(0bYtAJ@th0TLTqxsoO>SsIp)sAp2PdZ>4XWTcUOleUUHMLj7AobifG zeKYc;9m-?XJr(;bAuvvHJ#F43t=u1xTR|b3Xb??Oe}m`=6kXQb3swtg!b1Oalx5u{ zXrjFdn%Jdcg4$A&EU5`-ahFPiQn;0;ZPBLOv#0p`b&MOfDA~uK+J4VHw#Uhaz1hRV zmrb3Sg2Nfz9JR(ud_f73E8OkaF&A}|YW*^ndCOeN_fdONc`=@Um^ z0wHD=PuK_7ux)Ag0)~o+)!H@3c!_G3{*piN4h{(UEN0qOS7qxqk9YTQG8Gb+q0i1A!lK fR(fRkleQ!6xIRlGFy0`$RLK9dwJWi}#(?iH4}Bna diff --git a/__pycache__/settings.cpython-39.pyc b/__pycache__/settings.cpython-39.pyc index 2f7c44fb7c9e67f25f5ca6ede55df48b59a3939e..044c78b5e3ddb3ccb66f177134e013bda10061f1 100644 GIT binary patch delta 252 zcmZ3>vz(VNk(ZZ?0SJ!zv!xodPvmoD+%hq7=EMSC0XH`{1q7%93YShUWHiJgE;soQ zV+V%#WJM;W$$3mIKna8~3JO(QCVydCBBY>zEbI>wp2NIIBm%A!%!-JJ07|&9ES{Xs z#K#JB5s>$WWg$mM7)V`+!sK?=SOv>utC-N@)S_ZA8IzivlUY!ls#~64lwDkqn4CKK V7pn?C6VQ*vY(Rp8hlP=a5daRaLX!Xh delta 162 zcmZ3^yOxJ9k(ZZ?0SJE2UXXN@Z6cp5gMJKWcjf!ocxzHTueXN nDkiizwWt_O#<-*wXP4v`OfF$l;b#WAq?ipzaPY7&vM>SwlqWH- diff --git a/assets.py b/assets.py index 2f61820..0c8b763 100644 --- a/assets.py +++ b/assets.py @@ -8,7 +8,6 @@ groups = {} # Inicializa dicionário que conterá os grupos de sprites assets = {} - # =========== Carregando todos os sprites ============= # --- Fundo: assets['background'] = pygame.image.load('Assets/sprites/teste/fundo_completo1.png') @@ -49,4 +48,4 @@ assets['lore6'] = pygame.image.load('Assets/lore/Lore6.jpeg') # --- Objetivo: -assets['computer'] = pygame.image.load('Assets/sprites/teste/final.png') +assets['computer'] = pygame.image.load('Assets/sprites/teste/final.png') \ No newline at end of file diff --git a/settings.py b/settings.py index 81faaa3..769f115 100644 --- a/settings.py +++ b/settings.py @@ -1,5 +1,4 @@ # Setup do mapa - level_map = [ ' FFF ', From 078614c46f6f8f60e5662f3ef1eabbdd056b77b2 Mon Sep 17 00:00:00 2001 From: antoniolucasma <103431084+antoniolma@users.noreply.github.com> Date: Tue, 19 Sep 2023 01:54:48 -0300 Subject: [PATCH 2/2] =?UTF-8?q?Abstra=C3=A7=C3=A3o=20e=20Coes=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Game.py | 1 + __pycache__/Game.cpython-39.pyc | Bin 1147 -> 3110 bytes __pycache__/assets.cpython-39.pyc | Bin 1858 -> 1858 bytes __pycache__/enemy_class.cpython-39.pyc | Bin 2824 -> 2986 bytes __pycache__/funcoes.cpython-39.pyc | Bin 0 -> 387 bytes __pycache__/level_class.cpython-39.pyc | Bin 10159 -> 11142 bytes __pycache__/player_class.cpython-39.pyc | Bin 5140 -> 5105 bytes __pycache__/settings.cpython-39.pyc | Bin 1703 -> 1702 bytes enemy_class.py | 54 +++++++++++--------- funcoes.py | 8 +++ level_class.py | 63 +++++++++++++++++------- player_class.py | 2 +- settings.py | 2 +- 13 files changed, 87 insertions(+), 43 deletions(-) create mode 100644 __pycache__/funcoes.cpython-39.pyc create mode 100644 funcoes.py diff --git a/Game.py b/Game.py index 44ce42d..a949aab 100644 --- a/Game.py +++ b/Game.py @@ -5,6 +5,7 @@ import pygame # Importa biblioteca Pygame from settings import * from random import choice +from funcoes import * # Inicializa o Pygame pygame.init() diff --git a/__pycache__/Game.cpython-39.pyc b/__pycache__/Game.cpython-39.pyc index 6cea4f8db87dcf1d19a93b98fa5bc8f4655c1714..667965e8b3c2ce66cfc5bd45665fc865cb5d1333 100644 GIT binary patch literal 3110 zcmah~OK%(36`mI#8d0ILWRq-Ibk{D5Zqjq^3@N)tQ4+lOob#Rc zIWx2d26PEN|Cs8d5630xJ7iw{WPo`9zwpbHBoT?ouH?yvEF-PB%29l);#OVF(1biC zc+E|F86%VEW{)JQwffqU40la$_0t?3C@XE*$P4}wNwvW*(1WeZZOIs-SLiU!zf_D7 zkX>zEBk8tG6_Qy+9ptmX$5dZit|)-%s}kuqM(IecP#ZG}v``y2#!1eYK)u>qt+&ZQ z5(Bw+NM3N@vmhBow1@j$;Zx*EBx4e+uais06d5$8$z@}P3>mZJiZMqgjZ*Bjc7qI) zk>6qNB|1}A&r|FRpeF0exf~t?HQl3Td(>Qyx(<}ahQQa&)~&X*A^q}u<0idXyA6_g zz!bIu+#TQ+(1!g1JPK=|Fozgh6xiq8xa@N}*Ta?s_AOu-OJ?8F36gtHg04)EtBGW) zr@agkj2Y*xF#Q)J7n6XFj8oJtQLIH_bN>Uy>e0(};TLO}5s}Jt#weZ3&&o-r3X5pI zb(dTdlgPL3!4yUd5-GG5SvpTW`z*;?Wecz9LH@%3XCOn1v95*xTd3)hz`jhd@gC*_ zHYl*aCfGy|I{@sm!2XqBZ}qShz=i-*8SJBo_jV5(1MCW58p|ixJ3S0Lj$*w+ha;5biQOWhTVyw`W*860NOp}?mYJ4EL+17nJ z-j);Dha#&F$sG1m&>xTz(*D>RF>Z8Y_*0M*?pTUphhNY9W>@Q6_J0q0Q;A;pnY-BI z(cT{8>@_woX0JV)hv#w?_%hAJ&)iG7bpziEq@NbdRX~44q`C|mzoFBxKO?P=1PZ$c zn^UA8)56R6O)=JbK-b8vf&}Mn$ZHxrXtlB0kJ~9@9jRCFd4W&Af^X3Emoh}sAkyDy zG0p*Ia0i}^abdkl3-B&^*z>9xkLU({lvt(MRWc24n?mgq=+rH+TzDTWMHQcb{eREt z^~r3#(b>grXT_Yh$dZ`ZNb4u!ow?n5oZLG!es7J6`OF%n_?;Jb3F7LB=1^;wEaP*9 zT_ftDRJz;2cY8_Z11FA8f)le!ok}$VfqY{Z&a_<(9GjjEuUpIwX2aqJbt9{|8QNBZ zo=vTVA&tU2p>H{^83s+Cgm*yGvIBR6T2Xc0Yb^82F-%YpEAk|UqT@TZ6O@z-3=J7wjIX8m zT8^)~@pUi0R?hk=mPd=hbIP1Q-iQ44vg2EBku@E!vj73l(u?=z7Zw(dN^0i^OyFAg zI8%Q0>ypwTz<0iZ0}>d8%Xt8Kp7q6Uo(3Mz+JR?5=^^j8T-SVR`S1;SA2N~S(va&& zih+gB*HEnUPjJEYrFzh3QS;H{8pN=hQWA7kHj- zoMLf23;Pl|egz~96Y&^!n`dAkb^zfuXkf%M#0hb#Lf!NNLU}H<8Ku5?;*hAy2NEvc zR-TTRm-mBr6E-t)0-tM<0|8U(ZeZ7W%8swcm=o`dQ}e6_v|dP3p7Vk-o;t)5dAefx z)u0Jki~Z#3u)&-NoP{>blIu88(+1Uur*NxmuDO9lxQ_9k2X51&3>S#u0`c_L?$-L& z9@if49c*&#(b~=?@59sF`*ibwYd?Lmb;Q-5ZSC^x`rgjY+U~|7*F?88(S#Ia2$9qZ zji9L02IR55`SU0HT&>enp4m1J_t(}pxw>uIc)Z}*ZS!FB=*ht@*UFCTa_y-LP1VW) zc*z`|h7XZQGwKs4S&Qfk;K~8>EGP%LC7!n}-@JIBxKeGvP-qyj;FJ$CYFmuainY^( zb+-bZ!_{cOL+?5;sL}bG!FnL_u&RS@ OT)D15g=nMd%6|X_F>b#A literal 1147 zcmYjPOK;pZ5GM87^}e!c+BoUMkrVf^Xj3KT|~!gh=W@^D(`B5b-)#POP5t|XI` zU8lz!gA}=bIVD-ENEEn!Nn&+0%fKzpeBB z^3b`9pZb{+!U&^+%xFZZwH@K?*V?VLE4;|7aDShGR|a!JQ6DwlS-{M%o;Cf^f5*> zjy@?rWzFSl*87aDSdWotjkTgHtR0207OmH@M^{;gbzj-s>kv-e*HlJmtxX;I4_reA zG+Ix8MC8iU!Lx0=wNZXPC)?!drDy{-j=n%7tj+=mqxIMHIDk(1CF@lTE|gzY)vuO= zrM?cGCAa1h>z7}%a~3=Ples^UL4RR8KcJ?2%2Sq|jt_xP4mASw`orh_tyqdo-3YUA z7AJ9%nRYD1SmlyyP_^?cPI0S&v-ksF;&&ZFo?nfX0v58`E!vwmJT7a}y%nCl3 zXr86YG!kLcDih>qlXwQEi5xUfC(3v{<=Xf&{tHOcU|i)QKC8~hvy6f1s6+y!<5SM` zq3JHYx)mmA`CAiNn4QYn=otA@9D0@ziHoZCqqn-Z&1gcp9 diff --git a/__pycache__/assets.cpython-39.pyc b/__pycache__/assets.cpython-39.pyc index 001ecaf5367de3188c4fbe9824d1c6bd1bf8626f..25b3dfbd8e4c077b5bcfafbad4184360b2800010 100644 GIT binary patch delta 20 acmX@acZiQWk(ZZ?0SI<*aBk!_X9oZ;%>(oR delta 20 acmX@acZiQWk(ZZ?0SMv)**0>UvjYGx1q0y# diff --git a/__pycache__/enemy_class.cpython-39.pyc b/__pycache__/enemy_class.cpython-39.pyc index 00fc0973760562fe98b233e01dd12188907429fd..0fa0212ee6adb8385d9015973fd51c06d599a877 100644 GIT binary patch literal 2986 zcmb7G&2Jk;6rb5|J5Czf(2@$owv@I;kbw9oR8duEX+fw~r4$Y(XtmuLJL{}>-I;Z0 zEQd=g^@PN!X9o@t39cNu^k3jKS1!rF&;#YY*^Tqn0v*e5X5Y+v^X9!bzc=CJWR*bs z^K^y(afFb+@MCYY;Nvp< znasLRny@i*ptqUJJm?)(VO8ke2gD*x4>p`o_F@{wNwlL9HRBl1hrRp?NKWpN5#1n^ z#kx4zB9itL3EU%I(=9gMunrOaCS5>I(|tq`B}AY@ z)mVfq!_e0~F@>@(AUTTU7?K$zF9K0kH@#H+Yo z6CY=)5>x(j%m&mcr-2aafrH^^6#ZbjaP;odh~l!cxzOW*w5uP&OyQ*5WOSAQHD&<< zz_r#oIu@Kip0UO=#*mJz4RV!y^W&1SZmwHHxUaKh-5%O-Wt^dj)Ph^MVu?iaTo^q} zElSd}%vpDaWaJGUyokjtN(3lZnIJzx(@0JMsaK2C1MnxRrhypnD2W*th>L(GIqynw0@sg)#991& z2}s@5S=c!|QR{!ZzISI`<%{0c0Q z?*SpkNqW+lrk;6*S^yd~TH76I{`oQgY&jatEaI+n`&B+0R`6;8NC3`s=n#OSW1Jut zh(Q8?8h~`8|0^u0`enN*vbG4jp`ZEPY&GukG|zmN?V$TbpC{ax94EOS=8rc0+hNXy z&%1uV>!Tz5^KCA|1SR>KphgGq(Qm6fsgHNL(+^Wn8UvL2=raK;Lm!r8QOrUHIuHsT z{ru>std0r*_W4-2Q8#rE6}_tiw^_o6dpD5FF@V_ zim7@9OJWK&21;Tz2)Y^TL)r(b76jn1q?pl_rpQ{om)`Y#(5EKLY8G+0AigVlMBBcs7>RtBrv!IG|b{iyKG#4wCpY5ODypaIb(_*r-SM8u+OgTc;YK4ha2r) z!t(k-<_JUq$Q=zzZ^QU$xg#*VU&Fu1TRNE9*|Q)-BjF7 zg^Mt;2!EZ79<8|oIc51)4!nxsm8T{W4!5#+=4ccZh^_+buTB~*v`7EgWy)J9^7j&g OwDy|^1-oX>-1rBo9IjUY literal 2824 zcmb_eOK%)S5bmDW&aQVIlb9q94^2oUvM3}#7=spVU#?b{UPX5xH>Z!4*! zuJ2NEn=qR>j|g)(=~lb7ho(ORvI=uS=1ydFMpsC)x(8m!a??`Pgm3U9NW-3L$VhOW z1sxu@JB6wial!)`Z*f&0YwpLa=rpOK?*MVyBJcNPgq99I=6E760>g<<8S#zBq(vEJ z#v|7^naQk2#J9@*`u1aD5#NDbRg}Gwg>e$?n?Os*V{-5?voB2R59eGcb`_P#SBNNVKd1+%K6$Np=UU!s#;y>Y=9V!3D|8 zunslgvWl(;lr)C3C>dcrG)fz2H$dyhX2`${j;$|F<=u+*N5pUC9@dChM1SjxV}D@j zKl;;g1eHVnjB(t5{#)EnsOaoR4*bvmckG#XF?R4Xi5~cC+UFPlU;Iz#`ZZRCJ6Y@h z2-Q>b#?M`mw?&wSUhbv&Mx64j$UT!u;9Yusn<_Egfs6# zn~N~PmHZ-@iL;GZ?*0S_*qnG-?}r%}jo~hMd6WwQUxprhl1DKM8Q5U4;JZKUKFynG z0PZcHELOEJNdk!|Ce<-*KE4Mqiq7Tds)}083%n}=ua&^Yu=Vy!v1bfC!A2}XmLvWw zH|NB0Ty+A7s%s1eXi8$nMFmARKvycoYnm4t$t^@E@hYx5iR2WL(?}M8C@T%+nyR-% zo(8fnS^x;*bx<@N@g}_d6WYE6bSVP^Xxs4Tj|wp=fGdn#**ZjJ--Ddx;v9O?f>bWG9Bq9tqIt z_ZZaO5_~GrBcUhhR=wO{se(=i9U=qBg$_{*AQ!9;MG~lb5J34QrA7m<_9)&5E2=Su z^oTBqDil$L|eh+wY4T<(Vb&p580z+#1bZd6s@wikRaUEBE zfaF6YxL;im;s$b4bJH^T2ozt!(BZ;;;bzNx)df7tW$yKs2uod wfS({WQ~nt0p9qaC8gT>$t4m6oJm7s2k#ZNydj1$8P9nOw^fZNSnDa}216Y%!;s5{u diff --git a/__pycache__/funcoes.cpython-39.pyc b/__pycache__/funcoes.cpython-39.pyc new file mode 100644 index 0000000000000000000000000000000000000000..180c614a32ec482bc7ad0181dcd48edc5c60ee61 GIT binary patch literal 387 zcmYjMO-sZu5S>Z8rMg}3-aIW-(6fk$;KH6<1og61BqZ6T*e^3JvQTgS5Iu_jC|6JZ z1y4?j!Vb)Pd6UV!jGRn%fnz+~F`vv|UTlY8aluIk3>q{RaO+tVSc;`U(18wLVHxPr z4W!XGcR`8{4;kXCuFBiIu2kU5e-SeKyyT=QLyt4K-+KxA;0=0sM}()a#a`^gzt+IB zaghoaNUdG8wsqG~8oG!Yo43Y|hKdU-SsI7y53qi#pA&VO-I1|0U}jX2H)M{UYx_uz zR3^LL%=yL45Y?+TTXmJH4IMWd7qidYyZE0{!~hs$f;QpP!aGYM(~?V?LT-$GPz4vP b-*adg{I_7t7cM?4Yuy#*99fZ{%p=7wJ0MuM literal 0 HcmV?d00001 diff --git a/__pycache__/level_class.cpython-39.pyc b/__pycache__/level_class.cpython-39.pyc index 973d115fc64f4eaa28738fe6ff4bdd719bc5883e..7233a4e5a93471c2bf278f13cefcd02ee4b84af7 100644 GIT binary patch delta 4079 zcmb_fU2I%O6~1%#Z}!(~dt*Brd+~4VZ4NIdiwW_9~VU zVpsdknKM78^$()ZRDad zqZsw55qqE*u^lzrgWV1zjy)-GwRgvp?L%It(Soxk2*Vp9rBk#14L|)SD!~F;RhB~jL&xlp_N*tg00k) zRkp(nc2|L)+3Koi*IQF+Y}IF|d!B8zroODawYlwS&hy;$!UC;9e$O_}U1hueJ#_bJ zWjC;=FlFsx&1d+&tZbv}xBYgV8@N4Ap4tx7{DvO~{B{tjz>d1jLC?=eP-gbj|{ zH2P~RYomsOb_6pA9#nM!7~;Wa_&N9+G7eJIrPFu9dZD0M70BDBm5w-`f?0B6ck~i| z>zZYkL0>i9xfLC7VxX}Tkmnp9=p|(G*=i|o=gTF> zqZ@|fUxsqEVx@!7DJK=ob+h0^Ki@-J$=jCWK^$|~9mi+o%3wNd(_wk1@& zjOX;?{7Qbw7K5I1Nf@F*3ByP^T+{Msgr-gG|HL!rxp0=4?7G7iU|f=mFd^Gnhh1~n zRTz`K%MP2%r28R`J!!5;2VV3+H+DrO@InZBX`qj~zX(jQ=fs}_Pq8Tx;?Mbj&PZJ1 z{Ug_r$a?i+vFxaoT$^Ta4oAPZzs>V%5;)SCbT?eX*7dFz9b-f4!*Fj{>d-|a)8btC z9Gelh!y^M%kdY3+6!B@96SVUMQyv0ziXVkj@itE+#9$=B-rN6ExTIcl1twYovr)ZL zDQs!Wps(lcE!S{YC`p(nSR_~=_&ULD@qTQuK11X;2);>>C7>VzsUUAD2yYRWLMQ8Q z==nBrG=g^s+7#|uH^Ii3C}=WXEeym@ahmlig5u?jdoVu4WXJEmN*;2&b{-==xNO=Q zuDWZ%*O2>|xeByx%`qBn^3^}~pN)Ijd7zX6ioFAdkV(f{o^f4a&;*lUS?Ha8w`udN zw~$926U3D!lkrZ_C@yO<_|x8&^;u7;ypfHX1-)XKMnl7+T1f}~OZ>63I5kOIzCy4> zaCDv%#E91{3i&8%YmsP0Y;^q-y;1H?)|)}(o)v{-Hf-c6pwNZdraa6nuN3qx6SNID zPa^yTQtY!tN!hOx^$bEruv+?E(>r{Y|N-HRcBf(jOa}V5*KD&uN+e$B0OGX*CX#Ted9uUaoNBvY4(4W0Zs>AmPo}@Tg zw0+1Q3G#;~B^>q2myYoYJUVV`GWWjtdw**32Q;PSv6iJbalme~^rp0Q7A>{Tb9po5 zOY8rIwGYH_YVoC$t$lRJ+PJjV{(o5dzW8w}dAy~wXz5OyrL$=10DE41mKqnAR33S# zcrkqG4FwrAe?ZKA;hp*>`Hs%|;NSR`N=Kna3>j40NIB75xkT5ErWY#sBKkIs%6qp? z)O~_?3FJNa9iny!WQ9B~a0DqD!D$NHpB#LfWhQ6|CG~artjnN=QU=|LPDH-08ZR^X zvcN>P&7$SXe3RC`K|nIoK9~~D(8yEM*vb0t6w3J68lq7N6#q_Co_evoj@M$z{;3!r zep#f>4qrL>Y(F8zRonwJyIYJaCH~7k>>`*vbx`dX3f8JyooYE!0o0rGFqH zAzX{Edo{#*Se)JKyjm_+s(3L^e*RR)=&s_F_UeD^Ip4y`zh_F)4O-5C80nOwmM!;P z78k!d`(j-tdH{=Zu54QFp9so4c!^+?K)yBP%jGO}DOKga1DTHUN_PD7@-G+A?E+MI zfoc*^r~$cA%03j0L&TH$ILt2=%SN?eUP31*)&&ImN7IKt`BiybJRBbgPbWI$cRbPg EAAqZ6g#Z8m delta 3285 zcma)8+fN)-7@xDd?9MJb3oOgE3*}Numtt#eYs;myltR6AX#{CHHXVkYDGZ(6SfMMUoGgq`O3%9CxR>$rC3p_DoWKwsir8!^_X6( zRSXKc1Y;1!Di}jBR>LU5SOa4i#yE_TLE);PRcg`uf);(-Cnw;Sq!nWDlN+3`d)qJ9 zgR)Ai1|2uZbq%1a(c++sqiL>d1YNC`09~S}YXV)JRu8)RqOKWq4O%1U8jHF^nr}i# zHEp6ZQf!S}mfT9!G!;8f4M(>(e)iua;;Oo&(gn?8!xg=Ob%8dqY5(Pjs3=Cxa1^C+ z<3Yu^f2b0UaLJfUCTWz5Q&i&PHJ6OKWQ3x}T{7&F@pLNb2JIO z)iZM{oz>a(aG&J*RZVk)v(#G1+l+;ek$U!ZxQ8^b-@>Q-E?H(Rk!0tyaI73qvsuga z>K%tm8EKqR6+PDJLf`F4Q2 zF5nmt&hV`6D6s3UO;5wJb>b1&b+l-zwu7$wWuqbpiv*rScnzU^og2=mS;d|+?l^zLtQ`OlNHrTv{7Ejcp}OWm zG4Z@8UVwSIQZq0KAvKg`9%fn0o9c>Al_eU71vH4j4cDQ>t&gCT07&^tciBxR!s%ov zwYB#EJG?Hgb}c8)2XPJW;ap8v!@3oOd;Bfz?q*!3CoT0q~m9tgP&U@ zTw?F05Ylwpq1H-0+CKwJg}}x@xyNJS1Ud-=A5 zFz1?qNdA(Wy}ywqLx z)#29Ower~#xAQPDQ^xK5-rV}OVlwrN$h)|aTciiGwAjU}^xS4O=Lsk64W)1;rXebg~sF!1I`bn`E0mMMv5QNaV41Id*#Ru0>?qMCVlNG+V@ zPe~r7HxMYoFoKQXAn<;&Uu^Cnt0*iJ$i`ylZIZ@koxky86sDkiggqPlNsaR7diw#z z_5hjg=vmvdc@_7LA)rmDjt17z)!BpnK(3fEEoji?VRt1SpsckB&r8mEhgn@$EKEJz zZ+8H!3G+~F^JI;HJ3?cX~s2O!YqHH@Xu(9Et6tzqFCh=6M~{gxy2nh s!?Oo_ohuGzEp5Tnhk&49SL4$eB_e5r|M=m>ZXa){98N^}zaxp*zx?N%d;kCd diff --git a/__pycache__/player_class.cpython-39.pyc b/__pycache__/player_class.cpython-39.pyc index f6a783ebb1a584d2c2b3e59c799e194bfc419e18..d53695de68f20bdd033fa2e73c1179d76f14cba6 100644 GIT binary patch delta 1534 zcmbW1&rcL*7{}+G+1Z`_F~hQe@MDNiRiO zYDY6jGrTlu=^ZUiTE@$gmfg`Z9=oF0xh)(yZL5!7-esvwRdI@5RxGQ*`vfs?7J_8>}YoGp3N;<~50D>fvHOmNyp58=|~s%G2M) z7POPBAV#$l>C&Hn;I}m*0_{ttZa&dIQ(0k?CC61}i1Wq-YZ1R1`+`BbX{1d$UX+@2 zzL>apX@(Dx#4i9nz**oEpa`@B9Y8101snjnfqlS!;2;5o-6%QfOr5_l!+S+@y6=c4 z^~%z+t@3lQ6AS)o$S08_F(tlAzdVXdL~NCR484c2!DRTZz{{Ch{}}`v15N|-@;70* zK&&iYuZn*%f7Pa8nuPM(?d@%Dkrid#AaHKEi}V-T`A7@=MgBSBT7cug3E(7fiV&s3 zWnQlMAvI7A0{$tqtkw#&<4n3<*LXn!7{|Quf$J?T2kxrR`Mf+R)+*8p;&Ib&!+GTC_2P1eQHW#d_&31&wqik4 z^L?WM+}{F=fb0N6icLkHD5p{)$0j{tf?zPi;w75U88#w1n}4i1NCP&^|2vrLD1mWo zy!*tmnVV4e_D$Lgdcqt*VU}u%{e^>P-`7qfv(d>2B|S&FN-!87k$sF)AK?f3obU1q z|BgKTd*BD4QALh|{@=8GSX~7)h}MM zJ=@MH^gH*X8T@+39%sEfFCXl;^@iRy8U|B*#n-~jl5$z`b>H|*@r^)PGuNywt&t^N z#y3f4?&)%*v-~XSvU|Eb>2iLaboo79!DrVLr|=M0*Bw2{hQUWc=(fFXVn@w94}y-n z8njkc<8SYO$xNfCxK%$V>T2~=ep8K4`h_j_ma=?$Q|qaI{)|Gp8ItTRbyM#tYtvuP z_VjNUQ%D~5i{h?2SsfXQTNsKvO>rfPqdTPUAL-WH zz#-r{U>ukLo(IN&gTP@zqSah4$<*Ap7xha^d`kRfO&u|$Aztq~D!&9-r=lYM4v8u1 z;zIU^qo^Wb8~ky$z)4`1keE@Ix8fk823ldr--Ir+ATy+s zdl9a3a#ctR1jnEz#B5=vw6Cyb@nPX^{U-e6nD^Z}1H&u8;B|1JqoqSxgXuOflvk|S zjSnhN-UNK$IJ#W~gz zH;VWAF&Q6Xq?{3)ayquBp?C(6Wysx;YjYU7!P-pXQ*PS}kd6X!dQ*_(2A(0w(bH~W zYUD!CU+;$AM!?gioeSfXP?y4Aac;nJcWLTaFt*&KEKz?BJ~m-GgbqS$2=k{{}}iL z7-W(o!N3yns5~m>4wU;Fk9!R6S|r2IbpE>w-%dKB#EODAZgo~7jzYKwV8H47$#oj6 i7#5Y|9XQJ8$TKL(OvSo*aA2%3#w@MUSEegtmEu1m*gGfy diff --git a/__pycache__/settings.cpython-39.pyc b/__pycache__/settings.cpython-39.pyc index 044c78b5e3ddb3ccb66f177134e013bda10061f1..d00b3d59059f9e80e5344ced4a5b6b197c648df4 100644 GIT binary patch delta 52 zcmZ3^yNs7Nk(ZZ?0SJC*aHbk< snail.rect.right > bloco.rect.left: - self.image = pygame.image.load('Assets/sprites/teste/el caracol.png').convert_alpha() #Quando colide, vira para esquerda - self.image = pygame.transform.scale(self.image, (78,64)) - self.mask = pygame.mask.from_surface(self.image) + direction = "right" + self.snailImage(direction) snail.rect.right = bloco.rect.left snail.speedx = -snail.speedx # Caracol indo para esquerda elif bloco.rect.left < snail.rect.left < bloco.rect.right: - self.image = pygame.image.load('Assets/sprites/teste/caracol_virado.png').convert_alpha() #Quando colide, vira para direita - self.image = pygame.transform.scale(self.image, (78,64)) - self.mask = pygame.mask.from_surface(self.image) + direction = "left" + self.snailImage(direction) snail.rect.left = bloco.rect.right snail.speedx = -snail.speedx - for snail, tiles in collision_snail_tile.items(): bloco = tiles[0] # Caracol indo para direita if bloco.rect.right > snail.rect.right > bloco.rect.left: - self.image = pygame.image.load('Assets/sprites/teste/el caracol.png').convert_alpha() #Quando colide, vira para esquerda - self.image = pygame.transform.scale(self.image, (78,64)) - self.mask = pygame.mask.from_surface(self.image) + direction = "right" + self.snailImage(direction) snail.rect.right = bloco.rect.left snail.speedx = -snail.speedx - # Caracol indo para esquerda elif bloco.rect.left < snail.rect.left < bloco.rect.right: - self.image = pygame.image.load('Assets/sprites/teste/caracol_virado.png').convert_alpha() #Quando colide, vira para direita - self.image = pygame.transform.scale(self.image, (78,64)) - self.mask = pygame.mask.from_surface(self.image) + direction = "left" + self.snailImage(direction) snail.rect.left = bloco.rect.right snail.speedx = -snail.speedx - def update(self, x_shift): # Quando player chegar a uma parte do level, o level mexe para o lado (pygame é assim "press F") + def snailMovement(self, x_shift): + ''' + Programa o movimento do caracol: ele se move até bater em um tile (geralmente, o invisível) + quando isso ocorre, a velocidade (direção) inverte + ''' self.rect.x += x_shift + self.speedx - self.snail_moviment() + + def update(self, x_shift): # Quando player chegar a uma parte do level, o level mexe para o lado (pygame é assim "press F") + self.snailMovement(x_shift) + self.snailCollision() + # ============================================================================================================================================================================== diff --git a/funcoes.py b/funcoes.py new file mode 100644 index 0000000..b0b7233 --- /dev/null +++ b/funcoes.py @@ -0,0 +1,8 @@ +from assets import * +from player_class import Munition + +def addGroup(sprite, group, name): + for g in group: + g.add(sprite) + groups[name].add(sprite) + diff --git a/level_class.py b/level_class.py index ba04356..46cfbe0 100644 --- a/level_class.py +++ b/level_class.py @@ -4,6 +4,22 @@ from player_class import * from enemy_class import * from assets import * +from funcoes import * + +def recarregaMunicao(sprite, level): + if len(sprite.banana_storage) < 3: + recharge_hits = pygame.sprite.spritecollide(sprite, level.recharge, True) + for hit in recharge_hits: + if len(sprite.banana_storage) > 0: + for b in sprite.banana_storage: + sprite.banana_storage.sprites()[-1].kill() + score += 1000 + x = 30 + for i in range(3): + x += 30 + balas_restantes = Munition(x, 10) + sprite.banana_storage.add(balas_restantes) + sprite.groups["all_sprites"].add(balas_restantes) # Cria grupos de sprites all_bananas = pygame.sprite.Group() @@ -29,7 +45,7 @@ def __init__(self, level_data, surface): # Lado do player para câmera self.side_x = screen_width/2 - self.zawarudo = 0 + self.camShift = 0 self.minx = 0 self.maxx = 11520 self.p = None @@ -251,8 +267,7 @@ def player_hit_time(self): # Colisão com hit ao player player.dmg_score = True def cam_shift(self): - self.zawarudo -= self.world_shift - pass + self.camShift -= self.world_shift def cam_scroll(self): player = self.player.sprite @@ -265,10 +280,10 @@ def cam_scroll(self): self.side_x = player.rect.x # Movimento da Camera - if self.side_x >= screen_width * 3/4 and self.direction_x > 0 and self.zawarudo < self.maxx - screen_width: #indo a direita + if self.side_x >= screen_width * 3/4 and self.direction_x > 0 and self.camShift < self.maxx - screen_width: #indo a direita self.world_shift = -8 player.speedx = 0 - elif self.side_x <= screen_width/4 and self.direction_x < 0 and self.zawarudo > self.minx: #indo a esquerda + elif self.side_x <= screen_width/4 and self.direction_x < 0 and self.camShift > self.minx: #indo a esquerda self.world_shift = 8 player.speedx = 0 else: @@ -347,10 +362,13 @@ def __init__(self, position, size): self.image = pygame.transform.scale(self.image, (size,size)) self.rect = self.image.get_rect(topleft = position) self.mask = pygame.mask.from_surface(self.image) - - def update(self, x_shift): # Quando player chegar a uma parte do level, o level mexe para o lado (pygame é assim "press F") + + def tileShift(self, x_shift): self.rect.x += x_shift + def update(self, x_shift): # Quando player chegar a uma parte do level, o level mexe para o lado (pygame é assim "press F") + self.tileShift(x_shift) + class Tile_fundo(pygame.sprite.Sprite): def __init__(self, position, size): super().__init__() @@ -359,10 +377,13 @@ def __init__(self, position, size): self.image = pygame.transform.scale(self.image, (size,size)) self.rect = self.image.get_rect(topleft = position) self.mask = pygame.mask.from_surface(self.image) - - def update(self, x_shift): + + def tileShift(self, x_shift): self.rect.x += x_shift + def update(self, x_shift): + self.tileShift(x_shift) + class Tile_t(pygame.sprite.Sprite): def __init__(self, position, size): super().__init__() @@ -372,9 +393,12 @@ def __init__(self, position, size): self.rect = self.image.get_rect(topleft = position) self.mask = pygame.mask.from_surface(self.image) - def update(self, x_shift): + def tileShift(self, x_shift): self.rect.x += x_shift + def update(self, x_shift): + self.tileShift(x_shift) + class Tile_move(pygame.sprite.Sprite): def __init__(self, position, size): super().__init__() @@ -404,8 +428,11 @@ def tile_moviment(self): move_tile.rect.left = bloco.rect.right move_tile.speedx = -move_tile.speedx - def update(self, x_shift): # Quando player chegar a uma parte do level, o level mexe para o lado (pygame é assim "press F") - self.rect.x += x_shift + self.speedx + def tileShift(self, x_shift): + self.rect.x += x_shift + + def update(self, x_shift): + self.tileShift(x_shift) self.tile_moviment() # ============================================================================================================================================================================== @@ -419,21 +446,21 @@ def __init__(self, position, size): self.image = pygame.transform.scale(self.image, (size, size)) self.rect = self.image.get_rect(topleft = position) - def update(self, x_shift): # Quando player chegar a uma parte do level, o level mexe para o lado + def tileShift(self, x_shift): self.rect.x += x_shift + def update(self, x_shift): + self.tileShift(x_shift) + # ============================================================================================================================================================================== # Classe do totem de finalização (nota na Delta) -class Computer(pygame.sprite.Sprite): +class Computer(Tile): def __init__(self, position, size): - super().__init__() + super().__init__(position, size) self.image = assets['computer'] self.image = pygame.transform.scale(self.image, (size, size)) self.rect = self.image.get_rect(topleft = position) self.mask = pygame.mask.from_surface(self.image) - - def update(self, x_shift): - self.rect.x += x_shift \ No newline at end of file diff --git a/player_class.py b/player_class.py index 8a6229c..d2c2db1 100644 --- a/player_class.py +++ b/player_class.py @@ -1,5 +1,5 @@ import pygame -from settings import level_map, screen_height, tile_size, screen_width +from settings import tile_size, screen_width from assets import * # Classe do Carlos, o Macaco diff --git a/settings.py b/settings.py index 769f115..1419273 100644 --- a/settings.py +++ b/settings.py @@ -4,7 +4,7 @@ ' FFF ', ' A T CT FFF ', ' T CT XXX TC T XXX XXXXXX FFF ', -' XXX XXXXX X XXXXX TV T FF ', +' XXX XXXXX X XXXXXX TV T FF ', ' X X XX FFFF T CTV TF X TV T TV T T CT FF O ', ' M XF FX EFFF XXXXXXX F F X X X X XXXXXXXEEEEXEEEE x X X XXX', 'XXXX T CT XFF FFX CT E EXFFFA EXXFFFFFFFXXEEEEFEEEFC FX TV T E XXX EEEEE T CXXXXXFFFFFFFFFFFFFFFF XXX FFF',