Beispiel #1
0
    def __init__(self, *args, **kwargs):
        super(Window, self).__init__(*args, **kwargs)

        self.score = 0
        self.difficulty = self.score + 50
        self.lives = 3
        self.time = 0.5
        self.ships = pyglet.graphics.Batch()
        self.rocks = pyglet.graphics.Batch()
        self.missiles = pyglet.graphics.Batch()
        self.started = False
        self.rock_trigger = 0

        # Images
        self.background = pyglet.image.load('static/images/nebula_blue.s2014.png')

        self.rock_img = pyglet.image.load('static/images/asteroid_blue.png')
        utils.center_image_anchor(self.rock_img)

        ship_sequence = pyglet.image.load('static/images/double_ship.png')
        self.ship_imgs = pyglet.image.ImageGrid(ship_sequence, 1, 2)
        utils.center_image_grid_anchors(self.ship_imgs)
        self.splash_img = pyglet.image.load('static/images/splash.png') 

        # Sounds
        self.thruster_snd = pyglet.media.load('static/sounds/rocket.ogg', streaming=False)
        self.explosion_snd = pyglet.media.load('static/sounds/explosion.ogg', streaming=False)
        self.background_music = pyglet.media.load('static/sounds/space1.mp3', streaming=False)
        self.background_music.play()

        # Sprite Groups
        self.rock_group = set()
        self.missile_group = set()

        # Spites 
        self.ship = PlayerSprite(self.ship_imgs, self.thruster_snd, 400, 250, 0, 0, 270, 35, self.ships, self.missiles)
        self.splash = Sprite(self.splash_img, 200, 125)

        # Screen Text
        self.text_lives = pyglet.text.Label('Lives=' + str(self.lives),
                                            font_name='Times New Roman',
                                            font_size=36, x=10, y=10)
        self.text_score = pyglet.text.Label('Score=' + str(self.score),
                                            font_name='Times New Roman',
                                            font_size=36, x=10, y=60)

        # Keymaps
        self.key_downs = {key.UP:self.accel, key.LEFT:self.left, key.RIGHT:self.right, key.SPACE:self.fire, key.ESCAPE:pyglet.app.exit}
        self.key_ups = {key.UP:self.decel, key.LEFT:self.right, key.RIGHT:self.left}

        pyglet.clock.schedule_interval(self.update, 1/60.0)  # update at 60Hz
Beispiel #2
0
    def __init__(self, name, game):
        self.name = name
        self.pos = [50, 50]
        self.do_blit = False
        self.game = game
        self.surf = game.SCREEN

        self.lastMove = 99999999999

        self.velo_def = [0, 0]
        self.velo_x = 0
        self.velo_y = 0

        self.sprite = PlayerSprite(self)

        self.moving = [False, False, False, False]
Beispiel #3
0
    StaticSprite(**child.settings) for child in LEVELS['l1'].children['static']
]

#Create Player character
PC = PlayerSprite(
    34,
    64,
    i=controls.WIDTH / 2 - 20,
    j=controls.HEIGHT / 2 - 35,
    states={
        "default": ["assets/images/Iandalara_base0{}.bmp".format(4)] * 3 +
        ["assets/images/Iandalara_base0{}.bmp".format(i) for i in range(3)],
        "default_up":
        ["assets/images/Iandalara_base_up0{}.bmp".format(4)] * 3 +
        ["assets/images/Iandalara_base_up0{}.bmp".format(i) for i in range(3)],
        "default_right": ["assets/images/Iandalara_right00.bmp"],
        "default_left": ["assets/images/Iandalara_left00.bmp"],
        "up":
        ["assets/images/Iandalara_up0{}.bmp".format(i) for i in range(4)],
        "down":
        ["assets/images/Iandalara_down0{}.bmp".format(i) for i in range(4)],
        "left":
        ["assets/images/Iandalara_left0{}.bmp".format(i) for i in range(4)],
        "right":
        ["assets/images/Iandalara_right0{}.bmp".format(i) for i in range(4)],
    },
)
LEVEL_SPRITES.append(PC)
PC_PHYSICAL_GROUP.add(PC)

# pylint: disable=expression-not-assigned
Beispiel #4
0
 def game_reset(self):
     self.started = False
     self.rock_group = set()
     self.ship = PlayerSprite(self.ship_imgs, self.thruster_snd, 400, 250, 0, 0, 270, 35, self.ships, self.missiles)
     self.lives = 3
     self.score = 0