예제 #1
0
파일: timer.py 프로젝트: drumsen/pycube
class Timermode():

    def __init__(self):
        self.timer = None
        self.mode = '3x3'
        self.history = History()

    def nextsolve(self):
        self.scramble = scramble.scramble()
        print("\n" + "Scramble: " + self.scramble + "\n")
        print('0.00', end='\r')
        self.lasttimer = self.timer
        self.timer = Timer()
        time.sleep(0.5)

    def run(self):
        while True:
            self.nextsolve()
            if self.configmode() == -1:
                self.history.close()
                break
            self.playmode()
            self.history.save(self.timer, self.scramble, self.mode)

    def playmode(self):
        self.timer.go(self.mode)
        while True:
            c = getch()
            if c == ' ':
                self.timer.stop()
                return

    def configmode(self):
        while True:
            c = getch()
            if c == ' ':
                break                                      # space = start next solve
            if c == 'q':                                            # q = exit timer mode
                print("Quit Timer\n")
                return -1
            if c == 'p':
                print(self.history.getlast(self.mode, 2))  # p = print last 2 solves
            if c == 'f':
                self.history.deletelast()                  # f = delete last solve
            if c == 'd':                                            # d = set last solve as dnf
                self.history.set_dnf()
                print("DNF nub\n0.00", end="\r")
            if c == '2':                                            # 2 = set last solve as plustwo
                self.history.set_plustwo()
                print("+2 nub\n0.00", end="\r")
            if c == 'm':                                            # m = switch modes(3x3,oh, etc.)
                self.changemode()

    def changemode(self):
        self.mode = input("let's play ")