Winter World | Platformer 3 #games 

Instructions: Welcome to Winter World 3!\n\n----------------------INSTRUCTIONS------------------------\n\n- Use arrows or WASD keys to move\n- Trampolines make you bounce high \n- The pink and brown things make you small \n- you jump on the yellow circles \n- The 5 arrows in a row make you fling backwards\n- Some levels you need to get the key!!\n\nAlso watch out for moving enemies and spikes!\n\nI don't know why but can someone tell me why the 3 Jumps Max doesn't work with mobile?\n\nSUBSCRIBE\nhttps://www.youtube.com/@henrywolfe48/featured\n\nWINTER WORLD 1\nhttps://scratch.mit.edu/projects/465118577\nWINTER WORLD 2\nhttps://scratch.mit.edu/projects/782117834\n\n---------------------------CREDITS---------------------------\n\nThanks to @InfinitelyEndless for most of the platformer character code! :D\n\nNO ADVERTIZING\n\n\n\n\n\n\n#all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #all #games #games #games #games #games #games #games #games #games #games #games #games #games #games #games #games #games #games #games #games #games #games #games #games

@Stage\n\nwhen I receive [start v]\nwait (2) seconds\nforever\n    set volume to (50) %\n    play sound [\[Royalty Free Music\] Winter Sunshine - Nicolai Heidlas v] until done\nend\n\nwhen I receive [sound on v]\nset volume to (50) %\n\nwhen I receive [sound v]\nset volume to (0) %\n\nwhen flag clicked\nswitch backdrop to (backdrop2 v)\n\nwhen I receive [next level v]\nif <(Level) = [9]> then\n    switch backdrop to (backdrop3 v)\nend\nif <(Level) = [10]> then\n    switch backdrop to (backdrop9 v)\nend\n\n@Player\n\nwhen flag clicked\nforever\n    if <<<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > ((y position) + (20))>>>> and <<touching (orbs v)?> or <touching (line v)?>>> then\n        change [y v v] by (3)\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (speed v)?> then\n        change [x v v] by (-6)\n    end\n    if <touching (size o meter v)?> then\n        broadcast (Small v)\n        set size to (40) %\n        wait (3) seconds\n        set size to (100) %\n    end\nend\n\ndefine reset\nclear graphic effects\ngo to x: (-200) y: (-50)\npoint in direction (90)\nset [dead? v] to [0]\nset [x v v] to [0]\nset [y v v] to [0]\nset size to (100) %\nshow\n\nwhen I receive [next level v]\nset [change? v] to [1]\nreset\nset [change? v] to [0]\n\nwhen I receive [start v]\nset [level v] to [1]\nset [dead? v] to [0]\nset size to (100) %\nreset\nforever\n    go to [front v] layer\n    if <<<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> and <(dead?) = [0]>> then\n        change [x v v] by (.9)\n    end\n    if <<<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(mouse x) < (x position)>>> and <(dead?) = [0]>> then\n        change [x v v] by (-.9)\n    end\n    set [x v v] to ((X v) * (0.9))\n    change x by (X v)\n    if <touching (ground v)?> then\n        change y by (2)\n        if <touching (ground v)?> then\n            change y by (2)\n            if <touching (ground v)?> then\n                change y by (2)\n                if <touching (ground v)?> then\n                    change y by (2)\n                    if <touching (ground v)?> then\n                        change y by (2)\n                        if <touching (ground v)?> then\n                            change x by ((X v) * (-2))\n                            change y by (-5)\n                            if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > ((y position) + (20))>>>> then\n                                if <(X v) > [0]> then\n                                    set [x v v] to [-5]\n                                else\n                                    set [x v v] to [5]\n                                end\n                            else\n                                set [x v v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change [y v v] by (-0.8)\n    change y by (Y v)\n    if <<touching (ground v)?> or <<touching (moving ground v)?> or <touching (ice ghost stuff v)?>>> then\n        change y by ((Y v) * (-1))\n        set [y v v] to [0]\n    end\n    change y by (-1)\n    if <<touching (ground v)?> or <<touching (moving ground v)?> or <touching (ice ghost stuff v)?>>> then\n        if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > ((y position) + (20))>>>> then\n            if <<(Level) = [1]> and <<(Jumps) = [3]> or <(Jumps) = [6]>>> then\n                set [y v v] to [0]\n            else\n                set [y v v] to [12]\n            end\n        end\n    end\n    change y by (1)\n    if <<<<<touching (gears v)?> or <touching (danger v)?>> or <touching (killer wheel2 v)?>> or <touching (lightning v)?>> and <(dead?) = [0]>> then\n        Spin off screen\n    end\n    if <touching (trampoline v)?> then\n        start sound [Big Boing v]\n        set [y v v] to [15]\n    end\nend\n\nwhen I receive [start v]\nforever\n    set [direction v] to (direction)\nend\n\nwhen I receive [start v]\nset [change? v] to [0]\nforever\n    if <touching (flag v)?> then\n        start sound [Ding Sound Effect v]\n        broadcast (NEXT LEVEL v)\n        change [level v] by (1)\n    end\nend\n\nwhen I receive [start v]\nforever\n    if <(y position) = [-179]> then\n        Spin off screen\n    end\nend\n\nwhen [r v] key pressed\nif <(dead?) = [0]> then\n    reset\nend\n\nwhen flag clicked\nhide\ngo to [back v] layer\n\nwhen I receive [start v]\nshow\n\ndefine Spin off screen\nset [dead? v] to [1]\nchange [player death v] by (1)\nrepeat (20)\n    change [ghost v] effect by (5)\nend\nreset\n\nwhen I start as a clone\nswitch costume to (center2 v)\nrepeat (10)\n    change [ghost v] effect by (5)\n    change size by (-5)\nend\ndelete this clone\n\nwhen flag clicked\nswitch costume to (center v)\n\nwhen flag clicked\nclear graphic effects\nforever\n    if <<<touching (spikes v)?> or <touching (moving danger v)?>> or <touching (moving spikes v)?>> then\n        start sound [\[another deltarune noise\] v]\n        broadcast (Dead v)\n        repeat (10)\n            change [ghost v] effect by (10)\n        end\n        go to x: (-200) y: (-65)\n        clear graphic effects\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (enemy v)?> then\n        go to x: (-200) y: (-65)\n    end\nend\n\nwhen flag clicked\nhide\n\nwait (1) seconds\nrepeat (5)\n    change [ghost v] effect by (20)\nend\nhide\n\nwhen flag clicked\nbroadcast (Start v)\n\nwhen I receive [start v]\n\nset [y v v] to [0]\n\nwhen I receive [?: closed v]\nshow\n\nwhen I receive [? v]\nhide\n\nwhen I receive [dead v]\ngo to x: (-200) y: (-65)\nclear graphic effects\n\n@Ground\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to [front v] layer\nhide\n\nwhen I receive [start v]\nshow\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [key v]\nswitch costume to (key 7 v)\n\nwhen I receive [dead v]\nif <(costume [name v]) = [Key 7]> then\n    switch costume to (costume7 v)\nend\n\n@Snow\n\nwhen I receive [start v]\ngo to [back v] layer\ngo [forward v] (1) layers\nhide\nforever\n    create clone of (_myself_ v)\n    wait (pick random (0.1) to (0.4)) seconds\nend\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\nshow\ngo to x: (pick random (-227) to (228)) y: (180)\nrepeat until <(y position) < [-174]>\n    change y by (-2)\nend\ndelete this clone\n\n@Stuff\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\n\nwhen I receive [start v]\nshow\ngo to [back v] layer\n\nwhen I receive [next level v]\nnext costume\n\n@Hands\n\nwhen I receive [start v]\nset size to (50) %\nswitch costume to (costume1 v)\nshow\nforever\n    go to (player v)\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [small v]\nset size to (22) %\nswitch costume to (costume2 v)\nwait (3) seconds\nswitch costume to (costume1 v)\nset size to (50) %\n\nwhen I receive [? v]\nhide\n\nwhen I receive [?: closed v]\nshow\n\n@Flag\n\nwhen flag clicked\nhide\nswitch costume to (green flag v)\ngo to x: (0) y: (0)\n\nwhen I receive [start v]\nshow\nwait (1) seconds\ngo to [back v] layer\ngo [forward v] (1) layers\n\nwhen I receive [key v]\nshow\nrepeat (10)\n    change [brightness v] effect by (-10)\n    change [ghost v] effect by (-10)\n    change [pixelate v] effect by (-10)\nend\nclear graphic effects\n\nwhen I receive [dead v]\nif <<(Level) = [3]> or <(Level) = [5]>> then\n    hide\nend\n\nwhen I receive [next level v]\nshow\nclear graphic effects\nnext costume\nif <<(costume [number v]) = [3]> or <(costume [number v]) = [5]>> then\n    hide\n    set [brightness v] effect to (100)\n    set [ghost v] effect to (100)\n    set [pixelate v] effect to (100)\nend\n\nwhen I receive [start v]\nshow\nforever\n    repeat (10)\n        change y by (-0.5)\n    end\n    repeat (10)\n        change y by (0.5)\n    end\nend\n\nwhen this sprite clicked\nbroadcast (Dead v)\n\n@Sound\n\nwhen this sprite clicked\nif <(costume [number v]) = [1]> then\n    switch costume to (costume2 v)\n    broadcast (Sound v)\nelse\n    switch costume to (costume1 v)\n    broadcast (Sound On v)\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nshow\nswitch costume to (costume1 v)\ngo to [front v] layer\n\nwhen I receive [start v]\nforever\n    if <touching (mouse-pointer v)?> then\n        change size by (((60) - (size)) / (3))\n        point in direction (90)\n    else\n        change size by (((40) - (size)) / (3))\n    end\nend\n\n@Clouds\n\nwhen flag clicked\nset [ghost v] effect to (70)\nforever\n    go to x: (-26) y: (19)\n    glide (8) secs to x: (-300) y: (13)\nend\n\nwhen flag clicked\ngo to [back v] layer\nhide\n\nwhen I receive [start v]\nshow\n\n@Spikes\n\nwhen flag clicked\ngo to x: (36) y: (28)\nhide\nswitch costume to (costume1 v)\ngo to [back v] layer\ngo [forward v] (1) layers\n\nwhen I receive [start v]\nshow\nforever\n    repeat (10)\n        change y by (-0.5)\n    end\n    repeat (10)\n        change y by (0.5)\n    end\nend\n\nwhen I receive [next level v]\nnext costume\nif <(Level) = [11]> then\n    switch costume to (costume12 v)\nend\n\n@Moving danger\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\n\nwhen I receive [next level v]\npoint in direction (90)\nnext costume\nif <(costume [number v]) = [2]> then\n    switch costume to (costume5 v)\n    go to x: (0) y: (0)\n    repeat until <(costume [number v]) = [3]>\n        repeat (45)\n            change x by (3)\n        end\n        repeat (45)\n            change x by (-3)\n        end\n    end\nend\nif <(costume [number v]) = [3]> then\n    switch costume to (costume3 v)\n    go to x: (0) y: (0)\n    repeat until <(costume [number v]) = [4]>\n        repeat (55)\n            change x by (-3)\n        end\n        repeat (55)\n            change x by (3)\n        end\n    end\nend\nif <(costume [number v]) = [4]> then\n    switch costume to (costume8 v)\n    go to x: (0) y: (0)\n    repeat until <(costume [number v]) = [5]>\n        repeat (24)\n            change x by (3)\n        end\n        repeat (24)\n            change x by (-3)\n        end\n    end\nend\nif <(costume [number v]) = [7]> then\n    switch costume to (costume7 v)\n    go to x: (0) y: (0)\n    repeat until <(costume [number v]) = [8]>\n        repeat (45)\n            change x by (-3)\n        end\n        repeat (45)\n            change x by (3)\n        end\n    end\nend\n\nwhen I receive [start v]\nshow\n\n@Moving ground\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\n\nwhen I receive [next level v]\nhide\nnext costume\nif <(costume [number v]) = [3]> then\n    show\n    switch costume to (costume3 v)\n    go to x: (0) y: (0)\n    repeat until <(costume [number v]) = [4]>\n        repeat (40)\n            change x by (3)\n        end\n        repeat (40)\n            change x by (-3)\n        end\n    end\nend\nif <(costume [number v]) = [5]> then\n    show\n    switch costume to (costume6 v)\n    go to x: (0) y: (0)\n    repeat until <(costume [number v]) = [6]>\n        repeat (86)\n            change x by (-3)\n        end\n        repeat (86)\n            change x by (3)\n        end\n    end\nend\n\nwhen I receive [start v]\n\nhide\n\n@Skip\n\nwhen flag clicked\nhide\nset volume to (100) %\n\nwhen I receive [start v]\nshow\ngo to [front v] layer\nswitch costume to (costume1 v)\n\nwhen this sprite clicked\nbroadcast (NEXT LEVEL v)\nchange [level v] by (1)\n\nwhen I receive [start v]\nforever\n    if <([costume # v] of [ground v]) = [11]> then\n        change volume by (-10)\n    end\nend\n\nwhen I receive [start v]\nforever\n    if <(volume) = [90]> then\n        hide\n    end\nend\n\nwhen I receive [start v]\nforever\n    if <touching (mouse-pointer v)?> then\n        change size by (((60) - (size)) / (3))\n        point in direction (90)\n    else\n        change size by (((40) - (size)) / (3))\n    end\nend\n\n@Trampoline\n\nwhen flag clicked\nhide\nswitch costume to (t1 v)\n\nwhen I receive [start v]\nshow\nwait (1) seconds\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [start v]\ngo to x: (0) y: (0)\nshow\nforever\n    repeat (10)\n        change y by (-0.2)\n    end\n    repeat (10)\n        change y by (0.2)\n    end\nend\n\n@Moving spikes\n\nwhen flag clicked\nhide\nswitch costume to (costume1 v)\ngo to [back v] layer\n\nwhen I receive [start v]\ngo to x: (28) y: (18)\nshow\nforever\n    repeat (20)\n        change y by (-2)\n    end\n    wait (2) seconds\n    repeat (20)\n        change y by (2)\n    end\n    wait (2) seconds\nend\n\nwhen I receive [next level v]\nnext costume\n\n@Size O meter\n\nwhen flag clicked\nhide\nswitch costume to (costume1 v)\ngo to [back v] layer\n\nwhen I receive [start v]\ngo to x: (28) y: (18)\nshow\nforever\n    repeat (10)\n        change y by (0.2)\n    end\n    repeat (10)\n        change y by (-0.2)\n    end\nend\n\nwhen I receive [next level v]\nnext costume\n\n@Speed\n\nwhen flag clicked\nhide\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [start v]\nswitch costume to (costume1 v)\nshow\n\n@Orbs\n\nwhen I receive [next level v]\nnext costume\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nswitch costume to (costume1 v)\nshow\n\n@Bird\n\nwhen I receive [start v]\nset [ghost v] effect to (49)\ngo to x: (251) y: (pick random (21) to (176))\nforever\n    repeat (6)\n        wait (Bird Flight Speed) seconds\n        next costume\n    end\n    wait (Bird Flight Speed) seconds\n    switch costume to (costume9 v)\n    wait (Bird Flight Speed) seconds\n    switch costume to (costume8 v)\n    wait (Bird Flight Speed) seconds\n    switch costume to (costume7 v)\n    wait (Bird Flight Speed) seconds\n    switch costume to (costume6 v)\n    wait (Bird Flight Speed) seconds\n    switch costume to (costume5 v)\n    wait (Bird Flight Speed) seconds\n    switch costume to (costume3 v)\n    wait (Bird Flight Speed) seconds\n    switch costume to (costume1 v)\nend\n\nwhen flag clicked\nset [ghost v] effect to (30)\nset [bird flight speed v] to [0.1]\nhide\nwait (3) seconds\ngo to [back v] layer\n\nwhen I receive [start v]\ngo to [front v] layer\nswitch costume to (costume1 v)\nshow\nforever\n    if <(x position) < [-248]> then\n        hide\n        wait (1) seconds\n        go to x: (251) y: (pick random (21) to (176))\n        show\n    end\n    change x by (-2)\nend\n\n@Bird2\n\nwhen I receive [start v]\nset [ghost v] effect to (49)\ngo to x: (251) y: (pick random (21) to (176))\nforever\n    repeat (6)\n        wait (Bird Flight Speed) seconds\n        next costume\n    end\n    wait (Bird Flight Speed) seconds\n    switch costume to (costume9 v)\n    wait (Bird Flight Speed) seconds\n    switch costume to (costume8 v)\n    wait (Bird Flight Speed) seconds\n    switch costume to (costume7 v)\n    wait (Bird Flight Speed) seconds\n    switch costume to (costume6 v)\n    wait (Bird Flight Speed) seconds\n    switch costume to (costume5 v)\n    wait (Bird Flight Speed) seconds\n    switch costume to (costume3 v)\n    wait (Bird Flight Speed) seconds\n    switch costume to (costume1 v)\nend\n\nwhen flag clicked\nset [ghost v] effect to (30)\nset [bird flight speed v] to [0.1]\nhide\nwait (3) seconds\ngo to [back v] layer\n\nwhen I receive [start v]\nswitch costume to (costume1 v)\nshow\nforever\n    if <(x position) < [-248]> then\n        hide\n        wait (1) seconds\n        go to x: (251) y: (pick random (21) to (176))\n        show\n    end\n    change x by (-2.5)\nend\n\n@Love fave\n\nwhen I receive [start v]\nset [costume v] to [0]\nhide\nforever\n    if <not <<(LOVED__) = [1]> and <(FAVED___) = [1]>>> then\n        wait (pick random (20) to (30)) seconds\n        switch costume to (costume2 v)\n        go to x: (0) y: (50)\n        show\n        go to [front v] layer\n        start sound [pop v]\n        repeat (9)\n            change y by (-6)\n        end\n        repeat (5)\n            change y by (3)\n        end\n        repeat (5)\n            change y by (-1)\n        end\n        wait (2) seconds\n        repeat (15)\n            change y by (7)\n        end\n        hide\n    end\n    if <(Costume) > [0]> then\n        hide\n        stop [this script v]\n    end\nend\n\n@Sprite1\n\nwhen [timer v] > (0.03)\ngo to x: (95) y: (-1000)\nrepeat until <(round (y position)) = [-27]>\n    go to [front v] layer\n    change [ghost v] effect by (-10)\n    change y by (((1) - (y position)) / (5))\nend\nset y to (-27)\n\nwhen flag clicked\ngo to x: (95) y: (-27)\nset [ghost v] effect to (100)\nforever\n    go to [front v] layer\n    reset timer\nend\n\nwhen flag clicked\ngo to x: (95) y: (-27)\nset [ghost v] effect to (100)\nforever\n    go to [front v] layer\n    reset timer\nend\n\nwhen flag clicked\ngo to x: (95) y: (-27)\nset [ghost v] effect to (100)\nforever\n    go to [front v] layer\n    reset timer\nend\n\nwhen flag clicked\ngo to x: (95) y: (-27)\nset [ghost v] effect to (100)\nforever\n    go to [front v] layer\n    reset timer\nend\n\n@Sprite2\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\ngo to x: (-195) y: (0)\nshow\nwait (0.1) seconds\nglide (0.5) secs to x: (0) y: (0)\n\nwhen I receive [next level v]\nif <(Level) = [2]> then\n    hide\nend\nif <(Level) = [4]> then\n    hide\nend\nif <(Level) = [6]> then\n    hide\nend\n\nwhen I receive [next level v]\nif <<(Level) = [3]> or <(Level) = [5]>> then\n    switch costume to (costume2 v)\n    hide\n    go to x: (-195) y: (0)\n    show\n    wait (0.1) seconds\n    glide (0.5) secs to x: (0) y: (0)\nend\n\n@Sprite3\n\nwhen flag clicked\nhide\ngo to x: (0) y: (0)\nset [jumps v] to [0]\nset [ghost v] effect to (100)\nswitch costume to (jump 0/3 v)\ngo to [front v] layer\nshow\nwait (0.77) seconds\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen [up arrow v] key pressed\nif <(Level) = [1]> then\n    if <not <<(costume [number v]) = [4]> or <(costume [number v]) = [5]>>> then\n        change [jumps v] by (1)\n        next costume\n        wait (1) seconds\n        if <<<(Jumps) = [3]> or <(Jumps) = [6]>> and <(Level) = [1]>> then\n            broadcast (3 Jumps v)\n        end\n    else\n        change [jumps v] by (0)\n    end\nend\n\nwhen I receive [dead v]\nif <(Level) = [1]> then\n    switch costume to (jump 0/3 v)\n    set [jumps v] to [0]\nend\nif <<(Level) = [3]> or <(Level) = [5]>> then\n    switch costume to (key 0/1 v)\nend\n\nwhen [r v] key pressed\nbroadcast (Dead v)\n\nwhen I receive [start v]\n\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\n\nhide\nswitch costume to (reset v)\ngo to [front v] layer\nset [ghost v] effect to (100)\n\nwhen I receive [3 jumps v]\nif <(Level) = [1]> then\n    show\n    repeat (10)\n        change [ghost v] effect by (-10)\n    end\nend\n\nwhen I receive [next level v]\nhide\n\nwhen I receive [next level v]\nset [jumps v] to [0]\nif <(Level) = [2]> then\n    hide\nend\nif <<(Level) = [3]> or <(Level) = [5]>> then\n    set [ghost v] effect to (100)\n    switch costume to (key 0/1 v)\n    go to [front v] layer\n    show\n    wait (0.77) seconds\n    repeat (10)\n        change [ghost v] effect by (-10)\n    end\nend\n\nwhen I receive [key v]\nif <<(Level) = [3]> or <(Level) = [5]>> then\n    next costume\nend\n\nwhen [w v] key pressed\nif <(Level) = [1]> then\n    if <not <<(costume [number v]) = [4]> or <(costume [number v]) = [5]>>> then\n        change [jumps v] by (1)\n        next costume\n        wait (1) seconds\n        if <<<(Jumps) = [3]> or <(Jumps) = [6]>> and <(Level) = [1]>> then\n            broadcast (3 Jumps v)\n        end\n    else\n        change [jumps v] by (0)\n    end\nend\n\nwhen flag clicked\nforever\n    if <<mouse down?> and <(mouse y) > ((y position) + (20))>> then\n        if <not <<(costume [number v]) = [4]> or <(costume [number v]) = [5]>>> then\n            change [jumps v] by (1)\n            next costume\n            wait (1) seconds\n            if <<<(Jumps) = [3]> or <(Jumps) = [6]>> and <(Level) = [1]>> then\n                broadcast (3 Jumps v)\n            end\n        else\n            change [jumps v] by (0)\n        end\n    end\nend\n\n@?\n\nwhen flag clicked\ngo to x: (-114) y: (-155)\nhide\n\nwhen I receive [start v]\nshow\ngo to [front v] layer\nswitch costume to (costume1 v)\n\nwhen this sprite clicked\nbroadcast (? v)\nhide\n\nwhen I receive [start v]\nforever\n    if <touching (mouse-pointer v)?> then\n        change size by (((60) - (size)) / (3))\n        point in direction (90)\n    else\n        change size by (((40) - (size)) / (3))\n    end\nend\n\nwhen I receive [?: closed v]\nshow\n\nwhen I receive [next level v]\nif <(Level) = [11]> then\n    change x by (-50)\nend\n\n@Sprite4\n\nwhen flag clicked\nhide\nwait (0.1234) seconds\ngo to [front v] layer\nset [ghost v] effect to (100)\nset [brightness v] effect to (100)\n\nwhen I receive [? v]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\n    change [brightness v] effect by (-10)\nend\nclear graphic effects\n\nwhen this sprite clicked\nbroadcast (?: CLOSED v)\nrepeat (10)\n    change [brightness v] effect by (10)\n    change [ghost v] effect by (10)\nend\nhide\n\n@Sprite5\n\nwhen flag clicked\nhide\n\nwhen I receive [next level v]\nif <(Level) = [4]> then\n    hide\nend\nif <(Level) = [6]> then\n    hide\nend\n\nwhen I receive [start v]\nforever\n    repeat (10)\n        change y by (-0.2)\n    end\n    repeat (10)\n        change y by (0.2)\n    end\nend\n\nwhen I receive [next level v]\nif <(Level) = [3]> then\n    switch costume to (costume1 v)\n    repeat until <(Level) = (<(Level) = [3]> + (1))>\n        if <touching (player v)?> then\n            hide\n            broadcast (Key v)\n        end\n    end\nend\n\nwhen I receive [key v]\nstart sound [Magic Spell v]\n\nwhen I receive [dead v]\nif <(Level) = [3]> then\n    show\nend\nif <(Level) = [5]> then\n    show\nend\n\nwhen I receive [next level v]\nif <(Level) = [5]> then\n    switch costume to (costume2 v)\n    repeat until <(Level) = (<(Level) = [5]> + (1))>\n        if <touching (player v)?> then\n            hide\n            broadcast (Key v)\n        end\n    end\nend\n\nhide\n\nhide\n\nwhen I receive [next level v]\nif <(Level) = [3]> then\n    show\nend\nif <(Level) = [5]> then\n    show\nend\n\n@?2\n\nwhen flag clicked\ngo to x: (-75) y: (-155)\nhide\n\nwhen I receive [start v]\nshow\ngo to [front v] layer\nswitch costume to (costume1 v)\n\nwhen this sprite clicked\nbroadcast (Dead v)\n\nwhen I receive [start v]\nforever\n    if <touching (mouse-pointer v)?> then\n        change size by (((60) - (size)) / (3))\n        point in direction (90)\n    else\n        change size by (((40) - (size)) / (3))\n    end\nend\n\nwhen I receive [next level v]\nif <(Level) = [11]> then\n    change x by (-50)\nend\n\n@Sprite6\n\nwhen flag clicked\nhide\nset [ghost v] effect to (100)\n\nwhen I receive [3 jumps v]\nshow\ngo to [front v] layer\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nclear graphic effects\n\nwhen I receive [dead v]\nhide\n\n