def __init__(self, scene, name, x, y, **kwargs): super(Explosion, self).__init__(scene, name, x, y, **kwargs) self.sprite = components.AnimSprite(self, assets.getSpriteAnim("anims/explosion.json"), "explode", -128, -128) try: assets.getSound("sounds/big_explosion.wav").play() except: 'Could not get sound'
def __init__(self, scene, name, x, y, **kwargs): super(Player, self).__init__(scene, name, x, y, **kwargs) self.sprite = components.AnimSprite(self, assets.getSpriteAnim("anims/player.json"), "stand_r", -16, -16) self.mapcollide = components.MapCollider(self, scene.tilemap.foreground, -5, -9, 11, 24) self.solidcollide = components.SolidSpriteCollider(self, self.obj_mgr.solid, -5, -9, 11, 24) self.collider = components.SpriteCollide(self, -5, -9, 11, 24) self.physics = components.Physics(self, self.mapcollide, self.solidcollide, 0.03) self.health = components.Health(self) self.sound_hurt = assets.getSound("sounds/hurt.wav") self.sound_die = assets.getSound("sounds/die.wav") self.sound_land = assets.getSound("sounds/land.wav") self.state = STATE_ALIVE self.anim_state = ANIM_STAND self.run_accel = 0.004 self.air_accel = 0.00025 self.max_air_speed = 0.2 self.facing = RIGHT self.jump_timer = 0 self.max_jump_timer = 150 self.jump_speed = -0.17 self.jump_thrust = -0.002 self.hurt_timer = 0 self.max_hurt_timer = 300 self.scene.setPlayer(self)
def spawn(self, spawn_type=None): if spawn_type == "door": self.state = STATE_SPAWN self.anim_state = ANIM_SPAWN self.sprite.play("door_exit") elif spawn_type == "left": self.state = STATE_TRAVEL self.anim_state = ANIM_WAIT self.sprite.play("run_r") self.physics.vx = 0.2 self.travel_time = 550 self.facing = RIGHT elif spawn_type == "right": self.state = STATE_TRAVEL self.anim_state = ANIM_WAIT self.sprite.play("run_l") self.physics.vx = -0.2 self.travel_time = 550 self.facing = LEFT else: self.state = STATE_SPAWN self.anim_state = ANIM_SPAWN self.sprite.play("spawn") assets.getSound("sounds/spawn.wav").play() self.health.health = statevars.variables["health"]
def __init__(self, scene, name, x, y, **kwargs): super(EMT, self).__init__(scene, name, x, y, **kwargs) self.sprite = components.StaticSprite(self, assets.getImage("graphics/emt.png"), -32, -14) self.glow = components.StaticSprite(self, assets.getImage("graphics/emt_glow.png"), -32, -14) self.glow.setVisibility(False) # This collider is used to make the EMT solid so the player can stand on it. self.collider = components.SpriteCollide(self, -24, 1, 48, 16) # Save collider is the area that needs to be touched to activate the EMT self.save_collider = components.SpriteCollide(self, -16, -15, 32, 16) self.sound = assets.getSound("sounds/save.wav") # Don't allow saving until five seconds after the first save or loading self.save_delay = 5000 self.save_timer = self.save_delay
def __init__(self, scene, name, x, y, direction=0, **kwargs): super(PlayerLaser, self).__init__(scene, name, x, y, **kwargs) if direction == -1: self.sprite = components.StaticSprite(self, assets.getImage("graphics/laser_l.png"), -4, -3) self.speed = -0.5 else: self.sprite = components.StaticSprite(self, assets.getImage("graphics/laser_r.png"), -4, -3) self.speed = 0.5 self.collider = components.SpriteCollide(self, -4, -3, 8, 5) self.mapcollider = components.MapCollider(self, scene.tilemap.foreground, -4, -1, 8, 1) self.damage_amount = -10 self.sound = assets.getSound("sounds/laser.wav") self.sound.play()
def __init__(self, scene, name, x, y, direction=0, **kwargs): super(Ship, self).__init__(scene, name, x, y, **kwargs) self.ship_sprite = components.StaticSprite(self, assets.getImage("graphics/ship.png")) self.jet_sprite = components.AnimSprite(self, assets.getSpriteAnim("anims/jet.json"), "jet", 16, 122) self.collider = components.SpriteCollide(self, 0, 0, self.ship_sprite.rect[2], self.ship_sprite.rect[3]) self.sound = assets.getSound("sounds/jet.wav") self.speed = 0.1 self.dest_y = y - self.ship_sprite.rect[3] + 17 self.x = x - self.ship_sprite.rect[2] / 2 + 8 self.delay = 0 map = statevars.variables.get("map") # Determine if the ship should fly down or already be on the ground when it is created if map is not None and map.get("ship_landed") == True: self.y = self.dest_y self.jet_sprite.setVisibility(False) else: self.y = -256 self.sound.play(-1) self.state = 0
def spawn(self): self.state = STATE_SPAWN self.anim_state = ANIM_SPAWN self.sprite.play("spawn") assets.getSound("sounds/spawn.wav").play()
def __init__(self, scene, name, x, y, **kwargs): super(Coin, self).__init__(scene, name, x, y) self.sprite = components.AnimSprite(self, assets.getSpriteAnim("anims/coin.json"), "spin") self.collider = components.SpriteCollide(self, 0, 0, 16, 16) self.sound = assets.getSound("sounds/coin.wav")
def __init__(self, scene, name, x, y, **kwargs): super(Explosion, self).__init__(scene, name, x, y, **kwargs) self.sprite = components.AnimSprite(self, assets.getSpriteAnim("anims/explosion.json"), "explode", -16, -16) assets.getSound("sounds/explosion.wav").play()
def __init__(self, scene, name, x, y, **kwargs): super(Energy, self).__init__(scene, name, x, y, **kwargs) self.sprite = components.StaticSprite(self, assets.getImage("graphics/fish.png")) self.collider = components.SpriteCollide(self, 0, 0, 16, 16) self.health_amount = 25 self.sound = assets.getSound("sounds/energy.wav")