Ejemplo n.º 1
0
    def __init__(self):
        pygame.init()
        self.window = pygame.display.set_mode((WIDTH, HEIGHT))
        self.running = True

        victory_spritesheet = Spritesheet('sudoku_winner_spritesheet.png')
        border_sprites = Spritesheet('borders.png')
        VictoryAnimation.images = victory_spritesheet.imgsat(
            VictoryAnimation.img_rects, -1)
        self.border_images = border_sprites.imgsat(border_img_locs, -1)

        self.grid = [[0 for i in range(9)] for j in range(9)]
        self.grid_finished = [[0 for i in range(9)] for j in range(9)]
        # self.grid = test_board_2
        # self.grid_finished = test_board_2_finished

        self.selected = None
        self.mouse_pos = None
        self.mouse_click = None
        self.finished = False
        self.cell_changed = False
        self.show_victory = False
        self.status = ''
        self.incorrect_cells = []
        self.locked_cells = []
        self.state = "playing"
        self.playing_buttons = []
        self.menu_buttons = []
        self.end_buttons = []

        self.victory = VictoryAnimation(victory_pos)

        self.font = pygame.font.SysFont('arial', int(cell_size / 2))
        self.load()
Ejemplo n.º 2
0
def main():
    pygame.init()

    # set the display mode
    pygame.display.set_caption('Arkanoid')
    screen = pygame.display.set_mode(SCREENRECT.size)
    background = pygame.Surface(SCREENRECT.size).convert()

    # load images, assign to sprite classes
    spritesheet = Spritesheet('sudoku_spritesheet.png')
    border_sprites = Spritesheet('borders.png')
    victory_spritesheet = Spritesheet('sudoku_winner_spritesheet.png')

    # assign images to sprites
    Board.images = spritesheet.imgsat([(32, 0, 32, 32), (0, 32, 32, 32)])
    Board.border_images = border_sprites.imgsat(Board.border_img_locs)
    Victory.images = victory_spritesheet.imgsat(Victory.img_rects)

    # create sprite groups
    cells = pygame.sprite.Group()
    all = pygame.sprite.RenderUpdates()

    # assign sprite groups
    Cell.containers = cells, all
    Victory.containers = all
    Button.containers = all

    # create the background
    board = Board(background, CELL_SIDE, BOARD_WIDTH, BORDER_HEIGHT)
    panel = Panel(board, background)
    new_game = NewGame(panel, 'New Game', 100, 50, (255, 0, 0), (0, 255, 0),
                       (255, 255, 255))
    nums_grid = NumsGrid(panel)

    # create sprites
    # victory = Victory(panel)

    # transfer bg
    screen.blit(background, (0, 0))
    pygame.display.update()

    # keep track of time
    clock = pygame.time.Clock()

    # game loop
    while True:

        # get input
        for event in pygame.event.get():
            if event.type == QUIT \
                    or (event.type == KEYDOWN and event.key == K_ESCAPE):
                return

        # clear sprites
        all.clear(screen, board.background)

        # update sprites
        all.update()

        # redraw sprites
        dirty = all.draw(screen)
        pygame.display.update(dirty)

        # maintain frame rate
        clock.tick(30)