示例#1
0
def draw_game_over():
    global USERNAME, mas, score, GAMERS_DB
    img2048 = pygame.image.load('2048_logo.png')
    font = pygame.font.SysFont('comicsansms', 45)
    text_game_over = font.render('Game over! ', True, WHITE)
    text_score = font.render(f'Your score is {score} ', True, WHITE)
    best_score = GAMERS_DB[0][1]
    if score > best_score:
        text = 'New record!'
    else:
        text = f'Best score is {best_score}'
    text_record = font.render(text, True, WHITE)
    insert_result(USERNAME, score)
    GAMERS_DB = get_best()
    make_decision = False
    while not make_decision:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                pygame.quit()
                sys.exit(0)
            elif event.type == pygame.KEYDOWN:
                if event.key == pygame.K_SPACE:
                    make_decision = True
                    init_const()
                elif event.type == pygame.K_RETURN:
                    USERNAME = None
                    make_decision = True
                    init_const()
        screen.fill(BLACK)
        screen.blit(text_game_over, (220, 80))
        screen.blit(text_score, (30, 250))
        screen.blit(text_record, (30, 300))
        screen.blit(pygame.transform.scale(img2048, [200, 200]), [10, 10])
        pygame.display.update()
    screen.fill(BLACK)
def similar_user_recs(user):
    sim_user_list = get_similar(user)
    if not sim_user_list:
        return ('No data available on user {}'.format(user))
    best = []
    most_common = {}
    for i in sim_user_list:
        best.append(
            get_best(i))  #give user id, return a list of tv with max score
    for i in range(len(best)):
        for j in best[i]:
            if j in most_common:
                most_common[j] += 1
            else:
                most_common[j] = 1
    sorted_list = sorted(most_common.items(),
                         key=operator.itemgetter(1),
                         reverse=True)
    return sorted_list[:5], [sorted_list[i][0] for i in range(5)]
示例#3
0
def draw_game_over():
    global USERNAME, mas, score, GAMERS_DB
    img2048 = pygame.image.load('IMG2048.png')
    font = pygame.font.SysFont("comicsansms", 50)
    text_game_over = font.render("Game over!", True, WHITE)
    text_score = font.render(f"Your score  {score} ", True, WHITE)
    best_score = GAMERS_DB[0][1]
    if score > best_score:
        text = "New record"
    else:
        text = f"Record {best_score}"
    text_record = font.render(text, True, WHITE)
    insert_result(USERNAME, score)
    GAMERS_DB = get_best()
    make_disicion = False
    while not make_disicion:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                pygame.quit()
                sys.exit(0)
            elif event.type == pygame.KEYDOWN:
                if event.key == pygame.K_SPACE:
                    make_disicion = True
                    init_const()
                    # restart with name

                elif event.key == pygame.K_RETURN:
                    # restart without name
                    USERNAME = None
                    make_disicion = True
                    init_const()

        screen.fill(BLACK)
        screen.blit(text_game_over, (220, 80))
        screen.blit(text_score, (30, 250))
        screen.blit(text_record, (30, 300))
        screen.blit(pygame.transform.scale(img2048, [200, 200]), [10, 10])
        pygame.display.update()
    screen.fill(BLACK)
示例#4
0
文件: main.py 项目: a-abramow/2048g
def draw_game_over():  # функция завершающей заставки
    global USERNAME, mas, score, GAMERS_DB
    img2048 = pygame.image.load('og_image.png')
    font = pygame.font.SysFont("comicsansms", 50)
    text_game_over = font.render("Game over!", True, WHITE)
    text_score = font.render(f"Вы набрали {score}", True, WHITE)
    best_score = GAMERS_DB[0][1]
    if score > best_score:  # условие, побит ли рекорд?
        text = "Рекорд побит"
    else:
        text = f"Рекорд {best_score}"
    text_record = font.render(text, True, WHITE)
    insert_result(USERNAME, score)
    GAMERS_DB = get_best()
    make_disicion = False
    while not make_disicion:  # бесконечный цикл, в котором обрабатываются события
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                pygame.quit()
                sys.exit(0)
            elif event.type == pygame.KEYDOWN:
                if event.key == pygame.K_SPACE:
                    # restart game with name
                    make_disicion = True
                    init_const()
                elif event.key == pygame.K_RETURN:
                    # restart gamr without name
                    USERNAME = None
                    make_disicion = True
                    init_const()

        screen.fill(BLACK)
        screen.blit(text_game_over, (220, 85))
        screen.blit(text_score, (30, 250))
        screen.blit(text_record, (30, 300))
        screen.blit(pygame.transform.scale(img2048, [200, 200]), [10, 10])
        pygame.display.update()
    screen.fill(BLACK)
示例#5
0
def draw_game_over():
    global USERNAME, mas, score, GAMERS_DB
    img2048 = pygame.image.load('image.png')
    font = pygame.font.SysFont('comicsansms', 45)
    text_game_over = font.render('Game over!', True, white)
    text_score = font.render(f'Вы набрали {score}', True, white)
    best_score = GAMERS_DB[0][1]
    if score > best_score:
        text = 'Рекорд побит'
    else:
        text = f'Рекорд {best_score}'
    text_record = font.render(text, True, white)
    insert_result(USERNAME, score)
    GAMERS_DB = get_best()
    make_decision = False
    while not make_decision:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                pygame.quit()
                sys.exit(0)
            elif event.type == pygame.KEYDOWN:
                if event.key == pygame.K_SPACE:
                    #  restart game with name
                    make_decision = True
                    init_const()
                elif event.key == pygame.K_RETURN:
                    #  restart game without name
                    USERNAME = None
                    make_decision = True
                    init_const()

        screen.fill(black)
        screen.blit(text_game_over, (220, 80))
        screen.blit(text_score, (30, 250))
        screen.blit(text_record, (30, 320))
        screen.blit(pygame.transform.scale(img2048, [200, 200]), [10, 10])
        pygame.display.update()
    screen.fill(black)
示例#6
0
def draw_game_over():
    global USERNAME, mas, score, GAMERS_DB
    img = pygame.image.load("2048_logo.svg.png")
    font_game_end = pygame.font.SysFont("simsum", 70)
    text_game_end = font_game_end.render("The end", True, WHITE)
    text_score = font_game_end.render('Your score is: {0}'.format(score), True, WHITE)
    best_score = GAMERS_DB[0][1]
    if score > best_score:
        text = "YOU WIN"
    else:
        text = 'Record {0}'.format(best_score)
    text_record = font_game_end.render(text, True, WHITE)
    insert_result(USERNAME, score)
    GAMERS_DB = get_best()
    make_desigion = False
    while not make_desigion:
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                pygame.quit()
                sys.exit(0)
            elif event.type == pygame.KEYDOWN:
                if event.key == pygame.K_SPACE:
                    # restart with name
                    make_desigion = True
                    init_const()
                elif event.key == pygame.K_RETURN:
                    # restart new gamer
                    USERNAME = None
                    make_desigion = True
                    init_const()
        screen.fill(BLACK)
        screen.blit(text_game_end, (220, 80))
        screen.blit(text_score, (30, 250))
        screen.blit(text_record, (30, 300))
        screen.blit(pygame.transform.scale(img, [200, 200]), [10, 10])
        pygame.display.update()
    screen.fill(BLACK)
示例#7
0
文件: main.py 项目: a-abramow/2048g
from logics import *
import pygame
import sys
from database import get_best, cur, insert_result
import json
import os

GAMERS_DB = get_best()


def draw_top_gamers():
    font_top = pygame.font.SysFont("comicsansms", 20)
    font_gamer = pygame.font.SysFont("comicsansms", 20)
    text_head = font_top.render("Best tries:", True, COLOR_TEXT)
    screen.blit(text_head, (260, 5))
    for index, gamer in enumerate(GAMERS_DB):
        name, score = gamer
        s = f"{index + 1}. {name} - {score}"
        text_gamer = font_gamer.render(s, True, COLOR_TEXT)
        screen.blit(text_gamer, (260, 23 + 23 * index))

        print(index, name, score)


def draw_interface(score, delta=0):
    pygame.draw.rect(screen, WHITE, TITLE_REC)
    font = pygame.font.SysFont("comicsansms", 70)
    font_score = pygame.font.SysFont("comicsansms", 38)
    font_delta = pygame.font.SysFont("comicsansms", 25)
    text_score = font_score.render("Score :", True, COLOR_TEXT)
    text_score_value = font_score.render(f"{score}", True, COLOR_TEXT)