добавил много комментариев, везде, кроме Mathematics.py
This commit is contained in:
+37
-4
@@ -2,20 +2,53 @@ from pymongo import MongoClient
|
||||
|
||||
|
||||
class UseDB:
|
||||
"""
|
||||
Класс для работы с базой данных
|
||||
"""
|
||||
def __init__(self, collection_name):
|
||||
self.series_collection = None
|
||||
self.client = MongoClient('localhost', 27017)
|
||||
self.db = self.client['toads']
|
||||
self.series_collection = self.db[collection_name]
|
||||
|
||||
def find_document(self, elements):
|
||||
def find_document(self, elements: dict) -> list:
|
||||
"""
|
||||
Функция поиска элемента в базе данных
|
||||
|
||||
:param elements: dict - элемент, который надо искать
|
||||
|
||||
:return: list - сам элемент
|
||||
"""
|
||||
return [x for x in self.series_collection.find(elements)]
|
||||
|
||||
def insert_document(self, data):
|
||||
def insert_document(self, data: dict) -> list:
|
||||
"""
|
||||
Функция добавления элемента в базу данных
|
||||
|
||||
:param data: dict - элемент, который надо добавить
|
||||
|
||||
:return: list - созданный элемент
|
||||
"""
|
||||
return self.series_collection.insert_one(data).inserted_id
|
||||
|
||||
def update_document(self, query_elements, new_values):
|
||||
def update_document(self, query_elements: dict, new_values: dict) -> None:
|
||||
"""
|
||||
Функция обновления элемента в базе данных
|
||||
|
||||
:param query_elements: dict - элемент, который надо обновить
|
||||
|
||||
:param new_values: dict - элемент, этот самый элемент
|
||||
|
||||
:return: None
|
||||
"""
|
||||
self.series_collection.update_one(query_elements, {'$set': new_values})
|
||||
|
||||
def del_document(self, query_elements):
|
||||
def del_document(self, query_elements: dict) -> None:
|
||||
"""
|
||||
Функция удаления элемента в базу данных
|
||||
|
||||
:param query_elements: dict - элемент, который надо удалить
|
||||
|
||||
:return: None
|
||||
"""
|
||||
self.series_collection.delete_one(query_elements)
|
||||
|
||||
+33
-18
@@ -3,29 +3,44 @@ import pygame_menu
|
||||
import configparser
|
||||
|
||||
|
||||
def set_difficulty(value, _):
|
||||
def set_difficulty(value: dict, _) -> None:
|
||||
"""
|
||||
Функция сохраняет сложность временную переменную
|
||||
|
||||
:param value: dict - тут лежит, всё что программа знает о сложности
|
||||
|
||||
:param _: мы не знаем, что это такое, если бы мы знали, что это такое, но мы не знаем, что это такое
|
||||
|
||||
:return: None
|
||||
"""
|
||||
global difficulty
|
||||
difficulty = value[0][0]
|
||||
|
||||
|
||||
def start_the_game():
|
||||
config = configparser.ConfigParser()
|
||||
config.read('conf/config.ini')
|
||||
config['Settings']['difficulty'] = difficulty
|
||||
with open('conf/config.ini', 'w') as configfile:
|
||||
config.write(configfile)
|
||||
menu.toggle()
|
||||
def start_the_game() -> None:
|
||||
"""
|
||||
Функция запуска игры
|
||||
|
||||
:return: None
|
||||
"""
|
||||
config = configparser.ConfigParser() # создаю объект ConfigParser
|
||||
config.read('conf/config.ini') # читаю файл
|
||||
config['Settings']['difficulty'] = difficulty # перезаписываю сложность
|
||||
with open('conf/config.ini', 'w') as configfile: # открываю файл для записи
|
||||
config.write(configfile) # записываю
|
||||
menu.toggle() # останавливаю меню
|
||||
|
||||
|
||||
difficulty = "Простая"
|
||||
pygame.init()
|
||||
surface = pygame.display.set_mode((600, 400))
|
||||
mytheme = pygame_menu.themes.THEME_DARK.copy()
|
||||
difficulty = "Простая" # временная переменная для сложности
|
||||
pygame.init() # запускаю pygame
|
||||
surface = pygame.display.set_mode((600, 400)) # создаю полотно
|
||||
mytheme = pygame_menu.themes.THEME_DARK.copy() # создаю свою тему
|
||||
mytheme.background_color = pygame_menu.baseimage.BaseImage(image_path='styles/background.jpg')
|
||||
menu = pygame_menu.Menu('Welcome', 600, 400, theme=mytheme)
|
||||
menu.add.label("Сложность")
|
||||
# натягиваю свой background
|
||||
menu = pygame_menu.Menu('Welcome', 600, 400, theme=mytheme) # создаю меню
|
||||
menu.add.label("Сложность") # добавляю label
|
||||
menu.add.selector('', [('Простая', 1), ('Средняя', 2), ('Сложная', 3), ('Проигрывать весело', 4)],
|
||||
onchange=set_difficulty)
|
||||
menu.add.button('Play', start_the_game)
|
||||
menu.add.button('Quit', pygame_menu.events.EXIT)
|
||||
menu.mainloop(surface)
|
||||
onchange=set_difficulty) # добавляю selector с выбором сложности
|
||||
menu.add.button('Play', start_the_game) # добавляю кнопку начала игры
|
||||
menu.add.button('Quit', pygame_menu.events.EXIT) # добавляю кнопку выхода
|
||||
menu.mainloop(surface) # запускаю меню
|
||||
|
||||
Reference in New Issue
Block a user