def setup(self): """ Set up the game and initialize the variables. Call this method if you implement a 'play again' feature. """ self.game_state = PLAY_GAME # Sprite lists self.player_list = arcadeplus.SpriteList() self.enemy_list = arcadeplus.SpriteList() self.player_bullet_list = arcadeplus.SpriteList() self.enemy_bullet_list = arcadeplus.SpriteList() self.shield_list = arcadeplus.SpriteList(is_static=True) # Set up the player self.score = 0 # Image from kenney.nl self.player_sprite = arcadeplus.Sprite( ":resources:images/animated_characters/female_person/femalePerson_idle.png", SPRITE_SCALING_PLAYER) self.player_sprite.center_x = 50 self.player_sprite.center_y = 40 self.player_list.append(self.player_sprite) # Make each of the shields for x in range(75, 800, 190): self.make_shield(x) # Set the background color arcadeplus.set_background_color(arcadeplus.color.AMAZON) self.setup_level_one()
def setup(self): """ Set up the game and initialize the variables. """ # Sprite lists self.player_list = arcadeplus.SpriteList() self.coin_list = arcadeplus.SpriteList() self.bullet_list = arcadeplus.SpriteList() # Set up the player self.score = 0 # Image from kenney.nl self.player_sprite = arcadeplus.Sprite(":resources:images/animated_characters/female_person/femalePerson_idle.png", SPRITE_SCALING_PLAYER) self.player_sprite.center_x = 50 self.player_sprite.center_y = 70 self.player_list.append(self.player_sprite) # Create the coins for i in range(COIN_COUNT): # Create the coin instance # Coin image from kenney.nl coin = arcadeplus.Sprite(":resources:images/items/coinGold.png", SPRITE_SCALING_COIN) # Position the coin coin.center_x = random.randrange(SCREEN_WIDTH) coin.center_y = random.randrange(120, SCREEN_HEIGHT) # Add the coin to the lists self.coin_list.append(coin) # Set the background color arcadeplus.set_background_color(arcadeplus.color.AMAZON)
def setup(self): """ Set up the game and initialize the variables. """ # Sprite lists self.player_list = arcadeplus.SpriteList() self.coin_list = arcadeplus.SpriteList() # Set up the player self.score = 0 self.player_sprite = arcadeplus.Sprite( ":resources:images/animated_characters/female_person/femalePerson_idle.png", 0.5) self.player_sprite.center_x = 50 self.player_sprite.center_y = 50 self.player_list.append(self.player_sprite) for i in range(50): # Create the coin instance coin = Collectable(":resources:images/items/coinGold.png", SPRITE_SCALING) coin.width = 30 coin.height = 30 # Position the coin coin.center_x = random.randrange(SCREEN_WIDTH) coin.center_y = random.randrange(SCREEN_HEIGHT) # Add the coin to the lists self.coin_list.append(coin) # Don't show the mouse cursor self.set_mouse_visible(False) # Set the background color arcadeplus.set_background_color(arcadeplus.color.AMAZON)
def __init__(self, width, height, title): super().__init__(width, height, title) file_path = os.path.dirname(os.path.abspath(__file__)) os.chdir(file_path) arcadeplus.set_background_color(arcadeplus.color.AMAZON) self.character_list = arcadeplus.SpriteList() self.character_sprite = arcadeplus.Sprite( ":resources:images/animated_characters/female_person/femalePerson_idle.png", CHARACTER_SCALING) self.character_sprite.center_x = 250 self.character_sprite.center_y = 250 self.character_sprite.change_x = 5 self.character_sprite.change_y = 5 self.character_list.append(self.character_sprite) self.wall_list = arcadeplus.SpriteList() sprite = arcadeplus.Sprite( ":resources:images/tiles/boxCrate_double.png", CHARACTER_SCALING) sprite.position = (330, 330) sprite.angle = 90 self.wall_list.append(sprite) sprite = arcadeplus.Sprite( ":resources:images/tiles/boxCrate_double.png", CHARACTER_SCALING) sprite.position = (170, 170) sprite.angle = 45 self.wall_list.append(sprite) self.physics_engine = arcadeplus.PhysicsEngineSimple( self.character_sprite, self.wall_list)
def setup(self): """ Set up the game and initialize the variables. """ # Sprite lists self.player_list = arcadeplus.SpriteList() self.coin_list = arcadeplus.SpriteList() # Score self.score = 0 # Set up the player # Character image from kenney.nl self.player_sprite = arcadeplus.SpriteSolidColor( 64, 64, arcadeplus.color.RED) self.player_sprite.center_x = 50 self.player_sprite.center_y = 50 self.player_list.append(self.player_sprite) # Create the coins for i in range(COIN_COUNT): # Create the coin instance # Coin image from kenney.nl coin = arcadeplus.SpriteSolidColor(32, 32, arcadeplus.color.BLUE) # Position the coin coin.center_x = random.randrange(SCREEN_WIDTH) coin.center_y = random.randrange(SCREEN_HEIGHT) # Add the coin to the lists self.coin_list.append(coin)
def __init__(self): super().__init__(SCREEN_WIDTH, SCREEN_HEIGHT, SCREEN_TITLE) # Set the working directory (where we expect to find files) to the same # directory this .py file is in. You can leave this out of your own # code, but it is needed to easily run the examples using "python -m" # as mentioned at the top of this program. file_path = os.path.dirname(os.path.abspath(__file__)) os.chdir(file_path) self.frame_count = 0 self.game_over = False # Sprite lists self.all_sprites_list = arcadeplus.SpriteList() self.asteroid_list = arcadeplus.SpriteList() self.bullet_list = arcadeplus.SpriteList() self.ship_life_list = arcadeplus.SpriteList() # Set up the player self.score = 0 self.player_sprite = None self.lives = 3 # Sounds self.laser_sound = arcadeplus.load_sound(":resources:sounds/hurt5.wav") self.hit_sound1 = arcadeplus.load_sound( ":resources:sounds/explosion1.wav") self.hit_sound2 = arcadeplus.load_sound( ":resources:sounds/explosion2.wav") self.hit_sound3 = arcadeplus.load_sound(":resources:sounds/hit1.wav") self.hit_sound4 = arcadeplus.load_sound(":resources:sounds/hit2.wav")
def setup(self): """ Set up the game and initialize the variables. """ # Sprite lists self.player_list = arcadeplus.SpriteList() self.coin_list = arcadeplus.SpriteList() # Score self.score = 0 # Set up the player # Character image from kenney.nl self.player_sprite = arcadeplus.Sprite(":resources:images/animated_characters/female_person/femalePerson_idle.png", SPRITE_SCALING_PLAYER) self.player_sprite.center_x = 50 self.player_sprite.center_y = 50 self.player_list.append(self.player_sprite) # Create the coins for i in range(COIN_COUNT): # Create the coin instance # Coin image from kenney.nl coin = arcadeplus.Sprite(":resources:images/items/coinGold.png", SPRITE_SCALING_COIN) # Position the coin coin.center_x = random.randrange(SCREEN_WIDTH) coin.center_y = random.randrange(SCREEN_HEIGHT) # Set up the initial angle, and the "spin" coin.angle = random.randrange(360) coin.change_angle = random.randrange(-5, 6) # Add the coin to the lists self.coin_list.append(coin)
def setup(self): """ Set up the game here. Call this function to restart the game. """ # Create the Sprite lists self.player_list = arcadeplus.SpriteList() self.wall_list = arcadeplus.SpriteList() self.coin_list = arcadeplus.SpriteList() # Set up the player, specifically placing it at these coordinates. image_source = ":resources:images/animated_characters/female_adventurer/femaleAdventurer_idle.png" self.player_sprite = arcadeplus.Sprite(image_source, CHARACTER_SCALING) self.player_sprite.center_x = 64 self.player_sprite.center_y = 128 self.player_list.append(self.player_sprite) # Create the ground # This shows using a loop to place multiple sprites horizontally for x in range(0, 1250, 64): wall = arcadeplus.Sprite(":resources:images/tiles/grassMid.png", TILE_SCALING) wall.center_x = x wall.center_y = 32 self.wall_list.append(wall) # Put some crates on the ground # This shows using a coordinate list to place sprites coordinate_list = [[512, 96], [256, 96], [768, 96]] for coordinate in coordinate_list: # Add a crate on the ground wall = arcadeplus.Sprite( ":resources:images/tiles/boxCrate_double.png", TILE_SCALING) wall.position = coordinate self.wall_list.append(wall)
def setup(self): self.enemy_list = arcadeplus.SpriteList() self.bullet_list = arcadeplus.SpriteList() self.player_list = arcadeplus.SpriteList() # Add player ship self.player = arcadeplus.Sprite( ":resources:images/space_shooter/playerShip1_orange.png", 0.5) self.player_list.append(self.player) # Add top-left enemy ship enemy = arcadeplus.Sprite( ":resources:images/space_shooter/playerShip1_green.png", 0.5) enemy.center_x = 120 enemy.center_y = SCREEN_HEIGHT - enemy.height enemy.angle = 180 self.enemy_list.append(enemy) # Add top-right enemy ship enemy = arcadeplus.Sprite( ":resources:images/space_shooter/playerShip1_green.png", 0.5) enemy.center_x = SCREEN_WIDTH - 120 enemy.center_y = SCREEN_HEIGHT - enemy.height enemy.angle = 180 self.enemy_list.append(enemy)
def __init__(self, width, height, title): super().__init__(width, height, title) file_path = os.path.dirname(os.path.abspath(__file__)) os.chdir(file_path) arcadeplus.set_background_color(arcadeplus.color.AMAZON) self.character_list = arcadeplus.SpriteList() self.character_sprite = arcadeplus.Sprite( ":resources:images/animated_characters/female_person/femalePerson_idle.png", CHARACTER_SCALING) self.character_sprite.center_x = 150 self.character_sprite.center_y = 110 self.character_list.append(self.character_sprite) self.wall_list = arcadeplus.SpriteList() for x in range(0, 1200, 64): sprite = arcadeplus.Sprite( ":resources:images/tiles/boxCrate_double.png", CHARACTER_SCALING) sprite.center_x = x sprite.center_y = 32 self.wall_list.append(sprite) self.physics_engine = arcadeplus.PhysicsEnginePlatformer( self.character_sprite, self.wall_list, gravity_constant=GRAVITY)
def setup(self): """ Set up the game and initialize the variables. """ # Sprite lists self.player_list = arcadeplus.SpriteList() self.coin_list = arcadeplus.SpriteList() # Set up the player # Character image from kenney.nl self.player_sprite = arcadeplus.Sprite( ":resources:images/animated_characters/female_person/femalePerson_idle.png", SPRITE_SCALING_PLAYER) self.player_sprite.center_x = 50 self.player_sprite.center_y = 150 self.player_list.append(self.player_sprite) # Create the sprites for x in range(100, 800, 100): coin = arcadeplus.Sprite(":resources:images/items/coinGold.png", scale=0.3, center_x=x, center_y=400) coin.intensity = 'dim' coin.alpha = 64 self.coin_list.append(coin) # Create trigger self.trigger_sprite = arcadeplus.Sprite( ":resources:images/pinball/bumper.png", scale=0.5, center_x=750, center_y=50)
def setup(self): """ Set up the game and initialize the variables. """ # Load the background image. Do this in the setup so we don't keep reloading it all the time. # Image from: # http://wallpaper-gallery.net/single/free-background-images/free-background-images-22.html self.background = arcadeplus.load_texture( ":resources:images/backgrounds/abstract_1.jpg") # Sprite lists self.player_list = arcadeplus.SpriteList() self.coin_list = arcadeplus.SpriteList() # Set up the player self.score = 0 self.player_sprite = arcadeplus.Sprite( ":resources:images/animated_characters/female_person/femalePerson_idle.png", PLAYER_SCALING) self.player_sprite.center_x = 50 self.player_sprite.center_y = 50 self.player_list.append(self.player_sprite) for i in range(50): # Create the coin instance coin = arcadeplus.Sprite(":resources:images/items/coinGold.png", COIN_SCALING) # Position the coin coin.center_x = random.randrange(SCREEN_WIDTH) coin.center_y = random.randrange(SCREEN_HEIGHT) # Add the coin to the lists self.coin_list.append(coin)
def setup(self): """ Set up the game and initialize the variables. """ # Sprite lists self.player_list = arcadeplus.SpriteList() self.wall_list = arcadeplus.SpriteList() # Set up the player self.player_sprite = arcadeplus.Sprite(":resources:images/animated_characters/female_person/femalePerson_idle.png", SPRITE_SCALING) self.player_sprite.center_x = 50 self.player_sprite.center_y = 64 self.player_list.append(self.player_sprite) # -- Set up the walls # Create a row of boxes for x in range(173, 650, 64): wall = arcadeplus.Sprite(":resources:images/tiles/boxCrate_double.png", SPRITE_SCALING) wall.center_x = x wall.center_y = 200 self.wall_list.append(wall) # Create a column of boxes for y in range(273, 500, 64): wall = arcadeplus.Sprite(":resources:images/tiles/boxCrate_double.png", SPRITE_SCALING) wall.center_x = 465 wall.center_y = y self.wall_list.append(wall) self.physics_engine = arcadeplus.PhysicsEngineSimple(self.player_sprite, self.wall_list) # Set the background color arcadeplus.set_background_color(arcadeplus.color.AMAZON)
def __init__(self): super().__init__() self.time_taken = 0 # Sprite lists self.player_list = arcadeplus.SpriteList() self.coin_list = arcadeplus.SpriteList() # Set up the player self.score = 0 self.player_sprite = arcadeplus.Sprite(":resources:images/animated_characters/female_person/femalePerson_idle.png", SPRITE_SCALING) self.player_sprite.center_x = 50 self.player_sprite.center_y = 50 self.player_list.append(self.player_sprite) for i in range(5): # Create the coin instance coin = arcadeplus.Sprite(":resources:images/items/coinGold.png", SPRITE_SCALING / 3) # Position the coin coin.center_x = random.randrange(WIDTH) coin.center_y = random.randrange(HEIGHT) # Add the coin to the lists self.coin_list.append(coin)
def __init__(self): super().__init__() self.game_over = False self.score = 0 self.tick = 0 self.bullet_cooldown = 0 self.player = Player( ":resources:images/space_shooter/playerShip2_orange.png") self.bullet_list = arcadeplus.SpriteList() self.enemy_list = arcadeplus.SpriteList() self.joy = None
def setup(self): """ Set up the game here. Call this function to restart the game. """ # Used to keep track of our scrolling self.view_bottom = 0 self.view_left = 0 # Keep track of the score self.score = 0 # Create the Sprite lists self.player_list = arcadeplus.SpriteList() self.wall_list = arcadeplus.SpriteList() self.coin_list = arcadeplus.SpriteList() # Set up the player, specifically placing it at these coordinates. image_source = ":resources:images/animated_characters/female_adventurer/femaleAdventurer_idle.png" self.player_sprite = arcadeplus.Sprite(image_source, CHARACTER_SCALING) self.player_sprite.center_x = 64 self.player_sprite.center_y = 96 self.player_list.append(self.player_sprite) # Create the ground # This shows using a loop to place multiple sprites horizontally for x in range(0, 1250, 64): wall = arcadeplus.Sprite(":resources:images/tiles/grassMid.png", TILE_SCALING) wall.center_x = x wall.center_y = 32 self.wall_list.append(wall) # Put some crates on the ground # This shows using a coordinate list to place sprites coordinate_list = [[512, 96], [256, 96], [768, 96]] for coordinate in coordinate_list: # Add a crate on the ground wall = arcadeplus.Sprite(":resources:images/tiles/boxCrate_double.png", TILE_SCALING) wall.position = coordinate self.wall_list.append(wall) # Use a loop to place some coins for our character to pick up for x in range(128, 1250, 256): coin = arcadeplus.Sprite(":resources:images/items/coinGold.png", COIN_SCALING) coin.center_x = x coin.center_y = 96 self.coin_list.append(coin) # Create the 'physics engine' self.physics_engine = arcadeplus.PhysicsEnginePlatformer(self.player_sprite, self.wall_list, GRAVITY)
def start_new_game(self): """ Set up the game and initialize the variables. """ self.frame_count = 0 self.game_over = False # Sprite lists self.all_sprites_list = arcadeplus.SpriteList() self.asteroid_list = arcadeplus.SpriteList() self.bullet_list = arcadeplus.SpriteList() self.ship_life_list = arcadeplus.SpriteList() # Set up the player self.score = 0 self.player_sprite = ShipSprite( ":resources:images/space_shooter/playerShip1_orange.png", SCALE) self.all_sprites_list.append(self.player_sprite) self.lives = 3 # Set up the little icons that represent the player lives. cur_pos = 10 for i in range(self.lives): life = arcadeplus.Sprite( ":resources:images/space_shooter/playerLife1_orange.png", SCALE) life.center_x = cur_pos + life.width life.center_y = life.height cur_pos += life.width self.all_sprites_list.append(life) self.ship_life_list.append(life) # Make the asteroids image_list = (":resources:images/space_shooter/meteorGrey_big1.png", ":resources:images/space_shooter/meteorGrey_big2.png", ":resources:images/space_shooter/meteorGrey_big3.png", ":resources:images/space_shooter/meteorGrey_big4.png") for i in range(STARTING_ASTEROID_COUNT): image_no = random.randrange(4) enemy_sprite = AsteroidSprite(image_list[image_no], SCALE) enemy_sprite.guid = "Asteroid" enemy_sprite.center_y = random.randrange(BOTTOM_LIMIT, TOP_LIMIT) enemy_sprite.center_x = random.randrange(LEFT_LIMIT, RIGHT_LIMIT) enemy_sprite.change_x = random.random() * 2 - 1 enemy_sprite.change_y = random.random() * 2 - 1 enemy_sprite.change_angle = (random.random() - 0.5) * 2 enemy_sprite.size = 4 self.all_sprites_list.append(enemy_sprite) self.asteroid_list.append(enemy_sprite)
def setup(self): """ Set up the game here. Call this function to restart the game. """ # Used to keep track of our scrolling self.view_bottom = 0 self.view_left = 0 # Keep track of the score self.score = 0 # Create the Sprite lists self.player_list = arcadeplus.SpriteList() self.wall_list = arcadeplus.SpriteList() self.coin_list = arcadeplus.SpriteList() # Set up the player, specifically placing it at these coordinates. image_source = ":resources:images/animated_characters/female_adventurer/femaleAdventurer_idle.png" self.player_sprite = arcadeplus.Sprite(image_source, CHARACTER_SCALING) self.player_sprite.center_x = 64 self.player_sprite.center_y = 128 self.player_list.append(self.player_sprite) # --- Load in a map from the tiled editor --- # Name of map file to load map_name = ":resources:tmx_maps/test_map_7.tmx" # Name of the layer in the file that has our platforms/walls platforms_layer_name = 'Platforms' # Name of the layer that has items for pick-up coins_layer_name = 'Coins' # Read in the tiled map my_map = arcadeplus.tilemap.read_tmx(map_name) # -- Platforms self.wall_list = arcadeplus.tilemap.process_layer( my_map, platforms_layer_name, TILE_SCALING) # -- Coins self.coin_list = arcadeplus.tilemap.process_layer( my_map, coins_layer_name, TILE_SCALING) # --- Other stuff # Set the background color if my_map.background_color: arcadeplus.set_background_color(my_map.background_color) # Create the 'physics engine' self.physics_engine = arcadeplus.PhysicsEnginePlatformer( self.player_sprite, self.wall_list, GRAVITY)
def __init__(self, width, height, title): super().__init__(width, height, title) # Set the working directory (where we expect to find files) to the same # directory this .py file is in. You can leave this out of your own # code, but it is needed to easily run the examples using "python -m" # as mentioned at the top of this program. file_path = os.path.dirname(os.path.abspath(__file__)) os.chdir(file_path) arcadeplus.set_background_color(arcadeplus.color.DARK_SLATE_GRAY) # -- Pymunk self.space = pymunk.Space() self.space.iterations = 35 self.space.gravity = (0.0, -900.0) # Lists of sprites or lines self.sprite_list: arcadeplus.SpriteList[ PhysicsSprite] = arcadeplus.SpriteList() self.static_lines = [] # Used for dragging shapes around with the mouse self.shape_being_dragged = None self.last_mouse_position = 0, 0 self.draw_time = 0 self.processing_time = 0 # Create the floor floor_height = 80 body = pymunk.Body(body_type=pymunk.Body.STATIC) shape = pymunk.Segment(body, [0, floor_height], [SCREEN_WIDTH, floor_height], 0.0) shape.friction = 10 self.space.add(shape) self.static_lines.append(shape) # Create the stacks of boxes for row in range(10): for column in range(10): size = 32 mass = 1.0 x = 500 + column * 32 y = (floor_height + size / 2) + row * size moment = pymunk.moment_for_box(mass, (size, size)) body = pymunk.Body(mass, moment) body.position = pymunk.Vec2d(x, y) shape = pymunk.Poly.create_box(body, (size, size)) shape.elasticity = 0.2 shape.friction = 0.9 self.space.add(body, shape) # body.sleep() sprite = BoxSprite( shape, ":resources:images/tiles/boxCrate_double.png", width=size, height=size) self.sprite_list.append(sprite)
def test_sprites_at_point(): coin_list = arcadeplus.SpriteList() sprite = arcadeplus.SpriteSolidColor(50, 50, arcadeplus.csscolor.RED) coin_list.append(sprite) # print() # print(sprite.points) sprite_list = arcadeplus.get_sprites_at_point((0, 0), coin_list) assert len(sprite_list) == 1 sprite.position = (130, 130) # print() # print(sprite.points) sprite_list = arcadeplus.get_sprites_at_point((0, 0), coin_list) assert len(sprite_list) == 0 sprite_list = arcadeplus.get_sprites_at_point((140, 130), coin_list) assert len(sprite_list) == 1 sprite.angle = 90 # print() # print(sprite.points) sprite_list = arcadeplus.get_sprites_at_point((0, 0), coin_list) assert len(sprite_list) == 0 sprite_list = arcadeplus.get_sprites_at_point((140, 130), coin_list) assert len(sprite_list) == 1
def __init__(self, width, height, title): super().__init__(width, height, title) # Set the working directory (where we expect to find files) to the same # directory this .py file is in. You can leave this out of your own # code, but it is needed to easily run the examples using "python -m" # as mentioned at the top of this program. file_path = os.path.dirname(os.path.abspath(__file__)) os.chdir(file_path) arcadeplus.set_background_color(arcadeplus.color.DARK_SLATE_GRAY) # -- Pymunk self.space = pymunk.Space() self.space.iterations = 35 self.space.gravity = (0.0, -900.0) # Lists of sprites or lines self.sprite_list = arcadeplus.SpriteList() self.static_lines = [] # Used for dragging shapes around with the mouse self.shape_being_dragged = None self.last_mouse_position = 0, 0 self.draw_time = 0 self.processing_time = 0 # Create the floor floor_height = 80 body = pymunk.Body(body_type=pymunk.Body.STATIC) shape = pymunk.Segment(body, [0, floor_height], [SCREEN_WIDTH, floor_height], 0.0) shape.friction = 10 self.space.add(shape) self.static_lines.append(shape)
def test_sprite_collides_with_list(): coins = arcadeplus.SpriteList() for x in range(0, 50, 10): coin = arcadeplus.Sprite(center_x=x, center_y=0) coin.width = 10 coin.height = 10 coins.append(coin) player = arcadeplus.Sprite(center_x=100, center_y=100) player.width = 10 player.height = 10 # collides with none result = player.collides_with_list(coins) assert len(result) == 0, "Should return empty list" # collides with one player.center_x = -5 player.center_y = 0 result = player.collides_with_list(coins) assert len(result) == 1, "Should collide with one" # collides with two player.center_x = 5 result = player.collides_with_list(coins) assert len(result) == 2, "Should collide with two"
def setup(self): """ Set up the game and initialize the variables. """ # Sprite lists self.player_list = arcadeplus.SpriteList() self.coin_list = arcadeplus.SpriteList() # Set up the player self.player_sprite = arcadeplus.Sprite( ":resources:images/animated_characters/female_person/femalePerson_idle.png", PLAYER_SCALING) # Starting position of the player self.player_sprite.center_x = 196 self.player_sprite.center_y = 270 self.player_list.append(self.player_sprite) map_name = ":resources:/tmx_maps/map.tmx" # Read in the tiled map my_map = arcadeplus.tilemap.read_tmx(map_name) self.end_of_map = my_map.map_size.width * GRID_PIXEL_SIZE # --- Platforms --- self.wall_list = arcadeplus.tilemap.process_layer( my_map, 'Platforms', TILE_SCALING) # --- Coins --- self.coin_list = arcadeplus.tilemap.process_layer( my_map, 'Coins', TILE_SCALING) # --- Other stuff # Set the background color if my_map.background_color: arcadeplus.set_background_color(my_map.background_color) # Keep player from running through the wall_list layer self.physics_engine = arcadeplus.PhysicsEnginePlatformer( self.player_sprite, self.wall_list, gravity_constant=GRAVITY) # Set the view port boundaries # These numbers set where we have 'scrolled' to. self.view_left = 0 self.view_bottom = 0 self.game_over = False
def test_it_can_extend_a_spritelist(): spritelist = arcadeplus.SpriteList() sprites = [] for i in range(10): sprites.append(arcadeplus.Sprite()) spritelist.extend(sprites) assert len(spritelist) == 10 assert spritelist._vao1 is None
def setup(self): """ Set up the game and initialize the variables. """ self.score = 0 self.level = 1 # Sprite lists self.player_list = arcadeplus.SpriteList() self.coin_list = arcadeplus.SpriteList() # Set up the player self.player_sprite = arcadeplus.Sprite( ":resources:images/animated_characters/female_person/femalePerson_idle.png", SPRITE_SCALING) self.player_sprite.center_x = 50 self.player_sprite.center_y = 50 self.player_list.append(self.player_sprite) self.level_1()
def start_new_game(self): """ Set up the game and initialize the variables. """ # Sprite lists self.all_sprites_list = arcadeplus.SpriteList() self.coin_list = arcadeplus.SpriteList() # Set up the player self.score = 0 # Character image from kenney.nl self.player_sprite = arcadeplus.Sprite( ":resources:images/animated_characters/female_person/femalePerson_idle.png", SPRITE_SCALING) self.player_sprite.center_x = 50 self.player_sprite.center_y = 70 self.all_sprites_list.append(self.player_sprite) for i in range(50): # Create the coin instance # Coin image from kenney.nl coin = Coin(":resources:images/items/coinGold.png", SPRITE_SCALING / 3) # Position the center of the circle the coin will orbit coin.circle_center_x = random.randrange(SCREEN_WIDTH) coin.circle_center_y = random.randrange(SCREEN_HEIGHT) # Random radius from 10 to 200 coin.circle_radius = random.randrange(10, 200) # Random start angle from 0 to 2pi coin.circle_angle = random.random() * 2 * math.pi # Add the coin to the lists self.all_sprites_list.append(coin) self.coin_list.append(coin) # Don't show the mouse cursor self.set_mouse_visible(False) # Set the background color arcadeplus.set_background_color(arcadeplus.color.AMAZON)
def setup(self): """ Set up the game and initialize the variables. """ # Sprite lists self.player_list = arcadeplus.SpriteList() self.coin_list = arcadeplus.SpriteList() # Set up the player self.player_sprite = arcadeplus.Sprite( ":resources:images/animated_characters/female_person/femalePerson_idle.png", PLAYER_SCALING) # Starting position of the player self.player_sprite.center_x = 128 self.player_sprite.center_y = 64 self.player_list.append(self.player_sprite) self.load_level(self.level) self.game_over = False
def setup(self): """ Set up the game and initialize the variables. """ # Sprite lists self.all_sprites_list = arcadeplus.SpriteList() # Set up the player self.player_sprite = Player() self.player_sprite.center_x = SCREEN_WIDTH / 2 self.player_sprite.center_y = SCREEN_HEIGHT / 2 self.all_sprites_list.append(self.player_sprite)
def make_named_sprites(amount): spritelist = arcadeplus.SpriteList() sprites = [] for i in range(amount): sprite = arcadeplus.Sprite() sprite.name = i sprites.append(sprite) spritelist.extend(sprites) return spritelist
def __init__(self, width, height, title): super().__init__(width, height, title) arcadeplus.set_background_color(arcadeplus.color.AMAZON) self.sprite = arcadeplus.Sprite(":resources:images/items/coinGold.png", CHARACTER_SCALING) self.sprite.center_x = 50 self.sprite.center_y = 50 self.sprite_list = arcadeplus.SpriteList() self.sprite_list.append(self.sprite)