Squared || A 100% pen platformer V0.7 #all #games

Instructions: NEW GAME!!! https://scratch.mit.edu/projects/426178094/\nREMIX THIS AND MAKE YOUR OWN LEVEL\n*Use the arrow keys/ your finger to move the player around\n*Avoid the spikes and try to get to the end, they are purple \n*Touch the green block to finish\n*Touch the blue pad on the platform to set it as a checkpoint\n*Move your mouse/ finger to the top right corner of the page to edit the settings\nCOMMENT YOUR DEATH COUNT!!! \n\n=============UPDATES===================\n*Proper end screen!!!\n*Thumbnail update, now animated and entirely pen\n*Texture updates\n*Settings added\n*Changed sound effects\n*NEW INTRO!!!\n*New much cooler checkpoint design and animation\n*Checkpoints added!!!

@Stage\n\nwhen flag clicked\nstop all sounds\nstart sound [TheFatRat - Jackpot \(Jackpot EP Track 1\).mp3 v]\n\nwhen I receive [begin v]\nstop [other scripts in sprite v]\nstop all sounds\nbroadcast (Louder v)\nforever\n    play sound [dub2 v] until done\n    play sound [646349_Power-of-music.mp3 v] until done\n    play sound [Lights \[Dream Trance\] v] until done\n    play sound [Rocket Kevin mac v] until done\n    play sound [VRains v] until done\nend\n\nwhen flag clicked\nset volume to (100) %\nwait (6) seconds\nrepeat (25)\n    change volume by (-4)\nend\nset volume to (0) %\n\nwhen I receive [louder v]\nrepeat (25)\n    change volume by (4)\nend\nset volume to (100) %\n\nwhen I receive [start win music v]\nstop [other scripts in sprite v]\nstop all sounds\nforever\n    play sound [TheFatRat - Windfall _Tasty Release_.mp3 v] until done\n    play sound [\[Electro\] - Insan3Lik3 - Bad Pitched \(Original Mix\) \[Monstercat VIP Release\].mp3 v] until done\nend\n\n@Pen\n\nwhen flag clicked\nhide\nset [!scroll x v] to [0]\nset [!scroll y v] to [0]\nset [y velocity v] to [0]\nset [x velocity v] to [0]\nset [x v] to ((-180) / (5))\nset [y v] to ((170) / (5))\nset [!distance for death animation v] to [0]\nset [lift y 1 v] to [0]\nset [!has won? v] to [False]\nset [!checkpoint y v] to [0]\nset [!checpoint x v] to [0]\nset [moving x v] to [0]\nset [transparency v] to [0]\nset [glow v] to [0]\nset [!dead v] to [False]\ndelete all of [checkpoint status v]\ndelete all of [checkpoint selected v]\nrepeat (2)\n    add [True] to [checkpoint status v]\n    add [False] to [checkpoint selected v]\nend\n\nwhen I receive [begin v]\nshow\nset [ghost v] effect to (100)\nforever\n    Draw\n    Player controller\n    if <(!Dead???) = [True]> then\n        set [!dead v] to [True]\n        set [!distance for death animation v] to [0]\n        repeat (25)\n            change [!distance for death animation v] by (1)\n            change [y v] by ((((!CHECKPOINT Y) - (!SCROLL Y)) / (15)) / (5))\n            change [x v] by ((((!CHECPOINT X) - (!SCROLL X)) / (15)) / (5))\n            change [!scroll x v] by (((!CHECPOINT X) - (!SCROLL X)) / (15))\n            change [!scroll y v] by (((!CHECKPOINT Y) - (!SCROLL Y)) / (15))\n            Draw\n        end\n        set [x v] to [-180]\n        set [y v] to [170]\n        set [!dead??? v] to [False]\n        repeat (25)\n            change [!distance for death animation v] by (-1)\n            change [y v] by ((((!CHECKPOINT Y) - (!SCROLL Y)) / (5)) / (5))\n            change [x v] by ((((!CHECPOINT X) - (!SCROLL X)) / (5)) / (5))\n            change [!scroll x v] by (((!CHECPOINT X) - (!SCROLL X)) / (5))\n            change [!scroll y v] by (((!CHECKPOINT Y) - (!SCROLL Y)) / (5))\n            Draw\n        end\n        set [!distance for death animation v] to [0]\n        set [!scroll x v] to (!CHECPOINT X)\n        set [!scroll y v] to (!CHECKPOINT Y)\n        set [!dead v] to [False]\n    end\n    if <(!Has won?) = [True]> then\n        set [!dead v] to [True]\n        set [!distance for death animation v] to [0]\n        set [transparency v] to [0]\n        broadcast (Start win music v)\n        repeat (4)\n            repeat (15)\n                change [!distance for death animation v] by (0.2)\n                change [transparency v] by (1)\n                Draw\n            end\n            repeat (15)\n                change [!distance for death animation v] by (-0.2)\n                change [transparency v] by (1)\n                Draw\n            end\n        end\n        broadcast (WIN!!!! :\) v)\n        stop [this script v]\n    end\nend\n\ndefine Draw square from X: (x) Y: (y) to X: (x2) Y: (y2) with a colour of (colour)\nif <<<<((x) + (!SCROLL X)) < [240]> and <[-240] < ((x) + (!SCROLL X))>> and <<((y) + (!SCROLL Y)) < [180]> and <[-180] < ((y) + (!SCROLL Y))>>> or <<<<((x2) + (!SCROLL X)) < [240]> and <[-240] < ((x2) + (!SCROLL X))>> and <<((y2) + (!SCROLL Y)) < [180]> and <[-180] < ((y2) + (!SCROLL Y))>>> or <<<<(((x) + ((x2) - (x))) + (!SCROLL X)) < [240]> and <[-240] < (((x) + ((x2) - (x))) + (!SCROLL X))>> and <<((y) + (!SCROLL Y)) < [180]> and <[-180] < ((y) + (!SCROLL Y))>>> or <<<(((x2) + ((x) - (x2))) + (!SCROLL X)) < [240]> and <[-240] < (((x2) + ((x) - (x2))) + (!SCROLL X))>> and <<((y2) + (!SCROLL Y)) < [180]> and <[-180] < ((y2) + (!SCROLL Y))>>>>>> then\n    if <<(colour) = [0]> or <(colour) = [80]>> then\n        Draw line from (x) (y) to ((x) + ((x2) - (x))) (y) (colour)\n        Draw line from ((x) + ((x2) - (x))) (y) to (x2) (y2) (colour)\n        Draw line from (x2) (y2) to ((x2) + ((x) - (x2))) (y2) (colour)\n        Draw line from ((x2) + ((x) - (x2))) (y2) to (x) (y) (colour)\n        if <(colour) = [0]> then\n            stop [this script v]\n        end\n    end\n    if <(colour) = [10]> then\n        set [i v] to [0]\n        repeat until <(y) < ((y2) + (I))>\n            Draw line from (x2) ((y2) + (I)) to ((x2) + ((x) - (x2))) ((y2) + (I)) (colour)\n            change [i v] by (11)\n        end\n        stop [this script v]\n    end\n    if <(colour) = [80]> then\n        set [i v] to [0]\n        repeat until <(y) < ((y2) + (I))>\n            Draw line from (x2) ((y2) + (I)) to ((x2) + ((x) - (x2))) ((y2) + (I)) (colour)\n            change [i v] by (10)\n        end\n        stop [this script v]\n    end\n    if <(colour) = [40]> then\n        set [i v] to [0]\n        repeat until <(y) < ((y2) + (I))>\n            Draw line from (x2) ((y2) + (I)) to ((x2) + ((x) - (x2))) ((y2) + (I)) (colour)\n            change [i v] by (2)\n            change pen (brightness v) by (-0.5)\n        end\n        set pen (brightness v) to (100)\n        stop [this script v]\n    end\n    if <(item (ID) of [checkpoint status v]) = [True]> then\n        Draw line from (x) (y) to ((x) + ((x2) - (x))) (y) (colour)\n        Sense player\n        Draw line from ((x) + ((x2) - (x))) (y) to (x2) (y2) (colour)\n        Sense player\n        Draw line from (x2) (y2) to ((x2) + ((x) - (x2))) (y2) (colour)\n        Sense player\n        Draw line from ((x2) + ((x) - (x2))) (y2) to (x) (y) (colour)\n        Sense player\n    else\n        Draw line from (x) (y) to ((x) + ((x2) - (x))) (y) [22]\n        Draw line from ((x) + ((x2) - (x))) (y) to (x2) (y2) [22]\n        Draw line from (x2) (y2) to ((x2) + ((x) - (x2))) (y2) [22]\n        Draw line from ((x2) + ((x) - (x2))) (y2) to (x) (y) [22]\n    end\nend\n\ndefine Draw line from (x) (y) to (x2) (y2) (colour)\nset pen (color v) to (colour)\nset pen size to (7)\nset pen (saturation v) to (100)\nset pen (brightness v) to (100)\nset pen (transparency v) to (0)\nif <[1] < (Glow)> then\n    set pen size to ((Glow) / (5))\n    set pen (transparency v) to (60)\n    pen up\n    go to x: ((x) + (!SCROLL X)) y: ((y) + (!SCROLL Y))\n    pen down\n    go to x: ((x2) + (!SCROLL X)) y: ((y2) + (!SCROLL Y))\n    pen up\n    set pen size to (7)\n    set pen (transparency v) to (0)\nend\nif <(colour) = [40]> then\n    pen up\n    go to x: ((x) + (!SCROLL X)) y: ((y) + (!SCROLL Y))\n    pen down\n    go to x: ((x2) + (!SCROLL X)) y: ((y2) + (!SCROLL Y))\n    pen up\nelse\n    repeat (2)\n        pen up\n        go to x: ((x) + (!SCROLL X)) y: ((y) + (!SCROLL Y))\n        pen down\n        go to x: ((x2) + (!SCROLL X)) y: ((y2) + (!SCROLL Y))\n        pen up\n        change pen size by (-5)\n        change pen (color v) by (6)\n    end\nend\n\ndefine Player controller\nswitch costume to (player hitbox v)\ngo to x: (0) y: (0)\nchange y by (Y velocity)\nchange [y velocity v] by (-1)\nif <touching color (#cb00ff)?> then\n    change [x velocity v] by (Move on elevator)\nend\nif <<touching color (#ff0000)?> or <touching color (#cb00ff)?>> then\n    repeat until <not <<touching color (#ff0000)?> or <touching color (#cb00ff)?>>>\n        change y by ((([abs v] of (Y velocity) ) / (Y velocity)) * (-1))\n    end\n    if <<<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<[0] < (mouse y)> and <mouse down?>>>> and <((([abs v] of (Y velocity) ) / (Y velocity)) * (-1)) = [1]>> then\n        start sound [Jump v]\n        set [y velocity v] to [15]\n    else\n        set [y velocity v] to [0]\n    end\nelse\n    if <touching color (#ff9900)?> then\n        start sound [Big Boing v]\n        set [y velocity v] to [23]\n    end\nend\nchange [x velocity v] by ((<<key (right arrow v) pressed?> or <<<[0] < (mouse x)> and <mouse down?>> or <key (d v) pressed?>>> * (5)) + (<<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<(mouse x) < [0]> and <mouse down?>>>> * (-5)))\nset [x velocity v] to ((X Velocity) * (0.7))\nchange x by (X Velocity)\nset [slope v] to [0]\nrepeat until <<not <touching color (#ff0000)?>> or <(Slope) = [-8]>>\n    change y by (1)\n    change [slope v] by (-1)\nend\nif <touching color (#ff0000)?> then\n    change y by (Slope)\n    repeat until <not <touching color (#ff0000)?>>\n        change x by ((([abs v] of (X Velocity) ) / (X Velocity)) * (-1))\n    end\n    if <<key (up arrow v) pressed?> or <<[0] < (mouse y)> and <mouse down?>>> then\n        if <[0] < (X Velocity)> then\n            set [x velocity v] to [-32]\n        else\n            set [x velocity v] to [32]\n        end\n        set [y velocity v] to [12]\n        start sound [Clang v]\n    else\n        set [x velocity v] to [0]\n    end\nend\nif <<[300] < (!SCROLL Y)> or <touching color (#4200ff)?>> then\n    Die :(\n    go to x: (0) y: (0)\n    stop [this script v]\nend\nif <touching color (#00ff65)?> then\n    set [!has won? v] to [True]\nend\nif <touching color (#00ffff)?> then\n    set [!checkpoint y v] to (!SCROLL Y)\n    set [!checpoint x v] to (!SCROLL X)\nend\nchange [!scroll x v] by (() - (x position))\nchange [!scroll y v] by (() - (y position))\nswitch costume to (costume2 v)\ngo to x: (0) y: (0)\n\ndefine Draw player\nset [i v] to [0]\nset pen size to ((5) - ((!Distance for death animation) / (5.5)))\nif <(!DEAD) = [False]> then\n    if <<(Y velocity) < [-1]> or <[1] < (Y velocity)>> then\n        if <[-0.6] < (!Distance for death animation)> then\n            change [!distance for death animation v] by (-0.2)\n        else\n            set [!distance for death animation v] to [-0.9]\n        end\n    else\n        if <(!Distance for death animation) < [0]> then\n            change [!distance for death animation v] by (0.2)\n        else\n            set [!distance for death animation v] to [0]\n        end\n    end\nend\nset [repeat times v] to [10]\nset [brightness v] to [100]\nrepeat (30)\n    Draw player line from (((-15) - ((!Distance for death animation) * (2.5))) + (I)) [15] to ((((-15) - ((!Distance for death animation) * (2.5))) + (I)) - ()) [-15]\n    change [i v] by (((!Distance for death animation) / (5)) + (1))\nend\n\ndefine Draw player line from (x) (y) to (x2) (y2)\nset pen color to (#faff00)\nset pen (transparency v) to ((Transparency) + (90))\nset pen size to ((Player glow) / (7))\npen up\ngo to x: (x) y: (y)\npen down\ngo to x: (x2) y: (y2)\npen up\nset pen size to (5)\nchange pen (color v) by (!Distance for death animation)\nset pen (transparency v) to (Transparency)\npen up\ngo to x: (x) y: (y)\npen down\ngo to x: (x2) y: (y2)\npen up\n\ndefine Die :(\nset [y velocity v] to [0]\nset [x velocity v] to [0]\nset [!dead??? v] to [True]\nstart sound [Oops v]\n\ndefine Draw\nset [id v] to [1]\npen up\nerase all\nDraw grid\nset pen color to (#ff4800)\nset pen size to (5)\nDraw checkpoint [1005] [920] with a size of [40]\nDraw checkpoint [2010] [1470] with a size of [40]\nDraw square from X: [-100] Y: [-20] to X: [100] Y: [-81] with a colour of [0]\nDraw square from X: [102] Y: [140] to X: [155] Y: [-81] with a colour of [0]\nDraw square from X: [340] Y: [600] to X: [380] Y: [300] with a colour of [0]\nDraw square from X: [580] Y: [700] to X: [605] Y: [685] with a colour of [0]\nDraw square from X: [800] Y: [815] to X: [825] Y: [800] with a colour of [0]\nDraw square from X: [1000] Y: [900] to X: [1200] Y: [850] with a colour of [0]\nDraw square from X: [1204] Y: [900] to X: [1300] Y: [850] with a colour of [10]\nDraw square from X: [1450] Y: [1100] to X: [1650] Y: [1150] with a colour of [0]\nDraw square from X: [1750] Y: ((1100) + (Lift Y 1)) to X: [1900] Y: ((1150) + (Lift Y 1)) with a colour of [0]\nDraw square from X: [2000] Y: [1400] to X: [2350] Y: [1450] with a colour of [0]\nDraw square from X: [2354] Y: [1450] to X: [2450] Y: [1400] with a colour of [10]\nDraw square from X: [2354] Y: [1800] to X: [2450] Y: [1750] with a colour of [10]\nDraw square from X: [2550] Y: [2100] to X: [2800] Y: [2025] with a colour of [0]\nDraw square from X: [2900] Y: [2450] to X: [2965] Y: [2235] with a colour of [0]\nDraw square from X: [2900] Y: [2510] to X: [3200] Y: [2450] with a colour of [0]\nDraw square from X: [3200] Y: [2510] to X: [3600] Y: [2480] with a colour of [0]\nDraw square from X: [3200] Y: [2480] to X: [3600] Y: [2450] with a colour of [0]\nDraw square from X: ((3650) + (Moving X)) Y: [2510] to X: ((4000) + (Moving X)) Y: [2450] with a colour of [80]\nDraw square from X: [4350] Y: [2510] to X: [4675] Y: [2450] with a colour of [0]\nDraw square from X: ((4700) + (Moving X)) Y: [2510] to X: ((4900) + (Moving X)) Y: [2450] with a colour of [80]\nDraw square from X: [5250] Y: [2510] to X: [5500] Y: [2450] with a colour of [0]\nDraw square from X: [5450] Y: [2610] to X: [5500] Y: [2514] with a colour of [40]\nDraw spike [-80] [-14] [30]\nDraw spike [1100] [905] [40]\nDraw spike [1065] [905] [30]\nDraw spike [1143] [905] [30]\nDraw spike [1500] [1155] [30]\nDraw spike [1534] [1155] [30]\nDraw spike [1568] [1155] [30]\nDraw spike [2200] [1454] [50]\nDraw spike [2150] [1454] [50]\nDraw spike [2120] [1454] [30]\nDraw spike [2650] [2104] [90]\nDraw spike [3050] [2514] [40]\nDraw spike [3020] [2514] [30]\nDraw spike [3090] [2514] [50]\nDraw spike [3140] [2514] [60]\nDraw spike [4500] [2514] [30]\nDraw spike [4535] [2514] [50]\nDraw spike [4449] [2514] [50]\nDraw spike [5325] [2514] [40]\nset pen (brightness v) to (Transparency)\nDraw player\n\ndefine Draw grid\nswitch costume to (costume2 v)\nset pen color to (#3c3c3c)\nset pen size to (5)\nif <(((!SCROLL X) / (5)) + (X)) < [-240]> then\n    change [x v] by (40)\nend\nif <[-200] < (((!SCROLL X) / (5)) + (X))> then\n    change [x v] by (-40)\nend\ngo to x: (((!SCROLL X) / (5)) + (X)) y: (-180)\nforever\n    pen down\n    change y by (360)\n    pen up\n    set y to (-180)\n    change x by (40)\n    if <[238] < (x position)> then\n        Draw grid X\n        stop [this script v]\n    end\nend\n\ndefine Draw grid X\nif <(((!SCROLL Y) / (5)) - (Y)) < [-180]> then\n    change [y v] by (-40)\nend\nif <[-130] < (((!SCROLL Y) / (5)) - (Y))> then\n    change [y v] by (40)\nend\ngo to x: (-240) y: (((!SCROLL Y) / (5)) - (Y))\nforever\n    pen down\n    change x by (480)\n    pen up\n    set x to (-240)\n    change y by (40)\n    if <[179] < (y position)> then\n        stop [this script v]\n    end\nend\n\ndefine Draw spike (x) (y) (size)\nDraw line from (x) (y) to ((x) + (size)) (y) [-30]\nDraw line from ((x) + (size)) (y) to ((([abs v] of (((x) + (size)) - (x)) ) / (2)) + (x)) ((y) + (size)) [-30]\nDraw line from ((([abs v] of (((x) + (size)) - (x)) ) / (2)) + (x)) ((y) + (size)) to (x) (y) [-30]\n\nwhen I receive [begin v]\nforever\n    repeat (150)\n        change [lift y 1 v] by (2)\n        change [moving x v] by (2)\n        set [move on elevator v] to [2]\n    end\n    repeat (150)\n        change [lift y 1 v] by (-2)\n        change [moving x v] by (-2)\n        set [move on elevator v] to [-2]\n    end\n    set [lift y 1 v] to [0]\n    set [moving x v] to [0]\nend\n\nset [!scroll x v] to [-5269]\nset [!scroll y v] to [-2534]\n\ndefine Draw checkpoint (x) (y) with a size of (size)\nif <(item (ID) of [checkpoint status v]) = [True]> then\n    set [size v] to (size)\n    Draw square from X: ((x) + ((3) * ([cos v] of (((timer) + (-3)) * (150)) ))) Y: ((y) + ((3) * ([cos v] of (((timer) + (-3)) * (150)) ))) to X: (((x) + (size)) + ((3) * ([cos v] of (((timer) + (3)) * (-150)) ))) Y: (((y) + (size)) + ((3) * ([cos v] of (((timer) + (3)) * (150)) ))) with a colour of [50]\n    Draw square from X: ((x) + ((10) * ([cos v] of (((timer) + (-3)) * (150)) ))) Y: ((y) + ((10) * ([cos v] of (((timer) + (-3)) * (150)) ))) to X: (((x) + (size)) + ((10) * ([cos v] of (((timer) + (3)) * (-150)) ))) Y: (((y) + (size)) + ((10) * ([cos v] of (((timer) + (3)) * (150)) ))) with a colour of [50]\nelse\n    Draw square from X: (x) Y: (y) to X: ((x) + (size)) Y: ((y) + (size)) with a colour of [50]\n    if <<(!DEAD) = [True]> and <<(item (ID) of [checkpoint selected v]) = [True]> and <not <(!Has won?) = [True]>>>> then\n        Draw line from ((x) + ((size) / (2))) ((y) + ((size) / (2))) to ((!SCROLL X) * (-1)) ((!SCROLL Y) * (-1)) [22]\n    end\nend\nchange [id v] by (1)\n\ndefine Sense player\nif <<([abs v] of ((x position) - ()) ) < [20]> and <([abs v] of ((y position) - ()) ) < [20]>> then\n    replace item (ID) of [checkpoint status v] with [False]\n    replace item (ID) of [checkpoint selected v] with [True]\n    replace item ((ID) + (1)) of [checkpoint selected v] with [False]\n    replace item ((ID) - (1)) of [checkpoint selected v] with [False]\n    start sound [Coin v]\nend\n\nchange [glow v] by (1)\n\ndefine Render win message\npen up\nerase all\nset [size for win glow v] to [30]\nDraw grid\npen up\nset pen (transparency v) to (80)\nrepeat (2)\n    Render YOU\n    Render WIN\n    change [size for win glow v] by (-20)\n    set pen (transparency v) to (0)\nend\n\ndefine Render YOU\npen up\nset pen (saturation v) to (100)\nset pen (brightness v) to (100)\nset pen (color v) to ((Counter) * (10))\nset pen size to (Size for win glow)\ngo to x: ((Win X) - (180)) y: ((Win Y 3) - (160))\npen down\nchange y by (40)\ngo to x: ((Win X) - (210)) y: ((Win Y 3) - (40))\ngo to x: ((Win X) - (180)) y: ((Win Y 3) - (120))\ngo to x: ((Win X) - (150)) y: ((Win Y 3) - (40))\npen up\nchange pen (color v) by (10)\nset pen size to (Size for win glow)\ngo to x: ((Win X) - (100)) y: ((Win Y) - (40))\npen down\ngo to x: ((Win X) - (100)) y: ((Win Y) - (160))\ngo to x: ((Win X) - (30)) y: ((Win Y) - (160))\ngo to x: ((Win X) - (30)) y: ((Win Y) - (40))\ngo to x: ((Win X) - (100)) y: ((Win Y) - (40))\npen up\nchange pen (color v) by (10)\nset pen size to (Size for win glow)\ngo to x: ((Win X) - (-20)) y: ((Win Y 2) - (40))\npen down\ngo to x: ((Win X) - (-20)) y: ((Win Y 2) - (160))\ngo to x: ((Win X) - (-80)) y: ((Win Y 2) - (160))\ngo to x: ((Win X) - (-80)) y: ((Win Y 2) - (40))\n\ndefine Render WIN\npen up\nchange pen (color v) by (10)\nset pen size to (Size for win glow)\ngo to x: ((Win X) - (230)) y: ((Win Y) - (230))\npen down\ngo to x: ((Win X) - (200)) y: ((Win Y) - (340))\ngo to x: ((Win X) - (175)) y: ((Win Y) - (300))\ngo to x: ((Win X) - (150)) y: ((Win Y) - (340))\ngo to x: ((Win X) - (120)) y: ((Win Y) - (230))\npen up\nchange pen (color v) by (10)\nset pen size to (Size for win glow)\ngo to x: ((Win X) - (75)) y: ((Win Y 2) - (230))\npen down\ngo to x: ((Win X) - (25)) y: ((Win Y 2) - (230))\ngo to x: ((Win X) - (50)) y: ((Win Y 2) - (230))\ngo to x: ((Win X) - (50)) y: ((Win Y 2) - (340))\ngo to x: ((Win X) - (25)) y: ((Win Y 2) - (340))\ngo to x: ((Win X) - (75)) y: ((Win Y 2) - (340))\npen up\nchange pen (color v) by (10)\nset pen size to (Size for win glow)\ngo to x: ((Win X) - (-25)) y: ((Win Y 3) - (340))\npen down\ngo to x: ((Win X) - (-25)) y: ((Win Y 3) - (230))\ngo to x: ((Win X) - (-95)) y: ((Win Y 3) - (340))\ngo to x: ((Win X) - (-95)) y: ((Win Y 3) - (230))\nset [ghost v] effect to (100)\n\nwhen I receive [win!!!! :\) v]\nset [win x v] to [50]\nset [win y v] to [180]\nset [win y 2 v] to [180]\nset [win y 3 v] to [180]\nset [counter v] to [0]\nforever\n    Render win message\n    change [win y v] by ((1) * ([cos v] of (((Counter) + (3)) * (150)) ))\n    change [win y 2 v] by ((1) * ([cos v] of (((Counter) + (-6)) * (150)) ))\n    change [win y 3 v] by ((1) * ([cos v] of (((Counter) + (-3)) * (150)) ))\n    change [win x v] by ((0.6) * ([cos v] of (((Counter) + (3)) * (150)) ))\n    change [counter v] by (0.03)\n    change [!scroll x v] by (1)\n    change [!scroll y v] by (1)\nend\n\nwhen flag clicked\nforever\n    reset timer\nend\n\nwhen [timer v] > (0)\nset [brightness v] effect to (-100)\ngo to x: (0) y: (0)\npoint in direction (90)\nrepeat (30)\n    erase all\n    set [ghost v] effect to (0)\n    switch costume to (thumbnail v)\n    change [brightness v] effect by (3.33)\n    turn right (12) degrees\n    show\n    stamp\n    hide\n    hide variable [glow v]\nend\n\n@Border\n\nwhen flag clicked\nshow\ngo to x: (0) y: (0)\n\nwhen I receive [begin v]\nforever\n    if <[120] < (mouse y)> then\n        show variable [glow v]\n    else\n        hide variable [glow v]\n    end\nend\n\nwhen I receive [win!!!! :\) v]\nstop [other scripts in sprite v]\nhide variable [glow v]\n\n@Logo\n\nwhen flag clicked\nerase all\nhide\npoint in direction (90)\ngo to x: (0) y: (0)\nshow\nset size to (200) %\nswitch costume to (logo v)\nrepeat (10)\n    change size by (-10)\nend\nwait (0.1) seconds\nset [speed v] to [0]\nrepeat (25)\n    turn right (Speed) degrees\n    change [speed v] by (2)\nend\nrepeat (50)\n    turn right (Speed) degrees\n    change [speed v] by (-2)\nend\nrepeat (25)\n    turn right (Speed) degrees\n    change [speed v] by (2)\nend\npoint in direction (90)\ngo to x: (0) y: (0)\nrepeat (2)\n    repeat (20)\n        change size by (5)\n    end\n    repeat (20)\n        change size by (-5)\n    end\nend\nhide\nbroadcast (Begin v)\n\nwhen flag clicked\nforever\n    create clone of (_myself_ v)\n    wait (pick random (0.01) to (0.02)) seconds\nend\n\nwhen I receive [begin v]\nstop [other scripts in sprite v]\ndelete this clone\n\nwhen I start as a clone\nswitch costume to (little particles v)\ngo to x: (pick random (-230) to (230)) y: (-2000)\nset [x v] to (pick random (-5) to (5))\nset [y v] to (pick random (20) to (25))\nset size to (pick random (100) to (150)) %\nrepeat (([abs v] of (Y) ) * (2))\n    change y by (Y)\n    change x by (X)\n    change [y v] by (-1)\n    turn right ((X) * (2)) degrees\n    go to [back v] layer\nend\ndelete this clone\n\nhide\n\n