HUEVITO DASH 3 (PLUS)

Python
@namespace
class SpriteKind:
    Obstacle = SpriteKind.create()
    Ground = SpriteKind.create()


mySprite: Sprite = None
coin: Sprite = None
block: Sprite = None
ground: Sprite = None
hero: Sprite = None


# -------------------------
# VIDAS Y PUNTUACIÓN
# -------------------------

info.set_score(0)
info.set_life(3)


# -------------------------
# CUANDO CHOCA CON UN OBSTÁCULO
# -------------------------

def on_on_overlap(sprite, otherSprite):
    # Quitar una vida
    info.change_life_by(-1)

    # Destruir el obstáculo para que no quite
    # varias vidas al mismo tiempo
    sprites.destroy(otherSprite)

    # Si ya no quedan vidas
    if info.life() <= 0:
        game.over(False)


sprites.on_overlap(
    SpriteKind.player,
    SpriteKind.Obstacle,
    on_on_overlap
)


# -------------------------
# SALTAR CON BOTÓN A
# -------------------------

def on_a_pressed():
    if hero.y >= 106:
        hero.vy = -145


controller.A.on_event(
    ControllerButtonEvent.PRESSED,
    on_a_pressed
)


# -------------------------
# RECOGER HUEVOS / MONEDAS
# -------------------------

def on_on_overlap2(sprite2, otherSprite2):
    # Aumentar puntuación
    info.change_score_by(1)

    # Destruir huevo
    sprites.destroy(otherSprite2)

    # Cada 10 huevos gana una vida
    if info.score() % 10 == 0:
        info.change_life_by(1)


sprites.on_overlap(
    SpriteKind.player,
    SpriteKind.food,
    on_on_overlap2
)


# -------------------------
# CONFIGURACIÓN DEL JUEGO
# -------------------------

scene.set_background_color(9)

game.splash("Sin título")


# -------------------------
# CREAR PERSONAJE
# -------------------------

hero = sprites.create(
    img("""
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
        cccccccccccccccccccc
    """),
    SpriteKind.player
)

hero.set_position(28, 108)

# Gravedad
hero.ay = 360


# -------------------------
# CREAR EL SUELO
# -------------------------

for i in range(11):
    ground = sprites.create(
        img("""
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            d d d d d d d d d d d d d d d d
            8 8 8 8 8 8 8 8 8 8 8 8 8 8 8 8
            1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
            1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
            1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
        """),
        SpriteKind.Ground
    )

    ground.set_flag(SpriteFlag.GHOST, True)
    ground.z = -10
    ground.x = i * 16 + 8
    ground.top = 108


# -------------------------
# IMAGEN DEL PERSONAJE
# -------------------------

hero.set_image(
    img("""
        ........................
        .........444444.........
        ........444444444.......
        ......2244444444........
        ......222444444.........
        .....222444442..........
        ......224444bbec........
        ......224d4ddddbc.......
        ......244bdddd1dbc......
        ......4eedddddd1de......
        ......2edddebdddde......
        ......cbdddeeebeeef.....
        ......ebdddb2e4eebc.....
        ....cccc4ddee4d4edccc...
        ....ccce4ddeccccedccc...
        ....cccbddddceeebdccc...
        ....cceb4ddddbe24bccc...
        .......e44ddd4eebef.....
        ....cccccb4444beec......
        ....ccccccebbbeecccf....
        ....ccfcf.ceeecccccc....
        .......eeeeeeeeecccc....
        ......eeeeeeeeeeeccc....
        ........................
    """)
)


# -------------------------
# MANTENER AL PERSONAJE
# SOBRE EL SUELO
# -------------------------

def on_on_update():
    if hero.y > 108:
        hero.y = 108
        hero.vy = 0


game.on_update(on_on_update)


# -------------------------
# CREAR OBSTÁCULOS
# -------------------------

def on_update_interval():
    global block

    block = sprites.create_projectile(
        img("""
            6 6 6 6 6 6
            6 6 6 6 6 6
            6 6 6 6 6 6
            6 6 6 6 6 6
            6 6 6 6 6 6
            6 6 6 6 6 6
            6 6 6 6 6 6
            6 6 6 6 6 6
            6 6 6 6 6 6
            6 6 6 6 6 6
            6 6 6 6 6 6
            6 6 6 6 6 6
            6 6 6 6 6 6
            6 6 6 6 6 6
            6 6 6 6 6 6
            6 6 6 6 6 6
        """),
        -90,
        0,
        SpriteKind.Obstacle
    )

    block.set_position(
        scene.screen_width(),
        108
    )


game.on_update_interval(
    1000,
    on_update_interval
)


# -------------------------
# CREAR HUEVOS
# -------------------------

def on_update_interval2():
    global coin

    coin = sprites.create(
        img("""
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
        """),
        SpriteKind.food
    )

    coin.set_position(170, 80)
    coin.set_velocity(-90, 0)

    coin.set_image(
        img("""
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . c c c . . . . . .
            . . . . . . e d d b c . . . . .
            . . . . . c d d d d e . . . . .
            . . . . c e d d d d 4 c . . . .
            . . . . c b d d d d d c . . . .
            . . . . c b 4 4 4 4 4 c . . . .
            . . . . c e 4 4 4 4 b c . . . .
            . . . . . c e 4 4 b e . . . . .
            . . . . . c c e e e c . . . . .
            . . . . . . c c c c . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
            . . . . . . . . . . . . . . . .
        """)
    )


game.on_update_interval(
    1500,
    on_update_interval2
)
Feedback wanted
Uploaded Aug 30, 2026

la secuela de huevito dash para Legendario patricio18748( mejore el aro como tu dijiste)Y COMAN HUEVITO