예제 #1
0
def create_animations(players, tiles, powerups):
    player_animations = dict()
    for i, colour in enumerate(["white", "blue", "black", "red"]):
        player_animations["colour"] = dict()

        walk = list()
        walking_delays = [300, 200, 300, 200]
        for j in range(4):
            j *= 3
            sequence = [(j + 1, i), (j, i), (j + 2, i), (j, i)]
            animation = Animation(players, sequence, walking_delays)
            walk.append(animation)

        punch = list()
        for j in range(4):
            j += 19
            animation = Animation(players, [(j, i)], 500, False)
            punch.append(animation)

        death = Animation(players, [(j, i) for j in range(12, 18)], 2000,
                          False)

        player_animations[colour]["walk"] = walk
        player_animations[colour]["punch"] = punch
        player_animations[colour]["death"] = death

    return player_animations
예제 #2
0
파일: player.py 프로젝트: Cynerva/jttcotm
    def __init__(self, world, pos=(0, 0)):
        self.body = world.b2world.CreateDynamicBody(
            position=pos,
            allowSleep=False
        )
        self.body.CreatePolygonFixture(
            box=(0.8, 1.6),
            density=1,
            friction=0.0,
        )
        self.body.linearDamping = 0.0
        self.body.angularDamping = 0.0
        self.sensor = self.body.CreatePolygonFixture(
            box=(0.6, 0.2, (0, -1.6), 0),
            density=1,
            friction=0.0,
            isSensor = True
        )

        self.stand_sprite = Sprite("data/art/stand.png")
        self.jump_sprite = Sprite("data/art/jump.png")
        self.fall_sprite = Sprite("data/art/fall.png")
        walksprite0 = self.stand_sprite
        walksprite1 = Sprite("data/art/walk1.png")
        walksprite2 = Sprite("data/art/walk2.png")
        self.walk_sprite = Animation((
            walksprite0, walksprite1, walksprite1,
            walksprite0, walksprite2, walksprite2
        ))
        self.sprite = self.stand_sprite