Skip to content

Instantly share code, notes, and snippets.

@hastinbe
Created March 11, 2018 17:10
Show Gist options
  • Select an option

  • Save hastinbe/8b64a63c4b7f2f962538710f639e153f to your computer and use it in GitHub Desktop.

Select an option

Save hastinbe/8b64a63c4b7f2f962538710f639e153f to your computer and use it in GitHub Desktop.
import curses
import signal
import sys
# Globals
screen = None
refresh_time = 1
class Screen(object):
def __init__(self, refresh_time = 1):
self.screen = curses.initscr()
if not self.screen:
print("fuck\n")
curses.noecho()
curses.cbreak()
curses.curs_set(0)
self.term_h = 24
self.term_w = 80
self.goose_x = 0
self.goose_y = 0
self.term = curses.newwin(self.term_h, self.term_w, 0, 0)
self.__refresh_time = refresh_time
def exit(self):
curses.echo()
curses.nocbreak()
curses.curs_set(1)
curses.endwin()
def update(self):
self.term.refresh()
curses.napms(self.__refresh_time * 1000)
def clear(self):
self.term.erase()
def displayGoose(self):
goose = "Mrgoose is on the loose"
self.term.addnstr(self.goose_y, self.goose_x, goose, 80, 0)
def exit():
screen.exit()
sys.exit(0)
def signal_handler(signal, frame):
exit()
if __name__ == '__main__':
screen = Screen(refresh_time)
# Ctrl-C
signal.signal(signal.SIGINT, signal_handler)
while True:
screen.clear()
screen.displayGoose()
screen.update()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment