—• Platformer •—

Instructions:               »»————-  Platformer ————-««\n◦ Arrow keys to move\n » Right and left [arrows] for horizontal movement\n » Up arrow for for jumping [vertical movement]\n◦ You get one skip, so use it wisely!\n◦It may be a little rage-y so good luck >:D\n━━━━━━━━━━━━━━━━━━━━━━━━━\nI have started making more games recently, so feel free to comment suggestions for the next game I create ♡\n

@Stage\n\nwhen flag clicked\nforever\n    if <(lvl whatever) = [1]> then\n        repeat until <(lvl whatever) = [0]>\n            switch backdrop to (backdrop2 v)\n            wait (pick random (0.5) to (3)) seconds\n            repeat (pick random (1) to (2))\n                switch backdrop to (backdrop1 v)\n                wait (pick random (0.1) to (0.2)) seconds\n                switch backdrop to (backdrop2 v)\n                wait (pick random (0.1) to (0.2)) seconds\n            end\n        end\n    else\n        switch backdrop to (backdrop1 v)\n    end\nend\n\nwhen [c v] key pressed\nbroadcast (nxt lvl v)\n\n@Engine\n\nwhen flag clicked\nforever\n    if <touching color (#ffffff)?> then\n        set [yv v] to [12]\n    end\nend\n\ndefine Physics: X Movement: (xv) Jump Height: (jh) # Of Jumps: (jump#) Friction: (f) Gravity: (g) Bounciness (X, Y): (bx) (by) Slope: (s)\nif <(death) = [1]> then\n    set [slope v] to (s)\n    set [old yv v] to (YV)\n    change [yv v] by ((g) * (-1))\n    change y by (YV)\n    switch costume to (costume2 v)\n    if <touching (level v)?> then\n        repeat ([abs v] of (YV) )\n            change y by (((YV) / ([abs v] of (YV) )) * (-1))\n            die?\n        end\n        if <(YV) < [0]> then\n            set [#ofjumps v] to (jump#)\n            set [#ofjumpsused v] to [0]\n            die?\n        end\n        set [yv v] to [0]\n        set [yv v] to ((old yv) * ((by) * (-1)))\n        die?\n    end\n    if <<key (up arrow v) pressed?> and <<(#OfJumps) > [0]> and <(JumpKeyPressed?) = [0]>>> then\n        change [#ofjumpsused v] by (1)\n        change [#ofjumps v] by (-1)\n        change y by (1)\n        die?\n        set [yv v] to ((jh) - (#OfJumpsUsed))\n    end\n    if <key (up arrow v) pressed?> then\n        set [jumpkeypressed? v] to [1]\n    else\n        set [jumpkeypressed? v] to [0]\n    end\n    switch costume to (costume1 v)\n    change x by (XV)\n    repeat (slope)\n        if <touching (level v)?> then\n            change y by (1)\n            die?\n        end\n    end\n    if <touching (level v)?> then\n        change y by ((slope) * (-1))\n        repeat ([abs v] of (XV) )\n            change x by (((XV) / ([abs v] of (XV) )) * (-1))\n            die?\n        end\n        set [xv v] to ((round (XV)) * ((bx) * (-1)))\n    end\n    change [xv v] by ((<key (right arrow v) pressed?> * (xv)) + (<key (left arrow v) pressed?> * ((xv) * (-1))))\n    die?\n    set [xv v] to ((XV) * (f))\nelse\n    set [slope v] to (s)\n    set [old yv v] to (YV)\n    change [yv v] by ((g) * (-1))\n    change y by (YV)\n    die?\n    switch costume to (costume2 v)\n    if <touching (level v)?> then\n        repeat ([abs v] of (YV) )\n            change y by (((YV) / ([abs v] of (YV) )) * (-1))\n            die?\n        end\n        if <(YV) < [0]> then\n            set [#ofjumps v] to (jump#)\n            set [#ofjumpsused v] to [0]\n        end\n        set [yv v] to [0]\n        set [yv v] to ((old yv) * ((by) * (-1)))\n    end\n    if <<key (up arrow v) pressed?> and <<(#OfJumps) > [0]> and <(JumpKeyPressed?) = [0]>>> then\n        die?\n        change [#ofjumpsused v] by (1)\n        change [#ofjumps v] by (-1)\n        die?\n        change y by (1)\n        set [yv v] to ((jh) - (#OfJumpsUsed))\n    end\n    if <key (up arrow v) pressed?> then\n        set [jumpkeypressed? v] to [1]\n        die?\n    else\n        set [jumpkeypressed? v] to [0]\n    end\n    switch costume to (costume1 v)\n    change x by (XV)\n    repeat (slope)\n        if <touching (level v)?> then\n            die?\n            change y by (1)\n        end\n    end\n    if <touching (level v)?> then\n        change y by ((slope) * (-1))\n        repeat ([abs v] of (XV) )\n            change x by (((XV) / ([abs v] of (XV) )) * (-1))\n        end\n        set [xv v] to ((round (XV)) * ((bx) * (-1)))\n    end\n    change [xv v] by ((<key (left arrow v) pressed?> * (xv)) + (<key (right arrow v) pressed?> * ((xv) * (-1))))\n    set [xv v] to ((XV) * (f))\nend\n\nwhen flag clicked\nset [yv v] to [0]\nset [xv v] to [0]\ngo to x: (-211) y: (65)\nforever\n    Physics: X Movement: [2] Jump Height: [10] # Of Jumps: [2] Friction: [.8] Gravity: [1] Bounciness (X, Y): [1] [.5] Slope: [8]\nend\n\nwhen I receive [nxt lvl v]\ngo to x: (-211) y: (65)\n\nwhen flag clicked\nset [death v] to [1]\nset [wow u died v] to [0]\nforever\n    if <touching (bad boi v)?> then\n        go to x: (-211) y: (65)\n        broadcast (died v)\n        set [death v] to [1]\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (bounce boi v)?> then\n        set [yv v] to [12]\n    end\nend\n\ndefine die?\nif <touching (bad boi v)?> then\n    go to x: (-211) y: (65)\n    broadcast (died v)\n    set [death v] to [1]\nend\n\nwhen I receive [died v]\nchange [wow u died v] by (1)\nif <(wow u died) = [3]> then\n    broadcast (skip v)\nend\n\nwhen I receive [nxt lvl v]\nset [wow u died v] to [0]\n\n@level\n\nwhen flag clicked\nswitch costume to (lvl1 v)\n\nwhen I receive [nxt lvl v]\nwait (0.1) seconds\nnext costume\n\nwhen flag clicked\nset [lvl 3 v] to [0]\nforever\n    if <(costume [number v]) = [3]> then\n        set [lvl 3 v] to [1]\n    else\n        set [lvl 3 v] to [0]\n    end\nend\n\nwhen flag clicked\nset [lvl whatever v] to [0]\nforever\n    if <(costume [number v]) = [7]> then\n        set [lvl whatever v] to [1]\n    else\n        set [lvl whatever v] to [0]\n    end\nend\n\nwhen flag clicked\nset [this onee v] to [0]\nforever\n    if <(costume [number v]) = [8]> then\n        set [this onee v] to [1]\n    else\n        set [this onee v] to [0]\n    end\nend\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [9]> then\n        set [end v] to [1]\n    else\n        set [end v] to [0]\n    end\nend\n\n@Lvl completer\n\nwhen flag clicked\nshow\ngo to x: (220) y: (-71)\n\nwhen flag clicked\nforever\n    go to [back v] layer\n    if <touching (engine v)?> then\n        broadcast (nxt lvl v)\n    end\nend\n\nwhen flag clicked\nforever\n    glide (1) secs to x: (220) y: (-71)\n    glide (1) secs to x: (220) y: (-90)\nend\n\nwhen flag clicked\nforever\n    if <(end) = [1]> then\n        hide\n    else\n        show\n    end\nend\n\n@bad boi\n\nwhen flag clicked\ngo to [back v] layer\n\nwhen flag clicked\ngo to x: (37) y: (28)\nshow\nswitch costume to (costume1 v)\n\nwhen I receive [nxt lvl v]\nwait (0.1) seconds\nnext costume\n\nwhen flag clicked\nforever\n    if <(this onee) = [1]> then\n        repeat until <(this onee) = [0]>\n            glide (pick random (0.2) to (1)) secs to x: (37) y: (-149)\n            glide (1) secs to x: (37) y: (28)\n        end\n    else\n        go to x: (37) y: (28)\n    end\nend\n\n@Insults\n\nwhen flag clicked\nhide\n\nwhen I receive [died v]\nset [ghost v] effect to (0)\nswitch costume to (item (pick random (1) to (9)) of [insults v])\nshow\nwait (1.5) seconds\nrepeat (10)\n    wait (0.01) seconds\n    change [ghost v] effect by (10)\nend\nhide\n\nchange x by (-10)\n\n@Transition\n\nwhen flag clicked\nhide\nforever\n    go to [front v] layer\nend\n\nwhen I receive [nxt lvl v]\ngo to x: (-472) y: (370)\nshow\npoint in direction (135)\nforever\n    move (100) steps\nend\n\n@Star 1\n\nwhen I start as a clone\nshow\ngo to (random position v)\nrepeat (10)\n    wait (0.05) seconds\n    change [ghost v] effect by (10)\nend\ndelete this clone\n\nwhen flag clicked\nhide\nforever\n    create clone of (_myself_ v)\n    wait (pick random (1) to (3)) seconds\nend\n\nwhen flag clicked\nforever\n    go to [back v] layer\nend\n\nwhen I start as a clone\nforever\n    point in direction ((([sin v] of ((bounce2) + (-50)) ) * (5)) + (90))\n    set size to ((([sin v] of (bounce2) ) * (-5)) + (100)) %\n    change [bounce2 v] by (8)\nend\n\n@Star 2\n\nwhen I start as a clone\nshow\ngo to (random position v)\nrepeat (10)\n    wait (0.05) seconds\n    change [ghost v] effect by (10)\nend\ndelete this clone\n\nwhen flag clicked\nhide\nforever\n    create clone of (_myself_ v)\n    wait (pick random (0.5) to (2)) seconds\nend\n\nwhen flag clicked\nforever\n    go to [back v] layer\nend\n\nwhen I start as a clone\nforever\n    point in direction ((([sin v] of ((bounce2) + (-50)) ) * (5)) + (90))\n    set size to ((([sin v] of (bounce2) ) * (-5)) + (100)) %\n    change [bounce2 v] by (8)\nend\n\n@Level Name\n\nwhen flag clicked\nswitch costume to (costume1 v)\n\nwhen I receive [nxt lvl v]\nwait (0.1) seconds\nnext costume\n\nchange y by (-2)\nwait (0.1) seconds\n\nwhen flag clicked\nforever\n    glide (1) secs to x: (20) y: (50)\n    glide (1) secs to x: (20) y: (52)\nend\n\n@bounce boi\n\nwhen I receive [nxt lvl v]\nwait (0.1) seconds\nnext costume\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to [back v] layer\n\n@Soundboard\n\nwhen flag clicked\nset volume to (100) %\nforever\n    play sound [cute songs to help you cope with depression.mp3 v] until done\nend\n\nwhen I receive [nxt lvl v]\nplay sound [Ding v] until done\n\nwhen I receive [died v]\nplay sound [Hit_Hurt96 v] until done\n\nwhen I receive [actually skip v]\nplay sound [CrowdLaugh v] until done\n\n@Skip \n\nwhen flag clicked\nset [ghost v] effect to (0)\nswitch costume to (costume1 v)\nhide\nforever\n    if <touching (mouse-pointer v)?> then\n        switch costume to (costume2 v)\n    else\n        switch costume to (costume1 v)\n    end\nend\n\nwhen I receive [skip v]\nshow\n\nwhen I receive [nxt lvl v]\nhide\n\nwhen this sprite clicked\nbroadcast (nxt lvl v)\nbroadcast (actually skip v)\nset [ghost v] effect to (100)\n\n@Thumb\n\nwhen flag clicked\nhide\n\n@Thumb2\n\nwhen flag clicked\nhide\n\nset [ghost v] effect to (30)\n\n@Thumb3\n\nwhen flag clicked\nhide\n\n