Orbit || A 360 degrees platformer

Instructions: WOW!!! 130 views, 49 loves and 39 favs in only 2 days!!!! Thanks a lot!!!!!!\n\nIt may have some bugs because its my first 360 degrees platformer. \n\nHi, and welcome to orbit!!!!!!!! A 360 degrees platformer. I hope you like this project.\nThis is my first 360 degrees platformer.\nPlease love, favorite and follow me for more awesome games like this!!!!\n\nControls - \nArrow keys to move(mobile friendly)\nDon't touch lava or spikes.\nThanks for playing!!!\n\n\nCredits - \n@pranavhaha for the engine.\nThanks to @StratfordJames for the backdrop.\nOthers everything be me. Thanks again.\nYou can remind me if I didn't give credit to someone!

@Stage\n\nwhen I receive [play v]\nswitch backdrop to (play v)\nforever\n    play sound [Music - You can change this! v] until done\nend\n\nwhen flag clicked\nbroadcast (play v)\n\n@land 360\n\ndefine Set hack size to (size)\nswitch costume to (size hack v)\nset size to (size) %\nswitch costume to (costume1 v)\n\nwhen I receive [lag free cam set v]\nset x to (cam x)\n\nwhen I receive [play v]\nforever\n    if <key (right arrow v) pressed?> then\n        if <[-25] > (cam x)> then\n            change [cam x v] by (((-25) - (cam x)) * (0.05))\n        else\n            change [cam x v] by (-1)\n        end\n    end\n    if <key (left arrow v) pressed?> then\n        if <(cam x) > [25]> then\n            change [cam x v] by (((25) - (cam x)) * (0.05))\n        else\n            change [cam x v] by (1)\n        end\n    end\n    if <not <<<key (right arrow v) pressed?> and <(r) = [0]>> or <<key (left arrow v) pressed?> and <(l) = [0]>>>> then\n        change [cam x v] by (((0) - (cam x)) * (0.05))\n    end\n    broadcast (lag free cam set v)\nend\n\nwhen I receive [play v]\nshow\npoint in direction (90)\ngo to x: (0) y: (-600)\nSet hack size to [500]\nset [d vel v] to [0]\nset [y vel v] to [0]\nforever\n    if <(m) = [t]> then\n        change [y vel v] by (1)\n        if <<<key (d v) pressed?> or <key (right arrow v) pressed?>> or <(r) = [1]>> then\n            change [d vel v] by (-0.2)\n        end\n        if <<<key (a v) pressed?> or <key (left arrow v) pressed?>> or <(l) = [1]>> then\n            change [d vel v] by (0.2)\n        end\n        set [d vel v] to ((d vel) * (0.8))\n        turn right (d vel) degrees\n        if <touching (player v)?> then\n            change y by (-1)\n            if <touching (player v)?> then\n                change y by (-1)\n                if <touching (player v)?> then\n                    change y by (-1)\n                    if <touching (player v)?> then\n                        change y by (-1)\n                        if <touching (player v)?> then\n                            change y by (4)\n                            if <(winnnnnnnn) = [true]> then\n                                broadcast (win v) and wait\n                                stop [this script v]\n                            end\n                            turn right ((d vel) * (-1)) degrees\n                            set [d vel v] to [0]\n                        end\n                    end\n                end\n            end\n        end\n        change y by (y vel)\n        if <touching (player v)?> then\n            change y by ((y vel) * (-1))\n            set [y vel v] to [0]\n        end\n        change y by (1)\n        if <touching (player v)?> then\n            if <<<key (w v) pressed?> or <<key (space v) pressed?> or <key (up arrow v) pressed?>>> or <(u) = [1]>> then\n                start sound [Jump v]\n                set [y vel v] to [-14]\n            end\n        end\n        change y by (-1)\n    end\nend\n\nwhen I receive [respawn v]\npoint in direction (90)\ngo to x: (0) y: (-600)\nset [d vel v] to [0]\nset [y vel v] to [0]\n\nwhen flag clicked\nset [winnnnnnnn v] to [false]\n\nwhen I receive [win v]\nhide\n\nwhen I receive [win v]\nhide\nstop [other scripts in sprite v]\n\nwhen I receive [win v]\nhide\nstop [other scripts in sprite v]\n\n@Text\n\ndefine Set hack size to (size)\nswitch costume to (size hack v)\nset size to (size) %\nswitch costume to (costume1 v)\n\nwhen I receive [play v]\nshow\ngo to [back v] layer\npoint in direction (90)\ngo to x: (-10) y: (-600)\nSet hack size to [500]\nforever\n    go to (land 360 v)\n    point in direction ([direction v] of [land 360 v])\nend\n\nwhen I receive [win v]\nhide\nstop [other scripts in sprite v]\n\n@back ground\n\nwhen I receive [play v]\nshow\npoint in direction (90)\nset size to (500) %\nforever\n    go to x: (([x position v] of [player v]) * (0.8)) y: (([y position v] of [land 360 v]) * (0.1))\nend\n\nwhen flag clicked\nforever\n    go to [back v] layer\nend\n\nwhen I receive [win v]\nhide\nstop [other scripts in sprite v]\n\n@Danger\n\ndefine Set hack size to (size)\nswitch costume to (size hack v)\nset size to (size) %\nswitch costume to (costume1 v)\n\nwhen I receive [play v]\nshow\ngo to [back v] layer\npoint in direction (90)\ngo to x: (-10) y: (-600)\nSet hack size to [500]\nforever\n    go to (land 360 v)\n    point in direction ([direction v] of [land 360 v])\nend\n\nwhen I receive [win v]\nhide\n\nwhen I receive [win v]\nhide\nstop [other scripts in sprite v]\n\nwhen I receive [win v]\nhide\nstop [other scripts in sprite v]\n\n@You won\n\nwhen I receive [win v]\nswitch costume to (costume1 v)\ncreate clone of (_myself_ v)\nswitch costume to (costume2 v)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\ngo to [front v] layer\nshow\nif <(costume [number v]) = [1]> then\n    go to x: (0) y: (100)\n    repeat (25)\n        change y by (((-100) - (y position)) * (0.10))\n    end\nend\nif <(costume [number v]) = [2]> then\n    go to x: (0) y: (-200)\n    repeat (50)\n        change y by (((250) - (y position)) * (0.1))\n    end\n    stop [this script v]\nend\n\nwhen flag clicked\nhide\n\n@Mobile freindly\n\nwhen I receive [play v]\ngo to x: (0) y: (0)\nswitch costume to (up v)\ncreate clone of (_myself_ v)\nrepeat (2)\n    next costume\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nshow\nset [ghost v] effect to (100)\nforever\n    if <<touching (mouse-pointer v)?> and <mouse down?>> then\n        if <(costume [number v]) = [1]> then\n            set [u v] to [1]\n        end\n        if <(costume [number v]) = [2]> then\n            set [l v] to [1]\n        end\n        if <(costume [number v]) = [3]> then\n            set [r v] to [1]\n        end\n    else\n        if <(costume [number v]) = [1]> then\n            set [u v] to [0]\n        end\n        if <(costume [number v]) = [2]> then\n            set [l v] to [0]\n        end\n        if <(costume [number v]) = [3]> then\n            set [r v] to [0]\n        end\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [win v]\nhide\nstop [other scripts in sprite v]\n\n@player\n\nwhen I receive [lag free cam set v]\nset x to (cam x)\n\nwhen I receive [play v]\nshow\nclear graphic effects\nforever\n    set x to (cam x)\n    if <touching (danger v)?> then\n        set [m v] to [f]\n        create clone of (_myself_ v)\n        repeat (20)\n            change [brightness v] effect by (5)\n        end\n        broadcast (respawn v) and wait\n    end\nend\n\nwhen I receive [respawn v]\npoint in direction (90)\nrepeat (10)\n    change [ghost v] effect by (-5)\nend\nset [m v] to [t]\nclear graphic effects\n\nwhen I receive [play v]\nforever\n    if <not <key (any v) pressed?>> then\n        switch costume to (normal v)\n    end\n    if <[0] > (y vel)> then\n        switch costume to (up v)\n    end\n    if <<<key (d v) pressed?> or <key (right arrow v) pressed?>> or <(r) = [1]>> then\n        switch costume to (right v)\n    end\n    if <<<key (a v) pressed?> or <key (left arrow v) pressed?>> or <(l) = [1]>> then\n        switch costume to (left v)\n    end\n    if <<key (w v) pressed?> or <<key (up arrow v) pressed?> or <(u) = [1]>>> then\n        switch costume to (up v)\n    end\n    if <<<<key (w v) pressed?> and <key (d v) pressed?>> or <<key (up arrow v) pressed?> and <key (right arrow v) pressed?>>> or <<(u) = [1]> and <(r) = [1]>>> then\n        switch costume to (up and right v)\n    end\n    if <<<<key (w v) pressed?> and <key (a v) pressed?>> or <<key (up arrow v) pressed?> and <key (left arrow v) pressed?>>> or <<(l) = [1]> and <(u) = [1]>>> then\n        switch costume to (up and left v)\n    end\nend\n\nwhen flag clicked\nset [m v] to [f]\npoint in direction (90)\nbroadcast (respawn v)\n\nwhen I receive [play v]\nwait until <<([direction v] of [land 360 v]) < [112]> and <([direction v] of [land 360 v]) > [102]>>\nbroadcast (win v) and wait\nstop [other scripts in sprite v]\n\nwhen I start as a clone\nrepeat (10)\n    change y by (5)\n    turn left (1) degrees\n    change [ghost v] effect by (10)\n    set [brightness v] effect to (0)\nend\ndelete this clone\n\nwhen I receive [play v]\nforever\n    change y by (-2)\n    change y by (2)\nend\n\nwhen flag clicked\nif <(me?) = [0]> then\n    change [☁ views v] by (1)\n    set [me? v] to [1]\nend\n\nwhen flag clicked\nwait until <touching (portal v)?>\nset [winnnnnnnn v] to [true]\n\nwhen I receive [win v]\nhide\nstop [other scripts in sprite v]\n\n@ThumbNail\n\nwhen flag clicked\nforever\n    go to x: (0) y: (0)\n    go to [front v] layer\n    show\n    set [ghost v] effect to (100)\nend\n\n