Esempio n. 1
0
    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
Esempio n. 2
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()
Esempio n. 3
0
    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() )
Esempio n. 4
0
 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()
Esempio n. 5
0
    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)
Esempio n. 6
0
    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
Esempio n. 7
0
	def __init__(self, mapSizeX, mapSizeY, collisionHandler = None):
		self._objectList = {}
		self._objectIdCount = 9999
		self._map = Map(mapSizeX,mapSizeY)
		self._collisionManager = CollisionManager(collisionHandler)