Lightseeker- a Platformer

Instructions: This project was originally made in 2020... \nWow- 746 views! :D \nINSTRUCTIONS: In game. Press enter to play/pause music.\nAll levels are possible! Have fun!\nIf it has lag, play here: https://turbowarp.org/476056340/\n-------------------------------------------------------------------------\nNOTES/Credits: Thanks to @The_Greatest_Bread for the thumbnail animation at the beginning. Thank you also whoever made the platformer gravity :)\nmaketext.io for thumbnail font \n@IntrovertKing for Youtube video feedback :)\n-------------------------UPDATES----------------------------------\nUpdate: Level advance and spikes 3/23/23!\nUpdate: Player looks 4/18/23!\nUpdate: More player looks 4/27/23!\nUpdate: Fixed spikes 5/11/23!\nUpdate: Player looks and ending 6/6/23!\nUpdate: Trampolines and moving platforms 6/16/23!\nUpdate: Background 6/30/23!\nUpdate: Skip button and torches 9/14/23!\nUpdate: Check for glitches 9/29/23!\nUpdate: Bug fixes/clone trail 10/12/23!\nUpdate: Spikes, player looks, background, galaxy (play to find out!) 3/1/24!\nUpdate: Thumbnail, removed skip button, love fav follow ad 3/20/24!\nUpdate: Shadows, player clone trail 3/28/24!\nUpdate: Fixed beginning glitch, love fave 4/14/24!\nUpdate: Background, love fave follow, fixed moving platform, now "attaches" to the player 4/25/24!\nUpdate: Player eye movement, spikes 4/27/24!\n-------------------------------------------------------------------------\nYou find yourself trapped in a dark cave. Can you escape? Play this platformer to find out!\n #lightseeker #lightseeker #lightseeker #lightseeker #lightseeker #lightseeker #lightseeker #lightseeker\n#games #games #games #games #games #games  #games #games #games #games #games #games \n#platformer #platformer #games #platformer #games #platformer #games #platformer #games #platformer #games #platformer #games #platformer #games #platformer #games #platformer #games #platformer #games #platformer #platformer #platformer #platformer #lightseeker #lightseeker #lightseeker #lightseeker #lightseeker #lightseeker #lightseeker #lightseeker #lightseeker #lightseeker #art #story\n#whyareyoureadingthis#lookatthesun #climbonthetext #andtouchthesun

@Stage\n\nwhen flag clicked\nswitch backdrop to (backdrop1 v)\n\n@Blank?\n\ndefine Detect (thing) at (x) (y)\nswitch costume to (empty v)\nset size to (27000) %\ngo to x: (x) y: (y)\nset size to (100) %\nswitch costume to (thing)\nif <<touching (mouse-pointer v)?> and <not <(thing) = [see inside]>>> then\n    set [touching v] to (costume [name v])\nelse\n    if <<touching (mouse-pointer v)?> and <<mouse down?> and <(thing) = [see inside]>>> then\n        set [touching v] to (costume [name v])\n    end\nend\n\nwhen [enter v] key pressed\nnext costume\nif <(Pause) = [no]> then\n    set [pause v] to [yes]\nelse\n    set [pause v] to [no]\nend\n\nwhen [enter v] key pressed\nif <(Pause) = [yes]> then\n    set [pitch v] effect to ((-1) / (0))\n    set volume to (0) %\n    wait until <(Pause) = [no]>\n    set [pitch v] effect to (0)\n    set volume to (100) %\nend\n\nwhen flag clicked\nswitch costume to (blank v)\nset volume to (100) %\nset [pitch v] effect to (0)\nstart sound [gone-ak-main-version-03-50-1326 v]\nset [pause v] to [no]\nset [my variable v] to [0]\n\n@Player\n\nwhen flag clicked\nset [attached to v] to []\nforever\n    wait until <not <(attached to) = []>>\n    set [last x v] to ([x position v] of (attached to))\n    set [last y v] to ([y position v] of (attached to))\n    repeat until <(attached to) = []>\n        go to x: ((x position) + (([x position v] of (attached to)) - (last x))) y: ((y position) + (([y position v] of (attached to)) - (last y)))\n        set [last x v] to ([x position v] of (attached to))\n        set [last y v] to ([y position v] of (attached to))\n    end\n    wait (0.2) seconds\nend\n\nwhen flag clicked\nforever\n    wait until <touching (platform v)?>\n    set [attached to v] to [platform]\n    wait until <not <touching (platform v)?>>\n    set [attached to v] to []\nend\n\nwhen flag clicked\ngo to x: (-150) y: (-40)\nswitch backdrop to (backdrop1 v)\nswitch costume to (regular v)\nforever\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        switch costume to (left v)\n        change [x velocity v] by (-1)\n    else\n        switch costume to (regular v)\n    end\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        switch costume to (right v)\n        change [x velocity v] by (1)\n    else\n        switch costume to (regular v)\n    end\n    set [x velocity v] to ((X Velocity) * (0.85))\n    change x by (X Velocity)\n    if <touching color (#000000)?> then\n        change y by (1)\n    end\n    if <touching color (#000000)?> then\n        change y by (1)\n    end\n    if <touching color (#000000)?> then\n        change y by (1)\n    end\n    if <touching color (#000000)?> then\n        change y by (1)\n    end\n    if <touching color (#000000)?> then\n        change y by (-4)\n        change x by ((X Velocity) * (-1))\n        if <<key (up arrow v) pressed?> or <key (w v) pressed?>> then\n            if <(X Velocity) > [0]> then\n                set [x velocity v] to [-10]\n            else\n                set [x velocity v] to [10]\n            end\n            set [y velocity v] to [13]\n        else\n            set [x velocity v] to [0]\n        end\n    end\n    change [y velocity v] by (-1)\n    change y by (Y Velocity)\n    if <touching color (#000000)?> then\n        change y by ((Y Velocity) - ((Y Velocity) * (2)))\n        set [y velocity v] to [0]\n        if <<key (down arrow v) pressed?> or <key (s v) pressed?>> then\n            switch costume to (crouch v)\n        else\n            switch costume to (player v)\n        end\n    end\n    change y by (-1)\n    if <<touching color (#000000)?> and <<key (up arrow v) pressed?> or <key (w v) pressed?>>> then\n        set [y velocity v] to [12]\n    end\n    if <touching color (#fbcd3f)?> then\n        go to x: (-150) y: (-98)\n        next backdrop\n    end\n    change y by (1)\nend\n\nwhen I start as a clone\nrepeat (15)\n    switch costume to (clone v)\n    change size by (-5)\n    change [ghost v] effect by (5)\n    change [brightness v] effect by (5)\nend\ndelete this clone\n\nwhen flag clicked\nforever\n    if <touching color (#ff0000)?> then\n        go to x: (-152) y: (0)\n    end\nend\n\nwhen flag clicked\nforever\n    if <key (f v) pressed?> then\n        broadcast (freeze! v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(x position) = [241]> then\n        next backdrop\n        go to x: (-150) y: (-97)\n    end\nend\n\nwhen flag clicked\nforever\n    if <key (left arrow v) pressed?> then\n        switch costume to (left v)\n    end\nend\n\nwhen backdrop switches to [backdrop1 v]\nwait (5) seconds\nsay [Help me get out of this place! Move to the right to begin. Press r to reset the level...] for (3) seconds\n\nwhen flag clicked\nforever\n    if <touching color (#ffea00)?> then\n        set [y velocity v] to [25]\n    end\nend\n\nwhen flag clicked\nforever\n    if <key (r v) pressed?> then\n        go to x: (-150) y: (-35)\n    end\n    create clone of (_myself_ v)\n    if <touching (platform v)?> then\n        if <[] = [90]> then\n            change x by (platform speed)\n        end\n        if <[] = [-90]> then\n            change x by (right PS)\n        end\n        if <(touching stopper) = [yes]> then\n            change x by (right PS)\n        end\n        if <(touching block) = [yes]> then\n            change x by (platform speed)\n        end\n    end\nend\n\nwhen flag clicked\nwait (2) seconds\nsay (join [Welcome,] (join (username) [!])) for (3) seconds\n\nwhen backdrop switches to [backdrop2 v]\nsay [Avoid spikes! Press up arrow to jump over them...] for (3) seconds\n\nwhen backdrop switches to [backdrop3 v]\nsay [Be careful with this! Try pressing left arrow in midair to slow me down...] for (5) seconds\n\nwhen backdrop switches to [backdrop4 v]\nsay [Nice! Press up arrow and right arrow against a wall to wall jump...] for (3) seconds\n\nwhen backdrop switches to [backdrop5 v]\nsay [Watch out! To get past, try pressing f...] for (3) seconds\n\nwhen backdrop switches to [backdrop6 v]\nsay [Great! Free level...] for (3) seconds\n\nwhen backdrop switches to [backdrop6.5 v]\nsay [Bounce on yellow to go higher...] for (3) seconds\n\nwhen backdrop switches to [backdrop7 v]\nsay [Hop on the moving platform! Try to keep up...] for (3) seconds\n\nwhen backdrop switches to [backdrop8 v]\nsay [Jump between the spikes...] for (3) seconds\n\nwhen backdrop switches to [backdrop9 v]\nsay [Gain a lot of momentum here...] for (3) seconds\n\nwhen backdrop switches to [backdrop10 v]\nsay [Jump over the lava...] for (3) seconds\n\nwhen backdrop switches to [backdrop11 v]\nsay [A tight fit...] for (3) seconds\n\nwhen backdrop switches to [backdrop12 v]\nsay [We're getting closer...] for (3) seconds\n\nwhen backdrop switches to [backdrop13 v]\nsay [Even closer...] for (3) seconds\n\nwhen backdrop switches to [backdrop14 v]\nsay [We're finally exiting the cave...] for (3) seconds\n\nwhen backdrop switches to [backdrop15 v]\nsay [Nice job! You did it...] for (5) seconds\n\n@Dark Evil Cubes\n\nwhen flag clicked\nhide\nset size to (100) %\nforever\n    glide (0.5) secs to (player v)\nend\n\nwhen I receive [freeze! v]\nhide\n\nwhen backdrop switches to [backdrop5 v]\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        change size by (-3)\n    end\nend\n\nwhen backdrop switches to [backdrop6 v]\nhide\n\n@Parents\n\nwhen flag clicked\ngo to x: (29) y: (11)\nhide\n\nwhen backdrop switches to [backdrop15 v]\nshow\n\nwhen backdrop switches to [backdrop16 v]\nhide\n\n@Thumbnail\n\nwhen [timer v] > ((Timer) * (0.01))\nswitch costume to (thumbnail v)\nshow\ngo to x: (0) y: (100)\nrepeat (10)\n    set y to ((y position) / (2))\nend\nset [brightness v] effect to (50)\ngo to [front v] layer\nrepeat (10)\n    change [brightness v] effect by (-3)\nend\nset [brightness v] effect to (3)\nwait (1) seconds\nset [ghost v] effect to (100)\n\nwhen flag clicked\nclear graphic effects\ngo to x: (0) y: (0)\nforever\n    set [timer v] to (timer)\nend\n\n@platform\n\nwhen flag clicked\nhide\nforever\n    glide (4) secs to x: (-75) y: (25)\n    glide (4) secs to x: (75) y: (25)\nend\n\nwhen backdrop switches to [backdrop8 v]\nhide\n\nwhen backdrop switches to [backdrop7 v]\nshow\n\n@Love fave\n\nwhen flag clicked\nclear graphic effects\nforever\n    create clone of (_myself_ v)\n    go to x: (140) y: ((-145) + (([sin v] of ((timer) * (150)) ) * (5)))\nend\n\nwhen I start as a clone\nrepeat (15)\n    change size by (-3)\n    change [color v] effect by (5)\nend\ndelete this clone\n\n