frames = 25 for opt, arg in opts: if opt == '-f': frames = int(arg) if opt == '-s': sf = float(arg) root = os.path.abspath(os.path.dirname(__file__)) sounds_dir = root + "/sounds" ui.media_path = root + "/img" bus = Bus() gui = ui.Gui(sf, frames, bus, show_leds=config.onscreen_leds_enabled, bg_change_interval=config.bg_change_secs, bg_amount=config.bg_amount) bus.subscribe(replay_handler, thread=True) hipbot.HipBot(bus) soundcontroller.SoundController(bus, sounds_dir) scoreboard.ScoreBoard(bus) uploader.Uploader(bus) ledcontroller.LedController(bus) standby.Standby(bus, config.standby_timeout_secs) # IO buttons = buttoncontroller.Buttons(bus) if config.serial_enabled: serial = IOSerial(bus) IODebug(bus) if gui.is_x11():
pat_ok = [Pattern(0.3, ["OK"])] pat_upload_feedback = 2 * [Pattern(0.1, ["OK"]), Pattern(0.1)] pat_error = 2 * [Pattern(0.3, ["YD", "BD"]), Pattern(0.3)] pat_demo = [ Pattern(1, ["BD"]), Pattern(1, ["BI"]), Pattern(1, ["YD"]), Pattern(1, ["YI"]), Pattern(1, ["OK"]) ] if __name__ == "__main__": def write_data(led_event): leds = led_event.data print("\r", end="") for led in ["BD", "BI", "OK", "YI", "YD"]: print("0" if led in leds else " ", end=" ") sys.stdout.flush() bus = Bus() bus.subscribe(write_data, thread=True) controller = Plugin(bus) controller.setMode(pat_standby, loop=True) time.sleep(5) controller.setMode(pat_goal) time.sleep(5)