добавил много комментариев, везде, кроме Mathematics.py

This commit is contained in:
2022-12-26 19:27:51 +07:00
parent fea2530727
commit 957a54208f
4 changed files with 96 additions and 41 deletions
+37 -4
View File
@@ -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
View File
@@ -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) # запускаю меню