changeset 317:e89702425a73

Add support for playing music to levels
author Neil Muller <drnlmuller@gmail.com>
date Fri, 16 Sep 2011 19:30:07 +0200
parents cd544a311f11
children 9a6d550c50ad
files mamba/level.py mamba/world.py
diffstat 2 files changed, 7 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/mamba/level.py	Fri Sep 16 19:13:40 2011 +0200
+++ b/mamba/level.py	Fri Sep 16 19:30:07 2011 +0200
@@ -99,6 +99,7 @@
         self.name = level_data.readline().strip()
         tileset_name = level_data.readline().strip()
         self.tileset = Tileset(tileset_name)
+        self.background_track = level_data.readline().strip()
         tiles_ascii = [line.strip() for line in level_data.readlines()]
         try:
             end = tiles_ascii.index("end")
@@ -116,6 +117,7 @@
         save_file = load_file('levels/%s.txt' % (self.level_name,), 'wb')
         save_file.write('%s\n' % self.name)
         save_file.write('%s\n' % self.tileset.name)
+        save_file.write('%s\n' % self.background_track)
         self.update_tiles_ascii()
         for tile_row in self.tiles_ascii:
             save_file.write('%s\n' % tile_row)
--- a/mamba/world.py	Fri Sep 16 19:13:40 2011 +0200
+++ b/mamba/world.py	Fri Sep 16 19:30:07 2011 +0200
@@ -3,6 +3,7 @@
 import time
 
 from mamba.snake import Snake
+from mamba.sound import play_music, pause_music, resume_music, stop_sound
 
 
 class World(object):
@@ -37,15 +38,19 @@
             tile.interact(self, segment)
 
     def pause(self):
+        pause_music()
         was_paused, self._paused = self._paused, True
         return was_paused == False
 
     def resume(self):
+        resume_music()
         was_paused, self._paused = self._paused, False
         return was_paused == True
 
     def restart(self):
+        stop_sound()
         self.level.restart()
+        play_music(self.level.background_track)
         tile_pos, orientation = self.level.get_entry()
         self.snake = Snake(tile_pos, orientation)
         self._prev = None