summary refs log tree commit diff homepage
diff options
context:
space:
mode:
-rw-r--r--README.rst26
-rw-r--r--brutalmaze/characters.py6
-rw-r--r--brutalmaze/constants.py1
-rw-r--r--brutalmaze/maze.py6
4 files changed, 16 insertions, 23 deletions
diff --git a/README.rst b/README.rst
index 8e1f484..a48c946 100644
--- a/README.rst
+++ b/README.rst
@@ -7,17 +7,17 @@ art style.
 .. image:: https://raw.githubusercontent.com/McSinyx/brutalmaze/master/screenshot.png
 
 The game features a trigon trapped in an infinite maze. As our hero tries to
-escape, the maze's border turn into aggressive squares trying to stop him. Your
-job is to help the trigon fight against those evil squares and find a way out
-(if there is any). Be aware that the more get killed, the more will show up and
-our hero will get weaker when wounded.
+escape, the maze's border turns into aggressive squares trying to stop him.
+Your job is to help the trigon fight against those evil squares and find a way
+out (if there is any). Be aware that the more get killed, the more will show up
+and our hero will get weaker when wounded.
 
-Being a research game, Brutal Maze has a few primary goals:
+Brutal Maze has a few notable feautures:
 
-* Highly portable.
+* Being highly portable.
 * Auto-generated and infinite maze.
 * No binary data for drawing.
-* Enemies with randomized attributes: stun, poison, camo, etc.
+* Enemies with special abilities: stun, poison, camo, etc.
 * Somewhat a realistic physic and logic system.
 * Resizable game window in-game.
 
@@ -29,33 +29,29 @@ The installation procedure should be as simply as follow:
 
 * Install Python and `pip <https://pip.pypa.io/en/latest/>`_. Make sure the
   directory for `Python scripts <https://docs.python.org/2/install/index.html#alternate-installation-the-user-scheme>`_
-  is your ``PATH``.
+  is in your ``$PATH``.
 * Open Terminal or Command Prompt and run ``pip install --user brutalmaze``.
   Now you can lauch the game by running the command ``brutalmaze``.
 
+For more information, see the `Installation <https://github.com/McSinyx/brutalmaze/wiki/Installation>`_
+from Brutal Maze wiki.
+
 Control
 -------
 
 F2
    New game.
-
 Escape, ``p``
    Pause.
-
 Up, ``w``
    Move up.
-
 Down, ``s``
    Move down.
-
 Left, ``a``
    Move left.
-
 Right, ``d``
    Move right.
-
 Left Mouse
    Long-range attack.
-
 Return, Right Mouse
    Close-range attack, also dodge from bullets.
diff --git a/brutalmaze/characters.py b/brutalmaze/characters.py
index 6daaf70..e123dec 100644
--- a/brutalmaze/characters.py
+++ b/brutalmaze/characters.py
@@ -186,14 +186,12 @@ class Enemy:
         if self.offsety:
             self.offsety -= sign(self.offsety)
             return True
-        if (self.next_strike > pygame.time.get_ticks()
-            or (self.x, self.y) in AROUND_HERO):
-            return False
+        if self.next_strike > pygame.time.get_ticks(): return False
 
         self.move_speed = self.maze.fps / speed
         directions = [(sign(MIDDLE - self.x), 0), (0, sign(MIDDLE - self.y))]
         shuffle(directions)
-        directions.append(choice(CROSS))
+        directions.append(choice((choice(ADJACENT_GRIDS), (0, 0))))
         for x, y in directions:
             if (x or y) and self.maze.map[self.x + x][self.y + y] == EMPTY:
                 self.offsetx = round(x * (1 - self.move_speed))
diff --git a/brutalmaze/constants.py b/brutalmaze/constants.py
index 6cc9103..0ffd6a0 100644
--- a/brutalmaze/constants.py
+++ b/brutalmaze/constants.py
@@ -47,7 +47,6 @@ FIRANGE = 6     # grids
 BULLET_LIFETIME = 1000.0 * FIRANGE / (BULLET_SPEED-HERO_SPEED)  # ms
 EMPTY, WALL, HERO, ENEMY = range(4)
 ADJACENT_GRIDS = (1, 0), (0, 1), (-1, 0), (0, -1)
-CROSS = ADJACENT_GRIDS + ((0, 0),)
 AROUND_HERO = set((MIDDLE + x, MIDDLE + y) for x, y in
                   ADJACENT_GRIDS + ((1, 1), (-1, 1), (-1, -1), (1, -1)))
 
diff --git a/brutalmaze/maze.py b/brutalmaze/maze.py
index 7634e77..ee02d38 100644
--- a/brutalmaze/maze.py
+++ b/brutalmaze/maze.py
@@ -247,7 +247,7 @@ class Maze:
                 fallen.append(i)
         for i in reversed(fallen): self.bullets.pop(i)
 
-    def valid_move(self, vx=0.0, vy=0.0):
+    def is_valid_move(self, vx=0.0, vy=0.0):
         """Return dx or dy if it it valid to move the maze in that
         velocity, otherwise return 0.0.
         """
@@ -270,9 +270,9 @@ class Maze:
         """Update the maze."""
         if self.paused: return
         self.fps = fps
-        dx = self.valid_move(vx=self.vx)
+        dx = self.is_valid_move(vx=self.vx)
         self.centerx += dx
-        dy = self.valid_move(vy=self.vy)
+        dy = self.is_valid_move(vy=self.vy)
         self.centery += dy
 
         if dx or dy: