Scratch Land - An Awesome Scrolling Platformer 

Instructions: Scratch Land - An Awesome Scrolling Platformer  #Games#all\n=======================================\nI started scratch as I was bored in the lockdown...\n=======================================\nControls -\n- Use Arrow keys/WAD/Mobile Controls to Move\n- Up arrow/w/Mobile Controls - Jump\n- Left arrow/a/Mobile Controls - To go left\n- Right arrow/d/Mobile Controls - To go right\n=======================================\n#43 Trending on Games(as of 5th Feb)\nTop remixed - 15/02/2021\nTop Loved- 17/02/2021\n=======================================\nCredits -\n-Scratch cat art at the win screen - @ScratchCat\n-Intro - @Tralaxy\n-Scratch Cat Walk Cycle - @Griffpatch\n-Scratch Cat on Groom art - @Ceebee\n-Parallax code - @StratfordJames\n-Love and Fav Detector - @TimMcCool\n-Joystick art and code - @Yellow-Brain\n-Music - Goodbye by @-Xaf-\nAnd Everything else is by me (65%) by me\n=======================================\nTags -\n#all#all#all#all#all#all#all#all#all#all#all#all#all#all#all#Games#Games#Games#Games#Games#Games#Games#Games#Games#Games#Games#Games#Platformer#Platformer#Platformer#Platformer#Platformer#Platformer#Platformer#Platformer#Platformer#Platformer#Platformer#Platformer#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Guna#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling#Scrolling

@Stage\n\nwhen flag clicked\nforever\n    wait (15) seconds\n    play sound [Goodbye v] until done\nend\n\n@Platforms\n\nwhen I receive [green flag v]\nhide\n\nwhen I receive [tick v]\nPosition ((x) - (SCROLL X)) ((y) - (SCROLL Y))\n\nwhen I receive [setip v]\nhide\nset [x v] to [0]\nset [y v] to [0]\nif <(LEVEL) = [1]> then\n    switch costume to (level 1 1 v)\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\nend\n\ndefine Position (x) (y)\ngo to x: (x) y: (y)\nif <<(x) = (x position)> and <(y) = (y position)>> then\n    show\nelse\n    hide\nend\n\nwhen I receive [reset v]\ndelete this clone\n\ndefine Clone at x: (x) y: (y)\ncreate clone of (_myself_ v)\nchange [x v] by (x)\nchange [y v] by (y)\nnext costume\n\n@Crystal\n\nwhen I receive [setip v]\nset [coins v] to [0]\nset [collectables2: x v] to [0]\nset [collectables2: y v] to [0]\nif <(LEVEL) = [1]> then\n    Clone at x: [5755] y: [0]\nend\nset [collectables2: x v] to [-9999999999]\n\nhide\n\nwhen I receive [reset v]\ndelete this clone\n\nwhen I receive [green flag v]\nhide\n\nwhen I receive [tick v]\nPosition ((Collectables2: x) - (SCROLL X)) ((Collectables2: y) - (SCROLL Y))\nif <touching (scratch cat v)?> then\n    start sound [Coin v]\n    change [collected v] by (1)\n    broadcast (Coin Collected v)\n    broadcast (END v)\nend\n\nhide\n\ndefine Position (x) (y)\ngo to x: (x) y: (y)\nif <<(x) = (x position)> and <(y) = (y position)>> then\n    show\nelse\n    hide\nend\n\ndefine Clone at x: (x) y: (y)\nset [collectables2: x v] to (x)\nset [collectables2: y v] to (y)\ncreate clone of (_myself_ v)\n\n@Scratch Cat\n\nwhen flag clicked\nshow\nforever\n    if <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > (x position)>>> then\n        wait (0.01) seconds\n        next costume\n        point in direction (90)\n    end\n    if <<key (left arrow v) pressed?> or <<mouse down?> and <(mouse x) < (x position)>>> then\n        wait (0.01) seconds\n        next costume\n        point in direction (-90)\n    end\nend\n\ndefine Game on\nif <(Checkpoint) = [0]> then\n    set [x v] to [0]\n    set [y v] to [0]\n    switch backdrop to (backdrop2 v)\nelse\n    if <(Checkpoint) = [1]> then\n        set [x v] to [1047]\n        set [y v] to [0]\n    else\n        if <(Checkpoint) = [2]> then\n            set [x v] to [2233]\n            set [y v] to [144]\n        else\n            if <(Checkpoint) = [3]> then\n                set [x v] to [3090]\n                set [y v] to [0]\n            else\n                if <(Checkpoint) = [4]> then\n                    set [x v] to [4307]\n                    set [y v] to [-80]\n                else\n                    set [x v] to [5347]\n                    set [y v] to [226]\n                end\n            end\n        end\n    end\nend\nset [speed y v] to [0]\nset [speed x v] to [0]\nset [in air v] to [0]\nset [exit v] to []\nset [scroll x v] to [0]\nset [scroll y v] to [0]\nset size to (50) %\nclear graphic effects\nshow\n\ndefine Game - Die\nset [exit v] to []\nrepeat (5)\n    hide\n    wait (0.1) seconds\n    show\n    wait (0.1) seconds\nend\n\nwhen I receive [green flag v]\nhide\n\nwhen I receive [play game v]\nset [level v] to [1]\nforever\n    Game on\n    broadcast (Setip v) and wait\n    repeat until <(EXIT) > []>\n        broadcast (Tick v) and wait\n        Tick\n    end\n    if <(EXIT) = [Win]> then\n        Game - Win\n    else\n        Game - Die\n        broadcast (Reset v) and wait\n    end\nend\n\ndefine Tick\nif <<key (left arrow v) pressed?> or <<mouse down?> and <(mouse x) < (x position)>>> then\n    change [speed x v] by (-3)\n    point in direction (-90)\nend\nif <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > (x position)>>> then\n    change [speed x v] by (3)\n    point in direction (90)\nend\nset [speed x v] to ((Speed x) * (0.8))\nif <([abs v] of (Speed x) ) > [0.9]> then\n    Change player x by (round (Speed x))\nend\nif <<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>> then\n    if <(in air) < [4]> then\n        set [speed y v] to [16]\n    end\nend\nif <(Speed y) > [-20]> then\n    change [speed y v] by (-2)\nend\nChange player y by (Speed y)\nTest - Die\nset [scroll x v] to (x)\nif <(SCROLL X) < [0]> then\n    set [scroll x v] to [0]\nend\nif <(SCROLL X) > [5761]> then\n    set [scroll x v] to [5761]\nend\nchange [scroll y v] by (round (((y) - (SCROLL Y)) / (10)))\nif <(SCROLL Y) < [0]> then\n    set [scroll y v] to [0]\nend\nPosition\nif <(y) < [-178]> then\n    play sound [Hurt v] until done\n    set [exit v] to [Die]\nend\n\nwhen flag clicked\nforever\n    if <<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>> then\n        if <(in air) < [1]> then\n            play sound [Jump v] until done\n        end\n    end\nend\n\ndefine Change player x by (sx)\nchange [x v] by (sx)\nPosition\nif <touching (platforms v)?> then\n    repeat (12)\n        change [y v] by (1)\n        Position\n        if <not <touching (platforms v)?>> then\n            stop [this script v]\n        end\n    end\n    change [y v] by (-12)\n    if <<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>> then\n        if <(sx) > [0]> then\n            set [speed x v] to [-16]\n        else\n            set [speed x v] to [16]\n        end\n        set [in air v] to [0]\n    else\n        set [speed x v] to [0]\n    end\n    repeat until <not <touching (platforms v)?>>\n        if <(sx) > [0]> then\n            change [x v] by (-1)\n        else\n            change [x v] by (1)\n        end\n        Position\n    end\nend\n\ndefine Position\ngo to x: ((x) - (SCROLL X)) y: ((y) - (SCROLL Y))\n\ndefine Change player y by (sy)\nchange [y v] by (sy)\nchange [in air v] by (1)\nPosition\nrepeat until <not <touching (platforms v)?>>\n    if <(sy) > [0]> then\n        change [y v] by (-1)\n    else\n        change [y v] by (1)\n        set [in air v] to [0]\n    end\n    Position\n    set [speed y v] to [0]\nend\n\ndefine Game - Win\nif <touching (crystal v)?> then\n    broadcast (END v)\nend\n\nwhen flag clicked\nforever\n    go to [back v] layer\nend\n\nwait (3) seconds\n\nwhen flag clicked\nwait (13) seconds\nbroadcast (Green Flag v) and wait\nbroadcast (Play Game v) and wait\n\nwhen I receive [tick v]\ngo to [back v] layer\n\n@Sprite1\n\nwhen I receive [end v]\ngo to [front v] layer\nshow\nstop [all v]\n\nwhen flag clicked\nhide\n\n@Thumbnail \n\nwhen flag clicked\nforever\n    go to [front v] layer\n    set [ghost v] effect to (100)\nend\n\n@parallax2\n\nwhen I receive [tick v]\nGo to (((((@ID) * (480)) - ((SCROLL X) / (6))) mod (960)) - (480)) (Y_SHAKE)\ngo to [back v] layer\n\nwhen I start as a clone\npoint in direction (90)\nset [ghost v] effect to (25)\nset [@id v] to [0]\nswitch costume to (item0 v)\nhide\n\ndefine Go to (x) (y)\ngo to x: (x) y: (y)\nif <<(x position) = (x)> and <(y position) = (y)>> then\n    show\nelse\n    hide\nend\n\nwhen flag clicked\nset [ghost v] effect to (25)\ncreate clone of (_myself_ v)\nset [@id v] to [-1]\nswitch costume to (item1 v)\n\nwhen flag clicked\nforever\n    go to [back v] layer\nend\n\n@detector\n\nwhen flag clicked\nhide\nset [faved___ v] to [0]\nset [loved__ v] to [0]\nset [clone id v] to [0]\ncreate clone of (_myself_ v)\nwait (0.2) seconds\nset [clone id v] to [1]\ncreate clone of (_myself_ v)\nwait until <<(LOVED__) = [1]> and <(FAVED___) = [1]>>\nwait (1) seconds\nshow\ngo to x: (0) y: (50)\nreset timer\nswitch costume to (pick random (1) to (4))\nset [ghost v] effect to (100)\nrepeat until <(timer) > [3.5]>\n    change y by ((y position) / (-15))\n    change [ghost v] effect by (-3)\nend\nreset timer\nrepeat until <(timer) > [3.5]>\n    change y by (((y position) - (-100)) / (-15))\n    change [ghost v] effect by (10)\nend\n\nwhen I start as a clone\nif <(clone id) = [0]> then\n    go to x: (-15) y: (0)\n    set [loved__ v] to [0]\n    switch costume to (love v)\n    forever\n        set [love? v] to <touching (mouse-pointer v)?>\n        if <touching (mouse-pointer v)?> then\n            set [loved__ v] to [1]\n        end\n    end\nend\nif <(clone id) = [1]> then\n    go to x: (0) y: (0)\n    switch costume to (fave v)\n    set [faved___ v] to [0]\n    forever\n        set [fav v] to <touching (mouse-pointer v)?>\n        if <touching (mouse-pointer v)?> then\n            set [faved___ v] to [1]\n        end\n    end\nend\n\n@joystick\n\nwhen flag clicked\nhide\n\nwhen I receive [play game v]\nset [ghost v] effect to (25)\nswitch costume to (2 v)\ncreate clone of (_myself_ v)\nswitch costume to (3 v)\ncreate clone of (_myself_ v)\nswitch costume to (4 v)\ncreate clone of (_myself_ v)\nforever\n    if <<mouse down?> and <<not <(MODE 1) = [open]>> and <not <(MODE 2) = [open]>>>> then\n        switch costume to (1 v)\n        show\n        set [joystick mouse x v] to (mouse x)\n        set [joystick mouse y v] to (mouse y)\n        go to x: (mouse x) y: (mouse y)\n        wait until <not <mouse down?>>\n        if <mouse down?> then\n            show\n        else\n            hide\n        end\n    end\nend\n\nwhen I start as a clone\nset [ghost v] effect to (25)\nforever\n    if <<mouse down?> and <<not <(MODE 1) = [open]>> and <not <(MODE 2) = [open]>>>> then\n        show\n    else\n        hide\n    end\n    go to x: (joystick mouse x) y: (joystick mouse y)\n    point towards (mouse-pointer v)\n    if <(costume [name v]) = [4]> then\n        move (distance to [mouse-pointer v]) steps\n    else\n        if <(costume [name v]) = [3]> then\n            move (((distance to [mouse-pointer v]) / (3)) * (2)) steps\n        else\n            move ((distance to [mouse-pointer v]) / (3)) steps\n        end\n    end\nend\n\n@Free Intro\n\nwhen I start as a clone\nif <(Clone ID) = [Screen]> then\n    go to [front v] layer\n    switch costume to (size hack v)\n    set size to (140) %\n    show\n    repeat (50)\n        go to [front v] layer\n        go [forward v] (1000) layers\n        switch costume to (size hack v)\n        change size by (((100) - (size)) / (5))\n        switch costume to (screen v)\n    end\n    wait (7) seconds\n    delete this clone\nend\n\nwhen flag clicked\nhide\ngo to x: (0) y: (0)\nset size to (100) %\npoint in direction (90)\nclear graphic effects\nset [color v] effect to (0)\nset [ghost v] effect to (0)\nset [brightness v] effect to (0)\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    go to x: (-1000) y: (-1000)\n    point in direction (0)\n    go to [front v] layer\n    switch costume to (name v)\n    set size to (100) %\n    wait (1.33) seconds\n    show\n    Smooth Glide x [0] y [0] size [100] direction [90] speed [6]\nend\n\ndefine bounce finished size (size) bounciness (bounciness) elasticity (elasticity)\nset [size v] to [0]\nrepeat (40)\n    set [size v] to (((size) * (bounciness)) + (((size) - (size)) / (elasticity)))\n    change size by (size)\nend\n\ndefine Smooth Glide x: (x) y: (y) speed: (speed)\nrepeat until <<(round (x)) = (round (x position))> and <(round (y)) = (round (y position))>>\n    change x by (((x) - (x position)) / (speed))\n    change y by (((y) - (y position)) / (speed))\nend\ngo to x: (x) y: (y)\n\ndefine Smooth Size: (size) speed: (speed)\nrepeat until <(round (size)) = (round (size))>\n    change size by (((size) - (size)) / (speed))\nend\nset size to (size) %\n\ndefine Smooth Rotate to (d) degrees at speed (s)\nrepeat until <(round (direction)) = (round (d))>\n    turn right (((round (d)) - (round (direction))) / (s)) degrees\nend\npoint in direction (d)\n\ndefine Smooth Glide x (x) y (y) size (size) direction (direction) speed (speed)\nrepeat until <<(round (x)) = (round (x position))> and <<(round (y)) = (round (y position))> and <<(round (size)) = (round (size))> and <(round (direction)) = (round (direction))>>>>\n    change x by (((x) - (x position)) / (speed))\n    change y by (((y) - (y position)) / (speed))\n    change size by (((size) - (size)) / (speed))\n    turn right (((direction) - (direction)) / (speed)) degrees\nend\ngo to x: (x) y: (y)\nset size to (size) %\npoint in direction (direction)\n\nwhen I start as a clone\nif <(Clone ID) = [Arrow2]> then\n    repeat (20)\n        change [ghost v] effect by (5)\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Arrow1]> then\n    show\n    switch costume to (arrow v)\n    set size to (100) %\n    point in direction (90)\n    go to x: (0) y: (0)\n    Smooth Glide x: [200] y: [0] speed: [8]\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Arrow2]> then\n    show\n    switch costume to (arrow v)\n    set size to (100) %\n    point in direction (-90)\n    go to x: (0) y: (0)\n    Smooth Glide x: [-200] y: [0] speed: [8]\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Arrow1]> then\n    repeat (20)\n        change [ghost v] effect by (5)\n    end\nend\n\nwhen flag clicked\nCreate Clone [Background]\nwait (3.55) seconds\nCreate Clone [Screen]\n\nwhen I start as a clone\nif <(Clone ID) = [Background]> then\n    go to [front v] layer\n    go [backward v] (1000) layers\n    switch costume to (size hack v)\n    set size to (100) %\n    show\n    point in direction (90)\n    go to x: (0) y: (0)\n    switch costume to (background v)\n    set [brightness v] effect to (100)\n    set [ghost v] effect to (100)\n    repeat (10)\n        change [brightness v] effect by (-10)\n        change [ghost v] effect by (-10)\n    end\n    wait (13.4) seconds\n    delete this clone\nend\n\ndefine Create Clone (id)\nset [clone id v] to (id)\ncreate clone of (_myself_ v)\nwait (0) seconds\n\nwhen I start as a clone\nif <(Clone ID) = [White End]> then\n    switch costume to (size hack v)\n    set size to (150) %\n    switch costume to (end v)\n    show\n    set [brightness v] effect to (100)\n    go to x: (500) y: (500)\n    point in direction (135)\n    repeat (50)\n        change x by (((22) - (x position)) / (6))\n        change y by (((22) - (y position)) / (6))\n        go to [front v] layer\n        go [backward v] (1) layers\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Black End]> then\n    switch costume to (size hack v)\n    set size to (150) %\n    switch costume to (end v)\n    show\n    go to x: (500) y: (500)\n    point in direction (135)\n    repeat (50)\n        change x by (((20) - (x position)) / (10))\n        change y by (((20) - (y position)) / (10))\n        go to [front v] layer\n    end\n    repeat (20)\n        change x by (((20) - (x position)) / (10))\n        change y by (((20) - (y position)) / (10))\n        go to [front v] layer\n        change [ghost v] effect by (5)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Cheveron]> then\n    switch costume to (cheveron v)\n    set size to (5) %\n    go to [front v] layer\n    go [backward v] (1) layers\n    show\n    repeat (50)\n        go to [front v] layer\n        go [backward v] (2) layers\n        switch costume to (size hack v)\n        change size by (((360) - (size)) / (12))\n        switch costume to (cheveron v)\n    end\n    delete this clone\nend\n\nwhen flag clicked\nwait (3.55) seconds\nCreate Clone [Cheveron]\n\nwhen flag clicked\nwait (12) seconds\nCreate Clone [Black End]\nCreate Clone [White End]\n\nwhen flag clicked\nstart sound [Nurko & luma - tonight \[NIGHTCORE\] v]\n\nwhen I start as a clone\nif <(Clone ID) = [Pinwheel]> then\n    switch costume to (pinwheel v)\n    set size to (100) %\n    go to [front v] layer\n    go [backward v] (3) layers\n    set [ghost v] effect to (0)\n    set [brightness v] effect to (0)\n    show\n    repeat (238)\n        turn right (3) degrees\n    end\n    delete this clone\nend\n\nwhen flag clicked\nwait (3.55) seconds\nCreate Clone [Pinwheel]\n\nwhen flag clicked\nwait (5.17) seconds\nCreate Clone [Cheveron]\n\nwhen flag clicked\nwait (6.74) seconds\nCreate Clone [Arrow1]\nCreate Clone [Arrow2]\n\nwhen flag clicked\nwait (0) seconds\nCreate Clone [Name]\n\ndefine Shake (size)\nset size to (size) %\ngo to x: (0) y: (0)\nrepeat (26)\n    go to [front v] layer\n    change size by (((100) - (size)) / (10))\n    go to x: (([sin v] of ((timer) * (1000)) ) * (((size) - (100)) * (0.1))) y: (([sin v] of ((timer) * (800)) ) * (((size) - (100)) * (0.1)))\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (3.48) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (5.09) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (6.7) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (8.28) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (9.86) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (11.41) seconds\n    repeat (34)\n        change [ghost v] effect by (4)\n        change size by (((30) - (size)) / (8))\n        go to x: (([sin v] of ((timer) * (1000)) ) * (((size) - (100)) * (0.1))) y: (([sin v] of ((timer) * (800)) ) * (((size) - (100)) * (0.1)))\n    end\n    delete this clone\nend\n\nwhen flag clicked\nwait (9.86) seconds\nCreate Clone [Cheveron]\n\ndefine Frame Tween Size: (s) speed: (spd)\nset [c v] to (costume [name v])\nswitch costume to (size hack v)\nchange size by (((round (s)) - (round (size))) / (spd))\nswitch costume to (c)\n\nwhen I start as a clone\nif <(Clone ID) = [Circles]> then\n    go to [front v] layer\n    go [backward v] (2) layers\n    show\n    switch costume to (circles v)\n    go to x: (0) y: (0)\n    set size to (1) %\n    point in direction (0)\n    set [ghost v] effect to (0)\n    repeat (38)\n        Frame Tween Size: [400] speed: [7]\n        Frame tween rotation: [90] speed: [13]\n        go to [front v] layer\n        go [backward v] (2) layers\n        change [ghost v] effect by ((100) / (38))\n        change [brightness v] effect by (3.3333)\n    end\n    delete this clone\nend\n\ndefine Frame tween rotation: (r) speed: (spd)\nturn right (((round (r)) - (round (direction))) / (spd)) degrees\n\nwhen flag clicked\nwait (3.49) seconds\nCreate Clone [Circles]\n\nwhen flag clicked\nwait (8.29) seconds\nCreate Clone [Circles]\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    switch costume to (size hack v)\n    set size to (100) %\n    switch costume to (grid v)\n    go to [back v] layer\n    go [forward v] (1) layers\n    show\n    set [ghost v] effect to (100)\n    set [brightness v] effect to (100)\n    repeat (50)\n        change [brightness v] effect by (-2)\n        change [ghost v] effect by (-2)\n    end\n    wait (2.9) seconds\n    switch costume to (diamonds v)\n    wait (1.65) seconds\n    switch costume to (hexagon pattern v)\n    wait (1.55) seconds\n    switch costume to (triangle pattern v)\n    wait (1.55) seconds\n    switch costume to (checkerboard pattern v)\n    wait (1.2) seconds\n    repeat (20)\n        change [brightness v] effect by (5)\n        change [ghost v] effect by (5)\n    end\n    delete this clone\nend\n\nwhen flag clicked\nwait (0) seconds\nwait (.5) seconds\nCreate Clone [Grid]\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (3) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (4.6) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (6.24) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (7.8) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (9.4) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (4.38) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (5.9) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (7.51) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (9.02) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (10.6) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (3.88) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (5.4) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (7) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (8.5) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (10.1) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Lines]> then\n    show\n    go to [front v] layer\n    go [backward v] (2) layers\n    clear graphic effects\n    go to x: (0) y: (0)\n    set size to (1) %\n    switch costume to (1 v)\n    set [line size v] to [20]\n    repeat (15)\n        change size by (Line Size)\n        change [line size v] by (-1)\n        next costume\n    end\n    repeat (20)\n        change [ghost v] effect by (20)\n        change size by (Line Size)\n    end\nend\n\nwhen flag clicked\nwait (4.4) seconds\nCreate Clone [Lines]\n\nwhen flag clicked\nwait (5.92) seconds\nCreate Clone [Lines]\n\nwhen flag clicked\nwait (7.53) seconds\nCreate Clone [Lines]\n\nwhen flag clicked\nwait (10.62) seconds\nCreate Clone [Lines]\n\nwhen I start as a clone\nif <(Clone ID) = [Screen]> then\n    go to x: (0) y: (0)\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\n    point in direction (70)\n    repeat (25)\n        set [whirl # v] to (((Whirl #) * (.2)) + (((Whirl:) - (Whirl)) / (5)))\n        change [whirl v] by (Whirl #)\n        set [whirl v] effect to (Whirl)\n        set [bounce v] to (((Bounce) * (.2)) + (((90) - (direction)) / (5)))\n        turn right (Bounce) degrees\n    end\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Screen]> then\n    wait (1.54) seconds\n    go to x: (0) y: (0)\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\n    point in direction (70)\n    repeat (25)\n        set [whirl # v] to (((Whirl #) * (.2)) + (((Whirl:) - (Whirl)) / (5)))\n        change [whirl v] by (Whirl #)\n        set [whirl v] effect to (Whirl)\n        set [bounce v] to (((Bounce) * (.2)) + (((90) - (direction)) / (5)))\n        turn right (Bounce) degrees\n    end\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Screen]> then\n    wait (3.15) seconds\n    go to x: (0) y: (0)\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\n    point in direction (70)\n    repeat (25)\n        set [whirl # v] to (((Whirl #) * (.2)) + (((Whirl:) - (Whirl)) / (5)))\n        change [whirl v] by (Whirl #)\n        set [whirl v] effect to (Whirl)\n        set [bounce v] to (((Bounce) * (.2)) + (((90) - (direction)) / (5)))\n        turn right (Bounce) degrees\n    end\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Screen]> then\n    wait (4.73) seconds\n    go to x: (0) y: (0)\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\n    point in direction (70)\n    repeat (25)\n        set [whirl # v] to (((Whirl #) * (.2)) + (((Whirl:) - (Whirl)) / (5)))\n        change [whirl v] by (Whirl #)\n        set [whirl v] effect to (Whirl)\n        set [bounce v] to (((Bounce) * (.2)) + (((90) - (direction)) / (5)))\n        turn right (Bounce) degrees\n    end\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Screen]> then\n    wait (6.31) seconds\n    go to x: (0) y: (0)\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\n    point in direction (70)\n    repeat (25)\n        set [whirl # v] to (((Whirl #) * (.2)) + (((Whirl:) - (Whirl)) / (5)))\n        change [whirl v] by (Whirl #)\n        set [whirl v] effect to (Whirl)\n        set [bounce v] to (((Bounce) * (.2)) + (((90) - (direction)) / (5)))\n        turn right (Bounce) degrees\n    end\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\nend\n\nwhen flag clicked\nswitch costume to (name v)\n\nwhen flag clicked\nwait (9.02) seconds\nCreate Clone [Arrow1]\nCreate Clone [Arrow2]\n\nwhen flag clicked\nhide\ngo to [front v] layer\nwait (15) seconds\n\n