curses.noecho() # don't display pressed KEYS curses.cbreak() # don't wait for a newline to process input STDSCR.keypad(1) # enable keypad mode (process special KEYS, like Home) curses.curs_set(0) # make the cursor invisible curses.halfdelay(5) # wait only half a second between each getch # Overload colors to make blocks curses.init_pair(1, curses.COLOR_WHITE, curses.COLOR_WHITE) curses.init_pair(2, curses.COLOR_GREEN, curses.COLOR_GREEN) curses.init_pair(3, curses.COLOR_BLUE, curses.COLOR_BLUE) curses.init_pair(4, curses.COLOR_YELLOW, curses.COLOR_YELLOW) curses.init_pair(5, curses.COLOR_RED, curses.COLOR_RED) try: KEYS = KeyMap() KEYS.load_from_file(CONFIG_FNAME) GAME_BOARD = Board(STDSCR, [0, 0], [20, 20]) SCORE_BOARD = ScoreBoard(GAME_BOARD.status, 5, 25) GAME_QUIT = False LAST_GAME_STEP = time() while not GAME_QUIT and not GAME_BOARD.game_over(): CURRENT_TIME = time() if CURRENT_TIME - LAST_GAME_STEP > STEP_TIME: GAME_BOARD.advance_block() LAST_GAME_STEP = CURRENT_TIME USR_INPUT = STDSCR.getch() if USR_INPUT == KEYS.quit: GAME_QUIT = True