def exit(self, quit=True):
     
     self.end_simulation()
     self.cleanup_rendering_objects()
     self.cleanup_match_state_variables()
     self.reset_GUI_variables()
     self.flush_recording()
     self.initialized = False
     self.exiting = True
     self.exit_indicator = True
     
     wotsrendering.flush()
     
     self.unregister_network_callbacks()
     
     if (versusclient.local_player_is_in_match() or 
     (versusclient.dummies_only() and gamestate.hosting)):
         versusclient.listener.end_match()
         
     else:
         if quit:
             #if you're a spectator go to the main menu
             versusclient.listener.close()
             versusclient.unload()
             gamestate.mode = gamestate.Modes.MAINMENU
     
     self.chatting = False
Пример #2
0
 def create_background(self, player_data):
     player1_model = physics.Model((0,0))
     player2_model = physics.Model((0,0))
     
     self.set_point_positions(player_data, PlayerPositions.PLAYER1, player1_model)
     self.set_point_positions(player_data, PlayerPositions.PLAYER2, player2_model)
     
     versusrendering.draw_player(player1_model, (255,255,255), player_data[0].color, 30, self.surface, 1)
     versusrendering.draw_player(player2_model, (255,255,255), player_data[1].color, 30, self.surface, 1)
     wotsrendering.flush()
     
     self.surface.set_alpha(100)
Пример #3
0
def draw_bkg_and_stick():
    ground_surface = stage.draw_ground(800, 200)
    gamestate.screen.fill((0,0,0), ((0,450),(800,250)))
    gamestate.screen.fill((0,0,0), ((0,0),(800,450)))
    gamestate.screen.blit(ground_surface, (0, 450))
    versusrendering.draw_reflection(
        model,
        (255,255,255),
        (0,0,0),
        30,
        camera,
        gamestate.screen,
        500
    )
    versusrendering.draw_player(
        model, 
        (255,255,255),
        (0,0,0),
        30,
        gamestate.screen,
        1)
    
    wotsrendering.flush()
Пример #4
0
     elif gamestate.mode == gamestate.Modes.CONTROLSPAGE:
         controlspage.handle_events()
     
     elif gamestate.mode == gamestate.Modes.SPLASH:
         splash.handle_events()
     
     elif gamestate.mode == gamestate.Modes.STAGESELECT:
         stageselect.handle_events()
     
     elif gamestate.mode == gamestate.Modes.CREDITS:
         credits.handle_events()
     
     if gamestate.drawing_mode == gamestate.DrawingModes.UPDATE_ALL:
         pygame.display.flip()
     elif gamestate.drawing_mode == gamestate.DrawingModes.DIRTY_RECTS:
         wotsrendering.flush()
         gamestate.update_screen()
     
     if gamestate.hosting:
         versusserver.pump()
     
     gamestate.clock.tick(gamestate.frame_rate)
 
 except Exception as err:
     print("Unexpected error:", str(err))
     
     if (versusmode.local_state != None and
     versusmode.local_state.simulation_process != None):
         
         if versusmode.local_state.simulation_process.is_alive():
             print("terminating!")