✰ Space || A Rotating Platformer ✰

Instructions:            ✰ Space ||  A Rotating Platformer ✰\n\n✰ Arrow keys, WASD or mobile to move\n✰ Avoid spikes\n✰ Enjoy the three levels\n✰ Love, fave, remix and follow for more!

@Stage\n\n@NireDrov Super\n\nwhen flag clicked\nswitch costume to (niredrov super v)\nclear graphic effects\nset size to (100) %\ngo to [front v] layer\nshow\nwait (2.5) seconds\nrepeat (100)\n    wait (0.000000000001) seconds\n    change [whirl v] effect by (50)\n    change [ghost v] effect by (1)\nend\nbroadcast (play v)\nswitch costume to (niredrov super2 v)\nhide\n\nwhen flag clicked\nhide variable [end name v]\nset [end name v] to (join [Thanks for playing, ] (join (username) [!]))\n\nwhen I receive [yes i win hahahahahaha v]\nshow variable [end name v]\n\n@mess\n\nwhen flag clicked\nhide\n\nwhen I receive [next level v]\ngo to [front v] layer\nswitch costume to (levelup v)\nclear graphic effects\nshow\nwait (0.5) seconds\nrepeat (60)\n    change [ghost v] effect by (2)\nend\nhide\n\nwhen I receive [oops v]\ngo to [front v] layer\nswitch costume to (ouch v)\nclear graphic effects\nshow\nwait (0.5) seconds\nrepeat (60)\n    change [ghost v] effect by (2)\nend\nhide\n\n@RotatePlayer\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 [lag free cam set v]\nset x to (cam x)\n\nwhen I receive [play v]\nclear graphic effects\nforever\n    set x to (cam x)\n    if <touching (enemy v)?> then\n        set [m v] to [f]\n        broadcast (OOPS v)\n        start sound [Bonk 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 [brightness v] effect by (-5)\nend\nset [m v] to [t]\nclear graphic effects\n\nwhen I receive [play v]\nReadyyy, go!\n\nwhen flag clicked\nset [m v] to [f]\npoint in direction (90)\nbroadcast (respawn v)\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 I receive [play v]\nplay sound [Dun Dun Dunnn v] until done\nforever\n    play sound [Space Ambience v] until done\nend\n\nwhen flag clicked\nforever\n    wait until <touching (portal v)?>\n    start sound [Magic Spell v]\n    broadcast (next level v) and wait\nend\n\nwhen I receive [play v]\nGO MOBILE!!!!\n\ndefine Mobile Play\nforever\n    forever\n        forever\n            forever\n                forever\n                    forever\n                        if <not <mouse down?>> 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 <<mouse down?> and <(mouse x) > [10]>> then\n                            switch costume to (right v)\n                        end\n                        if <<mouse down?> and <(mouse x) < [-10]>> then\n                            switch costume to (left v)\n                        end\n                        if <<mouse down?> and <(mouse y) > (y position)>> then\n                            switch costume to (up v)\n                        end\n                        if <<<mouse down?> and <(mouse y) > (y position)>> and <<mouse down?> and <(mouse x) > [10]>>> then\n                            switch costume to (up and right v)\n                        end\n                        if <<<mouse down?> and <(mouse y) > (y position)>> and <<mouse down?> and <(mouse x) < [-10]>>> then\n                            switch costume to (up and left v)\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine WASD or Arrow key Play\nforever\n    forever\n        forever\n            forever\n                forever\n                    forever\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\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    wait until <touching (portal2 v)?>\n    broadcast (Yes I win hahahahahaha v) and wait\nend\n\ndefine Readyyy, go!\nWASD or Arrow key Play\n\ndefine GO MOBILE!!!!\nMobile Play\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]\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]>> or <<mouse down?> and <(mouse x) > [10]>>> 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]>> or <<mouse down?> and <(mouse x) < [-10]>>> 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 (rotateplayer v)?> then\n            change y by (-1)\n            if <touching (rotateplayer v)?> then\n                change y by (-1)\n                if <touching (rotateplayer v)?> then\n                    change y by (-1)\n                    if <touching (rotateplayer v)?> then\n                        change y by (-1)\n                        if <touching (rotateplayer v)?> then\n                            change y by (4)\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 (rotateplayer 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 (rotateplayer v)?> then\n            if <<<<key (w v) pressed?> or <<key (space v) pressed?> or <key (up arrow v) pressed?>>> or <(u) = [1]>> or <<mouse down?> and <(mouse y) > ([y position v] of [rotateplayer v])>>> 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 I receive [next level v]\nif <(costume [number v]) = [3]> then\n    broadcast (Yes I win hahahahahaha v)\nelse\n    next costume\n    point in direction (90)\n    go to x: (0) y: (-600)\n    set [d vel v] to [0]\n    set [y vel v] to [0]\nend\n\n@Enemy\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]\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 [next level v]\nnext costume\n\n@mini\n\nwhen flag clicked\nset [ghost v] effect to (100)\ngo to [front v] layer\n\n@detector\n\nwhen flag clicked\nhide\nset [faved___ v] to [0]\nset [loved__ v] to [0]\nset [clone id v] to [0]\ncreate clone of (_myself_ v)\nwait (0.2) seconds\nset [clone id v] to [1]\ncreate clone of (_myself_ v)\nwait until <<(LOVED__) = [1]> and <(FAVED___) = [1]>>\nwait (1) seconds\nshow\ngo to x: (0) y: (50)\nreset timer\nswitch costume to (pick random (1) to (4))\nset [ghost v] effect to (100)\nrepeat until <(timer) > [3.5]>\n    change y by ((y position) / (-15))\n    change [ghost v] effect by (-3)\nend\nreset timer\nrepeat until <(timer) > [3.5]>\n    change y by (((y position) - (-100)) / (-15))\n    change [ghost v] effect by (10)\nend\n\nwhen I start as a clone\nif <(clone id) = [0]> then\n    go to x: (-15) y: (0)\n    set [loved__ v] to [0]\n    switch costume to (love v)\n    forever\n        set [love? v] to <touching (mouse-pointer v)?>\n        if <touching (mouse-pointer v)?> then\n            set [loved__ v] to [1]\n        end\n    end\nend\nif <(clone id) = [1]> then\n    go to x: (0) y: (0)\n    switch costume to (fave v)\n    set [faved___ v] to [0]\n    forever\n        set [fav v] to <touching (mouse-pointer v)?>\n        if <touching (mouse-pointer v)?> then\n            set [faved___ v] to [1]\n        end\n    end\nend\n\n@portal\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]\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 [next level v]\nnext costume\n\n@portal2\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]\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 [next level v]\nnext costume\n\n@Sprite1\n\nwhen flag clicked\nshow\ngo to [front v] layer\ngo [backward v] (1) layers\n\nwhen I receive [play v]\nhide\n\n@Sprite2\n\nwhen flag clicked\nhide\n\nwhen I receive [yes i win hahahahahaha v]\ngo to [front v] layer\nshow\n\n@skip\n\nwhen flag clicked\nhide\n\nwhen I receive [play v]\ngo to [front v] layer\nshow\nset size to (80) %\nset [zine v] to [0]\ngo to x: (-180) y: (-150)\nforever\n    change [zine v] by (1)\n    point in direction ((90) + (([sin v] of ((zine) * (8)) ) * (3)))\n    if <touching (mouse-pointer v)?> then\n        change size by (((90) - (size)) / (2))\n    else\n        change size by (((80) - (size)) / (4))\n    end\n    if <<touching (mouse-pointer v)?> and <mouse down?>> then\n        repeat until <<not <touching (mouse-pointer v)?>> or <not <mouse down?>>>\n            change [zine v] by (1)\n            point in direction ((90) + (([sin v] of ((zine) * (5)) ) * (3)))\n            change size by (((90) - (size)) / (2))\n        end\n        set size to (80) %\n        wait (0) seconds\n        if <touching (mouse-pointer v)?> then\n            set [mobileskip v] to [1]\n        end\n    end\n    if <(LEVEL) = [11]> then\n        go to x: (4598234759234) y: (32453245234)\n        hide\n        stop [this script v]\n    else\n        go to x: (-180) y: (150)\n    end\nend\n\nwhen this sprite clicked\nbroadcast (next level v)\nwait (0.1) seconds\n\n@blank\n\n@blank2\n\n@blank3\n\n@blank4\n\n@blank5\n\n@blank6\n\n@blank7\n\n@blank8\n\n@blank9\n\n@blank10\n\n@blank11\n\ndefine Do nothing\nDo nothing\n\nwhen flag clicked\nDo nothing\n\n