Virus - Platformer Adventure

Instructions: Use the W, A, and D keys or the corresponding arrow keys to move. Jump on the antivirus' heads to destroy them!\n\nTo skip a level or see other settings, move your mouse to the top and an arrow will appear.\n✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦\nYou are a computer virus traveling through a network with the sole goal of duplicating and infecting computers. Destroy antiviruses, navigate through computers, and show off your skill in this story of self-realization.\n✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦\nCollect the books to unlock the secrets behind the computer network.\n✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦✦\nThis is my first Scratch game. Please Like/Favorite/Follow if you enjoyed <3

@Stage\n\nwhen flag clicked\nset [music on? v] to [1]\nTitle Screen\n\nwhen I receive [gamestart v]\nswitch backdrop to (black gradient v)\nstop all sounds\nstop [other scripts in sprite v]\nclear graphic effects\nbroadcast (CUTSCENE v)\nset [cutscene v] to [0]\nset [brightness v] effect to (-100)\nrepeat (20)\n    wait (0.02) seconds\n    change [brightness v] effect by (5)\nend\n\nwhen flag clicked\nforever\n    play sound [Sci Fi 1 v] until done\n    wait (2) seconds\nend\n\nwhen I receive [text gone v]\nif <(CUTSCENE) = [0]> then\n    broadcast (Next Level v)\n    switch backdrop to (circuit v)\n    set [brightness v] effect to (-100)\n    wait (1) seconds\n    repeat (20)\n        change [brightness v] effect by (5)\n    end\n    set [song v] to [0]\n    broadcast (Song Change v)\n    broadcast (Set Up Menu v)\nend\nif <(CUTSCENE) = [2]> then\n    set [level v] to [6]\n    broadcast (Next Level v)\n    switch backdrop to (circuit v)\n    set [brightness v] effect to (-100)\n    wait (1) seconds\n    repeat (20)\n        change [brightness v] effect by (5)\n    end\n    set [song v] to [2]\n    broadcast (Song Change v)\nend\n\nwhen I receive [book v]\nrepeat (20)\n    change [brightness v] effect by (-3)\nend\n\nwhen I receive [book closed v]\nrepeat (20)\n    change [brightness v] effect by (3)\nend\n\nwhen I receive [song change v]\nstop all sounds\nif <(Music On?) = [1]> then\n    if <(SONG) = [0]> then\n        forever\n            play sound [Overworld v] until done\n        end\n    end\n    if <(SONG) = [1]> then\n        forever\n    end\n    if <(SONG) = [2]> then\n        forever\n            play sound [Race to Mars v] until done\n        end\n    end\n    if <(SONG) = [3]> then\n        forever\n            play sound [Sci Fi 2 v] until done\n        end\n    end\nend\n\nwhen I receive [cutscene v]\nif <(CUTSCENE) = [2]> then\n    switch backdrop to (black gradient v)\n    set [song v] to [1]\n    broadcast (Song Change v)\n    clear graphic effects\n    set [brightness v] effect to (-100)\n    repeat (20)\n        wait (0.02) seconds\n        change [brightness v] effect by (5)\n    end\nend\nif <(CUTSCENE) = [3]> then\n    set [song v] to [3]\n    broadcast (Song Change v)\nend\n\nwhen I receive [next level v]\nif <not <<(LEVEL) = [0]> or <<(LEVEL) = [5]> or <(LEVEL) = [6]>>>> then\n    repeat (20)\n        change [brightness v] effect by (-5)\n    end\n    wait (0.8) seconds\n    repeat (20)\n        change [brightness v] effect by (5)\n    end\n    clear graphic effects\nend\n\nwhen I receive [game over... v]\nstop [other scripts in sprite v]\nrepeat (20)\n    change [brightness v] effect by (-2)\nend\nwait (2) seconds\nTitle Screen\nforever\n    play sound [Sci Fi 1 v] until done\n    wait (2) seconds\nend\n\ndefine Title Screen\nclear graphic effects\nset [level v] to [0]\nswitch backdrop to (1 v)\nset [pixelate v] effect to (100)\nrepeat (20)\n    change [pixelate v] effect by (-4)\nend\nforever\n    wait (pick random (3) to (5)) seconds\n    repeat (10)\n        change [pixelate v] effect by (4)\n    end\n    wait (pick random (0.2) to (0.3)) seconds\n    set [pixelate v] effect to (20)\nend\n\nwhen I receive [died v]\nset [health v] to [5]\nset [lives v] to [2]\nset [level v] to (CHECKPOINT)\nbroadcast (Next Level v)\n\nchange [lives v] by (-1)\n\n@Base\n\nwhen flag clicked\ndelete all of [weird levels v]\nadd [0] to [weird levels v]\nadd [5] to [weird levels v]\nadd [6] to [weird levels v]\nhide\nswitch costume to (nothing v)\nclear graphic effects\nset size to (100) %\ngo to x: (0) y: (0)\n\nwhen I receive [next level v]\nif <<(LEVEL) = [0]> or <(LEVEL) = [6]>> then\n    if <(LEVEL) = [0]> then\n        switch costume to (l0 v)\n    else\n        clear graphic effects\n        switch costume to (l6 v)\n    end\n    set [ghost v] effect to (100)\n    show\n    wait (1) seconds\n    repeat (20)\n        change [ghost v] effect by (-5)\n    end\nelse\n    repeat (20)\n        change [brightness v] effect by (-5)\n        change [pixelate v] effect by (5)\n        change [ghost v] effect by (5)\n    end\n    hide\n    if <not <[weird levels v] contains (LEVEL)?>> then\n        switch costume to (join [L] (LEVEL))\n        wait (1) seconds\n        show\n        repeat (20)\n            change [brightness v] effect by (5)\n            change [pixelate v] effect by (-5)\n            change [ghost v] effect by (-5)\n        end\n    end\n    if <(LEVEL) = [5]> then\n        set [cutscene v] to [2]\n        broadcast (CUTSCENE v)\n    end\nend\n\nwhen I receive [game over... v]\nrepeat (20)\n    change [brightness v] effect by (-2)\nend\nwait (2) seconds\nhide\nswitch costume to (l0 v)\nclear graphic effects\n\nwhen I receive [book v]\nrepeat (20)\n    change [brightness v] effect by (-3)\nend\n\nwhen I receive [book closed v]\nrepeat (20)\n    change [brightness v] effect by (3)\nend\n\nwhen I receive [boss stomp v]\ncreate clone of (_myself_ v)\nset [ghost v] effect to (100)\nwait until <(Seismic Scale) < [1]>\nclear graphic effects\n\nwhen I start as a clone\nset [seismic scale v] to [6]\nrepeat until <(Seismic Scale) < [1]>\n    set y to (Seismic Scale)\n    wait (.01) seconds\n    set y to ((-1) * (Seismic Scale))\n    change [seismic scale v] by (-1)\n    wait (.01) seconds\nend\ndelete this clone\n\n@virus\n\ndefine platformer\nset [gravity coefficient v] to (([abs v] of (Gravity) ) / (Gravity))\nif <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n    change [xv v] by (0.75)\nend\nif <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n    change [xv v] by (-0.75)\nend\nset [xv v] to ((xV) * (0.9))\nchange x by (xV)\nif <touching (base v)?> then\n    change y by ((-1) * (gravity coefficient))\n    if <touching (base v)?> then\n        change y by ((-1) * (gravity coefficient))\n        if <touching (base v)?> then\n            change y by ((-1) * (gravity coefficient))\n            if <touching (base v)?> then\n                change y by ((-1) * (gravity coefficient))\n                if <touching (base v)?> then\n                    change y by ((-1) * (gravity coefficient))\n                    if <touching (base v)?> then\n                        change x by ((xV) * (-1))\n                        change y by ((5) * (gravity coefficient))\n                        if <<key (up arrow v) pressed?> or <key (w v) pressed?>> then\n                            if <(xV) > [0]> then\n                                set [xv v] to [-5]\n                            else\n                                set [xv v] to [5]\n                            end\n                            set [yv v] to ((-1) * (((jump power) - (2)) * (([abs v] of (Gravity) ) / (Gravity))))\n                            start sound [Jump v]\n                        else\n                            set [xv v] to [0]\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nchange [yv v] by (Gravity)\nchange y by (yV)\nif <touching (base v)?> then\n    change y by ((yV) * (-1))\n    set [yv v] to [0]\nend\nchange y by (([abs v] of (Gravity) ) / (Gravity))\nif <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <<<(Jumps in air) > [0]> or <touching (base v)?>> and <((yV) * ((-1) * (gravity coefficient))) < ((jump power) / (2))>>> then\n    set [yv v] to ((-1) * ((jump power) * (([abs v] of (Gravity) ) / (Gravity))))\n    change [jumps in air v] by (-1)\n    start sound [Jump v]\nend\nif <touching (base v)?> then\n    change y by ((-1) * (([abs v] of (Gravity) ) / (Gravity)))\n    set [jumps in air v] to (Max Jumps in Air)\nend\n\nwhen flag clicked\nhide\nset [max jumps in air v] to [1]\nset [jump power v] to [15]\nset [gravity v] to [-1]\n\nwhen I receive [next level v]\nstop [other scripts in sprite v]\nset [jumps in air v] to [0]\nrepeat (20)\n    change [ghost v] effect by (5)\nend\nhide\nwait (1.4) seconds\nspawn\n\nwhen I receive [cutscene v]\nstop [other scripts in sprite v]\nset [xv v] to [0]\nset [yv v] to [0]\nif <(CUTSCENE) = [0]> then\n    hide\nend\nif <(CUTSCENE) = [1]> then\n    wait (1) seconds\n    glide (1) secs to x: (-129) y: (-156)\nend\nif <(CUTSCENE) = [2]> then\n    hide\nend\n\nwhen I receive [book v]\nstop [other scripts in sprite v]\nrepeat (20)\n    change [brightness v] effect by (-3)\nend\n\nwhen I receive [book closed v]\nrepeat (20)\n    change [brightness v] effect by (3)\nend\nbroadcast (PLAYERSTART v)\n\ndefine spawn\ngo to [front v] layer\nset size to (15) %\nclear graphic effects\nset [pixelate v] effect to (100)\nset [brightness v] effect to (100)\nset [xv v] to [0]\nset [yv v] to [0]\nset [max jumps in air v] to [1]\nset [jumps in air v] to [0]\nset [gravity v] to ((-1) * ([abs v] of (Gravity) ))\nif <(LEVEL) = [0]> then\n    go to x: (-188) y: (-139)\nend\nif <(LEVEL) = [1]> then\n    go to x: (-188) y: (-139)\nend\nif <(LEVEL) = [2]> then\n    go to x: (-188) y: (-139)\nend\nif <(LEVEL) = [3]> then\n    set [max jumps in air v] to [0]\n    go to x: (-188) y: (-139)\nend\nif <(LEVEL) = [4]> then\n    go to x: (183) y: (129)\nend\nif <(LEVEL) = [6]> then\n    go to x: (205) y: (-130)\nend\nif <(LEVEL) = [7]> then\n    go to x: (-199) y: (-45)\nend\nif <(LEVEL) = [8]> then\n    go to x: (-217) y: (132)\nend\nif <(LEVEL) = [9]> then\n    go to x: (-220) y: (-52)\nend\nif <(LEVEL) = [10]> then\n    go to x: (-215) y: (-49)\nend\nif <(LEVEL) = [11]> then\n    go to x: (-215) y: (32)\n    show\n    repeat (20)\n        change [pixelate v] effect by (-5)\n        change [brightness v] effect by (-5)\n    end\n    set [cutscene v] to [3]\n    broadcast (CUTSCENE v)\n    stop [this script v]\nend\nshow\nrepeat (20)\n    change [pixelate v] effect by (-5)\n    change [brightness v] effect by (-5)\nend\nforever\n    platformer\nend\n\nwhen I receive [hit v]\nif <(Health) > [0]> then\n    stop [other scripts in sprite v]\n    set [xv v] to [0]\n    set [yv v] to [0]\n    spawn\nelse\n    stop [other scripts in sprite v]\n    repeat (20)\n        change [pixelate v] effect by (5)\n        change [ghost v] effect by (5)\n    end\nend\n\nwhen I receive [playerstart v]\nstop [other scripts in sprite v]\nset [xv v] to [0]\nset [yv v] to [0]\nset [jumps in air v] to [0]\nforever\n    platformer\nend\n\nwhen I receive [hit 2 v]\nstart sound [Hit1 v]\nif <(Health) > [0]> then\n    repeat (10)\n        change [brightness v] effect by (10)\n    end\n    repeat (10)\n        change [brightness v] effect by (-10)\n    end\nelse\n    stop [other scripts in sprite v]\n    repeat (20)\n        change [pixelate v] effect by (5)\n        change [ghost v] effect by (5)\n    end\nend\n\nwhen I receive [heal v]\nrepeat (5)\n    change [brightness v] effect by (10)\nend\nrepeat (5)\n    change [brightness v] effect by (-10)\nend\n\nwhen I receive [boss stomp v]\nchange y by (-2)\nif <touching (base v)?> then\n    set [yv v] to [15]\n    set [jumps in air v] to [0]\nelse\n    change y by (2)\nend\n\nwhen I start as a clone\nrepeat until <touching (_edge_ v)?>\n    change x by (Clone xV)\n    change y by (Clone yV)\n    set [clone xv v] to ((0.9) * (Clone xV))\n    change [clone yv v] by (-1)\nend\ndelete this clone\n\nwhen I receive [virus clones v]\nrepeat (10)\n    set [clone xv v] to (pick random (12) to (17))\n    set [clone yv v] to (pick random (7) to (12))\n    create clone of (_myself_ v)\n    wait (0.1) seconds\n    set [clone xv v] to ((-1) * (pick random (12) to (17)))\n    set [clone yv v] to (pick random (7) to (12))\n    create clone of (_myself_ v)\n    wait (0.1) seconds\nend\n\nwhen I receive [activated v]\nif <(LEVEL) = [11]> then\n    set [xv v] to [-10]\n    set [yv v] to [7]\n    think [I don't want to!] for (2) seconds\nend\n\nwhen I receive [quiz v]\nwait until <(Quiz) = [2]>\nrepeat until <(Question Number) > [20]>\n    think (item (Question Number) of [questions v])\nend\nthink []\n\nwhen I receive [game over... v]\nhide\n\n@Virus Logo\n\nwhen flag clicked\nstart\n\nwhen I receive [gamestart v]\nclear graphic effects\nhide\nstop [other scripts in sprite v]\n\ndefine start\nswitch costume to (virus logo2 v)\nhide\ngo to x: (0) y: (90)\nset [ghost v] effect to (90)\nshow\nrepeat (18)\n    wait (0.03) seconds\n    change [ghost v] effect by (-5)\nend\nforever\n    repeat (20)\n        wait (0.03) seconds\n        change [brightness v] effect by (5)\n    end\n    wait (pick random (1) to (1.25)) seconds\n    repeat (20)\n        wait (0.03) seconds\n        change [brightness v] effect by (-5)\n    end\n    wait (pick random (5) to (10)) seconds\nend\n\nwhen I receive [game over... v]\nwait (2) seconds\nstart\n\n@Start Button\n\nwhen flag clicked\nstart\n\nwhen this sprite clicked\nbroadcast (GAMESTART v)\nhide\nstop [other scripts in sprite v]\n\ndefine start\nhide\nclear graphic effects\nset [brightness v] effect to (100)\ngo to x: (0) y: (-120)\nwait (2) seconds\nshow\nrepeat (20)\n    wait (0.02) seconds\n    change [brightness v] effect by (-5)\nend\nforever\n    if <touching (mouse-pointer v)?> then\n        repeat (20)\n            change [brightness v] effect by (5)\n        end\n        wait until <not <touching (mouse-pointer v)?>>\n        repeat (10)\n            change [brightness v] effect by (-10)\n        end\n    end\nend\n\nwhen I receive [game over... v]\nwait (2) seconds\nstart\n\n@Cutscene Character 1\n\nwhen I receive [cutscene v]\nclear graphic effects\nif <(CUTSCENE) = [0]> then\n    wait (0.5) seconds\n    switch costume to (creator v)\n    go to x: (0) y: (0)\n    set size to (150) %\n    show\n    set [brightness v] effect to (100)\n    repeat (20)\n        change [brightness v] effect by (-5)\n    end\nend\nif <(CUTSCENE) = [2]> then\n    wait (0.5) seconds\n    switch costume to (creator v)\n    go to x: (0) y: (0)\n    set size to (150) %\n    show\n    set [brightness v] effect to (100)\n    repeat (20)\n        change [brightness v] effect by (-5)\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [text gone v]\nif <(CUTSCENE) = [0]> then\n    start sound [Teleport2 v]\n    wait (0.1) seconds\n    repeat (40)\n        change [pixelate v] effect by (2.5)\n        change [ghost v] effect by (2.5)\n    end\n    hide\nend\nif <(CUTSCENE) = [2]> then\n    start sound [Teleport2 v]\n    wait (0.1) seconds\n    repeat (40)\n        change [pixelate v] effect by (2.5)\n        change [ghost v] effect by (2.5)\n    end\n    hide\nend\n\n@Text\n\nwhen flag clicked\nhide\n\nwhen I receive [cutscene v]\ngo to [front v] layer\nif <(CUTSCENE) = [0]> then\n    go to x: (-8) y: (-88)\n    switch costume to (0 1 v)\n    appear\n    continue until [5]\n    broadcast (Text Gone v)\nend\nif <(CUTSCENE) = [1]> then\n    switch costume to (0 6 v)\n    set y to (200)\n    appear\n    continue until [8]\n    broadcast (Activated v)\n    wait (2.5) seconds\n    appear\n    continue until [12]\n    broadcast (Text Gone v)\nend\nif <(CUTSCENE) = [2]> then\n    switch costume to (0 13 v)\n    go to x: (-8) y: (-88)\n    appear\n    continue until [17]\n    broadcast (Text Gone v)\nend\nif <(CUTSCENE) = [3]> then\n    switch costume to (0 18 v)\n    set y to (200)\n    appear\n    continue until [19]\n    wait (0.2) seconds\n    broadcast (Virus Clones v)\n    wait (2) seconds\n    appear\n    continue until [21]\n    broadcast (PLAYERSTART v)\nend\n\ndefine appear\nclear graphic effects\nset [pixelate v] effect to (100)\nset [ghost v] effect to (75)\ngo to [front v] layer\nshow\nset [pitch v] effect to (-100)\nstart sound [Magic Spell v]\nrepeat (20)\n    change [pixelate v] effect by (-5)\n    change [ghost v] effect by (-3.75)\nend\n\ndefine continue until (costume number)\nwait (1) seconds\nrepeat until <(costume [number v]) = (costume number)>\n    wait until <<key (space v) pressed?> or <mouse down?>>\n    next costume\n    start sound [pop v]\n    wait (0.5) seconds\nend\nwait until <<key (space v) pressed?> or <mouse down?>>\nrepeat (20)\n    change [pixelate v] effect by (5)\n    change [ghost v] effect by (3.75)\nend\nhide\nnext costume\n\nwhen I receive [activated v]\nif <(LEVEL) = [11]> then\n    wait (1) seconds\n    appear\n    continue until [27]\n    broadcast (Quiz v)\nend\n\nwhen I receive [quiz done v]\nif <(LEVEL) = [11]> then\n    wait (1) seconds\n    appear\n    continue until [33]\n    broadcast (Won Game v)\nend\n\n@Tip\n\nwhen flag clicked\nFollow\n\nwhen I receive [interact v]\nif <not <(costume [name v]) = [No Tip]>> then\n    repeat (10)\n        change size by (-4)\n    end\n    hide\nend\nswitch costume to (interact v)\nset size to (0) %\nshow\nrepeat (10)\n    change size by (4)\nend\n\nwhen I receive [next level v]\ngo to [front v] layer\ngo [backward v] (1) layers\nif <(LEVEL) = [0]> then\n    wait (3) seconds\n    switch costume to (controls v)\n    set size to (0) %\n    show\n    repeat (20)\n        change size by (2)\n    end\nend\n\nwhen I receive [no tip v]\nif <not <(costume [name v]) = [No Tip]>> then\n    repeat (10)\n        change size by (-4)\n    end\n    switch costume to (no tip v)\nend\n\ndefine Follow\nhide\nforever\n    go to (virus v)\nend\n\n@Interactable\n\nwhen flag clicked\nset [xposition v] to [1111]\nswitch costume to (hidden v)\nshow\npoint in direction (90)\n\nwhen I receive [next level v]\nrun\n\ndefine appear\nset [brightness v] effect to (100)\nshow\nrepeat (20)\n    change [brightness v] effect by (-5)\nend\n\ndefine run\nhide\nif <(LEVEL) = [0]> then\n    wait (2) seconds\n    go to x: (68) y: (-133)\n    forever\n        if <touching (virus v)?> then\n            broadcast (Interact v)\n            repeat until <not <touching (virus v)?>>\n                if <key (space v) pressed?> then\n                    forever\n                        broadcast (Book v)\n                        broadcast (No Tip v)\n                        repeat (10)\n                            change size by (-2)\n                            change [brightness v] effect by (5)\n                        end\n                        switch costume to (hidden v)\n                        stop [other scripts in sprite v]\n                        stop [this script v]\n                    end\n                end\n            end\n            broadcast (No Tip v)\n        end\n    end\nend\nif <(LEVEL) = [2]> then\n    go to x: (-32) y: (53)\n    create clone of (_myself_ v)\n    switch costume to (computer 1 v)\n    wait (2) seconds\n    go to x: (-208) y: (111)\n    forever\n        if <touching (virus v)?> then\n            broadcast (Interact v)\n            repeat until <not <touching (virus v)?>>\n                if <key (space v) pressed?> then\n                    repeat (20)\n                        change [brightness v] effect by (5)\n                    end\n                    switch costume to (computer 2 v)\n                    repeat (10)\n                        change [brightness v] effect by (-10)\n                    end\n                    broadcast (Activated v)\n                    broadcast (No Tip v)\n                    computer blink\n                end\n            end\n            broadcast (No Tip v)\n        end\n    end\nend\nif <(LEVEL) = [3]> then\n    set [xposition v] to [1111]\n    set [clone number v] to [0]\n    go to x: (0) y: (-152)\n    switch costume to (data 1 v)\n    create clone of (_myself_ v)\n    wait (2) seconds\n    cutscene 1 interaction\nend\nif <(LEVEL) = [4]> then\n    go to x: (204) y: (-150)\n    wait (2) seconds\n    forever\n        if <touching (virus v)?> then\n            broadcast (Interact v)\n            repeat until <not <touching (virus v)?>>\n                if <key (space v) pressed?> then\n                    repeat (20)\n                        change [brightness v] effect by (5)\n                    end\n                    switch costume to (computer 2 v)\n                    repeat (10)\n                        change [brightness v] effect by (-10)\n                    end\n                    broadcast (Activated v)\n                    broadcast (Portal v)\n                    broadcast (No Tip v)\n                    computer blink\n                end\n            end\n            broadcast (No Tip v)\n        end\n    end\nend\nif <(LEVEL) = [6]> then\n    switch costume to (blue button v)\n    go to x: (225) y: (-46)\n    wait (2) seconds\n    forever\n        if <touching (virus v)?> then\n            broadcast (Interact v)\n            repeat until <not <touching (virus v)?>>\n                if <key (space v) pressed?> then\n                    repeat (20)\n                        change [brightness v] effect by (5)\n                    end\n                    switch costume to (blue button pressed v)\n                    repeat (10)\n                        change [brightness v] effect by (-10)\n                    end\n                    broadcast (Portal v)\n                    broadcast (No Tip v)\n                    create clone of (_myself_ v)\n                    stop [this script v]\n                end\n            end\n            broadcast (No Tip v)\n        end\n    end\nend\nif <(LEVEL) = [7]> then\n    go to x: (-197) y: (-122)\n    wait (2) seconds\n    forever\n        if <touching (virus v)?> then\n            broadcast (Interact v)\n            repeat until <not <touching (virus v)?>>\n                if <key (space v) pressed?> then\n                    repeat (20)\n                        change [brightness v] effect by (5)\n                    end\n                    switch costume to (monitor 2 v)\n                    repeat (10)\n                        change [brightness v] effect by (-10)\n                    end\n                    broadcast (Activated v)\n                    broadcast (Portal v)\n                    broadcast (No Tip v)\n                    monitor blink\n                end\n            end\n            broadcast (No Tip v)\n        end\n    end\nend\nif <(LEVEL) = [8]> then\n    create clone of (_myself_ v)\n    switch costume to (blue button v)\n    go to x: (224) y: (37)\n    wait (2) seconds\n    forever\n        if <touching (virus v)?> then\n            broadcast (Interact v)\n            repeat until <not <touching (virus v)?>>\n                if <key (space v) pressed?> then\n                    repeat (20)\n                        change [brightness v] effect by (5)\n                    end\n                    switch costume to (blue button pressed v)\n                    repeat (10)\n                        change [brightness v] effect by (-10)\n                    end\n                    broadcast (Activated v)\n                    broadcast (No Tip v)\n                    stop [this script v]\n                end\n            end\n            broadcast (No Tip v)\n        end\n    end\nend\nif <(LEVEL) = [9]> then\n    set [clone number v] to [1]\n    switch costume to (antivirus creator v)\n    go to x: (157) y: (-170)\n    create clone of (_myself_ v)\n    set [clone number v] to [0]\n    switch costume to (blue button v)\n    go to x: (211) y: (-164)\n    wait (2) seconds\n    forever\n        if <touching (virus v)?> then\n            broadcast (Interact v)\n            repeat until <not <touching (virus v)?>>\n                if <key (space v) pressed?> then\n                    repeat (20)\n                        change [brightness v] effect by (5)\n                    end\n                    switch costume to (blue button pressed v)\n                    repeat (10)\n                        change [brightness v] effect by (-10)\n                    end\n                    broadcast (Activated v)\n                    broadcast (Portal v)\n                    broadcast (No Tip v)\n                    set [clone number v] to [2]\n                    create clone of (_myself_ v)\n                    stop [this script v]\n                end\n            end\n            broadcast (No Tip v)\n        end\n    end\nend\nif <(LEVEL) = [11]> then\n    switch costume to (blue button v)\n    go to x: (220) y: (24)\n    wait (2) seconds\n    forever\n        if <touching (virus v)?> then\n            broadcast (Interact v)\n            repeat until <not <touching (virus v)?>>\n                if <key (space v) pressed?> then\n                    repeat (20)\n                        change [brightness v] effect by (5)\n                    end\n                    repeat (10)\n                        change [brightness v] effect by (-10)\n                    end\n                    broadcast (Activated v)\n                    broadcast (No Tip v)\n                    stop [this script v]\n                end\n            end\n            broadcast (No Tip v)\n        end\n    end\nend\n\nwhen I receive [next level v]\nif <(LEVEL) = [0]> then\n    wait (2) seconds\n    hide\n    switch costume to (book v)\n    book appear\nend\nif <(LEVEL) = [2]> then\n    wait (2) seconds\n    switch costume to (computer 1 v)\n    set size to (400) %\n    appear\nend\nif <(LEVEL) = [3]> then\n    hide\n    switch costume to (data 1 v)\n    set size to (15) %\n    wait (2) seconds\n    appear\nend\nif <(LEVEL) = [4]> then\n    hide\n    switch costume to (computer 1 v)\n    set size to (400) %\n    wait (2) seconds\n    appear\nend\nif <(LEVEL) = [6]> then\n    hide\n    switch costume to (blue button v)\n    set size to (400) %\n    wait (2) seconds\n    appear\nend\nif <(LEVEL) = [7]> then\n    hide\n    switch costume to (monitor 1 v)\n    set size to (400) %\n    wait (2) seconds\n    appear\nend\nif <(LEVEL) = [8]> then\n    hide\n    set size to (400) %\n    wait (2) seconds\n    appear\nend\nif <(LEVEL) = [9]> then\n    hide\n    set size to (400) %\n    wait (2) seconds\n    appear\nend\nif <(LEVEL) = [11]> then\n    hide\n    set size to (400) %\n    wait (2) seconds\n    appear\nend\n\nwhen I receive [book closed v]\nif <(LEVEL) = [0]> then\n    broadcast (Portal v)\nend\n\nwhen I start as a clone\nif <(LEVEL) = [2]> then\n    switch costume to (book v)\n    wait (2) seconds\n    book appear\nend\nif <(LEVEL) = [3]> then\n    hide\n    set size to (15) %\n    change [clone number v] by (1)\n    if <(Clone Number) = [1]> then\n        change x by (-60)\n        create clone of (_myself_ v)\n        change x by (120)\n    end\n    if <(Clone Number) = [2]> then\n        create clone of (_myself_ v)\n    end\n    if <(Clone Number) < [3]> then\n        wait (2) seconds\n        if <(XPosition) = [1111]> then\n            appear\n            cutscene 1 interaction\n        end\n    else\n        if <(Clone Number) = [4]> then\n            switch costume to (search droid v)\n            set size to (30) %\n            go to x: (250) y: (-126)\n            show\n            set [xposition v] to [-71]\n            forever\n                glide (2) secs to x: (XPosition) y: (-118)\n                if <(XPosition) = [500]> then\n                    forever\n                        repeat (20)\n                            change [ghost v] effect by (5)\n                        end\n                        hide\n                        delete this clone\n                    end\n                end\n            end\n        else\n            wait (2) seconds\n            go to x: (0) y: (139)\n            book appear\n        end\n    end\nend\nif <(LEVEL) = [6]> then\n    go to x: (199) y: (-131)\n    broadcast (Activated v)\n    book appear\nend\nif <(LEVEL) = [8]> then\n    go to x: (-206) y: (62)\n    wait (2) seconds\n    book appear\nend\nif <(LEVEL) = [9]> then\n    if <(Clone Number) = [1]> then\n        set size to (100) %\n        wait (2) seconds\n        show\n    else\n        go to x: (204) y: (-44)\n        book appear\n    end\nend\n\ndefine book appear\nset [brightness v] effect to (100)\nswitch costume to (book v)\nset size to (20) %\nshow\nrepeat (20)\n    change [brightness v] effect by (-5)\nend\nforever\n    repeat (10)\n        wait (0.03) seconds\n        change y by (-1)\n    end\n    repeat (10)\n        wait (0.03) seconds\n        change y by (1)\n    end\nend\n\nwhen I receive [activated v]\nif <(LEVEL) = [3]> then\n    set [clone number v] to [3]\n    create clone of (_myself_ v)\nend\n\nwhen I receive [text gone v]\nif <(LEVEL) = [3]> then\n    set [xposition v] to [250]\n    set [max jumps in air v] to [1]\n    broadcast (PLAYERSTART v)\n    wait (2) seconds\n    set [xposition v] to [500]\nend\n\ndefine float (distance)\nforever\n    repeat (20)\n        change y by (distance)\n    end\n    repeat (20)\n        change y by ((distance) * (-1))\n    end\nend\n\ndefine cutscene 1 interaction\nforever\n    if <(XPosition) = [1111]> then\n        if <touching (virus v)?> then\n            broadcast (Interact v)\n            repeat until <not <touching (virus v)?>>\n                if <key (space v) pressed?> then\n                    forever\n                        set [xposition v] to [2222]\n                        set [cutscene v] to [1]\n                        broadcast (CUTSCENE v)\n                        broadcast (No Tip v)\n                        stop [other scripts in sprite v]\n                        stop [this script v]\n                    end\n                end\n            end\n            broadcast (No Tip v)\n        end\n    else\n        stop [this script v]\n    end\nend\n\ndefine computer blink\nforever\n    wait (.5) seconds\n    switch costume to (computer 3 v)\n    wait (.25) seconds\n    switch costume to (computer 2 v)\nend\n\nwhen I receive [game over... v]\nrepeat (20)\n    change [brightness v] effect by (-2)\nend\nwait (2) seconds\nstop [other scripts in sprite v]\nswitch costume to (hidden v)\nset [xposition v] to [1111]\ndelete this clone\n\nwhen I start as a clone\nif <(LEVEL) = [2]> then\n    book interaction\nend\nif <(LEVEL) = [3]> then\n    if <(Clone Number) = [3]> then\n        book interaction\n    end\nend\nif <(LEVEL) = [6]> then\n    book interaction\nend\nif <(LEVEL) = [8]> then\n    book interaction\nend\nif <<(LEVEL) = [9]> and <(Clone Number) = [2]>> then\n    book interaction\nend\n\ndefine book interaction\nforever\n    if <touching (virus v)?> then\n        broadcast (Interact v)\n        repeat until <not <touching (virus v)?>>\n            if <key (space v) pressed?> then\n                forever\n                    broadcast (Book v)\n                    broadcast (No Tip v)\n                    repeat (10)\n                        change size by (-2)\n                        change [brightness v] effect by (5)\n                    end\n                    delete this clone\n                end\n            end\n        end\n        broadcast (No Tip v)\n    end\nend\n\nwhen I receive [book v]\nrepeat (20)\n    change [brightness v] effect by (-3)\nend\n\nwhen I receive [book closed v]\nrepeat (20)\n    change [brightness v] effect by (3)\nend\n\nwhen I receive [next level v]\ndelete this clone\n\ndefine monitor blink\nforever\n    wait (.5) seconds\n    switch costume to (monitor 3 v)\n    wait (.25) seconds\n    switch costume to (monitor 2 v)\nend\n\nwhen I receive [clone spawning v]\nif <(Clone Number) = [1]> then\n    clear graphic effects\n    wait (1.5) seconds\n    repeat (10)\n        change [brightness v] effect by (3)\n    end\n    wait (.5) seconds\n    repeat (10)\n        change [brightness v] effect by (-3)\n    end\nend\n\n@Portal\n\nwhen flag clicked\ndelete all of [non-instant portal levels v]\nadd [0] to [non-instant portal levels v]\nadd [4] to [non-instant portal levels v]\nadd [5] to [non-instant portal levels v]\nadd [6] to [non-instant portal levels v]\nadd [7] to [non-instant portal levels v]\nadd [9] to [non-instant portal levels v]\nadd [10] to [non-instant portal levels v]\nswitch costume to (hidden v)\nset size to (20) %\nhide\npoint in direction (90)\n\ndefine appear\nclear graphic effects\nset [brightness v] effect to (100)\nswitch costume to (portal v)\nset size to (20) %\ngo to [front v] layer\ngo [backward v] (1) layers\nshow\nrepeat (20)\n    change [brightness v] effect by (-5)\nend\nforever\n    repeat (10)\n        wait (0.03) seconds\n        change y by (-1)\n        change [brightness v] effect by (-1)\n    end\n    repeat (10)\n        wait (0.03) seconds\n        change y by (1)\n        change [brightness v] effect by (1)\n    end\nend\n\ndefine run\nswitch costume to (portal v)\nwait (0.5) seconds\nforever\n    if <touching (virus v)?> then\n        forever\n            change [level v] by (1)\n            broadcast (Next Level v)\n            repeat (20)\n                change [ghost v] effect by (5)\n            end\n            clear graphic effects\n            stop [this script v]\n        end\n    end\nend\n\nwhen I receive [portal v]\nif <(LEVEL) = [0]> then\n    go to x: (201) y: (118)\n    wait (2) seconds\n    appear\nend\nif <(LEVEL) = [1]> then\n    go to x: (202) y: (-117)\n    wait (2) seconds\n    appear\nend\nif <(LEVEL) = [2]> then\n    go to x: (202) y: (-117)\n    wait (2) seconds\n    appear\nend\nif <(LEVEL) = [3]> then\n    go to x: (0) y: (53)\n    wait (2) seconds\n    appear\nend\nif <(LEVEL) = [4]> then\n    go to x: (-133) y: (135)\n    wait (2) seconds\n    appear\nend\nif <(LEVEL) = [6]> then\n    go to x: (215) y: (111)\n    appear\nend\nif <(LEVEL) = [7]> then\n    go to x: (217) y: (100)\n    appear\nend\nif <(LEVEL) = [8]> then\n    go to x: (206) y: (-114)\n    wait (2) seconds\n    appear\nend\nif <(LEVEL) = [9]> then\n    go to x: (215) y: (111)\n    appear\nend\nif <(LEVEL) = [10]> then\n    go to x: (0) y: (132)\n    appear\nend\n\nwhen I receive [portal v]\nrun\n\nwhen I receive [book v]\nrepeat (20)\n    change [brightness v] effect by (-3)\nend\n\nwhen I receive [book closed v]\nrepeat (20)\n    change [brightness v] effect by (3)\nend\n\nwhen I receive [next level v]\nhide\nif <not <[non-instant portal levels v] contains (LEVEL)?>> then\n    broadcast (Portal v)\nend\n\nwhen I receive [game over... v]\nwait (2) seconds\nhide\n\n@Book of Elon Musk\n\nwhen flag clicked\nhide\nset [book open v] to [0]\n\nwhen I receive [book v]\nset [book open v] to [1]\nif <(LEVEL) = [0]> then\n    set [pages v] to [1]\nend\nif <(LEVEL) = [2]> then\n    set [pages v] to [1]\nend\nif <(LEVEL) = [3]> then\n    set [pages v] to [3]\nend\nif <(LEVEL) = [6]> then\n    set [pages v] to [2]\nend\nif <(LEVEL) = [8]> then\n    set [pages v] to [1]\nend\nif <(LEVEL) = [9]> then\n    set [pages v] to [2]\nend\ngo to [front v] layer\ngo to x: (0) y: (0)\nset [ghost v] effect to (100)\nshow\nrepeat (20)\n    change [ghost v] effect by (-5)\nend\nrepeat until <(pages) < [2]>\n    wait until <<key (any v) pressed?> or <mouse down?>>\n    broadcast (Book Flipped v)\n    repeat (17)\n        next costume\n    end\n    change [pages v] by (-1)\n    wait (1) seconds\nend\nif <(LEVEL) = [6]> then\n    broadcast (Book Inteference v)\n    repeat (17)\n        next costume\n    end\n    wait (3) seconds\n    wait until <<key (any v) pressed?> or <mouse down?>>\n    Close Book\n    stop [this script v]\nelse\n    wait until <<key (any v) pressed?> or <mouse down?>>\n    Close Book\nend\n\ndefine Close Book\nbroadcast (Book Closed v)\nrepeat (20)\n    change [ghost v] effect by (-5)\n    hide\nend\nset [book open v] to [0]\n\n@Book Text\n\nwhen I receive [book v]\nwait (.75) seconds\nset [brightness v] effect to (100)\nset [ghost v] effect to (40)\ngo to [front v] layer\nswitch costume to (join [B] (LEVEL))\nshow\nrepeat (20)\n    change [brightness v] effect by (-5)\n    change [ghost v] effect by (-2)\nend\n\nwhen flag clicked\nhide\ngo to x: (0) y: (0)\n\nwhen I receive [book closed v]\nstop [other scripts in sprite v]\nhide\ndelete this clone\n\nwhen I receive [book flipped v]\nhide\nset [brightness v] effect to (100)\nset [ghost v] effect to (40)\ngo to [front v] layer\nnext costume\nwait (.75) seconds\nshow\nrepeat (20)\n    change [brightness v] effect by (-5)\n    change [ghost v] effect by (-2)\nend\n\nwhen I receive [book inteference v]\nif <(LEVEL) = [6]> then\n    hide\n    set [brightness v] effect to (100)\n    set [ghost v] effect to (40)\n    go to [front v] layer\n    next costume\n    create clone of (_myself_ v)\n    wait (.75) seconds\n    show\n    repeat (20)\n        change [brightness v] effect by (-5)\n        change [ghost v] effect by (-2)\n    end\n    wait (0.1) seconds\n    repeat (20)\n        change [pixelate v] effect by (5)\n    end\n    switch costume to (b6 5 v)\n    repeat (20)\n        change [pixelate v] effect by (-5)\n    end\nend\n\nwhen I start as a clone\nif <(LEVEL) = [6]> then\n    next costume\n    wait (.75) seconds\n    show\n    repeat (20)\n        change [brightness v] effect by (-5)\n        change [ghost v] effect by (-2)\n    end\nend\n\n@Static Tip\n\nwhen flag clicked\nclear graphic effects\nset size to (100) %\nswitch costume to (no tip v)\nshow\n\nwhen I receive [next level v]\ngo to [front v] layer\ngo [backward v] (2) layers\nswitch costume to (no tip v)\nstop [other scripts in sprite v]\nhide\nif <(LEVEL) = [0]> then\n    switch costume to (1 v)\n    go to x: (-24) y: (-30)\n    wait (2) seconds\nend\nif <(LEVEL) = [1]> then\n    switch costume to (2 v)\n    go to x: (81) y: (-256)\n    wait (2) seconds\nend\nif <not <(costume [name v]) = [No Tip]>> then\n    set [ghost v] effect to (100)\n    show\n    repeat (20)\n        change [ghost v] effect by (-5)\n    end\n    forever\n        repeat (20)\n            change [brightness v] effect by (1)\n        end\n        wait (0.1) seconds\n        repeat (20)\n            change [brightness v] effect by (-1)\n        end\n    end\nend\nif <not <(costume [name v]) = [No Tip]>> then\n    set [ghost v] effect to (100)\n    show\n    repeat (20)\n        change [ghost v] effect by (-5)\n    end\n    forever\n        repeat (20)\n            change [brightness v] effect by (1)\n        end\n        wait (0.1) seconds\n        repeat (20)\n            change [brightness v] effect by (-1)\n        end\n    end\nend\n\nwhen I receive [book v]\nrepeat (20)\n    change [brightness v] effect by (-3)\nend\n\nwhen I receive [book closed v]\nrepeat (20)\n    change [brightness v] effect by (3)\nend\n\nwhen I receive [game over... v]\nclear graphic effects\nset size to (100) %\nswitch costume to (no tip v)\nshow\n\n@Glitch\n\nwhen flag clicked\nset [extra brightness v] to [0]\ndelete all of [levels activated v]\nadd [1] to [levels activated v]\nadd [2] to [levels activated v]\nadd [4] to [levels activated v]\nadd [7] to [levels activated v]\nadd [8] to [levels activated v]\nadd [9] to [levels activated v]\ngo to x: (0) y: (0)\nhide\nStart animation\n\nwhen I receive [next level v]\nswitch costume to (nothing v)\nclear graphic effects\ngo to [back v] layer\nif <[levels activated v] contains (LEVEL)?> then\n    wait (2) seconds\n    switch costume to (join [G] (LEVEL))\n    show\n    forever\n        if <touching (virus v)?> then\n            broadcast (Hit v)\n        end\n    end\nend\n\nwhen I receive [activated v]\nif <(LEVEL) = [2]> then\n    switch costume to (nothing v)\nend\nif <(LEVEL) = [4]> then\n    switch costume to (nothing v)\nend\nif <(LEVEL) = [7]> then\n    switch costume to (nothing v)\nend\nif <(LEVEL) = [8]> then\n    switch costume to (nothing v)\nend\nif <(LEVEL) = [9]> then\n    switch costume to (nothing v)\nend\n\nwhen I receive [book v]\nrepeat (20)\n    change [extra brightness v] by (-3)\n    change [brightness v] effect by (-3)\nend\n\nwhen I receive [book closed v]\nrepeat (20)\n    change [extra brightness v] by (3)\n    change [brightness v] effect by (3)\nend\n\nwhen I receive [game over... v]\nstop [other scripts in sprite v]\nhide\nwait (2) seconds\nStart animation\n\ndefine Start animation\nforever\n    wait (pick random (0.1) to (2)) seconds\n    repeat (30)\n        change [pixelate v] effect by (10)\n        change [brightness v] effect by (0.05)\n        change [fisheye v] effect by (5)\n        change [whirl v] effect by (5)\n    end\n    set [pixelate v] effect to (0)\n    set [brightness v] effect to ((0) + (extra brightness))\n    set [fisheye v] effect to (0)\n    set [whirl v] effect to (0)\nend\n\n@Jump Pad\n\ndefine press (short or long)\nswitch costume to (join (short or long) [ Pressed])\nwait until <not <touching (virus v)?>>\nwait (.5) seconds\nswitch costume to (short or long)\n\nwhen flag clicked\nhide\n\nwhen I receive [next level v]\nhide\nif <(LEVEL) = [6]> then\n    set [power v] to [22]\n    switch costume to (long v)\n    wait (2) seconds\n    go to x: (-184) y: (-166)\n    show\nelse\n    if <(LEVEL) = [7]> then\n        set [power v] to [27]\n        switch costume to (short v)\n        create clone of (_myself_ v)\n        wait (2) seconds\n        go to x: (-85) y: (-166)\n        show\n    else\n        if <(LEVEL) = [9]> then\n            set [power v] to [23]\n            go to x: (-150) y: (-166)\n            switch costume to (short v)\n            repeat (3)\n                create clone of (_myself_ v)\n                change x by (80)\n            end\n            wait (2) seconds\n            show\n        else\n            stop [other scripts in sprite v]\n        end\n    end\nend\nforever\n    if <<touching (virus v)?> and <(costume [number v]) > [2]>> then\n        set [yv v] to (Power)\n        set [jumps in air v] to [0]\n        start sound [Big Boing v]\n        press (costume [name v])\n    end\nend\n\nwhen I receive [game over... v]\nwait (2) seconds\nhide\n\nwhen I start as a clone\nif <(LEVEL) = [7]> then\n    wait (2) seconds\n    go to x: (-2) y: (-166)\n    show\nend\nif <(LEVEL) = [9]> then\n    wait (2) seconds\n    show\nend\nforever\n    if <<touching (virus v)?> and <(costume [number v]) > [2]>> then\n        set [yv v] to (Power)\n        set [jumps in air v] to [0]\n        start sound [Big Boing v]\n        press (costume [name v])\n    end\nend\n\nwhen I receive [book v]\nrepeat (20)\n    change [brightness v] effect by (-3)\nend\n\nwhen I receive [book closed v]\nrepeat (20)\n    change [brightness v] effect by (3)\nend\n\nwhen I receive [next level v]\ndelete this clone\n\n@Gravity Pad\n\ndefine press (short or long)\nswitch costume to (join (short or long) [ Pressed])\nwait until <not <touching (virus v)?>>\nwait (.5) seconds\nswitch costume to (short or long)\n\nwhen flag clicked\nhide\nset rotation style [all around v]\n\nwhen I receive [next level v]\nhide\nif <(LEVEL) = [8]> then\n    switch costume to (short v)\n    wait (2) seconds\n    point in direction (-90)\n    go to x: (-180) y: (106)\n    create clone of (_myself_ v)\n    go to x: (180) y: (106)\n    create clone of (_myself_ v)\n    go to x: (0) y: (167)\n    show\n    effect\nend\n\nwhen I receive [game over... v]\nwait (2) seconds\nhide\n\nwhen I start as a clone\nif <(LEVEL) = [8]> then\n    wait (2) seconds\n    show\nend\nforever\n    if <<touching (virus v)?> and <(costume [number v]) < [3]>> then\n        set [gravity v] to ((-1) * (Gravity))\n        set [jumps in air v] to [0]\n        start sound [Teleport v]\n        press (costume [name v])\n    end\nend\n\nwhen I receive [book v]\nrepeat (20)\n    change [brightness v] effect by (-3)\nend\n\nwhen I receive [book closed v]\nrepeat (20)\n    change [brightness v] effect by (3)\nend\n\nwhen I receive [next level v]\ndelete this clone\n\nwhen I start as a clone\nif <(LEVEL) = [8]> then\n    point in direction (90)\nend\nshow\neffect\n\ndefine effect\nforever\n    if <<touching (virus v)?> and <(costume [number v]) > [2]>> then\n        set [gravity v] to (([abs v] of (direction) ) / (direction))\n        set [jumps in air v] to [0]\n        start sound [Teleport v]\n        repeat (10)\n            change [brightness v] effect by (3)\n        end\n        wait (.3) seconds\n        repeat (10)\n            change [brightness v] effect by (-3)\n        end\n    end\nend\n\n@Flying Antivirus\n\ndefine Explode\nstart sound [Enemy_Dies v]\nset size to (100) %\nswitch costume to (costume3 v)\nrepeat (5)\n    next costume\n    wait (0.01) seconds\nend\ndelete this clone\n\nwhen I receive [antivirus touch check 2 v]\nforever\n    if <touching (virus v)?> then\n        if <<(yV) < [0]> and <((y position) + (19)) < ([y position v] of [virus v])>> then\n            set [dead v] to [1]\n            stop [other scripts in sprite v]\n            set [yv v] to [7]\n            Explode\n            hide\n            stop [this script v]\n        else\n            change [health v] by (-1)\n            broadcast (Hit 2 v)\n            set [xv v] to ((([abs v] of (xV) ) + (10)) * (([abs v] of (direction) ) / (direction)))\n            set [yv v] to ((([abs v] of (yV) ) + (10)) * (([abs v] of (yV) ) / (yV)))\n            wait (0.2) seconds\n        end\n    end\nend\n\nwhen flag clicked\nset rotation style [left-right v]\nStart\n\nwhen I receive [next level v]\nhide\nset size to (250) %\nswitch costume to (enemy_set v)\nset [dead v] to [1]\nwait (0.001) seconds\nstop [other scripts in sprite v]\nset [spotted v] to [0]\nif <(LEVEL) = [7]> then\n    go to x: (200) y: (98)\n    point in direction (-90)\n    appear\n    set [dead v] to [0]\n    broadcast (Antivirus Float v)\n    broadcast (Antivirus Touch Check 2 v)\n    forever\n        patrol [70]\n        wait (1) seconds\n        point in direction ((direction) * (-1))\n    end\nend\nif <(LEVEL) = [8]> then\n    go to x: (-212) y: (-9)\n    point in direction (90)\n    create clone of (_myself_ v)\n    go to x: (212) y: (-9)\n    point in direction (90)\n    appear\n    set [dead v] to [0]\n    broadcast (Antivirus Float v)\n    broadcast (Antivirus Touch Check 2 v)\n    forever\n        patrol [18]\n        wait (1) seconds\n        point in direction ((direction) * (-1))\n    end\nend\nif <(LEVEL) = [9]> then\n    go to x: (200) y: (40)\n    point in direction (-90)\n    appear\n    set [dead v] to [0]\n    broadcast (Antivirus Float v)\n    broadcast (Antivirus Touch Check 2 v)\n    forever\n        patrol [200]\n        wait (1) seconds\n        point in direction ((direction) * (-1))\n    end\nend\n\nwhen I receive [antivirus float v]\nforever\n    repeat (10)\n        wait (.03) seconds\n        change y by (1)\n        if <(costume [number v]) < [9]> then\n            next costume\n        else\n            switch costume to (enemy_set v)\n        end\n    end\n    repeat (10)\n        wait (.03) seconds\n        change y by (-1)\n        if <(costume [number v]) < [9]> then\n            next costume\n        else\n            switch costume to (enemy_set v)\n        end\n    end\nend\n\nwhen I receive [spotted v]\nif <(Dead) = [0]> then\n    stop [other scripts in sprite v]\n    broadcast (Antivirus Touch Check 2 v)\n    broadcast (Antivirus Float v)\n    repeat (5)\n        change [brightness v] effect by (15)\n    end\n    repeat (5)\n        change [brightness v] effect by (-15)\n    end\n    repeat until <not <(Dead) = [0]>>\n        point towards (virus v)\n        start sound [Low Whoosh v]\n        move (4) steps\n    end\nend\n\ndefine patrol (iterations)\nrepeat (iterations)\n    change x by ((2) * (([abs v] of (direction) ) / (direction)))\nend\n\nwhen I receive [game over... v]\nstop [other scripts in sprite v]\nStart\n\ndefine Start\nhide\nset size to (250) %\n\nwhen I receive [next level v]\ndelete this clone\n\nwhen I start as a clone\nset [dead v] to [0]\nif <(LEVEL) = [10]> then\n    go to x: ([x position v] of [boss antivirus v]) y: (-57)\n    go to [front v] layer\n    go [backward v] (1) layers\n    show\n    broadcast (Antivirus Touch Check 2 v)\n    broadcast (Antivirus Float v)\n    repeat until <not <(Dead) = [0]>>\n        point towards (virus v)\n        start sound [Low Whoosh v]\n        move (4) steps\n    end\nelse\n    appear\n    forever\n        patrol [18]\n        wait (1) seconds\n        point in direction ((direction) * (-1))\n    end\nend\n\ndefine appear\nset [brightness v] effect to (100)\nwait (2) seconds\nshow\nrepeat (20)\n    change [brightness v] effect by (-5)\nend\n\nwhen I receive [book v]\nrepeat (20)\n    change [brightness v] effect by (-3)\nend\n\nwhen I receive [book closed v]\nrepeat (20)\n    change [brightness v] effect by (3)\nend\n\n@Patrol Antivirus\n\nwhen I receive [next level v]\nstop [other scripts in sprite v]\nhide\nset [dead v] to [1]\nif <(LEVEL) = [6]> then\n    go to x: (200) y: (-32)\n    point in direction (-90)\n    wait (2) seconds\n    set [brightness v] effect to (100)\n    show\n    set [dead v] to [0]\n    repeat (20)\n        change [brightness v] effect by (-5)\n    end\n    broadcast (Antivirus Touch Check v)\n    patrol [18]\nend\nif <(LEVEL) = [7]> then\n    go to x: (197) y: (-150)\n    point in direction (-90)\n    wait (2) seconds\n    set [brightness v] effect to (100)\n    show\n    set [dead v] to [0]\n    repeat (20)\n        change [brightness v] effect by (-5)\n    end\n    broadcast (Antivirus Touch Check v)\n    patrol [9]\nend\n\nwhen flag clicked\nhide\nset size to (400) %\nswitch costume to (1 v)\n\ndefine patrol (steps)\nforever\n    repeat ((4) * (steps))\n        wait (.1) seconds\n        next costume\n        change x by ((4) * (([abs v] of (direction) ) / (direction)))\n    end\n    point in direction ((direction) * (-1))\nend\n\nwhen I receive [spotted v]\nwait (0.001) seconds\nif <(Dead) = [0]> then\n    stop [other scripts in sprite v]\n    broadcast (Antivirus Touch Check v)\n    broadcast (Antivirus Animation v)\n    switch costume to (1 v)\n    repeat (5)\n        change [brightness v] effect by (15)\n        change y by (2)\n    end\n    repeat (5)\n        change [brightness v] effect by (-15)\n        change y by (-2)\n    end\n    go to [front v] layer\n    repeat until <(Dead) = [1]>\n        create clone of (bullet 1 v)\n        start sound [Pew v]\n        wait (1) seconds\n    end\nend\n\nwhen I receive [game over... v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [antivirus touch check v]\nforever\n    if <touching (virus v)?> then\n        if <<(yV) < [0]> and <((y position) + (25)) < ([y position v] of [virus v])>> then\n            create clone of (explosion v)\n            stop [other scripts in sprite v]\n            set [dead v] to [1]\n            hide\n            set [yv v] to [7]\n            stop [this script v]\n        else\n            broadcast (Hit v)\n            change [health v] by (-1)\n            wait (2) seconds\n        end\n    end\nend\n\nwhen I receive [antivirus animation v]\nforever\n    point towards (virus v)\nend\n\nwhen I receive [book v]\nrepeat (20)\n    change [brightness v] effect by (-3)\nend\n\nwhen I receive [book closed v]\nrepeat (20)\n    change [brightness v] effect by (3)\nend\n\n@Patrol Clone\n\nwhen I receive [next level v]\nwait (1) seconds\nstop [other scripts in sprite v]\nhide\nwait (1) seconds\nif <(LEVEL) = [9]> then\n    forever\n        create clone of (_myself_ v)\n        wait (4) seconds\n    end\nend\n\nwhen flag clicked\nhide\nset size to (400) %\nswitch costume to (1 v)\n\nwhen I receive [game over... v]\nstop [other scripts in sprite v]\nhide\n\nwhen I start as a clone\nswitch costume to (1 v)\nset size to (400) %\ngo to x: (162) y: (-150)\npoint in direction (-90)\nbroadcast (Clone Spawning v)\nwait (2) seconds\nset [brightness v] effect to (100)\nshow\nrepeat (20)\n    change [brightness v] effect by (-5)\nend\npatrol\n\nwhen I receive [next level v]\ndelete this clone\n\ndefine patrol\nrepeat until <(Dead) = [1]>\n    wait (.1) seconds\n    if <(Dead) = [0]> then\n        if <(costume [number v]) < [8]> then\n            next costume\n        else\n            switch costume to (1 v)\n        end\n    end\n    change x by ((4) * (([abs v] of (direction) ) / (direction)))\n    if <touching (_edge_ v)?> then\n        repeat (20)\n            change [ghost v] effect by (5)\n        end\n        delete this clone\n    end\nend\n\nwhen I start as a clone\nforever\n    if <touching (virus v)?> then\n        if <<(yV) < [0]> and <((y position) + (25)) < ([y position v] of [virus v])>> then\n            set [yv v] to [10]\n            set [dead v] to [1]\n            Explode\n        else\n            broadcast (Hit v)\n            change [health v] by (-1)\n            wait (0.5) seconds\n        end\n    end\nend\n\ndefine Explode\nstart sound [Enemy_Dies v]\nset size to (100) %\nswitch costume to (costume3 v)\nrepeat (5)\n    next costume\n    wait (0.01) seconds\nend\ndelete this clone\n\nwhen I receive [book v]\nrepeat (20)\n    change [brightness v] effect by (-3)\nend\n\nwhen I receive [book closed v]\nrepeat (20)\n    change [brightness v] effect by (3)\nend\n\nwhen I receive [activated v]\nif <(LEVEL) = [9]> then\n    stop [other scripts in sprite v]\n    Explode\nend\n\n@LOS\n\nwhen flag clicked\nset [ghost v] effect to (100)\nhide\n\nwhen I receive [next level v]\nstop [other scripts in sprite v]\nhide\nif <<(LEVEL) = [6]> or <(LEVEL) = [7]>> then\n    wait (2) seconds\n    show\n    set rotation style [left-right v]\n    forever\n        go to (patrol antivirus v)\n        if <([direction v] of [patrol antivirus v]) < [0]> then\n            point in direction (-90)\n        else\n            point in direction (90)\n        end\n        if <<touching (virus v)?> and <([dead v] of [patrol antivirus v]) = [0]>> then\n            forever\n                broadcast (Spotted v)\n                hide\n                stop [this script v]\n            end\n        end\n    end\nend\nif <(LEVEL) = [8]> then\n    go to x: (-250) y: (-9)\n    point in direction (90)\n    wait (2) seconds\n    show\n    forever\n        if <touching (virus v)?> then\n            forever\n                broadcast (Spotted v)\n                hide\n                stop [this script v]\n            end\n        end\n    end\nend\n\nwhen I receive [spotted v]\nstop [other scripts in sprite v]\n\n@LOS2\n\nwhen flag clicked\nset [ghost v] effect to (100)\nhide\n\nwhen I receive [next level v]\nstop [other scripts in sprite v]\nhide\nif <(LEVEL) = [7]> then\n    Run\nend\nif <(LEVEL) = [9]> then\n    Run\nend\n\ndefine Run\nshow\nset rotation style [left-right v]\nforever\n    go to (flying antivirus v)\n    if <([direction v] of [flying antivirus v]) < [0]> then\n        point in direction (-90)\n    else\n        point in direction (90)\n    end\n    if <<touching (virus v)?> and <([dead v] of [flying antivirus v]) = [0]>> then\n        broadcast (Spotted v)\n        stop [this script v]\n    end\nend\n\nwhen I receive [spotted v]\nstop [other scripts in sprite v]\n\n@Bullet 1\n\nwhen flag clicked\nhide\nset size to (15) %\n\nwhen I start as a clone\ngo to [front v] layer\ngo [backward v] (1) layers\ngo to (patrol antivirus v)\npoint towards (virus v)\nshow\nrepeat (50)\n    if <touching (virus v)?> then\n        broadcast (Hit v)\n        change [health v] by (-1)\n        delete this clone\n    end\n    move (10) steps\nend\ndelete this clone\n\nwhen I receive [next level v]\ndelete this clone\n\n@HP\n\nwhen I receive [next level v]\nif <(LEVEL) = [6]> then\n    wait (2.5) seconds\n    clear graphic effects\n    set [brightness v] effect to (100)\n    show\n    repeat (20)\n        change [brightness v] effect by (-5)\n    end\nend\nif <(LEVEL) > [5]> then\n    forever\n        switch costume to (Health)\n    end\nend\n\nwhen flag clicked\nset [lives v] to [3]\nStart\n\nwhen I receive [hit v]\nif <(LEVEL) > [5]> then\n    wait (0.1) seconds\n    if <(Health) = [1]> then\n        repeat until <not <(Health) = [1]>>\n            hide\n            wait (0.4) seconds\n            show\n            wait (0.4) seconds\n        end\n    else\n        if <(Health) < [1]> then\n            switch costume to (costume6 v)\n            if <(Lives) < [1]> then\n                broadcast (game over... v)\n                stop [this script v]\n            else\n                broadcast (Died v)\n            end\n            stop [this script v]\n        end\n    end\nend\n\nwhen I receive [game over... v]\nwait (2) seconds\nStart\nclear graphic effects\n\ndefine Start\nhide\nset [health v] to [5]\nswitch costume to (costume5 v)\ngo to x: (-200) y: (152)\n\nwhen I receive [hit 2 v]\nif <(LEVEL) > [5]> then\n    wait (0.1) seconds\n    if <(Health) = [1]> then\n        repeat until <not <(Health) = [1]>>\n            set [ghost v] effect to (100)\n            wait (0.4) seconds\n            clear graphic effects\n            wait (0.4) seconds\n        end\n    else\n        if <(Health) < [1]> then\n            switch costume to (costume6 v)\n            if <(Lives) < [1]> then\n                broadcast (game over... v)\n                stop [this script v]\n            else\n                broadcast (Died v)\n            end\n            stop [this script v]\n        end\n    end\nend\n\nwhen I receive [book v]\nrepeat (20)\n    change [brightness v] effect by (-3)\nend\n\nwhen I receive [book closed v]\nrepeat (20)\n    change [brightness v] effect by (3)\nend\n\nwhen I receive [heal v]\nrepeat (5)\n    change [brightness v] effect by (10)\nend\nrepeat (5)\n    change [brightness v] effect by (-10)\nend\n\n@Game Over\n\nwhen I receive [won game v]\nstop all sounds\nset [clone number v] to [0]\nset [pitch v] effect to (150)\nstart sound [Magic Spell v]\nset size to (100) %\ngo to x: (0) y: (0)\nset [ghost v] effect to (100)\ngo to [front v] layer\nswitch costume to (game over won v)\nshow\nrepeat (20)\n    change [ghost v] effect by (-5)\n    change [brightness v] effect by (3)\nend\nwait (1.5) seconds\nchange [clone number v] by (1)\ncreate clone of (_myself_ v)\nwait (1.5) seconds\nrepeat (3)\n    change [clone number v] by (1)\n    create clone of (_myself_ v)\nend\nwait (1) seconds\nset [song v] to [2]\nbroadcast (Song Change v)\nrepeat (60)\n    change [brightness v] effect by (-2)\nend\n\nwhen flag clicked\nhide\nclear graphic effects\ngo to x: (0) y: (0)\n\nwhen I start as a clone\ngo to [front v] layer\nclear graphic effects\nset [ghost v] effect to (100)\nswitch costume to (Clone Number)\nshow\nrepeat (40)\n    change [ghost v] effect by (-2.5)\nend\n\nwhen I start as a clone\nif <(Clone Number) > [1]> then\n    set size to (20) %\n    go to x: ((-450) + ((150) * (Clone Number))) y: (0)\n    forever\n        repeat (10)\n            change size by (0.5)\n        end\n        repeat (5)\n            change size by (-1)\n        end\n    end\nelse\n    go to x: (-54) y: (87)\n    forever\n        repeat (40)\n            change [brightness v] effect by (1)\n        end\n        repeat (40)\n            change [brightness v] effect by (-1)\n        end\n    end\nend\n\nbroadcast (Won Game v)\n\nset [brightness v] effect to (-60)\n\n@Explosion\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\ngo to (patrol antivirus v)\nshow\nstart sound [Enemy_Dies v]\nrepeat until <(costume [number v]) = [6]>\n    next costume\n    wait (0.01) seconds\nend\nhide\nswitch costume to (costume3 v)\n\ngo to (patrol antivirus v)\nshow\nstart sound [Enemy_Dies v]\nrepeat until <(costume [number v]) = [6]>\n    next costume\n    wait (0.01) seconds\nend\nhide\nswitch costume to (costume3 v)\n\n@Health Pellet\n\nwhen flag clicked\nclear graphic effects\nhide\nset size to (20) %\n\nwhen I receive [next level v]\nhide\nif <(LEVEL) = [8]> then\n    go to x: (-197) y: (-138)\n    appear\nend\nforever\n    if <touching (virus v)?> then\n        set health [5]\n        hide\n    end\nend\n\nwhen I receive [book v]\nrepeat (20)\n    change [brightness v] effect by (-3)\nend\n\nwhen I receive [book closed v]\nrepeat (20)\n    change [brightness v] effect by (3)\nend\n\ndefine set health (lives)\nset [health v] to (lives)\nstart sound [Find_Item v]\nbroadcast (Heal v)\n\ndefine appear\nset [brightness v] effect to (100)\nwait (2) seconds\nshow\nrepeat (20)\n    change [brightness v] effect by (-5)\nend\n\nwhen I receive [game over... v]\nhide\n\nwhen I receive [next level v]\nwait (2.5) seconds\nforever\n    repeat (10)\n        change [brightness v] effect by (2)\n    end\n    repeat (10)\n        change [brightness v] effect by (-2)\n    end\nend\n\n@Notification\n\nwhen flag clicked\nclear graphic effects\nhide\n\nwhen I receive [next level v]\nhide\nif <(LEVEL) = [6]> then\n    if <(Lives) = [3]> then\n        set [checkpoint v] to [6]\n        switch costume to (checkpoint v)\n        wait (2) seconds\n        appear\n    end\nend\nif <(LEVEL) = [10]> then\n    switch costume to (boss fight hint v)\n    wait (2) seconds\n    appear\n    wait (20) seconds\n    repeat until <([boss health v] of [boss antivirus v]) < [3]>\n        switch costume to (boss fight hint v)\n        wait (2) seconds\n        appear\n        wait (23) seconds\n    end\nend\n\ndefine appear\ngo to x: (151) y: (143)\nset [pixelate v] effect to (100)\nset [ghost v] effect to (75)\nstart sound [Magic Spell v]\nshow\nrepeat (20)\n    change [pixelate v] effect by (-5)\n    change [ghost v] effect by (-3.75)\nend\nwait (2) seconds\nrepeat (20)\n    change [pixelate v] effect by (5)\n    change [ghost v] effect by (5)\nend\nhide\n\nwhen this sprite clicked\nif <(LEVEL) = [10]> then\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\ngo to x: (0) y: (0)\nswitch costume to (boss fight hint 2 v)\ngo to [front v] layer\nclear graphic effects\nwait (2) seconds\nrepeat (20)\n    change [ghost v] effect by (5)\nend\ndelete this clone\n\n@Boss Antivirus\n\nwhen flag clicked\nset [boss health v] to [3]\nhide\nset size to (1200) %\nset rotation style [left-right v]\n\ndefine Walk (steps)\nswitch costume to (1 v)\nrepeat ((4) * (steps))\n    if <(costume [number v]) < [8]> then\n        next costume\n    else\n        switch costume to (1 v)\n    end\n    change x by ((10.5) * (([abs v] of (direction) ) / (direction)))\n    wait (.1) seconds\nend\n\nwhen I receive [next level v]\nhide\nif <(LEVEL) = [10]> then\n    set [boss health v] to [3]\n    go to x: (95) y: (-166)\n    point in direction (-90)\n    set [brightness v] effect to (100)\n    switch costume to (1 v)\n    set size to (1200) %\n    wait (2) seconds\n    show\n    repeat (20)\n        change [brightness v] effect by (-5)\n    end\n    wait (1) seconds\n    forever\n        repeat (2)\n            Walk [3]\n            wait (1) seconds\n            point in direction ((direction) * (-1))\n        end\n        wait (2) seconds\n        repeat (2)\n            create clone of (flying antivirus v)\n            wait (1) seconds\n        end\n        repeat (2)\n            Walk [3]\n            wait (1) seconds\n            point in direction ((direction) * (-1))\n        end\n        wait (1) seconds\n        Stomp\n        wait (.5) seconds\n        create clone of (missile v)\n        wait (5) seconds\n    end\nend\n\ndefine Stomp\nset [boss yv v] to [20]\nrepeat until <<(y position) < [-165]> and <(Boss yV) < [0]>>\n    change [boss yv v] by (-1)\n    change y by (Boss yV)\nend\nset y to (-166)\nbroadcast (Boss Stomp v)\nstart sound [earthquake v]\n\nwhen I receive [next level v]\nif <(LEVEL) = [10]> then\n    forever\n        if <touching (virus v)?> then\n            broadcast (Hit 2 v)\n            change [health v] by (-1)\n            if <([x position v] of [virus v]) < (x position)> then\n                set [xv v] to [-12]\n            else\n                set [xv v] to [12]\n            end\n            set [yv v] to [13]\n            wait (1) seconds\n        end\n    end\nend\n\nwhen I receive [boss hit v]\nchange [boss health v] by (-1)\nif <(Boss Health) < [1]> then\n    stop [other scripts in sprite v]\n    start sound [Enemy_Dies v]\n    switch costume to (costume3 v)\n    set size to (400) %\n    set y to (-96)\n    repeat (5)\n        next costume\n        wait (.01) seconds\n    end\n    hide\n    broadcast (Portal v)\n    broadcast (Activated v)\nelse\n    repeat (10)\n        change [brightness v] effect by (10)\n    end\n    repeat (10)\n        change [brightness v] effect by (-10)\n    end\nend\n\n@Missile\n\nwhen flag clicked\nhide\nset size to (25) %\nset rotation style [all around v]\n\nwhen I start as a clone\nswitch costume to (missile v)\ngo to x: ([x position v] of [boss antivirus v]) y: (-72)\nshow\nreset timer\nrepeat until <(timer) > [4]>\n    point towards (virus v)\nend\n\nwhen I start as a clone\nforever\n    move (3.5) steps\nend\n\nwhen I start as a clone\nwait (1) seconds\nrepeat until <touching (_edge_ v)?>\n    if <touching (virus v)?> then\n        broadcast (Hit 2 v)\n        change [health v] by (-1)\n        set [xv v] to ((12) * (([abs v] of (direction) ) / (direction)))\n        set [yv v] to [12]\n        Explode\n    end\n    if <touching (boss antivirus v)?> then\n        broadcast (Boss Hit v)\n        Explode\n    end\nend\ndelete this clone\n\ndefine Explode\nstart sound [Explosion1 v]\nset size to (100) %\nswitch costume to (missile v)\nrepeat (5)\n    next costume\nend\ndelete this clone\n\nwhen I start as a clone\nwait (6) seconds\ndelete this clone\n\n@Quiz\n\nwhen flag clicked\nset [quiz v] to [0]\nhide\n\nwhen I receive [quiz v]\nset [quiz v] to [0]\nset [question number v] to [0]\nswitch costume to (take quiz button v)\ngo to x: (0) y: (-60)\ncreate clone of (_myself_ v)\nswitch costume to (skip button v)\ngo to x: (0) y: (11)\nappear\nrepeat until <(Quiz) > [0]>\n    if <<touching (mouse-pointer v)?> and <mouse down?>> then\n        broadcast (Quiz Done v)\n        set [quiz v] to [1]\n        disappear\n        stop [this script v]\n    end\nend\ndisappear\nset [question number v] to [1]\nwait until <(Question Number) > [20]>\nbroadcast (Quiz Done v)\n\ndefine appear\nset [ghost v] effect to (100)\nwait (2) seconds\nshow\nrepeat (20)\n    change [ghost v] effect by (-5)\nend\n\nwhen I start as a clone\nappear\nif <(Quiz) = [0]> then\n    repeat until <(Quiz) > [0]>\n        if <<touching (mouse-pointer v)?> and <mouse down?>> then\n            set [quiz v] to [2]\n            switch costume to (a v)\n            go to x: (-100) y: (-4)\n            create clone of (_myself_ v)\n            switch costume to (b v)\n            go to x: (100) y: (-4)\n            create clone of (_myself_ v)\n            switch costume to (c v)\n            go to x: (-100) y: (-73)\n            create clone of (_myself_ v)\n            switch costume to (d v)\n            go to x: (100) y: (-73)\n            create clone of (_myself_ v)\n            delete this clone\n        end\n    end\n    disappear\nelse\n    repeat until <(Question Number) > [20]>\n        if <<touching (mouse-pointer v)?> and <mouse down?>> then\n            if <(item (Question Number) of [answers v]) = (costume [name v])> then\n                repeat (20)\n                    change [brightness v] effect by (3)\n                end\n                repeat (20)\n                    change [brightness v] effect by (-3)\n                end\n                change [question number v] by (1)\n            else\n                repeat (20)\n                    change [color v] effect by (-2)\n                    change [brightness v] effect by (-1)\n                end\n                wait (1) seconds\n                repeat (20)\n                    change [color v] effect by (2)\n                    change [brightness v] effect by (1)\n                end\n            end\n            wait (1) seconds\n        end\n    end\n    delete this clone\nend\n\ndefine disappear\nrepeat (20)\n    change [ghost v] effect by (5)\nend\nhide\ndelete this clone\n\nbroadcast (Quiz v)\n\nwhen I receive [game over... v]\nhide\ndelete this clone\n\n@Thumbnail\n\ndefine Thumbnail\ngo to x: (0) y: (0)\nset size to (100) %\ngo to [front v] layer\nshow\n\nwhen flag clicked\nhide\n\n@Menu\n\nwhen flag clicked\nset [clone id v] to [1]\nset [menu open v] to [0]\nset [on cooldown? v] to [0]\nhide\nclear graphic effects\nswitch costume to (sensor v)\nset size to (60) %\n\nwhen I receive [set up menu v]\nSet Up\n\ndefine Set Up\ngo to x: (56.199) y: (78)\nrepeat (5)\n    change [clone id v] by (1)\n    create clone of (_myself_ v)\nend\nset [clone id v] to [1]\nset [ghost v] effect to (100)\nset size to (100) %\nshow\ngo to x: (0) y: (150)\nforever\n    wait until <<touching (mouse-pointer v)?> and <<(Menu Open) = [0]> and <(Menu Moving) = [0]>>>\n    broadcast (Menu Tab Show v)\n    wait (0.5) seconds\n    wait until <<not <touching (mouse-pointer v)?>> and <<(Menu Open) = [0]> and <(Menu Moving) = [0]>>>\n    broadcast (Menu Tab Gone v)\n    wait (0.5) seconds\nend\n\nwhen I start as a clone\nswitch costume to (Clone Id)\ngo to [front v] layer\nshow\nif <not <(Clone Id) = [3]>> then\n    forever\n        wait until <<mouse down?> and <touching (mouse-pointer v)?>>\n        Click (Clone Id)\n        wait (0.3) seconds\n    end\nend\n\nwhen I receive [menu tab show v]\nset [menu moving v] to [1]\nif <(Clone Id) > [1]> then\n    set [menu yv v] to [-8]\n    repeat until <(Menu yV) > [-1]>\n        change y by (Menu yV)\n        change [menu yv v] by (1)\n    end\nend\nset [menu moving v] to [0]\n\nwhen I receive [menu tab gone v]\nset [menu moving v] to [1]\nif <(Clone Id) > [1]> then\n    set [menu yv v] to [8]\n    repeat until <(Menu yV) < [1]>\n        change y by (Menu yV)\n        change [menu yv v] by (-1)\n    end\n    set y to (78)\nend\nset [menu moving v] to [0]\n\ndefine Click (id)\nif <(id) = [2]> then\n    if <(Menu Moving) = [1]> then\n        wait until <(Menu Moving) = [0]>\n    end\n    if <(Menu Open) = [0]> then\n        broadcast (Menu Open v)\n        switch costume to (close menu v)\n    else\n        broadcast (Menu Close v)\n        switch costume to (open menu v)\n    end\nend\nif <(id) = [4]> then\n    if <(Music On?) = [1]> then\n        switch costume to (speaker off v)\n        set [music on? v] to [0]\n    else\n        switch costume to (speaker on v)\n        set [music on? v] to [1]\n    end\n    broadcast (Song Change v)\nend\nif <<(id) = [5]> and <<(On cooldown?) = [0]> and <not <<(LEVEL) = [5]> or <<([book open v] of [book of elon musk v]) = [1]> or <(LEVEL) = [11]>>>>>> then\n    set [level v] to (item ((item # of (LEVEL) in [level progression v]) + (1)) of [level progression v])\n    broadcast (Next Level v)\n    broadcast (No Tip v)\nend\nif <<(id) = [6]> and <<(On cooldown?) = [0]> and <not <<(LEVEL) = [5]> or <(LEVEL) = [0]>>>>> then\n    set [on cooldown? v] to [1]\n    set [level v] to (item ((item # of (LEVEL) in [level progression v]) + (-1)) of [level progression v])\n    broadcast (Next Level v)\nend\n\nwhen I receive [menu open v]\nset [menu moving v] to [1]\nset [menu open v] to [1]\nif <(Clone Id) > [1]> then\n    set [menu yv v] to [-10]\n    repeat until <(Menu yV) > [-1]>\n        change y by (Menu yV)\n        change [menu yv v] by (1)\n    end\nend\nset [menu moving v] to [0]\n\nwhen I receive [menu close v]\nset [menu moving v] to [1]\nif <(Clone Id) > [1]> then\n    set [menu yv v] to [10]\n    repeat until <(Menu yV) < [1]>\n        change y by (Menu yV)\n        change [menu yv v] by (-1)\n    end\nend\nset [menu open v] to [0]\nset [menu moving v] to [0]\n\nbroadcast (Menu Tab Show v)\n\nwhen I receive [next level v]\nif <<(Clone Id) = [5]> or <(Clone Id) = [6]>> then\n    set [on cooldown? v] to [1]\n    set [ghost v] effect to (50)\n    wait (3) seconds\n    clear graphic effects\n    set [on cooldown? v] to [0]\nend\n\n