コード例 #1
0
def run_game():
    # Make Game
    pygame.init()
    ai_settings = Settings()
    screen = pygame.display.set_mode(
        (ai_settings.screen_width, ai_settings.screen_height))
    pygame.display.set_caption('Space Invaders')
    clock = pygame.time.Clock()

    # Make Ship
    ship = Ship(ai_settings, screen)

    # Make Alien group
    aliens = Group()

    # Make UFO
    ufo = Group()

    # Make Bullets
    bullets = Group()

    # Make Alien bullets
    alien_bullets = Group()

    # Make fleet of aliens
    gf.create_fleet(ai_settings, screen, ship, aliens)

    # Make bunker group
    bunkers = Group(drawBunker(ai_settings, screen, 0),
                    drawBunker(ai_settings, screen, 1),
                    drawBunker(ai_settings, screen, 2),
                    drawBunker(ai_settings, screen, 3))

    # Feature game stats and scoreboard
    stats = GameStats(ai_settings)
    sb = Scoreboard(ai_settings, screen, stats)

    while True:
        clock.tick(120)

        # Set processes of when game opens/closes
        if not stats.game_active:
            if not gf.opening_screen(ai_settings, stats, screen):
                pygame.quit()
                break
            else:
                gf.start_game(ai_settings, screen, stats, sb, ship, aliens,
                              alien_bullets, bullets)
        gf.check_events(ai_settings, screen, stats, ship, bullets)

        if stats.game_active:
            ship.update()
            gf.update_alienBullet(ai_settings, screen, stats, sb, ship, aliens,
                                  alien_bullets, bullets, ufo)
            gf.update_aliens(ai_settings, screen, stats, sb, ship, aliens,
                             alien_bullets, bullets, ufo)

        gf.music_BG(ai_settings, stats)
        gf.update_screen(ai_settings, screen, stats, sb, ship, aliens,
                         alien_bullets, bullets, bunkers, ufo)
コード例 #2
0
def show_main_menu():
    print("Press ENTER to Start Game")
    print("Press Q to Quit")

    gameChoice = input("")
    if gameChoice == "":
        start_game()
    elif gameChoice == "Q":
        print("Thanks for Playing")
    else:
        print("Incorrect Choice")
        showMainMenu()
コード例 #3
0
def main():
    g_settings = settings.Settings()
    while True:
        user_cmd = input('Input command: ').split()
        if user_cmd[0] == 'exit':
            break
        elif len(user_cmd) == 3 and user_cmd[0] == 'start' and user_cmd[1] in g_settings.OPTIONS\
                and user_cmd[2] in g_settings.OPTIONS:
            gf.print_battlefield(g_settings)
            gf.start_game(g_settings, user_cmd)
            if not gf.check_status(g_settings):
                g_settings.reset_settings()
                # g_settings.__repr__()
        else:
            print('Bad parameters!')
コード例 #4
0
def main():
    pg.init()
    settings = Settings()
    game_stats = GameStats()

    screen = pg.display.set_mode(settings.screen_size)
    title = 'Snake | Max score: ' + str(game_stats.max_score) + ' | Score: ' +\
            str(game_stats.score)
    pg.display.set_caption(title)

    fruit = Fruit(settings, screen)
    snake = Snake(settings, screen)
    text = Text(screen, settings, 'GAME OVER')
    button = RestartButton(screen, settings)
    menu = Menu(screen)

    fps_controller = pg.time.Clock()

    while 1:
        if not settings.menu_passed:
            gf.start_game(screen, menu)
            gf.is_menu_passed(settings, menu)
        else:
            if not settings.game_over:
                gf.check_events(snake)
                gf.update(fruit, snake, game_stats, fps_controller, screen,
                          settings)

                if not settings.fruit_on_screen:
                    gf.update_caption(game_stats)

                gf.check_game_over(snake, settings)
            else:
                game_stats.update_max_score()
                text.draw()
                button.blit()
                pg.display.flip()

                if gf.is_button_pressed(button, settings):
                    gf.restart_game(game_stats, snake, fruit, settings, screen)
                    snake = Snake(settings, screen)
                    fruit = Fruit(settings, screen)
コード例 #5
0
import game_functions as game
import random

# Main
# Setup data for first game
game_board = game.start_board()
player_one = game.start_game()
player_two = ''
player_one_wins = 0
player_two_wins = 0
replay = 'y'
turn = random.randint(1, 2)
print(turn)

# If replay is set, start a game
while replay == 'y':
    game_board = game.start_board()
    if player_one == 'x':
        player_two = 'o'
    elif player_one == 'o':
        player_two = 'x'

    game.display_board(game_board)
    game_board = game.take_turn(game_board, turn, player_one, player_two)
    winner = game.check_win(game_board)
    game.display_board(game_board)

    while winner != 'x' and winner != 'o' and winner != 'y':
        turn = game.get_turn(turn)
        game_board = game.take_turn(game_board, turn, player_one, player_two)
        winner = game.check_win(game_board)
コード例 #6
0
                                 button_color=('white', 'red')),
                       sg.Button('Setup Robots', size=(12, 1))
                   ]]

    playing_field = sg.Window('Robot Battle', main_layout, finalize=True)
    board_graph = playing_field['-field-']
    #
    #   Draw the board
    #
    board_graph.DrawLine((0, 0), (game_data.f_length, 0))  # bottom line
    board_graph.DrawLine(
        (game_data.f_length, 0),
        (game_data.f_length, game_data.f_height))  # right line
    board_graph.DrawLine((game_data.f_length, game_data.f_height),
                         (0, game_data.f_height))  # top line
    board_graph.DrawLine((0, game_data.f_height), (0, 0))  # left line
    game_data.main_gui = playing_field

    while True:  # Event Loop
        event, values = playing_field.read()
        if event == sg.WIN_CLOSED or event == 'Exit':
            break
        elif event == 'Setup Robots':
            game_functions.setup_game(board_graph)
        elif event == 'Jackson Start':
            game_functions.start_game(board_graph, 'Jackson')
        elif event == 'Dad Start':
            game_functions.start_game(board_graph, 'Dad')

    playing_field.close()
コード例 #7
0
ファイル: main.py プロジェクト: jacksonmcg/PythonProjects
    board = sg.Window('Tic-Tac-Toe Program', main_layout, finalize=True)
    board_graph = board['-tic_tac-']
    #
    #   Draw the board
    #
    board_graph.DrawLine((0, 0), (450, 0))  # top line
    board_graph.DrawLine((450, 0), (450, 450))  # right line
    board_graph.DrawLine((450, 450), (0, 450))  # bottom line
    board_graph.DrawLine((0, 450), (0, 0))  # left line

    board_graph.DrawLine((0, 150), (450, 150))
    board_graph.DrawLine((0, 300), (450, 300))

    board_graph.DrawLine((150, 0), (150, 450))
    board_graph.DrawLine((300, 0), (300, 450))

    while True:  # Event Loop
        event, values = board.read()
        if event == sg.WIN_CLOSED or event == 'Exit':
            break
        elif event == 'User Start':
            game_functions.start_game(board_graph, 'user')
        elif event == 'App Start':
            game_functions.start_game(board_graph, 'com')
        elif event == 'COM Game':
            game_functions.start_game(board_graph, 'app')
        elif event == 'Clear Board':
            game_data.erase_board(board_graph)

    board.close()