def run(self): self.render() self.userThread = UserThread(self.model.junior, self.model) self.userThread.start() self.iteration = 0 while not self.isGameOver(): self.resetTimes() startTime = time.time() self.printStats() self.otherCarUpdate() self.calculateError() duration = time.time() - startTime timeToSleep = Const.SECONDS_PER_HEARTBEAT - duration # self.checkLate(timeToSleep) timeToSleep = max(0.01, timeToSleep) Display.graphicsSleep(timeToSleep) self.iteration += 1 if not self.userThread.quit and not self.isLearning: self.outputGameResult() self.userThread.stop() Display.graphicsSleep(0.1) self.userThread.join() return self.userThread.quit
def infer(self): start = time.time() try: self.elapseTime() self.observe() except Exception, e: print 'caught' traceback.print_exc() Display.raiseEndGraphics() Display.graphicsSleep(0.01) self.userThread.quit = True
def freezeFrame(self): while True: keys = Display.getKeys() if 'q' in keys: return Display.graphicsSleep(0.1)