# HG changeset patch # User David Sharpe # Date 1378594153 -7200 # Node ID cc94512d14f23ee32c8c6924b25911e130d8e266 # Parent 2070ce83637bc0c0d3bad6ade7e5c83dba9b586c# Parent 0b46e8524ec5bdd58965bc5a6804a6077402ca78 Merge diff -r 2070ce83637b -r cc94512d14f2 data/levels/alientunnel1 --- a/data/levels/alientunnel1 Sun Sep 08 00:48:35 2013 +0200 +++ b/data/levels/alientunnel1 Sun Sep 08 00:49:13 2013 +0200 @@ -53,8 +53,8 @@ game_objects: - args: - [1050, 1050] - - alientunnel1 - - [1025, 1025] + - hangar + - [255, 2495] - 45 classname: Door name: from_base diff -r 2070ce83637b -r cc94512d14f2 data/levels/crew --- a/data/levels/crew Sun Sep 08 00:48:35 2013 +0200 +++ b/data/levels/crew Sun Sep 08 00:49:13 2013 +0200 @@ -47,42 +47,42 @@ name: charging_9 - args: - [834, 1842] - - [500, 500] + - [982, 1680] classname: PatrollingAlien name: patrol_1 - args: - [740, 2122] - - [500, 500] + - [726, 2289] classname: PatrollingAlien name: patrol_1 - args: - [936, 1668] - - [900, 900] + - [1102, 1504] classname: PatrollingAlien name: patrol_2 - args: - [624, 1716] - - [900, 900] + - [470, 1560] classname: PatrollingAlien name: patrol_3 - args: - [1024, 1788] - - [900, 900] + - [1249, 1736] classname: PatrollingAlien name: patrol_4 - args: - [748, 1640] - - [900, 900] + - [668, 1419] classname: PatrollingAlien name: patrol_5 - args: - [572, 2016] - - [900, 900] + - [365, 20035] classname: PatrollingAlien name: patrol_6 - args: - [552, 1864] - - [900, 900] + - [272, 1806] classname: PatrollingAlien name: patrol_7 - args: @@ -92,12 +92,12 @@ name: patrol_8 - args: - [932, 2072] - - [900, 900] + - [1050, 2180] classname: PatrollingAlien name: patrol_9 - args: - [740, 1938] - - [900, 900] + - [586, 2090] classname: PatrollingAlien name: patrol_10 - args: diff -r 2070ce83637b -r cc94512d14f2 data/levels/hangar --- a/data/levels/hangar Sun Sep 08 00:48:35 2013 +0200 +++ b/data/levels/hangar Sun Sep 08 00:49:13 2013 +0200 @@ -204,6 +204,46 @@ - Cargo Bay. Authorized personnel only. classname: Note name: cargo_note +- args: + - [260, 1781] + - hangar + - [260, 1665] + - 90 + classname: Door + name: from_keys +- args: + - [260, 1701] + - hangar + - [260, 1810] + - 90 + - keycard_red + classname: KeyedDoor + name: to_keys +- args: + - [225, 1960] + - [285, 1960] + - keycard_blue + classname: KeyedHatch + name: blue_hatch +- args: + - [225, 2160] + - [285, 2160] + - keycard_green + classname: KeyedHatch + name: green_hatch +- args: + - [225, 2340] + - [285, 2340] + - keycard_black + classname: KeyedHatch + name: black_hatch +- args: + - [255, 2520] + - alientunnel1 + - [1025, 1025] + - 90 + classname: Door + name: to_alientunnel1 lines: - - [120, 1321] - [280, 1321] @@ -211,7 +251,20 @@ - [280, 1261] - - [280, 1161] - [280, 1101] +- - [120, 1960] + - [225, 1960] +- - [285, 1960] + - [380, 1960] +- - [120, 2160] + - [225, 2160] +- - [285, 2160] + - [380, 2160] +- - [120, 2340] + - [225, 2340] +- - [285, 2340] + - [380, 2340] music: POL-cyber-factory-short.ogg +music_volume: 0.3 polygons: 1: - [2400, 280] @@ -277,4 +330,10 @@ - [2480, 1321] - [2400, 1321] - [2400, 280] + 2: + - [120, 1781] + - [120, 2521] + - [380, 2521] + - [380, 1781] + - [120, 1781] size: [3001, 2601] diff -r 2070ce83637b -r cc94512d14f2 data/sounds/SOURCES.txt --- a/data/sounds/SOURCES.txt Sun Sep 08 00:48:35 2013 +0200 +++ b/data/sounds/SOURCES.txt Sun Sep 08 00:49:13 2013 +0200 @@ -21,3 +21,29 @@ http://creativecommons.org/licenses/by/3.0 Notes: Ogg generated using 'oggenc robotstep2.wav' + + +mouth_pop_2a.ogg +---------------- + +URL: + http://archive.org/download/Berklee44v5/Berklee44v5.zip +Source: + http://archive.org/details/Berklee44v5 +License: + http://creativecommons.org/licenses/by/3.0 +Notes: + Ogg generated using 'oggenc -q -1 mouth_pop_2a.wav' + + +vocoder2_short.ogg +------------------ + +URL: + http://archive.org/download/Berklee44v5/Berklee44v5.zip +Source: + http://archive.org/details/Berklee44v5 +License: + http://creativecommons.org/licenses/by/3.0 +Notes: + Ogg generated using 'oggenc -q -1 vocoder2_short.ogg' diff -r 2070ce83637b -r cc94512d14f2 data/sounds/mouth_pop_2a.ogg Binary file data/sounds/mouth_pop_2a.ogg has changed diff -r 2070ce83637b -r cc94512d14f2 data/sounds/vocoder2_short.ogg Binary file data/sounds/vocoder2_short.ogg has changed diff -r 2070ce83637b -r cc94512d14f2 nagslang/enemies.py --- a/nagslang/enemies.py Sun Sep 08 00:48:35 2013 +0200 +++ b/nagslang/enemies.py Sun Sep 08 00:49:13 2013 +0200 @@ -121,7 +121,8 @@ vec.length = speed result.add += (Bullet( self.get_space(), self.physicser.position, vec, damage, - type_, COLLISION_TYPE_ENEMY),) + type_, COLLISION_TYPE_ENEMY, + "mouth_pop_2a.ogg"),) def greedy_move(self, target): """Simple greedy path finder""" diff -r 2070ce83637b -r cc94512d14f2 nagslang/game_object.py --- a/nagslang/game_object.py Sun Sep 08 00:48:35 2013 +0200 +++ b/nagslang/game_object.py Sun Sep 08 00:49:13 2013 +0200 @@ -107,6 +107,8 @@ self._shape = shape self._extra_shapes = extra_shapes shape.physicser = self + for es in extra_shapes: + es.physicser = self def get_shape(self): return self._shape @@ -561,9 +563,12 @@ body, body.world_to_local(tuple(end1)), body.world_to_local(tuple(end2)), 7) self.shape.collision_type = COLLISION_TYPE_DOOR + other_shape = pymunk.Circle(body, 30) + other_shape.collision_type = COLLISION_TYPE_DOOR + other_shape.sensor = True self._key_item = key_item super(KeyedHatch, self).__init__( - SingleShapePhysicser(space, self.shape), + MultiShapePhysicser(space, self.shape, other_shape), render.KeyedHatchRenderer( resources.get_image( 'objects', '%s.png' % (key_item,), @@ -632,7 +637,7 @@ class Bullet(GameObject): def __init__(self, space, position, impulse, damage, bullet_type, - source_collision_type): + source_collision_type, bullet_sound=None): body = make_body(1, pymunk.inf, position) body.angle = impulse.angle self.last_position = position @@ -648,6 +653,8 @@ 'objects', '%s.png' % self.type)), ) self.physicser.apply_impulse(impulse) + if bullet_sound is not None: + sound.play_sound(bullet_sound, 0.3) def update(self, dt): super(Bullet, self).update(dt) diff -r 2070ce83637b -r cc94512d14f2 nagslang/protagonist.py --- a/nagslang/protagonist.py Sun Sep 08 00:48:35 2013 +0200 +++ b/nagslang/protagonist.py Sun Sep 08 00:49:13 2013 +0200 @@ -311,7 +311,8 @@ vec = vec_from_angle(self.angle, BULLET_SPEED) return Result(add=(Bullet(self.get_space(), self.physicser.position, vec, BULLET_DAMAGE, 'bullet', - COLLISION_TYPE_PLAYER),)) + COLLISION_TYPE_PLAYER, + "vocoder2_short.ogg"),)) def claw(self): claw_range = (math.sqrt(math.pow(self.physicser.get_velocity()[0], 2) +