Rain || A Platformer 

Instructions: Welcome to another Platformer. Enjoy!! ( ͡° ͜ʖ ͡°) \n\nInstructions:\nThere’s 8 levels (all possible)\nAvoid Spikes\n\nPlease ❤️,⭐️ and follow for more Platformers..... ( ͡° ͜ʖ ͡°)

@Stage\n\n@Thumbnail \n\nwhen flag clicked\nforever\n    set [ghost v] effect to (100)\n    go to [front v] layer\nend\n\nwhen I receive [start2 v]\nplay sound [Music v] until done\n\n@Player\n\nwhen flag clicked\nforever\n    go to [front v] layer\nend\n\nwhen flag clicked\nforever\n    if <<key (right arrow v) pressed?> or <key (left arrow v) pressed?>> then\n        create clone of (_myself_ v)\n    end\n    if <key (up arrow v) pressed?> then\n        create clone of (_myself_ v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (spikes v)?> then\n        go to x: (-215) y: (-80)\n        play sound [Roblox_Death_Sound_Effect\[ytc.plus\].mp3 v] until done\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [start2 v]\nshow\ngo to x: (-215) y: (-80)\nforever\n    if <key (right arrow v) pressed?> then\n        change [xv v] by (1)\n    end\n    if <key (left arrow v) pressed?> then\n        change [xv v] by (-1)\n    end\n    set [xv v] to ((Xv) * (0.9))\n    change x by (Xv)\n    if <touching (level v)?> then\n        change y by (1)\n        if <touching (level v)?> then\n            change y by (1)\n            if <touching (level v)?> then\n                change y by (1)\n                if <touching (level v)?> then\n                    change y by (1)\n                    if <touching (level v)?> then\n                        change y by (1)\n                        if <touching (level v)?> then\n                            change x by ((Xv) * (-1))\n                            if <key (up arrow v) pressed?> then\n                                if <(Xv) > [0]> then\n                                    set [xv v] to [-5]\n                                else\n                                    set [xv v] to [5]\n                                end\n                                set [yv v] to [10]\n                            else\n                                set [xv v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change [yv v] by (-1)\n    change y by (Yv)\n    if <touching (level v)?> then\n        change y by ((Yv) * (-1))\n        set [yv v] to [0]\n    end\n    change y by (-1)\n    if <touching (level v)?> then\n        if <key (up arrow v) pressed?> then\n            set [yv v] to [15]\n        end\n    end\n    change y by (-1)\nend\n\nwhen flag clicked\nforever\n    if <(x position) > [227]> then\n        change [level v] by (1)\n        go to x: (-215) y: (-80)\n    end\nend\n\nwhen flag clicked\nset [level v] to [0]\n\nwhen I start as a clone\nswitch costume to (costume3 v)\nset [ghost v] effect to (0)\nset size to (100) %\nrepeat (15)\n    change size by (-3)\n    change [ghost v] effect by (10)\nend\ndelete this clone\n\n@Level\n\nwhen flag clicked\nhide\n\nwhen I receive [start2 v]\nshow\n\nwhen I receive [start2 v]\nforever\n    if <(Level) = [0]> then\n        switch costume to (costume1 v)\n    end\n    if <(Level) = [1]> then\n        switch costume to (costume2 v)\n    end\n    if <(Level) = [2]> then\n        switch costume to (costume3 v)\n    end\n    if <(Level) = [3]> then\n        switch costume to (costume4 v)\n    end\n    if <(Level) = [4]> then\n        switch costume to (costume5 v)\n    end\n    if <(Level) = [5]> then\n        switch costume to (costume6 v)\n    end\n    if <(Level) = [6]> then\n        switch costume to (costume7 v)\n    end\n    if <(Level) = [7]> then\n        switch costume to (costume8 v)\n    end\nend\n\nnext costume\n\n@Clouds\n\nwhen I start as a clone\nshow\ngo to x: (400) y: (pick random (60) to (160))\nswitch costume to (pick random (1) to (3))\nset size to (80) %\nchange [ghost v] effect by (pick random (25) to (75))\nrepeat until <(x position) < [-200]>\n    change x by (pick random (-1) to (-4))\nend\ndelete this clone\n\nwhen I receive [start2 v]\nhide\ngo to [back v] layer\ngo [forward v] (3) layers\nwait (0.01) seconds\nforever\n    wait (1.5) seconds\n    create clone of (_myself_ v)\nend\n\nwhen I receive [start2 v]\nforever\n    wait (pick random (5) to (8)) seconds\n    play sound (pick random (1) to (2)) until done\nend\n\n@Decorations\n\nwhen flag clicked\nhide\n\nwhen I receive [start2 v]\nshow\n\nwhen I receive [start2 v]\nforever\n    if <(Level) = [0]> then\n        switch costume to (costume2 v)\n    end\n    if <(Level) = [1]> then\n        switch costume to (costume3 v)\n    end\n    if <(Level) = [2]> then\n        switch costume to (costume4 v)\n    end\n    if <(Level) = [3]> then\n        switch costume to (costume5 v)\n    end\n    if <(Level) = [4]> then\n        switch costume to (costume6 v)\n    end\n    if <(Level) = [5]> then\n        switch costume to (costume7 v)\n    end\n    if <(Level) = [6]> then\n        switch costume to (costume8 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(Level) = [7]> then\n        hide\n    end\nend\n\n@Rain\n\nwhen I start as a clone\nshow\ngo to [back v] layer\nchange [brightness v] effect by (pick random (0) to (50))\nset [ghost v] effect to (45)\nswitch costume to (pick random (1) to (2))\ngo to x: (pick random (-240) to (240)) y: (180)\nrepeat until <(y position) = [-180]>\n    change y by (-12)\nend\ndelete this clone\n\nwhen flag clicked\ngo to [back v] layer\nhide\n\nwhen I receive [start2 v]\nforever\n    create clone of (_myself_ v)\n    create clone of (_myself_ v)\n    create clone of (_myself_ v)\n    wait (pick random (0) to (.05)) seconds\nend\n\nwhen I receive [start2 v]\nforever\n    play sound [The-sound-of-rain v] until done\nend\n\n@Spikes\n\nwhen flag clicked\nhide\n\nwhen I receive [start2 v]\nshow\n\nwhen I receive [start2 v]\nshow\nforever\n    if <(Level) = [0]> then\n        switch costume to (costume1 v)\n    end\n    if <(Level) = [1]> then\n        switch costume to (costume2 v)\n    end\n    if <(Level) = [2]> then\n        switch costume to (costume3 v)\n    end\n    if <(Level) = [3]> then\n        switch costume to (costume4 v)\n    end\n    if <(Level) = [4]> then\n        switch costume to (costume5 v)\n    end\n    if <(Level) = [5]> then\n        switch costume to (costume6 v)\n    end\n    if <(Level) = [6]> then\n        switch costume to (costume7 v)\n    end\nend\n\n@Intro4\n\nwhen flag clicked\npoint in direction (90)\nrepeat (12)\n    turn left (30) degrees\nend\n\nwhen flag clicked\nshow\ngo to x: (0) y: (-300)\nglide (.3) secs to x: (0) y: (0)\n\nwhen flag clicked\nset size to (100) %\nwait (.45) seconds\nrepeat (10)\n    change size by (6)\nend\nrepeat until <(timer) > [4]>\n    repeat (10)\n        change size by (-6)\n    end\n    repeat (10)\n        change size by (6)\n    end\nend\n\nwhen I receive [start v]\nstop [other scripts in sprite v]\nrepeat (20)\n    change [ghost v] effect by (5)\nend\nhide\nbroadcast (Start2 v)\ndelete this clone\n\nwhen flag clicked\ngo to [front v] layer\n\n@Intro1\n\nwhen flag clicked\npoint in direction (90)\nrepeat (12)\n    turn left (30) degrees\nend\n\nwhen flag clicked\ngo to x: (223) y: (0)\nrepeat (12)\n    glide (.3) secs to x: (0) y: (0)\nend\n\nwhen flag clicked\nset [times dead v] to [0]\nset [levels passed without death v] to [0]\nshow\nreset timer\nset [my variable v] to [0]\nset size to (100) %\nwait (.45) seconds\nbroadcast (1 v)\nrepeat (10)\n    change [my variable v] by (1)\n    change size by (my variable)\nend\nrepeat until <(timer) > [4]>\n    repeat (20)\n        change [my variable v] by (-1)\n        change size by (my variable)\n    end\n    repeat (20)\n        change [my variable v] by (1)\n        change size by (my variable)\n    end\nend\nbroadcast (2 v)\n\nwhen I start as a clone\nrepeat (50)\n    change size by (5)\n    change [ghost v] effect by (2)\nend\ndelete this clone\n\nwhen flag clicked\nset size to (100) %\nwait (.45) seconds\nrepeat until <(timer) > [4]>\n    create clone of (_myself_ v)\n    wait (0.6) seconds\nend\n\nwhen flag clicked\nset volume to (100) %\nreset timer\nset [my variable v] to [0]\nset size to (100) %\nwait (.45) seconds\nstart sound [Fingerdash v]\nwait until <(timer) > [9.5]>\nrepeat (16)\n    change volume by (-5)\nend\nrepeat (20)\n    change volume by (-1)\nend\nstop all sounds\nbroadcast (Start v)\n\nwhen flag clicked\nerase all\n\nwhen I receive [start v]\nstop [other scripts in sprite v]\nrepeat (20)\n    change [ghost v] effect by (5)\nend\nhide\ndelete this clone\n\nset [everything unlocked code: v] to [1111111111011111011111111111]\n\nwhen I receive [start v]\nset [#playing v] to [0]\n\nwhen I receive [level setup v]\nset [#playing v] to [1]\n\nwhen I receive [start2 v]\nset [#playing v] to [0]\n\nwhen flag clicked\nshow\n\n@Intro3\n\nwhen flag clicked\nset size to (300) %\ngo to x: (0) y: (0)\npoint in direction (75)\nhide\nrepeat (10)\n    create clone of (_myself_ v)\n    turn left (15) degrees\nend\n\nwhen I receive [2 v]\nset [momentum v] to (pick random (10) to (15))\nset [yv v] to (pick random (2) to (3))\nchange size by (pick random (-150) to (0))\nchange [brightness v] effect by (pick random (-20) to (20))\nturn right (pick random (-10) to (10)) degrees\nshow\nrepeat until <touching (_edge_ v)?>\n    go to [back v] layer\n    move (Momentum) steps\n    change y by (Yv)\n    change [yv v] by (-0.4)\n    set [momentum v] to ((Momentum) * (0.95))\nend\nhide\ndelete this clone\n\nwhen I receive [start v]\nstop [other scripts in sprite v]\nrepeat (20)\n    change [ghost v] effect by (5)\nend\nhide\ndelete this clone\n\n