changeset 608:9b9d529ba5d9

Allow music volume to be specified.
author Simon Cross <hodgestar@gmail.com>
date Sun, 08 Sep 2013 00:25:29 +0200
parents 29ced8b56895
children 9ea26b835271
files data/levels/finale nagslang/level.py nagslang/screens/area.py
diffstat 3 files changed, 6 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/data/levels/finale	Sun Sep 08 00:23:57 2013 +0200
+++ b/data/levels/finale	Sun Sep 08 00:25:29 2013 +0200
@@ -133,6 +133,7 @@
 - - [1100, 800]
   - [1000, 900]
 music: moonlight-sonata.ogg
+music_volume: 1.0
 polygons:
   1:
   - [1000, 2400]
--- a/nagslang/level.py	Sun Sep 08 00:23:57 2013 +0200
+++ b/nagslang/level.py	Sun Sep 08 00:25:29 2013 +0200
@@ -12,6 +12,7 @@
     tile_surface, points_to_pygame, extend_line, points_to_lines)
 from nagslang.resources import resources
 from nagslang.yamlish import load, dump
+from nagslang.constants import DEFAULT_MUSIC_VOLUME
 
 POLY_COLORS = {
     1: pygame.color.THECOLORS['red'],
@@ -42,6 +43,7 @@
         self.world.level_state.setdefault(name, {})
         self.basetile = 'tiles/floor.png'
         self.music = None
+        self.music_volume = None
         self._tile_image = None
         self._surface = None
         self._base_surface = None
@@ -65,6 +67,7 @@
             'polygons': self.polygons,
             'lines': self.lines,
             'music': self.music,
+            'music_volume': self.music_volume,
             'game_objects': self._game_objects,
             'enemies': self._enemies,
         }, f)
@@ -94,6 +97,7 @@
         self.x, self.y = data['size']
         self.basetile = data['base_tile']
         self.music = data['music']
+        self.music_volume = data.get('music_volume', DEFAULT_MUSIC_VOLUME)
         for i, points in data['polygons'].iteritems():
             self.polygons[i] = []
             for point in points:
--- a/nagslang/screens/area.py	Sun Sep 08 00:23:57 2013 +0200
+++ b/nagslang/screens/area.py	Sun Sep 08 00:25:29 2013 +0200
@@ -94,7 +94,7 @@
         self.add_protagonist()
         self.add_game_objects()
         self.save_progress()
-        sound.play_music(self._level.music)
+        sound.play_music(self._level.music, self._level.music_volume)
         self._background = None
         self._surface = None