def __init__(self): """Initialize running class.""" self.config = ConfigParser() self.config.read('settings.ini') self.size_x = self.config.getint('screen', 'size_x') self.size_y = self.config.getint('screen', 'size_y') with open('languages.dat', 'rb') as lang_file: self.phrases = pickle.load(lang_file)[self.config.get( 'total', 'language')] self.speech = Speech(self.config) self.speech.speak(self.phrases['start']) pygame.init() pygame.font.init() pygame.mixer.init() self.screen = pygame.display.set_mode((self.size_x, self.size_y)) pygame.display.set_caption(self.phrases['title']) self.music = Music(self.config.getfloat('audio', 'music_volume')) self.sounds = Sound(self.config.getfloat('audio', 'sound_volume')) self.board = Board(self.config, self.screen, self.sounds) self.player = Player(self.board, self.speech, self.phrases) self.game_over = True self.win = False self.STOPPED_PLAYING = pygame.USEREVENT + 1 pygame.mixer.music.set_endevent(self.STOPPED_PLAYING) self.fontObj = pygame.font.SysFont('arial', 50) self.clock = pygame.time.Clock() random.seed() self.music_play() self.new_game()
def __init__(self): """Initialize running class.""" self.config = ConfigParser() self.config.read('settings.ini') if self.config.getboolean('total', 'debug'): if getattr(sys, 'frozen', False): self.logger = Logger( os.path.join(os.path.dirname(sys.executable), self.__class__.__name__)) else: self.logger = Logger( os.path.join(os.getcwd(), self.__class__.__name__)) self.log = logging.getLogger() self.log.info(__name__ + ': ' + 'def ' + self.__init__.__name__ + '(): ' + self.__init__.__doc__) self.size_x = self.config.getint('screen', 'size_x') self.size_y = self.config.getint('screen', 'size_y') with open('languages.dat', 'rb') as lang_file: self.phrases = pickle.load(lang_file)[self.config.get( 'total', 'language')] self.speech = Speech(self.config) self.speech.speak(self.phrases['start'], True) pygame.init() pygame.font.init() pygame.mixer.init() self.screen = pygame.display.set_mode((self.size_x, self.size_y)) pygame.display.set_caption(self.phrases['title']) self.music = Music(self.config.getfloat('audio', 'music_volume')) self.sounds = Sound(self.config.getfloat('audio', 'sound_volume')) self.menu = Menu(self.config, self.screen, self.speech, self.phrases, self.sounds) self.menu_flag = True menu_functions = [self.new_game, self.rules, self.help, self.exit] self.menu.set_functions(menu_functions) self.board = Board(self.config, self.screen, self.sounds) self._ai = AI(self.board, self.speech, self.phrases) self.player = Player(self.board, self.speech, self.phrases, self._ai) self._ai.gamer = self.player self._ai.player.behaviors.set_controllers(self._ai) self.running = True self.game_over = True self.win = False self.handle_numbers = {'K_' + str(num): num for num in range(1, 10)} self.handle_numbers.update( {'K_KP' + str(num): num for num in range(1, 10)}) self.font_obj = pygame.font.SysFont('arial', 50) self.clock = pygame.time.Clock() self.music_play() self.menu.activate(self.menu_flag)
def __init__(self, z=0, x=0, y=0, enemy=None): super().__init__(z, x, y) # This unit's health self.health = 100 self.heart_rate = 10 # lower = faster heart animation speed self.bullets = [] self.blocks = pygame.sprite.Group( ) # What sprites am I not allowd to cross? self.interactables = pygame.sprite.Group() self.hazards = [] # similar to interactables but dangerous! self.enemies = pygame.sprite.Group() self.stepTile = 0 self.direction = 0 self.angle = 0 self.last_hit = pygame.time.get_ticks() self.move_timer = pygame.time.get_ticks() self.moveSpeed = 150 self.delta = 512 self.screen = None self.sounds = Sound() self.walk_sound = pygame.mixer.Sound('../assets/player/walk.wav') self.walk_timer = pygame.time.get_ticks() self.room = None # Where the player is positioned self.x = x self.y = y self.camera = None self.items = None # set up by in engine in game.py self.inventory = {0: "None"} self.active_item = 0 self.sheet = Spritesheet_Ext( '../assets/map assets/sprite sheets/Horror City - Frankenstein MV/Characters/$Dr Frankenstien.png', 32, 48, 3, 4, 4, [96, 188], .5) self.sprites = self.sheet.sprites self.image = self.sprites[self.stepTile].image # timers self.shoot_timer = 20 self.shoot_counter = self.shoot_timer self.spotted_timer = 30 self.spotted_counter = self.spotted_timer self.interaction_timer = 20 self.interaction_counter = self.interaction_timer self.interaction_counter_prev = -1 self.interaction_timeout = 10 # raycast init self.raycast_increments = 15 self.raycast_points = [ 0 for i in range(360 // self.raycast_increments) ] self.sight_coords = [(-1, -1), (-1, -1), (-1, -1), (-1, -1)] self.rect = self.image.get_rect( center=(self.x, self.y) ) # the players collision mask, this determines when the player collides with things self.rect.width = self.rect.width // 2 self.rect.height = self.rect.height // 2 # How big the world is, so we can check for boundries self.world_size = (Settings.width, Settings.height) # Which collision detection function? self.collide_function = pygame.sprite.collide_rect self.collisions = [] # For collision detection, we need to compare our sprite # with collideable sprites. However, we have to remap # the collideable sprites coordinates since they change. # For performance reasons I created this sprite so we # don't have to create more memory each iteration of # collision detection. self.collider = Drawable() self.collider.image = pygame.Surface( [Settings.tile_size, Settings.tile_size]) self.collider.rect = pygame.Rect(0, 0, 16, 16) self.cpoint = Drawable() self.cpoint.image = pygame.Surface( [Settings.tile_size, Settings.tile_size]) self.cpoint.rect = pygame.Rect(0, 0, 1, 1) # Overlay self.font = pygame.font.Font('freesansbold.ttf', 32) self.overlay = self.font.render( str(self.health) + " 4 lives", True, (0, 0, 0))
# Copyright (c) 2005 Nokia Corporation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import e32 from audio import Sound SLEEP = 7 player = Sound() player.open(u'c:\\Baby_One_More_Time.mid') player.play() e32.ao_sleep(SLEEP - 2) player.stop() #does not close the file player.open(u'c:\\foobar.wav') player.record() e32.ao_sleep(SLEEP) player.stop() player.close() #needed for sound flushing, otherwise not written