Lands a Platformer

Instructions: Have fun this platformer allows you to jump, wall jump, move, jump with trampolines, and much more!\n\nMake sure to like, fav, and follow.\nversion 1.1   Mobile friendly!    ( mobile mode is next to impossible so i recommend you use your pc, laptop or computer )\n\n100% Pen Platformer :  https://scratch.mit.edu/projects/468080642/

@Stage\n\nwhen flag clicked\nbroadcast (Menu v)\nbroadcast (\[INTRO\] Play intro v)\n\nwhen I receive [menu v]\nset volume to (100) %\nswitch backdrop to (backdrop2 v)\n\nwhen I receive [intro v]\nset volume to (0) %\nstop all sounds\nswitch backdrop to (backdrop1 v)\n\nwhen I receive [mobile? v]\nset volume to (100) %\nswitch backdrop to (backdrop3 v)\n\nwhen I receive [menu v]\nforever\n    if <(Intro done) = [yes]> then\n        play sound [Platformer Music v] until done\n    end\nend\n\n@Blank\n\n@player\n\nwhen I receive [intro v]\nset [die? v] to [no]\nshow\ngo to [front v] layer\nset size to (80) %\nset [x vel v] to [0]\nset [y vel v] to [0]\nswitch costume to (left v)\ngo to x: (-200) y: (-80)\npoint in direction (90)\nforever\n    Platformer Physics [1] [0.9] [14]\n    if <<touching (danger v)?> or <touching (saw v)?>> then\n        set [die? v] to [yes]\n        spin off screen\n    end\n    if <touching (trampoline v)?> then\n        set [y vel v] to [20]\n        set [die? v] to [no]\n    end\n    if <touching (water/ lava v)?> then\n        set [die? v] to [almost]\n        wait (0.5) seconds\n        set [die? v] to [yes]\n        spin off screen\n    end\n    if <touching (ground v)?> then\n        set [die? v] to [no]\n    end\nend\n\nif <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <touching (ground v)?>> then\n    set [y vel v] to (jump height)\nelse\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <touching (water/ lava v)?>> then\n        set [y vel v] to [1.24]\n    end\nend\nif <touching (water/ lava v)?> then\n    change y by (([abs v] of (X vel) ) + (1))\nend\n\nwhen I receive [reset v]\nreset\n\nwhen I receive [intro v]\nforever\n    if <(x position) > [235]> then\n        broadcast (end v)\n    end\nend\n\nwhen I receive [intro v]\nforever\n    if <touching (trampoline v)?> then\n        play sound [Drum Boing v] until done\n    end\nend\n\nwhen I receive [intro v]\nforever\n    if <(Die?) = [almost]> then\n        if <touching (water/ lava v)?> then\n            if <(Liquid?) = [Lava]> then\n                if <(Costume?) = [normal]> then\n                    switch costume to (center hot v)\n                end\n                if <(Costume?) = [rainbow]> then\n                    switch costume to (center hot2 v)\n                end\n            end\n            if <(Liquid?) = [Water]> then\n                if <(Costume?) = [normal]> then\n                    switch costume to (center freeze v)\n                end\n                if <(Costume?) = [rainbow]> then\n                    switch costume to (center freeze2 v)\n                end\n            end\n        end\n    end\nend\n\ndefine Platformer Physics (speed) (friction) (jump height)\nchange [y vel v] by (-1)\nif <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <(Arrow x player) = [right]>>> then\n    change [x vel v] by (speed)\n    if <(Costume?) = [normal]> then\n        switch costume to (left v)\n    end\n    if <(Costume?) = [rainbow]> then\n        switch costume to (left2 v)\n    end\nend\nif <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <(Arrow x player) = [left]>>> then\n    change [x vel v] by ((speed) * (-1))\n    if <(Costume?) = [normal]> then\n        switch costume to (right v)\n    end\n    if <(Costume?) = [rainbow]> then\n        switch costume to (right2 v)\n    end\nend\nset [x vel v] to ((X vel) * (friction))\nchange x by (X vel)\nset [slope v] to [0]\nif <touching (ground v)?> then\n    repeat until <<not <touching (ground v)?>> or <(slope) = [-8]>>\n        change [slope v] by (-1)\n        change y by (1)\n    end\nend\nif <touching (ground v)?> then\n    change y by (slope)\n    repeat until <not <touching (ground v)?>>\n        change x by ((([abs v] of (X vel) ) / (X vel)) * (-1))\n    end\n    if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <(Arrow y player) = [jump]>>> then\n        if <(X vel) > [0]> then\n            set [x vel v] to [-12]\n        else\n            set [x vel v] to [12]\n        end\n        set [y vel v] to [12]\n    else\n        set [x vel v] to [0]\n    end\nend\nchange y by (Y vel)\nif <touching (ground v)?> then\n    repeat until <not <touching (ground v)?>>\n        change y by ((([abs v] of (Y vel) ) / (Y vel)) * (-1))\n    end\n    set [y vel v] to [0]\nend\nchange y by (-1)\nif <<<key (up arrow v) pressed?> or <<key (w v) pressed?> or <(Arrow y player) = [jump]>>> and <touching (ground v)?>> then\n    set [y vel v] to (jump height)\nend\nchange y by (1)\n\nwhen I receive [end v]\ngo to x: (-198) y: (-10)\n\nwhen I receive [hurt v]\nreset\n\nwhen I receive [intro v]\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nif <(Costume?) = [normal]> then\n    switch costume to (effect v)\n    repeat (10)\n        change [ghost v] effect by (10)\n        change [color v] effect by (8)\n        change size by (-5)\n    end\n    delete this clone\nend\nif <(Costume?) = [rainbow]> then\n    switch costume to (effect2 v)\n    repeat (10)\n        change [ghost v] effect by (10)\n        change [color v] effect by (1)\n        change size by (-5)\n    end\n    delete this clone\nend\n\nwhen I receive [intro v]\nforever\n    if <(Die?) = [no]> then\n        if <<<not <key (up arrow v) pressed?>> and <<not <key (right arrow v) pressed?>> and <not <key (left arrow v) pressed?>>>> and <<not <key (w v) pressed?>> and <<not <key (d v) pressed?>> and <<<not <key (a v) pressed?>> and <not <(Arrow y player) = [jump]>>> and <<not <(Arrow x player) = [left]>> and <not <(Arrow x player) = [right]>>>>>>> then\n            if <(Costume?) = [normal]> then\n                switch costume to (center v)\n            end\n            if <(Costume?) = [rainbow]> then\n                switch costume to (center2 v)\n            end\n        end\n    end\nend\n\ndefine spin off screen\nstart sound [Roblox Death Sound - OOF Sound Effect v]\nchange [deaths v] by (1)\nset [y vel v] to [10]\nrepeat until <(y position) < [-179]>\n    if <(Costume?) = [normal]> then\n        switch costume to (dead v)\n    end\n    if <(Costume?) = [rainbow]> then\n        switch costume to (dead2 v)\n    end\n    go to [front v] layer\n    turn right (10) degrees\n    change y by (Y vel)\n    change [y vel v] by (-1)\nend\nhide\ngo to x: (-200) y: (-80)\nreset\n\ndefine reset\nset [die? v] to [no]\nswitch costume to (center v)\nclear graphic effects\nshow\ngo to x: (-200) y: (-80)\npoint in direction (90)\nset [y vel v] to [0]\nset [x vel v] to [0]\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen flag clicked\nset [costume? v] to [normal]\n\nwhen I receive [intro v]\nforever\n    if <key (1 v) pressed?> then\n        set [costume? v] to [normal]\n    end\n    if <key (2 v) pressed?> then\n        set [costume? v] to [rainbow]\n    end\nend\n\n@Ground\n\nwhen flag clicked\nhide\n\nwhen I receive [intro v]\nshow\nforever\n    go to x: (-2) y: (6)\n    switch costume to (level)\nend\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\n@end\n\nwhen flag clicked\nhide\n\nwhen I receive [intro v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nshow\ngo to x: (240) y: (0)\nforever\n    go to [back v] layer\n    go [backward v] (99) layers\n    if <touching (player v)?> then\n        broadcast (end v)\n    end\nend\n\nforever\n    next costume\nend\n\ngo to x: (200) y: (-108)\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\n@danger\n\nwhen I receive [intro v]\nhide\ngo to x: (0) y: (0)\ngo to [back v] layer\nforever\n    go to [back v] layer\n    if <(level) = [1]> then\n        hide\n    else\n        if <(level) = [2]> then\n            switch costume to (spike v3 v)\n            point in direction (90)\n            go to x: (10) y: (-93)\n            show\n        else\n            if <(level) = [3]> then\n                switch costume to (spike v2 v)\n                point in direction (90)\n                go to x: (105) y: (-93)\n                show\n            else\n                if <(level) = [4]> then\n                    hide\n                else\n                    if <(level) = [5]> then\n                        switch costume to (shooting spike v)\n                        show\n                        point in direction (90)\n                        go to x: (([acos v] of ((timer) * (200)) ) * (20)) y: (([cos v] of ((timer) * (200)) ) * (20))\n                    else\n                        if <(level) = [6]> then\n                            switch costume to (spike v1 v)\n                            point in direction (90)\n                            go to x: (132) y: (-97)\n                            show\n                        else\n                            if <(level) = [7]> then\n                                switch costume to (spike v4 v)\n                                point in direction (90)\n                                go to x: (132) y: (-84)\n                                show\n                            else\n                                if <(level) = [8]> then\n                                    switch costume to (spike v4 v)\n                                    point in direction (90)\n                                    go to x: (0) y: (-89)\n                                    show\n                                else\n                                    if <(level) = [9]> then\n                                        switch costume to (shooting spike v)\n                                        show\n                                        point in direction (90)\n                                        go to x: (([acos v] of ((timer) * (200)) ) * (20)) y: (([cos v] of ((timer) * (200)) ) * (20))\n                                    else\n                                        if <(level) = [10]> then\n                                            point in direction (-90)\n                                            go to x: (54) y: (35)\n                                            switch costume to (spike v3 v)\n                                            show\n                                        else\n                                            if <(level) = [11]> then\n                                                go to x: (241) y: (0)\n                                                point in direction (-90)\n                                                switch costume to (spike v5 v)\n                                                show\n                                            else\n                                                if <(level) = [12]> then\n                                                    point in direction (90)\n                                                    hide\n                                                else\n                                                    if <(level) = [13]> then\n                                                        hide\n                                                    else\n                                                        if <(level) = [14]> then\n                                                            hide\n                                                        else\n                                                            if <(level) = [15]> then\n                                                                hide\n                                                            end\n                                                        end\n                                                    end\n                                                end\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\ngo to [back v] layer\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\n@Level\n\nwhen I receive [end v]\nchange [level v] by (1)\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen I receive [intro v]\nforever\n    repeat until <(level) = [15]>\n        change [timer v] by (1)\n        wait (1) seconds\n    end\nend\n\nwhen I receive [intro v]\nset [arrow x player v] to [0]\nset [arrow y player v] to [0]\nset [level v] to [1]\nset [level v] to [1]\nset [deaths v] to [0]\nset [timer v] to [0]\nhide variable [deaths v]\nhide variable [timer v]\nhide\n\nwhen I receive [intro v]\nforever\n    if <(level) = [15]> then\n        show variable [deaths v]\n        show variable [timer v]\n        broadcast (deaths v)\n    end\nend\n\nwhen I receive [menu v]\nset [arrow x player v] to [0]\nset [arrow y player v] to [0]\nset [level v] to [1]\nset [level v] to [1]\nset [deaths v] to [0]\nset [timer v] to [0]\nhide variable [timer v]\nhide variable [deaths v]\nhide\n\n@Clouds\n\nwhen I receive [intro v]\nhide\nrepeat (5)\n    create clone of (_myself_ v)\n    wait (1) seconds\nend\n\nwhen I start as a clone\nshow\nforever\n    go to [back v] layer\n    go [backward v] (900000000000000) layers\n    switch costume to (pick random (1) to (2))\n    set size to (pick random (70) to (80)) %\n    go to [back v] layer\n    set [ghost v] effect to (pick random (10) to (20))\n    if <(pick random (1) to (2)) = [1]> then\n        show\n        go to x: (200) y: (pick random (20) to (180))\n        repeat (50)\n            change x by (2)\n        end\n        if <touching (_edge_ v)?> then\n            hide\n        end\n        wait (pick random (1) to (5)) seconds\n    end\n    switch costume to (pick random (1) to (2))\n    set size to (pick random (70) to (80)) %\n    go to [back v] layer\n    set [ghost v] effect to (pick random (5) to (20))\n    if <(pick random (1) to (2)) = [2]> then\n        show\n        go to x: (220) y: (pick random (20) to (180))\n        repeat (110)\n            change x by (-4)\n        end\n        hide\n        wait (pick random (1) to (5)) seconds\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen I receive [menu v]\ndelete this clone\n\n@Trampoline\n\nwhen flag clicked\nhide\n\nwhen I receive [intro v]\nhide\nset size to (150) %\nforever\n    go to [back v] layer\n    if <(level) = [1]> then\n        hide\n    else\n        if <(level) = [2]> then\n            hide\n        else\n            if <(level) = [3]> then\n                go to x: (-120) y: (-108)\n                show\n            else\n                if <(level) = [4]> then\n                    go to x: (-80) y: (-108)\n                    show\n                else\n                    if <(level) = [5]> then\n                        hide\n                    else\n                        if <(level) = [6]> then\n                            hide\n                        else\n                            if <(level) = [7]> then\n                                hide\n                            else\n                                if <(level) = [8]> then\n                                    hide\n                                else\n                                    if <(level) = [9]> then\n                                        hide\n                                    else\n                                        if <(level) = [10]> then\n                                            go to x: (132) y: (-108)\n                                            show\n                                        else\n                                            if <(level) = [11]> then\n                                                go to x: (132) y: (-108)\n                                                show\n                                            else\n                                                if <(level) = [12]> then\n                                                    hide\n                                                else\n                                                    if <(level) = [13]> then\n                                                        hide\n                                                    else\n                                                        if <(level) = [14]> then\n                                                            go to x: (-75) y: (-108)\n                                                            show\n                                                        else\n                                                            if <(level) = [15]> then\n                                                                hide\n                                                            end\n                                                        end\n                                                    end\n                                                end\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [intro v]\nhide\nforever\n    go to [back v] layer\n    if <touching (player v)?> then\n        repeat (10)\n            next costume\n        end\n    end\nend\n\nwhen I receive [end v]\nswitch costume to (1 v)\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\n@sun\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\n\nwhen I receive [intro v]\ngo to [back v] layer\nshow\nforever\n    go to [back v] layer\n    broadcast (Tick v)\nend\n\nwhen I receive [deaths v]\ngo to [back v] layer\nshow\n\nwhen I receive [tick v]\ngo to [back v] layer\ngo to x: (([sin v] of ((timer) * (100)) ) * (20)) y: (([sin v] of ((timer) * (100)) ) * (20))\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\n@Decor\n\nwhen I receive [intro v]\nshow\nforever\n    go to x: (-2) y: (6)\n    switch costume to (level)\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\n@Water/ Lava\n\nwhen I receive [intro v]\nhide\ngo to x: (0) y: (0)\nset size to (100) %\ngo to [front v] layer\nforever\n    set [ghost v] effect to (30)\n    if <(level) = [1]> then\n        hide\n    else\n        if <(level) = [2]> then\n            hide\n        else\n            if <(level) = [3]> then\n                hide\n            else\n                if <(level) = [4]> then\n                    go to x: (113) y: (-123)\n                    set size to (100) %\n                    switch costume to (water v)\n                    show\n                else\n                    if <(level) = [5]> then\n                        go to x: (25) y: (73)\n                        set size to (60) %\n                        switch costume to (water v)\n                        show\n                    else\n                        if <(level) = [6]> then\n                            set size to (100) %\n                            hide\n                        else\n                            if <(level) = [7]> then\n                                hide\n                            else\n                                if <(level) = [8]> then\n                                    hide\n                                else\n                                    if <(level) = [9]> then\n                                        hide\n                                    else\n                                        if <(level) = [10]> then\n                                            hide\n                                        else\n                                            if <(level) = [11]> then\n                                                hide\n                                            else\n                                                if <(level) = [12]> then\n                                                    hide\n                                                else\n                                                    if <(level) = [13]> then\n                                                        go to x: (120) y: (-192)\n                                                        switch costume to (lava 2 v)\n                                                        show\n                                                    else\n                                                        if <(level) = [14]> then\n                                                            go to x: (52) y: (-163)\n                                                            switch costume to (lava v)\n                                                            show\n                                                        else\n                                                            if <(level) = [15]> then\n                                                                hide\n                                                            end\n                                                        end\n                                                    end\n                                                end\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen I receive [intro v]\nhide\ngo to x: (0) y: (0)\nset size to (100) %\ngo to [front v] layer\nforever\n    set [ghost v] effect to (30)\n    if <(level) = [1]> then\n        hide\n    else\n        if <(level) = [2]> then\n            hide\n        else\n            if <(level) = [3]> then\n                hide\n            else\n                if <(level) = [4]> then\n                    go to x: (113) y: (-123)\n                    set size to (100) %\n                    switch costume to (water v)\n                    show\n                else\n                    if <(level) = [5]> then\n                        go to x: (25) y: (73)\n                        set size to (60) %\n                        switch costume to (water v)\n                        show\n                    else\n                        if <(level) = [6]> then\n                            set size to (100) %\n                            hide\n                        else\n                            if <(level) = [7]> then\n                                hide\n                            else\n                                if <(level) = [8]> then\n                                    hide\n                                else\n                                    if <(level) = [9]> then\n                                        hide\n                                    else\n                                        if <(level) = [10]> then\n                                            hide\n                                        else\n                                            if <(level) = [11]> then\n                                                hide\n                                            else\n                                                if <(level) = [12]> then\n                                                    hide\n                                                else\n                                                    if <(level) = [13]> then\n                                                        go to x: (120) y: (-192)\n                                                        switch costume to (lava 2 v)\n                                                        show\n                                                    else\n                                                        if <(level) = [14]> then\n                                                            go to x: (52) y: (-163)\n                                                            switch costume to (lava v)\n                                                            show\n                                                        else\n                                                            if <(level) = [15]> then\n                                                                hide\n                                                            end\n                                                        end\n                                                    end\n                                                end\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [intro v]\nhide\ngo to x: (0) y: (0)\nset size to (100) %\ngo to [front v] layer\nforever\n    if <(costume [number v]) = [1]> then\n        set [liquid? v] to [Water]\n    end\n    if <<(costume [number v]) = [2]> or <(costume [number v]) = [3]>> then\n        set [liquid? v] to [Lava]\n    end\nend\n\n@Thumbnail\n\nwhen flag clicked\ngo to x: (0) y: (5000)\nset [ghost v] effect to (100)\nshow\nforever\n    go to [front v] layer\nend\n\nwhen flag clicked\nhide\nswitch costume to (costume2 v)\nforever\n    set [stop timer v] to [0]\nend\n\nwhen [timer v] > (Stop Timer)\ngo to x: (0) y: (5000)\nshow\ngo to [front v] layer\nforever\n    change y by (((0) - (y position)) / (7))\nend\n\nwhen flag clicked\nset [stop timer v] to [0]\nforever\n    set [stop timer v] to (timer)\nend\n\n@Saw\n\nwhen flag clicked\nhide\n\nwhen I receive [intro v]\nhide\nset size to (100) %\nforever\n    go to [back v] layer\n    if <(level) = [1]> then\n        hide\n    else\n        if <(level) = [2]> then\n            hide\n        else\n            if <(level) = [3]> then\n                go to x: (-28) y: (-100)\n                turn right (10) degrees\n                show\n            else\n                if <(level) = [4]> then\n                    hide\n                else\n                    if <(level) = [5]> then\n                        go to x: (225) y: (-100)\n                        turn right (10) degrees\n                        show\n                    else\n                        if <(level) = [6]> then\n                            go to x: (-49) y: (-100)\n                            turn right (10) degrees\n                            show\n                        else\n                            if <(level) = [7]> then\n                                go to x: (-112) y: (-100)\n                                turn right (10) degrees\n                                show\n                            else\n                                if <(level) = [8]> then\n                                    hide\n                                else\n                                    if <(level) = [9]> then\n                                        go to x: (227) y: (-100)\n                                        turn right (10) degrees\n                                        show\n                                    else\n                                        if <(level) = [10]> then\n                                            go to x: (0) y: (-100)\n                                            turn right (10) degrees\n                                            show\n                                        else\n                                            if <(level) = [11]> then\n                                                go to x: (-12) y: (-100)\n                                                turn right (10) degrees\n                                                show\n                                            else\n                                                if <(level) = [12]> then\n                                                    hide\n                                                else\n                                                    if <(level) = [13]> then\n                                                        hide\n                                                    else\n                                                        if <(level) = [14]> then\n                                                            go to x: (230) y: (-100)\n                                                            turn right (10) degrees\n                                                            show\n                                                        else\n                                                            if <(level) = [15]> then\n                                                                hide\n                                                            end\n                                                        end\n                                                    end\n                                                end\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I start as a clone\n\ndefine Clone\n\nClone\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\n@Play\n\nwhen I receive [menu v]\ngo to x: (0) y: (-85)\npoint in direction (90)\nset [ghost v] effect to (100)\nswitch costume to (costume1 v)\ngo to [back v] layer\nshow\nwait (1.5) seconds\nrepeat (25)\n    change [ghost v] effect by (-4)\nend\nforever\n    if <touching (mouse-pointer v)?> then\n        point in direction ((90) + (([cos v] of (((timer) - (1)) * (300)) ) * (4)))\n        set size to ((size) + (((130) - (size)) / (10))) %\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            go [backward v] (99) layers\n            broadcast (Mobile? v)\n            hide\n            stop [this script v]\n        end\n        set size to ((size) + (((115) - (size)) / (3))) %\n    else\n        point in direction (90)\n        set size to ((size) + (((100) - (size)) / (3))) %\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen I receive [intro v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\n@Menu\n\nwhen I receive [intro v]\nforever\n    if <(level) = [15]> then\n        broadcast (Show menu v)\n    else\n        hide\n        stop [other scripts in sprite v]\n        stop [this script v]\n    end\nend\n\nwhen I receive [menu v]\nhide variable [deaths v]\nhide variable [timer v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen I receive [show menu v]\ngo to x: (0) y: (-150)\npoint in direction (90)\nset [ghost v] effect to (0)\nswitch costume to (costume1 v)\ngo to [front v] layer\nshow\nwait (1.5) seconds\nrepeat (25)\n    change [ghost v] effect by (-4)\nend\nforever\n    if <touching (mouse-pointer v)?> then\n        point in direction ((90) + (([cos v] of (((timer) - (1)) * (300)) ) * (4)))\n        set size to ((size) + (((130) - (size)) / (10))) %\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            broadcast (Menu v)\n            hide\n            stop [this script v]\n        end\n        set size to ((size) + (((115) - (size)) / (3))) %\n    else\n        point in direction (90)\n        set size to ((size) + (((100) - (size)) / (3))) %\n        set [brightness v] effect to (0)\n    end\nend\n\n@Reset\n\nwhen I receive [intro v]\nshow\nswitch costume to (on v)\ngo to x: (166) y: (-154)\nforever\n    go to [front v] layer\n    go [forward v] (100000) layers\n    if <touching (mouse-pointer v)?> then\n        set size to (125) %\n        if <mouse down?> then\n            broadcast (Reset v)\n            wait until <not <mouse down?>>\n        end\n    else\n        set size to (100) %\n    end\nend\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen I receive [intro v]\nforever\n    point in direction ((([sin v] of ((timer) * (1000)) ) * (4)) + (90))\nend\n\n@Skip\n\nwhen I receive [intro v]\nshow\nswitch costume to (on v)\ngo to x: (216) y: (-154)\nforever\n    go to [front v] layer\n    go [forward v] (100000) layers\n    if <touching (mouse-pointer v)?> then\n        set size to (125) %\n        if <mouse down?> then\n            change [level v] by (1)\n            broadcast (Reset v)\n            wait until <not <mouse down?>>\n        end\n    else\n        set size to (100) %\n    end\n    if <(level) = [15]> then\n        hide\n    else\n        show\n    end\nend\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen I receive [intro v]\nforever\n    point in direction ((([sin v] of ((timer) * (1000)) ) * (4)) + (90))\nend\n\n@volume button\n\nwhen I receive [intro v]\nshow\nforever\n    play sound [the piano music v] until done\nend\n\nwhen this sprite clicked\nnext costume\nwait until <not <mouse down?>>\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen I receive [intro v]\nshow\nswitch costume to (on v)\ngo to x: (116) y: (-154)\nforever\n    go to [front v] layer\n    go [forward v] (100000) layers\n    if <(costume [number v]) = [1]> then\n        set volume to (100) %\n    else\n        if <(costume [number v]) = [2]> then\n            set volume to (0) %\n        end\n    end\n    if <touching (mouse-pointer v)?> then\n        set size to (125) %\n    else\n        set size to (100) %\n    end\nend\n\nwhen I receive [intro v]\nforever\n    point in direction ((([sin v] of ((timer) * (1000)) ) * (4)) + (90))\nend\n\n@Jump\n\nwhen flag clicked\nhide\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen I receive [intro v]\npoint in direction (90)\ngo to x: (-156) y: (-117)\nshow\ngo to [front v] layer\ngo [forward v] (99) layers\nforever\n    if <(Game Mode) = [Moblie]> then\n        point in direction (90)\n        go to x: (-156) y: (-117)\n        show\n        go to [front v] layer\n        go [forward v] (99) layers\n    end\n    if <(Game Mode) = [PC]> then\n        hide\n        stop [other scripts in sprite v]\n        stop [this script v]\n    end\n    if <touching (mouse-pointer v)?> then\n        set size to ((size) + (((130) - (size)) / (10))) %\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            set [arrow y player v] to [jump]\n            wait until <not <mouse down?>>\n            set [arrow y player v] to [0]\n        end\n        set size to ((size) + (((115) - (size)) / (3))) %\n    else\n        set size to ((size) + (((100) - (size)) / (3))) %\n        set [brightness v] effect to (0)\n    end\nend\n\n@Right\n\nwhen I receive [intro v]\npoint in direction (180)\ngo to x: (-106) y: (-142)\nshow\ngo to [front v] layer\ngo [forward v] (99) layers\nforever\n    if <(Game Mode) = [Moblie]> then\n        point in direction (180)\n        go to x: (-106) y: (-142)\n        show\n        go to [front v] layer\n        go [forward v] (99) layers\n    end\n    if <(Game Mode) = [PC]> then\n        hide\n        stop [other scripts in sprite v]\n        stop [this script v]\n    end\n    if <touching (mouse-pointer v)?> then\n        set size to ((size) + (((130) - (size)) / (10))) %\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            set [arrow x player v] to [right]\n            wait until <not <mouse down?>>\n            set [arrow x player v] to [0]\n        end\n        set size to ((size) + (((115) - (size)) / (3))) %\n    else\n        set size to ((size) + (((100) - (size)) / (3))) %\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen flag clicked\nhide\n\n@Left\n\nwhen I receive [intro v]\npoint in direction (0)\ngo to x: (-206) y: (-142)\nshow\ngo to [front v] layer\ngo [forward v] (99) layers\nforever\n    if <(Game Mode) = [Moblie]> then\n        go to x: (-206) y: (-142)\n        point in direction (0)\n        show\n        go to [front v] layer\n        go [forward v] (99) layers\n    end\n    if <(Game Mode) = [PC]> then\n        hide\n        stop [other scripts in sprite v]\n        stop [this script v]\n    end\n    if <touching (mouse-pointer v)?> then\n        set size to ((size) + (((130) - (size)) / (10))) %\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            set [arrow x player v] to [left]\n            wait until <not <mouse down?>>\n            set [arrow x player v] to [0]\n        end\n        set size to ((size) + (((115) - (size)) / (3))) %\n    else\n        set size to ((size) + (((100) - (size)) / (3))) %\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\n@Done\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen I receive [intro v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen flag clicked\nhide\n\nwhen I receive [mobile? v]\ngo to x: (172) y: (-140)\npoint in direction (90)\nset [ghost v] effect to (100)\nswitch costume to (costume1 v)\ngo to [front v] layer\nshow\nwait (1.5) seconds\nrepeat (25)\n    change [ghost v] effect by (-4)\nend\nforever\n    if <touching (mouse-pointer v)?> then\n        set size to ((size) + (((130) - (size)) / (10))) %\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            broadcast (intro v)\n            hide\n            stop [this script v]\n        end\n        set size to ((size) + (((115) - (size)) / (3))) %\n    else\n        set size to ((size) + (((100) - (size)) / (3))) %\n        set [brightness v] effect to (0)\n    end\nend\n\n@Back\n\nwhen I receive [menu v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen I receive [intro v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen flag clicked\nhide\n\nwhen I receive [mobile? v]\ngo to x: (-172) y: (-140)\npoint in direction (90)\nset [ghost v] effect to (100)\nswitch costume to (costume1 v)\ngo to [front v] layer\nshow\nwait (1.5) seconds\nrepeat (25)\n    change [ghost v] effect by (-4)\nend\nforever\n    if <touching (mouse-pointer v)?> then\n        set size to ((size) + (((130) - (size)) / (10))) %\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            broadcast (Menu v)\n            hide\n            stop [this script v]\n        end\n        set size to ((size) + (((115) - (size)) / (3))) %\n    else\n        set size to ((size) + (((100) - (size)) / (3))) %\n        set [brightness v] effect to (0)\n    end\nend\n\n@Mobile\n\nwhen I receive [mobile? v]\ngo to x: (-128) y: (120)\npoint in direction (90)\nset [ghost v] effect to (100)\nswitch costume to (costume1 v)\ngo to [front v] layer\nshow\nwait (1.5) seconds\nrepeat (25)\n    change [ghost v] effect by (-4)\nend\nforever\n    if <(Game Mode) = [Mobile]> then\n        switch costume to (costume2 v)\n    end\n    if <(Game Mode) = [PC]> then\n        switch costume to (costume1 v)\n    end\n    if <touching (mouse-pointer v)?> then\n        set size to ((size) + (((130) - (size)) / (10))) %\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            set [game mode v] to [Mobile]\n        end\n        set size to ((size) + (((115) - (size)) / (3))) %\n    else\n        set size to ((size) + (((100) - (size)) / (3))) %\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen I receive [menu v]\nset [game mode v] to [PC]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen flag clicked\nhide\n\nwhen I receive [intro v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\n@PC\n\nwhen I receive [menu v]\nset [game mode v] to [PC]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen I receive [intro v]\nhide\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen I receive [mobile? v]\ngo to x: (128) y: (120)\npoint in direction (90)\nset [ghost v] effect to (100)\nswitch costume to (costume1 v)\ngo to [front v] layer\nshow\nwait (1.5) seconds\nrepeat (25)\n    change [ghost v] effect by (-4)\nend\nforever\n    if <(Game Mode) = [Mobile]> then\n        switch costume to (costume1 v)\n    end\n    if <(Game Mode) = [PC]> then\n        switch costume to (costume2 v)\n    end\n    if <touching (mouse-pointer v)?> then\n        set size to ((size) + (((130) - (size)) / (10))) %\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            set [game mode v] to [PC]\n        end\n        set size to ((size) + (((115) - (size)) / (3))) %\n    else\n        set size to ((size) + (((100) - (size)) / (3))) %\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen flag clicked\nhide\n\n@Intro\n\nwhen I start as a clone\nif <(CloneID) = [2]> then\n    switch costume to (screen1 v)\n    Frame Tween Animation   x: [0] y: [0] size: [100] rotate: [90] speed: [1]\n    Set colors: [0] [-20] [0]\n    wait until <[1] < (\[INTRO\] Keyframe)>\n    show\n    wait until <[6] < (\[INTRO\] Keyframe)>\n    delete this clone\nend\n\nwhen I start as a clone\nif <(CloneID) = [1]> then\n    set [val1 v] to ((([abs v] of (X) ) + ([abs v] of (Y) )) * (0.0015))\n    switch costume to (circle1 v)\n    Frame Tween Animation   x: (X) y: (Y) size: [0] rotate: [90] speed: [1]\n    Set colors: [0] [-20] [0]\n    wait (Val1) seconds\n    show\n    repeat until <[1] < (\[INTRO\] Keyframe)>\n        switch costume to (screen1 v)\n        Frame Tween Size: [50] speed: [10]\n        switch costume to (circle1 v)\n    end\n    hide\n    set size to (50) %\n    wait until <[6] < (\[INTRO\] Keyframe)>\n    show\n    wait (Val1) seconds\n    repeat (20)\n        switch costume to (screen1 v)\n        Frame Tween Size: [0] speed: [10]\n        switch costume to (circle1 v)\n    end\n    repeat (5)\n        switch costume to (screen1 v)\n        Frame Tween Size: [0] speed: [10]\n        change [ghost v] by (20)\n        switch costume to (circle1 v)\n    end\n    delete this clone\nend\n\ndefine Clone background blobs\nset [x v] to [-240]\nset [y v] to [180]\nset [cloneid v] to [1]\nrepeat (11)\n    repeat (13)\n        create clone of (_myself_ v)\n        change [x v] by (((240) * (2)) / (12))\n    end\n    set [x v] to [-240]\n    change [y v] by (((-180) * (2)) / (10))\nend\nset [cloneid v] to [0]\n\nwhen I receive [\[intro\] listen for keyframes v]\nif <(CloneID) = [0]> then\n    set [val1 v] to [0]\n    wait until <[1] < (\[INTRO\] Keyframe)>\n    repeat until <[6] < (\[INTRO\] Keyframe)>\n        Set colors: [0] [100] [0]\n        Spiral spline explosion (Val1)\n        change [val1 v] by (25)\n        wait (0.1) seconds\n        Set colors: [0] [50] [0]\n        Spiral spline explosion (Val1)\n        change [val1 v] by (25)\n        wait (0.1) seconds\n    end\nend\n\ndefine Spiral spline explosion (angle)\nset [rot v] to (angle)\nset [cloneid v] to [3]\ncreate clone of (_myself_ v)\nchange [rot v] by (90)\ncreate clone of (_myself_ v)\nchange [rot v] by (90)\ncreate clone of (_myself_ v)\nchange [rot v] by (90)\ncreate clone of (_myself_ v)\nchange [rot v] by (90)\nset [cloneid v] to [0]\n\nwhen I start as a clone\nif <(CloneID) = [3]> then\n    set [val1 v] to [20]\n    switch costume to (lineexplosion1 v)\n    go to [front v] layer\n    go [forward v] (-5) layers\n    show\n    Frame Tween Animation   x: [0] y: [0] size: [0] rotate: (Rot) speed: [1]\n    repeat until <(Val1) < [2]>\n        set [val1 v] to ((Val1) * (0.9))\n        switch costume to (((Val1) * (-0.5)) + (74))\n        Frame Tween Size: [100] speed: [5]\n        move (Val1) steps\n    end\n    repeat (10)\n        set [val1 v] to ((Val1) * (0.9))\n        switch costume to (((Val1) * (-0.5)) + (74))\n        Frame Tween Size: [100] speed: [5]\n        move (Val1) steps\n        change [ghost v] by (10)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(CloneID) = [4]> then\n    set [val1 v] to [25]\n    set [var2 v] to (pick random (-1.1) to (1.1))\n    set [val3 v] to (pick random (0.9) to (0.75))\n    set [size v] to (pick random (50) to (150))\n    Set colors: [0] [100] [0]\n    switch costume to (lightray1 v)\n    go to [front v] layer\n    go [backward v] (3) layers\n    Frame Tween Animation   x: [0] y: [0] size: [0] rotate: (pick random (-180) to (180)) speed: [1]\n    show\n    repeat until <(Val1) < [2]>\n        set [val1 v] to ((Val1) * (Val3))\n        switch costume to (((Val1) * (-1)) + (100))\n        Frame Tween Size: (Size) speed: ((Val3) * (3))\n        turn right (Var2) degrees\n    end\n    repeat (10)\n        set [val1 v] to ((Val1) * (Val3))\n        switch costume to (((Val1) * (-1)) + (100))\n        Frame Tween Size: (Size) speed: ((Val3) * (3))\n        change [ghost v] by (10)\n        turn right (Var2) degrees\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(CloneID) = [5]> then\n    set [val1 v] to [50]\n    set [var2 v] to [0]\n    switch costume to (logoframe v)\n    Frame Tween Animation   x: [0] y: [0] size: [0] rotate: [90] speed: [1]\n    Set colors: [0] [100] [0]\n    wait until <[1] < (\[INTRO\] Keyframe)>\n    show\n    go to [front v] layer\n    repeat until <[6] < (\[INTRO\] Keyframe)>\n        set size to ((([sin v] of (Var2) ) * (Val1)) + (75)) %\n        set [val1 v] to ((Val1) * (0.85))\n        change [var2 v] by (30)\n        go to [front v] layer\n    end\n    set [var2 v] to [15]\n    repeat until <(size) < [20]>\n        change size by (Var2)\n        change [var2 v] by (-5)\n    end\n    delete this clone\nend\n\nwhen I receive [\[intro\] listen for keyframes v]\nif <(CloneID) = [0]> then\n    wait until <[1] < (\[INTRO\] Keyframe)>\n    repeat until <[6] < (\[INTRO\] Keyframe)>\n        Clone same sprite [4] (pick random (1) to (3))\n        Clone same sprite [8] (pick random (2) to (4))\n        wait (pick random (0.05) to (0.1)) seconds\n    end\nend\n\nwhen I start as a clone\nif <(CloneID) = [6]> then\n    set [val1 v] to [50]\n    set [var2 v] to [0]\n    set [rot v] to ((-360) * (1.25))\n    switch costume to (logo v)\n    Frame Tween Animation   x: [0] y: [0] size: [0] rotate: [90] speed: [1]\n    Set colors: [0] [-20] [0]\n    wait until <[1] < (\[INTRO\] Keyframe)>\n    show\n    go to [front v] layer\n    repeat until <[6] < (\[INTRO\] Keyframe)>\n        set size to ((([sin v] of ((Var2) + (-50)) ) * (Val1)) + (75)) %\n        point in direction ((Rot) + (90))\n        set [val1 v] to ((Val1) * (0.85))\n        set [rot v] to ((Rot) * (0.94))\n        change [var2 v] by (30)\n        go to [front v] layer\n    end\n    set [var2 v] to [20]\n    repeat until <(size) < [20]>\n        change size by (Var2)\n        point in direction ((Rot) + (90))\n        change [var2 v] by (-5)\n        set [rot v] to ((Rot) * (0.94))\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <[clonegroup1 v] contains (CloneID)?> then\n    set [brightnessval v] to [0]\n    forever\n        set [brightness v] to ((-20) + (BrightnessVal))\n        set [brightnessval v] to ((BrightnessVal) * (0.9))\n    end\nend\n\nwhen I receive [\[intro\] keyframe signal v]\nif <[clonegroup1 v] contains (CloneID)?> then\n    set [brightnessval v] to [40]\nend\n\nwhen I receive [\[intro\] keyframe signal v]\nif <(CloneID) = [5]> then\n    if <[2] < (\[INTRO\] Keyframe)> then\n        set [val1 v] to [12]\n    end\nend\n\nwhen I receive [\[intro\] keyframe signal v]\nif <(CloneID) = [6]> then\n    if <[2] < (\[INTRO\] Keyframe)> then\n        set [val1 v] to [12]\n    end\nend\n\ndefine Clone logo glow effect\nset [cloneid v] to [7]\nset [size v] to [100]\nset [ghostval v] to [4]\nrepeat (25)\n    change [size v] by (5)\n    change [ghostval v] by (0.1)\n    create clone of (_myself_ v)\nend\nset [cloneid v] to [0]\n\nwhen I start as a clone\nif <(CloneID) = [7]> then\n    set [rot v] to ((-360) * (1.25))\n    switch costume to (logo outline v)\n    Frame Tween Animation   x: [0] y: [0] size: [0] rotate: [90] speed: [1]\n    Set colors: [0] [100] [0]\n    wait until <[1] < (\[INTRO\] Keyframe)>\n    show\n    go to [front v] layer\n    repeat (25)\n        switch costume to (dot v)\n        go to [front v] layer\n        point in direction ((Rot) + (90))\n        Frame Tween Size: (Size) speed: [8]\n        set [rot v] to ((Rot) * (0.94))\n        change [ghost v] by (GhostVal)\n        switch costume to (logo outline v)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(CloneID) = [8]> then\n    set [val1 v] to [25]\n    set [var2 v] to (pick random (-1.1) to (1.1))\n    set [val3 v] to (pick random (0.6) to (0.8))\n    Set colors: [0] [100] [0]\n    switch costume to (screen ray 1 v)\n    go to [front v] layer\n    go [backward v] (3) layers\n    Frame Tween Animation   x: [0] y: [0] size: (pick random (125) to (150)) rotate: (pick random (-180) to (180)) speed: [1]\n    show\n    repeat until <(Val1) < [2]>\n        set [val1 v] to ((Val1) * (Val3))\n        switch costume to (((Val1) * (-0.45)) + (110))\n    end\n    repeat (10)\n        set [val1 v] to ((Val1) * (Val3))\n        switch costume to (((Val1) * (-0.45)) + (110))\n        change [ghost v] by (10)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(CloneID) = [9]> then\n    set [val1 v] to (pick random (5) to (10))\n    set [var2 v] to (pick random (10) to (50))\n    set [val3 v] to [0]\n    set [var4 v] to (pick random (100) to (250))\n    set [x v] to (pick random (-250) to (250))\n    set [y v] to (pick random (-200) to (200))\n    set [rot v] to (pick random (-2) to (2))\n    Set colors: [0] [50] [0]\n    switch costume to (pick random (123) to (125))\n    go to [front v] layer\n    go [backward v] (3) layers\n    Frame Tween Animation   x: [0] y: [0] size: (pick random (10) to (75)) rotate: (pick random (-180) to (180)) speed: [1]\n    wait until <[1] < (\[INTRO\] Keyframe)>\n    show\n    repeat until <<[6] < (\[INTRO\] Keyframe)> or <(Var4) < (Val3)>>\n        change [val3 v] by (1)\n        Frame Tween Position  x: (X) y: (Y) speed: (Var2)\n        turn right (Rot) degrees\n    end\n    repeat (10)\n        change [ghost v] by (10)\n        Frame Tween Position  x: (X) y: (Y) speed: (Var2)\n        turn right (Rot) degrees\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(CloneID) = [10]> then\n    Set colors: [0] [75] [0]\n    switch costume to (gradientshockwave v)\n    go to [front v] layer\n    go [backward v] (3) layers\n    Frame Tween Animation   x: [0] y: [0] size: [0] rotate: [90] speed: [1]\n    wait until <[3] < (\[INTRO\] Keyframe)>\n    show\n    repeat (25)\n        switch costume to (dot v)\n        change [ghost v] by (4)\n        Frame Tween Size: [1000] speed: [15]\n        switch costume to (gradientshockwave v)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(CloneID) = [11]> then\n    Set colors: [0] [100] [0]\n    switch costume to (dot pinwheel v)\n    go to [front v] layer\n    go [backward v] (3) layers\n    Frame Tween Animation   x: [0] y: [0] size: [0] rotate: [0] speed: [1]\n    wait until <[3] < (\[INTRO\] Keyframe)>\n    wait (Val1) seconds\n    show\n    repeat (25)\n        switch costume to (dot v)\n        Frame Tween Animation   x: [0] y: [0] size: [1250] rotate: [90] speed: [20]\n        switch costume to (dot pinwheel v)\n    end\n    delete this clone\nend\n\ndefine Clone dot spiral\nset [cloneid v] to [11]\nset [val1 v] to [0]\nrepeat (10)\n    create clone of (_myself_ v)\n    change [val1 v] by (0.025)\nend\nset [cloneid v] to [0]\n\nwhen I start as a clone\nif <(CloneID) = [12]> then\n    set [val1 v] to [10]\n    Set colors: [0] [100] [0]\n    switch costume to (shockwave1 v)\n    go to [front v] layer\n    Frame Tween Animation   x: [0] y: [0] size: [200] rotate: [90] speed: [1]\n    wait until <[1] < (\[INTRO\] Keyframe)>\n    show\n    repeat (25)\n        switch costume to (dot v)\n        change [ghost v] by (4)\n        set [val1 v] to ((Val1) * (0.8))\n        Frame Tween Size: [300] speed: [5]\n        switch costume to (((Val1) * (-1)) + (26))\n    end\n    delete this clone\nend\n\nwhen I receive [\[intro\] keyframe signal v]\nif <(CloneID) = [0]> then\n    Clone sprites [12] [1]\nend\n\ndefine Frame Tween Size: (s) speed: (spd)\nchange size by (((round (s)) - (round (size))) / (spd))\n\ndefine Start intro\nif <(\[INTRO\] Playing) = [false]> then\n    hide\n    set rotation style [all around v]\n    Frame Tween Animation   x: [0] y: [0] size: [100] rotate: [90] speed: [1]\n    Set colors: [0] [0] [0]\n    set [\[intro\] keyframe v] to [1]\n    set [autoupdatecolor v] to [true]\n    set [\[intro\] playing v] to [true]\n    set [intro done v] to [no]\n    Clone background blobs\n    Clone same sprite [2] [1]\n    Clone sprites [5] [2]\n    Clone logo glow effect\n    Clone same sprite [9] [15]\n    Clone sprites [10] [1]\n    Clone dot spiral\n    switch costume to (logo v)\n    set [\[intro\] keyframe v] to [1]\n    broadcast (\[INTRO\] listen for keyframes v)\n    reset timer\n    play sound [Prismo - Stronger \(CUT\) v] until done\n    wait (1) seconds\n    set [\[intro\] playing v] to [false]\n    broadcast (\[INTRO\] Stop intro v)\n    set [intro done v] to [yes]\n    stop [other scripts in sprite v]\nend\n\nwhen flag clicked\nset [\[intro\] playing v] to [false]\n\ndefine Set colors: (colot) (brightness) (transparency)\nset [color v] to (colot)\nset [brightness v] to (brightness)\nset [ghost v] to (transparency)\nset [color v] effect to (Color)\nset [brightness v] effect to (Brightness)\nset [ghost v] effect to (Ghost)\n\nwhen I start as a clone\nforever\n    if <(AutoUpdateColor) = [true]> then\n        set [color v] effect to (Color)\n        set [brightness v] effect to (Brightness)\n        set [ghost v] effect to (Ghost)\n    end\nend\n\nwhen I receive [\[intro\] play intro v]\ndelete this clone\n\nwhen I receive [\[intro\] play intro v]\nStart intro\n\ndefine Frame Tween Animation   x: (x) y: (y) size: (s) rotate: (r) speed: (spd)\nchange x by (((round (x)) - (round (x position))) / (spd))\nchange y by (((round (y)) - (round (y position))) / (spd))\nchange size by (((round (s)) - (round (size))) / (spd))\nturn right (((round (r)) - (round (direction))) / (spd)) degrees\n\nwhen I receive [\[intro\] stop intro v]\nstop [other scripts in sprite v]\ndelete this clone\n\nwhen I receive [\[intro\] listen for keyframes v]\nif <(CloneID) = [0]> then\n    forever\n        if <(item (\[INTRO\] Keyframe) of [keyframes v]) < (timer)> then\n            broadcast (\[INTRO\] keyframe signal v)\n            change [\[intro\] keyframe v] by (1)\n            if <(length of [keyframes v]) < (\[INTRO\] Keyframe)> then\n                stop [this script v]\n            end\n        end\n    end\nend\n\ndefine Clone same sprite (id) (count)\nset [cloneid v] to (id)\nrepeat (count)\n    create clone of (_myself_ v)\nend\nset [cloneid v] to [0]\n\ndefine Clone sprites (id) (count)\nset [cloneid v] to (id)\nrepeat (count)\n    create clone of (_myself_ v)\n    change [cloneid v] by (1)\nend\nset [cloneid v] to [0]\n\ndefine Frame Tween Position  x: (x) y: (y) speed: (spd)\nchange x by (((round (x)) - (round (x position))) / (spd))\nchange y by (((round (y)) - (round (y position))) / (spd))\n\nwhen flag clicked\nset [intro done v] to [no]\n\n