Exemple #1
0
 def make_selection_button(cell_xy, theme, callback, params):
     """ make_selection_button() - returns a created selection button.
     
     Create buttons and assign themes and center coords 
     by calculating its center from display center."""
     
     cell_x, cell_y = cell_xy
     
     # Get display size and display center.
     display_size = pygame.display.get_surface().get_size()
     display_center_pos = display_size[0]/2, display_size[1]/2
     
     cx = display_center_pos[0] + cell_x * (scale_size[0]/2 + 9)
     cy = display_center_pos[1] + cell_y * (scale_size[1]/2 + 9)
     print cx, cy
     selection_button = Button(panel)
     selection_button.theme = theme
     selection_button.rect.center = cx, cy
     
     selection_button.released(callback, params)
     
     return selection_button
Exemple #2
0
    def load_option_buttons(self):#game_screen
        """ load_option_buttons<() - Loads option buttons for game screen.
        
        They are then attatched to the TileGroup.
        
        USES: 
            self.option_buttons_list
            TileGroup.attatch_option_buttons(self.option_buttons_list)
        """
        
        # Load images and make themes.
        
        # Start over button.
        default =  pygame.image.load("button/start_over/default.png")
        hover = pygame.image.load("button/start_over/hover.png")
        disabled = pygame.image.load("button/start_over/disabled.png")
        pressed = pygame.image.load("button/start_over/held.png")
        bt_startover = create_button_theme(default, hover, pressed, disabled)
        
        # Resume Button.
        default =  pygame.image.load("button/resume/default.png")
        hover = pygame.image.load("button/resume/hover.png")
        pressed =  pygame.image.load("button/resume/held.png")
        self.bt_resume = create_button_theme(default, hover, pressed)
        
        # Pause Button.
        default =  pygame.image.load("button/pause/default.png")
        hover = pygame.image.load("button/pause/hover.png")
        disabled = pygame.image.load("button/pause/disabled.png")
        pressed =  pygame.image.load("button/pause/held.png")
        self.bt_pause = create_button_theme(default, hover, pressed, disabled)
        
        # Change difficulty button.
        default =  pygame.image.load("button/change_difficulty/default.png")
        hover = pygame.image.load("button/change_difficulty/hover.png")
        pressed = pygame.image.load("button/change_difficulty/held.png")
        bt_change_difficulty = create_button_theme(default, hover, pressed)
        
        # Generate buttons using themes and add to Group.
        
        self.option_buttons_list = ButtonGroup()
        
        # Start over button.
        start_over = Button(self.game_screen_panel)
        start_over.label = "start_over"
        start_over.theme = bt_startover
        start_over.rect.x, start_over.rect.y = 297, 193
        start_over.disable()
        start_over.released(self.TileGroup.start_over, ())
        self.option_buttons_list.add(start_over)
        
        # Change difficulty button.
        change_difficulty = Button(self.game_screen_panel)
        change_difficulty.label = "change_difficulty"
        change_difficulty.theme = bt_change_difficulty
        change_difficulty.rect.x = 297
        change_difficulty.rect.y = 193 + 62
        change_difficulty.released(self.switch_to_change_difficulty_screen, ())
        self.option_buttons_list.add(change_difficulty)
        
        # Pause Button.
        pause = Button(self.game_screen_panel)
        pause.label = "pause"
        pause.theme = self.bt_pause
#        pause.rect.x = 297
#        pause.rect.y = 193 + 62*2
        pause.disable()
        self.option_buttons_list.add(pause)
        
        resume = Button(self.game_screen_panel)
        resume.label = "resume"
        resume.theme = self.bt_resume
        resume.rect = pause.rect
#        pause.rect.x = 297
#        pause.rect.y = 193 + 62*2
        resume.disable()
        self.option_buttons_list.add(resume)
        
        self.flag_static_sprite = fsp = Button()
        fsp.label = "flag"
        img = pygame.image.load("data/themes/bgcolors/Tile/flag.png").convert_alpha()
        img = pygame.transform.scale(img, (32, 32))
        fsp.theme = create_button_theme(img)
        fsp.disable()
        self.option_buttons_list.add(fsp)
        
        self.clock_static_sprite = csp = Button()
        csp.label = "clock"
        img = pygame.image.load("data/themes/bgcolors/Tile/flag.png").convert_alpha()
        csp.theme = create_button_theme(img)
        csp.disable()
        self.option_buttons_list.add(fsp)
        
        # Now attatch it to TileGroup.
        
        self.TileGroup.attatch_option_buttons(self.option_buttons_list)