Madio Adventure (A platformer)

Instructions: New Project\nhttps://scratch.mit.edu/projects/804815283/\n200 likes= 15 more levels\nClick the Madio logo in the top right corner to change your Character.\nMy first Platformer \nThe Goal is to get to the Right side\nThe Toad shop is not available yet. Im working on being able to buy upgrades with the coins you collect.\nIt's a very easy platformer:D Try speed-running it.\nRelease date April 1st, 2023\n\nIgnore these tags please don't judge\n___________________________________________\n#Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #stories #Stories #Stories #Stories #stories #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Popular #Popular #Popular #popular #Popular #raccoon #raccoon #sega #sega #Blast_Raccoon #Blast #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #stories #Stories #Stories #Stories #Stories # #heart and star#Games #All #Trending #Music #Fun #Games #All #Trending #Music #Fun #Games #All \n\n

@Stage\n\nwhen I receive [start v]\nswitch backdrop to (blank v)\n\nwhen flag clicked\nswitch backdrop to (menu v)\nforever\n    play sound (pick random (1) to (5)) until done\nend\n\n@player\n\nwhen I receive [start v]\nshow\nstop [other scripts in sprite v]\nset size to (700) %\ngo to [front v] layer\nswitch costume to (madio v)\nset rotation style [left-right v]\nif <(player) = [madio]> then\n    switch costume to (madio v)\n    set size to (700) %\nend\nif <(player) = [luigee]> then\n    switch costume to (luigee v)\n    set size to (500) %\nend\nif <(player) = [pear]> then\n    switch costume to (pear v)\n    set size to (550) %\nend\nforever\n    go to (hitbox v)\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        point in direction (90)\n    end\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        point in direction (-90)\n    end\nend\n\ndefine Size (size) Speed (speed)\nrepeat until <(round (size)) = (size)>\n    change size by (((size) - (size)) / (speed))\nend\n\nwhen flag clicked\nshow\npoint in direction (90)\nset [player v] to [madio]\nforever\n    if <(player) = [madio]> then\n        switch costume to (madio v)\n        set size to (3400) %\n        go to x: (-128) y: (-35)\n    end\n    if <(player) = [luigee]> then\n        switch costume to (luigee v)\n        set size to (2400) %\n        go to x: (-124) y: (-28)\n    end\n    if <(player) = [pear]> then\n        switch costume to (pear v)\n        set size to (2400) %\n        go to x: (-124) y: (-28)\n    end\nend\n\n@level\n\nwhen I receive [next level v]\nset [y v] to [0]\nset [x v] to [0]\nchange [level v] by (1)\nnext costume\n\nwhen flag clicked\nset [level v] to [0]\nswitch costume to (menu v)\n\nwhen I receive [start v]\nhide variable [end v]\nset [end v] to [no]\nset [level v] to [1]\nhide variable [level v]\nswitch costume to (level 1 v)\ngo to x: (0) y: (0)\nforever\n    if <(level) = [1]> then\n        set [end v] to [yes]\n        broadcast (end v)\n        stop [this script v]\n    end\nend\n\n@Thumbnail\n\nwhen flag clicked\nforever\n    hide\nend\n\ngo to x: (0) y: (0)\nshow\ngo to [front v] layer\n\n@coins\n\nwhen flag clicked\nhide\n\nwhen I receive [more money v]\nstart sound [smw_coin v]\nhide\nchange [score v] by (1)\n\nwhen I receive [next level v]\nforever\n    if <(level) = [2]> then\n        go to x: (0) y: (46)\n        show\n        if <touching (hitbox v)?> then\n            broadcast (more money v)\n            stop [this script v]\n        end\n    end\n    if <(level) = [3]> then\n        go to x: (36) y: (-100)\n        show\n        if <touching (hitbox v)?> then\n            broadcast (more money v)\n            stop [this script v]\n        end\n    end\n    if <(level) = [4]> then\n        go to x: (26) y: (-99)\n        show\n        if <touching (hitbox v)?> then\n            broadcast (more money v)\n            stop [this script v]\n        end\n    end\n    if <(level) = [5]> then\n        go to x: (11) y: (-15)\n        show\n        if <touching (hitbox v)?> then\n            broadcast (more money v)\n            stop [this script v]\n        end\n    end\n    if <(level) = [6]> then\n        go to x: (210) y: (60)\n        show\n        if <touching (hitbox v)?> then\n            broadcast (more money v)\n            stop [this script v]\n        end\n    end\n    if <(level) = [7]> then\n        go to x: (0) y: (150)\n        show\n        if <touching (hitbox v)?> then\n            broadcast (more money v)\n            stop [this script v]\n        end\n    end\n    if <(level) = [8]> then\n        go to x: (30) y: (150)\n        show\n        if <touching (hitbox v)?> then\n            broadcast (more money v)\n            stop [this script v]\n        end\n    end\n    if <(level) = [9]> then\n        go to x: (-30) y: (136)\n        show\n        if <touching (hitbox v)?> then\n            broadcast (more money v)\n            stop [this script v]\n        end\n    end\n    if <(level) = [10]> then\n        hide\n    end\nend\n\nwhen I receive [start v]\nshow\nset [score v] to [0]\nforever\n    if <(level) = [1]> then\n        show\n        go to x: (-10) y: (-104)\n        if <touching (hitbox v)?> then\n            broadcast (more money v)\n            stop [this script v]\n        end\n    end\nend\n\n@score\n\nwhen flag clicked\nhide\n\ndefine cloneCostume costume: (costume) xPos: (xpos) yPos: (ypos) lineSpace: (linespace)\nbroadcast (deleteClones v)\ngo to x: (xpos) y: (ypos)\nset [# v] to [1]\nrepeat (length of (costume))\n    look color: [0] brightness: [0] size: [100]\n    switch costume to (letter (#) of (costume))\n    create clone of (_myself_ v)\n    change x by ((linespace) * (size))\n    change [# v] by (1)\nend\nhide\n\nwhen I receive [deleteclones v]\ndelete this clone\n\nwhen I start as a clone\nforever\n    show\n    if <(end) = [yes]> then\n        stop [other scripts in sprite v]\n        hide\n        stop [this script v]\n    end\nend\n\ndefine look color: (color) brightness: (brightness) size: (size)\nclear graphic effects\nset [color v] effect to (color)\nset [brightness v] effect to (brightness)\nset size to (size) %\n\nwhen I receive [end v]\nforever\n    hide\nend\n\nwhen flag clicked\nforever\n    set [brightness v] effect to (100)\nend\n\nwhen I start as a clone\nforever\n    set [brightness v] effect to (100)\nend\n\nwhen I receive [start v]\nshow\nforever\n    cloneCostume costume: (score) xPos: [-220] yPos: [155] lineSpace: [0.25]\n    set [oldscore v] to (score)\n    wait until <not <(oldScore) = (score)>>\nend\n\n@hitbox\n\nwhen flag clicked\nhide\nforever\n    if <(player) = [madio]> then\n        switch costume to (madio hitbox v)\n    end\n    if <(player) = [pear]> then\n        switch costume to (pear hitbox v)\n    end\n    if <(player) = [luigee]> then\n        switch costume to (luigee hitbox v)\n    end\nend\n\nwhen I receive [start v]\nset [jump power v] to [9]\nset size to (700) %\nset [ghost v] effect to (100)\nshow\ngo to x: (-200) y: (50)\nset rotation style [left-right v]\nhide variable [y v]\nhide variable [x v]\nset [x v] to [0]\nset [y v] to [0]\nforever\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        change [x v] by (.5)\n    end\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        change [x v] by (-.5)\n    end\n    change x by (X)\n    set [x v] to ((X) * (0.9))\n    if <<touching color (#e2a56c)?> or <touching color (#73f171)?>> then\n        change y by (0.5)\n        if <<touching color (#e2a56c)?> or <touching color (#73f171)?>> then\n            change y by (0.5)\n            if <<touching color (#e2a56c)?> or <touching color (#73f171)?>> then\n                change y by (0.5)\n                if <<touching color (#e2a56c)?> or <touching color (#73f171)?>> then\n                    change y by (0.5)\n                    if <<touching color (#e2a56c)?> or <touching color (#73f171)?>> then\n                        change y by (0.5)\n                        if <<touching color (#e2a56c)?> or <touching color (#73f171)?>> then\n                            change y by (0.5)\n                            if <<touching color (#e2a56c)?> or <touching color (#73f171)?>> then\n                                change y by (0.5)\n                                if <<touching color (#e2a56c)?> or <touching color (#73f171)?>> then\n                                    change y by (0.5)\n                                    if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <key (space v) pressed?>>> then\n                                        if <[0] < (X)> then\n                                            set [x v] to [-7]\n                                        else\n                                            set [x v] to [7]\n                                        end\n                                        set [y v] to [10]\n                                    else\n                                        set [x v] to ((X) * (-1.3))\n                                        change x by (X)\n                                        set [x v] to [0]\n                                        change x by ((X) / (5))\n                                    end\n                                    change y by (-4)\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change [y v] by (-0.5)\n    change y by (Y)\n    if <<touching color (#73f171)?> or <touching color (#e2a56c)?>> then\n        set [y v] to ((Y) * (-0.25))\n        change y by (Y)\n        if <<touching color (#73f171)?> or <touching color (#e2a56c)?>> then\n            change y by (Y)\n            if <<touching color (#73f171)?> or <touching color (#e2a56c)?>> then\n                change y by (Y)\n                if <<touching color (#73f171)?> or <touching color (#e2a56c)?>> then\n                    change y by (Y)\n                end\n            end\n        end\n    end\n    change y by (-1)\n    if <<<key (w v) pressed?> or <<key (up arrow v) pressed?> or <key (space v) pressed?>>> and <<touching color (#73f171)?> or <touching color (#e2a56c)?>>> then\n        start sound [yt5s \(1\) v]\n        set [y v] to (jump power)\n    end\n    change y by (1)\n    if <(x position) > [239]> then\n        broadcast (next level v)\n        go to x: (-200) y: (50)\n    end\n    if <touching color (#d2364d)?> then\n        set [x v] to [0]\n        set [y v] to [0]\n        go to x: (-200) y: (50)\n        play sound [Die v] until done\n    end\n    if <<touching color (#ff7a49)?> and <(level) = [6]>> then\n        set [x v] to [0]\n        set [y v] to [0]\n        go to x: (208) y: (150)\n    end\nend\n\n@start button\n\nwhen flag clicked\nshow\ngo to x: (146) y: (39)\nswitch costume to (costume1 v)\nset size to (200) %\nforever\n    wait until <touching (mouse-pointer v)?>\n    Size [220] Speed [3]\n    wait until <not <touching (mouse-pointer v)?>>\n    Size [200] Speed [3]\nend\n\ndefine Size (size) Speed (speed)\nrepeat until <(round (size)) = (size)>\n    change size by (((size) - (size)) / (speed))\nend\n\nwhen this sprite clicked\nbroadcast (start v)\n\nwhen I receive [start v]\nhide\n\n@logo\n\nwhen flag clicked\nshow\ngo to x: (129) y: (116)\nforever\n    wait until <touching (mouse-pointer v)?>\n    Size [115] Speed [3]\n    wait until <not <touching (mouse-pointer v)?>>\n    Size [100] Speed [3]\nend\n\ndefine Size (size) Speed (speed)\nrepeat until <(round (size)) = (size)>\n    change size by (((size) - (size)) / (speed))\nend\n\nwhen I receive [start v]\nhide\n\nwhen flag clicked\nhide variable [player v]\nset [player v] to [madio]\nswitch costume to (madio v)\nforever\n    if <(costume [number v]) = [1]> then\n        set [player v] to [pear]\n    end\n    if <(costume [number v]) = [2]> then\n        set [player v] to [luigee]\n    end\n    if <(costume [number v]) = [3]> then\n        set [player v] to [madio]\n    end\nend\n\nwhen this sprite clicked\nnext costume\n\n@backround\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nshow\nset [brightness v] effect to (0)\ngo to x: (0) y: (0)\nforever\n    go to [back v] layer\n    repeat (2000)\n        change [brightness v] effect by (-.04)\n    end\n    repeat (2000)\n        change [brightness v] effect by (.04)\n    end\nend\n\n@mountains\n\nwhen I receive [next level v]\nnext costume\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to x: (0) y: (0)\ngo to [back v] layer\n\nwhen I receive [start v]\nnext costume\n\nwhen I receive [start v]\nshow\nset [brightness v] effect to (0)\ngo to x: (0) y: (0)\nforever\n    repeat (2000)\n        change [brightness v] effect by (-.04)\n    end\n    repeat (2000)\n        change [brightness v] effect by (.04)\n    end\nend\n\n@shop\n\nwhen flag clicked\nhide\ngo [backward v] (5) layers\nforever\n    if <(level) = [14]> then\n        show\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (30)\n    else\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen this sprite clicked\nrepeat (2)\n    broadcast (shop open v)\nend\n\n@Shop board\n\nwhen I receive [shop open v]\ngo to [front v] layer\ngo to x: (0) y: (0)\nshow\n\nwhen I receive [shop closed v]\nhide\n\nwhen flag clicked\nhide\n\n@jump upgrade\n\nwhen I receive [shop open v]\nshow\nswitch costume to (costume1 v)\nset size to (230) %\ngo to x: (-125) y: (0)\ngo to [front v] layer\n\nwhen I receive [shop closed v]\nhide\n\nwhen flag clicked\nhide\n\nbroadcast (shop open v)\n\nbroadcast (shop closed v)\n\nwhen this sprite clicked\nstop [other scripts in sprite v]\nset [jump power v] to [12]\nshow\ngo to [front v] layer\nswitch costume to (costume2 v)\n\n@Sprite1\n\nwhen I receive [shop open v]\nshow\n\nwhen I receive [shop closed v]\nhide\n\nwhen flag clicked\nhide\nforever\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (30)\n    else\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen this sprite clicked\nbroadcast (shop closed v)\n\nwhen flag clicked\nforever\n    go to [front v] layer\n    go to x: (205) y: (142)\nend\n\n