-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathMainGUI.py
More file actions
68 lines (54 loc) · 2.02 KB
/
Copy pathMainGUI.py
File metadata and controls
68 lines (54 loc) · 2.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# MainGUI class
import util
import endScreen
import playScreen
import loadingScreen
import mainMenu
import pygame
from turtle import screensize
import sys
# import statements
class MainGUI():
def __init__(self):
self.height = 900
self.width = 1600
self.screen = pygame.display.set_mode(
(self.width, self.height))
self.clock = pygame.time.Clock()
# player count
self.numPlayers = 0
# player names
self.playerList = []
# player scores
self.playerScores = []
# screens
self.menuScreen = mainMenu.MainMenu(
self.screen, self.clock, self.height, self.width)
self.loadingScreen = loadingScreen.LoadingScreen(
self.screen, self.clock, self.height, self.width)
self.playScreen = playScreen.PlayScreen(
self.screen, self.clock, self.height, self.width)
self.endScreen = endScreen.EndScreen(
self.screen, self.clock, self.height, self.width)
def play(self):
pygame.init()
while True:
# initialize background music
m = pygame.mixer.music
m.load(util.resourcePath('sounds/bkg_music.mp3'))
m.play(-1)
m.set_volume(1)
if self.menuScreen.getInput():
self.numPlayers = self.menuScreen.numPlayers
if self.loadingScreen.getInput(self.numPlayers):
self.playerList = self.loadingScreen.playerList
# lower volume of background music
m.set_volume(0.2)
if self.playScreen.getInput(self.numPlayers,
self.playerList):
self.playerScores = self.playScreen.finalScores
# stop background music
m.stop()
self.endScreen.getInput(self.numPlayers, self.playerList,
self.playerScores)
game = MainGUI().play()