Tank Stars - A Platformer

Instructions: Click the green flag twice! Use arrow keys WASD keys or mobile to play, please choose Mobile or Computer, if you don't it won't work.\nI have spent a lot on this and worked really hard so, please follow give a ❤️ and ⭐️ . Please send the link of my game to other scratchers or friends you want.\nMy other platformers:\nhttps://scratch.mit.edu/projects/409520215/\nhttps://scratch.mit.edu/projects/408384610/\n\nMy other NOT platformer games:\nhttps://scratch.mit.edu/projects/406797925/\nhttps://scratch.mit.edu/projects/405394516/

@Stage\n\nwhen flag clicked\nswitch backdrop to (backdrop2 v)\nforever\n    if <([costume # v] of [level v]) = [12]> then\n        switch backdrop to (lava platformer v)\n    end\n    if <([costume # v] of [level v]) = [14]> then\n        switch backdrop to (backdrop2 v)\n    end\nend\n\n@player\n\nwhen I receive [start v]\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\ngo to [back v] layer\nset size to (30) %\nswitch costume to (clone v)\nset [brightness v] effect to (40)\nrepeat (10)\n    change [ghost v] effect by (5)\n    change size by (-1)\nend\ndelete this clone\n\nwhen flag clicked\nhide\nforever\n    change [movement y v] by (-0.5)\n    if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(mouse x) < (x position)>>> then\n        change [movement x v] by (-.7)\n    end\n    if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(x position) < (mouse x)>>> then\n        change [movement x v] by (.7)\n    end\n    set [movement x v] to ((Movement X) * (0.9))\n    change x by (Movement X)\n    if <touching (level v)?> then\n        change y by (1)\n        if <touching (level v)?> then\n            change y by (1)\n            if <touching (level v)?> then\n                change y by (1)\n                if <touching (level v)?> then\n                    change y by (1)\n                    if <touching (level v)?> then\n                        change y by (1)\n                        if <touching (level v)?> then\n                            change y by (1)\n                            if <touching (level v)?> then\n                                change y by (1)\n                                change x by ((Movement X) * (-1))\n                                if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(y position) < (mouse y)>>> then\n                                    set [movement y v] to [9]\n                                    if <(Movement X) > [0]> then\n                                        set [movement x v] to [-8]\n                                    else\n                                        set [movement x v] to [8]\n                                    end\n                                else\n                                    set [movement x v] to [-2]\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (Movement Y)\n    if <touching (level v)?> then\n        change y by ((Movement Y) * (-1))\n        set [movement y v] to [0]\n    end\n    change y by (-0.5)\n    if <<<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(y position) < (mouse y)>>> and <touching (level v)?>> then\n        set [movement y v] to [10]\n    end\n    change y by (-0.5)\n    if <<touching (spikes v)?> or <touching (skip v)?>> then\n        go to x: (-214) y: (15)\n    end\n    if <touching (bouncy v)?> then\n        set [movement y v] to [15]\n    end\nend\n\nwhen flag clicked\ngo to x: (-204) y: (-28)\nhide\nforever\n    if <(x position) > [208]> then\n        broadcast (NEXT LEVEL v)\n        broadcast (next level v)\n        go to x: (-204) y: (-1)\n        set [movement x v] to [0]\n        set [movement y v] to [0]\n    end\nend\n\nwhen flag clicked\nforever\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        point in direction (90)\n    end\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        point in direction (-90)\n    end\n    if <(gun) = [mg]> then\n        set [ammo v] to (item (1) of [ammo v])\n    else\n        if <(gun) = [burst]> then\n            set [ammo v] to (item (2) of [ammo v])\n        else\n            if <(gun) = [shotgun]> then\n                set [ammo v] to (item (3) of [ammo v])\n            else\n                if <(gun) = [sniper]> then\n                    set [ammo v] to (item (4) of [ammo v])\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nswitch costume to (costume2 v)\nforever\n    if <key (space v) pressed?> then\n        repeat until <(size) = [110]>\n            change size by (.5)\n        end\n    else\n        repeat until <(size) = [100]>\n            change size by (-.5)\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (spikes v)?> then\n        go to x: (-204) y: (-1)\n    end\nend\n\nwhen flag clicked\nset [type v] to [computer]\nforever\n    if <touching (spinny spikes v)?> then\n        go to x: (-204) y: (-1)\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (enemy v)?> then\n        go to x: (-204) y: (-1)\n    end\nend\n\nwhen I receive [start v]\nshow\n\nwhen I receive [switch v]\nswitch costume to (clone v)\n\nwhen flag clicked\nforever\n    if <([costume # v] of [level v]) = [16]> then\n        hide\n        broadcast (Hideeee v)\n        stop [all v]\n    end\nend\n\nwhen flag clicked\nwait (8) seconds\nforever\n    play sound [The best \(1\) v] until done\nend\n\n@turret\n\nwhen I receive [you won v]\ngo to (player v)\npoint in direction (60)\nstop [other scripts in sprite v]\n\nwhen flag clicked\nhide\nforever\n    set [brightness v] effect to (0)\n    go to [front v] layer\n    point towards (mouse-pointer v)\n    go to (player v)\n    go to x: ([x position v] of [player v]) y: ([y position v] of [player v])\n    if <touching (enemy bullet v)?> then\n        change [brightness v] effect by (5)\n    end\nend\n\nwhen I receive [start v]\nshow\n\nwhen I receive [hideeee v]\nhide\n\nwhen I receive [next level v]\nhide\n\nwhen I receive [fgf v]\nshow\n\n@computer bullet\n\nwhen I start as a clone\nshow\nif <not <(gun) = [shotgun]>> then\n    set [innacuracy v] to (pick random (-1) to (1))\nelse\n    set [innacuracy v] to (pick random (-5) to (5))\nend\ngo to (player v)\npoint towards (mouse-pointer v)\nturn right (innacuracy) degrees\nrepeat until <<touching (_edge_ v)?> or <<touching (enemy v)?> or <touching (level v)?>>>\n    if <not <(gun) = [sniper]>> then\n        move (17) steps\n    else\n        move (35) steps\n    end\nend\ndelete this clone\n\nwhen [1 v] key pressed\nset [gun v] to [mg]\n\nwhen [2 v] key pressed\nset [gun v] to [burst]\n\nwhen [3 v] key pressed\nset [gun v] to [shotgun]\n\nwhen [4 v] key pressed\nset [gun v] to [sniper]\n\nwhen I start as a clone\nforever\n    if <key (space v) pressed?> then\n        repeat until <(size) = [110]>\n            change size by (.5)\n        end\n    else\n        repeat until <(size) = [100]>\n            change size by (-.5)\n        end\n    end\n    if <(ammo) < [1]> then\n        broadcast (I neeed ammo! v) and wait\n    end\nend\n\nwhen [r v] key pressed\nforever\n    if <(type) = [computer]> then\n        if <<(ammo) < [1]> and <not <mouse down?>>> then\n            if <(gun) = [mg]> then\n                play sound [gun-reload v] until done\n                replace item (1) of [ammo v] with [60]\n            end\n            if <(gun) = [burst]> then\n                play sound [gun-reload v] until done\n                replace item (2) of [ammo v] with [60]\n            end\n            if <(gun) = [sniper]> then\n                play sound [sniper-reload v] until done\n                replace item (4) of [ammo v] with [60]\n            end\n            if <(gun) = [shotgun]> then\n                repeat (5)\n                    play sound [shotgun-reload v] until done\n                    replace item (3) of [ammo v] with ((item (3) of [ammo v]) + (2))\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [sounds on v]\nset volume to (100) %\n\nwhen flag clicked\ndelete all of [ammo v]\nadd [30] to [ammo v]\nadd [33] to [ammo v]\nadd [5] to [ammo v]\nadd [5] to [ammo v]\nset volume to (100) %\n\nwhen flag clicked\nset [initial-reload v] to [1]\nwait until <(ammo) < [1]>\nset [initial-reload v] to [0]\n\nwhen flag clicked\nforever\n    if <([costume # v] of [level v]) = [4]> then\n        set [gun v] to [sniper]\n    end\nend\n\nwhen I receive [start computer v]\nset [gun v] to [mg]\nwait (1) seconds\nforever\n    if <key (space v) pressed?> then\n        if <(item (1) of [ammo v]) > [0]> then\n            if <(gun) = [mg]> then\n                replace item (1) of [ammo v] with ((item (1) of [ammo v]) - (1))\n                start sound [machine gun shot v]\n                create clone of (_myself_ v)\n                wait (0.03) seconds\n            end\n        end\n        if <(item (2) of [ammo v]) > [0]> then\n            if <(gun) = [burst]> then\n                repeat (3)\n                    replace item (2) of [ammo v] with ((item (2) of [ammo v]) - (1))\n                    start sound [burst shot v]\n                    create clone of (_myself_ v)\n                    wait (0.03) seconds\n                end\n                wait (0.25) seconds\n            end\n        end\n        if <(item (3) of [ammo v]) > [0]> then\n            if <(gun) = [shotgun]> then\n                start sound [shotgun-shot v]\n                replace item (3) of [ammo v] with ((item (3) of [ammo v]) - (1))\n                repeat (4)\n                    create clone of (_myself_ v)\n                    create clone of (_myself_ v)\n                    wait (0.03) seconds\n                end\n                play sound [shotgun-cycle v] until done\n            end\n        end\n        if <(item (4) of [ammo v]) > [0]> then\n            if <(gun) = [sniper]> then\n                start sound [sniper-shot v]\n                create clone of (_myself_ v)\n                wait (.5) seconds\n                replace item (4) of [ammo v] with ((item (4) of [ammo v]) - (1))\n                play sound [sniper-cycle v] until done\n                wait (.5) seconds\n            end\n        end\n    end\nend\n\nwhen [space v] key pressed\nforever\n    if <(type) = [computer]> then\n        if <<(ammo) < [1]> and <key (space v) pressed?>> then\n            if <(gun) = [mg]> then\n                replace item (1) of [ammo v] with [30]\n                play sound [gun-reload v] until done\n            end\n        end\n    end\nend\n\nwhen I receive [start mobile v]\nstop [other scripts in sprite v]\n\nwhen I receive [hideeee v]\nhide\n\n@level\n\nwhen flag clicked\nswitch costume to (level2 v)\ngo to x: (0) y: (-90)\n\nwhen I receive [next level v]\nnext costume\n\nwhen flag clicked\nshow\ngo to [back v] layer\nset [xv v] to [0]\ngo to x: (0) y: (-90)\n\nwhen I receive [start v]\nshow\n\n@clouds\n\nwhen flag clicked\nforever\n    wait (4) seconds\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nshow\nif <(pick random (1) to (2)) = [1]> then\n    go to x: (-300) y: (pick random (0) to (100))\n    repeat until <[270] < (x position)>\n        change x by (3)\n    end\nelse\n    go to x: (300) y: (pick random (0) to (100))\n    repeat until <(x position) < [-290]>\n        change x by (-3)\n    end\nend\ndelete this clone\n\n@Platforms4\n\nwhen flag clicked\nforever\n    go to x: (18) y: (-28)\n    go to [back v] layer\nend\n\n@play\n\nwhen flag clicked\ngo to x: (2) y: (0)\nset [level v] to [1]\nshow\ngo to [front v] layer\nforever\n    go [forward v] (1) layers\n    if <touching (mouse-pointer v)?> then\n        set size to (87) %\n        if <mouse down?> then\n            broadcast (Start v)\n            hide\n            wait until <not <mouse down?>>\n        end\n    else\n        set size to (80) %\n    end\nend\n\n@Sprite7\n\nwhen flag clicked\nhide\n\nwhen I receive [do not hide! v]\nshow\ngo to x: (-88) y: (-64)\n\nwhen this sprite clicked\nbroadcast (Time to hide v)\nhide\n\n@spikes\n\nwhen flag clicked\nhide\ngo to [back v] layer\nforever\n    if <([costume # v] of [level v]) = [1]> then\n        switch costume to (level 1 v)\n        go to x: (44) y: (-94)\n    end\n    if <([costume # v] of [level v]) = [2]> then\n        switch costume to (level 2 v)\n        go to x: (44) y: (-94)\n    end\n    if <([costume # v] of [level v]) = [3]> then\n        switch costume to (level3 v)\n        go to x: (44) y: (-94)\n    end\n    if <([costume # v] of [level v]) = [4]> then\n        switch costume to (level 4 v)\n        go to x: (104) y: (72)\n    end\n    if <([costume # v] of [level v]) = [5]> then\n        switch costume to (level5 v)\n        go to x: (104) y: (72)\n    end\n    if <([costume # v] of [level v]) = [6]> then\n        switch costume to (level 6 v)\n        go to x: (104) y: (72)\n    end\n    if <([costume # v] of [level v]) = [7]> then\n        switch costume to (level 7 v)\n        go to x: (104) y: (72)\n    end\n    if <([costume # v] of [level v]) = [8]> then\n        switch costume to (level8 v)\n        go to x: (104) y: (72)\n    end\n    forever\n        if <([costume # v] of [level v]) = [9]> then\n            show\n            switch costume to (level9 v)\n            go to x: (104) y: (72)\n        end\n        if <([costume # v] of [level v]) = [10]> then\n            show\n            switch costume to (level10 v)\n            go to x: (104) y: (72)\n        end\n        if <([costume # v] of [level v]) = [11]> then\n            show\n            go to [back v] layer\n            switch costume to (level11 v)\n            go to x: (104) y: (72)\n        end\n        if <([costume # v] of [level v]) = [12]> then\n            show\n            go to [back v] layer\n            switch costume to (level12 v)\n            go to x: (104) y: (72)\n        end\n        if <([costume # v] of [level v]) = [13]> then\n            show\n            go to [back v] layer\n            switch costume to (level13 v)\n            go to x: (104) y: (72)\n        end\n    end\nend\n\nwhen I receive [start v]\nshow\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [hideeee v]\nhide\n\n@spinny spikes\n\nwhen flag clicked\nswitch costume to (costume7 v)\nhide\nforever\n    turn right (4) degrees\n    go to [back v] layer\n    if <([costume # v] of [level v]) = [3]> then\n        go to x: (-38) y: (-108)\n        show\n    end\n    if <([costume # v] of [level v]) = [5]> then\n        go to x: (60) y: (-40)\n        if <([costume # v] of [level v]) = [6]> then\n            switch costume to (costume1 v)\n        end\n        if <([costume # v] of [level v]) = [7]> then\n            switch costume to (costume7 v)\n            show\n        end\n        if <([costume # v] of [level v]) = [9]> then\n            show\n            go to x: (196) y: (-108)\n        end\n        if <([costume # v] of [level v]) = [10]> then\n            show\n            go to x: (38) y: (-76)\n        end\n        if <([costume # v] of [level v]) = [11]> then\n            hide\n        end\n        if <([costume # v] of [level v]) = [15]> then\n            hide\n        end\n    end\nend\n\nwhen flag clicked\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nhide\nswitch costume to (costume7 v)\nforever\n    turn right (4) degrees\n    go to [back v] layer\n    if <([costume # v] of [level v]) = [3]> then\n        go to x: (90) y: (-108)\n        show\n    end\n    if <([costume # v] of [level v]) = [5]> then\n        go to x: (-38) y: (-74)\n    end\n    if <([costume # v] of [level v]) = [6]> then\n        switch costume to (costume1 v)\n    end\n    if <([costume # v] of [level v]) = [7]> then\n        switch costume to (costume7 v)\n        show\n        go to x: (129) y: (-113)\n    end\n    if <([costume # v] of [level v]) = [9]> then\n        show\n        go to x: (201) y: (-113)\n    end\n    if <([costume # v] of [level v]) = [10]> then\n        show\n        go to x: (-130) y: (-45)\n    end\n    if <([costume # v] of [level v]) = [11]> then\n        hide\n    end\n    if <([costume # v] of [level v]) = [15]> then\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    if <([costume # v] of [level v]) = [6]> then\n        hide\n    end\nend\n\nwhen I receive [hideeee v]\nhide\n\n@enemy\n\nwhen flag clicked\nswitch costume to (costume3 v)\nshow\nforever\n    if <(type) = [computer]> then\n        if <([costume # v] of [level v]) = [4]> then\n            go to x: (223) y: (75)\n            switch costume to (costume1 v)\n            glide (3) secs to x: (60) y: (75)\n            switch costume to (costume2 v)\n            glide (3) secs to x: (223) y: (75)\n        end\n        if <([costume # v] of [level v]) = [5]> then\n            go to x: (219) y: (26)\n            switch costume to (costume4 v)\n            glide (8) secs to x: (-191) y: (-104)\n            switch costume to (costume5 v)\n            glide (8) secs to x: (219) y: (26)\n        end\n        if <([costume # v] of [level v]) = [6]> then\n            hide\n        end\n    end\nend\n\ngo to x: (-204) y: (-1)\n\nwhen flag clicked\nforever\n    if <touching (computer bullet v)?> then\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    if <(type) = [mobile]> then\n        hide\n    end\nend\n\n@skip\n\nwhen flag clicked\ngo to x: (-177) y: (145)\nset [level v] to [1]\nhide\ngo to [front v] layer\nforever\n    go [forward v] (1) layers\n    if <touching (mouse-pointer v)?> then\n        set size to (87) %\n        if <mouse down?> then\n            wait until <not <mouse down?>>\n            broadcast (Next level v)\n        end\n    else\n        set size to (80) %\n    end\nend\n\nwhen I receive [start v]\nshow\n\nwhen I receive [hideeee v]\nhide\n\n@Sprite3\n\nwhen flag clicked\ngo to x: (-2) y: (109)\nset [level v] to [1]\nshow\ngo to [front v] layer\nforever\n    go [forward v] (1) layers\n    if <touching (mouse-pointer v)?> then\n        set size to (87) %\n        if <mouse down?> then\n            wait until <not <mouse down?>>\n        end\n    else\n        set size to (80) %\n    end\nend\n\nwhen I receive [start v]\nhide\n\n@Hoe to\n\nwhen flag clicked\ngo to x: (4) y: (-59)\nset [level v] to [1]\nshow\ngo to [front v] layer\nforever\n    go [forward v] (1) layers\n    if <touching (mouse-pointer v)?> then\n        set size to (87) %\n        if <mouse down?> then\n            broadcast (Do not hide! v)\n            wait until <not <mouse down?>>\n        end\n    else\n        set size to (80) %\n    end\nend\n\nwhen I receive [start v]\nhide\ngo to x: (236) y: (177)\n\nbroadcast (Time to hide v)\n\n@Sprite6\n\nwhen I receive [do not hide! v]\nshow\ngo to x: (29) y: (77)\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nhide\n\nwhen I receive [time to hide v]\nhide\n\n@Sprite8\n\nwhen flag clicked\nhide\nforever\n    if <([costume # v] of [level v]) = [6]> then\n        show\n        go to x: (36) y: (28)\n    end\n    if <([costume # v] of [level v]) = [7]> then\n        hide\n    end\nend\n\n@bouncy\n\nwhen flag clicked\nhide\nforever\n    if <([costume # v] of [level v]) = [3]> then\n        hide\n    end\n    if <([costume # v] of [level v]) = [4]> then\n        hide\n    end\n    if <([costume # v] of [level v]) = [6]> then\n        show\n        switch costume to (costume2 v)\n    end\n    if <([costume # v] of [level v]) = [7]> then\n        hide\n    end\n    if <([costume # v] of [level v]) = [8 ]> then\n        show\n        go to x: (-103) y: (-108)\n        switch costume to (costume2 v)\n    end\n    if <([costume # v] of [level v]) = [8 ]> then\n        hide\n    end\n    if <([costume # v] of [level v]) = [9]> then\n        hide\n    end\nend\n\nwhen backdrop switches to [game_over v]\nhide\n\nwhen backdrop switches to [backdrop1 v]\nhide\n\n@mobile\n\nwhen flag clicked\ngo to x: (-85) y: (-61)\nshow\ngo to [front v] layer\nswitch costume to (costume1 v)\nforever\n    go [forward v] (1) layers\n    if <touching (mouse-pointer v)?> then\n        set size to (87) %\n        if <mouse down?> then\n            switch costume to (costume2 v)\n            set [type v] to [mobile]\n            wait until <not <mouse down?>>\n        end\n    else\n        set size to (80) %\n    end\nend\n\nwhen I receive [start v]\nhide\n\nwhen this sprite clicked\nbroadcast (Start Mobile v)\n\n@computer\n\nwhen flag clicked\ngo to x: (94) y: (-59)\nshow\ngo to [front v] layer\nswitch costume to (costume2 v)\nforever\n    go [forward v] (1) layers\n    if <touching (mouse-pointer v)?> then\n        set size to (87) %\n        if <mouse down?> then\n            switch costume to (costume3 v)\n            set [type v] to [computer]\n            wait until <not <mouse down?>>\n        end\n    else\n        set size to (80) %\n    end\nend\n\nwhen I receive [start v]\nhide\n\nwhen this sprite clicked\nbroadcast (Start computer v)\n\n@mobile bullet\n\nwhen I receive [sounds on v]\nset volume to (100) %\n\nwhen flag clicked\ndelete all of [ammo v]\nadd [30] to [ammo v]\nadd [33] to [ammo v]\nadd [5] to [ammo v]\nadd [5] to [ammo v]\nset volume to (100) %\n\nwhen flag clicked\nset [initial-reload v] to [1]\nwait until <(ammo) < [1]>\nset [initial-reload v] to [0]\n\nwhen I receive [shoot v]\nset [gun v] to [mg]\nstart sound [machine gun shot v]\ncreate clone of (_myself_ v)\nwait (0.03) seconds\n\nwhen I receive [hideeee v]\nhide\n\nwhen I start as a clone\nshow\ngo to (player v)\npoint towards (mouse-pointer v)\nturn right (innacuracy) degrees\nrepeat until <<touching (_edge_ v)?> or <<touching (enemy v)?> or <touching (level v)?>>>\n    if <not <(gun) = [sniper]>> then\n        move (17) steps\n    else\n        move (35) steps\n    end\nend\ndelete this clone\n\n@cykcyk2\n\nglide (0.5) secs to x: (0) y: (-400)\n\nwhen I receive [menu v]\ngo to [front v] layer\nswitch costume to (costume1 v)\nset size to (100) %\nhide\nwait (3) seconds\nshow\ngo to x: (0) y: (-200)\nset [y speed v] to [19]\nrepeat (20)\n    change y by (y speed)\n    change [y speed v] by (-1)\nend\nrepeat (25)\n    switch costume to (costume3 v)\n    change size by (((1800) - (size)) / (6))\n    switch costume to (costume1 v)\nend\nswitch costume to (costume2 v)\nwait (0.5) seconds\nhide\n\n@Intro\n\nwhen I start as a clone\nif <(Clone ID) = [1]> then\n    go to x: (0) y: (0)\n    set size to (0) %\n    point in direction (-90)\n    show\n    switch costume to (logo\[white\] v)\n    repeat until <<(round (direction)) = [90]> and <(round (size)) = [100]>>\n        set [bounce v] to ((((100) - (size)) * (0.1)) + ((Bounce) * (0.8)))\n        go to [front v] layer\n        change [ghost v] effect by (-5)\n        change size by (Bounce)\n        turn right (((90) - (direction)) / (8)) degrees\n    end\n    wait (0.3) seconds\n    set [clone id v] to [3]\n    hide\n    wait (0.1) seconds\n    go to x: (0) y: (0)\n    set size to (0) %\n    point in direction (-90)\n    show\n    switch costume to (logo\[orange\] v)\n    repeat until <(round (size)) = [80]>\n        set [bounce v] to ((((80) - (size)) * (0.1)) + ((Bounce) * (0.8)))\n        change size by (Bounce)\n        go to [front v] layer\n    end\n    wait (0.15) seconds\n    repeat (10)\n        change x by ((-15) - ((x position) / (8)))\n    end\n    set [clone id v] to [4]\n    wait (1.5) seconds\n    repeat (25)\n        change [ghost v] effect by (4)\n    end\n    delete this clone\nend\n\nwhen flag clicked\ngo to [front v] layer\nset [clone id v] to [0]\ngo to x: (400) y: (0)\nhide\nset [clone id v] to [1]\nset volume to (100) %\nstart sound [Intro v]\ncreate clone of (_myself_ v)\nwait (0.01) seconds\nset [clone id v] to [2]\nrepeat until <(Clone ID) = [3]>\n    create clone of (_myself_ v)\n    wait (0.1) seconds\nend\nwait until <(Clone ID) = [4]>\nwait (0.1) seconds\nset [clone id v] to [i]\ncreate clone of (_myself_ v)\nwait (0.1) seconds\nset [clone id v] to [d]\ncreate clone of (_myself_ v)\nwait (1) seconds\nrepeat (10)\n    set [clone id v] to [7]\n    create clone of (_myself_ v)\n    wait (.085) seconds\nend\nset [clone id v] to [Done]\nrepeat (33)\n    change volume by (-3.3333333333333333333333333333)\nend\nstop all sounds\nbroadcast (Start v)\n\nwhen I start as a clone\nif <(Clone ID) = [2]> then\n    set size to (100) %\n    point in direction (90)\n    switch costume to (screen  v)\n    repeat until <(round (x position)) = [0]>\n        show\n        set [brightness v] effect to ((0) + ((20) * ([cos v] of (() * (170)) )))\n        change x by (((0) - (x position)) / (5))\n        change [ghost v] effect by (5)\n    end\n    broadcast (MENU v)\n    delete this clone\nend\n\ndefine Particles\nset [clone id v] to [p]\ncreate clone of (_myself_ v)\ncreate clone of (_myself_ v)\ncreate clone of (_myself_ v)\ncreate clone of (_myself_ v)\ncreate clone of (_myself_ v)\ncreate clone of (_myself_ v)\ncreate clone of (_myself_ v)\ncreate clone of (_myself_ v)\ncreate clone of (_myself_ v)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nif <(Clone ID) = [p]> then\n    if <(pick random (1) to (2)) = [1]> then\n        switch costume to (particles 1 v)\n    else\n        switch costume to (particles 2 v)\n    end\n    go to x: (0) y: (0)\n    set [ghost v] effect to (0)\n    set size to (200) %\n    show\n    set [yv v] to (pick random (0.) to (20.))\n    set [xv v] to (pick random (-10.) to (10.))\n    go to [front v] layer\n    repeat until <touching (_edge_ v)?>\n        change y by (yv)\n        change x by (xv)\n        change [yv v] by (-0.5)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [i]> then\n    go to x: (400) y: (-10)\n    set [ghost v] effect to (100)\n    switch costume to (i v)\n    set size to (80) %\n    show\n    repeat (20)\n        change x by ((-2) - ((x position) / (8)))\n        change [ghost v] effect by (-5)\n    end\n    wait (.5) seconds\n    repeat (25)\n        change [ghost v] effect by (4)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [d]> then\n    go to x: (400) y: (-10)\n    set [ghost v] effect to (100)\n    switch costume to (d v)\n    set size to (80) %\n    show\n    repeat (20)\n        change x by ((8) - ((x position) / (8)))\n        change [ghost v] effect by (-5)\n    end\n    wait (.5) seconds\n    repeat (25)\n        change [ghost v] effect by (4)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [7]> then\n    go to x: (-10) y: (-400)\n    set [ghost v] effect to (0)\n    switch costume to (screen  v)\n    set size to (120) %\n    show\n    repeat until <(round (x position)) = [0]>\n        go to [front v] layer\n        show\n        set [brightness v] effect to ((0) + ((20) * ([cos v] of ((timer) * (170)) )))\n        change y by (((0) - (y position)) / (5))\n        change [ghost v] effect by (5)\n    end\n    delete this clone\nend\n\n@transition\n\nwhen flag clicked\nhide\n\nwhen I receive [next level v]\nset [trans on or off v] to [On]\ngo [forward v] (1000) layers\ngo to [front v] layer\nset x to (500)\nshow\nrepeat (6)\n    change x by (-80)\nend\nwait (0.6) seconds\nchange x by (-15)\nrepeat (5)\n    change x by (-80)\nend\nset [trans on or off v] to [Off]\nhide\nbroadcast (fgf v)\n\n