Merge branch 'master' of ctpug.org.za:koperkapel
authorSimon Cross <hodgestar@gmail.com>
Sat, 5 Mar 2016 22:15:32 +0000 (00:15 +0200)
committerSimon Cross <hodgestar@gmail.com>
Sat, 5 Mar 2016 22:15:32 +0000 (00:15 +0200)
1  2 
koperkapel/scenes/level.py

index 9c96b8dfeafe44124a526f00c36f88df89598be3,66eccf0ed167e77b655b106eb329ba20cf91812d..c68ac6dc03731a70269e7d1a5e928ddbafd60531
@@@ -98,7 -98,7 +98,7 @@@ class GameLevelScene(BaseLevelScene)
          self._friends = self.actors.add_layer("friendly roaches", level=9)
          self._items = self.actors.add_layer("items", level=9)
          self._generators = self.actors.add_layer("enemy generators", level=8)
-         self._enemies = self.actors.add_layer("enemies", level=7)
+         self._enemies = self.actors.add_layer("enemies", level=11)
          self._vehicle = Vehicle.current(world)
          self._mode = 'walk'
          self._angle = 0  # up
              self._level.remove_enemy(enemy)
              self._enemies.remove(enemy)
  
 -    def _fire_bullet(self, bullet, pos, dp):
 +    def _fire_bullet(self, bullet, pos, dp, angle):
          if len(self._bullets) >= 10:
              return
          bullet.game_pos = pos
          bullet.game_dp = dp
          bullet.dt = 0
          bullet.level_layer = self._level_layer
 +        bullet.angle = angle
          self._bullets.add(bullet)
  
      def _check_for_bullet_hits(self):
          weapon.play_sound()
          if weapon.bullet_range > 0:
              self._fire_bullet(
 -                weapon.assemble_bullet(), self._player_pos, self._angle_dp)
 +                weapon.assemble_bullet(), self._player_pos, self._angle_dp,
 +                self._angle)
          else:
              # melee
              pos, dp = self._player_pos, self._angle_dp
      def on_key_down(self, key, mod, unicode):
          x, y = self._player_pos
          if key in (keys.DOWN, keys.UP, keys.LEFT, keys.RIGHT):
+             firing = (keys.X in self._held_keys)
              self._held_keys.clear()
              self._held_keys.add(key)
+             if firing:
+                 self._held_keys.add(keys.X)
              # We do this so pressing the key has an instant effect, and can
              # then be held
              self._last_key_down = self._key_rate + 0.01