Exemple #1
0
def main(page_size=SIZE):
    my_text = False
    file = Save()
    inputUser.inputString = "Write your nickname..."
    curr_user = inputUser.main()
    pygame.init()
    text_list = get_list_with_extension("./Texts/", ".txt")
    music_list = get_list_with_extension("./Music/", ".mp3")

    text_name = get_text_name(text_list, dict_texts_article[0])
    if text_name == "Yes":
        inputUser.inputString = "Write your text path:"
        my_text = True
        text_name = inputUser.main(my_text)
    enable_music, music_name = get_music(music_list, dict_texts_article[1])
    type_mode = get_type_mode(dict_texts_article[2])
    trainer = \
        game(0, 0, 0, text_name, music_name, enable_music, w_d, type_mode, my_text)
    if curr_user not in file.get_keys():
        save_state(curr_user.format(text_name), 0, 0, 0, file, [0])
    points, velocity, text_count, list_points = load(curr_user, file)
    curr_velocity, curr_points = \
        trainer.trainer_loop(curr_user, text_name, page_size)
    if curr_points > points:
        points = curr_points
    average_sp = (curr_velocity + velocity) / 2
    list_points.append(curr_points)
    p1 = threading.Thread(target=save_state,
                          args=(curr_user, points, average_sp, text_count + 1,
                                file, list_points))
    p1.start()
    p1.join()
    trainer.get_high_score(file, curr_user, list_points)
Exemple #2
0
 def test_draw_lines_2(self):
     w_d = pygame.display.set_mode((0, 0), pygame.FULLSCREEN)
     trainer = game(1, 2, 3, "ъ.txt", "HardBass.mp3", True, w_d, '')
     lines = 'Aasiooijoiqke'
     try:
         game.draw_lines(trainer, lines, 10, 6)
     except Exception as e:
         raise e
Exemple #3
0
 def test_draw_lines(self):
     w_d = pygame.display.set_mode((0, 0), pygame.FULLSCREEN)
     trainer = game(1, 2, 3, "ъ.txt", "HardBass.mp3", True, w_d, '')
     lines = ["Aasqkedpokqepod", "FqepodaaJfwefewadsa", "FdoJdasdefasdo"]
     try:
         game.draw_lines(trainer, lines, 5, 2)
     except Exception as e:
         raise e
Exemple #4
0
 def test_init(self):
     trainer = game(1, 2, 3, "ъ.txt", "HardBass.mp3", True, '', '')
     self.assertEqual(trainer.velocity, 3)
     self.assertEqual(trainer.count_mistakes, 1)
     self.assertEqual(trainer.text_count, 2)
     self.assertEqual(trainer.text_name, "ъ.txt")
     self.assertEqual(trainer.music_name, "HardBass.mp3")
     self.assertTrue(trainer.enable_music)
if args.test:
    args.p2 = "AIs/dummy.py"

if (args.seed == None):
    args.seed = int(1000000000 * time.time())
else:
    args.seed = int(args.seed)
rng = random.Random(args.seed)

res = []
seed_list = []

nb_wins = {'p1': 0, 'p2': 0, 'tie': 0}

for game in tqdm(range(int(args.nb_games))):
    res.append(game_loop.game(args.p1.replace('/', '.')[:-3], args.p2.replace('/', '.')[:-3], int(args.width),\
     int(args.height), col, args.ui, args.synchronous, int(args.nb_moves), float(args.density), args.test, int(args.fps), rng))
    seed_list.append(args.seed)
    args.seed = int(1000000000 * time.time())
    rng = random.Random(args.seed)

for game in res:
    if game['p1'] > game['p2']:
        nb_wins['p1'] += 1
    if game['p2'] > game['p1']:
        nb_wins['p2'] += 1
    if game['p1'] == game['p2']:
        nb_wins['tie'] += 1

print(nb_wins)

print(seed_list)
Exemple #6
0
def menu():
    global screen

    pygame.init()

    pygame.display.set_caption('PONG DUALS')

    pygame.font.init()

    font = pygame.font.Font("GB_boot.ttf", 20)

    h_color = (0, 255, 0)
    color = (0, 128, 0)

    text = [
        'START GAME - 1 PLAYER', 'START GAME - 2 PLAYER', 'OPTIONS',
        'QUIT GAME'
    ]
    options = []

    for txt in text:
        options.append(font.render(txt, True, color))

    dist_btw = options[0].get_height() + 5

    def centre_menu(surface, opt):
        menu_x = (screen.get_width() / 2 - opt.get_width() / 2)
        menu_y = (screen.get_height() / 2 - opt.get_height() / 2 - 30)
        return (menu_x, menu_y)

    selected = 0

    while True:
        for event in pygame.event.get():
            if event.type == QUIT:
                pygame.quit()
                sys.exit()
            if event.type == KEYDOWN:
                if event.key == K_UP:
                    selected -= 1
                if event.key == K_DOWN:
                    selected += 1

                if selected < 0:
                    selected = 0
                if selected > len(options) - 1:
                    selected = len(options) - 1

                if event.key == K_RETURN:
                    if selected == 0:
                        game_loop.game(screen)
                    elif selected == 1:
                        Input.set_players(2)
                        game_loop.game(screen)
                    elif selected == 2:
                        screen = option_menu.options(screen)
                    elif selected == 3:
                        pygame.quit()
                        sys.exit()

        screen.fill((0, 0, 0))
        for i in range(0, len(options)):
            x, y = centre_menu(screen, options[i])
            if i == selected:
                options[i] = font.render(text[i], False, h_color)
            else:
                options[i] = font.render(text[i], False, color)
            screen.blit(options[i], (x, (y + i * dist_btw)))

        pygame.display.update()