Mercurial > blow
changeset 13:92a7c310241f
Title screen
| author | Radomir Dopieralski <sheep-devel@sheep.art.pl> |
|---|---|
| date | Sun, 28 Apr 2013 23:04:06 +0200 |
| parents | 2dcb3b6fb6f4 |
| children | 945320964b9c |
| files | blow/game.py blow/game_scene.py blow/resources.py blow/scene.py blow/title.png blow/title_scene.py |
| diffstat | 6 files changed, 31 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/blow/game.py Sun Apr 28 22:36:37 2013 +0200 +++ b/blow/game.py Sun Apr 28 23:04:06 2013 +0200 @@ -4,7 +4,7 @@ from blow.display import Display from blow.resources import Resources -from blow.game_scene import GameScene +from blow.title_scene import TitleScene class Game(object): @@ -19,9 +19,8 @@ def run(self): self.scenes.append( - GameScene(self.display, self.resources) + TitleScene(self.display, self.resources) ) - self.scenes[-1].update(self.scenes, True) while self.scenes: self.scenes[-1].update(self.scenes)
--- a/blow/game_scene.py Sun Apr 28 22:36:37 2013 +0200 +++ b/blow/game_scene.py Sun Apr 28 23:04:06 2013 +0200 @@ -326,7 +326,7 @@ yield self.image = self.frames[6] self.dead = True - for i in xrange(20): + for i in xrange(80): raise GameOver('won')
--- a/blow/resources.py Sun Apr 28 22:36:37 2013 +0200 +++ b/blow/resources.py Sun Apr 28 23:04:06 2013 +0200 @@ -17,6 +17,7 @@ self.weapons = self.load_atlas('weapons.png', 64, 64) self.effects = self.load_atlas('effects.png', 64, 64) self.tree = self.load_atlas('tree.png', 256, 256) + self.title = self.load_image('title.png') self.swoosh = self.load_sound('swoosh.wav') self.hit = self.load_sound('hit.wav') self.bark = self.load_sound('bark.wav')
--- a/blow/scene.py Sun Apr 28 22:36:37 2013 +0200 +++ b/blow/scene.py Sun Apr 28 23:04:06 2013 +0200 @@ -9,9 +9,11 @@ self.resources = resources self.sprites = SortedUpdates() self.background = self.display.screen.copy() + self.first = True - def update(self, scenes, first=False): - tick = self.display.update(self.background, self.sprites, first) + def update(self, scenes): + tick = self.display.update(self.background, self.sprites, self.first) + self.first = False try: self.sprites.update(tick, self) except GameOver:
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/blow/title_scene.py Sun Apr 28 23:04:06 2013 +0200 @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- + +import pygame + +from blow.scene import Scene +from blow.game_scene import GameScene + + +class TitleScene(Scene): + def __init__(self, display, resources): + super(TitleScene, self).__init__(display, resources) + self.background = resources.title + self.ready = False + + def update(self, scenes): + super(TitleScene, self).update(scenes) + keys = pygame.key.get_pressed() + if keys[pygame.K_SPACE]: + self.ready = True + elif self.ready: + self.ready = False + self.first = True + scenes.append(GameScene(self.display, self.resources))
