# HG changeset patch # User Simon Cross # Date 1378592729 -7200 # Node ID 9b9d529ba5d93eb6c7bb9d248d656956372145bb # Parent 29ced8b5689551da393cc9933b0a6d0451fbb776 Allow music volume to be specified. diff -r 29ced8b56895 -r 9b9d529ba5d9 data/levels/finale --- 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] diff -r 29ced8b56895 -r 9b9d529ba5d9 nagslang/level.py --- 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: diff -r 29ced8b56895 -r 9b9d529ba5d9 nagslang/screens/area.py --- 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