stickman [platformer]
@Stage\n\nwhen flag clicked\nswitch backdrop to (backdrop12 v)\n\nwhen I receive [9 v]\nswitch backdrop to (backdrop11 v)\nrepeat (10)\n    wait (0.05) seconds\n    next backdrop\nend\nbroadcast (10 v)\n\nwhen I receive [start v]\nswitch backdrop to (backdrop13 v)\n\ndefine text (text)\nset [t v] to [1]\nset [text v] to []\nrepeat (length of (text))\n    set [text v] to (join (text) (letter (t) of (text)))\n    change [t v] by (1)\nend\n\nwhen I receive [start animation v]\nswitch backdrop to (backdrop11 v)\n\nwhen I receive [start animation v]\ntext (translate [yellow stickman:  you must die] to ((language) v)::translate)\n\nwhen I receive [2 v]\ntext (translate [scratch cat: Are you kidding me] to ((language) v)::translate)\n\nwhen I receive [5 v]\ntext (translate [yellow stickman: Aaaaa!] to ((language) v)::translate)\n\nwhen I receive [6 v]\ntext (translate [black stickman: what?] to ((language) v)::translate)\n\nwhen I receive [7 v]\ntext (translate [yellow stickman: my power] to ((language) v)::translate)\n\nwhen I receive [9 v]\ntext (translate [yellow stickman:  I'm going] to ((language) v)::translate)\nwait (1) seconds\nhide variable [text v]\n\nwhen I receive [14 v]\nshow variable [text v]\ntext (translate [yellow stickman:  what happened? ] to ((language) v)::translate)\nwait (0.5) seconds\ntext (translate [yellow stickman:  I have a headache] to ((language) v)::translate)\nwait (0.5) seconds\ntext (translate [yellow stickman: l remember] to ((language) v)::translate)\nwait (0.5) seconds\ntext (translate [yellow stickman: sorry for attacking you] to ((language) v)::translate)\nwait (1) seconds\nhide variable [text v]\nbroadcast (15 v)\n\nwhen I receive [15 v]\nshow variable [text v]\ntext (translate [scratch cat: I have returned] to ((language) v)::translate)\nwait (0.5) seconds\ntext (translate [scratch cat: hehe.....] to ((language) v)::translate)\nwait (1) seconds\nhide variable [text v]\n\nwhen I receive [die v]\nshow variable [text v]\ntext (translate [scratch cat: Aaaaaaa] to ((language) v)::translate)\nwait (1) seconds\nhide variable [text v]\n\n@cat animation\n\nwhen I receive [tin nhắn 1 v]\nrepeat (3)\n    next costume\n    wait (.1) seconds\nend\nbroadcast (2 v)\n\nwhen flag clicked\nset [boss fight level v] to [0]\nset [select room v] to [0]\nhide\n\nwhen I receive [3 v]\nglide (1) secs to x: (121) y: (59)\nbroadcast (4 v)\n\nwhen I receive [5 v]\nglide (1) secs to x: (47) y: (-4)\nswitch costume to (costume1 v)\nbroadcast (6 v)\n\nwhen I receive [7 v]\npoint in direction (-90)\nrepeat (3)\n    wait (0.1) seconds\n    next costume\nend\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\nbroadcast (8 v)\n\nwhen I receive [start animation v]\nshow\nset [ghost v] effect to (0)\nset rotation style [left-right v]\npoint in direction (90)\nswitch costume to (costume1 v)\ngo to x: (0) y: (0)\n\n@human animation\n\nwhen I receive [2 v]\nswitch costume to (costume1 v)\nglide (1) secs to x: (167) y: (-21)\nbroadcast (3 v)\n\nwhen I receive [3 v]\nswitch costume to (costume6 v)\n\nwhen I receive [4 v]\nrepeat (8)\n    wait (0.1) seconds\n    next costume\nend\nbroadcast (5 v)\n\nwhen I receive [5 v]\nrepeat (4)\n    wait (0.1) seconds\n    next costume\nend\n\nwhen I receive [8 v]\nrepeat (8)\n    wait (0.1) seconds\n    next costume\nend\nbroadcast (9 v)\n\nwhen I receive [10 v]\nglide (0.03) secs to x: (106) y: (-10)\npoint in direction (-90)\nbroadcast (11 v)\nglide (1) secs to x: (192) y: (-19)\nrepeat (10)\n    change [whirl v] effect by (10)\n    change [brightness v] effect by (10)\nend\nhide\nbroadcast (12 v)\n\nwhen I receive [start animation v]\nshow\nset [ghost v] effect to (0)\nset [whirl v] effect to (0)\nset rotation style [left-right v]\ngo to x: (227) y: (-23)\npoint in direction (90)\nrepeat (10)\n    change x by (-5)\n    switch costume to (costume2 v)\n    wait (0.1) seconds\n    change x by (-5)\n    switch costume to (costume3 v)\n    wait (0.1) seconds\n    change x by (-5)\n    switch costume to (costume4 v)\n    wait (0.1) seconds\n    change x by (-5)\n    switch costume to (costume5 v)\n    wait (0.1) seconds\nend\nbroadcast (tin nhắn 1 v)\n\nwhen flag clicked\nhide\n\n@player animation\n\nwhen I receive [6 v]\nshow\nset rotation style [left-right v]\ngo to x: (-227) y: (-23)\npoint in direction (-90)\nrepeat (2)\n    change x by (5)\n    switch costume to (costume2 v)\n    wait (0.1) seconds\n    change x by (5)\n    switch costume to (costume3 v)\n    wait (0.1) seconds\n    change x by (5)\n    switch costume to (costume4 v)\n    wait (0.1) seconds\n    change x by (5)\n    switch costume to (costume5 v)\n    wait (0.1) seconds\nend\nbroadcast (7 v)\n\nwhen flag clicked\nhide\n\nwhen I receive [10 v]\nswitch costume to (costume6 v)\nglide (1) secs to x: (-164) y: (-70)\nswitch costume to (costume7 v)\n\nwhen I receive [start v]\nhide\n\n@ space gate animation\n\nwhen flag clicked\nset [whirl v] effect to (0)\nset [ghost v] effect to (0)\nhide\n\nwhen I receive [11 v]\nshow\n\nwhen I receive [12 v]\nrepeat (20)\n    change [whirl v] effect by (5)\n    change [ghost v] effect by (5)\nend\nhide\nbroadcast (13 v)\n\n@Sprite5\n\nwhen flag clicked\nhide\n\nwhen I receive [13 v]\nshow\nswitch costume to (costume1 v)\nrepeat (4)\n    wait (1) seconds\n    next costume\nend\nwait (1) seconds\nhide\nbroadcast (start v)\n\n@Level\n\nwhen flag clicked\ngo to x: (0) y: (0)\nset [level v] to [1]\nhide\n\nwhen I receive [start v]\nshow\nforever\n    switch costume to (Level)\nend\n\nwhen I receive [15 v]\nset [level v] to [7]\nrepeat (10)\n    change [level v] by (1)\n    wait (0.05) seconds\nend\n\nwhen flag clicked\nwait until <(Level) = [7]>\nbroadcast (boss robot v)\nstop [this script v]\n\n@player\n\nwhen I receive [start v]\ngo to x: (-170) y: (0)\nshow\nforever\n    if <touching (spikes v)?> then\n        go to x: (-170) y: (0)\n        set [y velocity v] to [0]\n        set [x velocity v] to [0]\n    end\n    Platform [12] [-1] [0.7] [4]\nend\n\ndefine Platform (jump) (gravity) (friction) (speed)\nswitch costume to (hitbox v)\nset rotation style [left-right v]\nif <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n    set [input v] to [1]\nend\nif <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n    set [input v] to [2]\nend\nif <(input) = [1]> then\n    point in direction (90)\n    change [x velocity v] by (speed)\nend\nif <(input) = [2]> then\n    point in direction (-90)\n    change [x velocity v] by ((speed) * (-1))\nend\nset [x velocity v] to ((X velocity) * (friction))\nchange x by (X velocity)\nif <<key (w v) pressed?> or <key (up arrow v) pressed?>> then\n    set [input v] to [4]\nend\nif <touching (level v)?> then\n    set [slope v] to [0]\n    repeat until <<(Slope) = [20]> or <not <touching (level v)?>>>\n        change [slope v] by (1)\n        change y by (1)\n    end\n    if <touching (level v)?> then\n        change y by ((Slope) * (-1))\n    end\n    repeat ([ceiling v] of ([abs v] of (X velocity) ) )\n        if <touching (level v)?> then\n            change x by ((([abs v] of (X velocity) ) / (X velocity)) * (-1))\n        end\n    end\n    set [x velocity v] to [0]\nend\nchange y by (Y velocity)\nif <touching (level v)?> then\n    repeat ([ceiling v] of ([abs v] of (Y velocity) ) )\n        if <touching (level v)?> then\n            change y by ((([abs v] of (Y velocity) ) / (Y velocity)) * (-1))\n        end\n        if <<(([abs v] of (Y velocity) ) / (Y velocity)) = [-1]> and <(input) = [4]>> then\n            set [y velocity v] to (jump)\n        else\n            set [y velocity v] to [0]\n        end\n    end\nelse\n    change [y velocity v] by (-1)\nend\nif <not <<key (left arrow v) pressed?> or <<key (right arrow v) pressed?> or <key (up arrow v) pressed?>>>> then\n    set [input v] to [0]\nend\nswitch costume to (join [Idle] (join [ ] (color)))\nset [animation v] to [idle]\nif <(Y velocity) > [4]> then\n    switch costume to (join [Jump] (join [ ] (color)))\n    set [animation v] to [jump]\nend\nif <(Y velocity) < [-4]> then\n    switch costume to (fall black v)\n    set [animation v] to (join [Fall] (join [ ] (color)))\nend\nif <<(input) = [1]> or <(input) = [2]>> then\n    switch costume to (join (Walk) (join [ ] (color)))\n    set [animation v] to [run]\nend\n\nwhen flag clicked\nset [health v] to [20]\nforever\n    wait (0.05) seconds\n    set [walk v] to [walk1]\n    wait (0.05) seconds\n    set [walk v] to [walk2]\n    wait (0.05) seconds\n    set [walk v] to [walk3]\n    wait (0.05) seconds\n    set [walk v] to [walk4]\n    wait (0.05) seconds\n    set [walk v] to [walk5]\n    wait (0.05) seconds\n    set [walk v] to [walk4]\n    wait (0.05) seconds\n    set [walk v] to [walk3]\n    wait (0.05) seconds\n    set [walk v] to [walk2]\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nforever\n    if <touching (front v)?> then\n        go to x: (-170) y: (0)\n        if <(boss fight level) = [0]> then\n            change [level v] by (1)\n        else\n            set [level v] to [select room]\n        end\n    end\nend\n\nwhen I receive [start v]\nforever\n    if <touching (back v)?> then\n        go to x: (-170) y: (0)\n        change [level v] by (-1)\n    end\nend\n\nwhen I receive [start v]\nforever\n    if <<touching (boss robot bullet v)?> or <<touching (cat boss v)?> or <<touching (sprite7 v)?> or <touching (aftershocks v)?>>>> then\n        change [health v] by (-1)\n        wait (0.1) seconds\n    end\n    if <(health) = [0]> then\n        broadcast (game over v)\n        change [health v] by (-1)\n    end\nend\n\nset [color v] to [black]\n\n@back\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nshow\nforever\n    if <<(Level) < [7]> and <(Level) > [1]>> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [start v]\nforever\n    go to x: (-215) y: (-103)\nend\n\n@front\n\nwhen flag clicked\nset [boss1 v] to [0]\nhide\ngo to x: (205) y: (43)\n\nwhen I receive [start v]\nshow\n\ngo to [back v] layer\n\nwhen I receive [start v]\nshow\nforever\n    if <(Level) < [7]> then\n        show\n    else\n        if <(boss1) = [0]> then\n            hide\n        else\n            if <(select room) = [1]> then\n                show\n            else\n                hide\n            end\n        end\n    end\nend\n\nwhen I receive [start v]\nforever\n    if <(Level) = [1]> then\n        go to x: (200) y: (-101)\n    else\n        if <(Level) = [2]> then\n            go to x: (205) y: (43)\n        else\n            if <(Level) = [3]> then\n                go to x: (200) y: (49)\n            else\n                if <(Level) = [4]> then\n                    go to x: (200) y: (-102)\n                else\n                    if <(Level) = [5]> then\n                        go to x: (200) y: (38)\n                    else\n                        if <(Level) = [6]> then\n                            go to x: (130) y: (-102)\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\n@spikes\n\nwhen I receive [start v]\nshow\nforever\n    switch costume to (Level)\nend\n\nwhen flag clicked\nhide\n\n@robot boss\n\ndefine Just to not repeat\nchange y by (30)\nset [gravity v] to [25]\nrepeat until <touching (level v)?>\n    point towards (player v)\n    move (10) steps\n    change y by (Gravity)\n    change [gravity v] by (-1)\n    if <(Gravity) > [2]> then\n        switch costume to (fly v)\n    end\n    if <(Gravity) < [-2]> then\n        switch costume to (fall v)\n    end\n    if <touching (level v)?> then\n        if <(Gravity) > [2]> then\n            change y by (-1)\n        end\n        if <(Gravity) < [-2]> then\n            change y by (1)\n        end\n    end\nend\nif <(direction) > [0]> then\n    point in direction (90)\nelse\n    point in direction (-90)\nend\nfix jump\nset [gravity v] to [0]\n\nwhen flag clicked\nhide variable [robot boss health v]\nhide\n\nwhen I receive [boss robot v]\nshow variable [robot boss health v]\nset [robot boss health v] to [50]\nshow\nset size to (100) %\nset [ghost v] effect to (0)\nset rotation style [left-right v]\ngo to x: (102) y: (-75)\npoint in direction (-90)\nrepeat until <(robot boss health) < [0]>\n    Just to not repeat\n    attack\nend\nswitch costume to (boom v)\nrepeat (15)\n    change size by (10)\nend\nbroadcast (boss human v)\nhide variable [robot boss health v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\ndefine fix jump\nrepeat until <not <touching (level v)?>>\n    change y by (1)\nend\nchange y by (-1)\n\ndefine attack\nrepeat (10)\n    wait (0.1) seconds\n    create clone of (boss robot bullet v)\nend\n\nwhen I receive [boss robot v]\nforever\n    if <touching (player bullet v)?> then\n        change [robot boss health v] by (-1)\n    end\nend\n\nset [robot boss health v] to [0]\n\n@human boss\n\nwhen flag clicked\nhide variable [human boss health v]\nhide\nforever\n    set rotation style [left-right v]\nend\n\nwhen I receive [boss human v]\nshow variable [human boss health v]\nset [human boss health v] to [70]\nspam\nrepeat until <(human boss health) < [0]>\n    move\n    wait (0.5) seconds\n    attack\n    wait (2) seconds\nend\nhide variable [human boss health v]\nfall\nbroadcast (14 v)\n\ndefine attack\nswitch costume to (fly v)\nrepeat (6)\n    wait (0.02) seconds\n    next costume\nend\nrepeat (10)\n    point towards (player v)\n    create clone of (sprite7 v)\n    wait (0.4) seconds\nend\nswitch costume to (costume4 v)\nrepeat (5)\n    wait (0.02) seconds\n    next costume\nend\n\ndefine move\npoint towards (player v)\nif <(direction) > [0]> then\n    point in direction (90)\nelse\n    point in direction (-90)\nend\nrepeat (20)\n    move (8) steps\nend\n\ndefine spam\nshow\nswitch costume to (fly v)\ngo to (robot boss v)\npoint in direction ([direction v] of [robot boss v])\nrepeat (15)\n    change y by (5)\nend\n\ndefine fall\nswitch costume to (costume13 v)\nrepeat until <touching (level v)?>\n    change y by (-8)\nend\nchange y by (8)\nswitch costume to (costume14 v)\nwait (0.1) seconds\nswitch costume to (costume15 v)\nrepeat (3)\n    next costume\n    wait (0.05) seconds\nend\n\nwhen I receive [15 v]\nhide\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\n\nwhen I receive [boss human v]\nforever\n    if <touching (player bullet v)?> then\n        change [human boss health v] by (-1)\n    end\nend\n\n@Sprite7\n\nwhen I start as a clone\nshow\nset [ghost v] effect to (0)\nif <(pick random (1) to (2)) = [1]> then\n    point in direction (([direction v] of [human boss v]) + (pick random (1) to (10)))\nelse\n    point in direction (([direction v] of [human boss v]) - (pick random (1) to (10)))\nend\ngo to (human boss v)\nrepeat until <<touching (_edge_ v)?> or <touching (level v)?>>\n    move (8) steps\nend\nrepeat (10)\n    change [ghost v] effect by (10)\nend\ndelete this clone\n\nwhen flag clicked\nhide\n\n@play button\n\nwhen flag clicked\ngo to x: (0) y: (0)\nforever\n    if <touching (mouse-pointer v)?> then\n        change size by (((120) - (size)) / (3))\n        set [ghost v] effect to (20)\n        point in direction (([sin v] of ((timer) * (1000)) ) + (90))\n        if <mouse down?> then\n            Something\n            play sound [Collect v] until done\n            wait until <not <mouse down?>>\n        end\n    else\n        point in direction (90)\n        change size by (((100) - (size)) / (3))\n        set [ghost v] effect to (-10)\n    end\nend\n\nwhen flag clicked\nrepeat (10)\n    hide\n    go to [back v] layer\nend\n\nwhen this sprite clicked\nhide\nbroadcast (select  v)\n\nwhen flag clicked\nset [timer v] to (timer)\nforever\n    wait (0.01) seconds\n    change [timer v] by (0.069)\nend\n\nwhen I receive [1 v]\nshow\n\n@thumbnail\n\nwhen [timer v] > (0.0000000000001)\nhide variable [level v]\nhide variable [text v]\nshow\ngo to [front v] layer\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nhide variable [health v]\nhide variable [level v]\nhide variable [text v]\nforever\n    reset timer\nend\n\nwhen I receive [start v]\nshow variable [level v]\nshow variable [health v]\n\nwhen I receive [start animation v]\nshow variable [text v]\n\n@language\n\nwhen flag clicked\nhide\nset [language v] to [0]\nswitch costume to (costume2 v)\n\nwhen this sprite clicked\nif <(costume [number v]) = [1]> then\n    set [language v] to [tiếng việt]\nelse\n    set [language v] to [english]\nend\nbroadcast (start animation v)\n\nwhen I start as a clone\ngo to [front v] layer\nforever\n    if <(language) = [0]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [select  v]\nrepeat (2)\n    create clone of (_myself_ v)\n    next costume\nend\n\nwhen I start as a clone\nforever\n    if <touching (mouse-pointer v)?> then\n        change size by (((120) - (size)) / (3))\n        set [ghost v] effect to (20)\n        point in direction (([sin v] of ((timer) * (1000)) ) + (90))\n    else\n        point in direction (90)\n        change size by (((100) - (size)) / (3))\n        set [ghost v] effect to (-10)\n    end\nend\n\n@boss robot bullet\n\nwhen I start as a clone\nshow\ngo to (robot boss v)\npoint in direction ([direction v] of [robot boss v])\nrepeat until <<<touching (player v)?> or <touching (_edge_ v)?>> or <touching (level v)?>>\n    move (10) steps\nend\nwait (0.01) seconds\ndelete this clone\n\nwhen flag clicked\nhide\n\n@cat boss\n\nwhen flag clicked\nhide\n\nwhen I receive [15 v]\nset [boss1 v] to [0]\nsetup\ngo to x: (201) y: (0)\nset rotation style [left-right v]\npoint in direction (-90)\nswitch costume to (costume12 v)\nrepeat (6)\n    wait (0.1) seconds\n    next costume\nend\nwait (1) seconds\nrepeat (2)\n    repeat (10)\n        attack\n        wait (1) seconds\n    end\n    hide\n    go to x: (pick random (-180) to (180)) y: (135)\n    show\n    setup\n    wait (1) seconds\n    super attack\n    wait (2) seconds\n    roll\nend\nbroadcast (die v)\nchange [boss1 v] by (1)\nchange [boss v] by (1)\nbroadcast (unlock map v)\nset [land v] to [2]\nset [select room v] to [1]\nset [boss fight level v] to [1]\n\ndefine attack\nset [gravity v] to [14]\nset rotation style [all around v]\npoint towards (player v)\nrepeat until <touching (level v)?>\n    jump\n    switch costume to (join [spin] (spin))\n    move (8) steps\n    if <touching (_edge_ v)?> then\n        point in direction ((direction) + (180))\n    end\nend\nchange y by (2)\nset [gravity v] to [14]\nrepeat until <touching (level v)?>\n    jump\n    switch costume to (join [spin] (spin))\n    move (8) steps\n    if <touching (_edge_ v)?> then\n        point in direction ((direction) + (180))\n    end\nend\nchange y by (2)\nset rotation style [left-right v]\nswitch costume to (spin42 v)\n\nwhen flag clicked\nforever\n    set [spin v] to [1]\n    repeat (41)\n        wait (0.01) seconds\n        change [spin v] by (1)\n    end\nend\n\ndefine jump\nchange y by (Gravity)\nchange [gravity v] by (-1)\n\ndefine super attack\nrepeat until <touching (level v)?>\n    change y by (-20)\nend\nbroadcast (super attack v)\n\ndefine hide\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\ndefine setup\nshow\nset [ghost v] effect to (0)\nset size to (100) %\n\ndefine roll\nif <(x position) > [0]> then\n    repeat until <touching (_edge_ v)?>\n        switch costume to (join [spin] (spin))\n        change x by (-15)\n    end\nelse\n    repeat until <touching (_edge_ v)?>\n        switch costume to (join [spin] (spin))\n        change x by (15)\n    end\nend\n\nwhen I receive [die v]\nhide\n\ndefine show\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\n\n@game over\n\nwhen flag clicked\nhide\n\nwhen I receive [game over v]\ngo to [front v] layer\nt\n\ndefine t\ngo to x: (0) y: (344)\nglide (1) secs to x: (0) y: (0)\nshow\n\nrepeat (10)\n    t\n    wait (1) seconds\nend\n\n@aftershocks\n\nwhen flag clicked\nhide\n\nwhen I receive [super attack v]\ngo to x: ([x position v] of [cat boss v]) y: (-125)\nwait (0.01) seconds\nspam\n\ndefine spam\nshow\nswitch costume to (costume1 v)\nrepeat (2)\n    create clone of (_myself_ v)\n    next costume\nend\nhide\n\nwhen I receive [super attack v]\ndelete this clone\n\nwhen I start as a clone\nif <(costume [number v]) = [1]> then\n    repeat until <touching (_edge_ v)?>\n        change x by (-10)\n    end\nelse\n    repeat until <touching (_edge_ v)?>\n        change x by (10)\n    end\nend\ndelete this clone\n\n@Intro\n\nwhen I start as a clone\nif <(Clone ID) = [Screen]> then\n    go to [front v] layer\n    switch costume to (size hack v)\n    set size to (140) %\n    show\n    repeat (50)\n        go to [front v] layer\n        go [forward v] (1000) layers\n        switch costume to (size hack v)\n        change size by (((100) - (size)) / (5))\n        switch costume to (screen v)\n    end\n    wait (7) seconds\n    delete this clone\nend\n\nwhen flag clicked\nhide\ngo to x: (0) y: (0)\nset size to (100) %\npoint in direction (90)\nclear graphic effects\nset [color v] effect to (0)\nset [ghost v] effect to (0)\nset [brightness v] effect to (0)\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    go to x: (-1000) y: (-1000)\n    point in direction (0)\n    go to [front v] layer\n    switch costume to (name v)\n    set size to (100) %\n    wait (1.33) seconds\n    show\n    Smooth Glide x [0] y [0] size [100] direction [90] speed [6]\nend\n\ndefine bounce finished size (size) bounciness (bounciness) elasticity (elasticity)\nset [size v] to [0]\nrepeat (40)\n    set [size v] to (((size) * (bounciness)) + (((size) - (size)) / (elasticity)))\n    change size by (size)\nend\n\ndefine Smooth Glide x: (x) y: (y) speed: (speed)\nrepeat until <<(round (x)) = (round (x position))> and <(round (y)) = (round (y position))>>\n    change x by (((x) - (x position)) / (speed))\n    change y by (((y) - (y position)) / (speed))\nend\ngo to x: (x) y: (y)\n\ndefine Smooth Size: (size) speed: (speed)\nrepeat until <(round (size)) = (round (size))>\n    change size by (((size) - (size)) / (speed))\nend\nset size to (size) %\n\ndefine Smooth Rotate to (d) degrees at speed (s)\nrepeat until <(round (direction)) = (round (d))>\n    turn right (((round (d)) - (round (direction))) / (s)) degrees\nend\npoint in direction (d)\n\ndefine Smooth Glide x (x) y (y) size (size) direction (direction) speed (speed)\nrepeat until <<(round (x)) = (round (x position))> and <<(round (y)) = (round (y position))> and <<(round (size)) = (round (size))> and <(round (direction)) = (round (direction))>>>>\n    change x by (((x) - (x position)) / (speed))\n    change y by (((y) - (y position)) / (speed))\n    change size by (((size) - (size)) / (speed))\n    turn right (((direction) - (direction)) / (speed)) degrees\nend\ngo to x: (x) y: (y)\nset size to (size) %\npoint in direction (direction)\n\nwhen I start as a clone\nif <(Clone ID) = [Arrow2]> then\n    repeat (20)\n        change [ghost v] effect by (5)\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Arrow1]> then\n    show\n    switch costume to (arrow v)\n    set size to (100) %\n    point in direction (90)\n    go to x: (0) y: (0)\n    Smooth Glide x: [200] y: [0] speed: [8]\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Arrow2]> then\n    show\n    switch costume to (arrow v)\n    set size to (100) %\n    point in direction (-90)\n    go to x: (0) y: (0)\n    Smooth Glide x: [-200] y: [0] speed: [8]\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Arrow1]> then\n    repeat (20)\n        change [ghost v] effect by (5)\n    end\nend\n\nwhen flag clicked\nCreate Clone [Background]\nwait (3.55) seconds\nCreate Clone [Screen]\n\nwhen I start as a clone\nif <(Clone ID) = [Background]> then\n    go to [back v] layer\n    go [backward v] (1000) layers\n    switch costume to (size hack v)\n    set size to (100) %\n    show\n    point in direction (90)\n    go to x: (0) y: (0)\n    switch costume to (background v)\n    set [brightness v] effect to (100)\n    set [ghost v] effect to (100)\n    repeat (10)\n        change [brightness v] effect by (-10)\n        change [ghost v] effect by (-10)\n    end\n    wait (13.4) seconds\n    delete this clone\nend\n\ndefine Create Clone (id)\nset [clone id v] to (id)\ncreate clone of (_myself_ v)\nwait (0) seconds\n\nwhen I start as a clone\nif <(Clone ID) = [White End]> then\n    switch costume to (size hack v)\n    set size to (150) %\n    switch costume to (end v)\n    show\n    set [brightness v] effect to (100)\n    go to x: (500) y: (500)\n    point in direction (135)\n    repeat (50)\n        change x by (((22) - (x position)) / (6))\n        change y by (((22) - (y position)) / (6))\n        go to [front v] layer\n        go [backward v] (1) layers\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Black End]> then\n    switch costume to (size hack v)\n    set size to (150) %\n    switch costume to (end v)\n    show\n    go to x: (500) y: (500)\n    point in direction (135)\n    repeat (50)\n        change x by (((20) - (x position)) / (10))\n        change y by (((20) - (y position)) / (10))\n        go to [front v] layer\n    end\n    repeat (20)\n        change x by (((20) - (x position)) / (10))\n        change y by (((20) - (y position)) / (10))\n        go to [front v] layer\n        change [ghost v] effect by (5)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Cheveron]> then\n    switch costume to (cheveron v)\n    set size to (5) %\n    go to [front v] layer\n    go [backward v] (1) layers\n    show\n    repeat (50)\n        go to [front v] layer\n        go [backward v] (2) layers\n        switch costume to (size hack v)\n        change size by (((360) - (size)) / (12))\n        switch costume to (cheveron v)\n    end\n    delete this clone\nend\n\nwhen flag clicked\nwait (3.55) seconds\nCreate Clone [Cheveron]\n\nwhen flag clicked\nwait (12) seconds\nCreate Clone [Black End]\nCreate Clone [White End]\n\nwhen flag clicked\nstart sound [Nurko & luma - tonight \[NIGHTCORE\] v]\n\nwhen I start as a clone\nif <(Clone ID) = [Pinwheel]> then\n    switch costume to (pinwheel v)\n    set size to (100) %\n    go to [front v] layer\n    go [backward v] (3) layers\n    set [ghost v] effect to (0)\n    set [brightness v] effect to (0)\n    show\n    repeat (238)\n        turn right (3) degrees\n    end\n    delete this clone\nend\n\nwhen flag clicked\nwait (3.55) seconds\nCreate Clone [Pinwheel]\n\nwhen flag clicked\nwait (5.17) seconds\nCreate Clone [Cheveron]\n\nwhen flag clicked\nwait (6.74) seconds\nCreate Clone [Arrow1]\nCreate Clone [Arrow2]\n\nwhen flag clicked\nwait (0) seconds\nCreate Clone [Name]\n\ndefine Shake (size)\nset size to (size) %\ngo to x: (0) y: (0)\nrepeat (26)\n    go to [front v] layer\n    change size by (((100) - (size)) / (10))\n    go to x: (([sin v] of ((timer) * (1000)) ) * (((size) - (100)) * (0.1))) y: (([sin v] of ((timer) * (800)) ) * (((size) - (100)) * (0.1)))\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (3.48) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (5.09) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (6.7) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (8.28) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (9.86) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (11.41) seconds\n    repeat (34)\n        change [ghost v] effect by (4)\n        change size by (((30) - (size)) / (8))\n        go to x: (([sin v] of ((timer) * (1000)) ) * (((size) - (100)) * (0.1))) y: (([sin v] of ((timer) * (800)) ) * (((size) - (100)) * (0.1)))\n    end\n    delete this clone\nend\n\nwhen flag clicked\nwait (9.86) seconds\nCreate Clone [Cheveron]\n\ndefine Frame Tween Size: (s) speed: (spd)\nset [c v] to (costume [name v])\nswitch costume to (size hack v)\nchange size by (((round (s)) - (round (size))) / (spd))\nswitch costume to (c)\n\nwhen I start as a clone\nif <(Clone ID) = [Circles]> then\n    go to [front v] layer\n    go [backward v] (2) layers\n    show\n    switch costume to (circles v)\n    go to x: (0) y: (0)\n    set size to (1) %\n    point in direction (0)\n    set [ghost v] effect to (0)\n    repeat (38)\n        Frame Tween Size: [400] speed: [7]\n        Frame tween rotation: [90] speed: [13]\n        go to [front v] layer\n        go [backward v] (2) layers\n        change [ghost v] effect by ((100) / (38))\n        change [brightness v] effect by (3.3333)\n    end\n    delete this clone\nend\n\ndefine Frame tween rotation: (r) speed: (spd)\nturn right (((round (r)) - (round (direction))) / (spd)) degrees\n\nwhen flag clicked\nwait (3.49) seconds\nCreate Clone [Circles]\n\nwhen flag clicked\nwait (8.29) seconds\nCreate Clone [Circles]\n\nwhen flag clicked\nwait (15) seconds\nhide\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    switch costume to (size hack v)\n    set size to (100) %\n    switch costume to (grid v)\n    go to [back v] layer\n    go [forward v] (1) layers\n    show\n    set [ghost v] effect to (100)\n    set [brightness v] effect to (100)\n    repeat (50)\n        change [brightness v] effect by (-2)\n        change [ghost v] effect by (-2)\n    end\n    wait (2.9) seconds\n    switch costume to (diamonds v)\n    wait (1.65) seconds\n    switch costume to (hexagon pattern v)\n    wait (1.55) seconds\n    switch costume to (triangle pattern v)\n    wait (1.55) seconds\n    switch costume to (checkerboard pattern v)\n    wait (1.2) seconds\n    repeat (20)\n        change [brightness v] effect by (5)\n        change [ghost v] effect by (5)\n    end\n    delete this clone\nend\n\nwhen flag clicked\nwait (0) seconds\nwait (.5) seconds\nCreate Clone [Grid]\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (3) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (4.6) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (6.24) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (7.8) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (9.4) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (4.38) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (5.9) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (7.51) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (9.02) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Name]> then\n    wait (10.6) seconds\n    Shake [200]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (3.88) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (5.4) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (7) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (8.5) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Grid]> then\n    wait (10.1) seconds\n    point in direction (105)\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\n    repeat (10)\n        set [degrees v] to (((Degrees) * (0.75)) + (((90) - (direction)) / (3)))\n        turn right (Degrees) degrees\n    end\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Lines]> then\n    show\n    go to [front v] layer\n    go [backward v] (2) layers\n    clear graphic effects\n    go to x: (0) y: (0)\n    set size to (1) %\n    switch costume to (1 v)\n    set [line size v] to [20]\n    repeat (15)\n        change size by (Line Size)\n        change [line size v] by (-1)\n        next costume\n    end\n    repeat (20)\n        change [ghost v] effect by (20)\n        change size by (Line Size)\n    end\nend\n\nwhen flag clicked\nwait (4.4) seconds\nCreate Clone [Lines]\n\nwhen flag clicked\nwait (5.92) seconds\nCreate Clone [Lines]\n\nwhen flag clicked\nwait (7.53) seconds\nCreate Clone [Lines]\n\nwhen flag clicked\nwait (10.62) seconds\nCreate Clone [Lines]\nwait (1) seconds\nbroadcast (1 v)\n\nwhen I start as a clone\nif <(Clone ID) = [Screen]> then\n    go to x: (0) y: (0)\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\n    point in direction (70)\n    repeat (25)\n        set [whirl # v] to (((Whirl #) * (.2)) + (((Whirl:) - (Whirl)) / (5)))\n        change [whirl v] by (Whirl #)\n        set [whirl v] effect to (Whirl)\n        set [bounce v] to (((Bounce) * (.2)) + (((90) - (direction)) / (5)))\n        turn right (Bounce) degrees\n    end\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Screen]> then\n    wait (1.54) seconds\n    go to x: (0) y: (0)\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\n    point in direction (70)\n    repeat (25)\n        set [whirl # v] to (((Whirl #) * (.2)) + (((Whirl:) - (Whirl)) / (5)))\n        change [whirl v] by (Whirl #)\n        set [whirl v] effect to (Whirl)\n        set [bounce v] to (((Bounce) * (.2)) + (((90) - (direction)) / (5)))\n        turn right (Bounce) degrees\n    end\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Screen]> then\n    wait (3.15) seconds\n    go to x: (0) y: (0)\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\n    point in direction (70)\n    repeat (25)\n        set [whirl # v] to (((Whirl #) * (.2)) + (((Whirl:) - (Whirl)) / (5)))\n        change [whirl v] by (Whirl #)\n        set [whirl v] effect to (Whirl)\n        set [bounce v] to (((Bounce) * (.2)) + (((90) - (direction)) / (5)))\n        turn right (Bounce) degrees\n    end\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Screen]> then\n    wait (4.73) seconds\n    go to x: (0) y: (0)\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\n    point in direction (70)\n    repeat (25)\n        set [whirl # v] to (((Whirl #) * (.2)) + (((Whirl:) - (Whirl)) / (5)))\n        change [whirl v] by (Whirl #)\n        set [whirl v] effect to (Whirl)\n        set [bounce v] to (((Bounce) * (.2)) + (((90) - (direction)) / (5)))\n        turn right (Bounce) degrees\n    end\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\nend\n\nwhen I start as a clone\nif <(Clone ID) = [Screen]> then\n    wait (6.31) seconds\n    go to x: (0) y: (0)\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\n    point in direction (70)\n    repeat (25)\n        set [whirl # v] to (((Whirl #) * (.2)) + (((Whirl:) - (Whirl)) / (5)))\n        change [whirl v] by (Whirl #)\n        set [whirl v] effect to (Whirl)\n        set [bounce v] to (((Bounce) * (.2)) + (((90) - (direction)) / (5)))\n        turn right (Bounce) degrees\n    end\n    set [whirl v] to [200]\n    set [whirl: v] to [0]\nend\n\nwhen flag clicked\nswitch costume to (name v)\n\nwhen flag clicked\nwait (9.02) seconds\nCreate Clone [Arrow1]\nCreate Clone [Arrow2]\n\nwhen flag clicked\nset size to (500) %\n\nwhen flag clicked\n1\n\ndefine 1\nswitch costume to (costume1 v)\ncreate clone of (_myself_ v)\n\ndefine 2\ngo to [front v] layer\nif <<mouse down?> and <touching (mouse-pointer v)?>> then\n    broadcast (1 v)\nend\n\ndefine 3\nif <(costume [name v]) = [costume1]> then\n    forever\n        2\n    end\nend\n\nwhen I start as a clone\n3\n\nwhen I receive [1 v]\ndelete this clone\n\n@arm\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nforever\n    if <touching (front v)?> then\n        wait (0.1) seconds\n        change [level v] by (1)\n    end\nend\n\nwhen I receive [start v]\nforever\n    if <touching (back v)?> then\n        wait (0.1) seconds\n        change [level v] by (-1)\n    end\nend\n\nwhen I receive [start v]\nforever\n    if <(Level) < [7]> then\n        set rotation style [left-right v]\n        point in direction ([direction v] of [player v])\n        go to (player v)\n        if <(animation) = [run]> then\n            show\n            switch costume to (Walk)\n        else\n            if <(animation) = [idle]> then\n                show\n                switch costume to (stand v)\n            else\n                hide\n            end\n        end\n    else\n        if <not <<(animation) = [fall]> or <(animation) = [jump]>>> then\n            set rotation style [all around v]\n            show\n            point towards (mouse-pointer v)\n            go to x: ([x position v] of [player v]) y: (([y position v] of [player v]) + (13))\n            if <(direction) < [0]> then\n                switch costume to (gun2 v)\n            else\n                switch costume to (gun v)\n            end\n        else\n            hide\n        end\n    end\nend\n\n@player bullet\n\nwhen flag clicked\nhide\n\nwhen I receive [boss robot v]\nforever\n    if <<key (space v) pressed?> or <mouse down?>> then\n        repeat until <not <<key (space v) pressed?> or <mouse down?>>>\n            create clone of (_myself_ v)\n            wait (0.1) seconds\n        end\n    end\nend\n\nwhen I start as a clone\ngo to (arm v)\nshow\npoint in direction ([direction v] of [arm v])\nrepeat until <<touching (_edge_ v)?> or <<touching (level v)?> or <<touching (robot boss v)?> or <<touching (human boss v)?> or <touching (cat boss v)?>>>>>\n    move (10) steps\nend\nwait (0.01) seconds\ndelete this clone\n\n@Sprite1\n\nwhen I receive [reset v]\ndelete this clone\n\ndefine clone\nshow\nswitch costume to (text v)\nrepeat (4)\n    create clone of (_myself_ v)\n    next costume\nend\nhide\n\nwhen I receive [1 v]\nclone\n\nwhen flag clicked\ngo to x: (0) y: (0)\nbroadcast (reset v)\n\nwhen I start as a clone\nif <(costume [number v]) = [1]> then\n    forever\n        go to x: ((mouse x) / (20)) y: (((mouse y) / (15)) - (bouce))\n    end\nend\nif <(costume [number v]) = [2]> then\n    forever\n        go to x: ((mouse x) / (30)) y: ((mouse y) / (22.5))\n    end\nend\nif <(costume [number v]) = [3]> then\n    forever\n        go to x: ((mouse x) / (40)) y: ((mouse y) / (30))\n    end\nend\nif <(costume [number v]) = [4]> then\n    forever\n        go to x: ((mouse x) / (18)) y: ((mouse y) / (34))\n    end\nend\n\nwhen flag clicked\nset [bouce v] to [20]\nforever\n    repeat (40)\n        wait (0.05) seconds\n        change [bouce v] by (-1)\n    end\n    repeat (40)\n        wait (0.05) seconds\n        change [bouce v] by (1)\n    end\nend\n\nwhen I receive [start animation v]\nhide\n\n@map\n\ndefine spam\nbroadcast (reset map v)\nswitch costume to (join [land] (land))\ncreate clone of (_myself_ v)\n\nwhen I receive [reset map v]\ndelete this clone\n\nwhen I start as a clone\nshow\ngo to [front v] layer\nforever\n    switch costume to (rainbow1 v)\n    wait (0.1) seconds\n    repeat (5)\n        next costume\n        wait (0.1) seconds\n    end\nend\n\nwhen I receive [map v]\nspam\nshow\n\nwhen flag clicked\nset [land v] to [0]\nhide\n\nwhen I receive [close map v]\nspam\nbroadcast (reset map v)\nhide\n\n@Sprite2\n\ndefine spam\nbroadcast (r v)\nshow\nswitch costume to (1 v)\ngo to x: (-150) y: (30)\ncreate clone of (_myself_ v)\nswitch costume to (2 v)\ngo to x: (-82) y: (-92)\ncreate clone of (_myself_ v)\nswitch costume to (3 v)\ngo to x: (-26) y: (-5)\ncreate clone of (_myself_ v)\nhide\n\nwhen I receive [r v]\ndelete this clone\n\nwhen I start as a clone\ngo to [front v] layer\nforever\n    if <not <(boss) = (costume [number v])>> then\n        if <touching (mouse-pointer v)?> then\n            repeat until <not <touching (mouse-pointer v)?>>\n                think [cooming soon!] for (0.1) seconds\n            end\n        end\n    end\nend\n\nwhen I receive [map v]\nspam\n\n@volume\n\nwhen flag clicked\ngo to x: (210) y: (142)\npoint in direction (90)\nset size to (100) %\nset [vol v] to [off]\nhide\nforever\n    go [forward v] (1) layers\n    go to [front v] layer\n    go [forward v] (1) layers\n    if <touching (mouse-pointer v)?> then\n        change size by (([sin v] of (size) ) / (0.1))\n        turn right ([cos v] of (xoay) ) degrees\n        if <mouse down?> then\n            change size by (([cos v] of (size) ) / (0.1))\n            set [brightness v] effect to (20)\n        else\n            set [brightness v] effect to (0)\n        end\n    else\n        point in direction (90)\n        change size by (([cos v] of (size) ) / (0.1))\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen flag clicked\nset [vol v] to [off]\nforever\n    wait until <<mouse down?> and <touching (mouse-pointer v)?>>\n    wait until <not <mouse down?>>\n    set [vol v] to [on]\n    show variable [volume v]\n    wait until <<mouse down?> and <touching (mouse-pointer v)?>>\n    wait until <not <mouse down?>>\n    set [vol v] to [off]\n    hide variable [volume v]\nend\n\nwhen flag clicked\nforever\n    if <(volume) > [65]> then\n        switch costume to (65 v)\n    else\n        if <(volume) > [32]> then\n            switch costume to (32 v)\n        else\n            if <(volume) > [19]> then\n                switch costume to (20 v)\n            else\n                if <(volume) = [0]> then\n                    switch costume to (0 v)\n                else\n                    if <(volume) > [0]> then\n                        switch costume to (20 v)\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [1 v]\nshow\n\n@vol 2\n\nwhen flag clicked\nforever\n    go to x: (150) y: (101)\n    go to [front v] layer\n    if <(vol) = [on]> then\n        show\n    else\n        hide\n    end\nend\n\n@vol\n\nwhen flag clicked\nset y to (101)\nset x to (152)\ngo to [front v] layer\nforever\n    set y to (101)\n    if <(vol) = [on]> then\n        show\n        if <<mouse down?> and <touching (mouse-pointer v)?>> then\n            repeat until <not <mouse down?>>\n                set x to (mouse x)\n                if <(x position) < [102]> then\n                    set x to (102)\n                end\n                if <(x position) > [202]> then\n                    set x to (202)\n                end\n            end\n        end\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    set [volume v] to ((x position) - (102))\nend\n\n@Sprite3\n\nwhen I receive [unlock map v]\nshow\n\nwhen flag clicked\nhide\n\nwhen this sprite clicked\nbroadcast (map v)\n\n@Sprite4\n\nwhen I receive [map v]\nshow\n\nwhen flag clicked\nhide\n\nwhen this sprite clicked\nbroadcast (r v)\nbroadcast (reset map v)\nbroadcast (close map v)\nhide\n\nshow\n\n@play button2\n\nwhen flag clicked\ngo to x: (0) y: (-70)\nswitch costume to (costume1 v)\nforever\n    if <(costume [number v]) = [1]> then\n        if <touching (mouse-pointer v)?> then\n            change size by (((120) - (size)) / (3))\n            set [ghost v] effect to (20)\n            point in direction (([sin v] of ((timer) * (1000)) ) + (90))\n            if <mouse down?> then\n                Something\n                play sound [Collect v] until done\n                wait until <not <mouse down?>>\n            end\n        else\n            point in direction (90)\n            change size by (((100) - (size)) / (3))\n            set [ghost v] effect to (-10)\n        end\n    end\nend\n\nwhen flag clicked\nrepeat (10)\n    hide\n    go to [back v] layer\nend\n\nwhen this sprite clicked\nif <(costume [number v]) = [1]> then\n    switch costume to (costume2 v)\n    point in direction (90)\n    set [ghost v] effect to (0)\n    go to [front v] layer\n    repeat until <(costume [number v]) = [1]>\n        go to x: (0) y: (-70)\n        repeat (30)\n            change y by (-0.5)\n        end\n        repeat (30)\n            change y by (0.5)\n        end\n    end\nelse\n    switch costume to (costume1 v)\nend\n\nwhen flag clicked\nset [timer v] to (timer)\nforever\n    wait (0.01) seconds\n    change [timer v] by (0.069)\nend\n\nwhen I receive [1 v]\nshow\n\nwhen I receive [select  v]\nhide\n\n@Dragon\n\nhide\n\n
English:\n-----------story:-------------\nOne day, yellow stickman fought scratch cat but scratch cat is won. Scratch cat hypnotized into red stickman. Black stickman is yellow stickman's friend. He saw that. You are player. You control Black stickman to awaken yellow stickman and win scratch cat. But scratch cat is one of the guardians of colour. Their leader is the king. Destroy the king to regain peace for colour land.\n---------How to play------------\n-arrow keys or WASD keys to move\n-go to the back door to go to the last level\n-go to the front door to go to the next level\n-spacebar or click to shoot\ntiếng việt:\n-----------câu chuyện:-------------\nMột ngày nọ, người que màu vàng chiến đấu với mèo scratch nhưng mèo scratch đã chiến thắng. Mèo scratch thôi miên thành người que đỏ. Người que đen là bạn của người que vàng. Anh ấy đã thấy nó. bạn là người chơi. Bạn điều khiển Người que đen đánh thức Người que vàng và thu phục mèo scratch\n--------- Cách chơi ------------\n-nhấn phím mũi tên hoặc phím wasd để di chuyển\n-đi đến cửa sau để đi đến cấp độ trước\n-đi đến cửa trước để đến cấp độ sau\n-nhấn phím cách