Rainbow: A  Platformer

Instructions: GUYS THANKS SOOOOO MUCH FOR OVER 500 VIEWS AND OVER 50 HEARTS AND STARS!!!!!!\nRAINBOW: A PLATFORMER: Green flag spamming makes it work. Use the arrow keys to move. SPAM R to restart and s to skip. Pressing the heart and star button reduces lag, and it is lucky to follow me. Im gonna say it again: SPAM R IF GLITCH! The rest of the instructions are in the game. Thanks to @MarioBois for the restart and skip ideas. Thanks to @XXX_FIRE_XXX for the trail effect. Thank you to @turtlitherapper, @iloveprogram, and @fire_dragon321 for tips. Good Luck, and PLEASE leave a heart, star, or follow me. Thanks to @Patel_Dev3 for first remix!\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:) :) You found the secret link!\nhttps://scratch.mit.edu/projects/289068891/\nYAY

@Stage\n\nwhen flag clicked\nswitch backdrop to (mainscreen v)\n\nwhen flag clicked\nhide variable [lives v]\nhide variable [level v]\nforever\n    if <(Level) = [15]> then\n        switch backdrop to (dark land background v)\n    end\n    if <(Level) = [16]> then\n        switch backdrop to (dark land backdrop no words v)\n    end\nend\n\nwhen I receive [win v]\nswitch backdrop to (background v)\n\nwhen I receive [intro done v]\nswitch backdrop to (mainscreen v)\nwait (2) seconds\nswitch backdrop to (background v)\nshow variable [level v]\nshow variable [lives v]\nforever\n    play sound [501 \(race\) v] until done\nend\n\n@Rainbow Block\n\ndefine Jump Control\nif <key (up arrow v) pressed?> then\n    change y by (-1)\n    if <touching (platforms v)?> then\n        set [fallspeed v] to (TakeOffSpeed)\n    end\n    change y by (1)\nend\n\ndefine Controls\nif <key (right arrow v) pressed?> then\n    switch costume to (costume1 v)\n    change x by (RunSpeed)\n    if <touching (platforms v)?> then\n        change x by ((0) - (RunSpeed))\n    end\nend\nif <key (left arrow v) pressed?> then\n    switch costume to (costume2 v)\n    change x by ((0) - (RunSpeed))\n    if <touching (platforms v)?> then\n        change x by (RunSpeed)\n    end\nend\n\nwhen flag clicked\ngo to x: (-106) y: (-100)\nset [lives v] to [3]\nhide variable [level v]\nset [takeoffspeed v] to [12]\nset [runspeed v] to [5]\nset [gravity v] to [-1]\nset [fallspeed v] to [0]\nset [level v] to [1]\nforever\n    Jump Control\n    Simulate Gravity\n    Controls\nend\n\nwhen flag clicked\nchange [ghost v] effect by (25)\nforever\n    change [color v] effect by (5)\nend\n\nwhen flag clicked\nhide\n\ndefine Simulate Gravity\nchange y by (FallSpeed)\nif <touching (platforms v)?> then\n    if <(FallSpeed) < [0]> then\n        set [reversestep v] to [1]\n    else\n        set [reversestep v] to [-1]\n    end\n    repeat until <not <touching (platforms v)?>>\n        change y by (ReverseStep)\n    end\n    set [fallspeed v] to [0]\nelse\n    change [fallspeed v] by (Gravity)\nend\n\nwhen flag clicked\nforever\n    if <touching (portal v)?> then\n        go to x: (-106) y: (-100)\n        broadcast (Next Level v)\n        change [level v] by (1)\n        play sound [Teleport2 v] until done\n    end\n    if <touching (spikes!!! v)?> then\n        go to x: (-108) y: (-134)\n        change [lives v] by (-1)\n        play sound [Oops v] until done\n    end\n    if <touching (bouncy platform v)?> then\n        start sound [Big Boing v]\n        change y by (200)\n    end\n    if <touching (many bouncy platforms v)?> then\n        start sound [Big Boing v]\n        change y by (200)\n    end\n    if <key (r v) pressed?> then\n        go to x: (-106) y: (-100)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(Lives) < [1]> then\n        switch backdrop to (dark land backdrop no words v)\n        play sound [Lose v] until done\n        broadcast (DED v)\n        stop [this script v]\n    end\nend\n\nwhen [s v] key pressed\nbroadcast (Next Level v)\nchange [level v] by (1)\n\nwhen I receive [win v]\nstop [other scripts in sprite v]\n\nwhen I receive [intro done v]\nwait (2) seconds\nshow\n\nwhen I receive [bb start v]\nhide\n\nwhen flag clicked\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nrepeat (5)\n    change [ghost v] effect by (5)\nend\ndelete this clone\n\nwhen I receive [outro v]\nhide\n\n@Platforms\n\nwhen flag clicked\nchange [ghost v] effect by (25)\nswitch costume to (level 1 v)\nforever\n    go to x: (0) y: (0)\n    change [color v] effect by (5)\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [next level v]\nnext costume\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [5]> then\n        broadcast (DARK BLOCK TIME v)\n        speak [There are dangerous spikes in this wild land.]::tts\n        stop [this script v]\n    end\nend\n\nwhen I receive [win v]\nhide\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [20]> then\n        broadcast (BOSS BATTLE v)\n        stop [this script v]\n    end\nend\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [7]> then\n        speak [Ooh, bouncy! And more health!]::tts\n        stop [this script v]\n    end\nend\n\nwhen I receive [intro done v]\nwait (2) seconds\nshow\nset voice to (giant v)::tts\nspeak [Use the arrow keys to navigate the rainbow platformer.]::tts\n\nwhen I receive [bb start v]\nhide\n\nwhen I receive [outro v]\nhide\n\n@Portal\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nforever\n    if <(Level) = [14]> then\n        switch costume to (costume2 v)\n    end\n    if <(Level) = [15]> then\n        go to x: (30) y: (113)\n    end\n    if <(Level) = [19]> then\n        go to x: (215) y: (-112)\n    end\n    if <(Level) = [20]> then\n        hide\n    end\nend\n\nwhen I receive [intro done v]\nchange [ghost v] effect by (25)\nset size to (20) %\nwait (2) seconds\nswitch costume to (costume1 v)\nshow\ngo to x: (206) y: (-105)\nforever\n    turn right (5) degrees\n    change [color v] effect by (5)\nend\n\nwhen I receive [outro v]\nhide\n\n@SPIKES!!!\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\n\nwhen I receive [dark block time v]\nshow\nforever\n    if <(Level) = [5]> then\n        go to x: (36) y: (28)\n    end\n    if <(Level) = [6]> then\n        go to x: (-23) y: (19)\n    end\n    if <(Level) = [7]> then\n        switch costume to (costume2 v)\n        go to x: (24) y: (14)\n    end\n    if <(Level) = [8]> then\n        go to x: (-4) y: (124)\n        switch costume to (costume3 v)\n    end\n    if <(Level) = [9]> then\n        switch costume to (costume2 v)\n        go to x: (-67) y: (19)\n    end\n    if <(Level) = [10]> then\n        go to x: (116) y: (26)\n    end\n    if <(Level) = [11]> then\n        switch costume to (costume4 v)\n        go to x: (-67) y: (-124)\n    end\n    if <(Level) = [12]> then\n        switch costume to (costume1 v)\n        go to x: (-23) y: (29)\n    end\n    if <(Level) = [13]> then\n        switch costume to (costume5 v)\n        go to x: (-147) y: (16)\n        create clone of (_myself_ v)\n    end\n    if <(Level) = [14]> then\n        hide\n    end\n    if <(Level) = [16]> then\n        go to x: (-140) y: (113)\n        switch costume to (costume6 v)\n        show\n    end\n    if <(Level) = [17]> then\n        hide\n    end\n    if <(Level) = [18]> then\n        go to x: (-22) y: (-11)\n        switch costume to (costume1 v)\n        show\n    end\n    if <(Level) = [19]> then\n        go to x: (-86) y: (-126)\n        switch costume to (costume3 v)\n    end\n    if <(Level) = [20]> then\n        hide\n    end\nend\n\nwhen I start as a clone\ngo to x: (25) y: (16)\nforever\n    if <(Level) = [14]> then\n        delete this clone\n    end\nend\n\nshow\n\nwhen I receive [outro v]\nhide\n\n@Bouncy Platform\n\nwhen flag clicked\nhide\n\nwhen I receive [dark block time v]\nforever\n    if <(Level) = [7]> then\n        show\n        go to x: (25) y: (210)\n    end\n    if <(Level) = [8]> then\n        hide\n    end\nend\n\nwhen I receive [outro v]\nhide\n\n@SPECIAL FLAG\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\nforever\n    if <(Level) = [7]> then\n        show\n        go to x: (58) y: (143)\n        wait (1) seconds\n        start sound [Teleport v]\n        change [lives v] by (2)\n        hide\n        stop [this script v]\n    end\nend\n\nwhen flag clicked\nforever\n    if <(Level) = [17]> then\n        show\n        switch costume to (costume2 v)\n        go to x: (-26) y: (-141)\n        wait (4) seconds\n        start sound [Teleport v]\n        change [lives v] by (5)\n        hide\n        stop [this script v]\n    end\nend\n\nwhen I receive [outro v]\nhide\n\n@Many bouncy platforms\n\nwhen flag clicked\nhide\n\nwhen I receive [dark block time v]\nforever\n    if <(Level) = [8]> then\n        go to [front v] layer\n        go to x: (30) y: (-89)\n        show\n    end\n    if <(Level) = [9]> then\n        hide\n    end\nend\n\nwhen I receive [outro v]\nhide\n\n@BOSS\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide variable [boss health v]\nset [boss health v] to [150]\nhide\n\nwhen I receive [boss battle v]\ngo to x: (62) y: (1)\nshow\nshow variable [boss health v]\nsay [I am almost undefeatable!] for (2) seconds\nsay [The only thing that can hurt me is a blue bomb, but I will kill you first.] for (5) seconds\nsay [You better not shoot a bomb at me by pressing space!] for (3) seconds\nsay [Now I will get you!] for (2) seconds\nbroadcast (BB START v)\nforever\n    if <touching (bb v)?> then\n        change [boss health v] by (-1)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(BOSS HEALTH) < [1]> then\n        broadcast (WIN v)\n        stop [other scripts in sprite v]\n        say [Argh!] for (2) seconds\n        say [Oh no.. My power is fading..] for (2) seconds\n        say [NOOOO!] for (2) seconds\n        go to x: (-8) y: (-17)\n        switch costume to (costume2 v)\n        wait (2) seconds\n        broadcast (WIN SCREEN v)\n        hide\n        stop [this script v]\n    end\nend\n\nwhen I receive [bb start v]\nforever\n    glide (1.60) secs to (rainbow man shooter v)\nend\n\nwhen I receive [outro v]\nhide\n\n@Rainbow man shooter\n\nwhen flag clicked\nhide\nforever\n    if <touching (boss v)?> then\n        start sound [Oops v]\n        change [lives v] by (-1)\n        go to (random position v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <key (down arrow v) pressed?> then\n        change y by (-5)\n    end\n    if <key (up arrow v) pressed?> then\n        change y by (5)\n    end\n    if <key (left arrow v) pressed?> then\n        change x by (-5)\n    end\n    if <key (right arrow v) pressed?> then\n        change x by (5)\n    end\nend\n\nwhen I receive [win v]\nstop [other scripts in sprite v]\n\nwhen I receive [bb start v]\nshow\n\nwhen flag clicked\nchange [ghost v] effect by (15)\nforever\n    change [color v] effect by (5)\nend\n\nwhen I receive [win screen v]\nhide\n\nwhen I receive [outro v]\nhide\n\n@BB\n\nwhen flag clicked\nhide\n\nwhen I receive [bb start v]\ngo to (rainbow man shooter v)\nshow\nforever\n    if <key (space v) pressed?> then\n        glide (1) secs to (boss v)\n        go to (rainbow man shooter v)\n    end\nend\n\nwhen I receive [win v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [outro v]\nhide\n\n@YOU WIN/LOSE\n\nwhen flag clicked\nhide\n\nwhen I receive [ded v]\nshow\nswitch backdrop to (dark land backdrop no words v)\nswitch costume to (costume1 v)\nwait (2) seconds\nbroadcast (OUTRO v)\nhide\n\nwhen I receive [win screen v]\nshow\nswitch backdrop to (dark land backdrop no words v)\nswitch costume to (costume2 v)\nwait (2) seconds\nbroadcast (OUTRO v)\nhide\n\n@Outro\n\nwhen flag clicked\nhide\n\nwhen I receive [outro v]\ngo to x: (0) y: (146)\nset size to (120) %\nshow\nstart sound [burning v]\nswitch costume to (cooltext355159441325618 v)\nwait (0.5) seconds\nswitch costume to (cooltext355159528447931 v)\nstart sound [recording1 v]\nset size to (95) %\nwait (0.5) seconds\nbroadcast (GLIDE v)\nstart sound [30-SECONDS-2019-12-29_-_Feeling_The_Best_-_FesliyanStudios v]\nforever\n    switch costume to (yee1 v)\n    wait (0.09) seconds\n    switch costume to (yee2 v)\n    wait (0.09) seconds\n    switch costume to (yee3 v)\n    wait (0.09) seconds\n    switch costume to (yee4 v)\n    wait (0.09) seconds\n    switch costume to (yee5 v)\n    wait (0.09) seconds\n    switch costume to (yee4 v)\n    wait (0.09) seconds\n    switch costume to (yee3 v)\n    wait (0.09) seconds\n    switch costume to (yee2 v)\n    wait (0.09) seconds\nend\n\nwhen I receive [glide v]\nforever\n    glide (1) secs to x: (-35) y: (19)\n    glide (1) secs to x: (11) y: (19)\n    glide (1) secs to x: (51) y: (19)\n    glide (1) secs to x: (11) y: (19)\nend\n\n@New Intro\n\nwhen flag clicked\nshow\nstart sound [Stinger_3-2020-05-04_-_Silly_Bank_Heist_-_www v]\nswitch costume to (costume1 v)\nrepeat (15)\n    wait (0.2) seconds\n    next costume\nend\nstart sound [recording1 v]\nwait (3) seconds\nbroadcast (INTRO DONE v)\nhide\n\n