made some work on the intro so far so good ig

This commit is contained in:
Martin Dvořák 2026-06-07 00:53:37 +02:00
commit f316adc74c
7 changed files with 96 additions and 13 deletions

View file

@ -1,8 +1,18 @@
from render import load_sprite # this makes it so our function for rendering sprites from sprites.png is available in here
import pygame
def level1(screen, sheet, screen_width, screen_height, lastclickpos, basicfont, mouse, click, big_text, level, tick, slightfont): # the function for our first level, ignore the unused variables here, you can use them when you edit it
screen.blit(load_sprite(sheet, 0, 0, 56, 35, 912, 576), (0, 0)) # this renders a button I made in the sprites.png, its purely for visual purposes so it doesnt matter where you click rn
tickd = 0
dialognum = 0
DIALOGTEXT = "UNDEFINED"
def level1(screen, sheet, screen_width, screen_height, lastclickpos, basicfont, mouse, click, big_text, level, tick, slightfont, pygamemixer): # the function for our first level, ignore the unused variables here, you can use them when you edit it
global tickd
tickd += 1
screen.blit(load_sprite(sheet, 0, 0, 57, 36, 912, 576), (0, 0)) # this renders a button I made in the sprites.png, its purely for visual purposes so it doesnt matter where you click rn
if tickd in range(100,110) or tickd in range(120,130) or tickd in range(300,310) or tickd in range(320,330):
overlay = pygame.Surface(screen.get_size(), pygame.SRCALPHA)
overlay.fill((255, 255, 255, 18))
screen.blit(overlay, (0, 0))
elif tickd > 450:
tickd = 0
mainmenu_text = slightfont.render("THE DESTROYER OF CITIES", True, (210, 210, 210))
playb_collision = pygame.Rect(315, 200, 285, 105)
exitb_collision = pygame.Rect(315, 350, 285, 105)
@ -10,6 +20,8 @@ def level1(screen, sheet, screen_width, screen_height, lastclickpos, basicfont,
screen.blit(load_sprite(sheet, 57, 7, 19, 7, 285, 105), (315, 200))
play_text = basicfont.render("Play", True, (0,0,0))
if click:
tickd = 0
pygamemixer.stop()
level = 2
else:
screen.blit(load_sprite(sheet, 57, 0, 19, 7, 285, 105), (315, 200))
@ -28,6 +40,67 @@ def level1(screen, sheet, screen_width, screen_height, lastclickpos, basicfont,
screen.blit(exit_text, (414, 380))
screen.blit(mainmenu_text, (45, 65))
return level # this returns the change we made to the level so that it updates in main.py
def level2(screen, sheet, lastclickpos, basicfont, mouse, click, level): # function for level 2
print("ur done") # prints out "ur done"
def level2(blip, screen, sheet, screen_width, screen_height, lastclickpos, basicfont, mouse, click, big_text, level, tick, slightfont, pygamemixer): # the function for our first level, ignore the unused variables here, you can use them when you edit it
global tickd, dialognum, DIALOGTEXT
if dialognum != 9:
tickd += 1
if tickd == 59:
pygame.mixer.Sound.play(blip)
if tickd in range(60,501):
if tickd < 315:
transparency = (tickd-60, tickd-60, tickd-60)
else:
transparency = (255,255,255)
if dialognum == 0:
DIALOGTEXT = "Where am I..."
if dialognum == 1:
DIALOGTEXT = "What am I doing here?!"
if dialognum == 2:
DIALOGTEXT = "Why can't I remember anything?"
if dialognum == 3:
DIALOGTEXT = ". . ."
if dialognum == 4:
DIALOGTEXT = "Wait."
if dialognum == 5:
DIALOGTEXT = "Those aren't my hands."
if dialognum == 6:
DIALOGTEXT = ". . ."
if dialognum == 7:
DIALOGTEXT = ""
screen.blit(load_sprite(sheet, 0, 37, 57,36, 912, 576), (0,0))
screen.blit(load_sprite(sheet,57,15,8,25, 80, 250), (660, 290))
screen.blit(load_sprite(sheet, 65, 14, 54, 12, 162, 36), (720, 295))
if dialognum == 8:
DIALOGTEXT = "Oh..."
screen.blit(load_sprite(sheet, 0, 37, 57,36, 912, 576), (0,0))
screen.blit(load_sprite(sheet,57,15,8,25, 80, 250), (660, 290))
screen.blit(load_sprite(sheet, 65, 14, 54, 12, 162, 36), (720, 295))
dialog_square = pygame.surface.Surface((800, 68), pygame.SRCALPHA)
dialog_square.fill((0, 0, 0))
screen.blit(dialog_square, (56, 500))
if dialognum == 9:
DIALOGTEXT = "Press <H> to hide your parasite"
screen.blit(load_sprite(sheet, 0, 37, 57,36, 912, 576), (0,0))
screen.blit(load_sprite(sheet,57,15,8,25, 80, 250), (660, 290))
screen.blit(load_sprite(sheet, 65, 14, 54, 12, 162, 36), (720, 295))
dialog_square = pygame.surface.Surface((800, 68), pygame.SRCALPHA)
dialog_square.fill((0, 0, 0))
screen.blit(dialog_square, (56, 500))
dialog = basicfont.render(DIALOGTEXT, True, transparency)
if len(DIALOGTEXT) < 16:
DX = 456-len(DIALOGTEXT)*9
else:
DX = 456-len(DIALOGTEXT)*10
if dialognum < 7:
DY = 230
else:
DY = 510
screen.blit(dialog, (DX,DY))
if tickd > 500:
dialognum += 1
if dialognum > 6:
screen.blit(load_sprite(sheet, 0, 37, 57, 36, 912, 576), (0, 0))
if dialognum != 7:
pygame.mixer.Sound.play(blip)
tickd = 60
return level # returns the current level set