self.texts.append(createText(X, 450, 24, black, "Regular", "LevelCreator"))
self.texts.append(createText(X, 550, 24, black, "Regular", "AutoLoad [-]"))
+ self.texts.append(createText(X, 750, 24, black, "Regular", "Transition"))
+
+
self.autoload = False
if os.path.isfile('./Save/ignore_DevAutoload.txt'):
self.texts[4] = createText(250, 550, 24, black, "Regular", "AutoLoad [-]")
self.autoload = False
return;
+ case 5:
+ self.level = -4
if(self.autoload == True):
try:
from Setup import *
+class fade:
+ def __init__(self):
+ self.transparency = 255
+ self.overlay = pg.Surface((1080, 640))
+ self.overlay.fill((0, 0, 0))
+ self.overlay.set_alpha(self.transparency)
+
+ def update(self, transition = False):
+ if self.transparency > 0 and not transition:
+ self.transparency -= 3
+ self.overlay.set_alpha(self.transparency)
+ if self.transparency < 255 and transition:
+ self.transparency += 3
+ self.overlay.set_alpha(self.transparency)
+
+ def draw(self):
+ screen.blit(self.overlay, (0, 0))
class fadein:
def __init__(self):
self.transparency = 255
def update(self):
if self.transparency > 0:
- self.transparency -= 1
+ self.transparency -= 3
self.overlay.set_alpha(self.transparency)
self.draw()
screen.blit(self.overlay, (0, 0))
-class fadeout():
+class fadeout:
def __init__(self):
self.transparency = 0
self.overlay = pg.Surface((1080, 640))
def update(self):
if self.transparency < 255:
- self.transparency += 1
+ self.transparency += 3
self.overlay.set_alpha(self.transparency)
self.draw()
buttonImage = pg.image.load('./Assets/buttons/e.png')
self.buttonImage = pg.transform.scale(buttonImage, (self.width/2, self.width/2))
+ self.fade = False
+
def update(self):
return;
def draw(self, surf, playerPos, playerOffset=[0,0], offsetX=0, offsetY=0):
-
+
coords = getWorldCoords(0, 0)
coords[1] += self.portalYAnim
surf.blit(self.buttonImage, (a[0][0]+self.width/4, a[1][1]-(2*self.width/3)))
pressed = pg.key.get_pressed()
if pressed[pg.K_e] or pressed[pg.K_RETURN]:
- pass;
+ self.fade = True;
pg.draw.polygon(surf, (107, 18, 158), a)
--- /dev/null
+from Setup import *
+from random import randint, uniform
+from datetime import datetime, timedelta
+from CommonImports.colours import white
+from Function.Fade import fade
+
+class TransitionScene:
+
+ char_frames = [
+ pg.transform.scale(pg.image.load(path.join("Assets/player/idle", file)).subsurface(pg.Rect(179, 169, 170, 401)),
+ (50, 100)) for file in listdir("Assets/player/idle")]
+
+ def __init__(self, next_level):
+ self.level = -4
+ self.next_level = next_level
+
+ self.stars = []
+ for i in range(100):
+ self.stars.append([randint(0, SCREEN_WIDTH), randint(0, SCREEN_HEIGHT), uniform(1, 2)])
+ self.starLen = 0
+ self.timeSinceStart = datetime.utcnow()
+
+ # self.down = True
+ self.frames = 0
+ self.rotate_angle = 0
+ # self.x = SCREEN_WIDTH/2 - 100
+ self.x = 0
+ self.y = SCREEN_HEIGHT/2 - 50
+
+ self.x2 = self.x
+ self.y2 = self.y
+
+ def update(self, delta):
+ # if(self.starLen <= 75):
+ self.starLen += 0.5
+
+ self.x = self.x + 7
+ self.y = self.y - 0.3
+
+ self.x2 = self.x + randint(-2, 2)
+ self.y2 = self.y + randint(-2, 2)
+
+
+ if(datetime.utcnow() - self.timeSinceStart > timedelta(seconds=3)):
+ self.level = self.next_level
+
+
+ if(self.rotate_angle < 360):
+ self.rotate_angle += 1
+ else:
+ self.rotate_angle = 0
+
+ if(self.frames+1 < len(self.char_frames)):
+ self.frames += 1
+ else:
+ self.frames = 0
+
+ def draw(self, surf):
+ surf.fill((0, 0, 0))
+ if(self.starLen > 0):
+ for i in range(len(self.stars)):
+ pg.draw.line(surf, white, (self.stars[i][0], self.stars[i][1]), (self.stars[i][0] - (self.starLen*self.stars[i][2]), self.stars[i][1] + (self.starLen*self.stars[i][2]/15)))
+ image = pg.transform.rotate(self.char_frames[self.frames], self.rotate_angle)
+ surf.blit(image, (self.x2, self.y2))
\ No newline at end of file
from re import T
+
+from regex import F
import Setup
from Setup import *
from Setup import camera_offset
from UI.PotionUI import PotionUI
from Function.Portal import Transition
+from Function.Fade import fade
class Game:
self.dashMeter = DashMeter(self.player.dashCooldown)
self.healthBar = HealthBar()
self.potionUI = PotionUI()
- self.level = 1
+ self.level = level
self.scene.level = self.level
self.Transition = Transition(-2, 0,0)
+ self.fade = self.Transition.fade
+ self.fadeT = fade()
+ self.next_level = 0
# def load_world(self, level):
self.collision_layer["enemy"].add(self.enemies[i])
self.world.update(delta)
+ self.fade = self.Transition.fade
# self.pet.update(delta, self.player, self.camera_pos)
if self.player.dead:
self.scene.update()
self.scene.draw()
-
+
+ if(self.fade == True):
+ self.fadeT.update(True)
+ self.fadeT.draw()
+ else:
+ self.fadeT.update()
+ self.fadeT.draw()
+
+ if(self.fadeT.transparency >= 255):
+ self.Transition.fade = False
+ self.next_level = self.level + 1
+ self.level = -4
+ # self.__init__(self.level)
+
# print(self.player.get_collision_rect())s
# Debug Lines. DO NOT CROSS THEM!
from Test import Test
from LevelCreator import LevelCreator
from MainMenu import Menu
+from Function.Transition import TransitionScene
from DevLevelSelect import DevLevelSelect
is_running = True
# scene = Menu()
+# scene = TransitionScene()
scene = DevLevelSelect()
old_level = 0
level = 1
+next_level = 0
while is_running:
if pg.event.peek(pg.QUIT):
if level <= 1:
level = scene.level
+ try:
+ next_level = scene.next_level
+ except:
+ next_level = 0
if level == -1:
level = old_level
if old_level != level:
match level:
+ case -4:
+ scene = TransitionScene(next_level)
case -2:
scene = LevelCreator()
case 0:
scene = Menu()
case 1:
scene = Game(1)
+ case 2:
+ scene = Game(2)
old_level = level
scene.update(delta)