Neon Platformer
@Stage\n\nwhen flag clicked\nbroadcast (music v)\nset [mute v] to [0]\nforever\n    if <(mute) = [1]> then\n        set volume to (100) %\n        repeat (10)\n            change volume by (-10)\n        end\n        wait until <(mute) = [0]>\n    else\n        set volume to (0) %\n        repeat (10)\n            change volume by (10)\n        end\n        wait until <(mute) = [1]>\n    end\nend\n\nwhen I receive [music v]\nforever\n    set volume to (100) %\nend\n\nplay sound [\[Undertale Remix\] SharaX - Megalovania.mp3 v] until done\n\nwhen [m v] key pressed\nif <(mute) = [0]> then\n    set [mute v] to [1]\nelse\n    set [mute v] to [0]\nend\n\nwhen flag clicked\nforever\n    if <([costume # v] of [levels v]) = [31]> then\n        stop [other scripts in sprite v]\n        stop all sounds\n        forever\n            play sound [Waters of Megalovania v] until done\n        end\n    end\nend\n\nstop all sounds\n\nset [mute v] to [1]\n\nstop all sounds\n\nwhen flag clicked\nforever\nend\n\n@Sprite1\n\n@Player\n\nwhen flag clicked\ngo to x: (-200) y: (180)\nset [xv v] to [0]\nset [yv v] to [0]\nset [slope v] to [0]\nset [falling v] to [6]\nset [died? v] to [0]\nset [died by lava? v] to [0]\nset [power-up_time v] to [0]\nset size to (100) %\nforever\n    change [yv v] by (-1)\n    change [falling v] by (1)\n    change y by (yv)\n    touching ground <(yv) > [0]>\n    set [xv v] to ((xv) * (0.85))\n    if <(wall jump) > [0]> then\n        change [wall jump v] by (-1)\n    else\n        if <key (right arrow v) pressed?> then\n            change [xv v] by (1.5)\n        end\n        if <key (left arrow v) pressed?> then\n            change [xv v] by (-1.5)\n        end\n    end\n    if <(xv) > [0.5]> then\n        Walk (xv) (90)\n    else\n        if <[-0.5] > (xv)> then\n            Walk (xv) (-90)\n        end\n    end\n    if <key (up arrow v) pressed?> then\n        if <<(jump key?) = [0]> and <(falling) < [3]>> then\n            set [yv v] to ((15) + (((((100) - (size)) / (30)) * (3)) - (3)))\n            set [falling v] to [6]\n            set [jump key? v] to [1]\n        end\n    else\n        set [jump key? v] to [0]\n    end\n    if <(x position) > [235]> then\n        broadcast (next level v)\n    end\n    if <(y position) < [-178]> then\n        if <(died?) = [0]> then\n            set [died? v] to [1]\n            broadcast (fall v)\n        end\n        broadcast (death v)\n    end\n    if <(power-up_time) > [0]> then\n        change [power-up_time v] by (-1)\n    end\n    if <(power-up_time) > [0]> then\n        set size to (50) %\n    else\n        set size to (100) %\n    end\n    if <([costume # v] of [levels v]) = [20]> then\n        switch costume to (costume2 v)\n    else\n        switch costume to (costume1 v)\n    end\n    if <touching color (#cc0000)?> then\n        if <(died by lava?) = [0]> then\n            broadcast (lava v)\n        end\n        set [died by lava? v] to [1]\n        broadcast (death v)\n    end\nend\n\ndefine touching ground <up>\nrepeat until <not <touching color (#00ffff)?>>\n    if <up> then\n        change y by (-1)\n    else\n        change y by (1)\n        set [falling v] to [0]\n    end\n    set [yv v] to [0]\nend\n\nwhen I receive [next level v]\nset size to (100) %\ngo to x: (-200) y: (180)\nset [xv v] to [0]\nset [yv v] to [0]\nset [slope v] to [0]\nset [falling v] to [6]\nset [power-up_time v] to [0]\n\nwhen I receive [death v]\ngo to x: (-200) y: (180)\nset [xv v] to [0]\nset [yv v] to [0]\nset [slope v] to [0]\nset [falling v] to [6]\nset [power-up_time v] to [0]\n\ndefine Walk (speed) (direction)\npoint in direction (direction)\nchange x by (speed)\nset [slope v] to [0]\nrepeat until <<(slope) = [8]> or <not <touching color (#00ffff)?>>>\n    change y by (1)\n    change [slope v] by (1)\nend\nif <(slope) = [8]> then\n    if <touching color (#cc0000)?> then\n        broadcast (death v)\n    end\n    if <not <touching color (#003fff)?>> then\n        change x by (() - (speed))\n    end\n    change y by (() - (slope))\n    if <<key (up arrow v) pressed?> and <([abs v] of (speed) ) > [3]>> then\n        if <(wall jump) = [0]> then\n            set [xv v] to (() - (speed))\n            set [yv v] to [9]\n            set [falling v] to [0]\n            set [wall jump v] to [10]\n        else\n            set [xv v] to [0]\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [2]> then\n        broadcast (what are those v)\n        stop [this script v]\n    end\nend\n\nwhen I receive [go to x: 150 y: 100 v]\ngo to x: (150) y: (100)\n\n@Levels\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to x: (0) y: (0)\nset [level v] to [1]\nforever\n    set [visual v] to (join [Level ] (level))\n    hide variable [visual v]\n    show variable [visual v]\nend\n\nwhen I receive [next level v]\nchange [level v] by (1)\nswitch costume to (level)\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [14]> then\n        broadcast (lvl13 v)\n        stop [this script v]\n    end\nend\n\nwhen [space v] key pressed\nif <key (c v) pressed?> then\n    if <<(username) = [yummymuffins9978]> or <(username) = [yummymuffins8799]>> then\n        go to x: (0) y: (0)\n        broadcast (go to x: 150 y: 100 v)\n        set [level v] to [30]\n        switch costume to (costume30 v)\n    end\nend\n\n@Key1\n\nwhen flag clicked\nhide\nwait (1) seconds\nwait until <([costume # v] of [levels v]) = [7]>\nshow\ngo to x: (-125) y: (55)\nrepeat until <touching (player v)?>\n    show\n    go to x: (-125) y: (55)\nend\nbroadcast (keys v)\nhide\nbroadcast (show door1 v)\n\n@Door1\n\nwhen flag clicked\nhide\n\nwhen I receive [show door1 v]\ngo to x: (100) y: (42)\nshow\n\nwhen I receive [next level v]\nhide\n\n@Key2\n\nwhen flag clicked\nhide\nwait (1) seconds\nwait until <([costume # v] of [levels v]) = [8]>\nshow\ngo to x: (100) y: (-160)\nrepeat until <touching (player v)?>\n    show\n    go to x: (100) y: (-160)\nend\nhide\nbroadcast (show door2 v)\n\n@Door2\n\nwhen flag clicked\nhide\n\nwhen I receive [show door2 v]\ngo to x: (100) y: (42)\nshow\n\nwhen I receive [next level v]\nhide\n\n@Level/load\n\nwhen flag clicked\nhide\nwait (1) seconds\nwait until <([costume # v] of [levels v]) = [18]>\nwait (20) seconds\nshow\ngo to x: (0) y: (0)\nwait until <not <([costume # v] of [levels v]) = [18]>>\nhide\n\n@Power-up\n\nwhen flag clicked\nhide\nset [power-upped? v] to [0]\nwait (1) seconds\nwait until <([costume # v] of [levels v]) = [19]>\nrepeat until <touching (player v)?>\n    show\n    go to x: (-150) y: (25)\nend\nif <(power-upped?) = [0]> then\n    broadcast (shrink v)\nend\nset [power-upped? v] to [1]\nset [power-up_time v] to [450]\nhide\nwait until <([costume # v] of [levels v]) = [20]>\n\nwhen I receive [death v]\nif <([costume # v] of [levels v]) = [19]> then\n    repeat until <touching (player v)?>\n        show\n        go to x: (-150) y: (25)\n    end\n    set [power-up_time v] to [450]\n    hide\n    wait until <([costume # v] of [levels v]) = [20]>\nend\n\n@Achievement1\n\nwhen flag clicked\ngo to x: (0) y: (-190)\nhide\n\nwhen I receive [lava v]\nswitch costume to (costume2 v)\ncreate clone of (_myself_ v)\n\nwhen I receive [fall v]\nswitch costume to (costume1 v)\ncreate clone of (_myself_ v)\n\nwhen I receive [shrink v]\nswitch costume to (costume5 v)\ncreate clone of (_myself_ v)\n\nwhen I receive [lvl13 v]\nswitch costume to (costume4 v)\n\nwhen I receive [keys v]\nswitch costume to (costume6 v)\ncreate clone of (_myself_ v)\n\nwhen I receive [what are those v]\nswitch costume to (costume3 v)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\ngo to x: (0) y: (190)\nshow\nrepeat (10)\n    change y by (-4)\nend\nwait (5) seconds\nrepeat (10)\n    change y by (4)\nend\nhide\ngo to x: (0) y: (-190)\nhide\ndelete this clone\n\n
My 130th project!\n\nA game for all your sliding, jumping, wall jumping, UNDERTALE and rage quitting needs!\n\nIt is possible, its tested by me and I'm bad at platformers.\n\n30 levels + win level.\n\nFeel free to remix, but only if:\n1 - You actually change something.\n2 - You credit me\n3 - You don't steal views\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nblank spaces?