музыка и фиксы
This commit is contained in:
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
[Settings]
|
[Settings]
|
||||||
difficulty = Простая
|
difficulty = Ïðîñòàÿ
|
||||||
sound = True
|
sound = True
|
||||||
|
|
||||||
|
|||||||
+2
-4
@@ -3,12 +3,10 @@ import pygame as pg
|
|||||||
|
|
||||||
class Book: # Окно с необходимой информацией
|
class Book: # Окно с необходимой информацией
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def info(screen):
|
def info(screen, event):
|
||||||
pg.draw.rect(screen, (38, 33, 55), (85, 0, 520, 500))
|
pg.draw.rect(screen, (38, 33, 55), (85, 0, 520, 500))
|
||||||
pg.draw.rect(screen, (255, 255, 255), (100, 90, 495, 280), 1)
|
pg.draw.rect(screen, (255, 255, 255), (100, 90, 495, 280), 1)
|
||||||
|
texts = ['День ***', 'Сегодня произошло следующее:', f"{event['name']}\n{event['description']}"]
|
||||||
texts = ['День ***', 'Сегодня произошло следующее:',
|
|
||||||
'***'] # Если не вмещаются события, то в конце можно написать и т.д.
|
|
||||||
sizes = [60, 30, 30]
|
sizes = [60, 30, 30]
|
||||||
coords = [(260, 30), (110, 100), (110, 150)]
|
coords = [(260, 30), (110, 100), (110, 150)]
|
||||||
for i in range(len(texts)):
|
for i in range(len(texts)):
|
||||||
|
|||||||
+10
-1
@@ -1,10 +1,19 @@
|
|||||||
|
import configparser
|
||||||
import pygame as pg
|
import pygame as pg
|
||||||
from modules.Swamp import Swamp
|
from modules.Swamp import Swamp
|
||||||
|
|
||||||
|
|
||||||
class Game:
|
class Game:
|
||||||
def __init__(self, difficulty):
|
def __init__(self, difficulty):
|
||||||
pg.init()
|
config = configparser.ConfigParser()
|
||||||
|
config.read("conf/config.ini")
|
||||||
|
sound = config['Settings']['sound']
|
||||||
|
if sound == "True":
|
||||||
|
print(sound)
|
||||||
|
pg.mixer.init()
|
||||||
|
pg.mixer.music.load('styles/background.mp3')
|
||||||
|
pg.mixer.music.play(loops=-1)
|
||||||
|
pg.init()
|
||||||
size = 700, 500
|
size = 700, 500
|
||||||
self.screen = pg.display.set_mode(size)
|
self.screen = pg.display.set_mode(size)
|
||||||
pg.display.set_caption(difficulty)
|
pg.display.set_caption(difficulty)
|
||||||
|
|||||||
@@ -31,6 +31,19 @@ def start_the_game() -> None:
|
|||||||
menu.toggle() # останавливаю меню
|
menu.toggle() # останавливаю меню
|
||||||
|
|
||||||
|
|
||||||
|
def test(value: dict, _):
|
||||||
|
print(value)
|
||||||
|
if value[0][0] == "Да":
|
||||||
|
test = "True"
|
||||||
|
else:
|
||||||
|
test = "False"
|
||||||
|
config = configparser.ConfigParser() # создаю объект ConfigParser
|
||||||
|
config.read('conf/config.ini') # читаю файл
|
||||||
|
config['Settings']['sound'] = test # перезаписываю сложность
|
||||||
|
with open('conf/config.ini', 'w') as configfile: # открываю файл для записи
|
||||||
|
config.write(configfile) # записываю
|
||||||
|
|
||||||
|
|
||||||
difficulty = "Простая" # временная переменная для сложности
|
difficulty = "Простая" # временная переменная для сложности
|
||||||
pygame.init() # запускаю pygame
|
pygame.init() # запускаю pygame
|
||||||
surface = pygame.display.set_mode((600, 400)) # создаю полотно
|
surface = pygame.display.set_mode((600, 400)) # создаю полотно
|
||||||
@@ -41,6 +54,7 @@ menu = pygame_menu.Menu('Welcome', 600, 400, theme=mytheme) # создаю ме
|
|||||||
menu.add.label("Сложность") # добавляю label
|
menu.add.label("Сложность") # добавляю label
|
||||||
menu.add.selector('', [('Простая', 1), ('Средняя', 2), ('Сложная', 3), ('Проигрывать весело', 4)],
|
menu.add.selector('', [('Простая', 1), ('Средняя', 2), ('Сложная', 3), ('Проигрывать весело', 4)],
|
||||||
onchange=set_difficulty) # добавляю selector с выбором сложности
|
onchange=set_difficulty) # добавляю selector с выбором сложности
|
||||||
|
menu.add.selector("музыка", [("Да", 1), ("Нет", 1)], onchange=test)
|
||||||
menu.add.button('Play', start_the_game) # добавляю кнопку начала игры
|
menu.add.button('Play', start_the_game) # добавляю кнопку начала игры
|
||||||
menu.add.button('Quit', pygame_menu.events.EXIT) # добавляю кнопку выхода
|
menu.add.button('Quit', pygame_menu.events.EXIT) # добавляю кнопку выхода
|
||||||
menu.mainloop(surface) # запускаю меню
|
menu.mainloop(surface) # запускаю меню
|
||||||
|
|||||||
+10
-4
@@ -25,9 +25,11 @@ class Swamp:
|
|||||||
|
|
||||||
def render(self, screen): # Рисование поля, книги и болота
|
def render(self, screen): # Рисование поля, книги и болота
|
||||||
myimage = pg.image.load("styles/background.jpg")
|
myimage = pg.image.load("styles/background.jpg")
|
||||||
imagerect = myimage.get_rect()
|
rect = screen.get_rect()
|
||||||
scaled_image = pg.transform.smoothscale(myimage, (500, 500))
|
x = rect[2]
|
||||||
screen.blit(scaled_image, imagerect)
|
y = rect[3]
|
||||||
|
scaled_image = pg.transform.smoothscale(myimage, (x, y))
|
||||||
|
screen.blit(scaled_image, (0, 0))
|
||||||
|
|
||||||
pg.draw.rect(screen, (255, 255, 255), (630, 400, 50, 60)) # книга
|
pg.draw.rect(screen, (255, 255, 255), (630, 400, 50, 60)) # книга
|
||||||
pg.draw.rect(screen, (132, 7, 8), (630, 400, 50, 55))
|
pg.draw.rect(screen, (132, 7, 8), (630, 400, 50, 55))
|
||||||
@@ -45,7 +47,11 @@ class Swamp:
|
|||||||
pg.draw.rect(screen, (252, 232, 131), (self.x, self.y, self.cell_size, self.cell_size))
|
pg.draw.rect(screen, (252, 232, 131), (self.x, self.y, self.cell_size, self.cell_size))
|
||||||
|
|
||||||
if self.book_use is True: # При нажатии на книгу рисуется небольшой экран с информацией
|
if self.book_use is True: # При нажатии на книгу рисуется небольшой экран с информацией
|
||||||
self.book.info(screen)
|
from modules.Mathematics import recalculation_events, get_random_event
|
||||||
|
event = get_random_event()
|
||||||
|
print(event)
|
||||||
|
recalculation_events(event["well"])
|
||||||
|
self.book.info(screen, event)
|
||||||
|
|
||||||
if self.frogs == 0: # Если все лягушки вымрут, то открывается окно с Game over
|
if self.frogs == 0: # Если все лягушки вымрут, то открывается окно с Game over
|
||||||
self.game_over.end(screen)
|
self.game_over.end(screen)
|
||||||
|
|||||||
Binary file not shown.
Reference in New Issue
Block a user