7 from stage
import Stage
8 from qwesprites
import *
12 size
= width
, height
= 640, 480
15 screen
= pygame
.display
.set_mode(size
16 , pygame
.DOUBLEBUF
# | pygame.FULLSCREEN
25 for l
in range(0,480/nt
):
26 pygame
.display
.update((0,l
*nt
+n
,640,1))
31 img_splash
= pygame
.image
.load("splash.jpg")
32 screen
.blit(img_splash
,(0,0))
36 #pygame.display.update()
41 stage_file
="stage_00_game_menu.st"
42 ######################################################
43 STAGE
=Stage(stage_file
)
49 for event
in pygame
.event
.get():
50 if event
.type == pygame
.QUIT
: Salir
=True
51 if event
.type == pygame
.KEYDOWN
:
62 ######################################################
64 spriteTajundra
= STAGE
.Tajundra
66 ######################################################
69 reloj_juego
=pygame
.time
.Clock()
72 time_o
=pygame
.time
.get_ticks()
74 for ch
in STAGE
.simbolos
:
76 if ch
=='@': SpriteClass
=Tajundra
77 if ch
=='|': SpriteClass
=LanzaBolas
78 if ch
=='$': SpriteClass
=Dragon
81 for n
in range(0,len(STAGE
.simbolos
[ch
])):
87 #STAGE.sprites+=[spriteTajundra, t2,]
99 cpu
=100-accum_idle
/10.0
100 print len(STAGE
.sprites
), "%.2f%%" % cpu
104 if frame
> cpu
-20 or frame
==0 or frame
==30:
105 x
,y
,w
,h
=spriteTajundra
.rect
108 if spriteTajundra
.dx
<0: vel
=-300
110 if keys
.has_key(pygame
.K_DOWN
): vely
=200
111 if keys
.has_key(pygame
.K_UP
): vely
=-200
112 Hacha(STAGE
,pos
,spriteTajundra
.dx
+vel
,vely
)
114 del STAGE
.sprites
[-1:]
116 for event
in pygame
.event
.get():
117 if event
.type == pygame
.QUIT
: Salir
=True
118 if event
.type == pygame
.KEYDOWN
:
119 if event
.key
==pygame
.K_ESCAPE
:
124 if event
.type == pygame
.KEYUP
:
125 if keys
.has_key(event
.key
):
127 if spriteTajundra
.alive
:
128 if event
.key
==pygame
.K_SPACE
:
129 sLife
=spriteTajundra
.Life
130 sMLife
=spriteTajundra
.MaxLife
131 if (fuerza
>4000): fuerza
=4000
132 fuerza
*=sLife
*sLife
/(sMLife
*sMLife
)
133 x
,y
,w
,h
=spriteTajundra
.rect
137 if keys
.has_key(pygame
.K_DOWN
): vely
=vel
/2
138 if keys
.has_key(pygame
.K_UP
): vely
=-vel
139 if spriteTajundra
.dx
<0: vel
=-vel
140 p
=Hacha(STAGE
,pos
,spriteTajundra
.dx
+vel
,vely
)
141 p
.Life
+=fuerza
/100.0-.5
144 if spriteTajundra
.alive
:
145 if keys
.has_key(pygame
.K_s
):
146 spriteTajundra
.alive
=False
147 spriteTajundra
.LevelFinished
=True
149 if spriteTajundra
.in_ground
:
151 if keys
.has_key(pygame
.K_LEFT
): spriteTajundra
.dx
-=15
152 if keys
.has_key(pygame
.K_RIGHT
): spriteTajundra
.dx
+=15
153 if keys
.has_key(pygame
.K_UP
): spriteTajundra
.dy
=-140
154 if keys
.has_key(pygame
.K_DOWN
): spriteTajundra
.dy
+=5
158 if spriteTajundra
.dy
<0:
159 if not keys
.has_key(pygame
.K_UP
): spriteTajundra
.dy
/=1.02
160 if keys
.has_key(pygame
.K_LEFT
): spriteTajundra
.dx
-=0.5
161 if keys
.has_key(pygame
.K_RIGHT
): spriteTajundra
.dx
+=0.5
163 if keys
.has_key(pygame
.K_UP
): spriteTajundra
.dy
/=1.02
164 if keys
.has_key(pygame
.K_DOWN
): spriteTajundra
.dy
+=2
168 if spriteTajundra
.LevelFinished
:
169 txtEndGame
=qweTextBIG(STAGE
,320,240,"Level Completed")
171 txtEndGame
=qweTextBIG(STAGE
,320,240,"Game Over")
172 qweTextBIG(STAGE
,320,300,"press return")
174 if keys
.has_key(pygame
.K_RETURN
):
175 if spriteTajundra
.LevelFinished
:
176 stage_file
=STAGE
.NextStage
178 for sprite
in STAGE
.sprites
:
183 STAGE
=Stage(stage_file
)
184 spriteTajundra
= STAGE
.Tajundra
185 for ch
in STAGE
.simbolos
:
187 if ch
=='@': SpriteClass
=Tajundra
188 if ch
=='|': SpriteClass
=LanzaBolas
189 if ch
=='$': SpriteClass
=Dragon
192 for n
in range(0,len(STAGE
.simbolos
[ch
])):
200 time_aux
=pygame
.time
.get_ticks()
201 msec
=time_aux
-time_o
;
204 pygame
.time
.wait(idle
)
205 accum_idle
+=pygame
.time
.get_ticks()-time_aux
206 time_aux
=pygame
.time
.get_ticks()
207 msec
=time_aux
-time_o
;
210 msec
=reloj_juego
.tick(60)
212 if keys
.has_key(pygame
.K_SPACE
): fuerza
+=msec
214 STAGE
.fulldraw(screen
,msec
)