Added optional end of game cut scene. Make sure to specify utf-8 encoding for python files to work with pyinstaller.
This commit is contained in:
@@ -1,3 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from libstormgames import *
|
||||
from src.object import Object
|
||||
import random
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import random
|
||||
from libstormgames import *
|
||||
from src.item_types import ItemProperties
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from libstormgames import *
|
||||
from src.object import Object
|
||||
from src.powerup import PowerUp
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import os
|
||||
import time
|
||||
import pygame
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from libstormgames import *
|
||||
from src.object import Object
|
||||
from src.powerup import PowerUp
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import random
|
||||
from enum import Enum, auto
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import pygame
|
||||
import random
|
||||
from libstormgames import *
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from libstormgames import *
|
||||
|
||||
class Object:
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import pygame
|
||||
from libstormgames import *
|
||||
from src.stat_tracker import StatTracker
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from libstormgames import *
|
||||
from src.object import Object
|
||||
from src.weapon import Weapon
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
class Projectile:
|
||||
def __init__(self, projectile_type, start_x, direction):
|
||||
self.type = projectile_type
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from libstormgames import *
|
||||
from src.object import Object
|
||||
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
class StatTracker:
|
||||
def __init__(self):
|
||||
# Base dictionary for tracking stats
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
class Weapon:
|
||||
def __init__(self, name, damage, range, attackSound, hitSound, cooldown=500, attackDuration=200):
|
||||
self.name = name
|
||||
|
||||
+12
-2
@@ -1,4 +1,6 @@
|
||||
#!/usr/bin/env python3
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import json
|
||||
import os
|
||||
from libstormgames import *
|
||||
@@ -56,7 +58,6 @@ class WickedQuest:
|
||||
|
||||
return True
|
||||
except FileNotFoundError:
|
||||
speak("Level not found")
|
||||
return False
|
||||
|
||||
def handle_input(self):
|
||||
@@ -272,7 +273,16 @@ class WickedQuest:
|
||||
# Game complete - use gameStartTime for total
|
||||
totalTime = pygame.time.get_ticks() - self.gameStartTime
|
||||
if self.player.xPos >= self.currentLevel.rightBoundary:
|
||||
messagebox("Congratulations! You've completed all available levels!")
|
||||
# Check for end of game scene
|
||||
gamePath = os.path.dirname(get_level_path(self.currentGame, 1))
|
||||
for ext in ['.wav', '.ogg', '.mp3']:
|
||||
endFile = os.path.join(gamePath, f'end{ext}')
|
||||
if os.path.exists(endFile):
|
||||
self.sounds['end_scene'] = pygame.mixer.Sound(endFile)
|
||||
cut_scene(self.sounds, 'end_scene')
|
||||
break
|
||||
else:
|
||||
messagebox("Congratulations! You've completed all available levels!")
|
||||
|
||||
self.display_game_over(totalTime)
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user