diff options
author | Nguyễn Gia Phong <vn.mcsinyx@gmail.com> | 2018-01-28 11:48:41 +0700 |
---|---|---|
committer | Nguyễn Gia Phong <vn.mcsinyx@gmail.com> | 2018-01-28 11:48:41 +0700 |
commit | 1b2dc5e1692e9d7b010aa9822d228f4fc3c5ac1e (patch) | |
tree | cc0c976fb57493055b489654cb4085548d18c45a | |
parent | fca23ea3ce86461f1b970afeb87fcbf5c3a124d3 (diff) | |
download | brutalmaze-1b2dc5e1692e9d7b010aa9822d228f4fc3c5ac1e.tar.gz |
Make all sound playing fail-safe 0.4.2
-rw-r--r-- | brutalmaze/characters.py | 2 | ||||
-rw-r--r-- | brutalmaze/maze.py | 2 | ||||
-rw-r--r-- | brutalmaze/misc.py | 8 | ||||
-rwxr-xr-x | setup.py | 2 |
4 files changed, 7 insertions, 7 deletions
diff --git a/brutalmaze/characters.py b/brutalmaze/characters.py index c47e22e..262578e 100644 --- a/brutalmaze/characters.py +++ b/brutalmaze/characters.py @@ -79,7 +79,7 @@ class Hero: self.wound -= HEAL_SPEED / self.spin_speed / HERO_HP if self.wound < 0: self.wound = 0.0 if time > self.next_beat: - self.sfx_heart.play() + play(self.sfx_heart) self.next_beat = time + MIN_BEAT*(2 - self.wound/HERO_HP) if self.slashing and time >= self.next_strike: diff --git a/brutalmaze/maze.py b/brutalmaze/maze.py index 86edadf..da3428f 100644 --- a/brutalmaze/maze.py +++ b/brutalmaze/maze.py @@ -365,4 +365,4 @@ class Maze: self.hero.dead = True self.hero.slashing = self.hero.firing = False self.vx = self.vy = 0.0 - self.sfx_lose.play() + play(self.sfx_lose) diff --git a/brutalmaze/misc.py b/brutalmaze/misc.py index eb2d45c..6593c48 100644 --- a/brutalmaze/misc.py +++ b/brutalmaze/misc.py @@ -83,13 +83,14 @@ def choices(d): if num <= w: return population[i] -def play(sound, volume, angle=None): +def play(sound, volume=1.0, angle=None): """Play a pygame.mixer.Sound at the given volume.""" if pygame.mixer.find_channel() is None: pygame.mixer.set_num_channels(pygame.mixer.get_num_channels() + 1) + + channel = sound.play() if angle is None: - sound.set_volume(volume) - sound.play() + channel.set_volume(volume) else: delta = cos(angle) volumes = [volume * (1-delta), volume * (1+delta)] @@ -98,5 +99,4 @@ def play(sound, volume, angle=None): volumes[i - 1] += v - 1 volumes[i] = 1.0 sound.set_volume(1.0) - channel = sound.play() channel.set_volume(*volumes) diff --git a/setup.py b/setup.py index 19ba02b..1984de8 100755 --- a/setup.py +++ b/setup.py @@ -7,7 +7,7 @@ with open('README.rst') as f: setup( name='brutalmaze', - version='0.4.1', + version='0.4.2', description='A hash and slash game with fast-paced action and a minimalist art style', long_description=long_description, url='https://github.com/McSinyx/brutalmaze', |