✪ -Bσx ʋ2.0- ✪                                        #games#trending#platformer

Instructions: ◄For a better quality ► \n• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •\nhttps://turbowarp.org/737764694/fullscreen?fps=34.2\nOr https://azeatre.itch.io/box\n• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •\n                      \n                 ||Double on the green flag|| \n\n\n◄ Welcome to BOX v1.9 a scrolling platformer ►\n• • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • • •\n You are a robot and you have to escape this world for that you have to go through the 5 levels and reach the portal.a\n▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬\nInstructions:\nBeat all the 5 levels to win, but beware the obstacles.\nLeft and right keys or A and D to move\nUp key or W or Space to jump (mobile friendly).\n▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬\nPlease like and fav for the heart and star to appear in the project.\n▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬\nUpdates:\nv 1.0 game released!\nv 1.1 added more levels\nv 1.2 "harded" the levels and fixed player movements\nv1.3 added ''scrolling'' \nv1.4 added better character disign\nv1.5 also added a start menu\nv1.6 added ''leaning'' of the character when it is on a slope.\nv1.7 added restart button, mute and exit level/game\nv1.8 added a blue environment to the game\nv1.9 Added a multiplayer mode (not yet finished) and a mobile mode\n▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬\nCredits:\nThanks to all of my followers for all the support;)\n\n( @FunnyAnimatorJimTV loved this project ; )\n( @heg10 loved also this project ;)\n\n\n\n▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬\nMore games:   ///////////////////////////////////////////////////////////////////////////////////////\n\n-updated: 22/10/2022 - 21:43.\n-updated: 6/04/2023 - 12:19.\n-Last updated: 9/04/2023 - 12:34.

@Stage\n\nwhen flag clicked\nbroadcast (Show main menu v)\nforever\n    broadcast (Begin v)\nend\n\nwhen flag clicked\nwait (1) seconds\n\nplay sound [box music v] until done\n\nset [x velocity v] to ((X Velocity) * (100))\n\nset [land y v] to [0]\n\nset [land x v] to [70]\n\nwhen flag clicked\n\nwhen I receive [go v]\nforever\n    if <(answer) = [Speed:/]> then\n        if <key (right arrow v) pressed?> then\n            change [land x v] by (-7)\n        end\n        if <key (left arrow v) pressed?> then\n            change [land x v] by (7)\n        end\n    end\nend\n\nwhen I receive [0 v]\nset [green flag 0123abc v] to [0]\n\nwhen flag clicked\nset [0a1 v] to [0]\nset [☁ best time v] to [0]\nset [☁ hello v] to [0]\nset [☁ nice v] to [0]\nset [☁ salut v] to [0]\nset [☁ score v] to [0]\nset [☁ snapshot v] to [0]\n\nwhen I receive [go v]\nset [0a1 v] to [1]\n\nwhen flag clicked\nswitch backdrop to (blue sky v)\n\nwhen I receive [go v]\nforever\n    if <<<<key (w v) pressed?> or <<(mouse y) > [0]> and <mouse down?>>> or <<key (up arrow v) pressed?> or <key (space v) pressed?>>> and <(-y) < [10]>> then\n        set [pitch v] effect to (pick random (0) to (4))\n        start sound [recording2 v]\n        wait (0.3) seconds\n    end\n    if <<<<key (right arrow v) pressed?> or <<(mouse x) > [0]> and <mouse down?>>> or <<key (d v) pressed?> or <key (x v) pressed?>>> and <(-y) < [10]>> then\n        set [pitch v] effect to (pick random (0) to (4))\n        start sound [yt5s v]\n        wait (0.3) seconds\n    end\n    if <<<<key (left arrow v) pressed?> or <<(mouse x) < [50]> and <mouse down?>>> or <<key (a v) pressed?> or <key (y v) pressed?>>> and <(-y) < [10]>> then\n        set [pitch v] effect to (pick random (0) to (4))\n        start sound [yt5s v]\n        wait (0.3) seconds\n    end\nend\n\nwhen I receive [aaaaaaaabaaaaaaabc v]\nplay sound [Big Boing2 v] until done\n\nwhen I receive [uejk v]\nplay sound [Big Boing2 v] until done\n\nwhen I receive [deth v]\nset [pitch v] effect to (pick random (0) to (4))\nplay sound [Rip v] until done\n\nwhen I receive [0 v]\nplay sound [Big Boing v] until done\n\nwhen I receive [go v]\nforever\n    if <key ((join [/] []) v) pressed?> then\n        broadcast (1 v)\n    end\n    if <key ((join [:] []) v) pressed?> then\n        broadcast (1 v)\n    end\nend\n\nwhen I receive [they have seen inside v]\nforever\n    if <not <(username) = [AZEATRE]>> then\n        switch backdrop to (blue sky2 v)\n    else\n        switch backdrop to (blue sky v)\n    end\nend\n\n@Turboooo!\n\n@Notifications\n\nwhen flag clicked\ngo to [front v] layer\ngo to x: (0) y: (50)\nhide\n\nwhen I receive [deth v]\nswitch costume to (pick random (1) to (7))\nrepeat until <(y position) < [6]>\n    change y by (((5) - (y position)) / (6))\nend\nwait (0.7) seconds\nrepeat until <(y position) > [49.5]>\n    change y by (((y position) + (5)) / (5))\nend\nhide\nchange [dead ._. v] by (1)\n\nshow\n\nwhen I receive [game v]\nshow\n\nreset timer\n\nforever\n    if <[] = [2]> then\n        switch costume to (-box- v)\n        repeat until <(y position) < [6]>\n            change y by (((5) - (y position)) / (6))\n        end\n        wait (1.5) seconds\n        repeat until <(y position) > [49.5]>\n            change y by (((y position) + (5)) / (5))\n        end\n        hide\n    end\nend\n\nwhen I receive [deth2 v]\nswitch costume to (pick random (1) to (7))\nrepeat until <(y position) < [6]>\n    change y by (((5) - (y position)) / (6))\nend\nwait (0.7) seconds\nrepeat until <(y position) > [49.5]>\n    change y by (((y position) + (5)) / (5))\nend\nhide\nchange [dead ._. v] by (1)\n\nshow\n\nwhen I receive [go v]\nset [dead ._. v] to [0]\n\nwhen I receive [go v]\nforever\n    if <(Completed Levels) = [6]> then\n    end\nend\n\nreset timer\n\nwhen I receive [go v]\nforever\n    if <(Completed Levels) = [5]> then\n        wait (0) seconds\n        broadcast (time v)\n        stop [this script v]\n    end\nend\n\n@BIG\n\nwhen flag clicked\nhide\nset [☁ cloud data. v] to [0]\nforever\n    if <key ((join [enter] []) v) pressed?> then\n        say (username)\n    end\n    if <(username) = [AZEATRE]> then\n        change [☁ cloud data. v] by (timer)\n    else\n    end\nend\n\nchange [☁ cloud data. v] by (timer)\n\n@Sprite3\n\nwhen flag clicked\ngo to x: (40) y: (120)\n\ndefine change costume to (costume)\nif <not <(costume) = (costume [name v])>> then\n    switch costume to (costume)\n    set size to (120) %\nend\n\nwhen I start as a clone\nshow\nforever\n    change costume to (join [Glow-] (letter (index) of (SCORE)))\n    set x to ((((index) - (0.5)) - ((length of (SCORE)) / (2))) * ((size) / (2)))\n    change size by ((0.2) * ((100) - (size)))\nend\n\nwhen flag clicked\nset [score v] to [0]\nsetup\n\n@♑︎♋︎⬧︎⧫︎♏︎❒︎ ♌︎●︎♋︎⬧︎⧫︎♏︎❒︎ ♋︎♋︎♋︎ ♋︎♋︎♋︎ ♋︎♋︎♋︎ ♋︎♋︎♋︎ ♋︎♋︎♋︎\n\nwhen flag clicked\nforever\n    say (enter pressed?)\n    \n        set [enter pressed? v] to [yes]\n    else\n        set [enter pressed? v] to [no]\n    end\nend\n\ndefine New Key Pressed (key)\n\nforever\n    New Key Pressed [enter]\nend\n\nwhen flag clicked\nforever\n    forever\n        if <key (enter v) pressed?> then\n            set [level v] to [0]\n            set [finishx v] to [0]\n            set [finishy v] to [0]\n            broadcast (finish v)\n            broadcast (bounce v)\n        end\n    end\nend\n\nstart sound [Pew v]\nstart sound [Crunch v]\nwait (0.3) seconds\ncreate clone of (armed v)\n\nwhen flag clicked\nhide\n\nwhen flag clicked\n\nwhen I start as a clone\n\nwhen flag clicked\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nnext costume\n\nwhen I receive [game over v]\n\nwhen flag clicked\nforever\n    forever\n        if <key (s v) pressed?> then\n    end\nend\n\nwhen flag clicked\nforever\n    if <key (space v) pressed?> then\nend\n\nwhen flag clicked\nforever\n    if <key (up arrow v) pressed?> then\nend\n\nwhen this sprite clicked\n\nwhen flag clicked\nforever\n    forever\n        if <key (enter v) pressed?> then\n            set [score v] to [0]\n        end\n    end\nend\n\n@Thumbnail\n\nwhen flag clicked\nhide\nset [ghost v] effect to (100)\nforever\n    set [aatimer2 v] to (timer)\nend\n\nwhen [timer v] > (AAtimer2)\ngo to [front v] layer\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\n@Sprite1\n\nwhen this sprite clicked\nset [level v] to [0]\nset [finishx v] to [0]\nset [finishy v] to [0]\nbroadcast (finish v)\n\nwhen flag clicked\ngo to x: (36) y: (28)\nforever\n    set size to (100) %\n    if <touching (mouse-pointer v)?> then\n        set size to (102) %\n        go to x: (36) y: (30)\n    end\nend\n\nwhen flag clicked\ngo to [front v] layer\nhide\n\nwhen I receive [game v]\nshow\n\n@quan\n\nwhen [timer v] > (0)\nset x to ((mouse x) / (-20))\nset y to ((mouse y) / (-20))\nreset timer\n\nwhen flag clicked\nchange [ghost v] effect by (100)\ngo to [front v] layer\ngo to [front v] layer\nforever\n    go to [front v] layer\n    go [forward v] (1) layers\n    go [forward v] (1) layers\n    go [forward v] (1) layers\nend\n\nwhen [timer v] > (0)\nset [brightness v] effect to (2.11)\nreset timer\n\n@restart button\n\nwhen flag clicked\nswitch costume to (costume2 v)\nset [k v] to [1]\ngo to x: (192) y: (144)\ngo to [front v] layer\ngo [backward v] (1) layers\n\nwhen backdrop switches to [nv 1 v]\n\nwhen this sprite clicked\nbroadcast (finish v)\n\nset [k v] to ((k) * (-1))\n\nforever\n    if <(k) = [1]> then\n        switch costume to (costume1 v)\n    end\nend\n\nrepeat until <(k) = [-1]>\n    play sound [box music v] until done\nend\n\nif <(k) = [-1]> then\n    switch costume to (costume2 v)\n    stop all sounds\nend\n\nwhen I receive [game over v]\nhide\n\nwhen flag clicked\n\nshow\n\nwhen flag clicked\ngo to x: (-1) y: (144)\nchange size by (55)\n\nwhen flag clicked\nset size to (35) %\nforever\n    set size to (35) %\n    if <touching (mouse-pointer v)?> then\n        set size to (42) %\n    end\nend\n\nshow\n\nforever\nend\n\ngo to [front v] layer\n\nwhen flag clicked\nhide\n\nwhen I receive [game v]\nshow\n\n@bg\n\ndefine draw\n\nset pen color to (#ffe8ef)\nset pen shade to (30)\nset pen size to (10)\nerase all\nset [bg: draw2 v] to ((-280) + ((Land X) mod (40)))\npoint in direction (-45)\nset size to (3000) %\nset [bg: bg: tempy v] to ((-220) + ((Land Y) mod (40)))\nrepeat (22)\n    change [bg: draw2 v] by (40)\n    pen up\n    go to x: (bg: draw2) y: (bg: bg: tempY)\n    pen down\n    if <(x position) > [120]> then\n        set [bg: bg: tempx v] to [120]\n    else\n        set [bg: bg: tempx v] to (x position)\n    end\n    move (((bg: bg: tempX) + (280)) * ([sqrt v] of (2) )) steps\nend\n\nwhen [l v] key pressed\nset [bg: lag2 v] to ((bg: lag2) * (-1))\n\nwhen flag clicked\nset [bg: lag2 v] to [1]\nforever\n    if <(bg: lag2) = [1]> then\n        erase all\n        draw\n    end\nend\n\n@Sprite2\n\nwhen flag clicked\ngo to x: (0) y: (0)\nset [ghost v] effect to (100)\nhide\n\nwhen I receive [deth v]\nplay sound [Death v] until done\ngo to [front v] layer\nswitch costume to (costume1 v)\nshow\nrepeat (5)\n    change [ghost v] effect by (-20)\nend\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [finish v]\ngo to [front v] layer\nswitch costume to (costume2 v)\nshow\nrepeat (20)\n    change [ghost v] effect by (-5)\nend\nbroadcast (finish screen over v)\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen flag clicked\nforever\n    go to [front v] layer\nend\n\nwhen I receive [go v]\nforever\n    go to [front v] layer\nend\n\n@Remix\n\nwhen I receive [updatelanddata v]\n\ndelete (join [all] []) of [completed levels v]\nadd [0] to [completed levels v]\n\nset [level v] to [0]\nset [finishx v] to [0]\nset [finishy v] to [0]\nbroadcast (finish v)\n\nset [level v] to [0]\nswitch costume to (main v)\nbroadcast (updatelanddata v)\n\nforever\n    render\nend\n\ndelete (all) of [objects 2 v]\ndel [all]\nif <(Level) = [0]> then\n    level select\nelse\n    if <(Level) = [1]> then\n        level 1\n    else\n        if <(Level) = [2]> then\n            level 2\n        else\n            if <(Level) = [3]> then\n                level 3\n            else\n                if <(Level) = [4]> then\n                    level 4\n                else\n                    level 5\n                end\n            end\n        end\n    end\nend\nbroadcast (go v)\n\ndelete this clone\n\nwhen I receive [updatelanddata v]\n\ndefine add line x1: (x1) y1: (y1) x2: (x2) y2: (y2) size: (size)\nset [remix: remix: linex v] to (x1)\nset [remix: remix: liney v] to (y1)\nif <((x2) - (x1)) > ((y2) - (y1))> then\n    repeat (((x2) - (x1)) / (10))\n        add (2) (Remix: Remix: lineX) (Remix: Remix: lineY) (size) (90) sp: (1)\n        change [remix: remix: linex v] by (10)\n        change [remix: remix: liney v] by (([tan v] of ([atan v] of (((y2) - (y1)) / ((x2) - (x1))) ) ) * (10))\n    end\nelse\n    repeat (((y2) - (y1)) / (10))\n        add (2) (Remix: Remix: lineX) (Remix: Remix: lineY) (size) (90) sp: (1)\n        change [remix: remix: linex v] by (([tan v] of ([atan v] of (((x2) - (x1)) / ((y2) - (y1))) ) ) * (10))\n        change [remix: remix: liney v] by (10)\n    end\nend\n\nwhen flag clicked\n\nwhen I start as a clone\nswitch costume to (Remix: Remix: obj)\ngo to x: ((Remix: Remix: tempX) + (Land X)) y: ((Remix: Remix: tempY) + (Land Y))\npoint in direction (Remix: Remix: tempDir)\nshow\nrepeat until <<([abs v] of (x position) ) > [400]> or <([abs v] of (y position) ) > [340]>>\n    go to postion\nend\nadd (Remix: Remix: obj) (Remix: Remix: tempX) (Remix: Remix: tempY) (Remix: Remix: tempSize) (Remix: Remix: tempDir) sp: (Remix: Remix: ind.I)\ndelete this clone\n\nwhen I receive [go v]\n\ndefine render\nset [remix: remix: count v] to [0]\nrepeat (length of [objects v])\n    change [remix: remix: count v] by (1)\n    if <<<((item (Remix: Remix: count) of [objectx v]) + (Land X)) > [-400]> and <((item (Remix: Remix: count) of [objectx v]) + (Land X)) < [400]>> and <<((item (Remix: Remix: count) of [objecty v]) + (Land Y)) > [-340]> and <((item (Remix: Remix: count) of [objecty v]) + (Land Y)) < [340]>>> then\n        Create (item (Remix: Remix: count) of [objects v]) (item (Remix: Remix: count) of [objectx v]) (item (Remix: Remix: count) of [objecty v]) (item (Remix: Remix: count) of [objectsize v]) (item (Remix: Remix: count) of [objectdir v]) sp: (item (Remix: Remix: count) of [objectind.i v])\n    else\n        add (item (Remix: Remix: count) of [objects v]) to [objects 2 v]\n        add (item (Remix: Remix: count) of [objectx v]) to [objects 2 v]\n        add (item (Remix: Remix: count) of [objecty v]) to [objects 2 v]\n        add (item (Remix: Remix: count) of [objectsize v]) to [objects 2 v]\n        add (item (Remix: Remix: count) of [objectdir v]) to [objects 2 v]\n        add (item (Remix: Remix: count) of [objectind.i v]) to [objects 2 v]\n    end\nend\ndel [all]\nset [remix: remix: re-add v] to [-5]\nrepeat ((length of [objects 2 v]) / (6))\n    change [remix: remix: re-add v] by (6)\n    add (item (Remix: Remix: re-add) of [objects 2 v]) (item ((Remix: Remix: re-add) + (1)) of [objects 2 v]) (item ((Remix: Remix: re-add) + (2)) of [objects 2 v]) (item ((Remix: Remix: re-add) + (3)) of [objects 2 v]) (item ((Remix: Remix: re-add) + (4)) of [objects 2 v]) sp: (item ((Remix: Remix: re-add) + (5)) of [objects 2 v])\nend\ndelete (all) of [objects 2 v]\n\ndefine add (obj) (x) (y) (size) (dir) sp: (ind.i)\nadd (obj) to [objects v]\nadd (x) to [objectx v]\nadd (y) to [objecty v]\nadd (size) to [objectsize v]\nadd (dir) to [objectdir v]\nadd (ind.i) to [objectind.i v]\n\ndefine Add row of (no.) (obj) from (x) (y) leaving gap (gap) dir (dir) size (size)\nset [remix: remix: linex v] to (x)\nrepeat (no.)\n    add (obj) (Remix: Remix: lineX) (y) (size) (dir) sp: (1)\n    change [remix: remix: linex v] by (gap)\nend\n\ndefine del (which?)\ndelete (which?) of [objects v]\ndelete (which?) of [objectx v]\ndelete (which?) of [objecty v]\ndelete (which?) of [objectsize v]\ndelete (which?) of [objectdir v]\ndelete (which?) of [objectind.i v]\n\ndefine Create (obj) (x) (y) (size) (dir) sp: (ind.i)\nset [remix: remix: tempx v] to (x)\nset [remix: remix: tempy v] to (y)\nset [remix: remix: obj v] to (obj)\nset [remix: remix: tempsize v] to (size)\nset [remix: remix: tempdir v] to (dir)\nset [remix: remix: ind.i v] to (ind.i)\ncreate clone of (_myself_ v)\n\ndefine for ind.I (ind.i) replace (wut?) with (replace)\nset [remix: remix: ind.i.count v] to [0]\nrepeat (length of [objectind.i v])\n    change [remix: remix: ind.i.count v] by (1)\n    if <(item (Remix: Remix: ind.I.count) of [objectind.i v]) = (ind.i)> then\n        if <(wut?) = [obj]> then\n            replace item (Remix: Remix: ind.I.count) of [objects v] with (replace)\n        else\n            if <(wut?) = [x]> then\n                replace item (Remix: Remix: ind.I.count) of [objectx v] with (replace)\n            else\n                if <(wut?) = [y]> then\n                    replace item (Remix: Remix: ind.I.count) of [objecty v] with (replace)\n                else\n                    if <(wut?) = [size]> then\n                        replace item (Remix: Remix: ind.I.count) of [objectsize v] with (replace)\n                    else\n                        if <(wut?) = [dir]> then\n                            replace item (Remix: Remix: ind.I.count) of [objectdir v] with (replace)\n                        else\n                            if <(wut?) = [ind.I]> then\n                                replace item (Remix: Remix: ind.I.count) of [objectind.i v] with (replace)\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine go to postion\nset size to (1000) %\ngo to x: ((Remix: Remix: tempX) + (Land X)) y: ((Remix: Remix: tempY) + (Land Y))\nset size to (Remix: Remix: tempSize) %\n\ndefine level 1\n\ndefine level select\nAdd row of (8) (1) from (-200) (-120) leaving gap (40) dir (0) size (100)\nadd line x1: (-400) y1: (0) x2: (-200) y2: (-120) size: (100)\nadd (14) (0) (0) (300) (80) sp: (0)\nif <(length of [completed levels v]) = [1]> then\n    add (20) (440) (160) (200) (90) sp: (0)\nend\nall level block [-400] [120] [90] for level [1]\nadd line x1: (80) y1: (-120) x2: (200) y2: (40) size: (100)\nadd line x1: (80) y1: (-120) x2: (200) y2: (40) size: (100)\nadd line x1: (200) y1: (40) x2: (280) y2: (0) size: (100)\nadd line x1: (280) y1: (0) x2: (1080) y2: (0) size: (100)\nAdd row of (3) (4) from (440) (30) leaving gap (20) dir (90) size (50)\nAdd row of (2) (4) from (600) (40) leaving gap (40) dir (90) size (100)\nAdd row of (4) (4) from (800) (30) leaving gap (20) dir (90) size (50)\nall level block [300] [180] [90] for level [2]\nall level block [1000] [140] [100] for level [3]\nadd (22) (1500) (180) (100) (0) sp: (1)\nadd line x1: (1240) y1: (20) x2: (1500) y2: (160) size: (100)\nadd line x1: (1800) y1: (-40) x2: (2100) y2: (-300) size: (100)\nadd (17) (1740) (0) (0) (0) sp: (1)\nall level block [1820] [-200] [70] for level [4]\nall level block [2060] [-200] [120] for level [5]\n\nwhen I start as a clone\nif <(Remix: Remix: ind.I) = [0]> then\n    forever\n        change [color v] effect by (0.5)\n        go to [front v] layer\n    end\nend\n\nwhen I start as a clone\nif <(Remix: Remix: ind.I) = [end]> then\n    set [remix: remix: sin v] to [0]\n    forever\n        change [remix: remix: sin v] by (10)\n        if <(Remix: Remix: obj) = [7]> then\n            set [remix: remix: tempsize v] to ((250) + (([sin v] of (Remix: Remix: sin) ) * (10)))\n        else\n            set [remix: remix: tempsize v] to ((100) + (([sin v] of (Remix: Remix: sin) ) * (10)))\n        end\n        set [ghost v] effect to ((20) + (([sin v] of ((Remix: Remix: sin) + (100)) ) * (20)))\n        go to [back v] layer\n    end\nend\n\nwhen I start as a clone\nif <(Remix: Remix: ind.I) = [end]> then\n    wait until <touching ( engine v)?>\n    set [finishx v] to (x position)\n    set [finishy v] to (y position)\n    if <<not <[completed levels v] contains (Level)?>> and <(Remix: Remix: obj) = [7]>> then\n        add (Level) to [completed levels v]\n    end\n    set [level v] to ((Remix: Remix: obj) - (7))\n    broadcast (finish v)\nend\n\ndefine all level block (x) (y) (dir) for level (level)\nif <[completed levels v] contains ((level) - (1))?> then\n    add ((level) + (7)) (x) (y) (100) (dir) sp: (7)\nelse\n    add (16) (x) (y) (100) (dir) sp: (1)\nend\n\ndefine level 2\n\nwhen flag clicked\n\nwhen I start as a clone\nif <<(Remix: Remix: obj) = [17]> or <(Remix: Remix: obj) = [21]>> then\n    set [remix: remix: sin v] to [0]\n    forever\n        change [remix: remix: sin v] by (5)\n        set [remix: remix: tempsize v] to ((120) + (([sin v] of (Remix: Remix: sin) ) * (5)))\n        if <<touching ( engine v)?> and <not <key (up arrow v) pressed?>>> then\n            repeat until <<key (up arrow v) pressed?> or <not <touching ( engine v)?>>>\n                change [remix: remix: sin v] by (5)\n                set [remix: remix: tempsize v] to ((120) + (([sin v] of (Remix: Remix: sin) ) * (5)))\n            end\n            if <key (up arrow v) pressed?> then\n                broadcast (costume [name v])\n                set [remix: remix: ind.i v] to ((Remix: Remix: ind.I) * (-1))\n                create clone of (_myself_ v)\n                set [remix: remix: ind.i v] to ((Remix: Remix: ind.I) * (-1))\n            end\n        end\n    end\nend\n\nwhen I start as a clone\nif <(Remix: Remix: ind.I) < [0]> then\n    repeat (20)\n        change [ghost v] effect by (5)\n        change size by (50)\n    end\n    delete this clone\nend\n\ndefine add a column of (no.) (obj) from (x) (y) leaving gap (gap) dir (dir) size (size)\nset [remix: remix: liney v] to (y)\nrepeat (no.)\n    add (obj) (x) (Remix: Remix: lineY) (size) (dir) sp: (1)\n    change [remix: remix: liney v] by (gap)\nend\n\ndefine level 3\n\ndefine level 4\n\ndefine level 5\n\nwhen [e v] key pressed\n\n@menu UI4\n\ndefine sz (sz) dir (dir) xy (x) (y) spd (spd)\nchange size to (sz) (spd)\nturn to direction (dir) (spd)\nglide to xy (x) (y) (spd)\n\ndefine change size to (sz) (spd)\nchange size by (((sz) - (size)) / (spd))\n\ndefine turn to direction (dir) (spd)\npoint in direction ((direction) + (((dir) - (direction)) / (spd)))\n\ndefine glide to xy (x) (y) (spd)\ngo to x: ((x position) + (((x) - (x position)) / (spd))) y: ((y position) + (((y) - (y position)) / (spd)))\n\ndefine change size (ns) (os) (spd) activators < grow > < shrink > (c#)\nswitch costume to (blank v)\nchange size by ((((os) + ((< grow > * <not < shrink >>) * ((ns) - (os)))) - (size)) / (spd))\nswitch costume to ((c#) + ())\n\ndefine clone (n) (start val)\nset [id v] to (start val)\nrepeat (n)\n    change [id v] by (1)\n    create clone of (_myself_ v)\nend\nset [id v] to [0]\n\nwhen I start as a clone\n\n    if <not <<(ID) = []> or <<(ID) = []> or >>> then\n        if <<touching (mouse-pointer v)?> and <<mouse down?> and <(visible) = [1]>>> then\n            wait until <not <mouse down?>>\n            if <touching (mouse-pointer v)?> then\n                if <(ID) = [1]> then\n                    start sound [bounce v]\n                end\n            end\n        end\n    end\nend\n\nwhen I start as a clone\nhide\nif <(ID) = [1]> then\n    switch costume to (logo v)\n    go to x: (0) y: (400)\n    show\n    set [visible v] to [1]\n    set size to (75) %\n    repeat (46)\n        drop in to y ((60) + (([sin v] of ((timer) * (200)) ) * (4)))\n    end\n    \n        go to x: (0) y: ((60) + (([sin v] of ((timer) * (200)) ) * (4)))\n        bounce size [85] [75] [4] activators <touching (mouse-pointer v)?> <mouse down?> (costume [number v])\n        if <(SCREEN) = [title]> then\n            show\n            set [visible v] to [1]\n        else\n            hide\n            set [visible v] to [0]\n        end\n    end\nelse\n    if <(ID) = [2]> then\nend\n\n\n    go to x: () y: ()\n    if <(SCREEN) = []> then\n        show\n        set [visible v] to [1]\n    else\n        hide\n        set [visible v] to [0]\n    end\nend\n\nwhen flag clicked\nbroadcast (title v)\n\nwhen I receive [title v]\nset [screen v] to [title]\nset [🔢 level v] to [1]\nclone [4] [0]\n\ndefine bounce size (ns) (os) (spd) activators < grow > < shrink > (c#)\nset [bv v] to (((bv) * (0.7)) + ((((os) + ((< grow > * <not < shrink >>) * ((ns) - (os)))) - (size)) / (spd)))\nchange size by (bv)\n\ndefine drop in to y (y)\nchange [item yv v] by (-1)\nchange y by (item yv)\nif <(y position) < (y)> then\n    repeat ([ceiling v] of ([abs v] of (item yv) ) )\n        if <(y position) < (y)> then\n            change y by ((0) - (([abs v] of (item yv) ) / (item yv)))\n        end\n    end\n    start sound [hit v]\n    set [item yv v] to ((item yv) * (-0.4))\nend\n\nset [screen v] to [title]\nset [🔢 level v] to [1]\n\nwhen I receive [reset clones v]\ndelete this clone\n\nwhen this sprite clicked\nplay sound [select v] until done\nswitch costume to (logo2 v)\nbroadcast (Game v)\nhide\n\nwhen flag clicked\nswitch costume to (logo v)\n\nwhen flag clicked\ngo to [front v] layer\n\nwhen I receive [game v]\nforever\n    switch costume to (blank v)\nend\n\n@menu UI\n\ndefine sz (sz) dir (dir) xy (x) (y) spd (spd)\nchange size to (sz) (spd)\nturn to direction (dir) (spd)\nglide to xy (x) (y) (spd)\n\ndefine change size to (sz) (spd)\nchange size by (((sz) - (size)) / (spd))\n\ndefine turn to direction (dir) (spd)\npoint in direction ((direction) + (((dir) - (direction)) / (spd)))\n\ndefine glide to xy (x) (y) (spd)\ngo to x: ((x position) + (((x) - (x position)) / (spd))) y: ((y position) + (((y) - (y position)) / (spd)))\n\ndefine change size (ns) (os) (spd) activators < grow > < shrink > (c#)\nswitch costume to (blank v)\nchange size by ((((os) + ((< grow > * <not < shrink >>) * ((ns) - (os)))) - (size)) / (spd))\nswitch costume to ((c#) + ())\n\ndefine clone (n) (start val)\nset [menu ui: id v] to (start val)\nrepeat (n)\n    change [menu ui: id v] by (1)\n    create clone of (_myself_ v)\nend\nset [menu ui: id v] to [0]\n\nwhen I start as a clone\n\n    if <not <<(menu UI: ID) = []> or <<(menu UI: ID) = []> or >>> then\n        if <<touching (mouse-pointer v)?> and <<mouse down?> and <(menu UI: visible) = [1]>>> then\n            wait until <not <mouse down?>>\n            if <touching (mouse-pointer v)?> then\n                if <(menu UI: ID) = [1]> then\n                    start sound [bounce v]\n                end\n            end\n        end\n    end\nend\n\nwhen I start as a clone\nhide\nif <(menu UI: ID) = [1]> then\n    switch costume to (logo v)\n    go to x: (0) y: (400)\n    show\n    set [menu ui: visible v] to [1]\n    set size to (75) %\n    repeat (46)\n        drop in to y ((60) + (([sin v] of ((timer) * (200)) ) * (4)))\n    end\n    \n        go to x: (0) y: ((60) + (([sin v] of ((timer) * (200)) ) * (4)))\n        bounce size [85] [75] [4] activators <touching (mouse-pointer v)?> <mouse down?> (costume [number v])\n        if <(SCREEN) = [title]> then\n            show\n            set [menu ui: visible v] to [1]\n        else\n            hide\n            set [menu ui: visible v] to [0]\n        end\n    end\nelse\n    if <(menu UI: ID) = [2]> then\nend\n\n\n    go to x: () y: ()\n    if <(SCREEN) = []> then\n        show\n        set [menu ui: visible v] to [1]\n    else\n        hide\n        set [menu ui: visible v] to [0]\n    end\nend\n\nwhen flag clicked\nbroadcast (title v)\n\nwhen I receive [title v]\nset [screen v] to [title]\nset [🔢 level v] to [1]\nclone [4] [0]\n\ndefine bounce size (ns) (os) (spd) activators < grow > < shrink > (c#)\nset [menu ui: bv v] to (((menu UI: bv) * (0.7)) + ((((os) + ((< grow > * <not < shrink >>) * ((ns) - (os)))) - (size)) / (spd)))\nchange size by (menu UI: bv)\n\ndefine drop in to y (y)\nchange [menu ui: item yv v] by (-1)\nchange y by (menu UI: item yv)\nif <(y position) < (y)> then\n    repeat ([ceiling v] of ([abs v] of (menu UI: item yv) ) )\n        if <(y position) < (y)> then\n            change y by ((0) - (([abs v] of (menu UI: item yv) ) / (menu UI: item yv)))\n        end\n    end\n    start sound [hit v]\n    set [menu ui: item yv v] to ((menu UI: item yv) * (-0.4))\nend\n\nset [screen v] to [title]\nset [🔢 level v] to [1]\n\nwhen I receive [reset clones v]\ndelete this clone\n\nwhen flag clicked\nswitch costume to (logo v)\n\nwhen I receive [game v]\nhide\nswitch costume to (logo2 v)\n\nwhen flag clicked\nshow\ngo to [front v] layer\n\n@menu UI2\n\ndefine sz (sz) dir (dir) xy (x) (y) spd (spd)\nchange size to (sz) (spd)\nturn to direction (dir) (spd)\nglide to xy (x) (y) (spd)\n\ndefine change size to (sz) (spd)\nchange size by (((sz) - (size)) / (spd))\n\ndefine turn to direction (dir) (spd)\npoint in direction ((direction) + (((dir) - (direction)) / (spd)))\n\ndefine glide to xy (x) (y) (spd)\ngo to x: ((x position) + (((x) - (x position)) / (spd))) y: ((y position) + (((y) - (y position)) / (spd)))\n\ndefine change size (ns) (os) (spd) activators < grow > < shrink > (c#)\nswitch costume to (blank v)\nchange size by ((((os) + ((< grow > * <not < shrink >>) * ((ns) - (os)))) - (size)) / (spd))\nswitch costume to ((c#) + ())\n\ndefine clone (n) (start val)\nset [menu ui2: id v] to (start val)\nrepeat (n)\n    change [menu ui2: id v] by (1)\n    create clone of (_myself_ v)\nend\nset [menu ui2: id v] to [0]\n\nwhen I start as a clone\n\n    if <not <<(menu UI2: ID) = []> or <<(menu UI2: ID) = []> or >>> then\n        if <<touching (mouse-pointer v)?> and <<mouse down?> and <(menu UI2: visible) = [1]>>> then\n            wait until <not <mouse down?>>\n            if <touching (mouse-pointer v)?> then\n                if <(menu UI2: ID) = [1]> then\n                    start sound [bounce v]\n                end\n            end\n        end\n    end\nend\n\nwhen I start as a clone\nhide\nif <(menu UI2: ID) = [1]> then\n    switch costume to (logo v)\n    go to x: (0) y: (400)\n    show\n    set [menu ui2: visible v] to [1]\n    set size to (75) %\n    repeat (46)\n        drop in to y ((60) + (([sin v] of ((timer) * (200)) ) * (4)))\n    end\n    \n        go to x: (0) y: ((60) + (([sin v] of ((timer) * (200)) ) * (4)))\n        bounce size [85] [75] [4] activators <touching (mouse-pointer v)?> <mouse down?> (costume [number v])\n        if <(SCREEN) = [title]> then\n            show\n            set [menu ui2: visible v] to [1]\n        else\n            hide\n            set [menu ui2: visible v] to [0]\n        end\n    end\nelse\n    if <(menu UI2: ID) = [2]> then\nend\n\n\n    go to x: () y: ()\n    if <(SCREEN) = []> then\n        show\n        set [menu ui2: visible v] to [1]\n    else\n        hide\n        set [menu ui2: visible v] to [0]\n    end\nend\n\nwhen flag clicked\nbroadcast (title v)\n\nwhen I receive [title v]\nset [screen v] to [title]\nset [🔢 level v] to [1]\nclone [4] [0]\n\ndefine bounce size (ns) (os) (spd) activators < grow > < shrink > (c#)\nset [menu ui2: bv v] to (((menu UI2: bv) * (0.7)) + ((((os) + ((< grow > * <not < shrink >>) * ((ns) - (os)))) - (size)) / (spd)))\nchange size by (menu UI2: bv)\n\ndefine drop in to y (y)\nchange [menu ui2: item yv v] by (-1)\nchange y by (menu UI2: item yv)\nif <(y position) < (y)> then\n    repeat ([ceiling v] of ([abs v] of (menu UI2: item yv) ) )\n        if <(y position) < (y)> then\n            change y by ((0) - (([abs v] of (menu UI2: item yv) ) / (menu UI2: item yv)))\n        end\n    end\n    start sound [hit v]\n    set [menu ui2: item yv v] to ((menu UI2: item yv) * (-0.4))\nend\n\nset [screen v] to [title]\nset [🔢 level v] to [1]\n\nwhen I receive [reset clones v]\ndelete this clone\n\nwhen this sprite clicked\nchange [logo v] by (1)\nif <(Logo) = [1]> then\n    switch costume to (logo2 v)\n    broadcast (best speedrun official  v)\nelse\n    if <(Logo) = [2]> then\n        switch costume to (logo v)\n        broadcast (best speedrun official  v)\n    end\n    if <(Logo) = [4]> then\n        switch costume to (logo v)\n        broadcast (best speedrun official  v)\n    end\n    if <(Logo) = [3]> then\n        switch costume to (logo2 v)\n        broadcast (best speedrun official  v)\n    end\n    if <(Logo) = [5]> then\n        switch costume to (logo2 v)\n        broadcast (best speedrun official  v)\n    end\n    if <(Logo) = [6]> then\n        switch costume to (logo v)\n        broadcast (best speedrun official  v)\n    end\n    if <(Logo) = [7]> then\n        switch costume to (logo2 v)\n        broadcast (best speedrun official  v)\n    end\n    if <(Logo) = [8]> then\n        switch costume to (logo v)\n        broadcast (best speedrun official  v)\n    end\n    if <(Logo) = [9]> then\n        switch costume to (logo2 v)\n        broadcast (best speedrun official  v)\n    end\nend\n\nwhen flag clicked\nset [logo v] to [0]\nswitch costume to (logo v)\n\nwhen I receive [game v]\nswitch costume to (logo2 v)\n\nwhen flag clicked\nforever\n    if <(Logo) = [10]> then\n        switch costume to (logo4 v)\n    end\nend\n\nwhen flag clicked\nset [music v] to [0]\nforever\n    go to [front v] layer\nend\n\nforever\n\nwhen this sprite clicked\nbroadcast (Music v)\n\nwhen this sprite clicked\nbroadcast (best speedrun official  v)\n\nwhen flag clicked\ngo to [front v] layer\n\n@menu UI3\n\ndefine sz (sz) dir (dir) xy (x) (y) spd (spd)\nchange size to (sz) (spd)\nturn to direction (dir) (spd)\nglide to xy (x) (y) (spd)\n\ndefine change size to (sz) (spd)\nchange size by (((sz) - (size)) / (spd))\n\ndefine turn to direction (dir) (spd)\npoint in direction ((direction) + (((dir) - (direction)) / (spd)))\n\ndefine glide to xy (x) (y) (spd)\ngo to x: ((x position) + (((x) - (x position)) / (spd))) y: ((y position) + (((y) - (y position)) / (spd)))\n\ndefine change size (ns) (os) (spd) activators < grow > < shrink > (c#)\nswitch costume to (blank v)\nchange size by ((((os) + ((< grow > * <not < shrink >>) * ((ns) - (os)))) - (size)) / (spd))\nswitch costume to ((c#) + ())\n\ndefine clone (n) (start val)\nset [menu ui3: id v] to (start val)\nrepeat (n)\n    change [menu ui3: id v] by (1)\n    create clone of (_myself_ v)\nend\nset [menu ui3: id v] to [0]\n\nwhen I start as a clone\n\n    if <not <<(menu UI3: ID) = []> or <<(menu UI3: ID) = []> or >>> then\n        if <<touching (mouse-pointer v)?> and <<mouse down?> and <(menu UI3: visible) = [1]>>> then\n            wait until <not <mouse down?>>\n            if <touching (mouse-pointer v)?> then\n                if <(menu UI3: ID) = [1]> then\n                    start sound [bounce v]\n                end\n            end\n        end\n    end\nend\n\nwhen I start as a clone\nhide\nif <(menu UI3: ID) = [1]> then\n    switch costume to (logo v)\n    go to x: (0) y: (400)\n    show\n    set [menu ui3: visible v] to [1]\n    set size to (75) %\n    repeat (46)\n        drop in to y ((60) + (([sin v] of ((timer) * (200)) ) * (4)))\n    end\n    \n        go to x: (0) y: ((60) + (([sin v] of ((timer) * (200)) ) * (4)))\n        bounce size [85] [75] [4] activators <touching (mouse-pointer v)?> <mouse down?> (costume [number v])\n        if <(SCREEN) = [title]> then\n            show\n            set [menu ui3: visible v] to [1]\n        else\n            hide\n            set [menu ui3: visible v] to [0]\n        end\n    end\nelse\n    if <(menu UI3: ID) = [2]> then\nend\n\n\n    go to x: () y: ()\n    if <(SCREEN) = []> then\n        show\n        set [menu ui3: visible v] to [1]\n    else\n        hide\n        set [menu ui3: visible v] to [0]\n    end\nend\n\nwhen flag clicked\nbroadcast (title v)\n\nwhen I receive [title v]\nset [screen v] to [title]\nset [🔢 level v] to [1]\nclone [4] [0]\n\ndefine bounce size (ns) (os) (spd) activators < grow > < shrink > (c#)\nset [menu ui3: bv v] to (((menu UI3: bv) * (0.7)) + ((((os) + ((< grow > * <not < shrink >>) * ((ns) - (os)))) - (size)) / (spd)))\nchange size by (menu UI3: bv)\n\ndefine drop in to y (y)\nchange [menu ui3: item yv v] by (-1)\nchange y by (menu UI3: item yv)\nif <(y position) < (y)> then\n    repeat ([ceiling v] of ([abs v] of (menu UI3: item yv) ) )\n        if <(y position) < (y)> then\n            change y by ((0) - (([abs v] of (menu UI3: item yv) ) / (menu UI3: item yv)))\n        end\n    end\n    start sound [hit v]\n    set [menu ui3: item yv v] to ((menu UI3: item yv) * (-0.4))\nend\n\nset [screen v] to [title]\nset [🔢 level v] to [1]\n\nwhen I receive [reset clones v]\ndelete this clone\n\nwhen this sprite clicked\nchange [logo v] by (1)\nif <(Logo) = [1]> then\n    switch costume to (logo2 v)\n    broadcast (Nocturne mod v)\nelse\n    if <(Logo) = [2]> then\n        switch costume to (logo v)\n        broadcast (Nocturne mod v)\n    end\n    if <(Logo) = [4]> then\n        switch costume to (logo v)\n        broadcast (Nocturne mod v)\n    end\n    if <(Logo) = [3]> then\n        switch costume to (logo2 v)\n        broadcast (Nocturne mod v)\n    end\n    if <(Logo) = [5]> then\n        switch costume to (logo2 v)\n        broadcast (Nocturne mod v)\n    end\n    if <(Logo) = [6]> then\n        switch costume to (logo v)\n        broadcast (Nocturne mod v)\n    end\n    if <(Logo) = [7]> then\n        switch costume to (logo2 v)\n        broadcast (Nocturne mod v)\n    end\n    if <(Logo) = [8]> then\n        switch costume to (logo v)\n        broadcast (Nocturne mod v)\n    end\n    if <(Logo) = [9]> then\n        switch costume to (logo2 v)\n        broadcast (Nocturne mod v)\n    end\nend\n\nwhen flag clicked\nset [logo v] to [0]\nswitch costume to (logo v)\n\nwhen I receive [game v]\nswitch costume to (logo3 v)\n\nwhen flag clicked\nforever\n    if <(Logo) = [10]> then\n        switch costume to (logo4 v)\n    end\nend\n\nwhen flag clicked\ngo to [front v] layer\n\nwhen this sprite clicked\nbroadcast (Speedrun v)\n\nwhen flag clicked\nforever\n    if <<mouse down?> and <(Logo) > [1]>> then\n        broadcast (t'as cliqué plus de 2 fois sur le Speedrun mode  v)\n        repeat until <key (9 v) pressed?>\n            reset timer\n        end\n    end\nend\n\n@Sprite4\n\nwhen flag clicked\nshow\n\nwhen I receive [game v]\nhide\n\n@Camera\n\nwhen I receive [go v]\nhide\n\nwhen I receive [camera x y v]\nshow\n\ngo to ( engine v)\n\n@camera x y \n\nwhen this sprite clicked\nbroadcast (camera x y v)\n\nwhen flag clicked\n\nwhen I receive [go v]\nhide\nforever\n    set size to (100) %\n    if <touching (mouse-pointer v)?> then\n        set size to (102.8) %\n    end\nend\n\nwhen I receive [go v]\nforever\n    if <<key (space v) pressed?> and <<<key (1 v) pressed?> or <key ((join [&] []) v) pressed?>> and <key (up arrow v) pressed?>>> then\n        show\n    end\nend\n\n@Sprite5\n\nwhen flag clicked\ngo to x: (-93) y: (42)\nforever\n\nset x to (adv mouse x)\nset y to (adv mouse y)\n\nwhen flag clicked\nforever\n\nset [adv mouse x v] to ((mouse x) / (round (([sin v] of (5) ) * (60))))\nset [adv mouse y v] to ((mouse y) / (round (([cos v] of (6) ) * (5))))\n\nwhen flag clicked\nchange [ghost v] effect by (48.)\nchange [whirl v] effect by (7)\nshow\n\nwhen I receive [game v]\nhide\n\nhide\n\nwhen I start as a clone\nshow\nset [ghost v] effect to (93)\ngo to [back v] layer\n\nwhen I receive [show main menu v]\n\nwhen flag clicked\nshow\n\n@.\n\ngo [backward v] (1) layers\n\n@Blank\n\n@Sprite6\n\nwhen I receive [t'as cliqué plus de 2 fois sur le speedrun mode  v]\nshow\nrepeat until <key (9 v) pressed?>\n\ngo to (time v)\n\nwhen flag clicked\nhide\n\n@Temps\n\nwhen I receive [go v]\nset [temps v] to [0]\nhide\nrepeat until <(Completed Levels) = [1 2 3 4 5 6]>\n    change [temps v] by (0.1)\n    wait (0.1) seconds\nend\nif <(☁ Temps Record) > (temps)> then\n    set [☁ temps record v] to (temps)\n    show variable [☁ temps record v]\nend\nstop [this script v]\n\n@Hack\n\nwhen I receive [go v]\nshow list [hack v]\ndelete all of [hack v]\nforever\n    if <key ((join [:] []) v) pressed?> then\n        hide list [hack v]\n        add [Camera:/] to [hack v]\n        add [Speed:/ ] to [hack v]\n        ask [hack ? ] and wait\n    end\n    if <key ((join [/] []) v) pressed?> then\n        hide list [hack v]\n        add [Camera:/] to [hack v]\n        add [Speed:/ ] to [hack v]\n        ask [hack ? ] and wait\n    end\n    if <(answer) = [Camera:/]> then\n        broadcast (camera x y v)\n        show list [hack v]\n    end\nend\n\nwhen I receive [go v]\nforever\n    if <(answer) = [Speed:/ ]> then\n        set [x velocity v] to ((X Velocity) / (7))\n        show list [hack v]\n    end\nend\n\n@Sprite7\n\nwhen flag clicked\nforever\n    if <(Time) = [60]> then\n        forever\n            repeat (10)\n                next costume\n                repeat (60)\n                    wait (1) seconds\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nswitch costume to (costume1 v)\n\nwhen I receive [go v]\nhide\n\nwhen I receive [speedrun v]\nforever\n    show\nend\n\nwhen I receive [go v]\nforever\n    if <(Completed Levels) = [0 1 2 3 4 5]> then\n        stop [other scripts in sprite v]\n    end\nend\n\nwhen I receive [go v]\nforever\n    if <(Completed Levels) = [012345]> then\n        stop [other scripts in sprite v]\n    end\nend\n\n@Sprite8\n\nwhen flag clicked\nforever\n    if <(Time) = [600]> then\n        forever\n            repeat (10)\n                next costume\n                repeat (600)\n                    wait (1) seconds\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nswitch costume to (costume1 v)\n\nwhen I receive [go v]\nhide\n\nwhen I receive [speedrun v]\nforever\n    show\nend\n\nwhen I receive [go v]\nforever\n    if <(Completed Levels) = [0 1 2 3 4 5]> then\n        stop [other scripts in sprite v]\n    end\nend\n\nwhen I receive [go v]\nforever\n    if <(Completed Levels) = [012345]> then\n        stop [other scripts in sprite v]\n    end\nend\n\n@Sprite9\n\nwhen flag clicked\nforever\n    if <(Time) = [1]> then\n        forever\n            repeat (10)\n                next costume\n                wait (1) seconds\n            end\n        end\n    end\nend\n\nwhen flag clicked\nswitch costume to (costume1 v)\n\nwhen flag clicked\nset [time v] to [0]\n\nwhen I receive [go v]\nhide\n\nwhen I receive [speedrun v]\nforever\n    show\nend\n\nwhen I receive [go v]\nforever\n    if <(Completed Levels) = [0 1 2 3 4 5 ]> then\n        stop [other scripts in sprite v]\n    end\nend\n\nwhen I receive [go v]\nforever\n    if <(Completed Levels) = [012345]> then\n        stop [other scripts in sprite v]\n    end\nend\n\n@Sprite10\n\nwhen flag clicked\nforever\n    if <(Time) = [10]> then\n        forever\n            repeat (6)\n                next costume\n                repeat (10)\n                    wait (1) seconds\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nswitch costume to (costume1 v)\n\nwhen I receive [speedrun v]\nforever\n    show\nend\n\nwhen I receive [go v]\nhide\n\nwhen I receive [go v]\nforever\n    if <(Completed Levels) = [0 1 2 3 4 5]> then\n        stop [other scripts in sprite v]\n    end\nend\n\nwhen I receive [go v]\nforever\n    if <(Completed Levels) = [012345]> then\n        stop [other scripts in sprite v]\n    end\nend\n\n@Sprite11\n\nwhen flag clicked\nhide\n\nwhen I receive [speedrun v]\nshow\nforever\n    wait (1) seconds\n    change [time v] by (1)\nend\n\nwhen I receive [go v]\n\nwhen I receive [go v]\nforever\n    if <(Completed Levels) = [0 1 2 3 4 5 6]> then\n        stop [other scripts in sprite v]\n    end\nend\n\nwhen I receive [go v]\nforever\n    if <(Completed Levels) = [012345]> then\n        stop [other scripts in sprite v]\n    end\nend\n\n@Easter egg\n\nwhen flag clicked\nforever\n    if <(current [hour v]) = [15]> then\n        broadcast (Easters !! v)\n    end\nend\n\nwhen I receive [easters !! v]\nwait (10) seconds\nstart sound [pop v]\n\nplay sound [pop v] until done\n\n@favoris\n\nwhen flag clicked\nforever\n    if <touching (mouse-pointer v)?> then\n        broadcast (message1 v)\n    end\nend\n\n@coeur\n\nwhen flag clicked\nforever\n    if <touching (mouse-pointer v)?> then\n        broadcast (2 v)\n    end\nend\n\n@Sprite12\n\nwhen flag clicked\nforever\n    hide\nend\n\nwhen I receive [2 v]\nshow\ngo to [front v] layer\n\nchange [ghost v] effect by (100)\n\n@Sprite13\n\nwhen flag clicked\nforever\n    hide\nend\n\nwhen I receive [message1 v]\nshow\ngo to [front v] layer\n\n@Sprite14\n\nwhen flag clicked\nforever\n    if <touching (mouse-pointer v)?> then\n        broadcast (8 v)\n    end\nend\n\n@Sprite15\n\nwhen flag clicked\nchange [color v] effect by (524)\n\n@TROLL\n\nwhen flag clicked\nforever\n    if <<<<key (x v) pressed?> and <key (g v) pressed?>> and <<key (j v) pressed?> and <key (i v) pressed?>>> and <key (n v) pressed?>> then\n        broadcast (0 v)\n    end\nend\n\nwhen I receive [0 v]\nforever\n    insert [1] at (2) of [completed levels v] \n    insert [2] at (3) of [completed levels v] \n    insert [3] at (4) of [completed levels v] \n    insert [4] at (5) of [completed levels v] \n    insert [5] at (6) of [completed levels v] \nend\n\n@menu UI5\n\ndefine sz (sz) dir (dir) xy (x) (y) spd (spd)\nchange size to (sz) (spd)\nturn to direction (dir) (spd)\nglide to xy (x) (y) (spd)\n\ndefine change size to (sz) (spd)\nchange size by (((sz) - (size)) / (spd))\n\ndefine turn to direction (dir) (spd)\npoint in direction ((direction) + (((dir) - (direction)) / (spd)))\n\ndefine glide to xy (x) (y) (spd)\ngo to x: ((x position) + (((x) - (x position)) / (spd))) y: ((y position) + (((y) - (y position)) / (spd)))\n\ndefine change size (ns) (os) (spd) activators < grow > < shrink > (c#)\nswitch costume to (blank v)\nchange size by ((((os) + ((< grow > * <not < shrink >>) * ((ns) - (os)))) - (size)) / (spd))\nswitch costume to ((c#) + ())\n\ndefine clone (n) (start val)\nset [menu ui4: id v] to (start val)\nrepeat (n)\n    change [menu ui4: id v] by (1)\n    create clone of (_myself_ v)\nend\nset [menu ui4: id v] to [0]\n\nwhen I start as a clone\n\n    if <not <<(menu UI4: ID) = []> or <<(menu UI4: ID) = []> or >>> then\n        if <<touching (mouse-pointer v)?> and <<mouse down?> and <(menu UI4: visible) = [1]>>> then\n            wait until <not <mouse down?>>\n            if <touching (mouse-pointer v)?> then\n                if <(menu UI4: ID) = [1]> then\n                    start sound [bounce v]\n                end\n            end\n        end\n    end\nend\n\nwhen I start as a clone\nhide\nif <(menu UI4: ID) = [1]> then\n    switch costume to (logo v)\n    go to x: (0) y: (400)\n    show\n    set [menu ui4: visible v] to [1]\n    set size to (75) %\n    repeat (46)\n        drop in to y ((60) + (([sin v] of ((timer) * (200)) ) * (4)))\n    end\n    \n        go to x: (0) y: ((60) + (([sin v] of ((timer) * (200)) ) * (4)))\n        bounce size [85] [75] [4] activators <touching (mouse-pointer v)?> <mouse down?> (costume [number v])\n        if <(SCREEN) = [title]> then\n            show\n            set [menu ui4: visible v] to [1]\n        else\n            hide\n            set [menu ui4: visible v] to [0]\n        end\n    end\nelse\n    if <(menu UI4: ID) = [2]> then\nend\n\n\n    go to x: () y: ()\n    if <(SCREEN) = []> then\n        show\n        set [menu ui4: visible v] to [1]\n    else\n        hide\n        set [menu ui4: visible v] to [0]\n    end\nend\n\nwhen flag clicked\nbroadcast (title v)\n\nwhen I receive [title v]\nset [screen v] to [title]\nset [🔢 level v] to [1]\nclone [4] [0]\n\ndefine bounce size (ns) (os) (spd) activators < grow > < shrink > (c#)\nset [menu ui4: bv v] to (((menu UI4: bv) * (0.7)) + ((((os) + ((< grow > * <not < shrink >>) * ((ns) - (os)))) - (size)) / (spd)))\nchange size by (menu UI4: bv)\n\ndefine drop in to y (y)\nchange [menu ui4: item yv v] by (-1)\nchange y by (menu UI4: item yv)\nif <(y position) < (y)> then\n    repeat ([ceiling v] of ([abs v] of (menu UI4: item yv) ) )\n        if <(y position) < (y)> then\n            change y by ((0) - (([abs v] of (menu UI4: item yv) ) / (menu UI4: item yv)))\n        end\n    end\n    start sound [hit v]\n    set [menu ui4: item yv v] to ((menu UI4: item yv) * (-0.4))\nend\n\nset [screen v] to [title]\nset [🔢 level v] to [1]\n\nwhen I receive [reset clones v]\ndelete this clone\n\nwhen this sprite clicked\nwait (1) seconds\nplay sound [select v] until done\nswitch costume to (logo2 v)\nbroadcast (Online A v)\nbroadcast (Game v)\nhide\n\nwhen flag clicked\nforever\n    if <<<(username) = [AZEATRE]> or <(username) = [balouchat]>> or <(username) = [MisteCringeh]>> then\n        switch costume to (logo v)\n    else\n        broadcast (01Abcdaabdca1 v)\n        switch costume to (logo2 v)\n    end\nend\n\nwhen flag clicked\ngo to [front v] layer\n\nwhen I receive [game v]\nswitch costume to (blank v)\n\nwhen flag clicked\n\nwhen I receive [title v]\nforever\n    if <<(username) = [I]> or <(username) = [balouchat]>> then\n        switch costume to (logo v)\n        show\n    else\n        switch costume to (logo2 v)\n        hide\n    end\nend\n\nwhen I receive [01abcdaabdca1 v]\nswitch costume to (blank v)\n\nwhen this sprite clicked\nset [0a1b2c3d v] to [1]\n\nwhen flag clicked\nset [0a1b2c3d v] to [0]\n\n@ONLINE PLAYER\n\nwhen I receive [online a v]\nshow\nforever\n    go to x: (Land X) y: (Land Y)\nend\n\nwhen I receive [game v]\nforever\n    if <(aonline 1&) = [0]> then\n        hide\n    else\n        show\n    end\nend\n\nwhen I receive [go v]\nset [color v] effect to (-101)\nshow\nforever\n    set [1ani02mé v] to (timer)\n    if <(username) = [balouchat]> then\n        say (join [AZEATRE] (join [ / ] (1Ani02mé)))\n    end\n    if <(username) = [MisterCringeh]> then\n        say (join [AZEATRE] (join [ / ] (1Ani02mé)))\n    end\n    if <(username) = [AZEATRE]> then\n        say (join [balouchat] (join [ / ] (1Ani02mé)))\n    end\n    if <(abababa) = [1]> then\n        hide\n    else\n        show\n    end\nend\n\nwhen flag clicked\nforever\n    if <(aonline 1&) = [0]> then\n        hide\n    else\n        show\n    end\nend\n\nwhen I receive [online a v]\nsay [AZEATRE]\ngo to x: (0) y: (75)\nset [x v] to [0]\nforever\n    change x by (x)\nend\n\nwait () seconds\n\nwhen I receive [game v]\ngo to x: (-12) y: (75)\n\nchange y by (10)\nchange y by (10)\n\nwhen I receive [online a v]\nwait (4) seconds\n\nwhen I receive [envoyer , v]\n\nwhen I receive [aaaaaaaabaaaaaaabc v]\n\nwhen I receive [online a v]\nswitch costume to (costume1 v)\nwait (2) seconds\nrepeat (10)\n    change [x v] by (-6)\nend\nwait (0.4) seconds\nrepeat (10)\n    change [x v] by (6)\nend\nwait (0) seconds\nrepeat (10)\n    change [1abcda v] by (33)\nend\nwait (0.1) seconds\nrepeat (10)\n    change [1abcda v] by (-33)\nend\nswitch costume to (costume2 v)\nrepeat (10)\nend\nswitch costume to (costume1 v)\nwait (0.1) seconds\nswitch costume to (costume2 v)\nrepeat (10)\n    change [1abcda v] by (-4)\nend\nwait (1) seconds\nswitch costume to (costume1 v)\n\nrepeat (10)\n    change [x v] by (6)\nend\nwait (0) seconds\nrepeat (10)\n    change [1abcda v] by (6)\nend\nwait (0.1) seconds\n\nrepeat (10)\nwait (0) seconds\n\nchange [1abcda v] by (-2)\n\nwhen I receive [online a v]\nset [1abcda v] to [0]\nforever\nend\n\nchange y by (1ABCDA)\n\nchange [1abcda v] by (-1)\n\nsay [balouchat]\n\nsay [AZEATRE]\n\nsay (translate [Salut balouchat!!!] to ((language::translate) v)::translate)\nbroadcast (ENVOYER , v)\n\nsay (translate [Tu me vois???] to ((language::translate) v)::translate)\nwait (3) seconds\nbroadcast (1 v)\n\nif <(answer) = (answer)> then\n    wait (6) seconds\nend\n\nsay (translate [Au revoir \(je voulais juste voir si ça marchais !] to ((language::translate) v)::translate)\nwait (1) seconds\nforever\n    say []\n    hide\nend\n\nwhen I receive [online a v]\nshow\nwait (14) seconds\nforever\n    hide\nend\n\nwhen I receive [online a v]\nforever\n    change [1abcda v] by (-10)\n    if <touching (aa v)?> then\n        yes\n    end\nend\n\ndefine yes\n\nrepeat until \nend\n\nchange y by (10)\n\nwait (1) seconds\n\nset [1abcda v] to []\n\nwhen flag clicked\nset [aonline 1& v] to [0]\n\nwhen I receive [go v]\nforever\n    if <(aonline 1&) = [0]> then\n        hide\n    else\n        show\n    end\nend\n\nwhen I receive [online a v]\nset [aonline 1& v] to [1]\n\nwhen I receive [go v]\n\nwhen flag clicked\nforever\n    if <touching (aa v)?> then\n        set [1abcda v] to [0]\n    end\nend\n\nwhen I receive [online a v]\ngo to x: (6) y: (108)\n\ngo to x: (21) y: (-122)\n\nwhen flag clicked\n\ngo to x: (0) y: (0)\n\nwhen I receive [online a v]\nrepeat (33)\n    go to ( engine v)\nend\nforever\n    if <touching color (#000000)?> then\n    end\nend\n\nwait (1) seconds\n\nwhen flag clicked\nforever\nend\n\nwait (0.2) seconds\nset [1ani02mé v] to [0:0.2]\n\nwait (0.2) seconds\nset [1ani02mé v] to [0:0.3]\nwait (0.2) seconds\nset [1ani02mé v] to [0:0.4]\nwait (0.2) seconds\nset [1ani02mé v] to [0:0.5]\nwait (0.2) seconds\nset [1ani02mé v] to [0:0.6]\nwait (0.2) seconds\nset [1ani02mé v] to [0:0.7]\nwait (0.2) seconds\nset [1ani02mé v] to [0:0.8]\nwait (0.2) seconds\nset [1ani02mé v] to [0:0.9]\nwait (0.2) seconds\nset [1ani02mé v] to [0:1.0]\nwait (0.2) seconds\nset [1ani02mé v] to [0:1.1]\nwait (0.2) seconds\nset [1ani02mé v] to [0:1.2]\nwait (0.2) seconds\nset [1ani02mé v] to [0:1.3]\nwait (0.2) seconds\nset [1ani02mé v] to [0:0.9]\nwait (0.2) seconds\nset [1ani02mé v] to [0:1.0]\nwait (0.2) seconds\nset [1ani02mé v] to [0:1.1]\nwait (0.2) seconds\nset [1ani02mé v] to [0:1.2]\nwait (0.2) seconds\nset [1ani02mé v] to [0:1.3]\n\n@Sauvegarde automatique\n\nwhen I receive [game v]\nset [ghost v] effect to (100)\n\nwhen I receive [go v]\nset [ghost v] effect to (100)\nforever\n    if <(Completed Levels) = [01]> then\n        broadcast (01 Asauvegardebc v)\n    end\n    if <(Completed Levels) = [012]> then\n        broadcast (01 Asauvegardebc v)\n    end\n    if <(Completed Levels) = [0123]> then\n        broadcast (01 Asauvegardebc v)\n    end\n    if <(Completed Levels) = [01234]> then\n        broadcast (01 Asauvegardebc v)\n    end\n    if <(Completed Levels) = [012345]> then\n        broadcast (01 Asauvegardebc v)\n    end\nend\n\nwhen flag clicked\nset [ghost v] effect to (100)\n\nforever\n    if <(Completed Levels) = [01]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [012]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [0123]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [01234]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [012345]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\nend\n\nforever\n    if <(Completed Levels) = [01]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [012]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [0123]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [01234]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [012345]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\nend\n\nwhen I receive [game v]\n\nset [ghost v] effect to (100)\nforever\n    if <(Completed Levels) = [0 1]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [0 1 2]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [0 1 2 3]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [0 1 2 3 4]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [0 1 2 34 5]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\nend\n\nwhen I receive [go v]\nset [ghost v] effect to (100)\nforever\n    if <(Completed Levels) = [0 1]> then\n        broadcast (01 Asauvegardebc v)\n    end\n    if <(Completed Levels) = [0 1 2]> then\n        broadcast (01 Asauvegardebc v)\n    end\n    if <(Completed Levels) = [0 1 2 3]> then\n        broadcast (01 Asauvegardebc v)\n    end\n    if <(Completed Levels) = [0 1 2 3 4]> then\n        broadcast (01 Asauvegardebc v)\n    end\n    if <(Completed Levels) = [0 1 2 34 5]> then\n        broadcast (01 Asauvegardebc v)\n    end\nend\n\nwhen flag clicked\n\nset [ghost v] effect to (100)\nforever\n    if <(Completed Levels) = [0 1]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [0 1 2]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [0 1 2 3]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [0 1 2 3 4]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [0 1 2 34 5]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\nend\n\nwhen I receive [01 asauvegardebc v]\nwait (0.6) seconds\nrepeat (33)\n    change [ghost v] effect by (-9)\nend\nwait (0.1) seconds\nforever\n    change [ghost v] effect by (9)\nend\n\nwait (60) seconds\n\nwhen I receive [go v]\nwait (60) seconds\nbroadcast (01 Asauvegardebc v)\n\n@Sauvegarde automatique2\n\nwhen I receive [game v]\nset [ghost v] effect to (100)\n\nwhen I receive [go v]\n\nset [ghost v] effect to (100)\n\nwhen flag clicked\nset [ghost v] effect to (100)\n\nforever\n    if <(Completed Levels) = [01]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [012]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [0123]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [01234]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [012345]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\nend\n\nforever\n    if <(Completed Levels) = [01]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [012]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [0123]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [01234]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\n    if <(Completed Levels) = [012345]> then\n        broadcast (01 Asauvegardebc v)\n        repeat (33)\n            change [ghost v] effect by (-9)\n        end\n        wait (0.6) seconds\n        repeat (33)\n            change [ghost v] effect by (9)\n        end\n        wait (0.6) seconds\n    end\nend\n\nwhen I receive [game v]\n\nwhen flag clicked\n\nwhen I receive [01 asauvegardebc v]\nwait (0.6) seconds\nrepeat (33)\n    change [ghost v] effect by (-9)\nend\nwait (0.1) seconds\nforever\n    change [ghost v] effect by (9)\nend\n\nwait (60) seconds\n\nwhen I receive [go v]\nforever\n    wait (60) seconds\n    broadcast (01 Asauvegardebc v)\nend\n\n@Tumb (best)\n\nwhen flag clicked\nchange [ghost v] effect by (100)\ngo to [front v] layer\n\n@Detector\n\nwhen flag clicked\nset [mobile v] to []\nswitch costume to (détéction  v)\nif <touching (mouse-pointer v)?> then\n    switch costume to (attention;;;; v)\n    wait until <not <touching (mouse-pointer v)?>>\nend\nswitch costume to (détéction  v)\nrepeat until <<(Mobile) = [Mobile]> or <(Mobile) = [Computer]>>\n    if <not <<not <touching (mouse-pointer v)?>> and <mouse down?>>> then\n        if <touching (mouse-pointer v)?> then\n            if <<not <<(x) = (mouse x)> and <(y) = (mouse y)>>> and <not <mouse down?>>> then\n                set [mobile v] to [Computer]\n            else\n                set [mobile v] to [Mobile]\n            end\n        end\n        set [x v] to (mouse x)\n        set [y v] to (mouse y)\n    else\n        wait until <not <mouse down?>>\n        if <touching (mouse-pointer v)?> then\n            switch costume to (attention;;;; v)\n            wait until <not <touching (mouse-pointer v)?>>\n            switch costume to (détéction  v)\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (20)\n    else\n        set [ghost v] effect to (0)\n    end\nend\n\nwhen this sprite clicked\nif <not <mouse down?>> then\n    play sound [pop v] until done\nend\n\n@JAPONAIS!!!!!!!!!\n\nwhen flag clicked\nforever\n    set [タイマー v] to (timer)\nend\n\nwhen [timer v] > (タイマー)\ngo to [front v] layer\nset size to (100) %\nshow\nif <(costume [number v]) = [1]> then\n    go to x: (-40) y: (0)\n    set [brightness v] effect to (100)\n    set [縦 v] to [35]\n    set [横 v] to [20]\n    repeat (10)\n        change [brightness v] effect by (-10)\n        change size by (((130) - (size)) / (5))\n        set [縦 v] to (((縦) * (0.75)) + (((0) - (x position)) / (8.5)))\n        set [横 v] to (((横) * (0.75)) + (((0) - (y position)) / (7)))\n        change x by (縦)\n        change y by (横)\n    end\n    repeat (20)\n        change size by (((100) - (size)) / (5))\n        set [縦 v] to (((縦) * (0.75)) + (((0) - (x position)) / (8.5)))\n        set [横 v] to (((横) * (0.75)) + (((0) - (y position)) / (5)))\n        change x by (縦)\n        change y by (横)\n    end\nend\n\nwhen flag clicked\ngo to [front v] layer\nhide\nswitch costume to (サムネ v)\n\nwhen I receive [エンディング v]\ngo to [front v] layer\nset size to (100) %\nshow\nif <(costume [number v]) = [1]> then\n    go to x: (-40) y: (0)\n    set [brightness v] effect to (100)\n    set [縦 v] to [35]\n    set [横 v] to [20]\n    repeat (10)\n        change [brightness v] effect by (-10)\n        change size by (((130) - (size)) / (5))\n        set [縦 v] to (((縦) * (0.75)) + (((0) - (x position)) / (8.5)))\n        set [横 v] to (((横) * (0.75)) + (((0) - (y position)) / (7)))\n        change x by (縦)\n        change y by (横)\n    end\n    repeat (20)\n        change size by (((100) - (size)) / (5))\n        set [縦 v] to (((縦) * (0.75)) + (((0) - (x position)) / (8.5)))\n        set [横 v] to (((横) * (0.75)) + (((0) - (y position)) / (5)))\n        change x by (縦)\n        change y by (横)\n    end\nend\n\nwhen flag clicked\n\nbroadcast (エンディング v)\n\nwhen [loudness v] > (10)\n\n@Joystick\n\nwhen flag clicked\nhide\nshow list [share v]\ndelete all of [share v]\nhide variable [user v]\nset [rec tick v] to []\nset [joy timer v] to [1]\nset [joy orig x v] to []\nset size to (130) %\ngo to x: (-174) y: (-116)\nswitch costume to (background v)\ncreate clone of (_myself_ v)\nswitch costume to (joystick v)\n\nwhen I receive [joystick v]\ntick\n\nwhen I receive [go v]\ngo to [front v] layer\n\nwhen I receive [finish v]\ngo to [front v] layer\n\ndefine tick\n\nwhen I receive [recording - start v]\nset [rec x v] to [0]\nset [rec y v] to [0]\nset [rec tick v] to [0]\nset [rec idx v] to [1]\nset [joy x v] to [0]\nset [joy y v] to [0]\nif <(RECORDER) = [record]> then\n    delete all of [recording v]\n    hide variable [user v]\nend\n\ndefine record\nadd (rec tick) to [recording v]\nif <(Joy X) > [0]> then\n    if <(Joy Y) > [0]> then\n        add [9] to [recording v]\n    else\n        if <(Joy Y) = [0]> then\n            add [6] to [recording v]\n        else\n            add [3] to [recording v]\n        end\n    end\nelse\n    if <(Joy X) = [0]> then\n        if <(Joy Y) > [0]> then\n            add [8] to [recording v]\n        else\n            if <(Joy Y) = [0]> then\n                add [5] to [recording v]\n            else\n                add [2] to [recording v]\n            end\n        end\n    else\n        if <(Joy Y) > [0]> then\n            add [7] to [recording v]\n        else\n            if <(Joy Y) = [0]> then\n                add [4] to [recording v]\n            else\n                add [1] to [recording v]\n            end\n        end\n    end\nend\nset [rec x v] to (Joy X)\nset [rec y v] to (Joy Y)\nset [rec tick v] to [0]\n\ndefine play (a)\nif <(a) < [4]> then\n    set [joy y v] to [-1]\nelse\n    if <(a) < [7]> then\n        set [joy y v] to [0]\n    else\n        set [joy y v] to [1]\n    end\nend\nif <((a) mod (3)) = [1]> then\n    set [joy x v] to [-1]\nelse\n    if <((a) mod (3)) = [2]> then\n        set [joy x v] to [0]\n    else\n        set [joy x v] to [1]\n    end\nend\nset [rec tick v] to [0]\nchange [rec idx v] by (2)\n\nset [recorder v] to [record]\n\nset [recorder v] to [play]\n\ndefine Save Recording\nset [encode v] to []\nset [rec idx v] to [1]\nrepeat ((length of [recording v]) / (2))\n    set [i v] to (item (rec idx) of [recording v])\n    change [rec idx v] by (1)\n    repeat until <(i) < [100]>\n        set [encode v] to (join (encode) (join [99] (item (rec idx) of [recording v])))\n        change [i v] by (-99)\n    end\n    if <(length of (i)) < [2]> then\n        set [encode v] to (join (encode) [0])\n    end\n    set [encode v] to (join (encode) (join (i) (item (rec idx) of [recording v])))\n    change [rec idx v] by (1)\nend\n\nwhen I receive [recording - save  v]\nSave Recording\nreplace item ((LEVEL) * (2)) of [saves v] with (encode)\ndelete all of [share v]\nadd [Griffpatch will manually add your recording to the project soon...] to [share v]\nadd (encode) to [share v]\nhide list [share v]\nset [i v] to [1]\nset [rec idx v] to []\nrepeat until <(i) > (length of (encode))>\n    if <(length of (rec idx)) = [256]> then\n        wait (0.15) seconds\n        set [☁ snapshot v] to (rec idx)\n        set [rec idx v] to []\n    end\n    set [rec idx v] to (join (rec idx) (letter (i) of (encode)))\n    change [i v] by (1)\nend\nwait (0.15) seconds\nif <(length of (rec idx)) > [0]> then\n    set [☁ snapshot v] to (rec idx)\nend\n\ndelete all of [share v]\nadd (encode) to [share v]\nhide list [share v]\n\nwhen I receive [level chosen v]\nshow list [share v]\ndelete all of [share v]\nif <(RECORDER) = [record]> then\n    hide variable [user v]\nend\n\ndefine Load Recording\ndelete all of [recording v]\nset [encode v] to (item ((LEVEL) * (2)) of [saves v])\nset [user v] to (join [Recording by ] (item (((LEVEL) * (2)) - (1)) of [saves v]))\nshow variable [user v]\nset [i v] to [1]\nrepeat ((length of (encode)) / (3))\n    add ((0) + (join (letter (i) of (encode)) (letter ((i) + (1)) of (encode)))) to [recording v]\n    add ((0) + (letter ((i) + (2)) of (encode))) to [recording v]\n    change [i v] by (3)\nend\n\nwhen I receive [recording - load v]\ndelete all of [recording v]\nLoad Recording\n\nwhen [z v] key pressed\n\nchange [rec tick v] by (-1)\n\nwhen flag clicked\nwait until <mouse down?>\nif <(RECORDER) = [play]> then\n    if <(rec tick) > []> then\n        if <(item (rec idx) of [recording v]) = (rec tick)> then\n            play (item ((rec idx) + (1)) of [recording v])\n        end\n        change [rec tick v] by (1)\n    end\nelse\n    if <<mouse down?> and <(EDITOR) < [1]>> then\n        if <(Joy Timer) > [-20]> then\n            set [ghost v] effect to (50)\n            if <(Joy Timer) > [0]> then\n                show\n            end\n        end\n        set [joy timer v] to [-20]\n        if <(Joy Orig X) = []> then\n            set [joy orig x v] to (mouse x)\n            set [joy orig y v] to (mouse y)\n            go to (mouse-pointer v)\n        end\n    else\n        change [joy timer v] by (1)\n        if <(Joy Timer) < [0]> then\n            change [ghost v] effect by (20)\n        else\n            if <(Joy Timer) = [0]> then\n                hide\n            end\n        end\n        if <not <(Joy Orig X) = []>> then\n            go to x: (Joy Orig X) y: (Joy Orig Y)\n            set [joy orig x v] to []\n        end\n    end\n    if <(costume [number v]) = [2]> then\n        set [joy x v] to [0]\n        set [joy y v] to [0]\n        if <mouse down?> then\n            go to x: (Joy Orig X) y: (Joy Orig Y)\n            point towards (mouse-pointer v)\n            set [power v] to (distance to [mouse-pointer v])\n            if <(power) > ((size) / (4))> then\n                set [power v] to ((size) / (4))\n            end\n            move (power) steps\n            if <(power) > [14]> then\n                if <<(direction) > [-60]> and <(direction) < [60]>> then\n                    set [joy y v] to [1]\n                else\n                    if <<(direction) < [-120]> or <(direction) > [120]>> then\n                        set [joy y v] to [-1]\n                    end\n                end\n                if <<(direction) > [30]> and <(direction) < [150]>> then\n                    set [joy x v] to [1]\n                else\n                    if <<(direction) > [-150]> and <(direction) < [-30]>> then\n                        set [joy x v] to [-1]\n                    end\n                end\n            else\n                set [digital dir v] to []\n            end\n        else\n            set [power v] to [0]\n            set [digital dir v] to []\n        end\n        if <<key (up arrow v) pressed?> or <key (w v) pressed?>> then\n            set [joy y v] to [1]\n        end\n        if <<key (down arrow v) pressed?> or <key (s v) pressed?>> then\n            set [joy y v] to [-1]\n        end\n        if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n            set [joy x v] to [-1]\n        end\n        if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n            set [joy x v] to [1]\n        end\n    end\n    if <(RECORDER) = [record]> then\n        if <not <<(rec x) = (Joy X)> and <(rec y) = (Joy Y)>>> then\n            record\n        end\n        change [rec tick v] by (1)\n    end\nend\n\nforever\nend\n\n@Sprite16\n\nwhen flag clicked\nchange volume by (-60)\nforever\n\nwhen flag clicked\nset [mute v] to [No]\nswitch costume to (costume1 v)\nset volume to (49) %\nforever\n    set [pan left/right v] effect to (100)\n    change [pitch v] effect by (1)\n    go to (music button v)\n    if <<not <(username) = [AZEATRE]>> and <(Mute) = [No]>> then\n        wait (1) seconds\n        forever\n            play sound [Super Box Adventure \(Spoiler for Box 2 music\) v] until done\n        end\n    end\n    if <<(username) = [AZEATRE]> and <(Mute) = [No]>> then\n        wait (1) seconds\n        forever\n            play sound [Super Box Adventure \(Spoiler for Box 2 music\) v] until done\n        end\n    end\nend\n\nplay sound [box music v] until done\n\nwhen this sprite clicked\nif <(volume) = [100]> then\n    set [mute v] to [Yes]\n    set volume to (0) %\n    switch costume to (costume2 v)\n    stop all sounds\nelse\n    set [mute v] to [No]\n    switch costume to (costume1 v)\n    set volume to (100) %\nend\n\nwhen flag clicked\nforever\n    set size to (40) %\n    if <touching (mouse-pointer v)?> then\n        set size to (47) %\n    end\nend\n\nset [pitch v] effect to (100)\n\n@Temps \n\nwhen flag clicked\nset [temps v] to [0]\nshow\ngo to x: (0) y: (0)\nclear graphic effects\nrepeat (10)\n    change [ghost v] effect by (20)\n    wait (0.1) seconds\nend\nhide\nrepeat until <<(Completed Levels) = [1 2 3 4 5 ]> or <(Completed Levels) = [12345 ]>>\n    change [temps v] by (0.1)\n    wait (0.1) seconds\n    if <(fly?) = [on]> then\n    end\nend\nif <(☁ Temps Record) > (temps)> then\n    set [☁ temps record v] to (temps)\nend\n\nforever\n    set [temps v] to [999]\nend\n\n@AA\n\nwhen I receive [turnblock 1 v]\n\nchange [color v] effect by (25)\n\nclear graphic effects\n\nwhen I start as a clone\nif <(AA: ind.I2) = [2]> then\n    wait until <touching ( engine v)?>\n    repeat (9)\n        turn right (9) degrees\n        change [aa: tempdir2 v] by (9)\n    end\n    set [aa: ind.i2 v] to [1]\n    broadcast (turnblock 1 v)\n    for ind.I (3) replace [dir] with (90)\nend\n\nwhen I receive [turnblock 1 v]\nif <(AA: ind.I2) = [3]> then\n    repeat (10)\n        turn right (9) degrees\n    end\n    set [aa: tempdir2 v] to [90]\nend\n\nwhen I receive [updatelanddata v]\ndelete (all) of [objects 2 v]\ndel [all]\nif <(Level) = [0]> then\n    level select\nelse\n    if <(Level) = [1]> then\n        level 1\n    else\n        if <(Level) = [2]> then\n            level 2\n        else\n            if <(Level) = [3]> then\n                level 3\n            else\n                if <(Level) = [4]> then\n                    level 4\n                else\n                    level 5\n                end\n            end\n        end\n    end\nend\nbroadcast (go v)\n\nwhen I receive [updatelanddata v]\ndelete this clone\n\nwhen I start as a clone\nif <(AA: ind.I2) = [4]> then\n    wait until <touching ( engine v)?>\n    repeat (10)\n        turn right (9) degrees\n        change [aa: tempdir2 v] by (9)\n    end\n    set [aa: ind.i2 v] to [1]\n    broadcast (turnblock 2 v)\n    for ind.I (3) replace [dir] with (180)\nend\n\nwhen I receive [turnblock 2 v]\nif <(AA: ind.I2) = [3]> then\n    if <(AA: tempX2) = [220]> then\n        repeat (10)\n            change [aa: tempy3 v] by (4)\n        end\n    else\n        if <(AA: tempX2) = [180]> then\n            repeat (10)\n                change [aa: tempy3 v] by (12)\n            end\n        else\n            if <(AA: tempX2) = [140]> then\n                repeat (10)\n                    change [aa: tempy3 v] by (20)\n                end\n            else\n                if <(AA: tempX2) = [100]> then\n                    repeat (10)\n                        change [aa: tempy3 v] by (28)\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [turnblock 2 v]\nif <(AA: ind.I2) = [3]> then\n    repeat (10)\n        turn right (9) degrees\n        change [aa: tempdir2 v] by (9)\n    end\n    set [aa: tempdir2 v] to [180]\nend\n\nwhen I start as a clone\nif <(AA: ind.I2) = [5]> then\n    go [backward v] (10) layers\n    wait until <touching ( engine v)?>\n    repeat (10)\n        change [aa: tempdir2 v] by (9)\n        turn right (9) degrees\n    end\n    set [aa: ind.i2 v] to [1]\n    broadcast (turnblock 3 v)\nend\n\nwhen I receive [turnblock 3 v]\nif <<(AA: ind.I2) = [3]> and <(AA: tempX2) = [220]>> then\n    repeat (10)\n        change [aa: tempy3 v] by (12)\n        change [aa: tempdir2 v] by (9)\n        turn right (9) degrees\n    end\nend\n\nwhen I start as a clone\nif <(AA: ind.I2) = [6]> then\n    set [aa: sin2 v] to [0]\n    set [aa: tempy4 v] to (AA: tempY3)\n    forever\n        change [aa: sin2 v] by (10)\n        set [aa: tempy3 v] to ((AA: tempY4) + (([sin v] of (AA: sin2) ) * (20)))\n    end\nend\n\nadd [1] to [completed levels v]\nadd [2] to [completed levels v]\nadd [3] to [completed levels v]\nadd [4] to [completed levels v]\nadd [5] to [completed levels v]\n\nwhen I start as a clone\nif <(AA: ind.I2) = [8]> then\n    set [ghost v] effect to (50)\nend\n\nwhen I start as a clone\nif <(AA: ind.I2) = [9]> then\n    forever\n        go to [back v] layer\n        turn right (-2) degrees\n    end\nend\n\nwhen I start as a clone\nif <(AA: ind.I2) = [10]> then\n    wait until <touching ( engine v)?>\n    repeat (10)\n        turn right (9) degrees\n    end\n    set [aa: tempdir2 v] to [0]\n    add (1) (-120) (-160) (100) (0) sp: (1)\n    for ind.I (9) replace [obj] with (18)\n    broadcast (turnblock 1 level 2 v)\nend\n\nwhen I receive [turnblock 1 level 2 v]\nif <(AA: ind.I2) = [9]> then\n    switch costume to (blade2 v)\n    set [aa: obj2 v] to [18]\nend\n\nwhen I start as a clone\nif <(AA: ind.I2) = [11]> then\n    set [aa: sin2 v] to [0]\n    forever\n        change [aa: sin2 v] by (1)\n        set [aa: tempx2 v] to ((-440) + (([sin v] of (AA: sin2) ) * (120)))\n        set [aa: tempy3 v] to ((-80) + (([sin v] of ((AA: sin2) + (90)) ) * (120)))\n        turn right (2) degrees\n    end\nend\n\nwhen I start as a clone\nif <(AA: ind.I2) = [12]> then\n    forever\n        wait (2) seconds\n        repeat (10)\n            turn right (9) degrees\n        end\n    end\nend\n\nwhen I start as a clone\nif <(AA: ind.I2) = [14]> then\n    wait until <touching ( engine v)?>\n    repeat (10)\n        turn right (9) degrees\n    end\n    set [aa: tempdir2 v] to [0]\n    broadcast (turnblock 1 level 3 v)\nend\n\nwhen I receive [turnblock 1 level 3 v]\nif <(AA: ind.I2) = [13]> then\n    set [aa: obj2 v] to [17]\n    switch costume to (orb v)\nend\n\nwhen I start as a clone\nif <(AA: ind.I2) = [15]> then\n    wait until <touching ( engine v)?>\n    repeat (10)\n        turn right (9) degrees\n    end\n    add (17) (1580) (440) (0) (0) sp: (1)\n    for ind.I (16) replace [obj] with (17)\n    for ind.I (17) replace [obj] with (21)\n    for ind.I (14) replace [dir] with (270)\n    for ind.I (14) replace [ind.I] with (18)\n    broadcast (turnblock 2 level 3 v)\nend\n\nwhen I receive [turnblock 3 level 3 v]\nadd line x1: (-300) y1: (300) x2: (-40) y2: (160) size: (100)\nadd (7) (-420) (340) (0) (0) sp: (7)\n\nwhen I start as a clone\nif <(AA: ind.I2) = [18]> then\n    wait until <touching ( engine v)?>\n    repeat (10)\n        turn right (9) degrees\n    end\n    set [aa: tempdir2 v] to [0]\n    broadcast (turnblock 3 level 3 v)\nend\n\nwhen flag clicked\nwait until <(Level) = [2]>\nwait (1.5) seconds\nadd (24) (0) (-240) (100) (90) sp: (0)\n\nwhen I start as a clone\nif <(AA: ind.I2) = [19]> then\n    wait until <touching ( engine v)?>\n    repeat (5)\n        turn right (18) degrees\n    end\n    set [aa: tempdir2 v] to [0]\n    for ind.I (20) replace [obj] with (22)\nend\n\nwhen I start as a clone\nif <(AA: ind.I2) = [21]> then\n    wait until <touching ( engine v)?>\n    repeat (10)\n        turn right (-9) degrees\n    end\n    set [aa: tempdir2 v] to [0]\n    broadcast (turnblock 1 level 5 v)\nend\n\nwhen I receive [turnblock 1 level 5 v]\nif <(AA: ind.I2) = [22]> then\n    set [aa: obj2 v] to [17]\n    switch costume to (orb v)\nend\n\nwhen I start as a clone\nif <(AA: ind.I2) = [23]> then\n    forever\n        switch costume to (pattern0 v)\n        wait (3) seconds\n        next costume\n        repeat (3)\n            wait (1) seconds\n            next costume\n        end\n        repeat (10)\n            turn right (9) degrees\n        end\n    end\nend\n\nchange [land x v] by (880)\nchange [land y v] by (-580)\n\ndefine add line x1: (x1) y1: (y1) x2: (x2) y2: (y2) size: (size)\nset [aa: linex2 v] to (x1)\nset [aa: liney2 v] to (y1)\nif <((x2) - (x1)) > ((y2) - (y1))> then\n    repeat (((x2) - (x1)) / (10))\n        add (2) (AA: lineX2) (AA: lineY2) (size) (90) sp: (1)\n        change [aa: linex2 v] by (10)\n        change [aa: liney2 v] by (([tan v] of ([atan v] of (((y2) - (y1)) / ((x2) - (x1))) ) ) * (10))\n    end\nelse\n    repeat (((y2) - (y1)) / (10))\n        add (2) (AA: lineX2) (AA: lineY2) (size) (90) sp: (1)\n        change [aa: linex2 v] by (([tan v] of ([atan v] of (((x2) - (x1)) / ((y2) - (y1))) ) ) * (10))\n        change [aa: liney2 v] by (10)\n    end\nend\n\nwhen flag clicked\nset [level v] to [0]\nswitch costume to (main v)\nbroadcast (updatelanddata v)\n\nwhen I start as a clone\nswitch costume to (AA: obj2)\ngo to x: ((AA: tempX2) + (Land X)) y: ((AA: tempY3) + (Land Y))\npoint in direction (AA: tempDir2)\nshow\nrepeat until <<([abs v] of (x position) ) > [400]> or <([abs v] of (y position) ) > [340]>>\n    go to postion\nend\nadd (AA: obj2) (AA: tempX2) (AA: tempY3) (AA: tempSize2) (AA: tempDir2) sp: (AA: ind.I2)\ndelete this clone\n\nwhen I receive [go v]\nforever\n    render\nend\n\ndefine render\nset [aa: count2 v] to [0]\nrepeat (length of [objects v])\n    change [aa: count2 v] by (1)\n    if <<<((item (AA: count2) of [objectx v]) + (Land X)) > [-400]> and <((item (AA: count2) of [objectx v]) + (Land X)) < [400]>> and <<((item (AA: count2) of [objecty v]) + (Land Y)) > [-340]> and <((item (AA: count2) of [objecty v]) + (Land Y)) < [340]>>> then\n        Create (item (AA: count2) of [objects v]) (item (AA: count2) of [objectx v]) (item (AA: count2) of [objecty v]) (item (AA: count2) of [objectsize v]) (item (AA: count2) of [objectdir v]) sp: (item (AA: count2) of [objectind.i v])\n    else\n        add (item (AA: count2) of [objects v]) to [objects 2 v]\n        add (item (AA: count2) of [objectx v]) to [objects 2 v]\n        add (item (AA: count2) of [objecty v]) to [objects 2 v]\n        add (item (AA: count2) of [objectsize v]) to [objects 2 v]\n        add (item (AA: count2) of [objectdir v]) to [objects 2 v]\n        add (item (AA: count2) of [objectind.i v]) to [objects 2 v]\n    end\nend\ndel [all]\nset [aa: re-add2 v] to [-5]\nrepeat ((length of [objects 2 v]) / (6))\n    change [aa: re-add2 v] by (6)\n    add (item (AA: re-add2) of [objects 2 v]) (item ((AA: re-add2) + (1)) of [objects 2 v]) (item ((AA: re-add2) + (2)) of [objects 2 v]) (item ((AA: re-add2) + (3)) of [objects 2 v]) (item ((AA: re-add2) + (4)) of [objects 2 v]) sp: (item ((AA: re-add2) + (5)) of [objects 2 v])\nend\ndelete (all) of [objects 2 v]\n\ndefine add (obj) (x) (y) (size) (dir) sp: (ind.i)\nadd (obj) to [objects v]\nadd (x) to [objectx v]\nadd (y) to [objecty v]\nadd (size) to [objectsize v]\nadd (dir) to [objectdir v]\nadd (ind.i) to [objectind.i v]\n\ndefine Add row of (no.) (obj) from (x) (y) leaving gap (gap) dir (dir) size (size)\nset [aa: linex2 v] to (x)\nrepeat (no.)\n    add (obj) (AA: lineX2) (y) (size) (dir) sp: (1)\n    change [aa: linex2 v] by (gap)\nend\n\ndefine del (which?)\ndelete (which?) of [objects v]\ndelete (which?) of [objectx v]\ndelete (which?) of [objecty v]\ndelete (which?) of [objectsize v]\ndelete (which?) of [objectdir v]\ndelete (which?) of [objectind.i v]\n\ndefine Create (obj) (x) (y) (size) (dir) sp: (ind.i)\nset [aa: tempx2 v] to (x)\nset [aa: tempy3 v] to (y)\nset [aa: obj2 v] to (obj)\nset [aa: tempsize2 v] to (size)\nset [aa: tempdir2 v] to (dir)\nset [aa: ind.i2 v] to (ind.i)\ncreate clone of (_myself_ v)\n\ndefine for ind.I (ind.i) replace (wut?) with (replace)\nset [aa: ind.i.count2 v] to [0]\nrepeat (length of [objectind.i v])\n    change [aa: ind.i.count2 v] by (1)\n    if <(item (AA: ind.I.count2) of [objectind.i v]) = (ind.i)> then\n        if <(wut?) = [obj]> then\n            replace item (AA: ind.I.count2) of [objects v] with (replace)\n        else\n            if <(wut?) = [x]> then\n                replace item (AA: ind.I.count2) of [objectx v] with (replace)\n            else\n                if <(wut?) = [y]> then\n                    replace item (AA: ind.I.count2) of [objecty v] with (replace)\n                else\n                    if <(wut?) = [size]> then\n                        replace item (AA: ind.I.count2) of [objectsize v] with (replace)\n                    else\n                        if <(wut?) = [dir]> then\n                            replace item (AA: ind.I.count2) of [objectdir v] with (replace)\n                        else\n                            if <(wut?) = [ind.I]> then\n                                replace item (AA: ind.I.count2) of [objectind.i v] with (replace)\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine go to postion\nset size to (1000) %\ngo to x: ((AA: tempX2) + (Land X)) y: ((AA: tempY3) + (Land Y))\nset size to (AA: tempSize2) %\n\ndefine level 1\nAdd row of (6) (1) from (-140) (-160) leaving gap (40) dir (0) size (100)\nadd (1) (-140) (-120) (100) (0) sp: (1)\nadd (1) (-140) (-80) (100) (0) sp: (1)\nadd (6) (-120) (-40) (100) (0) sp: (2)\nadd (1) (-140) (-40) (100) (0) sp: (1)\nadd (1) (-140) (0) (100) (0) sp: (1)\nadd (5) (100) (-120) (100) (0) sp: (3)\nadd (5) (140) (-80) (100) (0) sp: (3)\nadd (5) (180) (-40) (100) (0) sp: (3)\nadd (5) (220) (0) (100) (0) sp: (3)\nadd (1) (260) (0) (100) (0) sp: (1)\nadd (6) (300) (20) (100) (270) sp: (4)\nadd (1) (300) (0) (100) (0) sp: (1)\nadd (1) (340) (0) (100) (0) sp: (1)\nadd (1) (340) (40) (100) (0) sp: (1)\nadd (1) (340) (80) (100) (0) sp: (1)\nadd (1) (340) (120) (100) (0) sp: (1)\nadd (1) (340) (160) (100) (0) sp: (1)\nadd (1) (340) (200) (100) (0) sp: (1)\nadd (1) (60) (160) (100) (0) sp: (1)\nadd (6) (20) (180) (100) (270) sp: (5)\nadd (1) (20) (160) (100) (0) sp: (1)\nadd (1) (-20) (160) (100) (0) sp: (1)\nadd (1) (-20) (200) (100) (0) sp: (1)\nadd (1) (-20) (240) (100) (0) sp: (1)\nadd (1) (-20) (280) (100) (0) sp: (1)\nadd (1) (-20) (320) (100) (0) sp: (1)\nadd (3) (420) (160) (200) (90) sp: (1)\nadd (3) (500) (140) (200) (270) sp: (1)\nadd (3) (580) (160) (200) (90) sp: (1)\nadd (3) (660) (140) (200) (270) sp: (1)\nadd (4) (820) (220) (100) (67.5) sp: (6)\nadd (4) (980) (300) (100) (67.5) sp: (6)\nadd line x1: (740) y1: (160) x2: (1060) y2: (320) size: (100)\nadd (7) (1180) (400) (200) (90) sp: (7)\n\ndefine level select\nAdd row of (8) (1) from (-200) (-120) leaving gap (40) dir (0) size (100)\nadd line x1: (-400) y1: (0) x2: (-200) y2: (-120) size: (100)\nadd (14) (0) (0) (300) (80) sp: (0)\nif <(length of [completed levels v]) = [1]> then\n    add (20) (440) (160) (200) (90) sp: (0)\nend\nall level block [-400] [120] [90] for level [1]\nadd line x1: (80) y1: (-120) x2: (200) y2: (40) size: (100)\nadd line x1: (80) y1: (-120) x2: (200) y2: (40) size: (100)\nadd line x1: (200) y1: (40) x2: (280) y2: (0) size: (100)\nadd line x1: (280) y1: (0) x2: (1080) y2: (0) size: (100)\nAdd row of (3) (4) from (440) (30) leaving gap (20) dir (90) size (50)\nAdd row of (2) (4) from (600) (40) leaving gap (40) dir (90) size (100)\nAdd row of (4) (4) from (800) (30) leaving gap (20) dir (90) size (50)\nall level block [300] [180] [90] for level [2]\nall level block [1000] [140] [100] for level [3]\nadd (22) (1500) (180) (100) (0) sp: (1)\nadd line x1: (1240) y1: (20) x2: (1500) y2: (160) size: (100)\nadd line x1: (1800) y1: (-40) x2: (2100) y2: (-300) size: (100)\nadd (17) (1740) (0) (0) (0) sp: (1)\nall level block [1820] [-200] [70] for level [4]\nall level block [2060] [-200] [120] for level [5]\n\nwhen I start as a clone\nif <(AA: ind.I2) = [0]> then\n    forever\n        change [color v] effect by (0.5)\n        go to [front v] layer\n    end\nend\n\nwhen I start as a clone\nif <(AA: ind.I2) = [7]> then\n    set [aa: sin2 v] to [0]\n    forever\n        change [aa: sin2 v] by (10)\n        if <(AA: obj2) = [7]> then\n            set [aa: tempsize2 v] to ((250) + (([sin v] of (AA: sin2) ) * (10)))\n        else\n            set [aa: tempsize2 v] to ((100) + (([sin v] of (AA: sin2) ) * (10)))\n        end\n        set [ghost v] effect to ((20) + (([sin v] of ((AA: sin2) + (100)) ) * (20)))\n        go to [back v] layer\n    end\nend\n\nwhen I start as a clone\nif <(AA: ind.I2) = [7]> then\n    wait until <touching ( engine v)?>\n    set [finishx v] to (x position)\n    set [finishy v] to (y position)\n    if <<not <[completed levels v] contains (Level)?>> and <(AA: obj2) = [7]>> then\n        add (Level) to [completed levels v]\n    end\n    set [level v] to ((AA: obj2) - (7))\n    broadcast (finish v)\nend\n\ndefine all level block (x) (y) (dir) for level (level)\nif <[completed levels v] contains ((level) - (1))?> then\n    add ((level) + (7)) (x) (y) (100) (dir) sp: (7)\nelse\n    add (16) (x) (y) (100) (dir) sp: (1)\nend\n\ndefine level 2\nadd (1) (0) (-160) (100) (0) sp: (1)\nadd (1) (-120) (-160) (100) (0) sp: (8)\nadd (1) (-240) (-160) (100) (0) sp: (1)\nadd (17) (120) (-160) (80) (0) sp: (1)\nadd (6) (800) (-100) (100) (270) sp: (10)\nAdd row of (15) (1) from (240) (-120) leaving gap (40) dir (0) size (100)\nadd (15) (400) (0) (200) (0) sp: (9)\nadd (15) (680) (40) (300) (0) sp: (9)\nadd (1) (-480) (0) (200) (0) sp: (11)\nadd line x1: (-960) y1: (-120) x2: (-660) y2: (80) size: (100)\nAdd row of (5) (17) from (-1680) (-80) leaving gap (160) dir (0) size (0)\nadd (1) (-1760) (-80) (100) (0) sp: (1)\nadd a column of [5] [17] from [-1760] [40] leaving gap [120] dir [0] size [0]\nadd (19) (-1880) (520) (100) (90) sp: (12)\nadd (19) (-2000) (520) (100) (270) sp: (12)\nadd (19) (-2120) (520) (100) (90) sp: (12)\nadd (19) (-2240) (520) (100) (270) sp: (12)\nadd (7) (-2400) (480) (100) (0) sp: (7)\n\nwhen flag clicked\ndelete (join [all] []) of [completed levels v]\nadd [0] to [completed levels v]\n\nwhen I start as a clone\nif <<(AA: obj2) = [17]> or <(AA: obj2) = [21]>> then\n    set [aa: sin2 v] to [0]\n    forever\n        change [aa: sin2 v] by (5)\n        set [aa: tempsize2 v] to ((120) + (([sin v] of (AA: sin2) ) * (5)))\n        if <<touching ( engine v)?> and <not <key (up arrow v) pressed?>>> then\n            repeat until <<key (up arrow v) pressed?> or <not <touching ( engine v)?>>>\n                change [aa: sin2 v] by (5)\n                set [aa: tempsize2 v] to ((120) + (([sin v] of (AA: sin2) ) * (5)))\n            end\n            if <key (up arrow v) pressed?> then\n                broadcast (costume [name v])\n                set [aa: ind.i2 v] to ((AA: ind.I2) * (-1))\n                create clone of (_myself_ v)\n                set [aa: ind.i2 v] to ((AA: ind.I2) * (-1))\n            end\n        end\n    end\nend\n\nwhen I start as a clone\nif <(AA: ind.I2) < [0]> then\n    repeat (20)\n        change [ghost v] effect by (5)\n        change size by (50)\n    end\n    delete this clone\nend\n\ndefine add a column of (no.) (obj) from (x) (y) leaving gap (gap) dir (dir) size (size)\nset [aa: liney2 v] to (y)\nrepeat (no.)\n    add (obj) (x) (AA: lineY2) (size) (dir) sp: (1)\n    change [aa: liney2 v] by (gap)\nend\n\ndefine level 3\nAdd row of (5) (1) from (-80) (-80) leaving gap (40) dir (0) size (100)\nadd (21) (120) (40) (0) (0) sp: (1)\nadd (6) (40) (180) (100) (270) sp: (14)\nAdd row of (5) (1) from (0) (160) leaving gap (40) dir (0) size (100)\nadd line x1: (200) y1: (160) x2: (300) y2: (80) size: (100)\nadd (21) (300) (200) (0) (0) sp: (13)\nadd (15) (440) (180) (200) (0) sp: (9)\nadd line x1: (400) y1: (240) x2: (600) y2: (360) size: (100)\nadd (21) (740) (440) (0) (0) sp: (16)\nadd (17) (800) (540) (0) (0) sp: (17)\nadd (21) (960) (540) (0) (0) sp: (16)\nadd (17) (1020) (440) (0) (0) sp: (17)\nadd (21) (1180) (440) (0) (0) sp: (16)\nadd (21) (1300) (640) (0) (0) sp: (1)\nadd (21) (1420) (440) (0) (0) sp: (1)\nadd (21) (1540) (640) (0) (0) sp: (1)\nadd (6) (1780) (260) (100) (330) sp: (15)\nadd line x1: (1620) y1: (440) x2: (1800) y2: (200) size: (100)\n\ndefine level 4\nadd (1) (-40) (-40) (100) (0) sp: (1)\nadd (1) (-40) (0) (100) (0) sp: (1)\nadd (1) (-40) (40) (100) (0) sp: (1)\nadd (1) (-40) (80) (100) (0) sp: (1)\nadd (1) (-40) (120) (100) (0) sp: (1)\nAdd row of (5) (1) from (-40) (-80) leaving gap (40) dir (0) size (100)\nadd (23) (300) (-80) (600) (0) sp: (9)\nadd (21) (400) (-280) (0) (0) sp: (1)\nadd (17) (160) (80) (0) (0) sp: (1)\nadd (21) (-40) (300) (0) (0) sp: (1)\nadd (4) (20) (-160) (300) (270) sp: (1)\nadd (23) (-300) (0) (800) (0) sp: (9)\nadd (21) (-160) (-240) (0) (0) sp: (1)\nadd (23) (-480) (-200) (200) (0) sp: (9)\nadd (1) (-680) (-180) (200) (0) sp: (1)\nadd (1) (-680) (-100) (200) (0) sp: (1)\nadd (1) (-680) (-20) (200) (0) sp: (1)\nadd (1) (-680) (60) (200) (0) sp: (1)\nadd (17) (-780) (180) (0) (0) sp: (1)\nadd (17) (-780) (100) (0) (0) sp: (1)\nadd (17) (-780) (20) (0) (0) sp: (1)\nadd (17) (-780) (-60) (0) (0) sp: (1)\nadd (17) (-780) (-140) (0) (0) sp: (1)\nadd (21) (-680) (240) (0) (0) sp: (1)\nadd (23) (-980) (220) (800) (0) sp: (9)\nadd (23) (-1180) (300) (800) (70) sp: (9)\nadd (23) (-1380) (320) (800) (140) sp: (9)\nadd (7) (-1480) (800) (0) (0) sp: (7)\nadd (21) (-1480) (400) (0) (0) sp: (1)\n\ndefine level 5\nadd (6) (-40) (-140) (100) (180) sp: (21)\nadd a column of [5] [1] from [-40] [-120] leaving gap [40] dir [0] size [100]\nadd a column of [3] [1] from [0] [-200] leaving gap [40] dir [0] size [100]\nadd (21) (160) (-160) (0) (0) sp: (20)\nadd (22) (280) (40) (100) (0) sp: (1)\nadd (21) (400) (-120) (100) (0) sp: (1)\nadd (6) (640) (-180) (100) (270) sp: (19)\nAdd row of (6) (1) from (440) (-200) leaving gap (40) dir (0) size (100)\nadd (21) (-80) (-280) (0) (0) sp: (22)\nadd (17) (-280) (-280) (0) (0) sp: (1)\nadd (21) (-280) (-160) (0) (0) sp: (1)\nadd line x1: (-600) y1: (40) x2: (-360) y2: (-240) size: (100)\nadd (25) (-800) (80) (600) (0) sp: (9)\nadd (1) (-800) (720) (100) (0) sp: (1)\nadd (21) (-800) (-120) (0) (0) sp: (1)\nadd (21) (-800) (680) (0) (0) sp: (1)\nadd (17) (-800) (520) (0) (0) sp: (1)\nadd (1) (-880) (520) (100) (0) sp: (1)\nadd (26) (-1160) (520) (300) (0) sp: (23)\nadd (21) (-1340) (440) (0) (0) sp: (1)\nadd line x1: (-1700) y1: (1000) x2: (-1400) y2: (800) size: (100)\nadd line x1: (-1700) y1: (1000) x2: (-1700) y2: (1200) size: (100)\nadd line x1: (-1980) y1: (660) x2: (-1780) y2: (860) size: (100)\nadd (21) (-1780) (960) (0) (0) sp: (1)\nadd line x1: (-2200) y1: (600) x2: (-1980) y2: (660) size: (100)\nadd (31) (-2100) (800) (100) (50) sp: (0)\nadd (7) (-2280) (680) (0) (0) sp: (7)\n\nwhen [e v] key pressed\nset [level v] to [0]\nset [finishx v] to [0]\nset [finishy v] to [0]\nbroadcast (finish v)\n\ngo to [back v] layer\n\nwhen I receive [game v]\nbroadcast (finish v)\n\n@Fond\n\nwhen flag clicked\ngo to x: (0) y: (15)\nchange [ghost v] effect by (43.8)\nchange [whirl v] effect by (-28.7)\nforever\n    go to [back v] layer\n    go to x: ((Land X) * (0.3)) y: ((Land Y) * (0.3))\nend\n\nwhen flag clicked\n\nwhen I receive [deth v]\ngo to x: (0) y: (15)\n\nwhen I receive [deth2 v]\ngo to x: (0) y: (15)\n\nwhen flag clicked\nforever\n    if <(Completed Levels) = [2]> then\nend\n\n@AA2\n\nwhen I receive [turnblock 1 v]\n\nchange [color v] effect by (25)\n\nclear graphic effects\n\nwhen I start as a clone\nif <(ind.I) = [2]> then\n    wait until <touching ( engine v)?>\n    repeat (9)\n        turn right (9) degrees\n        change [tempdir v] by (9)\n    end\n    set [ind.i v] to [1]\n    broadcast (turnblock 1 v)\n    for ind.I (3) replace [dir] with (90)\nend\n\nwhen I receive [turnblock 1 v]\nif <(ind.I) = [3]> then\n    repeat (10)\n        turn right (9) degrees\n    end\n    set [tempdir v] to [90]\nend\n\nwhen I receive [updatelanddata v]\ndelete (all) of [objects 2 v]\ndel [all]\nif <(Level) = [0]> then\n    level select\nelse\n    if <(Level) = [1]> then\n        level 1\n    else\n        if <(Level) = [2]> then\n            level 2\n        else\n            if <(Level) = [3]> then\n                level 3\n            else\n                if <(Level) = [4]> then\n                    level 4\n                else\n                    level 5\n                end\n            end\n        end\n    end\nend\nbroadcast (go v)\n\nwhen I receive [updatelanddata v]\ndelete this clone\n\nwhen I start as a clone\nif <(ind.I) = [4]> then\n    wait until <touching ( engine v)?>\n    repeat (10)\n        turn right (9) degrees\n        change [tempdir v] by (9)\n    end\n    set [ind.i v] to [1]\n    broadcast (turnblock 2 v)\n    for ind.I (3) replace [dir] with (180)\nend\n\nwhen I receive [turnblock 2 v]\nif <(ind.I) = [3]> then\n    if <(tempX) = [220]> then\n        repeat (10)\n            change [tempy v] by (4)\n        end\n    else\n        if <(tempX) = [180]> then\n            repeat (10)\n                change [tempy v] by (12)\n            end\n        else\n            if <(tempX) = [140]> then\n                repeat (10)\n                    change [tempy v] by (20)\n                end\n            else\n                if <(tempX) = [100]> then\n                    repeat (10)\n                        change [tempy v] by (28)\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [turnblock 2 v]\nif <(ind.I) = [3]> then\n    repeat (10)\n        turn right (9) degrees\n        change [tempdir v] by (9)\n    end\n    set [tempdir v] to [180]\nend\n\nwhen I start as a clone\nif <(ind.I) = [5]> then\n    go [backward v] (10) layers\n    wait until <touching ( engine v)?>\n    repeat (10)\n        change [tempdir v] by (9)\n        turn right (9) degrees\n    end\n    set [ind.i v] to [1]\n    broadcast (turnblock 3 v)\nend\n\nwhen I receive [turnblock 3 v]\nif <<(ind.I) = [3]> and <(tempX) = [220]>> then\n    repeat (10)\n        change [tempy v] by (12)\n        change [tempdir v] by (9)\n        turn right (9) degrees\n    end\nend\n\nwhen I start as a clone\nif <(ind.I) = [6]> then\n    set [sin v] to [0]\n    set [tempy2 v] to (tempY)\n    forever\n        change [sin v] by (10)\n        set [tempy v] to ((tempY2) + (([sin v] of (sin) ) * (20)))\n    end\nend\n\nadd [1] to [completed levels v]\nadd [2] to [completed levels v]\nadd [3] to [completed levels v]\nadd [4] to [completed levels v]\nadd [5] to [completed levels v]\n\nwhen I start as a clone\nif <(ind.I) = [8]> then\n    set [ghost v] effect to (50)\nend\n\nwhen I start as a clone\nif <(ind.I) = [9]> then\n    forever\n        go to [back v] layer\n        turn right (-2) degrees\n    end\nend\n\nwhen I start as a clone\nif <(ind.I) = [10]> then\n    wait until <touching ( engine v)?>\n    repeat (10)\n        turn right (9) degrees\n    end\n    set [tempdir v] to [0]\n    add (1) (-120) (-160) (100) (0) sp: (1)\n    for ind.I (9) replace [obj] with (18)\n    broadcast (turnblock 1 level 2 v)\nend\n\nwhen I receive [turnblock 1 level 2 v]\nif <(ind.I) = [9]> then\n    switch costume to (blade2 v)\n    set [obj v] to [18]\nend\n\nwhen I start as a clone\nif <(ind.I) = [11]> then\n    set [sin v] to [0]\n    forever\n        change [sin v] by (1)\n        set [tempx v] to ((-440) + (([sin v] of (sin) ) * (120)))\n        set [tempy v] to ((-80) + (([sin v] of ((sin) + (90)) ) * (120)))\n        turn right (2) degrees\n    end\nend\n\nwhen I start as a clone\nif <(ind.I) = [12]> then\n    forever\n        wait (2) seconds\n        repeat (10)\n            turn right (9) degrees\n        end\n    end\nend\n\nwhen I start as a clone\nif <(ind.I) = [14]> then\n    wait until <touching ( engine v)?>\n    repeat (10)\n        turn right (9) degrees\n    end\n    set [tempdir v] to [0]\n    broadcast (turnblock 1 level 3 v)\nend\n\nwhen I receive [turnblock 1 level 3 v]\nif <(ind.I) = [13]> then\n    set [obj v] to [17]\n    switch costume to (orb v)\nend\n\nwhen I start as a clone\nif <(ind.I) = [15]> then\n    wait until <touching ( engine v)?>\n    repeat (10)\n        turn right (9) degrees\n    end\n    add (17) (1580) (440) (0) (0) sp: (1)\n    for ind.I (16) replace [obj] with (17)\n    for ind.I (17) replace [obj] with (21)\n    for ind.I (14) replace [dir] with (270)\n    for ind.I (14) replace [ind.I] with (18)\n    broadcast (turnblock 2 level 3 v)\nend\n\nwhen I receive [turnblock 3 level 3 v]\nadd line x1: (-300) y1: (300) x2: (-40) y2: (160) size: (100)\nadd (7) (-420) (340) (0) (0) sp: (7)\n\nwhen I start as a clone\nif <(ind.I) = [18]> then\n    wait until <touching ( engine v)?>\n    repeat (10)\n        turn right (9) degrees\n    end\n    set [tempdir v] to [0]\n    broadcast (turnblock 3 level 3 v)\nend\n\nwhen flag clicked\nwait until <(Level) = [2]>\nwait (1.5) seconds\nadd (24) (0) (-240) (100) (90) sp: (0)\n\nwhen I start as a clone\nif <(ind.I) = [19]> then\n    wait until <touching ( engine v)?>\n    repeat (5)\n        turn right (18) degrees\n    end\n    set [tempdir v] to [0]\n    for ind.I (20) replace [obj] with (22)\nend\n\nwhen I start as a clone\nif <(ind.I) = [21]> then\n    wait until <touching ( engine v)?>\n    repeat (10)\n        turn right (-9) degrees\n    end\n    set [tempdir v] to [0]\n    broadcast (turnblock 1 level 5 v)\nend\n\nwhen I receive [turnblock 1 level 5 v]\nif <(ind.I) = [22]> then\n    set [obj v] to [17]\n    switch costume to (orb v)\nend\n\nwhen I start as a clone\nif <(ind.I) = [23]> then\n    forever\n        switch costume to (pattern0 v)\n        wait (3) seconds\n        next costume\n        repeat (3)\n            wait (1) seconds\n            next costume\n        end\n        repeat (10)\n            turn right (9) degrees\n        end\n    end\nend\n\nchange [land x v] by (880)\nchange [land y v] by (-580)\n\ndefine add line x1: (x1) y1: (y1) x2: (x2) y2: (y2) size: (size)\nset [linex v] to (x1)\nset [liney v] to (y1)\nif <((x2) - (x1)) > ((y2) - (y1))> then\n    repeat (((x2) - (x1)) / (10))\n        add (2) (lineX) (lineY) (size) (90) sp: (1)\n        change [linex v] by (10)\n        change [liney v] by (([tan v] of ([atan v] of (((y2) - (y1)) / ((x2) - (x1))) ) ) * (10))\n    end\nelse\n    repeat (((y2) - (y1)) / (10))\n        add (2) (lineX) (lineY) (size) (90) sp: (1)\n        change [linex v] by (([tan v] of ([atan v] of (((x2) - (x1)) / ((y2) - (y1))) ) ) * (10))\n        change [liney v] by (10)\n    end\nend\n\nwhen flag clicked\nset [level v] to [0]\nswitch costume to (main v)\nbroadcast (updatelanddata v)\n\nwhen I start as a clone\nswitch costume to (obj)\ngo to x: ((tempX) + (Land X)) y: ((tempY) + (Land Y))\npoint in direction (tempDir)\nshow\nrepeat until <<([abs v] of (x position) ) > [400]> or <([abs v] of (y position) ) > [340]>>\n    go to postion\nend\nadd (obj) (tempX) (tempY) (tempSize) (tempDir) sp: (ind.I)\ndelete this clone\n\nwhen I receive [go v]\nforever\n    render\nend\n\ndefine render\nset [count v] to [0]\nrepeat (length of [objects v])\n    change [count v] by (1)\n    if <<<((item (count) of [objectx v]) + (Land X)) > [-400]> and <((item (count) of [objectx v]) + (Land X)) < [400]>> and <<((item (count) of [objecty v]) + (Land Y)) > [-340]> and <((item (count) of [objecty v]) + (Land Y)) < [340]>>> then\n        Create (item (count) of [objects v]) (item (count) of [objectx v]) (item (count) of [objecty v]) (item (count) of [objectsize v]) (item (count) of [objectdir v]) sp: (item (count) of [objectind.i v])\n    else\n        add (item (count) of [objects v]) to [objects 2 v]\n        add (item (count) of [objectx v]) to [objects 2 v]\n        add (item (count) of [objecty v]) to [objects 2 v]\n        add (item (count) of [objectsize v]) to [objects 2 v]\n        add (item (count) of [objectdir v]) to [objects 2 v]\n        add (item (count) of [objectind.i v]) to [objects 2 v]\n    end\nend\ndel [all]\nset [re-add v] to [-5]\nrepeat ((length of [objects 2 v]) / (6))\n    change [re-add v] by (6)\n    add (item (re-add) of [objects 2 v]) (item ((re-add) + (1)) of [objects 2 v]) (item ((re-add) + (2)) of [objects 2 v]) (item ((re-add) + (3)) of [objects 2 v]) (item ((re-add) + (4)) of [objects 2 v]) sp: (item ((re-add) + (5)) of [objects 2 v])\nend\ndelete (all) of [objects 2 v]\n\ndefine add (obj) (x) (y) (size) (dir) sp: (ind.i)\nadd (obj) to [objects v]\nadd (x) to [objectx v]\nadd (y) to [objecty v]\nadd (size) to [objectsize v]\nadd (dir) to [objectdir v]\nadd (ind.i) to [objectind.i v]\n\ndefine Add row of (no.) (obj) from (x) (y) leaving gap (gap) dir (dir) size (size)\nset [linex v] to (x)\nrepeat (no.)\n    add (obj) (lineX) (y) (size) (dir) sp: (1)\n    change [linex v] by (gap)\nend\n\ndefine del (which?)\ndelete (which?) of [objects v]\ndelete (which?) of [objectx v]\ndelete (which?) of [objecty v]\ndelete (which?) of [objectsize v]\ndelete (which?) of [objectdir v]\ndelete (which?) of [objectind.i v]\n\ndefine Create (obj) (x) (y) (size) (dir) sp: (ind.i)\nset [tempx v] to (x)\nset [tempy v] to (y)\nset [obj v] to (obj)\nset [tempsize v] to (size)\nset [tempdir v] to (dir)\nset [ind.i v] to (ind.i)\ncreate clone of (_myself_ v)\n\ndefine for ind.I (ind.i) replace (wut?) with (replace)\nset [ind.i.count v] to [0]\nrepeat (length of [objectind.i v])\n    change [ind.i.count v] by (1)\n    if <(item (ind.I.count) of [objectind.i v]) = (ind.i)> then\n        if <(wut?) = [obj]> then\n            replace item (ind.I.count) of [objects v] with (replace)\n        else\n            if <(wut?) = [x]> then\n                replace item (ind.I.count) of [objectx v] with (replace)\n            else\n                if <(wut?) = [y]> then\n                    replace item (ind.I.count) of [objecty v] with (replace)\n                else\n                    if <(wut?) = [size]> then\n                        replace item (ind.I.count) of [objectsize v] with (replace)\n                    else\n                        if <(wut?) = [dir]> then\n                            replace item (ind.I.count) of [objectdir v] with (replace)\n                        else\n                            if <(wut?) = [ind.I]> then\n                                replace item (ind.I.count) of [objectind.i v] with (replace)\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine go to postion\nset size to (1000) %\ngo to x: ((tempX) + (Land X)) y: ((tempY) + (Land Y))\nset size to (tempSize) %\n\ndefine level 1\nAdd row of (6) (1) from (-140) (-160) leaving gap (40) dir (0) size (100)\nadd (1) (-140) (-120) (100) (0) sp: (1)\nadd (1) (-140) (-80) (100) (0) sp: (1)\nadd (6) (-120) (-40) (100) (0) sp: (2)\nadd (1) (-140) (-40) (100) (0) sp: (1)\nadd (1) (-140) (0) (100) (0) sp: (1)\nadd (5) (100) (-120) (100) (0) sp: (3)\nadd (5) (140) (-80) (100) (0) sp: (3)\nadd (5) (180) (-40) (100) (0) sp: (3)\nadd (5) (220) (0) (100) (0) sp: (3)\nadd (1) (260) (0) (100) (0) sp: (1)\nadd (6) (300) (20) (100) (270) sp: (4)\nadd (1) (300) (0) (100) (0) sp: (1)\nadd (1) (340) (0) (100) (0) sp: (1)\nadd (1) (340) (40) (100) (0) sp: (1)\nadd (1) (340) (80) (100) (0) sp: (1)\nadd (1) (340) (120) (100) (0) sp: (1)\nadd (1) (340) (160) (100) (0) sp: (1)\nadd (1) (340) (200) (100) (0) sp: (1)\nadd (1) (60) (160) (100) (0) sp: (1)\nadd (6) (20) (180) (100) (270) sp: (5)\nadd (1) (20) (160) (100) (0) sp: (1)\nadd (1) (-20) (160) (100) (0) sp: (1)\nadd (1) (-20) (200) (100) (0) sp: (1)\nadd (1) (-20) (240) (100) (0) sp: (1)\nadd (1) (-20) (280) (100) (0) sp: (1)\nadd (1) (-20) (320) (100) (0) sp: (1)\nadd (3) (420) (160) (200) (90) sp: (1)\nadd (3) (500) (140) (200) (270) sp: (1)\nadd (3) (580) (160) (200) (90) sp: (1)\nadd (3) (660) (140) (200) (270) sp: (1)\nadd (4) (820) (220) (100) (67.5) sp: (6)\nadd (4) (980) (300) (100) (67.5) sp: (6)\nadd line x1: (740) y1: (160) x2: (1060) y2: (320) size: (100)\nadd (7) (1180) (400) (200) (90) sp: (7)\n\ndefine level select\nAdd row of (8) (1) from (-200) (-120) leaving gap (40) dir (0) size (100)\nadd line x1: (-400) y1: (0) x2: (-200) y2: (-120) size: (100)\nadd (14) (0) (0) (300) (80) sp: (0)\nif <(length of [completed levels v]) = [1]> then\n    add (20) (440) (160) (200) (90) sp: (0)\nend\nall level block [-400] [120] [90] for level [1]\nadd line x1: (80) y1: (-120) x2: (200) y2: (40) size: (100)\nadd line x1: (80) y1: (-120) x2: (200) y2: (40) size: (100)\nadd line x1: (200) y1: (40) x2: (280) y2: (0) size: (100)\nadd line x1: (280) y1: (0) x2: (1080) y2: (0) size: (100)\nAdd row of (3) (4) from (440) (30) leaving gap (20) dir (90) size (50)\nAdd row of (2) (4) from (600) (40) leaving gap (40) dir (90) size (100)\nAdd row of (4) (4) from (800) (30) leaving gap (20) dir (90) size (50)\nall level block [300] [180] [90] for level [2]\nall level block [1000] [140] [100] for level [3]\nadd (22) (1500) (180) (100) (0) sp: (1)\nadd line x1: (1240) y1: (20) x2: (1500) y2: (160) size: (100)\nadd line x1: (1800) y1: (-40) x2: (2100) y2: (-300) size: (100)\nadd (17) (1740) (0) (0) (0) sp: (1)\nall level block [1820] [-200] [70] for level [4]\nall level block [2060] [-200] [120] for level [5]\n\nwhen I start as a clone\nif <(ind.I) = [0]> then\n    forever\n        change [color v] effect by (0.5)\n        go to [front v] layer\n    end\nend\n\nwhen I start as a clone\nif <(ind.I) = [7]> then\n    set [sin v] to [0]\n    forever\n        change [sin v] by (10)\n        if <(obj) = [7]> then\n            set [tempsize v] to ((250) + (([sin v] of (sin) ) * (10)))\n        else\n            set [tempsize v] to ((100) + (([sin v] of (sin) ) * (10)))\n        end\n        set [ghost v] effect to ((20) + (([sin v] of ((sin) + (100)) ) * (20)))\n        go to [back v] layer\n    end\nend\n\nwhen I start as a clone\nif <(ind.I) = [7]> then\n    wait until <touching ( engine v)?>\n    set [finishx v] to (x position)\n    set [finishy v] to (y position)\n    if <<not <[completed levels v] contains (Level)?>> and <(obj) = [7]>> then\n        add (Level) to [completed levels v]\n    end\n    set [level v] to ((obj) - (7))\n    broadcast (finish v)\nend\n\ndefine all level block (x) (y) (dir) for level (level)\nif <[completed levels v] contains ((level) - (1))?> then\n    add ((level) + (7)) (x) (y) (100) (dir) sp: (7)\nelse\n    add (16) (x) (y) (100) (dir) sp: (1)\nend\n\ndefine level 2\nadd (1) (0) (-160) (100) (0) sp: (1)\nadd (1) (-120) (-160) (100) (0) sp: (8)\nadd (1) (-240) (-160) (100) (0) sp: (1)\nadd (17) (120) (-160) (80) (0) sp: (1)\nadd (6) (800) (-100) (100) (270) sp: (10)\nAdd row of (15) (1) from (240) (-120) leaving gap (40) dir (0) size (100)\nadd (15) (400) (0) (200) (0) sp: (9)\nadd (15) (680) (40) (300) (0) sp: (9)\nadd (1) (-480) (0) (200) (0) sp: (11)\nadd line x1: (-960) y1: (-120) x2: (-660) y2: (80) size: (100)\nAdd row of (5) (17) from (-1680) (-80) leaving gap (160) dir (0) size (0)\nadd (1) (-1760) (-80) (100) (0) sp: (1)\nadd a column of [5] [17] from [-1760] [40] leaving gap [120] dir [0] size [0]\nadd (19) (-1880) (520) (100) (90) sp: (12)\nadd (19) (-2000) (520) (100) (270) sp: (12)\nadd (19) (-2120) (520) (100) (90) sp: (12)\nadd (19) (-2240) (520) (100) (270) sp: (12)\nadd (7) (-2400) (480) (100) (0) sp: (7)\n\nwhen flag clicked\ndelete (join [all] []) of [completed levels v]\nadd [0] to [completed levels v]\n\nwhen I start as a clone\nif <<(obj) = [17]> or <(obj) = [21]>> then\n    set [sin v] to [0]\n    forever\n        change [sin v] by (5)\n        set [tempsize v] to ((120) + (([sin v] of (sin) ) * (5)))\n        if <<touching ( engine v)?> and <not <key (up arrow v) pressed?>>> then\n            repeat until <<key (up arrow v) pressed?> or <not <touching ( engine v)?>>>\n                change [sin v] by (5)\n                set [tempsize v] to ((120) + (([sin v] of (sin) ) * (5)))\n            end\n            if <key (up arrow v) pressed?> then\n                broadcast (costume [name v])\n                set [ind.i v] to ((ind.I) * (-1))\n                create clone of (_myself_ v)\n                set [ind.i v] to ((ind.I) * (-1))\n            end\n        end\n    end\nend\n\nwhen I start as a clone\nif <(ind.I) < [0]> then\n    repeat (20)\n        change [ghost v] effect by (5)\n        change size by (50)\n    end\n    delete this clone\nend\n\ndefine add a column of (no.) (obj) from (x) (y) leaving gap (gap) dir (dir) size (size)\nset [liney v] to (y)\nrepeat (no.)\n    add (obj) (x) (lineY) (size) (dir) sp: (1)\n    change [liney v] by (gap)\nend\n\ndefine level 3\nAdd row of (5) (1) from (-80) (-80) leaving gap (40) dir (0) size (100)\nadd (21) (120) (40) (0) (0) sp: (1)\nadd (6) (40) (180) (100) (270) sp: (14)\nAdd row of (5) (1) from (0) (160) leaving gap (40) dir (0) size (100)\nadd line x1: (200) y1: (160) x2: (300) y2: (80) size: (100)\nadd (21) (300) (200) (0) (0) sp: (13)\nadd (15) (440) (180) (200) (0) sp: (9)\nadd line x1: (400) y1: (240) x2: (600) y2: (360) size: (100)\nadd (21) (740) (440) (0) (0) sp: (16)\nadd (17) (800) (540) (0) (0) sp: (17)\nadd (21) (960) (540) (0) (0) sp: (16)\nadd (17) (1020) (440) (0) (0) sp: (17)\nadd (21) (1180) (440) (0) (0) sp: (16)\nadd (21) (1300) (640) (0) (0) sp: (1)\nadd (21) (1420) (440) (0) (0) sp: (1)\nadd (21) (1540) (640) (0) (0) sp: (1)\nadd (6) (1780) (260) (100) (330) sp: (15)\nadd line x1: (1620) y1: (440) x2: (1800) y2: (200) size: (100)\n\ndefine level 4\nadd (1) (-40) (-40) (100) (0) sp: (1)\nadd (1) (-40) (0) (100) (0) sp: (1)\nadd (1) (-40) (40) (100) (0) sp: (1)\nadd (1) (-40) (80) (100) (0) sp: (1)\nadd (1) (-40) (120) (100) (0) sp: (1)\nAdd row of (5) (1) from (-40) (-80) leaving gap (40) dir (0) size (100)\nadd (23) (300) (-80) (600) (0) sp: (9)\nadd (21) (400) (-280) (0) (0) sp: (1)\nadd (17) (160) (80) (0) (0) sp: (1)\nadd (21) (-40) (300) (0) (0) sp: (1)\nadd (4) (20) (-160) (300) (270) sp: (1)\nadd (23) (-300) (0) (800) (0) sp: (9)\nadd (21) (-160) (-240) (0) (0) sp: (1)\nadd (23) (-480) (-200) (200) (0) sp: (9)\nadd (1) (-680) (-180) (200) (0) sp: (1)\nadd (1) (-680) (-100) (200) (0) sp: (1)\nadd (1) (-680) (-20) (200) (0) sp: (1)\nadd (1) (-680) (60) (200) (0) sp: (1)\nadd (17) (-780) (180) (0) (0) sp: (1)\nadd (17) (-780) (100) (0) (0) sp: (1)\nadd (17) (-780) (20) (0) (0) sp: (1)\nadd (17) (-780) (-60) (0) (0) sp: (1)\nadd (17) (-780) (-140) (0) (0) sp: (1)\nadd (21) (-680) (240) (0) (0) sp: (1)\nadd (23) (-980) (220) (800) (0) sp: (9)\nadd (23) (-1180) (300) (800) (70) sp: (9)\nadd (23) (-1380) (320) (800) (140) sp: (9)\nadd (7) (-1480) (800) (0) (0) sp: (7)\nadd (21) (-1480) (400) (0) (0) sp: (1)\n\ndefine level 5\nadd (6) (-40) (-140) (100) (180) sp: (21)\nadd a column of [5] [1] from [-40] [-120] leaving gap [40] dir [0] size [100]\nadd a column of [3] [1] from [0] [-200] leaving gap [40] dir [0] size [100]\nadd (21) (160) (-160) (0) (0) sp: (20)\nadd (22) (280) (40) (100) (0) sp: (1)\nadd (21) (400) (-120) (100) (0) sp: (1)\nadd (6) (640) (-180) (100) (270) sp: (19)\nAdd row of (6) (1) from (440) (-200) leaving gap (40) dir (0) size (100)\nadd (21) (-80) (-280) (0) (0) sp: (22)\nadd (17) (-280) (-280) (0) (0) sp: (1)\nadd (21) (-280) (-160) (0) (0) sp: (1)\nadd line x1: (-600) y1: (40) x2: (-360) y2: (-240) size: (100)\nadd (25) (-800) (80) (600) (0) sp: (9)\nadd (1) (-800) (720) (100) (0) sp: (1)\nadd (21) (-800) (-120) (0) (0) sp: (1)\nadd (21) (-800) (680) (0) (0) sp: (1)\nadd (17) (-800) (520) (0) (0) sp: (1)\nadd (1) (-880) (520) (100) (0) sp: (1)\nadd (26) (-1160) (520) (300) (0) sp: (23)\nadd (21) (-1340) (440) (0) (0) sp: (1)\nadd line x1: (-1700) y1: (1000) x2: (-1400) y2: (800) size: (100)\nadd line x1: (-1700) y1: (1000) x2: (-1700) y2: (1200) size: (100)\nadd line x1: (-1980) y1: (660) x2: (-1780) y2: (860) size: (100)\nadd (21) (-1780) (960) (0) (0) sp: (1)\nadd line x1: (-2200) y1: (600) x2: (-1980) y2: (660) size: (100)\nadd (31) (-2100) (800) (100) (50) sp: (0)\nadd (7) (-2280) (680) (0) (0) sp: (7)\n\nwhen [e v] key pressed\nset [level v] to [0]\nset [finishx v] to [0]\nset [finishy v] to [0]\nbroadcast (finish v)\n\ngo to [back v] layer\n\n@detector\n\nwhen [timer v] > (0.1)\nswitch backdrop to (safe v)\nshow\nset [ghost v] effect to (100)\nset [x2 v] to (mouse x)\nset [y2 v] to (mouse y)\nforever\n    set [prev x v] to (x2)\n    set [prev y v] to (y2)\n    set [x2 v] to (mouse x)\n    set [y2 v] to (mouse y)\n    if <<(prev y) > [179]> and <(prev x) > [239]>> then\n        if <<(y2) > [90]> and <(x2) < [80]>> then\n            switch costume to (this sprite was created by @qucchia. all credit is given to him. v)\n            broadcast (THEY HAVE SEEN INSIDE v)\n            stop [this script v]\n        end\n    end\nend\n\nwhen flag clicked\nswitch costume to (empty v)\nwait (0.5) seconds\nset [detection v] to [flag]\n\nwhen [timer v] > (0.1)\nset [detection v] to [timer]\nwait (1) seconds\nif <(detection) = [timer]> then\n    broadcast (THEY HAVE SEEN INSIDE v)\nend\n\n@Options\n\nwhen flag clicked\nhide\n\nwhen I receive [best speedrun official  v]\nshow\ngo to [front v] layer\nforever\n    set [0111ab v] to (mouse x)\n    go to [front v] layer\n    go [forward v] (1) layers\n    wait (11.2) seconds\n    hide\nend\n\n@ Engine\n\nwhen I receive [camera x y v]\nstop [other scripts in sprite v]\nhide\nforever\n    if <key (right arrow v) pressed?> then\n        change [land x v] by (-6.4)\n        move (-6.4) steps\n    end\n    if <key (left arrow v) pressed?> then\n        change [land x v] by (6.4)\n        move (6.4) steps\n    end\n    if <key (up arrow v) pressed?> then\n        change [land y v] by (-6.4)\n        change y by (-6.2)\n    end\n    if <key (down arrow v) pressed?> then\n        change [land y v] by (6.4)\n        change y by (6.2)\n    end\nend\n\nwhen flag clicked\nshow\ngo to x: (0) y: (0)\nset [icon v] to [1]\nset [gravity v] to [1]\nset [x counter v] to [0]\nset [y counter v] to [0]\nset [y velocity v] to [0]\nset [y velocity v] to [0]\nset [ucanjump v] to [0]\nset [keypressed? v] to [1]\nset [land x v] to [0]\nset [land y v] to [0]\n\ndefine move\nswitch costume to (hitbox \(circle\) v)\nif <<<<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > [0]>>> or <<key (space v) pressed?> or <key (w v) pressed?>>> or <key (z v) pressed?>> then\n    if <<(keypressed?) = [0]> and <(ucanjump) = [1]>> then\n        set [keypressed? v] to [1]\n        set [y velocity v] to [12]\n        set [ucanjump v] to [0]\n    else\n        change [y velocity v] by (-1)\n    end\nelse\n    set [keypressed? v] to [0]\n    change [y velocity v] by (-1)\nend\nchange y by (Y Velocity)\nif <touching color (#000000)?> then\n    if <(Y Velocity) > [0]> then\n        repeat until <not <touching color (#000000)?>>\n            change y by (-1)\n        end\n        set [y velocity v] to [0]\n    else\n        if <(Y Velocity) < [0]> then\n            repeat until <not <touching color (#000000)?>>\n                change y by (1)\n            end\n            set [ucanjump v] to [1]\n            set [y velocity v] to [0]\n        end\n    end\nelse\n    set [ucanjump v] to [0]\nend\nif <<<mouse down?> and <(mouse x) > [0]>> or <<key (right arrow v) pressed?> or <key (d v) pressed?>>> then\n    if <(X Velocity) < [6]> then\n        change [x velocity v] by (1)\n    end\n    set [stable? v] to [0]\nelse\n    if <<<mouse down?> and <(mouse x) < [0]>> or <<key (left arrow v) pressed?> or <key (a v) pressed?>>> then\n        if <(X Velocity) > [-6]> then\n            change [x velocity v] by (-1)\n        end\n        set [stable? v] to [0]\n    else\n        set [x velocity v] to ((X Velocity) * (0.9))\n    end\nend\nif <(stable?) = [0]> then\n    if <(ucanjump) = [1]> then\n        change [x velocity v] by ((((direction) / (50)) - (1.8)) * (gravity))\n    end\n    if <(ucanjump) = [0]> then\n        set [x velocity v] to ((X Velocity) * (0.9))\n    end\n    if <<([abs v] of (X Velocity) ) < [0.1]> and <([abs v] of ((90) - (direction)) ) > [5]>> then\n        set [stable? v] to [1]\n    end\nend\nchange x by (X Velocity)\nif <touching color (#000000)?> then\n    set [engine: count v] to [0]\n    repeat until <<not <touching color (#000000)?>> or <(Engine: count) = [10]>>\n        change [engine: count v] by (1)\n        change y by (1)\n    end\n    if <(Engine: count) = [10]> then\n        change y by ((Engine: count) * (-1))\n        change x by ((X Velocity) * (-1))\n        set [x velocity v] to [0]\n    end\nend\nif <<(ucanjump) = [1]> and <(Y Velocity) = [0]>> then\n    set [engine: tempx v] to (X Velocity)\n    realign\n    if <(Engine: count) = [0]> then\n        set [engine: tempx v] to ((Engine: tempX) * (-1))\n        realign\n    end\nelse\n    if <(Y Velocity) > [0]> then\n        point in direction (90)\n    end\nend\nupdate land by x: (x counter) y: (y counter)\nswitch costume to (join [costume] ((icon) * (gravity)))\n\nrepeat until <not <touching color (#000000)?>>\n    change x by (((X Velocity) / ([abs v] of (X Velocity) )) * (-1))\nend\nchange x by (((X Velocity) / ([abs v] of (X Velocity) )) * (-1))\n\ndefine change x by (x)\nchange x by (x)\nchange [x counter v] by (x)\n\ndefine realign\nchange x by ((([abs v] of (Engine: tempX) ) / (Engine: tempX)) * (20))\nset [engine: count v] to [0]\nrepeat until <<not <touching color (#000000)?>> or <(Engine: count) = [50]>>\n    change [engine: count v] by (1)\n    change y by (1)\nend\nchange x by ((([abs v] of (Engine: tempX) ) / (Engine: tempX)) * (-20))\nchange y by ((Engine: count) * (-1))\nif <not <(Engine: count) = [50]>> then\n    point in direction ((90) - (((round ([atan v] of ((Engine: count) / (20)) )) * (([abs v] of (Engine: tempX) ) / (Engine: tempX))) * (gravity)))\nend\n\ndefine update land by x: (x) y: (y)\nchange [land x v] by ((x) * (-1))\nchange [land y v] by ((y) * (-1))\nset [x counter v] to [0]\nset [y counter v] to [0]\ngo to x: (0) y: (0)\n\ndefine change y by (y)\nchange y by ((y) * (gravity))\nchange [y counter v] by ((y) * (gravity))\n\nwhen I receive [go v]\nshow\nforever\n    move\n    if <touching color (#5a00ff)?> then\n        set [y velocity v] to [17]\n    end\n    if <<touching color (#2b51b3)?> and <<<<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > [0]>>> or <<key (space v) pressed?> or <key (w v) pressed?>>> or <key (z v) pressed?>>> then\n        broadcast (orb v)\n    end\n    if <touching color (#ff0000)?> then\n        broadcast (deth v)\n        stop [this script v]\n    end\n    if <<touching color (#00e4c6)?> and <<<<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > [0]>>> or <<key (space v) pressed?> or <key (w v) pressed?>>> or <key (z v) pressed?>>> then\n        broadcast (orb2 v)\n    end\n    if <<touching color (#04fe92)?> and <<<<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > [0]>>> or <<key (space v) pressed?> or <key (w v) pressed?>>> or <key (z v) pressed?>>> then\n        broadcast (orb2 v)\n    end\n    if <([abs v] of (Land Y) ) > [2000]> then\n        broadcast (deth2 v)\n        stop [this script v]\n    end\nend\n\nwhen I receive [deth v]\nstop [other scripts in sprite v]\nset [y velocity v] to [10]\nrepeat until <touching (_edge_ v)?>\n    change y by (Y Velocity)\n    change [y velocity v] by (-1)\n    turn right (([abs v] of (X Velocity) ) / (X Velocity)) degrees\n    change x by (([abs v] of (X Velocity) ) / (X Velocity))\nend\nhide\npoint in direction (90)\nset [gravity v] to [1]\nset [land x v] to [0]\nset [land y v] to [0]\nset [x velocity v] to [0]\nset [y velocity v] to [0]\nbroadcast (updatelanddata v)\n\nwhen I receive [deth2 v]\nstop [other scripts in sprite v]\nset [y velocity v] to [0]\nrepeat until <touching (_edge_ v)?>\n    change y by (Y Velocity)\n    change [y velocity v] by (-1)\n    turn right (([abs v] of (X Velocity) ) / (X Velocity)) degrees\n    change x by (([abs v] of (X Velocity) ) / (X Velocity))\nend\nhide\npoint in direction (90)\nset [gravity v] to [1]\nset [land x v] to [0]\nset [land y v] to [0]\nset [x velocity v] to [0]\nset [y velocity v] to [0]\nbroadcast (updatelanddata v)\n\nwhen I receive [finish v]\nstop [other scripts in sprite v]\nrepeat (20)\n    go to x: ((((FinishX) * (1)) + ((x position) * (20))) / (21)) y: ((((FinishY) * (1)) + ((y position) * (20))) / (21))\n    change [ghost v] effect by (5)\nend\nclear graphic effects\n\nwhen I receive [finish screen over v]\nhide\npoint in direction (90)\nset [gravity v] to [1]\nset [land x v] to [0]\nset [land y v] to [0]\nset [x velocity v] to [0]\nset [y velocity v] to [0]\nbroadcast (updatelanddata v)\n\nwhen I receive [orb v]\nset [y velocity v] to [9]\n\nwhen this sprite clicked\n\nwhen I receive [orb2 v]\nwait (0) seconds\nset [y velocity v] to [0]\nset [gravity v] to ((gravity) * (-1))\nwait (0.7) seconds\n\nwhen flag clicked\nset rotation style [all around v]\nset [☁ level v] to [0]\n\nwhen I receive [go v]\nchange [☁ level v] by (5)\n\nwhen flag clicked\n\nswitch costume to (costume5 v)\nwait (0.1) seconds\nsay (username)\n\nsay [Hello!]\nif <<key (right arrow v) pressed?> or <key (left arrow v) pressed?>> then\n\ngo to [front v] layer\nstop [other scripts in sprite v]\n\nwhen I receive [go v]\ngo to x: (0) y: (0)\nforever\n    go to x: [] y: []\n    set y to ((Y Velocity) / (2.1))\nend\n\ndefine go to x: (x) y: (y)\ngo to x: (x) y: (y)\n\nwhen flag clicked\nchange x by (0.3)\n\nif <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > [0]>>> then\nif <key (left arrow v) pressed?> then\n\nwhen flag clicked\n\nwhen I receive [go v]\nswitch costume to (costume1 v)\nforever\n    if  then\n        change [icon v] by (1)\n        if <(icon) = [7]> then\n            set [icon v] to [1]\n        end\n        wait (0) seconds\n        switch costume to (join [costume] ((icon) * (gravity)))\n    end\nend\n\nwhen I receive [go v]\nforever\n    if <not <<<key (right arrow v) pressed?> or <key (left arrow v) pressed?>> or <<<mouse down?> and <(mouse x) > [0]>> or <<mouse down?> and <(mouse x) < [0]>>>>> then\n        switch costume to (costume1 v)\n    end\nend\n\nif  then\n\nwhen I receive [camera x y v]\n\nif <touching (_edge_ v)?> then\n\nshow\n\nchange x by (-10000000)\n\nset [y velocity v] to [9.11]\n\n\n\ndefine walk  (in)\nchange x by (in)\n\nwalk  [-4.7]\nwalk  [4.7]\n\n\n\nwhen I receive [go v]\nforever\n    wait until <(Completed Levels) = [0 1]>\n    set x to ((X Velocity) / (0.9))\nend\n\nwhen I receive [go v]\nforever\n    repeat until <not <(Completed Levels) = [01]>>\n        change x by ((X Velocity) / (0.9))\n    end\n    if <(Completed Levels) = [012345]> then\n        set [abababa v] to [1]\n    else\n        set [abababa v] to [0]\n    end\nend\n\nwhen I receive [envoyer , v]\nask [] and wait\nsay (answer)\n\nwhen I receive [1 v]\nask [] and wait\nsay (answer)\n\nwhen I receive [go v]\nforever\n    if <(0A1B2C3D) = [1]> then\n        say (join (username) (join [ / ] (1Ani02mé)))\n    end\nend\n\nwhen flag clicked\n\n\nwhen I receive [go v]\nforever\n    if <touching color (#00ff92)?> then\n        broadcast (0 v)\n    end\n    if <touching color (#7f9bff)?> then\n        broadcast (AAAAAAAABAAAAAAABC v)\n    end\n    if <<<<touching color (#32deff)?> or <touching color (#31dfff)?>> or <touching color (#5c50ff)?>> or <touching color (#b96178)?>> then\n        broadcast (uejk v)\n    end\nend\n\nchange [ghost v] effect by (100)\n\nrepeat until <(Completed Levels) = [0 1 2 ]>\n\nwhen I receive [go v]\nshow\n\nwhen I receive [go v]\nforever\n    if <(username) = [player1826]> then\n        change x by ((X Velocity) / (0.9))\n    end\n    if <(username) = [AZEATRE]> then\n        change x by ((X Velocity) / (0.9))\n    end\n    if <(username) = [X_Gjin]> then\n        change x by ((X Velocity) / (0.9))\n    end\nend\n\nif <<<key (up arrow v) pressed?> = <key (right arrow v) pressed?>> and <key (down arrow v) pressed?>> then\n    show\n    turn right (30) degrees\n    change [x velocity v] by (3)\n    change [land x v] by (1)\nend\nif <<<key (up arrow v) pressed?> = <key (left arrow v) pressed?>> and <key (down arrow v) pressed?>> then\n    show\n    turn right (-30) degrees\n    change [x velocity v] by (-3)\n    change [land x v] by (-1)\nend\n\nwhen I receive [go v]\nforever\n    if <<<<<key (up arrow v) pressed?> or <key (z v) pressed?>> or <key (a v) pressed?>> or <<mouse down?> and <(mouse y) > [0]>>> or <key (space v) pressed?>> then\n        wait (0.2) seconds\n        repeat (14)\n            change [ghost v] effect by (100)\n        end\n        wait (0.3) seconds\n        change [ghost v] effect by (-100)\n    end\n    if <<key (down arrow v) pressed?> and <key (right arrow v) pressed?>> then\n        set [x velocity v] to [0]\n    end\n    if <<key (down arrow v) pressed?> and <key (left arrow v) pressed?>> then\n        set [x velocity v] to [0]\n    end\n    if <<key (s v) pressed?> and <key (d v) pressed?>> then\n        set [x velocity v] to [0]\n    end\n    if <<key (s v) pressed?> and <key (a v) pressed?>> then\n        set [x velocity v] to [0]\n    end\n    if <<mouse down?> and <<(mouse y) < [0]> and <<mouse down?> and >>> then\n        set [x velocity v] to [0]\n    end\n    if  then\n        set [x velocity v] to [0]\n    end\nend\n\n@Up \n\nwhen I receive [go v]\nchange [ghost v] effect by ()\nhide\nforever\n    go to ( engine v)\n    point in direction ([direction v] of [ engine v])\nend\n\nwhen I receive [go v]\nset [brightness v] effect to (10)\nhide\nforever\n    if <<<<<key (up arrow v) pressed?> or <key (z v) pressed?>> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > [0]>>> or <key (space v) pressed?>> then\n        wait (0.2) seconds\n        repeat (14)\n            show\n        end\n        wait (0.3) seconds\n        hide\n    end\n    if <<key (down arrow v) pressed?> and <key (right arrow v) pressed?>> then\n        set [x velocity v] to [0]\n    end\n    if <<key (down arrow v) pressed?> and <key (left arrow v) pressed?>> then\n        set [x velocity v] to [0]\n    end\n    if <<key (s v) pressed?> and <key (d v) pressed?>> then\n        set [x velocity v] to [0]\n    end\n    if <<key (s v) pressed?> and <key (a v) pressed?>> then\n        set [x velocity v] to [0]\n    end\n    if <<mouse down?> and <<(mouse y) < [0]> and <<mouse down?> and >>> then\n        set [x velocity v] to [0]\n    end\n    if  then\n        set [x velocity v] to [0]\n    end\nend\n\n@Death Animation \n\nwhen flag clicked\nhide\n\nwhen I receive [go v]\nhide\nforever\n    if <[] < [0]> then\n        wait until <(Y Velocity) = [0]>\n        repeat until <(Y Velocity) > [0]>\n            repeat (1)\n                move (0) steps\n            end\n            create clone of (_myself_ v)\n        end\n    end\nend\n\nwhen I start as a clone\ngo to [back v] layer\nset [ghost v] effect to (0)\nset size to (pick random (70) to (90)) %\nshow\npoint in direction (pick random (-360) to (360))\ngo to ( engine v)\nchange x by (X Velocity)\nchange y by (pick random (-10) to (-20))\nwait (0.075) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\nend\ndelete this clone\n\n