Neon || a pen scrolling platformer online

Instructions:          Neon || a pen scrolling platformer online\n\n-Arrows keys/ WAD/ ZQD/ Click (on mobile) for move\n-T or click on your character for open the chat\n-Space for fly (after you win)\n-In the menu, you can stop the music (there is a \n button)\n-You can kill other by touch him but you died too\n\nThis game contains:\n-A scrolling pen engine\n-A scrolling platformer engine\n-An outro\n-A thumbnail\n-An infinite player multiplayer engine\n-A chat engine\n-A recommendation system\nAnd more...

@Stage\n\nwhen flag clicked\nforever\n    if <(Music) = [1]> then\n        if <not <(Checkpoint) = [4]>> then\n            set volume to (100) %\n            play sound [Nice-Vibes v] until done\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    if <(Music) = [0]> then\n        if <not <(Checkpoint) = [4]>> then\n            stop all sounds\n            set volume to (0) %\n        end\n    end\n    if <(Checkpoint) = [4]> then\n        set volume to (100) %\n    end\nend\n\nwhen flag clicked\nforever\n    reset timer\nend\n\n@Blank\n\n@Pen\n\ndefine Draw square (x1) (x2) (y1) (y2) (type) (pen size) (light?) (light where?)\n// [Draw a square, you can choose the lightning of the square, the pen size, the type...]\nif <<not <((Scroll x) + (480)) < ((x1) + (Scroll x))>> and <not <((x2) + (Scroll x)) < ((Scroll x) - (480))>>> then\n    pen up\n    set pen size to (pen size)\n    set [type v] to (type)\n    Set color\n    if <not <(type) = [shadow]>> then\n        go to x: (x1) y: (y1)\n        pen down\n        go to x: (x2) y: (y1)\n        go to x: (x2) y: (y2)\n        go to x: (x1) y: (y2)\n        go to x: (x1) y: (y1)\n        pen up\n        if <<not <(type) = [shadow]>> and <(light?) = [1]>> then\n            Draw square (x1) (x2) (y1) (y2) [shadow] ((pen size) * (2)) [1] (light where?)\n            if <(type) = [lava]> then\n                // [For do orange lines in lava]\n                set [iii v] to [0]\n                repeat ([abs v] of (round (((x1) - (x2)) / (10))) )\n                    change [iii v] by (1)\n                    if <((iii) mod (2)) = [1]> then\n                        set [ii v] to [0]\n                        repeat ([abs v] of (round (((y2) - (y1)) / (20))) )\n                            change [ii v] by (1)\n                            Draw line [5] [10] ((x1) + ((4) + (((iii) - (1)) * (10)))) ((y1) - ((6) + (((ii) - (1)) * (20)))) [x] [] [5] [0] []\n                        end\n                    else\n                        set [ii v] to [0]\n                        repeat ([abs v] of (round (((y2) - (y1)) / (20))) )\n                            change [ii v] by (1)\n                            Draw line [5] [10] ((x1) + ((4) + (((iii) - (1)) * (10)))) ((y1) - ((16) + (((ii) - (1)) * (20)))) [x] [] [5] [0] []\n                        end\n                        set [ii v] to (round (((y2) - (y1)) / (20)))\n                    end\n                end\n            end\n            stop [this script v]\n        end\n    else\n        // [Draw light]\n        if <(light where?) = [1]> then\n            go to x: (x1) y: (y1)\n            pen down\n            go to x: (x2) y: (y1)\n            go to x: (x2) y: (y2)\n            go to x: (x1) y: (y2)\n            go to x: (x1) y: (y1)\n            pen up\n        else\n            if <(light where?) = [2]> then\n                go to x: (x1) y: (y1)\n                pen down\n                go to x: (x2) y: (y1)\n                pen up\n                go to x: (x2) y: (y2)\n                pen down\n                go to x: (x1) y: (y2)\n                pen up\n                go to x: (x1) y: (y1)\n                pen up\n            else\n                if <(light where?) = [3]> then\n                    go to x: (x1) y: (y1)\n                    pen down\n                    go to x: (x2) y: (y1)\n                    pen up\n                    pen down\n                    go to x: (x2) y: (y2)\n                    go to x: (x1) y: (y2)\n                    pen up\n                    go to x: (x1) y: (y1)\n                    pen up\n                else\n                    if <(light where?) = [4]> then\n                        go to x: (x1) y: (y1)\n                        pen down\n                        go to x: (x2) y: (y1)\n                        pen up\n                        go to x: (x2) y: (y2)\n                        pen down\n                        go to x: (x1) y: (y2)\n                        pen down\n                        go to x: (x1) y: (y1)\n                        pen up\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine Set color\n// [For set the color]\nif <(type) = [platform]> then\n    set pen color to (#006aff)\n    set pen (transparency v) to (0)\nelse\n    if <(type) = [shadow]> then\n        set pen (transparency v) to (60)\n    else\n        if <(type) = [lava]> then\n            set pen color to (#ff0000)\n            set pen (transparency v) to (0)\n        else\n            if <(type) = [bounce]> then\n                set pen color to (#eeff00)\n                set pen (transparency v) to (0)\n            else\n                if <(type) = [black]> then\n                    set pen color to (#000000)\n                    set pen (transparency v) to (0)\n                else\n                    if <(type) = [checkpoint]> then\n                        set pen color to (#61ff00)\n                        set pen (transparency v) to (50)\n                    else\n                        if <(type) = [end]> then\n                            set pen color to (#ff8800)\n                            set pen (transparency v) to (50)\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [tick v]\n// [Main script]\nhide\nerase all\nDraw back\nDraw square ((-40) - (Scroll x)) ((290) - (Scroll x)) ((10) - (Scroll y)) ((-10) - (Scroll y)) [bounce] [22] [0] [1]\nDraw square ((-50) - (Scroll x)) ((300) - (Scroll x)) ((20) - (Scroll y)) ((-20) - (Scroll y)) [platform] [10] [1] [4]\nDraw square ((360) - (Scroll x)) ((490) - (Scroll x)) ((10) - (Scroll y)) ((-10) - (Scroll y)) [bounce] [22] [0] [1]\nDraw square ((350) - (Scroll x)) ((500) - (Scroll x)) ((20) - (Scroll y)) ((-20) - (Scroll y)) [platform] [10] [1] [2]\nDraw square ((320) - (Scroll x)) ((330) - (Scroll x)) ((20) - (Scroll y)) ((-20) - (Scroll y)) [lava] [10] [0] [1]\nDraw square ((310) - (Scroll x)) ((340) - (Scroll x)) ((20) - (Scroll y)) ((-20) - (Scroll y)) [lava] [10] [1] [2]\nDraw square ((200) - (Scroll x)) ((220) - (Scroll x)) ((80) - (Scroll y)) ((20) - (Scroll y)) [platform] [10] [1] [1]\nDraw square ((210) - (Scroll x)) ((210) - (Scroll x)) ((70) - (Scroll y)) ((30) - (Scroll y)) [bounce] [10] [0] [1]\nDraw square ((520) - (Scroll x)) ((540) - (Scroll x)) ((10) - (Scroll y)) ((-10) - (Scroll y)) [platform] [22] [0] [1]\nDraw square ((510) - (Scroll x)) ((550) - (Scroll x)) ((-20) - (Scroll y)) ((20) - (Scroll y)) [bounce] [10] [1] [3]\nDraw square ((570) - (Scroll x)) ((690) - (Scroll x)) ((210) - (Scroll y)) ((230) - (Scroll y)) [bounce] [20] [0] [0]\nDraw square ((560) - (Scroll x)) ((700) - (Scroll x)) ((200) - (Scroll y)) ((240) - (Scroll y)) [platform] [10] [1] [1]\nDraw square ((910) - (Scroll x)) ((1490) - (Scroll x)) ((210) - (Scroll y)) ((230) - (Scroll y)) [bounce] [22] [0] [0]\nDraw square ((900) - (Scroll x)) ((1500) - (Scroll x)) ((200) - (Scroll y)) ((240) - (Scroll y)) [platform] [10] [1] [1]\nDraw triangle ((1150) - (Scroll x)) ((242) - (Scroll y)) ((1480) - (Scroll x)) ((462) - (Scroll y)) [bounce] [50] [0] [1]\nDraw triangle ((1270) - (Scroll x)) ((290) - (Scroll y)) ((1430) - (Scroll x)) ((390) - (Scroll y)) [bounce] [100] [0] [1]\nDraw triangle ((1110) - (Scroll x)) ((240) - (Scroll y)) ((1500) - (Scroll x)) ((500) - (Scroll y)) [platform] [10] [1] [1]\nif <(Checkpoint) = [1]> then\n    Draw square ((1710) - (Scroll x)) ((1760) - (Scroll x)) ((480) - (Scroll y)) ((1200) - (Scroll y)) [checkpoint] [50] [0] [1]\nend\nDraw square ((1620) - (Scroll x)) ((1790) - (Scroll x)) ((490) - (Scroll y)) ((460) - (Scroll y)) [bounce] [30] [0] [0]\nDraw square ((1610) - (Scroll x)) ((1800) - (Scroll x)) ((500) - (Scroll y)) ((450) - (Scroll y)) [platform] [10] [1] [1]\nDraw square ((1540) - (Scroll x)) ((1570) - (Scroll x)) ((480) - (Scroll y)) ((260) - (Scroll y)) [lava] [53] [0] [0]\nDraw square ((1510) - (Scroll x)) ((1600) - (Scroll x)) ((500) - (Scroll y)) ((240) - (Scroll y)) [lava] [10] [1] [1]\nDraw round ((1900) - (Scroll x)) ((500) - (Scroll y)) [90] [platform] [1]\nDraw round ((1900) - (Scroll x)) ((500) - (Scroll y)) [60] [bounce] [0]\nDraw round ((2100) - (Scroll x)) ((500) - (Scroll y)) [90] [platform] [1]\nDraw round ((2100) - (Scroll x)) ((500) - (Scroll y)) [60] [bounce] [0]\nDraw round ((2350) - (Scroll x)) ((500) - (Scroll y)) [90] [platform] [1]\nDraw round ((2350) - (Scroll x)) ((500) - (Scroll y)) [60] [bounce] [0]\nDraw round ((2500) - (Scroll x)) ((600) - (Scroll y)) [90] [platform] [1]\nDraw round ((2500) - (Scroll x)) ((600) - (Scroll y)) [60] [bounce] [0]\nDraw round ((2600) - (Scroll x)) ((200) - (Scroll y)) [90] [platform] [1]\nDraw round ((2600) - (Scroll x)) ((200) - (Scroll y)) [60] [bounce] [0]\nDraw round ((2800) - (Scroll x)) ((200) - (Scroll y)) [90] [platform] [1]\nDraw round ((2800) - (Scroll x)) ((200) - (Scroll y)) [60] [bounce] [0]\nDraw round ((3000) - (Scroll x)) ((300) - (Scroll y)) [90] [platform] [1]\nDraw round ((3000) - (Scroll x)) ((300) - (Scroll y)) [60] [bounce] [0]\nif <(Checkpoint) < [3]> then\n    Draw square ((3200) - (Scroll x)) ((3250) - (Scroll x)) ((300) - (Scroll y)) ((10000) - (Scroll y)) [checkpoint] [50] [0] [0]\nend\nif <(Checkpoint) < [4]> then\n    Draw square ((3980) - (Scroll x)) ((3980) - (Scroll x)) ((300) - (Scroll y)) ((490) - (Scroll y)) [end] [50] [0] [0]\nend\nDraw square ((3060) - (Scroll x)) ((3990) - (Scroll x)) ((310) - (Scroll y)) ((290) - (Scroll y)) [bounce] [20] [0] [0]\nDraw square ((3050) - (Scroll x)) ((4000) - (Scroll x)) ((320) - (Scroll y)) ((280) - (Scroll y)) [platform] [10] [1] [1]\nDraw square ((3060) - (Scroll x)) ((3990) - (Scroll x)) ((310) - (Scroll y)) ((290) - (Scroll y)) [checkpoint] [20] [0] [0]\nDraw square ((3060) - (Scroll x)) ((3990) - (Scroll x)) ((480) - (Scroll y)) ((500) - (Scroll y)) [bounce] [20] [0] [0]\nDraw square ((3050) - (Scroll x)) ((4000) - (Scroll x)) ((470) - (Scroll y)) ((510) - (Scroll y)) [platform] [10] [1] [1]\nDraw square ((3060) - (Scroll x)) ((3990) - (Scroll x)) ((480) - (Scroll y)) ((500) - (Scroll y)) [checkpoint] [20] [0] [0]\n// [For draw the spikes]\nDraw spike ((176) - (Scroll x)) ((29) - (Scroll y)) [90]\nDraw spike ((245) - (Scroll x)) ((29) - (Scroll y)) [90]\nDraw spike ((650) - (Scroll x)) ((248) - (Scroll y)) [90]\nDraw spike ((1000) - (Scroll x)) ((248) - (Scroll y)) [90]\nDraw spike ((3330) - (Scroll x)) ((329) - (Scroll y)) [90]\nDraw spike ((3360) - (Scroll x)) ((329) - (Scroll y)) [90]\nDraw spike ((3390) - (Scroll x)) ((329) - (Scroll y)) [90]\nDraw spike ((3500) - (Scroll x)) ((461) - (Scroll y)) [-90]\nDraw spike ((3530) - (Scroll x)) ((461) - (Scroll y)) [-90]\nDraw spike ((3560) - (Scroll x)) ((461) - (Scroll y)) [-90]\nDraw spike ((3630) - (Scroll x)) ((329) - (Scroll y)) [90]\nDraw spike ((3660) - (Scroll x)) ((329) - (Scroll y)) [90]\nDraw spike ((3690) - (Scroll x)) ((329) - (Scroll y)) [90]\n// [For draw the shadow of the player]\ndetect ground\n\ndefine Draw triangle (x1) (y1) (x2) (y2) (type) (pen size) (light) (light type)\n// [For draw a triangle]\nif <<not <((Scroll x) + (480)) < ((x1) + (Scroll x))>> and <not <((x2) + (Scroll x)) < ((Scroll x) - (480))>>> then\n    set pen size to (pen size)\n    set [type v] to (type)\n    Set color\n    if <not <(type) = [shadow]>> then\n        go to x: (x1) y: (y1)\n        pen down\n        go to x: (x2) y: (y2)\n        go to x: (x2) y: (y1)\n        go to x: (x1) y: (y1)\n        pen up\n        if <<not <(type) = [shadow]>> and <(light) = [1]>> then\n            Draw triangle (x1) (y1) (x2) (y2) [shadow] ((pen size) * (2)) [1] (light type)\n        end\n    else\n        go to x: (x1) y: (y1)\n        pen down\n        go to x: (x2) y: (y2)\n        go to x: (x2) y: (y1)\n        go to x: (x1) y: (y1)\n        pen up\n    end\nend\n\ndefine Draw back\n// [For draw backgroung]\npen up\nchange [i v] by (1)\nif <(i) < [100]> then\n    Draw line [80] [60] [-200] [20] [y] [] [] [60] []\n    Draw line [40] [60] [-200] [60] [x] [] [] [60] []\n    Draw line [80] [60] [-160] [20] [y] [] [] [60] []\n    Draw line [80] [60] [-120] [20] [y] [] [] [60] []\n    Draw line [20] [60] [-120] [60] [x] [] [] [60] []\n    Draw line [40] [60] [-120] [20] [x] [] [] [60] []\n    Draw line [40] [60] [-120] [100] [x] [] [] [60] []\n    Draw line [80] [60] [-40] [20] [y] [] [] [60] []\n    Draw line [40] [60] [-40] [20] [x] [] [] [60] []\n    Draw line [80] [60] [40] [20] [y] [] [] [60] []\n    Draw line [40] [60] [40] [20] [x] [] [] [60] []\n    Draw line [80] [60] [120] [20] [y] [] [] [60] []\n    Draw line [40] [60] [120] [20] [x] [] [] [60] []\n    Draw line [80] [60] [160] [20] [y] [] [] [60] []\n    Draw line [40] [60] [120] [100] [x] [] [] [60] []\n    Draw line [40] [60] [200] [60] [y] [] [] [60] []\n    Draw line [1] [60] [200] [20] [y] [] [] [60] []\nend\npen up\n\ndefine Draw line (size) (color) (x) (y) (x/y) (brightness) (pen size) (y+?) (transparency)\n// [For draw a line]\nset pen (transparency v) to (0)\nset pen color to (#ff0000)\nset pen (color v) to (color)\nif <(transparency) = []> then\n    set pen (transparency v) to (0)\nelse\n    set pen (transparency v) to (transparency)\nend\nif <(brightness) = []> then\n    set pen (brightness v) to (100)\nelse\n    set pen (brightness v) to (brightness)\nend\nif <(pen size) = []> then\n    set pen size to (20)\nelse\n    set pen size to (pen size)\nend\ngo to x: (x) y: ((y) + (y+?))\npen down\nif <(x/y) = [x]> then\n    change x by (size)\nelse\n    change y by (size)\nend\npen up\nset pen (brightness v) to (0)\n\nwhen flag clicked\nset [i v] to [1000]\ndelete all of [shadow v]\nadd [] to [shadow v]\nerase all\n\ndefine detect ground\n// [For detect the ground and add the ordonnee in the "Shadow list"]\npoint in direction (90)\nif <(Game start?) = [1]> then\n    switch costume to (dot v)\n    go to (player v)\n    change y by (-10)\n    switch costume to (costume2 v)\n    if <<not <touching color (#006aff)?>> and <<not <touching color (#ff0000)?>> and <<not <touching color (#eeff00)?>> and <<not <touching color (#333333)?>> and <not <touching color (#727272)?>>>>>> then\n        replace item (1) of [shadow v] with [-180]\n    else\n        switch costume to (dot v)\n        repeat until <<(y position) < [-178]> or <<touching color (#006aff)?> or <<touching color (#ff0000)?> or <<touching color (#eeff00)?> or <<touching color (#333333)?> or <touching color (#727272)?>>>>>>\n            change y by (() - (5))\n        end\n        replace item (1) of [shadow v] with (y position)\n    end\n    switch costume to (costume1 v)\n    if <not <(item (1) of [shadow v]) < [-178]>> then\n        Draw line [12] [60] ((x position) - (6)) ((item (1) of [shadow v]) - (0)) [x] [20] [8] [] [50]\n    end\nend\nswitch costume to (dot v)\nif <(#PlayersOnline) > [1]> then\n    set [ii v] to [0]\n    repeat (length of [@players v])\n        change [ii v] by (1)\n        replace item ((ii) + (1)) of [shadow v] with [-180]\n        if <(item (ii) of [on screen? v]) = [yes]> then\n            go to x: ((item ((((ii) - (1)) * (&MaxElements)) + (3)) of [#cloudlist v]) - (Scroll x)) y: (((item ((((ii) - (1)) * (&MaxElements)) + (4)) of [#cloudlist v]) - (Scroll y)) - (10))\n            switch costume to (costume2 v)\n            if <<not <touching color (#006aff)?>> and <<not <touching color (#ff0000)?>> and <<not <touching color (#eeff00)?>> and <<not <touching color (#333333)?>> and <not <touching color (#727272)?>>>>>> then\n                replace item (1) of [shadow v] with [-180]\n            else\n                switch costume to (dot v)\n                repeat until <<(y position) < [-178]> or <<touching color (#006aff)?> or <<touching color (#ff0000)?> or <<touching color (#eeff00)?> or <<touching color (#333333)?> or <touching color (#727272)?>>>>>>\n                    change y by (() - (5))\n                end\n                replace item ((ii) + (1)) of [shadow v] with (y position)\n            end\n            switch costume to (costume1 v)\n            if <not <(item ((ii) + (1)) of [shadow v]) < [-178]>> then\n                Draw line [12] [60] ((x position) - (6)) ((item ((ii) + (1)) of [shadow v]) - (0)) [x] [20] [8] [] [50]\n            end\n        end\n    end\nend\nswitch costume to (costume1 v)\n\ndefine Draw spike (x) (y) (or)\n// [For draw a spike \(90/-90\)]\nif <<not <((Scroll x) + (480)) < ((x) + (Scroll x))>> and <not <((x) + (Scroll x)) < ((Scroll x) - (480))>>> then\n    pen up\n    set pen color to (#727272)\n    set pen size to (25)\n    go to x: (x) y: (y)\n    point in direction ((or) + (-90))\n    move (10) steps\n    pen down\n    pen up\n    set pen size to (20)\n    go to x: (x) y: (y)\n    point in direction ((or) + (-90))\n    move (18) steps\n    pen down\n    pen up\n    set pen size to (7)\n    set pen color to (#333333)\n    go to x: ((x) - ((or) / (6))) y: (y)\n    point in direction (or)\n    pen down\n    move (30) steps\n    turn left (110) degrees\n    move (40) steps\n    turn left (134) degrees\n    move (40) steps\nend\npen up\n\ndefine // (entirely made by @madu59_)\n\nwhen I receive [mobile chat v]\nset [i v] to [0]\n\nwhen I receive [th v]\nset [scroll x v] to [400]\nset [scroll y v] to [110]\nset [game start? v] to [0]\nbroadcast (tick v)\n\ndefine Draw round (x) (y) (size) (type?) (light?)\nif <<not <((Scroll x) + (480)) < ((x) + (Scroll x))>> and <not <((y) + (Scroll x)) < ((Scroll x) - (480))>>> then\n    set pen size to (size)\n    set [type v] to (type?)\n    Set color\n    if <not <(type?) = [shadow]>> then\n        go to x: (x) y: (y)\n        pen down\n        pen up\n        if <<not <(type?) = [shadow]>> and <(light?) = [1]>> then\n            Draw round (x) (y) ((size) * (1.2)) [shadow] [0]\n        end\n    else\n        go to x: (x) y: (y)\n        pen down\n        pen up\n    end\nend\n\n@Player\n\ndefine Slope\nswitch costume to (l v)\nif <<touching color (#006aff)?> and <(speed x) < [-0.01]>> then\n    set [slope v] to [1]\nelse\n    switch costume to (r v)\n    if <<touching color (#006aff)?> and <(speed x) > [0.01]>> then\n        set [slope v] to [1]\n    else\n        switch costume to (left2 v)\n        if <<touching color (#006aff)?> and <(speed x) > [0.01]>> then\n            switch costume to (right3 v)\n            if <not <touching color (#006aff)?>> then\n                set [slope v] to [4]\n            else\n                set [slope v] to [0]\n            end\n        else\n            switch costume to (right2 v)\n            if <<touching color (#006aff)?> and <(speed x) < [-0.01]>> then\n                switch costume to (left3 v)\n                if <not <touching color (#006aff)?>> then\n                    set [slope v] to [4]\n                else\n                    set [slope v] to [0]\n                end\n            else\n                set [slope v] to [0]\n            end\n        end\n        Set Costume\n    end\nend\n\ndefine Reset\nset [death v] to []\nset [scroll x v] to ((item (((Checkpoint) * (2)) - (1)) of [checkpoints v]) + (pick random (-100) to (100)))\nset [scroll y v] to (item ((Checkpoint) * (2)) of [checkpoints v])\nset [x v] to ((item (((Checkpoint) * (2)) - (1)) of [checkpoints v]) + (pick random (-100) to (100)))\nset [y v] to (item ((Checkpoint) * (2)) of [checkpoints v])\nset [speed x v] to [0]\nset [speed y v] to [0]\nset [in air v] to [4]\nposition\nset [game start? v] to [1]\nshow\n\ndefine Physic\nposition\nchange x by (round ((speed x) / (1.8)))\nif <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<(mouse x) > ((x position) + (20))> and <mouse down?>>> then\n    if <(slope) = [1]> then\n        change [speed x v] by (3.3)\n        change [y v] by (1)\n    else\n        if <(slope) = [4]> then\n            change [speed x v] by (4)\n            change [y v] by (-4)\n        else\n            change [speed x v] by (3.6)\n        end\n    end\nend\nif <<<key (left arrow v) pressed?> or <<key (a v) pressed?> or <key (q v) pressed?>>> or <<((x position) + (-20)) > (mouse x)> and <mouse down?>>> then\n    if <(slope) = [1]> then\n        change [speed x v] by (-3.3)\n        change [y v] by (1)\n    else\n        if <(slope) = [4]> then\n            change [speed x v] by (-4)\n            change [y v] by (-4)\n        else\n            change [speed x v] by (-3.6)\n        end\n    end\nend\nif <<<key (up arrow v) pressed?> or <<key (z v) pressed?> or <key (w v) pressed?>>> or <<(mouse y) > ((y position) + (20))> and <mouse down?>>> then\n    if <(In air) < [4]> then\n        set [speed y v] to [14]\n    end\nend\nif <<key (space v) pressed?> and <<(username) = [maDU59_]> or <(Checkpoint) = [5]>>> then\n    change [y v] by (1)\n    set [speed y v] to [5]\n    set [in air v] to [1]\n    set [cheat v] to [1]\nend\nchange [speed y v] by (-1)\nif <(speed y) < [-11]> then\n    set [speed y v] to [-11]\nend\nSlope\nchange y by (speed y)\nposition\nchange [scroll x v] by (round ((((x) + ((chat open) * (-85))) - (Scroll x)) / (9)))\nchange [scroll y v] by ((round (((y) - (Scroll y)) / (13))) + (2))\nposition\nset [speed x v] to ((speed x) * (0.7))\nCheck checkpoints\nstop [this script v]\n\ndefine change x by (speed x)\nswitch costume to (hitbox v)\nchange [x v] by ((speed x) * (1.1))\nposition\nif <touching color (#006aff)?> then\n    repeat (10)\n        change [y v] by (0.5)\n        position\n        if <not <touching color (#006aff)?>> then\n            stop [this script v]\n        end\n    end\n    change [y v] by (-5)\n    repeat until <not <touching color (#006aff)?>>\n        if <(speed x) > [0]> then\n            change [x v] by (-1)\n        else\n            change [x v] by (1)\n        end\n        position\n    end\nend\nSet Costume\n\ndefine position\ngo to x: ((x) - (Scroll x)) y: ((y) - (Scroll y))\n\ndefine change y by (speed y)\nswitch costume to (hitbox v)\nchange [y v] by (speed y)\nchange [in air v] by (1)\nposition\nrepeat until <not <touching color (#006aff)?>>\n    if <(speed y) > [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\nSet Costume\n\ndefine Set Costume\nswitch costume to (3a v)\nif <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<(mouse x) > ((x position) + (20))> and <mouse down?>>> then\n    switch costume to (2a v)\nelse\n    if <<<key (left arrow v) pressed?> or <<key (a v) pressed?> or <key (q v) pressed?>>> or <<((x position) + (-20)) > (mouse x)> and <mouse down?>>> then\n        switch costume to (1a v)\n    else\n        switch costume to (3a v)\n    end\nend\nif <<<key (up arrow v) pressed?> or <<key (z v) pressed?> or <key (w v) pressed?>>> or <<(mouse y) > ((y position) + (20))> and <mouse down?>>> then\n    if <(costume [name v]) = [3a]> then\n        switch costume to (6a v)\n    else\n        if <(costume [name v]) = [1a]> then\n            switch costume to (5a v)\n        else\n            switch costume to (4a v)\n        end\n    end\nend\nif <<<[1a] = (costume [name v])> or <[2a] = (costume [name v])>> and <<<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<(mouse x) > ((x position) + (20))> and <mouse down?>>> and <<<key (left arrow v) pressed?> or <<key (a v) pressed?> or <key (q v) pressed?>>> or <<((x position) + (-20)) > (mouse x)> and <mouse down?>>>>> then\n    switch costume to (3a v)\nend\nif <<<[5a] = (costume [name v])> or <[4a] = (costume [name v])>> and <<<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<(mouse x) > ((x position) + (20))> and <mouse down?>>> and <<<key (left arrow v) pressed?> or <<key (a v) pressed?> or <key (q v) pressed?>>> or <<((x position) + (-20)) > (mouse x)> and <mouse down?>>>>> then\n    switch costume to (6a v)\nend\n\nset [color1 v] to [26864]\n\nwhen this sprite clicked\nbroadcast (Mobile chat v)\n\nwhen I receive [start v]\nset [checkpoint v] to [1]\nset [game start? v] to [1]\nshow\nforever\n    Reset\n    broadcast (tick v)\n    repeat until <(Death) > []>\n        Physic\n        broadcast (tick v)\n        if <<touching color (#ff0000)?> or <<touching color (#727272)?> or <touching color (#333333)?>>> then\n            set [death v] to [Dead]\n        end\n        if <touching color (#eeff00)?> then\n            set [speed y v] to [24]\n        end\n        if <(Scroll y) < [-100]> then\n            set [death v] to [Fall]\n        end\n        if <(Checkpoint) = [4]> then\n            set [x v] to ((9999) + (pick random (1) to (99999)))\n            set [scroll x v] to (x)\n            broadcast (Outro  v)\n            hide\n            broadcast (tick v)\n            wait until <(Checkpoint) = [5]>\n            set [death v] to [Fall]\n            show\n        end\n    end\nend\n\nwhen flag clicked\nset [checkpoint v] to [1]\nset [game start? v] to [0]\nhide\n\nwhen I receive [th v]\nstop [other scripts in sprite v]\nhide\nforever\n    switch costume to (2a v)\n    show\n    go to x: (0) y: (-68)\nend\n\nwhen I receive [tick v]\nsay (item (Player CHAT) of [chat item v])\n\ndelete all of [checkpoints v]\nadd [0] to [checkpoints v]\nadd [50] to [checkpoints v]\n\ndefine Check checkpoints\nif <(x) > ((item (3) of [checkpoints v]) - (1))> then\n    if <(x) > ((item (5) of [checkpoints v]) - (1))> then\n        if <(x) > [3936]> then\n            if <not <(Checkpoint) > [4]>> then\n                set [checkpoint v] to [4]\n            end\n        else\n            if <not <(Checkpoint) > [3]>> then\n                set [checkpoint v] to [3]\n            end\n        end\n    else\n        if <not <(Checkpoint) > [2]>> then\n            set [checkpoint v] to [2]\n        end\n    end\nelse\n    if <not <(Checkpoint) > [1]>> then\n        set [checkpoint v] to [1]\n    end\nend\n\nwhen I receive [outro  v]\nbroadcast (tick v)\nhide\n\nwhen I receive [start v]\nwait until <<mouse down?> or <key (any v) pressed?>>\nforever\n    wait (1) seconds\n    if <(Checkpoint) = [4]> then\n        stop [this script v]\n    end\n    change [score v] by (1)\nend\n\n@Color detector\n\ndefine Detect RGB Colour\nshow\nset [-r v] to [0]\nrepeat (32)\n    set [-g v] to [0]\n    repeat (32)\n        set [-b v] to [0]\n        repeat (16)\n            if <touching color (((-R) * (65536)) + (((-G) * (256)) + (-B)))?> then\n                set [-rgb v] to (((-R) * (65536)) + (((-G) * (256)) + (-B)))\n            end\n            change [-b v] by (16)\n        end\n        change [-g v] by (8)\n    end\n    change [-r v] by (8)\nend\nhide\n\nwhen flag clicked\n\nforever\n    hide\n    go to (mouse-pointer v)\n    if <mouse down?> then\n        Detect RGB Colour\n    end\nend\n\n@☁\n\ndefine Init\ndelete all of [@players v]\ndelete all of [@ids v]\ndelete all of [@playeroffset v]\ndelete all of [#checkactive v]\ndelete all of [#checkvalue v]\ndelete all of [#cloudlist v]\ndelete all of [clouddata v]\nadd (join [=] (☁ <Cloud1>)) to [clouddata v]\nadd (join [=] (☁ <Cloud2>)) to [clouddata v]\nadd (join [=] (☁ <Cloud3>)) to [clouddata v]\nadd (join [=] (☁ <Cloud4>)) to [clouddata v]\nadd (join [=] (☁ <Cloud5>)) to [clouddata v]\nadd (join [=] (☁ <Cloud6>)) to [clouddata v]\nadd (join [=] (☁ <Cloud7>)) to [clouddata v]\nadd (join [=] (☁ <Cloud8>)) to [clouddata v]\nset [@id v] to (([floor v] of ((days since 2000) * (100000000)) ) mod (1000))\n\ndefine Process Cloud (id) (var)\nif <(var) = (item (id) of [clouddata v])> then\n    stop [this script v]\nend\nreplace item (id) of [clouddata v] with (var)\nDecode (var)\nif <<(item (2) of [decoded v]) = (username)> and <(item (5) of [decoded v]) = (@ID)>> then\n    stop [this script v]\nend\nFind Player (item (2) of [decoded v]) (item (5) of [decoded v])\nif <(~i) = [0]> then\n    set [~i v] to (item # of [] in [@players v])\n    if <(~i) = [0]> then\n        New Player\n    else\n        replace item (~i) of [@players v] with (item (2) of [decoded v])\n        replace item (~i) of [@ids v] with (item (5) of [decoded v])\n    end\nend\nset [~j v] to [1]\nrepeat (length of [decoded v])\n    replace item ((((~i) - (1)) * (&MaxElements)) + (~j)) of [#cloudlist v] with (item (~j) of [decoded v])\n    change [~j v] by (1)\nend\n\ndefine Read Cloud\nProcess Cloud [1] (join [=] (☁ <Cloud1>))\nProcess Cloud [2] (join [=] (☁ <Cloud2>))\nProcess Cloud [3] (join [=] (☁ <Cloud3>))\nProcess Cloud [4] (join [=] (☁ <Cloud4>))\nProcess Cloud [5] (join [=] (☁ <Cloud5>))\nProcess Cloud [6] (join [=] (☁ <Cloud6>))\nProcess Cloud [7] (join [=] (☁ <Cloud7>))\nProcess Cloud [8] (join [=] (☁ <Cloud8>))\n\ndefine Decode (clouddata)\ndelete all of [decoded v]\nset [~temp v] to []\nset [~i v] to [2]\nrepeat (((length of (clouddata)) - (1)) / (2))\n    switch costume to (join (letter (~i) of (clouddata)) (letter ((~i) + (1)) of (clouddata)))\n    if <(costume [number v]) = [1]> then\n        add (~temp) to [decoded v]\n        set [~temp v] to []\n    else\n        set [~temp v] to (join (~temp) (costume [name v]))\n    end\n    change [~i v] by (2)\nend\n\ndefine Encode\nset [~temp v] to []\nset [~i v] to [1]\nrepeat (length of [#playerlist v])\n    set [~j v] to [1]\n    repeat (length of (item (~i) of [#playerlist v]))\n        switch costume to (letter (~j) of (item (~i) of [#playerlist v]))\n        if <(costume [number v]) < [10]> then\n            set [~temp v] to (join (~temp) (join [0] (costume [number v])))\n        else\n            set [~temp v] to (join (~temp) (costume [number v]))\n        end\n        change [~j v] by (1)\n    end\n    set [~temp v] to (join (~temp) [01])\n    change [~i v] by (1)\nend\n\ndefine SaveToCloud (playerid)\nSavePlayer\nEncode\nif <(playerid) < [6]> then\n    if <(playerid) < [3]> then\n        if <(playerid) = [1]> then\n            set [☁ <cloud1> v] to (~temp)\n        else\n            set [☁ <cloud2> v] to (~temp)\n        end\n    else\n        if <(playerid) = [3]> then\n            set [☁ <cloud3> v] to (~temp)\n        else\n            if <(playerid) = [4]> then\n                set [☁ <cloud4> v] to (~temp)\n            else\n                set [☁ <cloud5> v] to (~temp)\n            end\n        end\n    end\nelse\n    if <(playerid) < [8]> then\n        if <(playerid) = [6]> then\n            set [☁ <cloud6> v] to (~temp)\n        else\n            set [☁ <cloud7> v] to (~temp)\n        end\n    else\n        if <(playerid) = [8]> then\n            set [☁ <cloud8> v] to (~temp)\n        end\n    end\nend\n\nwhen I receive [tick v]\nif <(@ID) = []> then\n    Init\nend\nRead Cloud\nSaveToCloud (pick random (1) to (length of [clouddata v]))\nCountPlayers\nUpdatePlayersList (last)\nset [last v] to ((1) - (last))\nDecode (join [=] (☁ Speedrun))\nset [high score v] to (item (1) of [decoded v])\nset [high score name v] to (item (2) of [decoded v])\nif <<<(item (1) of [decoded v]) > (Score)> or <(item (1) of [decoded v]) = [0]>> and <<(Checkpoint) = [4]> and <<not <(Score) = [0]>> and <(Cheat) = [0]>>>> then\n    delete all of [#playerlist v]\n    add (Score) to [#playerlist v]\n    add (username) to [#playerlist v]\n    Encode\n    set [☁ speedrun v] to (~temp)\nend\n\ndefine CountPlayers\nset [#playersonline v] to [1]\nset [~i v] to [1]\nrepeat (length of [@players v])\n    if <(item (~i) of [#checkactive v]) = [1]> then\n        change [#playersonline v] by (1)\n    end\n    change [~i v] by (1)\nend\nif <(#PlayersOnline) > [1]> then\n    hide\nelse\n    if <(username) = []> then\n        switch costume to (log in v)\n    else\n        if <(☁ <Online>) = [0]> then\n            if <(Game start?) = [1]> then\n                switch costume to (new v)\n            end\n        else\n            if <(Game start?) = [1]> then\n                switch costume to (alone v)\n            end\n        end\n    end\n    show\nend\ngo to [front v] layer\nif <(☁ <Online>) < [0]> then\n    switch costume to (offline v)\n    show\n    stop [all v]\nend\nif <<not <(Version) = (☁ <Online>)>> and <(☁ <Online>) > [0]>> then\n    switch costume to (update v)\n    show\n    stop [all v]\nend\n\ndefine UpdatePlayersList (first)\nif <(first) = [1]> then\n    set [~c v] to [0]\n    repeat (length of [@players v])\n        if <not <<(item (((~c) * (&MaxElements)) + (2)) of [#cloudlist v]) = (username)> and <(item (((~c) * (&MaxElements)) + (5)) of [#cloudlist v]) = (@ID)>>> then\n            if <(item ((~c) + (1)) of [@playeroffset v]) = [0]> then\n                replace item ((~c) + (1)) of [#checkvalue v] with (item (((~c) * (&MaxElements)) + (1)) of [#cloudlist v])\n            end\n            replace item ((~c) + (1)) of [@playeroffset v] with ((item ((~c) + (1)) of [@playeroffset v]) + (1))\n        end\n        change [~c v] by (1)\n    end\nelse\n    set [~c v] to [0]\n    repeat (length of [@players v])\n        if <not <<(item (((~c) * (&MaxElements)) + (2)) of [#cloudlist v]) = (username)> and <(item (((~c) * (&MaxElements)) + (5)) of [#cloudlist v]) = (@ID)>>> then\n            if <<not <(item ((~c) + (1)) of [#checkvalue v]) = (item (((~c) * (&MaxElements)) + (1)) of [#cloudlist v])>> or <(item ((~c) + (1)) of [@playeroffset v]) > [60]>> then\n                if <<(item ((~c) + (1)) of [#checkvalue v]) = (item (((~c) * (&MaxElements)) + (1)) of [#cloudlist v])> or <(item (((~c) * (&MaxElements)) + (5)) of [#cloudlist v]) = [X]>> then\n                    replace item ((~c) + (1)) of [#checkactive v] with [0]\n                    replace item ((~c) + (1)) of [@players v] with []\n                    replace item ((~c) + (1)) of [@ids v] with []\n                else\n                    replace item ((~c) + (1)) of [#checkactive v] with [1]\n                end\n                replace item ((~c) + (1)) of [@playeroffset v] with [0]\n            end\n        end\n        change [~c v] by (1)\n    end\nend\n\ndefine EmptyCloud\nset [☁ <cloud1> v] to []\nwait (0.1) seconds\nset [☁ <cloud2> v] to []\nwait (0.1) seconds\nset [☁ <cloud3> v] to []\nwait (0.1) seconds\nset [☁ <cloud4> v] to []\nwait (0.1) seconds\nset [☁ <cloud5> v] to []\nwait (0.1) seconds\nset [☁ <cloud6> v] to []\nwait (0.1) seconds\nset [☁ <cloud7> v] to []\nwait (0.1) seconds\nset [☁ <cloud8> v] to []\n\nwhen flag clicked\nset [score v] to [0]\nset [@id v] to []\ngo to x: (0) y: (0)\nhide\nset [last v] to [1]\nset [version v] to [1]\nif <(username) = [maDU59_]> then\n    wait (0.1) seconds\n    set [☁ <online> v] to (Version)\nend\nif <(#PlayersOnline) > [0]> then\n    replace item (5) of [#playerlist v] with [X]\n    repeat (10)\n        SaveToCloud (pick random (1) to (length of [clouddata v]))\n    end\nend\nset [#playersonline v] to [0]\n\ndefine SavePlayer\ndelete all of [#playerlist v]\nadd (~Tick) to [#playerlist v]\nadd (username) to [#playerlist v]\nadd (round ([x v] of [player v])) to [#playerlist v]\nadd (round ([y v] of [player v])) to [#playerlist v]\nadd (@ID) to [#playerlist v]\nadd ([costume name v] of [player v]) to [#playerlist v]\nadd (Player CHAT) to [#playerlist v]\nadd (Game start?) to [#playerlist v]\n\nset [&maxelements v] to [8]\n\ndefine New Player\nadd (item (2) of [decoded v]) to [@players v]\nadd (item (5) of [decoded v]) to [@ids v]\nadd [0] to [@playeroffset v]\nadd [0] to [#checkactive v]\nadd [0] to [#checkvalue v]\nrepeat (&MaxElements)\n    add [0] to [#cloudlist v]\nend\ncreate clone of (other players v)\n\ndefine Find Player (name) (id)\nset [~i v] to [0]\nrepeat (length of [@players v])\n    change [~i v] by (1)\n    if <<(item (~i) of [@players v]) = (name)> and <(item (~i) of [@ids v]) = (id)>> then\n        stop [this script v]\n    end\nend\nset [~i v] to [0]\n\nEmptyCloud\n\nset [☁ <online> v] to [0]\n\nwhen [1 v] key pressed\nif <(username) = [maDU59_]> then\n    show variable [☁ <online> v]\n    show variable [high score v]\n    show variable [high score name v]\n    hide list [@players v]\nend\n\nwhen [2 v] key pressed\nif <(username) = [maDU59_]> then\n    hide variable [☁ <online> v]\n    hide variable [high score v]\n    hide variable [high score name v]\n    show list [@players v]\nend\n\n@Other players\n\nwhen flag clicked\nset [#clones v] to [0]\nhide\nset [#id v] to [maDU59_ is the best]\n\nwhen I start as a clone\ngo to [back v] layer\nadd [] to [on screen? v]\nadd [] to [shadow v]\nchange [#clones v] by (1)\nset [#id v] to (#Clones)\n\nwhen I receive [tick v]\nswitch costume to (item ((((#ID) - (1)) * (&MaxElements)) + (6)) of [#cloudlist v])\nPosition ((item ((((#ID) - (1)) * (&MaxElements)) + (3)) of [#cloudlist v]) - (Scroll x)) ((item ((((#ID) - (1)) * (&MaxElements)) + (4)) of [#cloudlist v]) - (Scroll y))\n\ndefine Position (x) (y)\nif <(#ID) = [maDU59_ is the best]> then\n    hide\nelse\n    if <<not <(item (#ID) of [@ids v]) = []>> and <<not <(item ((((#ID) - (1)) * (&MaxElements)) + (8)) of [#cloudlist v]) = [0]>> and <<not <(item (5) of [#cloudlist v]) = [0]>> and <not <(Checkpoint) = [4]>>>>> then\n        if <(length of [#cloudlist v]) > [3]> then\n            go to x: (x) y: (y)\n            if <<(x) = (x position)> and <(y) = (y position)>> then\n                show\n                replace item (#ID) of [on screen? v] with [yes]\n                if <(item (item ((((#ID) - (1)) * (&MaxElements)) + (7)) of [#cloudlist v]) of [chat item v]) = []> then\n                    say (item ((((#ID) - (1)) * (&MaxElements)) + (2)) of [#cloudlist v])\n                else\n                    say (item (item ((((#ID) - (1)) * (&MaxElements)) + (7)) of [#cloudlist v]) of [chat item v])\n                end\n            else\n                hide\n                replace item (#ID) of [on screen? v] with [no]\n            end\n        end\n    else\n        replace item (#ID) of [on screen? v] with [Error]\n        hide\n    end\nend\n\nwhen I receive [th v]\nstop [other scripts in sprite v]\nforever\n    switch costume to (2a v)\n    show\n    go to x: (200) y: (152)\nend\n\n@Chat\n\nwhen [t v] key pressed\nrepeat (1)\n    delete this clone\nend\nset [chat open v] to ((1) - (chat open))\n\nwhen flag clicked\nset [player chat v] to [0]\nset [chat open v] to [0]\nset [ghost effect v] to [100]\nmake chat list\nforever\n    if <<(chat open) = [1]> and <(Game start?) = [1]>> then\n        show\n        change [ghost effect v] by (-5)\n        if <(Ghost effect) < [1]> then\n            set [ghost effect v] to [0]\n        end\n    else\n        change [ghost effect v] by (5)\n        if <(Ghost effect) > [99]> then\n            set [ghost effect v] to [100]\n            go to x: (-140) y: (0)\n            hide\n        end\n    end\n    set [ghost v] effect to (Ghost effect)\n    if <(Chat timer) > [0]> then\n        change [chat timer v] by (-1)\n    else\n        if <(Chat timer) = [0]> then\n            set [player chat v] to [0]\n            change [chat timer v] by (-1)\n        end\n    end\nend\n\nwhen [any v] key pressed\nif <(chat open) = [1]> then\n    if <key (1 v) pressed?> then\n        Reset\n        set [player chat v] to [1]\n    end\n    if <key (2 v) pressed?> then\n        Reset\n        set [player chat v] to [2]\n    end\n    if <key (3 v) pressed?> then\n        Reset\n        set [player chat v] to [3]\n    end\n    if <key (4 v) pressed?> then\n        Reset\n        set [player chat v] to [4]\n    end\n    if <key (5 v) pressed?> then\n        Reset\n        set [player chat v] to [5]\n    end\n    if <key (6 v) pressed?> then\n        Reset\n        set [player chat v] to [6]\n    end\n    if <key (7 v) pressed?> then\n        Reset\n        set [player chat v] to [7]\n    end\n    if <key (8 v) pressed?> then\n        Reset\n        set [player chat v] to [8]\n    end\n    if <key (9 v) pressed?> then\n        Reset\n        set [player chat v] to [9]\n    end\n    if <key (0 v) pressed?> then\n        Reset\n        set [player chat v] to [10]\n    end\nend\n\ndefine Reset\nset [chat timer v] to [600]\nset [chat open v] to [0]\n\ndefine make chat list\nif <(language::translate) = [French]> then\n    switch costume to (chat french v)\n    add [Salut] to [chat item v]\n    add [De ce côté] to [chat item v]\n    add [Au revoir] to [chat item v]\n    add [lol] to [chat item v]\n    add [Fais attention!] to [chat item v]\n    add [Ok =\)] to [chat item v]\n    add [Ca lag =\(] to [chat item v]\n    add [De quel côté?] to [chat item v]\n    add [Je dois y aller] to [chat item v]\n    add [Gg!] to [chat item v]\nelse\n    switch costume to (chat english v)\n    add [Hello] to [chat item v]\n    add [This way] to [chat item v]\n    add [Bye] to [chat item v]\n    add [lol] to [chat item v]\n    add [Watch out!] to [chat item v]\n    add [Ok =\)] to [chat item v]\n    add [It's lagging =\(] to [chat item v]\n    add [Which way?] to [chat item v]\n    add [Got to go] to [chat item v]\n    add [Gg!] to [chat item v]\nend\n\nwhen I receive [mobile chat v]\nrepeat (1)\n    delete this clone\nend\nset [chat open v] to [1]\ngo to x: (-140) y: (50)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nhide\ngo to x: (0) y: (0)\nask [Which item of chat?] and wait\nif <<(round (answer)) > [0]> and <(round (answer)) < [10]>> then\n    set [player chat v] to (round (answer))\n    Reset\nelse\n    if <(answer) = [0]> then\n        set [player chat v] to [10]\n        Reset\n    else\n        set [player chat v] to [0]\n        Reset\n    end\nend\ndelete this clone\n\nwhen I receive [start v]\nset [chat open v] to [0]\n\n@Recommandations projets\n\nwhen I start as a clone\nset [clone ? v] to [oui]\nif <(Nom du clone) = [miniature]> then\n    set [luminosité clone v] to [20]\n    set [ghost v] effect to (100)\n    Mettre le clone sur le bon costume\n    mettre le clone au bon endroit | taille par défaut: [28]\n    show\n    wait until <not <mouse down?>>\n    go to [front v] layer\n    forever\n        change [ghost v] effect by (-20)\n        if <<touching (mouse-pointer v)?> and <(Quelque chose montré ?) = [non]>> then\n            change [luminosité clone v] by (((20) - (luminosité clone)) / (3))\n            if <mouse down?> then\n                if <(Quelque chose montré ?) = [non]> then\n                    set [quelque chose montré ? v] to [oui]\n                    set [nom costume suggestion cliquée v] to (Nom exact Clone)\n                    set [n° costume suggestion cliquée v] to (costume [number v])\n                    broadcast (Suggestion cliquée v)\n                    delete all of [link v]\n                    add (item ((((costume [number v]) - (1)) / (2)) - (0)) of [liste des liens v]) to [link v]\n                    hide list [link v]\n                end\n            end\n        else\n            change [luminosité clone v] by (((0) - (luminosité clone)) / (3))\n        end\n        set [brightness v] effect to (luminosité clone)\n        wait until <not <mouse down?>>\n    end\nend\nif <(Nom du clone) = [croix]> then\n    go to [front v] layer\n    show\n    switch costume to (croix v)\n    set [luminosité clone v] to [20]\n    set [ghost v] effect to (100)\n    set size to (100) %\n    go to x: (187) y: (110)\n    repeat until <<touching (mouse-pointer v)?> and <mouse down?>>\n        change [effet fantome suggestion cliqué v] by (((0) - (Effet fantome suggestion cliqué)) / (2))\n        set [ghost v] effect to (Effet fantome suggestion cliqué)\n        if <touching (mouse-pointer v)?> then\n            change [luminosité clone v] by (((0) - (luminosité clone)) / (3))\n        else\n            change [luminosité clone v] by (((-10) - (luminosité clone)) / (3))\n        end\n        set [brightness v] effect to (luminosité clone)\n    end\n    show list [link v]\n    set [n° costume suggestion cliquée v] to [-]\n    delete this clone\nend\nif <(Nom du clone) = [description projet]> then\n    switch costume to ((N° costume suggestion cliquée) + (1))\n    go to [front v] layer\n    go to x: (0) y: (0)\n    set size to (100) %\n    set [effet fantome suggestion cliqué v] to [100]\n    set [ghost v] effect to (100)\n    show\n    set [analyse des noms: n° de la lettre analysée v] to [1]\n    Analyse rapide\n    repeat until <(N° costume suggestion cliquée) = [-]>\n        change [effet fantome suggestion cliqué v] by (((0) - (Effet fantome suggestion cliqué)) / (2))\n        set [ghost v] effect to (Effet fantome suggestion cliqué)\n    end\n    set [quelque chose montré ? v] to [non]\n    repeat (25)\n        change [effet fantome suggestion cliqué v] by (((100) - (Effet fantome suggestion cliqué)) / (2))\n        set [ghost v] effect to (Effet fantome suggestion cliqué)\n    end\n    clear graphic effects\n    delete this clone\nend\nif <(Nom du clone) = [back]> then\n    go to [front v] layer\n    show\n    switch costume to (back v)\n    set size to (100) %\n    go to x: (0) y: (0)\nend\n\nwhen flag clicked\nset [quelque chose montré ? v] to [non]\nshow list [link v]\nset [clone ? v] to [non]\nhide\n\nwhen I receive [suprimmer les suggessions v]\nif <(clone ?) = [oui]> then\n    stop [other scripts in sprite v]\n    repeat (5)\n        change [ghost v] effect by (20)\n    end\n    delete this clone\nend\n\ndefine mettre le clone au bon endroit | taille par défaut: (taille par défaut)\ngo to [front v] layer\nif <(Taille clone) = [-]> then\n    set size to (taille par défaut) %\nelse\n    set size to (Taille clone) %\nend\nif <not <(position suggestion) = [-]>> then\n    if <(position suggestion) = [1]> then\n        go to x: (-160) y: (120)\n    end\n    if <(position suggestion) = [2]> then\n        go to x: (-160) y: (0)\n    end\n    if <(position suggestion) = [3]> then\n        go to x: (-160) y: (-120)\n    end\n    if <(position suggestion) = [4]> then\n        go to x: (0) y: (120)\n    end\n    if <(position suggestion) = [5]> then\n        go to x: (0) y: (0)\n    end\n    if <(position suggestion) = [6]> then\n        go to x: (0) y: (-120)\n    end\n    if <(position suggestion) = [7]> then\n        go to x: (160) y: (120)\n    end\n    if <(position suggestion) = [8]> then\n        go to x: (160) y: (0)\n    end\n    if <(position suggestion) = [9]> then\n        go to x: (160) y: (-120)\n    end\nelse\n    go to x: (Position X clone) y: (Position Y clone)\nend\nshow\n\ndefine Cloner la suggestion (nom) en position (position) | position personalisée: x: (x) y: (y) | Taille: (taille) | Nom exact: (nom exact)\nif <(clone ?) = [non]> then\n    set [nom du clone v] to (nom)\n    set [position suggestion v] to (position)\n    set [position x clone v] to (x)\n    set [position y clone v] to (y)\n    set [taille clone v] to (taille)\n    set [nom exact clone v] to (nom exact)\n    create clone of (_myself_ v)\nend\n\ndefine Mettre le clone sur le bon costume\nswitch costume to (croix v)\nswitch costume to (Nom exact Clone)\n\nwhen I receive [suggestion cliquée v]\nif <(clone ?) = [non]> then\n    Cloner la suggestion [description projet] en position [-] | position personalisée: x: [-] y: [-] | Taille: [-] | Nom exact: [-]\n    Cloner la suggestion [croix] en position [-] | position personalisée: x: [-] y: [-] | Taille: [-] | Nom exact: [-]\nend\n\ndefine Analyse rapide\nrepeat until <<(Nom costume suggestion cliquée) = (item (analyse des noms: N° de la lettre analysée) of [liste des liens v])> or <(analyse des noms: N° de la lettre analysée) > (length of [link v])>>\n    change [analyse des noms: n° de la lettre analysée v] by (1)\nend\n\nwhen I receive [cloner les recommendations v]\nshow list [link v]\nif  then\n    delete this clone\nend\nset [quelque chose montré ? v] to [non]\nCloner la suggestion [back] en position [-] | position personalisée: x: [0] y: [0] | Taille: [100] | Nom exact: [Back]\nCloner la suggestion [miniature] en position [-] | position personalisée: x: [-150] y: [-120] | Taille: [25] | Nom exact: [Minecraft clicker]\nCloner la suggestion [miniature] en position [-] | position personalisée: x: [0] y: [-120] | Taille: [25] | Nom exact: [Hide and seek 2]\nCloner la suggestion [miniature] en position [-] | position personalisée: x: [150] y: [-120] | Taille: [25] | Nom exact: [online platformer battle]\nCloner la suggestion [miniature] en position [-] | position personalisée: x: [-150] y: [-20] | Taille: [25] | Nom exact: [3D platformer]\nCloner la suggestion [miniature] en position [-] | position personalisée: x: [0] y: [-20] | Taille: [25] | Nom exact: [Connect 4]\nCloner la suggestion [miniature] en position [-] | position personalisée: x: [150] y: [-20] | Taille: [25] | Nom exact: [Mario kart]\nCloner la suggestion [miniature] en position [-] | position personalisée: x: [-150] y: [80] | Taille: [25] | Nom exact: [3D minecraft]\nCloner la suggestion [miniature] en position [-] | position personalisée: x: [0] y: [80] | Taille: [25] | Nom exact: [Scratch royale]\nCloner la suggestion [miniature] en position [-] | position personalisée: x: [150] y: [80] | Taille: [25] | Nom exact: [Castle || Multiplayer Platformer]\nCloner la suggestion [miniature] en position [-] | position personalisée: x: [220] y: [160] | Taille: [40] | Nom exact: [ytb]\n\nbroadcast (Cloner les recommendations v)\n\nswitch costume to (objectif 10000 projets4 v)\n\ndelete all of [liste des liens v]\nadd [https://scratch.mit.edu/projects/462879880/] to [liste des liens v]\nadd [https://scratch.mit.edu/projects/451350644/] to [liste des liens v]\nadd [https://scratch.mit.edu/projects/407289334/] to [liste des liens v]\nadd [https://scratch.mit.edu/projects/416201340/] to [liste des liens v]\nadd [https://scratch.mit.edu/projects/434385705/] to [liste des liens v]\nadd [https://scratch.mit.edu/projects/403648666/] to [liste des liens v]\nadd [https://scratch.mit.edu/projects/426659751/] to [liste des liens v]\nadd [https://scratch.mit.edu/projects/438660701/] to [liste des liens v]\nadd [https://scratch.mit.edu/projects/429933659/] to [liste des liens v]\nadd [https://www.youtube.com/channel/UCpAZZHCmMiQzAif5wd6xF6A?view_as=subscriber] to [liste des liens v]\n\nwhen I receive [cloner les recommendations v]\nforever\n    show\n    go to [front v] layer\n    go to x: (-220) y: (160)\nend\n\nwhen this sprite clicked\nif <(clone ?) = [non]> then\n    broadcast (suprimmer les suggessions v)\n    hide\n    stop [other scripts in sprite v]\nend\n\n@Buttons\n\nwhen flag clicked\nif <(username) = [maDU59_]> then\n    set [music v] to [0]\nelse\n    set [music v] to [1]\nend\ngo to x: (0) y: (0)\nshow\nswitch costume to (title v)\ncreate clone of (_myself_ v)\nswitch costume to (+ v)\ncreate clone of (_myself_ v)\nswitch costume to (credits v)\ncreate clone of (_myself_ v)\nswitch costume to (music-icon v)\ncreate clone of (_myself_ v)\nswitch costume to (start v)\n\nwhen this sprite clicked\nif <(costume [number v]) = [1]> then\n    broadcast (start v)\nend\nif <(costume [number v]) = [4]> then\n    broadcast (Cloner les recommendations v)\nend\nif <<(costume [number v]) = [6]> or <(costume [number v]) = [7]>> then\n    set [music v] to ((1) - (Music))\nend\n\nwhen I receive [start v]\nstop [other scripts in sprite v]\nhide\n\nwhen I start as a clone\nif <(costume [name v]) = [title]> then\n    forever\n        go to x: (0) y: (140)\n        switch costume to (title2 v)\n        if <touching (mouse-pointer v)?> then\n            change size by (((120) - (size)) / (3))\n        else\n            change size by (((100) - (size)) / (3))\n        end\n        switch costume to (title v)\n    end\nelse\n    if <(costume [name v]) = [+]> then\n        forever\n            go to x: (220) y: (-160)\n            switch costume to (+ v)\n            if <touching (mouse-pointer v)?> then\n                change size by (((150) - (size)) / (3))\n            else\n                change size by (((100) - (size)) / (3))\n            end\n        end\n    else\n        if <(costume [name v]) = [credits]> then\n            forever\n                set size to (100) %\n                go to x: (0) y: (0)\n            end\n        else\n            if <(costume [name v]) = [Music-icon]> then\n                set size to (20) %\n                forever\n                    if <(Music) = [1]> then\n                        switch costume to (music-icon v)\n                    else\n                        switch costume to (music-icon2 v)\n                    end\n                    if <touching (mouse-pointer v)?> then\n                        change size by (((30) - (size)) / (3))\n                    else\n                        change size by (((20) - (size)) / (3))\n                    end\n                    go to x: (-215) y: (155)\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (mouse-pointer v)?> then\n        change size by (((150) - (size)) / (3))\n    else\n        change size by (((100) - (size)) / (3))\n    end\n    broadcast (tick v)\nend\n\nwhen flag clicked\nset [cheat v] to [0]\nshow\nforever\n    set [scroll x v] to [5]\n    set [scroll y v] to [61]\n    repeat (500)\n        change [scroll x v] by (1)\n    end\n    repeat (200)\n        change [scroll y v] by (1)\n    end\n    repeat (500)\n        change [scroll x v] by (1)\n    end\n    repeat (400)\n        change [scroll x v] by (1)\n        change [scroll y v] by (0.7)\n    end\n    repeat (1000)\n        change [scroll x v] by (1)\n    end\n    repeat (100)\n        change [scroll y v] by (1)\n    end\n    repeat (100)\n        change [scroll x v] by (1)\n    end\n    repeat (450)\n        change [scroll y v] by (-1)\n    end\n    repeat (400)\n        change [scroll x v] by (1)\n    end\n    repeat (100)\n        change [scroll y v] by (1)\n    end\n    repeat (1100)\n        change [scroll x v] by (1)\n    end\n    repeat until <<(Scroll x) < [20]> and <(Scroll y) < [75]>>\n        change [scroll x v] by (round (((5) - (Scroll x)) / (20)))\n        change [scroll y v] by (round (((61) - (Scroll y)) / (20)))\n    end\nend\n\nwhen [timer v] > (0)\nbroadcast (th v)\n\nwhen I receive [th v]\nhide\n\nwhen I receive [th v]\nstop [other scripts in sprite v]\nhide\nforever\n    set size to (120) %\n    switch costume to (title v)\n    show\n    go to x: (0) y: (140)\nend\n\n@Free Outro #2\n\nwhen I receive [outro  v]\nset [checkpoint v] to [4]\nset [hide outro v] to [0]\nif  then\n    delete this clone\nend\nset [username v] to [maDU59_]\nSetup Lists\npoint in direction (90)\nset [sizelimit v] to [200]\nset [clone id v] to [Letter 1]\nType (Username) [0] [-130] [0] [0] [-100] [0]\nset [clone id v] to [Letter]\nType (Username) [0] [-130] [0] [0] [100] [0]\nstart sound [Jim Yosef - Link \[NCS Release\] v]\nreset timer\nclear graphic effects\nset size to (100) %\nset [clone id v] to [Logo]\ncreate clone of (_myself_ v)\nwait (0) seconds\nClone Particles\nset [clone id v] to [Back]\ncreate clone of (_myself_ v)\nset [clone id v] to [Ghost]\ncreate clone of (_myself_ v)\nset [clone id v] to [r]\ncreate clone of (_myself_ v)\nwait (8) seconds\nset [hide outro v] to [1]\nwait (0) seconds\nset [hide outro v] to [0]\npoint in direction (90)\nset [sizelimit v] to [200]\nset [clone id v] to [Letter 1]\nType [You win!] [0] [0] [0] [0] [-100] [0]\nset [clone id v] to [Letter]\nType [You win!] [0] [0] [0] [0] [100] [0]\nset [sizelimit v] to [50]\nset [clone id v] to [Letter 1]\nType (join [Your score is: ] (join (Score) [ seconds!])) [0] [-60] [0] [20] [-100] [0]\nset [clone id v] to [Letter]\nType (join [Your score is: ] (join (Score) [ seconds!])) [0] [-60] [0] [20] [100] [0]\nset [sizelimit v] to [50]\nset [clone id v] to [Letter 1]\nType (join [The high score was made by ] (join (join (join (High score name) [ in ]) (High score)) [ seconds!])) [0] [-120] [0] [20] [-100] [0]\nset [clone id v] to [Letter]\nType (join [The high score was made by ] (join (join (join (High score name) [ in ]) (High score)) [ seconds!])) [0] [-120] [0] [20] [100] [0]\nwait until <<key (any v) pressed?> or <mouse down?>>\nset [checkpoint v] to [5]\n\nwhen I receive [intros v]\nstop [other scripts in sprite v]\nstop all sounds\nhide\ndelete this clone\n\ndefine Clone Particles\nset [clone id v] to [Particle]\nrepeat (75)\n    create clone of (_myself_ v)\n    turn right (4.8) degrees\nend\npoint in direction (90)\n\ndefine Smooth Glide x: (x) y: (y) speed: (speed) (ghost)\nrepeat until <<(round (x position)) = (round (x))> and <(round (y position)) = (round (y))>>\n    change x by (((round (x)) - (round (x position))) / (speed))\n    change y by (((round (y)) - (round (y position))) / (speed))\n    change [ghost v] effect by (ghost)\nend\ngo to x: (x) y: (y)\n\ndefine Type: System (text) (x) (y) (size) (color) (brightness) (speed)\nswitch costume to (back 1 v)\nhide\ngo to x: (x) y: (y)\nset size to (size) %\nset [# v] to [1]\nset [color v] effect to (color)\nset [brightness v] effect to (brightness)\nset [length v] to (length of (text))\nrepeat (length of (text))\n    if <(letter (#) of (text)) > [ ]> then\n        switch costume to (letter (#) of (text))\n        create clone of (_myself_ v)\n        change x by ((size) * ((item (costume [number v]) of [character widths v]) / (90)))\n        change [# v] by (1)\n    else\n        switch costume to ( v)\n        create clone of (_myself_ v)\n        change x by ((size) * ((item (costume [number v]) of [character widths v]) / (90)))\n        change [# v] by (1)\n    end\n    wait (speed) seconds\nend\n\ndefine Setup Lists\ndelete all of [character widths v]\nadd [thing] to [character widths v]\nadd [29] to [character widths v]\nadd [24] to [character widths v]\nadd [28] to [character widths v]\nadd [27] to [character widths v]\nadd [24] to [character widths v]\nadd [24] to [character widths v]\nadd [28] to [character widths v]\nadd [28] to [character widths v]\nadd [7] to [character widths v]\nadd [21] to [character widths v]\nadd [22] to [character widths v]\nadd [22] to [character widths v]\nadd [34] to [character widths v]\nadd [27] to [character widths v]\nadd [34] to [character widths v]\nadd [22] to [character widths v]\nadd [34] to [character widths v]\nadd [21] to [character widths v]\nadd [23] to [character widths v]\nadd [27] to [character widths v]\nadd [27] to [character widths v]\nadd [29] to [character widths v]\nadd [38] to [character widths v]\nadd [26] to [character widths v]\nadd [27] to [character widths v]\nadd [27] to [character widths v]\nadd [11] to [character widths v]\nadd [20] to [character widths v]\nadd [21] to [character widths v]\nadd [25] to [character widths v]\nadd [21] to [character widths v]\nadd [20] to [character widths v]\nadd [21] to [character widths v]\nadd [20] to [character widths v]\nadd [20] to [character widths v]\nadd [20] to [character widths v]\nadd [14] to [character widths v]\nadd [25] to [character widths v]\nadd [15] to [character widths v]\nadd [10] to [character widths v]\nadd [24] to [character widths v]\nadd [24] to [character widths v]\nadd [20] to [character widths v]\nadd [24] to [character widths v]\nadd [22] to [character widths v]\nadd [16] to [character widths v]\nadd [24] to [character widths v]\nadd [22] to [character widths v]\nadd [11] to [character widths v]\nadd [14] to [character widths v]\nadd [18] to [character widths v]\nadd [9] to [character widths v]\nadd [33] to [character widths v]\nadd [22] to [character widths v]\nadd [24] to [character widths v]\nadd [24] to [character widths v]\nadd [24] to [character widths v]\nadd [15] to [character widths v]\nadd [19] to [character widths v]\nadd [16] to [character widths v]\nadd [22] to [character widths v]\nadd [22] to [character widths v]\nadd [30] to [character widths v]\nadd [20] to [character widths v]\nadd [23] to [character widths v]\nadd [20] to [character widths v]\nadd [25] to [character widths v]\nadd [25] to [character widths v]\n\ndefine Change Size By: (size)\nchange size by (size)\nchange x by ((size) / (7))\n\ndefine Find Size (text) (size)\nset [size v] to (size)\nset [width v] to [1]\nset [# v] to [1]\nrepeat (length of (text))\n    if <(letter (#) of (text)) > [ ]> then\n        switch costume to (letter (#) of (text))\n        change [width v] by ((Size) * ((item (costume [number v]) of [character widths v]) / (90)))\n        change [# v] by (1)\n    else\n        switch costume to ( v)\n        change [width v] by ((Size) * ((item (costume [number v]) of [character widths v]) / (90)))\n        change [# v] by (1)\n    end\nend\nif <(Width) > [400]> then\n    change [size v] by (-1)\nend\nif <(Width) < [390]> then\n    change [size v] by (1)\nend\nrepeat until <<<(Width) < [400]> and <(Width) > [389]>> or <(Size) > (SizeLimit)>>\n    set [width v] to [0]\n    set [# v] to [1]\n    repeat (length of (text))\n        if <(letter (#) of (text)) > [ ]> then\n            switch costume to (letter (#) of (text))\n            change [width v] by ((Size) * ((item (costume [number v]) of [character widths v]) / (90)))\n            change [# v] by (1)\n        else\n            switch costume to ( v)\n            change [width v] by ((Size) * ((item (costume [number v]) of [character widths v]) / (90)))\n            change [# v] by (1)\n        end\n    end\n    if <(Width) > [400]> then\n        change [size v] by (-1)\n    end\n    if <(Width) < [390]> then\n        change [size v] by (1)\n    end\n    if <(Size) > ((SizeLimit) + (1))> then\n        set [size v] to ((SizeLimit) - (10))\n    end\nend\nset [free outro #2: x v] to ((0) - ((Width) / (2)))\n\ndefine Type (text) (x) (y) (size) (color) (brightness) (speed)\nFind Size (text) (size)\nType: System (text) (Free Outro #2: X) (y) (Size) (color) (brightness) (speed)\n\nwhen I start as a clone\nif <(Clone ID) = [1-2]> then\n    show\n    switch costume to (for watching v)\n    set size to (100) %\n    go to x: (0) y: (-300)\n    Smooth Glide x: [0] y: [0] speed: [5] [0]\n    wait (1) seconds\n    Smooth Glide x: [0] y: [-160] speed: [5] [5]\n    delete this clone\nend\nif <(Clone ID) = [Letter]> then\n    wait ((#) / (Length)) seconds\n    show\n    go to [front v] layer\n    set [var 2 v] to (y position)\n    go to x: (x position) y: (-300)\n    set [var 1 v] to (x position)\n    set [var 3 v] to (costume [number v])\n    switch costume to (pfp v)\n    set size to (Size) %\n    switch costume to ((Var 3) + ())\n    Smooth Glide x: (x position) y: (Var 2) speed: [3] []\n    wait until <(Hide outro) = [1]>\n    delete this clone\nend\nif <(Clone ID) = [r]> then\n    hide\n    forever\n        set [clone id v] to (pick random (1001) to (1004))\n        create clone of (_myself_ v)\n        set [clone id v] to [r]\n        wait (0.01) seconds\n    end\nend\nif <(Clone ID) = [Particle]> then\n    set size to (100) %\n    switch costume to (particle v)\n    go to x: (0) y: (0)\n    set [brightness v] effect to (100)\n    go to [front v] layer\n    go [backward v] (2) layers\n    set [var 1 v] to (pick random (10) to (15))\n    set [var 2 v] to (pick random (2) to (7))\n    turn right (pick random (-10) to (10)) degrees\n    show\n    repeat until <(y position) < [-100]>\n        move (Var 1) steps\n        change y by (Var 2)\n        change [var 2 v] by (-0.4)\n        set [var 1 v] to ((Var 1) * (0.95))\n    end\n    repeat (10)\n        move (Var 1) steps\n        change y by (Var 2)\n        change [var 2 v] by (-0.4)\n        set [var 1 v] to ((Var 1) * (0.95))\n        change [ghost v] effect by (10)\n    end\n    hide\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Back]> then\n    show\n    switch costume to (back 2 v)\n    set size to (100) %\n    go to x: (0) y: (0)\n    go to [back v] layer\n    forever\n        repeat (12)\n            change x by (-4)\n            change y by (4)\n        end\n        go to x: (0) y: (0)\n    end\nend\nif <(Clone ID) = [Ghost]> then\n    show\n    switch costume to (ghost v)\n    set size to (100) %\n    go to x: (0) y: (0)\n    go to [back v] layer\n    set [ghost v] effect to (25)\n    go [forward v] (1) layers\nend\nif <(Clone ID) = [Logo]> then\n    wait (.5) seconds\n    show\n    switch costume to (logo v)\n    set size to (0) %\n    go to x: (0) y: (50)\n    go to [front v] layer\n    Bounce with (65) , (10) and (100)\n    wait until <(Hide outro) = [1]>\n    delete this clone\nend\nif <(Clone ID) = [Letter 1]> then\n    wait ((#) / (Length)) seconds\n    go to [front v] layer\n    show\n    set [var 2 v] to (y position)\n    go to x: ((x position) + ((Size) / (30))) y: (-300)\n    set [var 1 v] to (x position)\n    set [var 3 v] to (costume [number v])\n    switch costume to (pfp v)\n    set size to (Size) %\n    switch costume to ((Var 3) + ())\n    Smooth Glide x: (x position) y: ((Var 2) - ((Size) / (30))) speed: [3] []\n    wait until <(Hide outro) = [1]>\n    delete this clone\nend\nif < (Clone ID) contains [100]?> then\n    if <(Clone ID) = [1001]> then\n        switch costume to (item 1 v)\n    end\n    if <(Clone ID) = [1002]> then\n        switch costume to (item 2 v)\n    end\n    if <(Clone ID) = [1003]> then\n        switch costume to (item 3 v)\n    end\n    if <(Clone ID) = [1004]> then\n        switch costume to (item 4 v)\n    end\n    show\n    set size to (25) %\n    go to [back v] layer\n    go [forward v] (40) layers\n    go to x: (-300) y: (pick random (-175) to (175))\n    set [var 1 v] to [0]\n    repeat (10)\n        change x by (Var 1)\n        change [var 1 v] by (1)\n    end\n    repeat (32)\n        change x by (Var 1)\n    end\n    repeat (10)\n        change x by (Var 1)\n        change [var 1 v] by (-0.5)\n    end\n    repeat (10)\n        change x by (Var 1)\n        change [ghost v] effect by (10)\n    end\n    delete this clone\nend\n\ndefine Bounce with (bounciness) , (speed) and (finishing size)\nset [var 1 v] to [0]\nrepeat until <<(finishing size) = (size)> and <(Var 1) = (size)>>\n    set [var 2 v] to (((Var 2) * ((bounciness) / (100))) + (((finishing size) - (size)) * ((speed) / (20))))\n    set [var 1 v] to (size)\n    change size by (Var 2)\nend\nset size to (finishing size) %\n\nbroadcast (Outro  v)\n\nwhen I start as a clone\nforever\n    if <(Checkpoint) = [5]> then\n        delete this clone\n    end\nend\n\n