|
|
|
import curses
|
|
|
|
|
|
|
|
class Field:
|
|
|
|
|
|
|
|
cursor = (0,0)
|
|
|
|
|
|
|
|
field =[
|
|
|
|
[1,0,0,0,0,0,0,0,0,0,0,0],
|
|
|
|
[0,1,0,0,0,0,0,0,0,0,0,0],
|
|
|
|
[0,0,1,0,0,0,0,0,0,0,0,0],
|
|
|
|
[0,0,0,1,0,0,0,0,0,0,0,0],
|
|
|
|
[0,0,0,0,1,0,0,0,0,0,0,0],
|
|
|
|
[0,0,0,0,0,1,0,0,0,0,0,0],
|
|
|
|
[0,0,0,0,0,0,1,0,0,0,0,0],
|
|
|
|
[0,0,0,0,0,0,0,1,0,0,0,0]
|
|
|
|
]
|
|
|
|
|
|
|
|
def __init__(self):
|
|
|
|
self.message = ''
|
|
|
|
|
|
|
|
|
|
|
|
def toggleCurrent(self):
|
|
|
|
curline = self.field[self.cursor[0]]
|
|
|
|
curline[self.cursor[1]] = 0 if curline[self.cursor[1]] == 1 else 1
|
|
|
|
|
|
|
|
def print_field(self,stdscr):
|
|
|
|
stdscr.clear()
|
|
|
|
for line in range(0,len(self.field)):
|
|
|
|
curline = self.field[line]
|
|
|
|
|
|
|
|
for col in range(0,len(curline)):
|
|
|
|
colour = curses.color_pair(1)
|
|
|
|
if (line,col) == self.cursor:
|
|
|
|
colour = curses.color_pair(2)
|
|
|
|
if curline[col] == 0:
|
|
|
|
stdscr.addstr(line,col,'o ',colour)
|
|
|
|
else:
|
|
|
|
stdscr.addstr(line,col,'x ',colour)
|
|
|
|
stdscr.addstr(line+1,0,'Press Space to toggle, q to quit')
|
|
|
|
if len(self.message) > 0:
|
|
|
|
stdscr.addstr(line+2,0,f'{self.message}',curses.color_pair(3))
|
|
|
|
stdscr.refresh()
|
|
|
|
|