Geometry Dash 2.2 Platformer mode
@Stage\n\nwhen I receive [game on v]\nforever\n    Check Progress\n    if <[27] < (FPS)> then\n        Check background color\n    else\n        Check bg lag\n    end\nend\n\ndefine Check Progress\nif <[20500] < (Scroll X)> then\n    set [rail y var v] to [208]\nelse\n    set [rail y var v] to [75]\nend\n\nwhen I receive [game on v]\nset volume to (100) %\nif <(Level) < [2]> then\n    play sound [Stereo Madness v] until done\nelse\n    play sound [Back on Track v] until done\nend\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\n\nwhen I receive [win explosion v]\nstop all sounds\nstop [other scripts in sprite v]\nset volume to (100) %\nstart sound [level-complete-geometry-dash v]\n\nwait (1) seconds\n\nwhen I receive [game on v]\nset [jump key v] to [0]\nforever\n    if <<<key (up arrow v) pressed?> or <key (space v) pressed?>> or <mouse down?>> then\n        change [jump key v] by (1)\n    else\n        set [jump key v] to [0]\n    end\nend\n\ndefine Background color (color) Forward? (1/0)\nif <(1/0) = [1]> then\n    change [bg color v] by (round (([abs v] of ((Bg color) - (color)) ) * (0.15)))\nelse\n    change [bg color v] by (round (([abs v] of ((Bg color) - (color)) ) * (-0.15)))\nend\nif <([abs v] of ((Bg color) - (color)) ) < [4]> then\n    set [bg color v] to (color)\nend\nCheck color\nif <(Bg color) > [0]> then\n\ndefine Check background color\nif <(Level) = [1]> then\n    if <(Scroll X) < [1900]> then\n        set [bg color v] to [183]\n    else\n        if <(Scroll X) < [7000]> then\n            Background color [9] Forward? [1]\n        else\n            if <(Scroll X) < [11150]> then\n                Background color [30] Forward? [1]\n            else\n                if <(Scroll X) < [13700]> then\n                    Background color [9] Forward? [0]\n                else\n                    if <(Scroll X) < [20170]> then\n                        Background color [55] Forward? [1]\n                    else\n                        if <(Scroll X) < [23200]> then\n                            Background color [30] Forward? [0]\n                        end\n                    end\n                end\n            end\n        end\n    end\nelse\n    if <(Level) = [2]> then\n        if <(Scroll X) < [3675]> then\n            set [bg color v] to [30]\n        else\n            Background color [40] Forward? [1]\n        end\n    end\nend\n\ndefine Check bg lag\nif <(Level) = [1]> then\n    if <(Scroll X) < [1900]> then\n        set [bg color v] to [183]\n    else\n        if <(Scroll X) < [7000]> then\n            set [bg color v] to [9]\n        else\n            if <(Scroll X) < [11150]> then\n                set [bg color v] to [30]\n            else\n                if <(Scroll X) < [13700]> then\n                    set [bg color v] to [9]\n                else\n                    if <(Scroll X) < [20170]> then\n                        set [bg color v] to [55]\n                    else\n                        if <(Scroll X) < [23200]> then\n                            set [bg color v] to [30]\n                        end\n                    end\n                end\n            end\n        end\n    end\nelse\n    if <(Level) = [2]> then\n        if <(Scroll X) < [3700]> then\n            set [bg color v] to [30]\n        else\n            set [bg color v] to [40]\n        end\n    end\nend\n\nwhen I receive [get to your positions v]\nstop [other scripts in sprite v]\n\nwhen I receive [black screen home v]\nset volume to (100) %\nforever\n    play sound [Menu Music v] until done\nend\n\nwhen flag clicked\nset volume to (100) %\nforever\n    play sound [Menu Music v] until done\nend\n\nwhen I receive [black screen home v]\nset [bg color v] to [183]\nforever\n    Check color\n    change [bg color v] by (0.1)\nend\n\ndefine Check color\nif <[200] < (Bg color)> then\n    set [bg color v] to [0]\nend\nif <(Bg color) < [-200]> then\n    set [bg color v] to [0]\nend\n\nwhen flag clicked\nset [bg color v] to [183]\nforever\n    Check color\n    change [bg color v] by (0.1)\nend\n\nstart sound [level-complete-geometry-dash v]\n\nbroadcast (Thumbnail v)\nswitch backdrop to (thumbnail v)\n\n@Blank\n\ndefine Wave movement\nif <<mouse down?> or <<key (up arrow v) pressed?> or <key (space v) pressed?>>> then\n    change [speed y v] by (20)\n    turn left (15) degrees\n    if <[45] > (direction)> then\n        point in direction (45)\n    end\nelse\n    change [speed y v] by (-20)\n    turn right (15) degrees\n    if <(direction) > [135]> then\n        point in direction (135)\n    end\nend\nif <(speed y) > [10]> then\n    set [speed y v] to [10]\nend\nif <[-10] > (speed y)> then\n    set [speed y v] to [-10]\nend\nchange y by (round (speed y))\nif <<touching color (#ffffff)?> and <<not <touching (ceiling v)?>> and <not <touching (floor v)?>>>> then\n    broadcast (Game Over v)\n    stop [this script v]\nend\nif <<touching color (#ffffff)?> and <<touching (ceiling v)?> or <touching (floor v)?>>> then\n    if <(speed y) < [0]> then\n        Move Out of Level [1]\n    else\n        Move Out of Level [-1]\n    end\n    point in direction ((90) + ([atan v] of ((speed y) / ((SCROLL SPEED) * (-1))) ))\nend\nif <[27] < (FPS)> then\n    create clone of (wave/ship particles`q` v)\nend\n\n@Logo\n\nwhen I start as a clone\ngo to [front v] layer\nforever\n    if <touching (mouse-pointer v)?> then\n        Bounce to Size [125] force [2]\n    else\n        Bounce to Size [100] force [-2]\n    end\nend\n\ndefine Bounce to Size (target size) force (force)\nset [speed v] to (((0.9) * (speed)) + (force))\nchange size by (speed)\nif <<(size) > (target size)> = <(force) > [0]>> then\n    set size to (target size) %\n    set [speed v] to ((-0.8) * (speed))\n    if <([abs v] of (speed) ) < [4]> then\n        set [speed v] to [0]\n    end\nend\n\nwhen this sprite clicked\nif <(costume [name v]) = [play]> then\n    wait until <not <mouse down?>>\n    broadcast (Level select v)\nend\n\nwhen I receive [reset level v]\nstop [other scripts in sprite v]\nhide\ndelete this clone\n\nwhen I receive [main menu v]\nif  then\n    delete this clone\nend\nhide variable [attempt v]\ngo to [front v] layer\nshow\nswitch costume to (play v)\ngo to x: (0) y: (0)\ncreate clone of (_myself_ v)\nswitch costume to (logo v)\ngo to x: (0) y: (0)\n\nwhen flag clicked\nbroadcast (Main Menu v)\n\nwhen I receive [delete clones v]\nshow\nswitch costume to (logo - level complete v)\ngo to x: (0) y: (0)\nset size to (15) %\nrepeat (6)\n    change size by (10)\nend\nrepeat (6)\n    switch costume to (play v)\n    change size by (5)\n    switch costume to (logo - level complete v)\nend\nrepeat (4)\n    switch costume to (play v)\n    change size by (3)\n    switch costume to (logo - level complete v)\nend\nrepeat (5)\n    change size by (-2)\nend\n\nwhen I receive [thumbnail v]\nhide\n\n@Player\n\ndefine Move Out of Level (dy)\nchange y by ((-4) * (dy))\nrepeat ((8) + ([abs v] of (speed y) ))\n    change y by (dy)\n    if <not <touching color (#ffffff)?>> then\n        if <(MODE) = [Ship]> then\n            if <[0] < (speed y)> then\n                repeat (([abs v] of (round ((speed y) / (4))) ) + (2))\n                    change [speed y v] by (dy)\n                    if <<not <(MODE) = [Ship]>> or <(speed y) < [1]>> then\n                        set [speed y v] to [0]\n                        stop [this script v]\n                    end\n                end\n            else\n                repeat (([abs v] of (round ((speed y) / (4))) ) + (1))\n                    change [speed y v] by (dy)\n                    if <<not <(MODE) = [Ship]>> or <[-1] < (speed y)>> then\n                        set [speed y v] to [0]\n                        stop [this script v]\n                    end\n                end\n            end\n        else\n            set [speed y v] to [0]\n        end\n        set [jump v] to [0]\n        stop [this script v]\n    end\nend\nbroadcast (Recoil v)\nchange y by ((-4) * (dy))\n\ndefine Player Movement\nif <(MODE) = [Cube]> then\n    Cube Movement\nelse\n    if <(MODE) = [Ship]> then\n        Ship Movement\n    else\n        Wave movement\n    end\nend\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\nRestore Costume\nstart sound [explode_11.mp3 v]\nset [scroll speed v] to [0]\nrepeat (10)\n    change x by (SCROLL SPEED)\n    change [ghost v] effect by (20)\nend\nwait (0.7) seconds\nclear graphic effects\nbroadcast (Reset Level v)\n\nwhen I receive [game on v]\nshow\nshow variable [attempt v]\nchange [attempt v] by (1)\nset [mode v] to [Cube]\nset [rail y v] to []\nswitch costume to (cube v)\ngo to x: (-75) y: (-74)\npoint in direction (90)\nset [speed x v] to [9.2]\nset [scroll x v] to [0]\nset [scroll speed v] to (() - (speed x))\nset [speed y v] to [0]\nset [last camera y v] to (CAMERA Y)\nforever\n    change x by ((speed x) + (SCROLL SPEED))\n    if <key (right arrow v) pressed?> then\n        change [scroll x v] by (() - (SCROLL SPEED))\n    else\n        if <key (left arrow v) pressed?> then\n            change [scroll x v] by (SCROLL SPEED)\n        end\n    end\n    change y by ((last camera y) - (CAMERA Y))\n    set rotation style [left-right v]\n    Player Movement\n    Check Transporters\n    if <not < (costume [name v]) contains [hitbox]?>> then\n        set [last costume v] to (costume [name v])\n    end\n    switch costume to (hitbox spike v)\n    if <<<not <touching color (#ffffff)?>> and <<touching color (#000000)?> and <not <touching (sprite2 v)?>>>> or <touching color (#fff5ef)?>> then\n        broadcast (Game Over v)\n        stop [this script v]\n    end\n    Check Portal (y position)\n    Restore Costume\n    Camera Tracking\n    go to [front v] layer\nend\n\ndefine Camera Tracking\nset [last camera y v] to (CAMERA Y)\nif <(RAIL Y) > []> then\n    change [camera y v] by (round (((RAIL Y) - (CAMERA Y)) * (0.2)))\nelse\n    if <(y position) > [65]> then\n        change [camera y v] by (round (((y position) - (65)) * (0.2)))\n    end\n    if <(y position) < [-75]> then\n        change [camera y v] by (round (((y position) - (-75)) * (0.15)))\n        if <(CAMERA Y) < [0]> then\n            set [camera y v] to [0]\n        end\n    end\nend\n\ndefine Check Portal (player y)\nif <touching color (#ff77ff)?> then\n    switch costume to (hitbox portal v)\n    repeat until <not <touching color (#ff77ff)?>>\n        change y by (-2)\n    end\n    set [rail y v] to (Rail y var)\n    if <(RAIL Y) < (FLOOR SHIMMY)> then\n        set [rail y v] to (FLOOR SHIMMY)\n    end\n    if <not <(MODE) = [Ship]>> then\n        set [speed y v] to [0]\n    end\n    set [mode v] to [Ship]\n    broadcast (Flash portal v)\n    point in direction (90)\n    set y to (player y)\n    switch costume to (hitbox spike v)\nend\nif <touching color (#5acdff)?> then\n    switch costume to (hitbox portal v)\n    repeat until <not <touching color (#5acdff)?>>\n        change y by (-2)\n    end\n    set [rail y v] to (Rail y var)\n    if <(RAIL Y) < (FLOOR SHIMMY)> then\n        set [rail y v] to (FLOOR SHIMMY)\n    end\n    if <not <(MODE) = [Wave]>> then\n        set [speed y v] to [0]\n    end\n    set [mode v] to [Wave]\n    broadcast (Flash portal v)\n    point in direction (90)\n    set y to (player y)\n    switch costume to (hitbox spike v)\nend\nif <touching color (#2bff50)?> then\n    set [mode v] to [Cube]\n    broadcast (Flash portal v)\n    set [rail y v] to []\nend\n\ndefine Cube Movement\nif <<(Jump) = [1]> and <[27] < (FPS)>> then\n    if <<key (left arrow v) pressed?> or <key (right arrow v) pressed?>> then\n        create clone of (wave/ship particles`q` v)\n    end\nend\nif <(speed y) < [4]> then\n    change [speed y v] by (-2.25)\nelse\n    change [speed y v] by (-4)\nend\nif <(speed y) < [-23]> then\n    set [speed y v] to [-23]\nend\nchange y by (speed y)\nif <touching color (#ffffff)?> then\n    if <(speed y) < [0]> then\n        Move Out of Level [1]\n        if <<<key (left arrow v) pressed?> or <key (right arrow v) pressed?>> and <[27] < (FPS)>> then\n            create clone of (particles v)\n        end\n        if <(JUMP KEY) > [0]> then\n            set [speed y v] to [23]\n            change [jump key v] by (100)\n        end\n    else\n        Move Out of Level [-1]\n    end\nend\n\ndefine Ship Movement\nif <(JUMP KEY) > [0]> then\n    change [speed y v] by (1)\n    if <<<key (left arrow v) pressed?> or <key (right arrow v) pressed?>> and <[27] < (FPS)>> then\n        create clone of (particles v)\n        create clone of (particles v)\n    end\nelse\n    change [speed y v] by (-0.6)\nend\nif <(speed y) > [12]> then\n    set [speed y v] to [12]\nend\nif <(speed y) < [-10]> then\n    set [speed y v] to [-10]\nend\nchange y by (round (speed y))\nswitch costume to (ship hitbox v)\nif <touching color (#ffffff)?> then\n    if <(speed y) < [0]> then\n        Move Out of Level [1]\n    else\n        Move Out of Level [-1]\n    end\nend\nRestore Costume\nif <(costume [number v]) = [3]> then\n    point in direction ((90) - ([atan v] of ((speed y) / (speed x)) ))\nelse\n    if <(costume [number v]) = [4]> then\n        point in direction ((90) + ([atan v] of ((speed y) / (speed x)) ))\n    end\nend\nif <<<key (left arrow v) pressed?> or <key (right arrow v) pressed?>> and <[27] < (FPS)>> then\n    create clone of (wave/ship particles`q` v)\nend\n\nwhen I receive [reset level v]\nstop [other scripts in sprite v]\n\nwhen I receive [level complete v]\nrepeat (5)\nrepeat (5)\n    change [speed x v] by (-2)\n    set [speed y v] to ((speed y) * (0.5))\nend\nstop [other scripts in sprite v]\nRestore Costume\nrepeat (5)\n    change [speed y v] by (2)\n    turn right (speed y) degrees\n    change y by (speed y)\n    create clone of (particles v)\nend\nrepeat until <(x position) > [200]>\n    turn right (10) degrees\n    change x by (speed x)\n    change y by (speed y)\n    create clone of (particles v)\n    change [speed x v] by (0.75)\n    change [speed y v] by ((y position) / (-70))\n    set [speed y v] to ((speed y) * (0.9))\nend\nbroadcast (Win Explosion v)\nset [ghost v] effect to (100)\n\nwhen I receive [main menu v]\nset [attempt v] to [0]\nset [mode v] to [Cube]\nset [rail y v] to []\nset [speed x v] to [9.2]\nset [scroll speed v] to (() - (speed x))\nset [camera y v] to [25]\ngo to x: (-75) y: (-73)\npoint in direction (90)\nclear graphic effects\nswitch costume to (cube v)\ngo to [front v] layer\nshow\nforever\n    if <[27] < (FPS)> then\n        if <<key (right arrow v) pressed?> or <key (left arrow v) pressed?>> then\n            create clone of (particles v)\n        end\n    end\nend\n\ndefine Check Transporters\nif <touching color (#fbff00)?> then\n    set [speed y v] to [33]\n    set [jump v] to [1]\nend\nif <<(JUMP KEY) > [0]> and <(JUMP KEY) < [100]>> then\n    if <touching color (#fbf300)?> then\n        set [speed y v] to [23]\n        change [jump key v] by (100)\n        set [jump v] to [1]\n    end\nend\n\ndefine Restore Costume\nset rotation style [all around v]\nif <key (right arrow v) pressed?> then\n    switch costume to (MODE)\nelse\n    if <key (left arrow v) pressed?> then\n        switch costume to (join [Backward ] (MODE))\n    else\n        switch costume to (Last costume)\n    end\nend\n\nwhen I receive [game on v]\nforever\n    if <(MODE) = [Cube]> then\n        if <(speed y) = [0]> then\n            if <not <((direction) mod (90)) = [0]>> then\n                if <((direction) mod (90)) > [35]> then\n                    turn right (((90) - ((direction) mod (90))) / (1.5)) degrees\n                else\n                    turn left (((direction) mod (90)) / (1.5)) degrees\n                end\n            end\n        else\n            if <(Gravity) = [0]> then\n                if <not <touching color (#ffffff)?>> then\n                    if <key (right arrow v) pressed?> then\n                        turn right (14) degrees\n                    else\n                        if <key (left arrow v) pressed?> then\n                            turn right (-14) degrees\n                        end\n                    end\n                end\n            else\n                turn right (-14) degrees\n            end\n        end\n    else\n        if <(MODE) = [Ball]> then\n            if <(Gravity) = [0]> then\n                turn right (14) degrees\n            else\n                turn right (-14) degrees\n            end\n        end\n    end\nend\n\nwhen I receive [level select v]\nstop [other scripts in sprite v]\nhide\n\npoint in direction ((round ((direction) / (90))) * (90))\n\nwhen I receive [thumbnail v]\nhide\n\ndefine Wave movement\nif <<mouse down?> or <<key (up arrow v) pressed?> or <key (space v) pressed?>>> then\n    change [speed y v] by (20)\n    turn left (15) degrees\n    if <[45] > (direction)> then\n        point in direction (45)\n    end\nelse\n    change [speed y v] by (-20)\n    turn right (15) degrees\n    if <(direction) > [135]> then\n        point in direction (135)\n    end\nend\nif <(speed y) > [10]> then\n    set [speed y v] to [10]\nend\nif <[-10] > (speed y)> then\n    set [speed y v] to [-10]\nend\nchange y by (round (speed y))\nif <<touching color (#ffffff)?> and <<not <touching (ceiling v)?>> and <not <touching (floor v)?>>>> then\n    broadcast (Game Over v)\n    stop [this script v]\nend\nif <<touching color (#ffffff)?> and <<touching (ceiling v)?> or <touching (floor v)?>>> then\n    if <(speed y) < [0]> then\n        Move Out of Level [1]\n    else\n        Move Out of Level [-1]\n    end\n    point in direction ((90) + ([atan v] of ((speed y) / ((SCROLL SPEED) * (-1))) ))\nend\nif <<<key (left arrow v) pressed?> or <key (right arrow v) pressed?>> and <[27] < (FPS)>> then\n    create clone of (wave/ship particles`q` v)\nend\n\nwhen I receive [recoil v]\nif <key (left arrow v) pressed?> then\n    change [scroll x v] by (() - (SCROLL SPEED))\nelse\n    if <key (right arrow v) pressed?> then\n        change [scroll x v] by (SCROLL SPEED)\n    end\nend\n\n@Level stereo madness\n\nwhen I receive [reset level v]\nif <(Level) = [1]> then\n    if  then\n        delete this clone\n    end\n    hide\n    go to x: (0) y: (0)\n    switch costume to (1.1 v)\n    create clone of (_myself_ v)\n    next costume\n    change x by (480)\n    create clone of (_myself_ v)\n    go to x: (0) y: (0)\n    broadcast (Game On v)\nend\n\nwhen I receive [main menu v]\nhide\ndelete this clone\n\nwhen I receive [thumbnail v]\nhide\n\nwhen I receive [recoil v]\nif <key (right arrow v) pressed?> then\n    change x by (() - (SCROLL SPEED))\nelse\n    if <key (left arrow v) pressed?> then\n        change x by (SCROLL SPEED)\n    end\nend\nif <(x position) < [-480]> then\n    change x by (960)\n    next costume\n    next costume\nend\nif <[480] < (x position)> then\n    change x by (-960)\n    switch costume to ((costume [number v]) - (2))\nend\n\nwhen I start as a clone\nshow\nforever\n    if <(MODE) = [Cube]> then\n        set y to ((117) - (CAMERA Y))\n    else\n        set y to ((121) - (CAMERA Y))\n    end\n    if <key (right arrow v) pressed?> then\n        change x by (SCROLL SPEED)\n    else\n        if <key (left arrow v) pressed?> then\n            change x by (() - (SCROLL SPEED))\n        end\n    end\n    if <(x position) < [-480]> then\n        change x by (960)\n        next costume\n        next costume\n    end\n    if <[480] < (x position)> then\n        change x by (-960)\n        switch costume to ((costume [number v]) - (2))\n    end\nend\n\n@End Detector\n\nwhen flag clicked\ngo to x: (220) y: (0)\nhide\n\nwhen I receive [game on v]\nwait (0.1) seconds\nwait until <touching color (#6bffdb)?>\nset [scroll speed v] to [0]\nbroadcast (Level Complete v)\nwait (8) seconds\nstop [other scripts in sprite v]\nbroadcast (Main Menu v)\n\nwhen I receive [level complete v]\nforever\n    if <(CAMERA Y) < (FLOOR SHIMMY)> then\n        change [camera y v] by (round ((0.1) * ((FLOOR SHIMMY) - (CAMERA Y))))\n    end\nend\n\n@End Particles\n\nwhen flag clicked\nswitch costume to (notaclone v)\nhide\n\nwhen I receive [level complete v]\nswitch costume to (dust v)\nrepeat (10)\n    create clone of (_myself_ v)\n    create clone of (_myself_ v)\n    create clone of (_myself_ v)\n    create clone of (_myself_ v)\n    create clone of (_myself_ v)\n    create clone of (_myself_ v)\nend\nswitch costume to (notaclone v)\n\nwhen I start as a clone\nshow\nif <(costume [name v]) = [dust]> then\n    go to (end detector v)\n    point in direction (pick random (0.0) to (180))\n    move (pick random (-30.0) to (-200)) steps\n    forever\n        set size to (pick random (75) to (110)) %\n        set [speed v] to (pick random (4.0) to (14))\n        repeat until <(distance to [end detector v]) < (speed)>\n            move (speed) steps\n            change size by (-3)\n        end\n        go to (end detector v)\n        point in direction (pick random (0.0) to (180))\n        move (pick random (-180) to (-200)) steps\n    end\nelse\nend\n\ngo to (portal detector v)\npoint in direction (pick random (30.0) to (150))\nmove (pick random (-10.0) to (-20)) steps\nforever\n    set size to (pick random (75) to (110)) %\n    set [speed v] to (pick random (4.0) to (10))\n    repeat until <(distance to [portal detector v]) < (speed)>\n        change x by (SCROLL SPEED)\n        move (speed) steps\n        change size by (-3)\n        if <(x position) < [-240]> then\n            delete this clone\n        end\n    end\n    go to (end detector v)\n    point in direction (pick random (30.0) to (150))\n    move (pick random (-30.0) to (-40)) steps\nend\n\nwhen I receive [main menu v]\nswitch costume to (notaclone v)\ndelete this clone\n\n@Floor\n\nwhen I start as a clone\nshow\nclear graphic effects\nif <(costume [name v]) = [Fade]> then\n    forever\n        go to x: (0) y: (() - (CAMERA Y))\n        go to [front v] layer\n        if <(RAIL Y) > []> then\n            set [ghost v] effect to (100)\n        else\n            clear graphic effects\n        end\n    end\nelse\n    forever\n        if <(RAIL Y) > []> then\n            switch costume to (fly zone v)\n            set y to (((RAIL Y) - (FLOOR SHIMMY)) - (CAMERA Y))\n            clear graphic effects\n        else\n            switch costume to (floor v)\n            set [color v] effect to (Bg color)\n            set y to (() - (CAMERA Y))\n        end\n        if <key (right arrow v) pressed?> then\n            change x by (SCROLL SPEED)\n        else\n            if <key (left arrow v) pressed?> then\n                change x by (() - (SCROLL SPEED))\n            end\n        end\n        if <(x position) < [-480]> then\n            change x by (960)\n        end\n        if <[480] < (x position)> then\n            change x by (-960)\n        end\n    end\nend\n\nwhen I receive [reset level v]\nif  then\n    delete this clone\nend\nset [floor shimmy v] to [75]\ngo to x: (0) y: (0)\nswitch costume to (fade v)\ncreate clone of (_myself_ v)\ngo to x: (0) y: (0)\nswitch costume to (floor v)\ncreate clone of (_myself_ v)\nchange x by (480)\nswitch costume to (floor v)\ncreate clone of (_myself_ v)\ngo to x: (0) y: (0)\nset [camera y v] to [25]\nset [scroll speed v] to [-9.2]\nset [camera y v] to [25]\n\nwhen I receive [level select v]\nhide\ndelete this clone\n\nwhen I receive [game on v]\ngo to [front v] layer\nif <(costume [name v]) = [Fade]> then\n    go to x: (0) y: (() - (CAMERA Y))\nend\n\nwhen I receive [main menu v]\nif  then\n    delete this clone\nend\nset [floor shimmy v] to [75]\ngo to x: (0) y: (0)\nswitch costume to (fade v)\ncreate clone of (_myself_ v)\ngo to x: (0) y: (0)\nswitch costume to (floor v)\ncreate clone of (_myself_ v)\nchange x by (480)\nswitch costume to (floor v)\ncreate clone of (_myself_ v)\ngo to x: (0) y: (0)\nset [camera y v] to [25]\nset [scroll speed v] to [-9.2]\n\nwhen I receive [recoil v]\nif <not <(costume [name v]) = [Fade]>> then\n    if <key (right arrow v) pressed?> then\n        change x by (() - (SCROLL SPEED))\n    else\n        if <key (left arrow v) pressed?> then\n            change x by (SCROLL SPEED)\n        end\n    end\n    if <(x position) < [-480]> then\n        change x by (960)\n    end\n    if <[480] < (x position)> then\n        change x by (-960)\n    end\nend\n\nwhen I receive [thumbnail v]\nhide\n\n@Ceiling\n\nwhen I start as a clone\nshow\nforever\n    if <(RAIL Y) > []> then\n        set y to (((RAIL Y) + (FLOOR SHIMMY)) - (CAMERA Y))\n    else\n        set y to (999)\n    end\n    if <key (right arrow v) pressed?> then\n        change x by (SCROLL SPEED)\n    else\n        if <key (left arrow v) pressed?> then\n            change x by (() - (SCROLL SPEED))\n        end\n    end\n    if <(x position) < [-480]> then\n        change x by (960)\n    end\n    if <[480] < (x position)> then\n        change x by (-960)\n    end\nend\n\nwhen I receive [reset level v]\nset y to (999)\n\nwhen flag clicked\ngo to x: (0) y: (0)\nswitch costume to (ceiling v)\ncreate clone of (_myself_ v)\nchange x by (480)\ncreate clone of (_myself_ v)\ngo to x: (0) y: (0)\n\nwhen I receive [game on v]\ngo to [front v] layer\n\nwhen I receive [recoil v]\nif <key (right arrow v) pressed?> then\n    change x by (() - (SCROLL SPEED))\nelse\n    if <key (left arrow v) pressed?> then\n        change x by (SCROLL SPEED)\n    end\nend\nif <(x position) < [-480]> then\n    change x by (960)\nend\nif <[480] < (x position)> then\n    change x by (-960)\nend\n\nwhen I receive [thumbnail v]\nhide\n\n@Particles\n\nwhen flag clicked\ngo to [back v] layer\nhide\n\nwhen I start as a clone\nset rotation style [don't rotate v]\ngo to (player v)\nif <(MODE) = [cube]> then\n    if <(pick random (1) to (2)) = [1]> then\n        change y by (-10)\n    else\n        change y by (-8)\n    end\n    if <key (right arrow v) pressed?> then\n        change x by (-10)\n    else\n        if <key (left arrow v) pressed?> then\n            change x by (10)\n        end\n    end\n    set [color v] effect to (pick random (0) to (200))\n    switch costume to (size v)\n    set size to (pick random (100) to (125)) %\n    switch costume to (particle v)\n    set [speed x v] to (pick random (0.0) to (4.0))\n    set [speed y v] to (pick random (0.0) to (1.5))\nelse\n    point in direction ([direction v] of [player v])\n    if <key (right arrow v) pressed?> then\n        move (-20) steps\n        turn right (90) degrees\n        move (6) steps\n    else\n        if <key (left arrow v) pressed?> then\n            move (20) steps\n            turn right (-90) degrees\n            move (-6) steps\n        end\n    end\n    switch costume to (size v)\n    set [color v] effect to (pick random (120) to (140))\n    set size to (pick random (100) to (125)) %\n    switch costume to (particle v)\n    set [speed x v] to (pick random (-3.0) to (1.0))\n    set [speed y v] to (pick random (-4.0) to (4.0))\nend\nshow\nwait (0) seconds\nif <(MODE) = [cube]> then\n    repeat (10)\n        go to [front v] layer\n        Move\n        change y by (speed y)\n        change [ghost v] effect by (8)\n        switch costume to (size v)\n        set size to ((size) / (1.05)) %\n        switch costume to (particle v)\n    end\nelse\n    repeat (8)\n        go to [front v] layer\n        Move\n        change y by (speed y)\n        change [ghost v] effect by (10)\n        switch costume to (size v)\n        set size to ((size) / (0.995)) %\n        switch costume to (particle v)\n        change [brightness v] effect by (4)\n    end\nend\ndelete this clone\n\nwhen I receive [black screen home v]\n\ndefine Move\nif <key (right arrow v) pressed?> then\n    change x by ((SCROLL SPEED) + (speed x))\nelse\n    if <key (left arrow v) pressed?> then\n        change x by ((() - (SCROLL SPEED)) + (speed x))\n    end\nend\n\n@Explode Particles\n\nwhen flag clicked\ngo to [back v] layer\nhide\n\nwhen I start as a clone\ngo to (player v)\nset size to (pick random (75) to (150)) %\npoint in direction (pick random (-180) to (180))\nset [speed v] to (pick random (3.0) to (12.0))\ngo to [front v] layer\nshow\nset [color v] effect to (pick random (0) to (200))\nchange [ghost v] effect by (pick random (0) to (30))\nset [brightness v] effect to (100)\nrepeat (20)\n    move (speed) steps\n    change [ghost v] effect by (4)\n    change size by (-3)\nend\ndelete this clone\n\nwhen I receive [game over v]\nBOOM\n\ndefine BOOM\nrepeat (40)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nrepeat (pick random (3) to (5))\n    change [brightness v] effect by (-20)\nend\n\n@Player Assets\n\n@Background\n\nwhen flag clicked\nshow\nswitch costume to (tiny v)\nset size to (150) %\nswitch costume to (background v)\nwait (0) seconds\ngo to [back v] layer\nforever\n    if <key (right arrow v) pressed?> then\n        change x by ((SCROLL SPEED) / (10))\n    else\n        if <key (left arrow v) pressed?> then\n            change x by ((SCROLL SPEED) / (-10))\n        end\n    end\n    set y to ((90) - ((CAMERA Y) / (10)))\n    if <(x position) < [-270]> then\n        change x by (540)\n    end\n    if <[270] < (x position)> then\n        change x by (-540)\n    end\nend\n\nwhen I receive [reset level v]\nset y to ((90) - ((CAMERA Y) / (10)))\n\nwhen flag clicked\nforever\n    set [color v] effect to (Bg color)\nend\n\nwhen I receive [recoil v]\nif <key (right arrow v) pressed?> then\n    change x by ((SCROLL SPEED) / (-10))\nelse\n    if <key (left arrow v) pressed?> then\n        change x by ((SCROLL SPEED) / (10))\n    end\nend\nif <(x position) < [-480]> then\n    change x by (960)\nend\nif <[480] < (x position)> then\n    change x by (-960)\nend\n\nwhen I receive [thumbnail v]\nhide\n\n@Explode\n\nwhen flag clicked\nhide\n\nwhen I receive [game over v]\nBoom Size [170]\n\ndefine Boom Size (size)\nclear graphic effects\nshow\ngo to [front v] layer\ngo to (player v)\nset size to (20) %\nrepeat (15)\n    switch costume to (size v)\n    change size by (((size) - (size)) / (9))\n    change [ghost v] effect by (7)\n    switch costume to (costume1 v)\nend\nhide\n\nwhen I receive [win explosion v]\nBoom Size [600]\n\nwhen I receive [delete clones v]\nBoom Size [1000]\n\nwhen I start as a clone\ngo to [front v] layer\ngo to x: (pick random (-150) to (150)) y: (pick random (-50) to (100))\nset size to (5) %\nclear graphic effects\nset [color v] effect to (pick random (0) to (200))\nshow\nrepeat (pick random (8) to (10))\n    change size by (8)\n    change [ghost v] effect by (5)\nend\ndelete this clone\n\nwhen I receive [flash portal v]\nif <[27] < (FPS)> then\n    Flash size [85]\nend\n\ndefine Flash size (size)\nclear graphic effects\ngo to [front v] layer\ngo [backward v] (28) layers\nshow\ngo to (player v)\nset [ghost v] effect to (80)\nchange x by (SCROLL SPEED)\nset size to (size) %\nrepeat (6)\n    switch costume to (size v)\n    change size by (((size) - (size)) / (4))\n    change [ghost v] effect by (-20)\n    switch costume to (MODE)\n    if <key (right arrow v) pressed?> then\n        change x by (SCROLL SPEED)\n    else\n        if <key (left arrow v) pressed?> then\n            change x by (() - (SCROLL SPEED))\n        end\n    end\n    change y by (([last camera y v] of [player v]) - (CAMERA Y))\nend\nhide\n\n@Wave/ship particles`q`\n\nwhen I start as a clone\nclear graphic effects\ngo to (player v)\nset [color v] effect to (Color effect wave / ship)\nset size to (100) %\nshow\nset [ghost v] effect to (30)\nif <(MODE) = [Ship]> then\n    switch costume to (short v)\n    set rotation style [all around v]\n    point in direction ([direction v] of [player v])\n    if <key (right arrow v) pressed?> then\n        move (-20) steps\n        turn right (90) degrees\n        move (6) steps\n        turn right (90) degrees\n    else\n        if <key (left arrow v) pressed?> then\n            move (20) steps\n            turn right (-90) degrees\n            move (-6) steps\n            turn right (-90) degrees\n        end\n    end\n    wait (0) seconds\nelse\n    if <(MODE) = [Wave]> then\n        switch costume to (costume1 v)\n        set rotation style [all around v]\n        if <key (right arrow v) pressed?> then\n            if <([speed y v] of [player v]) > [0]> then\n                point in direction (45)\n                change y by (-8)\n            else\n                if <[0] > ([speed y v] of [player v])> then\n                    point in direction (135)\n                    change y by (12)\n                else\n                    point in direction (90)\n                    change y by (2)\n                end\n            end\n        else\n            if <key (left arrow v) pressed?> then\n                if <([speed y v] of [player v]) > [0]> then\n                    point in direction (-45)\n                    change y by (-8)\n                else\n                    if <[0] > ([speed y v] of [player v])> then\n                        point in direction (-135)\n                        change y by (12)\n                    else\n                        point in direction (-90)\n                        change y by (2)\n                    end\n                end\n            end\n        end\n        Move\n        wait (0) seconds\n    else\n        if <([speed y v] of [player v]) > [35]> then\n            switch costume to (costume5 v)\n        else\n            if <([speed y v] of [player v]) > [30]> then\n                switch costume to (costume8 v)\n            else\n                if <([speed y v] of [player v]) > [15]> then\n                    switch costume to (costume6 v)\n                else\n                    switch costume to (costume7 v)\n                end\n            end\n            go to (player v)\n            Move\n            wait (0) seconds\n            point towards (player v)\n        end\n    end\nend\nif <(MODE) = [Wave]> then\n    repeat until <touching (_edge_ v)?>\n        if <not <touching (player v)?>> then\n            go to [front v] layer\n        end\n        set [color v] effect to (Color effect wave / ship)\n        Move\n    end\n    repeat (6)\n        if <not <touching (player v)?>> then\n            go to [front v] layer\n        end\n        Move\n    end\n    delete this clone\nelse\n    if <(MODE) = [Ship]> then\n        if <<([speed y v] of [player v]) < [-7]> or <[7] < ([speed y v] of [player v])>> then\n            switch costume to (med v)\n        else\n            switch costume to (short v)\n        end\n        set [ghost v] to [0]\n        repeat (10)\n            if <not <touching (player v)?>> then\n                go to [front v] layer\n            end\n            change [ghost v] effect by (Ghost)\n            change [ghost v] by (1.5)\n            Move\n        end\n    else\n        repeat (10)\n            if <not <touching (player v)?>> then\n                go to [front v] layer\n            end\n            change [ghost v] effect by (5)\n            Move\n        end\n    end\n    delete this clone\nend\n\nif <<([speed y v] of [player v]) < [-7]> or <[7] < ([speed y v] of [player v])>> then\n    switch costume to (long v)\nelse\n    switch costume to (med v)\nend\nrepeat (3)\n    if <not <touching (player v)?>> then\n        go to [front v] layer\n    end\n    change [ghost v] effect by (5)\n    change size by (-6)\n    change x by (SCROLL SPEED)\nend\nif <<([speed y v] of [player v]) < [-7]> or <[7] < ([speed y v] of [player v])>> then\n    switch costume to (longer v)\nelse\n    switch costume to (long v)\nend\nrepeat (4)\n    if <not <touching (player v)?>> then\n        go to [front v] layer\n    end\n    change [ghost v] effect by (5)\n    change size by (-6)\n    change x by (SCROLL SPEED)\nend\ndelete this clone\n\nwhen I receive [game over v]\nif  then\n    delete this clone\nend\nwait (0.1) seconds\ndelete this clone\n\nwhen flag clicked\n\nwhen I receive [game on v]\nif  then\n    delete this clone\nend\nswitch costume to (costume4 v)\nforever\n    if <(costume [number v]) = [12]> then\n        change [color effect wave / ship v] by (10)\n        if <(Color effect wave / ship) = [200]> then\n            set [color effect wave / ship v] to [0]\n        end\n    end\nend\n\npoint in direction (90)\nturn right (-90) degrees\n\nwhen I receive [home v]\ndelete this clone\n\nwhen I receive [thumbnail v]\nhide\n\ndefine Move\nif <key (left arrow v) pressed?> then\n    change x by (() - (SCROLL SPEED))\nelse\n    if <key (right arrow v) pressed?> then\n        change x by (SCROLL SPEED)\n    end\nend\n\n@FPS counter\n\nwhen flag clicked\nhide\nforever\n    wait ((29) / (30)) seconds\n    stop [other scripts in sprite v]\n    set [fps v] to (Counter)\n    if <[27] < (FPS)> then\n        hide variable [fps v]\n    else\n        show variable [fps v]\n    end\n    set [counter v] to [0]\n    broadcast (Count v)\nend\n\nwhen I receive [count v]\nforever\n    change [counter v] by (1)\nend\n\n@End orb / jump orb\n\nwhen I receive [jump pad v]\nshow\nclear graphic effects\ngo to (player v)\nswitch costume to (costume2 v)\nif <not <touching color (#fff812)?>> then\n    change x by (27)\nend\nswitch costume to (costume1 v)\nchange y by (-15)\nset size to (150) %\nrepeat (15)\n    change size by (-10)\n    change x by ((SCROLL SPEED) * (-1))\n    change [ghost v] effect by (4)\nend\nhide\n\nrepeat until <touching color (#fff915)?>\n    change x by (1)\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [yellow orb v]\nshow\nclear graphic effects\ngo to (player v)\nchange x by (10)\nswitch costume to (costume1 v)\nset size to (200) %\nrepeat (10)\n    change size by (-20)\n    change x by ((SCROLL SPEED) * (-1))\n    change [ghost v] effect by (5)\nend\nhide\n\nif <not <touching color (#fff829)?>> then\n    change x by (27)\nend\n\nwhen I receive [level finished v]\n\nwhen I receive [level finished v]\nif  then\n    delete this clone\nend\nshow\nset size to (20) %\n\nwhen I start as a clone\ngo to [front v] layer\ngo [backward v] (85) layers\nset [color v] effect to (0)\ngo to x: (215) y: ((((direction) - (90)) / (2)) + (pick random (-5) to (5)))\nshow\nset size to (pick random (65) to (105)) %\nset [ghost v] effect to (pick random (45) to (70))\nrepeat (5)\n    change size by (5)\nend\nrepeat (4)\n    change size by (-5)\nend\n\nwhen I receive [delete clones v]\nwait (0.4) seconds\ndelete this clone\n\nrepeat (12)\n    create clone of (_myself_ v)\n    wait (pick random (0) to (0.5)) seconds\nend\n\nwhen I receive [win explosion v]\npoint in direction (37)\nrepeat (7)\n    switch costume to (costume5 v)\n    go to [back v] layer\n    go [forward v] (1) layers\n    create clone of (_myself_ v)\n    wait (pick random (0.1) to (0.25)) seconds\n    turn right (pick random (13) to (17)) degrees\nend\nbroadcast (Delete clones v)\nwait (0.2) seconds\nshow\nset size to (20) %\nswitch costume to (costume3 v)\ngo to x: (240) y: (0)\nswitch costume to (costume3 v)\nclear graphic effects\nrepeat (9)\n    go to [front v] layer\n    switch costume to (costume4 v)\n    change size by (200)\n    switch costume to (costume3 v)\n    change [ghost v] effect by (6)\nend\nrepeat (11)\n    go to [front v] layer\n    switch costume to (costume4 v)\n    change size by (100)\n    switch costume to (costume3 v)\n    change [ghost v] effect by (6)\nend\nhide\nrepeat (12)\n    create clone of (explode v)\n    wait (pick random (0) to (0.35)) seconds\nend\n\n@Level Assets\n\n@Level Back on track\n\nwhen I receive [reset level v]\nif <(Level) = [2]> then\n    if  then\n        delete this clone\n    end\n    hide\n    go to x: (0) y: (0)\n    switch costume to (1.1 v)\n    create clone of (_myself_ v)\n    next costume\n    change x by (480)\n    create clone of (_myself_ v)\n    go to x: (0) y: (0)\n    broadcast (Game On v)\nend\n\nwhen I receive [main menu v]\nhide\ndelete this clone\n\nwhen I start as a clone\nshow\nforever\n    if <(MODE) = [Cube]> then\n        set y to ((117) - (CAMERA Y))\n    else\n        set y to ((121) - (CAMERA Y))\n    end\n    if <key (right arrow v) pressed?> then\n        change x by (SCROLL SPEED)\n    else\n        if <key (left arrow v) pressed?> then\n            change x by (() - (SCROLL SPEED))\n        end\n    end\n    if <(x position) < [-480]> then\n        change x by (960)\n        next costume\n        next costume\n    end\n    if <[480] < (x position)> then\n        change x by (-960)\n        switch costume to ((costume [number v]) - (2))\n    end\nend\n\nwhen I receive [recoil v]\nif <key (right arrow v) pressed?> then\n    change x by (() - (SCROLL SPEED))\nelse\n    if <key (left arrow v) pressed?> then\n        change x by (SCROLL SPEED)\n    end\nend\nif <(x position) < [-480]> then\n    change x by (960)\n    next costume\n    next costume\nend\nif <[480] < (x position)> then\n    change x by (-960)\n    switch costume to ((costume [number v]) - (2))\nend\n\n@Menu2\n\nwhen this sprite clicked\nif <<(WAIT for menu) = [0]> and <<[5] > (costume [number v])> and <[2] < (costume [number v])>>> then\n    stop all sounds\n    start sound [Start v]\n    broadcast (GET TO YOUR POSITIONS v)\n    stop [other scripts in sprite v]\n    repeat (3)\n        change [brightness v] effect by (-8)\n    end\n    wait (1.5) seconds\n    broadcast (Reset level v)\nend\n\nwhen I receive [level select v]\nif  then\n    delete this clone\nend\nset [wait for menu v] to [0]\ngo to x: (0) y: (0)\nswitch costume to (background v)\ncreate clone of (_myself_ v)\ngo to x: (0) y: (60)\nswitch costume to (stereo madness v)\ncreate clone of (_myself_ v)\nswitch costume to (green main v)\ncreate clone of (_myself_ v)\ngo to x: (0) y: (0)\nswitch costume to (border v)\ncreate clone of (_myself_ v)\nhide\n\nwhen I start as a clone\ngo to [front v] layer\nclear graphic effects\nshow\nset [color effect v] to [0]\nif <(costume [number v]) = [3]> then\n    set size to (110) %\nend\nif <(costume [number v]) = [3]> then\n    set [level v] to [1]\nend\nif <(costume [number v]) = [2]> then\n    forever\n        if <(WAIT for menu) = [0]> then\n            if <<mouse down?> and <touching (mouse-pointer v)?>> then\n                if <[200] < (mouse x)> then\n                    broadcast (Right v)\n                    wait (0.3) seconds\n                else\n                    if <(mouse x) < [-200]> then\n                        broadcast (Left v)\n                        wait (0.3) seconds\n                    end\n                end\n            end\n            if <key (left arrow v) pressed?> then\n                broadcast (Left v)\n                wait (0.3) seconds\n            end\n            if <key (right arrow v) pressed?> then\n                broadcast (Right v)\n                wait (0.3) seconds\n            end\n        end\n    end\nend\nif <(costume [number v]) = [1]> then\n    forever\n        if <<mouse down?> and <<(mouse y) < [-140]> and <touching (mouse-pointer v)?>>> then\n            set [wait for menu v] to [1]\n            switch costume to (message v)\n            create clone of (_myself_ v)\n            switch costume to (x v)\n            create clone of (_myself_ v)\n            switch costume to (background v)\n        end\n    end\nend\nif <(costume [name v]) = [Message]> then\n    go to [front v] layer\n    go to x: (0) y: (0)\nelse\n    if <(costume [name v]) = [X]> then\n        go to x: (173) y: (70)\n        repeat (2)\n            go to [front v] layer\n        end\n        wait until <<mouse down?> and <touching (mouse-pointer v)?>>\n        broadcast (X sound v)\n    end\nend\nif <(costume [name v]) = [Green main]> then\n    hide\n    go to x: (-157) y: (-46)\n    switch costume to (green clone v)\n    Check percentage\n    switch costume to (green main v)\nend\nif <(costume [name v]) = [Green clone]> then\n    show\n    go [backward v] (0) layers\nend\n\nwhen I receive [reset level v]\ndelete this clone\n\nwhen I receive [left v]\nset [wait for menu v] to [1]\nif <(costume [name v]) = [Green clone]> then\n    delete this clone\nend\nif <<not <(costume [name v]) = [Green main]>> and <[2] < (costume [number v])>> then\n    set x to (1)\n    repeat (8)\n        set x to ((x position) * (2))\n    end\n    set x to ((x position) * (1.5))\n    wait (0) seconds\n    set x to (-512)\n    if <(costume [number v]) = [3]> then\n        switch costume to (coming soon v)\n    else\n        switch costume to ((costume [number v]) - (1))\n    end\n    set [level v] to ((costume [number v]) - (2))\n    repeat (10)\n        set x to ((x position) / (2))\n    end\n    set [wait for menu v] to [0]\nelse\n    repeat (12)\n        change y by (0)\n    end\n    if <(costume [number v]) = [1]> then\n        if <(Level) = [0]> then\n            Change color to [0]\n        else\n            if <(Level) = [1]> then\n                Change color to [0]\n            else\n                if <(Level) = [2]> then\n                    Change color to [40]\n                else\n                    if <(Level) = [3]> then\n                        Change color to [70]\n                    end\n                end\n            end\n        end\n    end\nend\nif <(costume [name v]) = [Green main]> then\n    wait ((1) / (15)) seconds\n    hide\n    go to x: (-157) y: (-46)\n    switch costume to (green clone v)\n    Check percentage\n    switch costume to (green main v)\nend\n\nwhen I receive [right v]\nset [wait for menu v] to [1]\nif <(costume [name v]) = [Green clone]> then\n    delete this clone\nend\nif <<not <(costume [name v]) = [Green main]>> and <[2] < (costume [number v])>> then\n    set x to (-1)\n    repeat (8)\n        set x to ((x position) * (2))\n    end\n    set x to ((x position) * (1.5))\n    wait (0) seconds\n    set x to (512)\n    if <(costume [number v]) = [5]> then\n        switch costume to (stereo madness v)\n    else\n        next costume\n    end\n    set [level v] to ((costume [number v]) - (2))\n    repeat (10)\n        set x to ((x position) / (2))\n    end\n    set [wait for menu v] to [0]\nelse\n    repeat (12)\n        change y by (0)\n    end\n    if <(costume [number v]) = [1]> then\n        if <(Level) = [0]> then\n            Change color to [0]\n        else\n            if <(Level) = [1]> then\n                Change color to [0]\n            else\n                if <(Level) = [2]> then\n                    Change color to [40]\n                else\n                    if <(Level) = [3]> then\n                        Change color to [70]\n                    end\n                end\n            end\n        end\n    end\nend\nif <(costume [name v]) = [Green main]> then\n    wait ((1) / (15)) seconds\n    hide\n    go to x: (-157) y: (-46)\n    switch costume to (green clone v)\n    Check percentage\n    switch costume to (green main v)\nend\n\nwhen I receive [home v]\nhide\ndelete this clone\n\nwhen flag clicked\nhide\nset [color effect v] to [0]\n\ndefine Check color\nif <[199] < (Color effect)> then\n    set [color v] effect to (0)\n    set [color effect v] to [0]\nend\nif <(Color effect) < [0]> then\n    set [color v] effect to (200)\n    set [color effect v] to [200]\nend\n\ndefine Change color to (target color effect)\nset [attempts to change color v] to [0]\nrepeat until <(target color effect) = (Color effect)>\n    change [color effect v] by (round (((target color effect) - (round (Color effect))) / (5)))\n    set [color v] effect to (Color effect)\n    Check color\n    change [attempts to change color v] by (1)\n    if <[12] < (Attempts to change color)> then\n        set [color effect v] to (target color effect)\n        set [color v] effect to (Color effect)\n    end\nend\n\nwhen I receive [x sound v]\nif <<(costume [name v]) = [X]> or <(costume [name v]) = [Message]>> then\n    set [wait for menu v] to [0]\n    delete this clone\nend\n\ndefine Check percentage\nif <(Level) = [0]> then\n    if <not <(☁ High score - beginner tutorial) = [0]>> then\n        repeat (☁ High score - beginner tutorial)\n            show\n            create clone of (_myself_ v)\n            change x by (3.14)\n            hide\n        end\n        create clone of (_myself_ v)\n    end\nelse\n    if <(Level) = [1]> then\n        if <not <(☁ High score - stereo madness) = [0]>> then\n            repeat (☁ High score - stereo madness)\n                show\n                create clone of (_myself_ v)\n                change x by (3.14)\n                hide\n            end\n            create clone of (_myself_ v)\n        end\n    end\nend\n\nwhen I receive [main menu v]\nerase all\ndelete this clone\n\nwhen I receive [game on v]\ndelete this clone\n\nif <[1439] < (x position)> then\n    go to [front v] layer\n    set [x position v] to [-480]\n    set x to (x position)\nend\nchange [x position v] by (40)\nset x to (x position)\n\nwhen I receive [thumbnail v]\nhide\n\n@Sprite2\n\nwhen flag clicked\nhide\n\nwhen I receive [get to your positions v]\nshow\ngo to x: (0) y: (0)\ngo to [front v] layer\nset [ghost v] effect to (100)\nrepeat (20)\n    change [ghost v] effect by (-5)\nend\nwait (1) seconds\nclear graphic effects\nrepeat (5)\n    change [ghost v] effect by (20)\nend\nhide\n\nwhen I receive [black screen home v]\nshow\ngo to x: (0) y: (0)\ngo to [front v] layer\nset [ghost v] effect to (100)\nrepeat (20)\n    change [ghost v] effect by (-5)\nend\nbroadcast (Home v)\nclear graphic effects\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [thumbnail v]\nhide\n\n@Skin/ back button/ quality\n\nwhen flag clicked\nhide\ngo to x: (-110) y: (0)\n\nwhen I receive [main menu v]\nstop [other scripts in sprite v]\nclear graphic effects\ngo to x: (-110) y: (0)\nswitch costume to (138458 v)\nset size to (90) %\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        Bounce to size [120] Force [2]\n    else\n        Bounce to size [100] Force [-2]\n    end\nend\n\nwhen I receive [play menu v]\nswitch costume to (back v)\ngo to x: (-210) y: (150)\nstop [other scripts in sprite v]\nset [ghost v] effect to (100)\nshow\nrepeat (10)\n    go to [front v] layer\n    change [ghost v] effect by (-10)\nend\nset size to (100) %\nclear graphic effects\nforever\n    if <touching (mouse-pointer v)?> then\n        Bounce to size [120] Force [2]\n    else\n        Bounce to size [100] Force [-2]\n    end\nend\n\nwhen I receive [skins v]\nswitch costume to (back v)\ngo to x: (-210) y: (150)\nshow\nstop [other scripts in sprite v]\nset [ghost v] effect to (0)\ngo to [front v] layer\nset size to (100) %\nclear graphic effects\nforever\n    if <touching (mouse-pointer v)?> then\n        Bounce to size [120] Force [2]\n    else\n        Bounce to size [100] Force [-2]\n    end\nend\n\nwhen I receive [pause music v]\nhide\n\nstop [other scripts in sprite v]\ngo to x: (0) y: (50)\nwait (0.0005) seconds\nshow\ngo to [front v] layer\nif <([particles v] of [player v]) = [1]> then\n    switch costume to (on v)\nelse\n    switch costume to (off v)\nend\nforever\n    if <touching (mouse-pointer v)?> then\n        Bounce to size [120] Force [2]\n    else\n        Bounce to size [100] Force [-2]\n    end\n    if <(Pause) = [0]> then\n        if <not <(SCROLL SPEED) = [5]>> then\n            hide\n        end\n        stop [this script v]\n    end\nend\n\nwhen this sprite clicked\nstop [other scripts in sprite v]\nrepeat (3)\n    change size by (-3)\n    change [brightness v] effect by (-8)\nend\nwait until <not <mouse down?>>\nif <(costume [number v]) = [1]> then\n    set size to (100) %\n    clear graphic effects\n    say [Coming soon] for (2) seconds\nelse\n    broadcast (Main Menu v)\nend\n\nbroadcast (Skins v)\n\nwhen I receive [home v]\nforever\n    if <touching (player v)?> then\n        go to [front v] layer\n    end\nend\n\ndefine Bounce to size (target size) Force (force)\nset [speed v] to (((Speed) * (0.9)) + (force))\nchange size by (Speed)\nif <<(size) > (target size)> = <(force) > [0]>> then\n    set size to (target size) %\n    set [speed v] to ((-0.8) * (Speed))\n    if <([abs v] of (Speed) ) < [4]> then\n        set [speed v] to [0]\n    end\nend\n\nwhen I receive [game on v]\nhide\ndelete this clone\n\nwhen I receive [level select v]\nswitch costume to (back v)\ngo to x: (-210) y: (150)\nshow\nstop [other scripts in sprite v]\nset size to (100) %\nclear graphic effects\nrepeat (2)\n    go to [front v] layer\nend\nforever\n    if <touching (mouse-pointer v)?> then\n        Bounce to size [120] Force [2]\n    else\n        Bounce to size [100] Force [-2]\n    end\nend\n\nwhen I receive [level select v]\n\nwhen I receive [thumbnail v]\nhide\n\nwhen I receive [thumbnail v]\nhide\n\n
Geometry Dash 2.2 Platformer mode!\nI made this because Geometry Dash 2.2 was released\nInstructions ↓ ↓ ↓ ↓: \nThis is just geometry dash but it’s a platformer.\nArrow keys to move\nAvoid spikes\nSorry not mobile friendly yet