You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

76 lines
2.4 KiB

from player import Player
import pygame
import sys
from menu import Menu # Menü importieren
import settings
from world import World
from level_complete_screen import Endscreen
def main():
pygame.joystick.init()
joysticks = []
for i in range(pygame.joystick.get_count()):
joystick = pygame.joystick.Joystick(i)
joystick.init()
joysticks.append(joystick)
pygame.init()
screen = pygame.display.set_mode((settings.SCREEN_WIDTH, settings.SCREEN_HEIGHT))
pygame.display.set_caption("The Last Ollie - A Fred Story")
clock = pygame.time.Clock()
menu = Menu(screen)
world = World(screen)
endscreen = Endscreen(screen, 000) if settings.DEBUG else endscreen = Endscreen(screen, world.save_score)
current_scene = settings.START_POINT
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
if current_scene == "menu":
menu.handle_event(event)
if menu.ready_to_start_game:
menu.ready_to_start_game = False # Reset!
current_scene = "world"
if current_scene == "world":
result = world.handle_event(event)
if result == "menu":
current_scene = "menu"
menu.input_active = False
menu.show_main_buttons = True
menu.ready_to_start_game = False
if current_scene == "endscreen":
action = endscreen.handle_event(event)
if action == "retry":
current_scene = "world"
elif action == "menu":
current_scene = "menu"
if current_scene == "menu":
menu.draw()
elif current_scene == "world":
if not world.player.game_paused:
world.player.update(670)
world.draw()
else:
current_scene = "endscreen"
if settings.DEBUG and not hasattr(world, 'level_end_printed'):
print("Level beendet!")
world.level_end_printed = True
elif current_scene == "endscreen":
endscreen.draw()
pygame.display.flip()
clock.tick(60)
pygame.quit()
sys.exit()
if __name__ == "__main__":
main()

Powered by TurnKey Linux.