tighogg

fighting game for the terminal
git clone https://git.ce9e.org/tighogg.git

commit
0dfb60d75c394fbedda30a045f3e704a31a9464d
parent
78bd2783fa072c53eb4271d56e3826e669d5ba69
Author
Tobias Bengfort <tobias.bengfort@posteo.de>
Date
2021-05-08 08:12
fixup

Diffstat

M tighogg.py 47 +++++++++++++++++++++--------------------------

1 files changed, 21 insertions, 26 deletions


diff --git a/tighogg.py b/tighogg.py

@@ -13,42 +13,27 @@ class Player:
   13    13         self.color = color
   14    14         self.direction = LEFT
   15    15         self.running = False
   16    -1         self.ducking = False
   17    16         self.weapon = '-'
   18    17 
   19    18     def _render(self):
   20    19         if self.running:
   21    -1             if self.ducking:
   22    -1                 return (
   23    -1                     r'     ',
   24    -1                     r'o_   ',
   25    -1                     r'  @  ',
   26    -1                 )
   -1    20             if self.direction == LEFT:
   -1    21                 yield r'o  '
   -1    22                 yield r'w\ '
   27    23             else:
   28    -1                 return (
   29    -1                     r'o    ',
   30    -1                     r'w\   ',
   31    -1                     r'  @  ',
   32    -1                 )
   33    -1                 return 'o    \n \\'
   -1    24                 yield r'  o'
   -1    25                 yield r' /w'
   -1    26             yield r' @ '
   34    27         else:
   35    -1             if self.ducking:
   36    -1                 return (
   37    -1                     r'     ',
   38    -1                     r'  o  ',
   39    -1                     r'  Z  ',
   40    -1                 )
   -1    28             yield r' o '
   -1    29             if self.direction == LEFT:
   -1    30                 yield r'w| '
   41    31             else:
   42    -1                 return (
   43    -1                     r'  o  ',
   44    -1                     r' w|  ',
   45    -1                     r'  Λ  ',
   46    -1                 )
   -1    32                 yield r' |w'
   -1    33             yield r' Λ '
   47    34 
   48    35     def render(self):
   49    36         for line in self._render():
   50    -1             if self.direction == RIGHT:
   51    -1                 line = line[::-1]
   52    37             line = line.replace('w', self.weapon)
   53    38             line = (
   54    39                 boon.get_cap('setaf', self.color)
@@ -72,6 +57,16 @@ class Game(boon.App):
   72    57         if key == 'q':
   73    58             self.running = False
   74    59 
   -1    60         # player1
   -1    61         elif key == boon.KEY_LEFT:
   -1    62             self.player1.running = True
   -1    63             self.player1.direction = LEFT
   -1    64         elif key == boon.KEY_RIGHT:
   -1    65             self.player1.running = True
   -1    66             self.player1.direction = RIGHT
   -1    67         elif key == boon.KEY_DOWN:
   -1    68             self.player1.running = False
   -1    69 
   75    70 
   76    71 if __name__ == '__main__':
   77    72     game = Game()