From: lbcmk <30442978+lbcmk@users.noreply.github.com> Date: Sat, 9 Jul 2022 08:11:35 +0000 (-0400) Subject: Developer Level Select Menu X-Git-Url: http://git.skullheadx.com/sitemap.xml?a=commitdiff_plain;h=938fe47dcf3b6373e830be1b2378b148adf3fc00;p=Pygame-Jam.git Developer Level Select Menu --- diff --git a/DevLevelSelect.py b/DevLevelSelect.py new file mode 100644 index 0000000..7b4df99 --- /dev/null +++ b/DevLevelSelect.py @@ -0,0 +1,70 @@ +from Setup import * +from CommonImports.colours import black +from Function.createText import createText + +from Game import Game +from Test import Test +from LevelCreator import LevelCreator +from MainMenu import Menu + +class DevLevelSelect: + + def __init__(self): + self.texts = [] + X = 250 + self.texts.append(createText(X, 100, 32, black, "Bold", "DEVELOPER LEVEL SELECT",)) + self.texts.append(createText(X, 250, 24, black, "Regular", "MainMenu")) + self.texts.append(createText(X, 350, 24, black, "Regular", "Game")) + self.texts.append(createText(X, 450, 24, black, "Regular", "LevelCreator")) + self.texts.append(createText(X, 550, 24, black, "Regular", "AutoLoad [-]")) + + self.autoload = False + + f = open("./Save/ignore_DevAutoload.txt", "r") + lines = f.readlines() + f.close() + try: + self.level = int(lines[0]) + except: + self.level = -3 + + + def update(self, delta): + for ev in pg.event.get(): + if ev.type == pg.MOUSEBUTTONDOWN: + mouseX, mouseY = pg.mouse.get_pos() + for i in range(len(self.texts)): + x1 = self.texts[i][1][0] + y1 = self.texts[i][1][1] + x2 = x1 + self.texts[i][0].get_rect()[2] + y2 = y1 + self.texts[i][0].get_rect()[3] + + if (x1 <= mouseX <= x2 and y1 <= mouseY <= y2): + self.menuFunctions(i) + return + + def draw(self, surf): + screen.fill((255, 255, 255)) + for i in self.texts: + screen.blit(i[0], i[1]) + + def menuFunctions(self, num): + match num: + case 1: + self.level = 0 + case 2: + self.level = 1 + case 3: + self.level = -2 + case 4: + self.texts[4] = createText(250, 550, 24, black, "Regular", "AutoLoad [x]") + self.autoload = True + return; + + if(self.autoload == True): + try: + f = open("./Save/ignore_DevAutoload.txt", "x") + except: + f = open("./Save/ignore_DevAutoload.txt", "w") + f.write(str(self.level)) + f.close() diff --git a/main.py b/main.py index 0c79007..541ec5c 100644 --- a/main.py +++ b/main.py @@ -4,11 +4,13 @@ from Test import Test from LevelCreator import LevelCreator from MainMenu import Menu +from DevLevelSelect import DevLevelSelect + delta = 1000//fps is_running = True # scene = Menu() -scene = Game() +scene = DevLevelSelect() old_level = 0 level = 1 @@ -18,13 +20,15 @@ while is_running: if level <= 1: level = scene.level - + if level == -1: level = old_level old_level = 0 if old_level != level: match level: + case -2: + scene = LevelCreator() case 0: scene = Menu() case 1: