def __init__(self, player, level): super().__init__() self.player = player self.level = level self.direction = None self.status = constants.ENEMY_INIT self.change_status_time = 0 self.collisionManager = CollisionManager(self) # Grab the images for the snake self.sprite_sheet0 = None self.sprite_sheet1 = None # Egg images self.sprite_sheet1 = SpriteSheet("Assets/Egg.png") self.egg_images = [ self.sprite_sheet1.get_image(0, 0, 58, 58), self.sprite_sheet1.get_image(58, 0, 116, 58) ] self.image = None self.rect = None self.change_x = 0 self.change_y = 0
def __init__(self): '# Initialize game window and settings etc.' self.screen = pygame.display.set_mode((1000, 1000)) pygame.display.set_caption("Asteroids") pygame.font.init() self.myfont = pygame.font.SysFont('Comic Sans MS', 30) self.debug_text_surface = self.myfont.render('Hello', False, (255, 255, 255)) self.render_pace: float = 1 / 60 self.game_active = True asteroid_list = [] bullet_list = [] ship = Ship(self.screen, Point(400, 500), Point(0, 0), -math.pi / 2, 1) enemy_ship = Ship(self.screen, Point(600, 500), Point(0, 0), -math.pi / 2, 1) self.game_state = GameState(ship, enemy_ship, bullet_list, asteroid_list) for count in range(0, 8): asteroids = Asteroid(self.screen, Point(randint(0, 900), randint(0, 900)), Point(randint(-20, 20), randint(-20, 20)), randint(120, 170)) list.append(asteroid_list, asteroids) self.movement_manager = MovementManager(self.render_pace, 1000, 1000) self.collision_manager = CollisionManager()
def __init__(self, theApp): ''' theApp: refernecja do obiektu aplikacji. Potrzebne przy dodawaniu obiektu nasłuchującego wejścia. ''' self.__theApp = theApp # obiekt zarządzający aplikacją self.__objects = [] # lista obiektów w świecie self.__spriteManager = SpriteManager() # menadżer sprite'ów self.__collisionManager = CollisionManager(self.__spriteManager) # menadżer kolizji self.__objectFactory = self.__create_object_factory(self.__spriteManager) # fabryka obiektów self.__levelManager = LevelManager(self.__objectFactory,self.__spriteManager) # menadżer poziomów self.__backgroundManager = BackgroundManager( levelManager = self.__levelManager ) self.__backgroundManager.set_window_coords( self.__theApp.get_window_coords() ) self.__backgroundManager.set_window_draw_dim( self.__theApp.get_window_draw_dim() ) self.__levelManager.set_window_coords( self.__theApp.get_window_coords() ) self.__levelManager.set_window_draw_dim( self.__theApp.get_window_draw_dim() ) if not self.__levelManager.load_level("demo_level"): assert True, "Tworzenie świata nie powiodło się. Nie można wczytać poziomu." const.renderTextureSize = (512,256) # rozmiary tekstury, do której będziemy renderować self.__renderTexture = image.create( *const.renderTextureSize ).get_texture() # Dodaj obiekt helikoptera i jeepa do gry # # FIXME: jeep? # self.add_object( self.__create_heli() )
def __init__(self, file, level, flag=False): """ Artifact represent a constant block on the map """ super().__init__() self.flag = flag self.level = level self.collisionManager = CollisionManager(self) # Grab the image for this platform self.image = pygame.image.load(file).convert_alpha() self.rect = self.image.get_rect()
def __init__(self, player, level): super().__init__() self.collisionManager = CollisionManager(self) # Set bullet speed vector self.change_x = 0 self.change_y = 0 self.direction = None # Grab the images for the bullet sprite_sheet = SpriteSheet("Assets/Bullet.png") self.images = [ sprite_sheet.get_image(0, 0, 58, 58), # Closed door sprite_sheet.get_image(58, 0, 116, 58) ] # Opened door self.player = player if self.player.direction == "D": self.image = self.images[0] self.direction = "D" elif self.player.direction == "U": self.image = self.images[0] self.direction = "U" elif self.player.direction == "L": self.image = self.images[1] self.direction = "L" else: self.image = self.images[1] self.direction = "R" self.rect = self.image.get_rect() self.level = level block = self block.rect.x = self.player.rect.x block.rect.y = self.player.rect.y block.player = self.player self.level.shot_list.add(block)
def __init__(self): # Call the parent's constructor super().__init__() # -- Attributes # Set speed vector of player self.change_x = 0 self.change_y = 0 self.lives = 5 self.shots = 0 self.collisionManager = CollisionManager(self) # This holds all the images for the animated walk of manolito self.walking_frames_l = [] self.walking_frames_r = [] self.walking_frames_u = [] self.walking_frames_d = [] # What direction is manolito facing? self.direction = "D" self.level = None self.level_end = False self.hearts_collected = 0 self.gem = False sprite_sheet = SpriteSheet("Assets/manolito.png") # Load all the down facing images into a list image = sprite_sheet.get_image(0, 0, 58, 58) self.walking_frames_d.append(image) image = sprite_sheet.get_image(58, 0, 58, 58) self.walking_frames_d.append(image) image = sprite_sheet.get_image(116, 0, 58, 58) self.walking_frames_d.append(image) image = sprite_sheet.get_image(174, 0, 58, 58) self.walking_frames_d.append(image) image = sprite_sheet.get_image(232, 0, 58, 58) self.walking_frames_d.append(image) # Load all the left facing images into a list image = sprite_sheet.get_image(0, 58, 58, 58) self.walking_frames_l.append(image) image = sprite_sheet.get_image(58, 58, 58, 58) self.walking_frames_l.append(image) image = sprite_sheet.get_image(116, 58, 58, 58) self.walking_frames_l.append(image) image = sprite_sheet.get_image(174, 58, 58, 58) self.walking_frames_l.append(image) image = sprite_sheet.get_image(232, 58, 58, 58) self.walking_frames_l.append(image) # Load all the right facing images into a list image = sprite_sheet.get_image(0, 116, 58, 58) self.walking_frames_r.append(image) image = sprite_sheet.get_image(58, 116, 58, 58) self.walking_frames_r.append(image) image = sprite_sheet.get_image(116, 116, 58, 58) self.walking_frames_r.append(image) image = sprite_sheet.get_image(174, 116, 58, 58) self.walking_frames_r.append(image) image = sprite_sheet.get_image(232, 116, 58, 58) self.walking_frames_r.append(image) # Load all the up facing images into a list image = sprite_sheet.get_image(0, 174, 58, 58) self.walking_frames_u.append(image) image = sprite_sheet.get_image(58, 174, 58, 58) self.walking_frames_u.append(image) image = sprite_sheet.get_image(116, 174, 58, 58) self.walking_frames_u.append(image) image = sprite_sheet.get_image(174, 174, 58, 58) self.walking_frames_u.append(image) image = sprite_sheet.get_image(232, 174, 58, 58) self.walking_frames_u.append(image) # Set the image the player starts with self.image = self.walking_frames_d[0] # Set a reference to the image rect. self.rect = self.image.get_rect() self.rect.x = 58 self.rect.y = 58
def __init__(self, mapSizeX, mapSizeY, collisionHandler = None): self._objectList = {} self._objectIdCount = 9999 self._map = Map(mapSizeX,mapSizeY) self._collisionManager = CollisionManager(collisionHandler)