Exemplo n.º 1
0
 def handle_deselect(self, change_state):
     """changes state of button when it is clicked"""
     self.color = button.Button._InactiveColor
     self.symbol.color = button.Button._InactiveColor
     self.selected = False
     
     if change_state:
         if ((pygame.MOUSEBUTTONUP in wotsuievents.event_types) and 
             (self.contains(wotsuievents.mouse_pos))):
             gamestate.mode = self.gamestate_mode
             splash.draw_loading_splash()
         elif pygame.K_RETURN in wotsuievents.keys_released:
             gamestate.mode = self.gamestate_mode
             splash.draw_loading_splash()
def load():
    global loading_match_label
    global load_match_progress_timer
    global player_data
    
    loading_match_label = button.Label((0, 0), LOADING_MATCH_TEXT, (255,255,255),40)
    loading_match_label.set_position(get_layout_label_pos())
    
    splash.draw_loading_splash()
    pygame.display.flip()
    
    load_match_progress_timer = 0
    
    versusmode_player_data = []
    
    #swap actual moveset with moveset name
    for player_data_object in player_data.values():
        versusmode_player_data.append(
            PlayerData(
                player_data_object.player_position,
                player_data_object.player_type,
                movesetdata.get_moveset(player_data_object.moveset),
                player_data_object.size,
                player_data_object.color,
                player_data_object.difficulty
            )
        )
    
    onlineversusmode.init(versusmode_player_data)
    
    if versusclient.local_player_is_in_match():
        
        versusclient.listener.send_all_movesets_loaded()
    
    elif versusclient.dummies_only():
        versusclient.listener.start_match()
Exemplo n.º 3
0
def handle_events():
    global UI_objects
    global loaded
    global exit_button
    global player_data
    
    if loaded == False:
        load()
    
    if pygame.MOUSEBUTTONDOWN in wotsuievents.event_types:
        if exit_button.contains(wotsuievents.mouse_pos):
            exit_button.handle_selected()
        
    if pygame.MOUSEBUTTONUP in wotsuievents.event_types:
        if exit_button.selected:
            exit_button.handle_deselected()
            
            if exit_button.contains(wotsuievents.mouse_pos):
                gamestate.mode = gamestate.Modes.VERSUSMOVESETSELECT
                unload()
                clear_data()
    
    if loaded:
        gamestate.screen.blit(UI_objects.background.surface, (0,0))
        exit_button.draw(gamestate.screen)
        UI_objects.stage_selector.draw(gamestate.screen)
        UI_objects.title_label.draw(gamestate.screen)
        UI_objects.stage_selector.handle_events()
        
        if UI_objects.stage_selected():
            if UI_objects.start_match_label_draw_timer >= UI_objects.start_match_label_draw_timeout:
                UI_objects.start_match_label.draw(gamestate.screen)
            else:
                UI_objects.start_match_label_draw_timer += gamestate.time_passed
            
            if ((UI_objects.stage_selector.contains(wotsuievents.mouse_pos) and
            pygame.MOUSEMOTION in wotsuievents.event_types) or 
            pygame.K_UP in wotsuievents.keys_pressed or
            pygame.K_DOWN in wotsuievents.keys_pressed):
               UI_objects.start_match_label_draw_timer = 0
               UI_objects.start_match_label.hide() 
            
            if (pygame.K_KP_ENTER in wotsuievents.keys_pressed or 
            pygame.K_RETURN in wotsuievents.keys_pressed):
                gamestate.screen.fill((0,0,0))
                splash.draw_loading_splash()
                
                gamestate.stage = UI_objects.stage_selector.selected_thumbnail.stage
                
                versusmode.init(player_data)
                
                #versusmode.local_state.init_recording(
                #    player1_moveset_select.selected_moveset.name,
                #    player2_moveset_select.selected_moveset.name
                #)
                
                unload()
                gamestate.mode = gamestate.Modes.VERSUSMODE
        else:
            UI_objects.start_match_label_draw_timer = 0            
            UI_objects.start_match_label.hide()
Exemplo n.º 4
0
def handle_events():
    global loaded
    global exit_button
    global create_new_moveset_label
    global edit_moveset_label
    global delete_moveset_label
    global moveset_select_container
    global export_moveset_label
    global import_movesets_label
    global import_movesets_thread
    global import_alert_box
    
    if loaded == False:
        load()
    
    if import_movesets_thread == None:
        if pygame.MOUSEBUTTONDOWN in wotsuievents.event_types:
            if exit_button.contains(wotsuievents.mouse_pos):
                exit_button.handle_selected()
            
            if create_new_moveset_label.contains(wotsuievents.mouse_pos):
                create_new_moveset_label.handle_selected()
            
            if import_movesets_label.contains(wotsuievents.mouse_pos):
                import_movesets_label.handle_selected()
            
            if (edit_moveset_label.contains(wotsuievents.mouse_pos) and
            edit_moveset_label.active):
                edit_moveset_label.handle_selected()
            
            if (delete_moveset_label.contains(wotsuievents.mouse_pos) and
            delete_moveset_label.active):
                delete_moveset_label.handle_selected()
            
            if (export_moveset_label.contains(wotsuievents.mouse_pos) and
            export_moveset_label.active):
                export_moveset_label.handle_selected()
        if pygame.MOUSEBUTTONUP in wotsuievents.event_types:
            if exit_button.selected:
                exit_button.handle_deselected()
                
                if exit_button.contains(wotsuievents.mouse_pos):
                    gamestate.mode = gamestate.Modes.MAINMENU
                    unload()
            
            elif create_new_moveset_label.selected:
                create_new_moveset_label.handle_deselected()
                
                if create_new_moveset_label.contains(wotsuievents.mouse_pos):
                    splash.draw_loading_splash()
                    movesetbuilder.load(movesetdata.Moveset())
                    gamestate.mode = gamestate.Modes.MOVESETBUILDER
                    unload()
            
            elif import_movesets_label.selected:
                import_movesets_label.handle_deselected()
                
                if import_movesets_label.contains(wotsuievents.mouse_pos):
                    import_movesets_thread = Thread(
                        target=movesetdata.import_movesets
                    )
                    import_movesets_thread.start()
            
            elif edit_moveset_label.selected:
                edit_moveset_label.handle_deselected()
                
                if edit_moveset_label.contains(wotsuievents.mouse_pos):
                    splash.draw_loading_splash()
                    movesetbuilder.load(
                        moveset_select_container.selected_moveset
                    )
                    gamestate.mode = gamestate.Modes.MOVESETBUILDER
                    unload()
            
            elif delete_moveset_label.selected:
                delete_moveset_label.handle_deselected()
                
                if delete_moveset_label.contains(wotsuievents.mouse_pos):
                    movesetdata.delete_moveset(
                        moveset_select_container.selected_moveset
                    )
                    moveset_select_container.selected_moveset = None
                    moveset_select_container.load_movesets(
                        movesetdata.get_movesets()
                    )
            elif export_moveset_label.selected:
                export_moveset_label.handle_deselected()
                
                if export_moveset_label.contains(wotsuievents.mouse_pos):
                    movesetdata.export_moveset(
                        moveset_select_container.selected_moveset
                    )
    
    if loaded:
        exit_button.draw(gamestate.screen)
        edit_moveset_label.draw(gamestate.screen)
        create_new_moveset_label.draw(gamestate.screen)
        delete_moveset_label.draw(gamestate.screen)
        export_moveset_label.draw(gamestate.screen)
        import_movesets_label.draw(gamestate.screen)
        moveset_select_container.draw(gamestate.screen)
        
        if import_movesets_thread == None:
            moveset_select_container.handle_events()
            
        elif import_movesets_thread.is_alive() == True:
            import_alert_box.draw(gamestate.screen)
            
        elif import_movesets_thread.is_alive() == False:
            moveset_select_container.selected_moveset = None
            moveset_select_container.load_movesets(
                movesetdata.get_movesets()
            )
            import_movesets_thread = None
        
        if moveset_select_container.selected_moveset != None:
            if not edit_moveset_label.active:
                edit_moveset_label.activate()
            if not delete_moveset_label.active:
                delete_moveset_label.activate()
            if not export_moveset_label.active:
                export_moveset_label.activate()
        else:
            if edit_moveset_label.active:
                edit_moveset_label.inactivate()
            if delete_moveset_label.active:
                delete_moveset_label.inactivate()
            if export_moveset_label.active:
                export_moveset_label.inactivate()
 def start_match(self):
     splash.draw_loading_splash()
     gamestate.mode = gamestate.Modes.STAGESELECT
     stageselect.load(self.create_player_data())
     self.loaded = False