def choose_new_music(self): self.joust_music = Music( random.choice(glob.glob("audio/Joust/music/*"))) try: self.zombie_music = Music( random.choice(glob.glob("audio/Zombie/music/*"))) except Exception: self.zombie_music = DummyMusic() try: self.commander_music = Music( random.choice(glob.glob("audio/Commander/music/*"))) except Exception: self.commander_music = DummyMusic()
def game_loop(self): self.play_menu_music = True while True: if self.play_menu_music: self.play_menu_music = False try: self.menu_music = Music( random.choice(glob.glob("audio/MenuMusic/*"))) self.menu_music.start_audio_loop() except Exception: self.menu_music = DummyMusic() self.i = self.i + 1 if not self.pair_one_move and "0" in os.popen( 'lsusb | grep "PlayStation Move motion controller" | wc -l' ).read(): self.pair_one_move = True self.paired_moves = [] if self.pair_one_move: if psmove.count_connected() != len(self.tracked_moves): for move_num, move in enumerate(self.moves): if move.connection_type == psmove.Conn_USB and self.pair_one_move: self.pair_usb_move(move) elif move.connection_type != psmove.Conn_USB: self.pair_move(move, move_num) self.check_for_new_moves() if len(self.tracked_moves) > 0: self.check_change_mode() self.check_admin_controls() self.check_start_game() self.check_command_queue() self.update_status('menu')
def __init__(self): self.command_queue = Queue() self.joust_manager = Manager() self.ns = self.joust_manager.Namespace() self.web_proc = Process(target=webui.start_web, args=(self.command_queue, self.ns)) self.web_proc.start() self.ns.status = dict() self.ns.settings = dict() self.ns.battery_status = dict() self.command_from_web = '' self.initialize_settings() self.update_settings_file() #check for update if platform == "linux" or platform == "linux2": self.big_update = update.check_for_update( self.ns.settings['menu_voice']) self.git_hash = update.run_command("git rev-parse HEAD")[:7] #defined outside of ns.settings as it's a purely dev option self.experimental = False self.move_count = psmove.count_connected() self.dead_count = Value('i', 0) self.moves = [ psmove.PSMove(x) for x in range(psmove.count_connected()) ] self.admin_move = None #move controllers that have been taken out of play self.out_moves = {} self.random_added = [] self.rand_game_list = [] self.show_battery = Value('i', 0) #only allow one move to be paired at a time self.pair_one_move = True self.tracked_moves = {} self.force_color = {} self.paired_moves = [] self.move_opts = {} self.teams = {} self.game_mode = common.Games[self.ns.settings['current_game']] self.old_game_mode = self.game_mode self.pair = pair.Pair() self.menu = Value('i', 1) self.controller_game_mode = Value('i', 1) self.restart = Value('i', 0) self.controller_teams = {} self.controller_colors = {} self.dead_moves = {} self.music_speed = Value('d', 0) self.werewolf_reveal = Value('i', 2) self.show_team_colors = Value('i', 0) self.red_on_kill = Value('i', 0) self.zombie_opts = {} self.commander_intro = Value('i', 1) self.commander_move_opts = {} self.commander_powers = [Value('d', 0.0), Value('d', 0.0)] self.commander_overdrive = [Value('i', 0), Value('i', 0)] self.five_controller_opts = {} self.swapper_team_colors = Array('i', [0] * 6) self.fight_club_colors = {} self.invincible_moves = {} self.num_teams = Value('i', 1) self.bomb_color = Array('i', [0] * 3) self.game_start = Value('i', 0) self.false_colors = {} self.was_faked = {} self.rumble = {} self.kill_controller_proc = {} self.controller_sensitivity = Array('d', [0] * 10) self.dead_invince = Value('b', False) self.i = 0 #load audio now so it converts before the game begins self.menu_music = Music("menu") self.joust_music = Music("joust") self.zombie_music = Music("zombie") self.commander_music = Music("commander") self.choose_new_music()