PortalFruit = "PortalFruit"
Dead = "Dead"
- def __str__(self):
+ def char(self, *, turbo: bool):
if self is TileContents.Empty:
return ' '
elif self is TileContents.Wall:
return '#'
elif self is TileContents.Snake:
- return '§'
+ return '*' if turbo else '§'
elif self is TileContents.Fruit:
return '@'
elif self is TileContents.TurboFruit:
def paint(self):
for i, row in enumerate(self.tiles):
for j, tile in enumerate(row):
- if not self.turbo:
- self.win.addch(i, j, str(tile))
- else:
- self.win.addch(i, j, str(tile).replace('§', '*'))
+ self.win.addch(i, j, tile.char(turbo=self.turbo))
self.win.addstr(i + 1, 2, f'{self.highscore:04}')
self.win.addstr(i + 1, j - 6, f'{self.score():04}')
self.win.refresh()