40 lines
1.1 KiB
Python
Executable File
40 lines
1.1 KiB
Python
Executable File
#!/bin/python
|
|
# -*- coding: utf-8 -*-
|
|
"""Standard initializations and functions shared by all games."""
|
|
|
|
import os
|
|
from os import listdir
|
|
from os.path import isfile, join
|
|
import pygame
|
|
import speechd
|
|
import time
|
|
|
|
def __init__():
|
|
spd = speechd.Client()
|
|
|
|
def speak(text, interupt = True):
|
|
if interupt == True: spd.cancel()
|
|
spd.say(text)
|
|
|
|
def exit_game():
|
|
spd.close()
|
|
pygame.quit()
|
|
exit()
|
|
|
|
def initialize_gui(gameTitle):
|
|
# start pygame
|
|
pygame.init()
|
|
# start the display (required by the event loop)
|
|
pygame.display.set_mode((320, 200))
|
|
pygame.display.set_caption(gameTitle)
|
|
# Load sounds from the sound directory and creates a list like that {'bottle': 'bottle.ogg'}
|
|
soundFiles = [f for f in listdir("sounds/") if isfile(join("sounds/", f)) and (f.split('.')[1].lower() in ["ogg","wav"])]
|
|
#lets make a dict with pygame.mixer.Sound() objects {'bottle':<soundobject>}
|
|
soundData = {}
|
|
for f in soundFiles:
|
|
soundData[f.split('.')[0]] = pygame.mixer.Sound("sounds/" + f)
|
|
soundData['game-intro'].play()
|
|
time.sleep(soundData['game-intro'].get_length())
|
|
return soundData
|
|
|