Mercurial > fife-parpg
comparison demos/shooter/scripts/world.py @ 475:afde89c1d50b
Switched to a damage system. Collisions with objects now cause 1 damage to the player.
When the boss switches weapons it now waits for the weapons firerate value in time to pass before it fires its first burst with the new weapon.
Fixed a little problem with the high score dialog as it operates in modal mode. It now waits for the entire frame to be complete before displaying the dialog box.
author | prock@33b003aa-7bff-0310-803a-e67f0ece8222 |
---|---|
date | Wed, 21 Apr 2010 18:20:13 +0000 |
parents | 3164715a0621 |
children | 85fa5fa486a8 |
comparison
equal
deleted
inserted
replaced
474:10aff123c62c | 475:afde89c1d50b |
---|---|
203 | 203 |
204 def gameOver(self): | 204 def gameOver(self): |
205 self._gameover.show() | 205 self._gameover.show() |
206 self._hudwindow.hide() | 206 self._hudwindow.hide() |
207 | 207 |
208 self.saveScore() | 208 self._gamecomplete = True |
209 | 209 |
210 def endLevel(self): | 210 def endLevel(self): |
211 self._paused = True | 211 self._paused = True |
212 | 212 |
213 #only one level so the game is over once you complete it. | 213 #only one level so the game is over once you complete it. |
313 def pump(self): | 313 def pump(self): |
314 """ | 314 """ |
315 Called every frame. | 315 Called every frame. |
316 """ | 316 """ |
317 | 317 |
318 if self._gamecomplete: | |
319 self.saveScore() | |
320 self.reset() | |
321 | |
322 if self._genericrenderer: | 318 if self._genericrenderer: |
323 self._genericrenderer.removeAll("quads") | 319 self._genericrenderer.removeAll("quads") |
324 | 320 |
325 | 321 |
326 if not self._scene: | 322 if not self._scene: |
327 return | 323 return |
328 | 324 |
329 #update the scene | 325 #update the scene |
330 if not self._paused: | 326 if not self._paused and not self._gamecomplete: |
331 if self._scene.paused: | 327 if self._scene.paused: |
332 self._scene.unpause(self._timemanager.getTime() - self._starttime) | 328 self._scene.unpause(self._timemanager.getTime() - self._starttime) |
333 | 329 |
334 self._scene.update(self._timemanager.getTime() - self._starttime, self._keystate) | 330 self._scene.update(self._timemanager.getTime() - self._starttime, self._keystate) |
335 | 331 |
361 self._hudwindow.setLivesText(lives) | 357 self._hudwindow.setLivesText(lives) |
362 | 358 |
363 else: | 359 else: |
364 if not self._scene.paused: | 360 if not self._scene.paused: |
365 self._scene.pause(self._timemanager.getTime() - self._starttime) | 361 self._scene.pause(self._timemanager.getTime() - self._starttime) |
366 | 362 |
363 if self._gamecomplete: | |
364 self.saveScore() | |
365 self.reset() | |
367 | 366 |
368 self._pump_ctr += 1 | 367 self._pump_ctr += 1 |