From d702d1970b86f02f9dd2bf26248315ae82d7e9f7 Mon Sep 17 00:00:00 2001 From: =?utf8?q?David=20Mart=C3=ADnez=20Mart=C3=AD?= Date: Tue, 10 Jun 2008 22:18:10 +0200 Subject: [PATCH] Dos pantallas nuevas. --- pedrusco1M.png | Bin 1687 -> 1855 bytes qwesprites.py | 30 +++++++++++++++++++++++------- stage_05_charge.st | 4 ++-- stage_10_gofast.st | 2 +- stage_11.st | 45 +++++++++++++++++++++++++++++++++++++++++++++ stage_12.st | 45 +++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 116 insertions(+), 10 deletions(-) rewrite pedrusco1M.png (95%) create mode 100644 stage_11.st create mode 100644 stage_12.st diff --git a/pedrusco1M.png b/pedrusco1M.png dissimilarity index 95% index 1bd7f6955d4e9aad3910f3aacd455666c2cb7b20..f82085ae20e13962c0aafd74248602f3f6232ef8 100644 GIT binary patch delta 1779 zcwPbX1`PR^4ZjYMV1Eh}5iUk#1XTb42ER!}K~z}7ZB}h>RL2#5&Y3fJy|(e%P$!N^ zsOs+80%Jo`R0$EONPOsrs;K{>f51PiQp-m^G(-_qq$)+>#m0s>#I_uiQ~ z{lJ~k?7~Q^UERHNUY_SUF9d+r*VpaL%*;g*`HG0X0_a0 z5jir(JXO_4$H&JwIyzeO-d}FDT0%tM1Na*eJqPfI5W=4U{Dz3Y%mZW0YgPS)h@Jts z58xYFUtg#5=g(gN@FjrT0M>};*8mKF-velg$ZX@BiD(AE6#$k`5ki2fqKU3hRokFJ07zA#s%U;20Bu#}27i%13V=HRRvTCh5uqpwIOkxk zg)wHtdE*Sj;Shtt0Cimh07L|hGg4I|q7+;R0nx6iG7(KQ6n6!{g~qu6K)c;e85czX zW(E;~h+-zu5u9^4IXM9lVQOkBy%Rq%005}#8rIr)pH#I_)lY?)ZH!n%V2pu?U~+OY zzmSZ0?||d~GV_SD5CR5+0j8&?M+7J$@ZLjJVT?h$-G-`SI2^(`2V+bM zY8;suocBKI1^}c{Yr2s0{qEg6gb*+_HI*(fGk-(`&N+w(thKP#CdV;}++lo9L~zdK z6d3_297-W_Xr^*ICIC5${exr#PTDmIv}DdgaBhq`Xgo;A{!9sj5l{;dwK;K9BH5Lq$=fRvbb=RaMyA+e5$K9}!v< zWL?)I&+@>ks!FJ4VpOTBs^gq%$97uRHGfnUMNy;|qw(Y8<5Zft&~kz0-!X`&2k(8- zS@RxCS(aa@>V)?`K}|#{b5+IZ=_&gCK8}x%N5mL|%e&=x6H?XG;$s72W_a(x%qqj- z@GXE@YpsnD#wZ7aLCQGiZ`@ffUJ*%&v>}uKbh##JYZ%pa}ZTEs*1X=UW%ePB%)7^F`-$>vAw;GiHQl+b$^XFZ{A>G zVIc`@V`BqXuU<{Vhncarw}(rYF2Q@B5PJOhF?zios;a`_;UV_-_c1#=i{<5IsH*qg z*8m1$tvvxyF>_E=VrE)hT}4$@c=_@rZrr$$M09X)fV+3^j%4%V#S7fJbt`qZ5CV2~ zc5vs;9f%0Zvc$o`0j^)a9)GuNWoB1ZRbN&2nVEN)`G|<>xF1?;vAesAYuBz}c6JtX zb8~q8`Zbo9my-aA2wPiQSX^98%Zv9Oo12?hSy@TcJbn5UYinz0x7)FLY7rSQ^FDwr z2Ji&HGa@=;W{nhFxpE~s((Uc-u(Y(~i6{wUYikSLZdZxO1E@j>Zhv!gQx_K(6GD$3 zJ<_$cHE)cmthLTs>zTPS#vB@Begg0x4k0`yq92Lq6*Hf0Y;5S|%a^rjsr8d5PX^s? z_h%w{MMOtLR6ls|0KHyMnfZi>b^!cv|Ni}>rKP3+0dT5{d-v|?>gwtVfE@roh{!Wz z%sw-}C8B+1-Xx;$%xvx3x5*eY(bV{_=I7^IM8r+W^gEr-kE;4D5j{7?u(h_+?RF=K zC=k(q0enM5|LFC4+sxbvAzZN5%F4=$C!$^F+&{hde+TeOvw^<_@O@p^|MK4d`~R(0 V1X*q9Rha+)002ovPDHLkV1gH(NDcr1 delta 1610 zcwPZY2DSOW4wns(V1Ee>Asf!q!IS_11{X<0K~z}7ZC723WLFhkYoC2?RdrW)b? zG8sgo4^a#xf={9YKKLMl|H41eKTOb99}FT$Ku|CdCtx6nfoc}wzBl7Ej${zz5d&Ny*;}-2HQs{{-*{03Yb( zOwdjOsSc$eh20VDuF1~60Avq`y-JO%K50B-?6O6gQYP5`*Oe~;v^-Tex{ z695>R*Aa_;UkGfN_ZNu~nmCPR(@e5oXV3E(G_wi$(Rg>pF-CNP=W|5{fX6 zBW`bRK@!Ku$MsA+VE_OO!+@M~+^4&D?*2$cB!|VSij)#m6-P%$?S(3&lyV<~`w$(5 zW)G>uWq)Rv_<&LhN-3S@oI!F-DeVai_(h}&i{IloV!2$x%m4tp-L4w-CdFY;DW%E} zlvG4qMD~=K8P@AHmdoWH0aX>H6u3K5N?0rwaCdAr8;s+Klu|Y75ScKplu~&E06MX? zUTEX}`t@s=8IF&S>je>ks$v{Rs48;K$T?TV;eSM{F!o7e9LF|9NdcUg*(@%#@!Rco zFf(*rSNRY^LSae?UDp8s#&N87TZba{Zy>V@fStRSma$=ZDFwUT4x7zp56)5w%&fxM zDvnULh#flCE_L@c$==M6QmP-q%Yd}K97HUo)VI6uDT}=@A{;z;Mg{PmyC279OP)x_ z)qiTWN6>K`tATByX$ecRA{Ee^*myZnt{~w1wwQwIRY4 z$|FSX?rLVwrq1ioaLNzSQu8W*X!zW8^1$k zEqPV7I?{&V?(Pm|Rzom3xYh~&PDCpFhgGeOXPZ)OuD6Bha5bc>{Xj$@BBt)1+zoaDcw=D`5hr!{QNMhTwoSzD17+gCcbg z^1n_=>h2u?iGxvICz9-4j7AhQLz~lKc&j}2x7+R4P@D8+b@vU)BLK6*n78G$MWE$F zUk&A$~t!`~frIZjuYIMOi3*sH)T+SI?*VRgR zn4a!VRn>n35LLa1mb=^SzSevqo`)6g(5t@hYj}cJhs2xi7c(o`b=?)oM=2$nMsk!= z@bcx$I!LwzYe%<;cUxQnq3w2CLvVFb%*!VYOP}?(QzmyNHZ^-`}|V3l)(s z06ZZ%kQ5PNj9D?`&F6Cr!?4HjHY{zeKg@)f9h*uy09cF2i&Dxb3g9CEXC!}0vI}UN zcsWU%@?8M5z1B$@fMRB1W`8MW%xJeFVkxDPbC!FN>`7jwls+w`{7ud5A1S3%lAnpl z+W;2RUo)E7U}moY+)V5~C3!+Jo0*fm1@I++mm+fP?vF|-XYQ`kf5rM;Rgc{L0RRK= zLPY*W^3Un%)2B=+&8PT$gXEl~Opx6S!|<`Y|B2+Yl#=9}S2^c7Nkb#~9{?Ya{C!I4 zzap|Svxhln?Ygdz{9+u(KbBH{2jKGwov#3VI1IyIN-2N+KT2Eo$;rpo(*OVf07*qo IM6N<$f?=!^UjP6A diff --git a/qwesprites.py b/qwesprites.py index 79db730..521e778 100644 --- a/qwesprites.py +++ b/qwesprites.py @@ -24,6 +24,7 @@ class qweSprite(pygame.sprite.Sprite): accum_ms=1000 accum_dist=1000 + REGEN=1 #MAX_ACCUMMS=200 #MAX_ACCUMDIST=1000 @@ -131,7 +132,8 @@ class qweSprite(pygame.sprite.Sprite): self.alive=False self.die(stage) else: - self.Life-=ms/1000.0 + if (self.REGEN<0 or self.Lifeself.Life: self.ShowLife-=ms/100.0 @@ -184,7 +186,7 @@ class qweSprite(pygame.sprite.Sprite): stage.checkPortal() else: if char=='Z' and self.Item=='z' and stage.getCh(x,y-1)==' ': - testrect=pygame.Rect(x*32,(y-1)*32,32,32) + testrect=pygame.Rect(x*32+8,(y-1)*32+8,16,16) put_in_place=True for sprite in stage.sprites: @@ -216,7 +218,9 @@ class qweSprite(pygame.sprite.Sprite): def checkpos(self,stage,ms): self.in_ground=False - if self.Life<=0.5: return + if self.Life<=0.5: + self.REGEN=-2 + return for sprite in stage.sprites: if sprite!=self and sprite.RADIUS>0 and sprite.Life>0.5: if ( math.fabs(sprite.psx-self.psx)<=1 @@ -290,15 +294,23 @@ class qweSprite(pygame.sprite.Sprite): if (self.BOUNCE>0): self.dx*=-self.BOUNCE else: self.dx/=1-self.BOUNCE - #if ( (self.checkcell(stage,-4,0)!=' ' and self.dx>0) or - # (self.checkcell(stage,+4,0)!=' ' and self.dx<0) ) : - # self.dx/=1+5*ms/1000.0 + if ( (self.checkcell(stage,self.MARGIN_RIGHT-1,0)!=' ') or + (self.checkcell(stage,self.MARGIN_RIGHT-1,12)!=' ') or + (self.checkcell(stage,self.MARGIN_RIGHT-1,-12)!=' ') ) : + self.move(-1,0) + + if ( (self.checkcell(stage,self.MARGIN_LEFT+1,0)!=' ') or + (self.checkcell(stage,self.MARGIN_LEFT+1,12)!=' ') or + (self.checkcell(stage,self.MARGIN_LEFT+1,-12)!=' ') ) : + self.move(+1,0) # Control de hundimiento if self.dy>=0: if (self.checkcell(stage,self.MARGIN_LEFT+4,self.MARGIN_BOTTOM-1)!=' ' - or self.checkcell(stage,self.MARGIN_RIGHT-4,self.MARGIN_BOTTOM-1)!=' '): + or self.checkcell(stage,self.MARGIN_RIGHT-4,self.MARGIN_BOTTOM-1)!=' ') and \ + (self.checkcell(stage,self.MARGIN_LEFT+4,self.MARGIN_TOP+1)==' ' + and self.checkcell(stage,self.MARGIN_RIGHT-4,self.MARGIN_TOP+1)==' '): self.move(0,-1) self.dy=0 @@ -435,6 +447,7 @@ class Tajundra(qweSprite): DIE_IMG='platano.png' MAX_ACCUMMS=50 MAX_ACCUMDIST=250 + REGEN=-1 def __init__(self, stage): @@ -485,6 +498,7 @@ class Dragon(qweSprite): estado_ms=0 MAX_ACCUMMS=200 MAX_ACCUMDIST=1000 + BOUNCE=.2 def __init__(self, stage): @@ -532,6 +546,7 @@ class LanzaBolas(qweSprite): image_flip=None MAX_ACCUMMS=200 MAX_ACCUMDIST=2000 + BOUNCE=.2 estado=0 estado_ms=0 @@ -582,6 +597,7 @@ class qweShoot(qweSprite): ShowLife=0 LifeCollisionCost=1 LifeCollisionSpriteCost=10 + REGEN=-1 fcount=0 accum_ms=0 diff --git a/stage_05_charge.st b/stage_05_charge.st index 4227302..ffaba09 100644 --- a/stage_05_charge.st +++ b/stage_05_charge.st @@ -34,8 +34,8 @@ [ trtrtrtrtrrt Z] [ bb] [ | | | | | bbb ] -[ trtrtrtrttrt ] -[bb ] +[bb trtrtrtrttrt ] +[bbb ] [ bbb $$$$$p ] [ trtrtrtrtrtrtrt ] diff --git a/stage_10_gofast.st b/stage_10_gofast.st index 20c509c..4df87e8 100644 --- a/stage_10_gofast.st +++ b/stage_10_gofast.st @@ -40,7 +40,7 @@ [bbbbbtrtrtrtrtrtrttr] -%NextStage stage_10_gofast.st +%NextStage stage_11.st %PlaceText 6 8 [Tajundra has only 60 seconds of life! Hurry up!] diff --git a/stage_11.st b/stage_11.st new file mode 100644 index 0000000..fc8bacd --- /dev/null +++ b/stage_11.st @@ -0,0 +1,45 @@ +%BlockSize 32 32 +%Texture N dragonN1.png +%Texture R dragonR1.png +%Texture V dragonV2.png + +%Texture M pedrusco_cal1.png +%Texture N pedrusco_cal2.png +%Texture m pedrusco_cal3.png +%Texture n pedrusco_cal4.png + +%Texture b pedrusco1.png +%Texture B pedrusco1M.png + +%Texture t tierra1.png +%Texture r tierra2.png +%Texture p portal.png +%Texture P portal_abierto.png +%Texture Z piedra_runaz.png +%Texture z runaz.png + +%CreateTajundraWithLife 240 + +%StageTitle Episode 1 - Level 2 - Lost + +%StageData 20 15 +[ ] +[ttt b ] +[@ B zbb ] +[ b tttt Z | | ] +[bb Z ttttttbb ] +[ttt tt M $ b ] +[ bbbbbb b bbbb bb ] +[b $ zb b b b ] +[bb tttb b b b ] +[bbb$ b b b b ] +[bbbb M M M b b ] +[ b M| |Mb b ] +[ttttttttttttttttttb ] +[ p ] +[ bbb] + + +%NextStage stage_12.st + + diff --git a/stage_12.st b/stage_12.st new file mode 100644 index 0000000..f2fb3d4 --- /dev/null +++ b/stage_12.st @@ -0,0 +1,45 @@ +%BlockSize 32 32 +%Texture N dragonN1.png +%Texture R dragonR1.png +%Texture V dragonV2.png + +%Texture M pedrusco_cal1.png +%Texture N pedrusco_cal2.png +%Texture m pedrusco_cal3.png +%Texture n pedrusco_cal4.png + +%Texture b pedrusco1.png +%Texture B pedrusco1M.png + +%Texture t tierra1.png +%Texture r tierra2.png +%Texture p portal.png +%Texture P portal_abierto.png +%Texture Z piedra_runaz.png +%Texture z runaz.png + +%CreateTajundraWithLife 240 + +%StageTitle Episode 1 - Level 3 - Spider + +%StageData 20 15 +[ b p ] +[ btrt ] +[ B | | ] +[ bbbb trtrtr] +[ $z|b bZ ] +[ trtrtr bbbb ] +[ bb b ] +[ b$zb B ] +[ trtrt trt] +[ B| ] +[ bbbbb bbbbb ] +[ @b $ Z $ b| ] +[bbbbbbbbbbbbbbbbbbbb] +[ ] +[ ] + + +%NextStage stage_13.st + + -- 2.11.4.GIT