Breeze: A Platformer

Instructions:                              Breeze, A Platformer\n\nFinally, after around 4 months of work I've finished my first big game! A lot of work was put into this so enjoy!\n\nthanks to all of my followers and friends\nthe aim of the game is to reclaim the sword and return it to the pedestal in level 1.\n_-Dreamer-_\n

@Stage\n\n@ground\n\nwhen flag clicked\ngo to [back v] layer\nswitch costume to (1 v)\nif <(gamestate) = [on]> then\n    forever\n        switch costume to (level)\n    end\nend\n\n@player\n\nwhen flag clicked\nif <(gamestate) = [on]> then\n    set [lives v] to [5]\n    show\n    set size to (115) %\n    switch costume to (costume1 v)\n    go to [front v] layer\n    go [backward v] (18) layers\n    go to x: (-200) y: (0)\n    set rotation style [left-right v]\n    set [flippers? v] to [0]\n    set [yvel v] to [0]\n    set [level v] to [1]\n    forever\n        change y by (yvel)\n        TouchingGround? <(yvel) > [0]>\n        if <<(yvel) < [4]> or <key (up arrow v) pressed?>> then\n            change [yvel v] by (-1)\n        else\n            change [yvel v] by (-2)\n        end\n        if <key (up arrow v) pressed?> then\n            if <<(jumpkey) = [0]> and <(falling?) < [3]>> then\n                start sound [jump v]\n                set [yvel v] to [12]\n                set [falling? v] to [6]\n                set [jumpkey v] to [1]\n            end\n        else\n            set [jumpkey v] to [0]\n        end\n        if <(x position) = [240]> then\n            change [level v] by (1)\n            go to x: (-239) y: (0)\n        end\n        if <<(level) = [12]> and <(y position) = [-180]>> then\n            set [level v] to [14]\n            go to x: (-239) y: (0)\n        end\n        if <(walljump) > [0]> then\n            change [walljump v] by (-1)\n        else\n            set [xvel v] to ((xvel) * (0.7))\n            if <key (left arrow v) pressed?> then\n                change [xvel v] by (-1.5)\n            end\n            if <key (right arrow v) pressed?> then\n                change [xvel v] by (1.5)\n            end\n        end\n        if <(xvel) < [-0.5]> then\n            walk [-90] (xvel)\n        else\n            if <(xvel) > [0.5]> then\n                walk [90] (xvel)\n            else\n                set [frame v] to [0]\n            end\n        end\n    end\nend\n\ndefine TouchingGround? <up?>\nchange [falling? v] by (1)\nrepeat until <not <touching (ground v)?>>\n    if <up?> then\n        change y by (-1)\n    else\n        change y by (1)\n        set [falling? v] to [0]\n    end\n    set [yvel v] to [0]\nend\n\ndefine walk (direction) (speed)\npoint in direction (direction)\nchange x by (speed)\nset [slope v] to [0]\nrepeat until <<(slope) = [8]> or <not <touching (ground v)?>>>\n    change y by (1)\n    change [slope v] by (1)\nend\nif <(slope) = [8]> then\n    change x by ((0) - (speed))\n    change y by ((0) - (slope))\n    if <<key (up arrow v) pressed?> and <([abs v] of (speed) ) > [3]>> then\n        if <(walljump) = [0]> then\n            set [xvel v] to ((-1.2) * (speed))\n            set [yvel v] to [11]\n            set [falling? v] to [6]\n            set [walljump v] to [5]\n        end\n    else\n        set [xvel v] to [0]\n    end\nend\n\nwhen I receive [die v]\ngo to x: (-200) y: (0)\nchange [lives v] by (-1)\nplay sound [Minecraft Fall Damage \(Crack\) - Sound Effect \(HD\) \(1\) v] until done\nwait (0.05) seconds\n\nwhen flag clicked\nforever\n    switch costume to (costume1 v)\n    wait (pick random (1) to (1.3)) seconds\n    switch costume to (costume2 v)\n    wait (0.07) seconds\nend\n\nwhen I receive [die v]\nset [yvel v] to [0]\nset [xvel v] to [0]\n\nwhen flag clicked\nforever\n    if <<(level) = [2]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (0)\n    end\n    if <<(level) = [3]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (0)\n    end\n    if <<(level) = [4]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (100)\n    end\n    if <<(level) = [5]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (150)\n    end\n    if <<(level) = [6]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (0)\n    end\n    if <<(level) = [7]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (0)\n    end\n    if <<(level) = [8]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (0)\n    end\n    if <<(level) = [9]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (-50)\n    end\n    if <<(level) = [10]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (180)\n    end\n    if <<(level) = [11]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (-30)\n    end\n    if <<(level) = [12]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (12)\n    end\n    if <<(level) = [13]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (-97)\n    end\n    if <<(level) = [14]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (-133)\n    end\n    if <<(level) = [15]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (-70)\n    end\n    if <<(level) = [16]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (-110)\n    end\n    if <<(level) = [17]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (-110)\n    end\n    if <<(level) = [18]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (-20)\n    end\n    if <<(level) = [19]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (-52)\n    end\n    if <<(level) = [20]> and <(x position) = [-240]>> then\n        change [level v] by (-1)\n        go to x: (230) y: (150)\n    end\nend\n\nwhen flag clicked\nforever\n    if <<(sword?) = [1]> and <touching (pedestal v)?>> then\n        wait (0.02) seconds\n        set [pedestal v] to [1]\n    end\nend\n\nwhen flag clicked\nforever\n    wait until <touching (water v)?>\n    play sound [Sound Effect - Water splash v] until done\n    wait until <not <touching (water v)?>>\nend\n\nwhen flag clicked\nforever\n    play sound [Essa - Ambient Music Loop 7 \[ Free Songs for Use! Copyright Free Music \] v] until done\nend\n\n@ground cover layer (bdack)\n\nwhen flag clicked\ngo to [back v] layer\ngo [forward v] (3) layers\nif <(gamestate) = [on]> then\n    switch costume to (1 v)\n    forever\n        switch costume to (level)\n    end\nend\n\n@ground cover laver (front)\n\nwhen flag clicked\nif <(gamestate) = [on]> then\n    switch costume to (1 v)\n    forever\n        switch costume to (level)\n    end\nend\n\n@dust particle\n\nwhen flag clicked\ngo to [front v] layer\nif <(gamestate) = [on]> then\n    broadcast (greenflag v)\n    set [ghost v] effect to (100)\n    hide\nend\n\nwhen I start as a clone\nshow\nrepeat (50)\n    change x by (1)\n    change y by (-1)\n    move (1) steps\n    turn left (2) degrees\n    change [ghost v] effect by (-1)\nend\nrepeat (50)\n    change x by (1)\n    change y by (-1)\n    move (1) steps\n    change [ghost v] effect by (2)\n    turn left (2) degrees\nend\ndelete this clone\n\nwhen I receive [greenflag v]\nif <(gamestate) = [on]> then\n    forever\n        set size to (pick random (10) to (100)) %\n        go to (random position v)\n        create clone of (_myself_ v)\n        turn right (pick random (0) to (360)) degrees\n        next costume\n        wait (0.1) seconds\n    end\nend\n\n@enemy1\n\nwhen flag clicked\nset [gamestate v] to [on]\nswitch costume to (costume8 v)\nset rotation style [left-right v]\ngo to x: (0) y: (-121)\ngo to [front v] layer\nforever\n    if <(gamestate) = [on]> then\n        repeat until <(x position) = [-80]>\n            point in direction (-90)\n            change x by (-1)\n        end\n        wait (0.07) seconds\n        repeat until <(x position) = [80]>\n            point in direction (90)\n            change x by (1)\n        end\n        wait (0.07) seconds\n    end\nend\n\nwhen flag clicked\nset [enemy1 state v] to [alive]\nforever\n    if <<touching (player v)?> and <(yvel) = [-1]>> then\n        broadcast (die v)\n        start sound [Big Boing v]\n    end\n    if <(enemy1 state) = [alive]> then\n        if <(level) = [3]> then\n            show\n        else\n            hide\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (rock v)?> then\n        hide\n        stop [other scripts in sprite v]\n    end\n    if <<touching (player v)?> and <(yvel) < [-1]>> then\n        set [yvel v] to [7]\n        set [enemy1 state v] to [dead]\n        start sound [Wooden Thump Sound Effect v]\n        repeat (4)\n            next costume\n            change [ghost v] effect by (33.3)\n            wait (0.04) seconds\n        end\n        hide\n    end\nend\n\nif <touching (rock v)?> then\n    hide\n    stop [other scripts in sprite v]\nend\n\n@mushroom\n\nwhen flag clicked\nif <(gamestate) = [on]> then\n    switch costume to (costume1 v)\n    forever\n        if <<(level) = [4]> or <(level) = [9]>> then\n            show\n        else\n            hide\n        end\n        if <(level) = [4]> then\n            go to x: (47) y: (26)\n        end\n        if <(level) = [9]> then\n            go to x: (49) y: (33)\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (player v)?> then\n        start sound [Big Boing v]\n        set [yvel v] to [20]\n        switch costume to (costume1 v)\n        wait (0.03) seconds\n        switch costume to (costume2 v)\n        repeat until <(costume [number v]) = [1]>\n            next costume\n            wait (0.03) seconds\n        end\n    end\nend\n\n@water\n\nwhen flag clicked\nif <(gamestate) = [on]> then\n    switch costume to (costume1 v)\n    forever\n        if <<touching (player v)?> and <(flippers?) = [0]>> then\n            broadcast (die v)\n        end\n        if <<touching (player v)?> and <(flippers?) = [1]>> then\n            if <touching (player v)?> then\n                change [yvel v] by (1.3)\n            end\n            if <key (up arrow v) pressed?> then\n                change [yvel v] by (.3)\n            end\n            if <key (down arrow v) pressed?> then\n                change [yvel v] by (-.5)\n            end\n        end\n        if <(level) = [5]> then\n            set y to ((0) + (([cos v] of (((timer) - (1)) * (400)) ) * (2)))\n            show\n            set [ghost v] effect to (60)\n        else\n            hide\n            if <(level) = [6]> then\n                set y to ((70) + (([cos v] of (((timer) - (1)) * (400)) ) * (2)))\n                show\n                set [ghost v] effect to (60)\n            end\n            if <<(level) = [7]> or <(level) = [8]>> then\n                set y to ((200) + (([cos v] of (((timer) - (1)) * (400)) ) * (2)))\n                show\n                set [ghost v] effect to (60)\n            end\n            if <(level) = [10]> then\n                set y to ((0) + (([cos v] of (((timer) - (1)) * (400)) ) * (2)))\n                show\n                set [ghost v] effect to (60)\n            end\n        end\n    end\nend\n\n@vine\n\nwhen flag clicked\nif <(gamestate) = [on]> then\n    go to [back v] layer\n    forever\n        if <(level) = [5]> then\n            show\n            go to x: (0) y: (20)\n            if <<touching (player v)?> and <key (up arrow v) pressed?>> then\n                set [yvel v] to [10]\n            end\n        else\n            hide\n            if <(level) = [12]> then\n                show\n                go to x: (20) y: (20)\n                if <<touching (player v)?> and <key (up arrow v) pressed?>> then\n                    set [yvel v] to [10]\n                end\n            end\n        end\n    end\nend\n\n@Sprite1\n\nwhen flag clicked\nif <(gamestate) = [on]> then\n    forever\n        set y to ((-70) + (([cos v] of (((timer) - (5)) * (400)) ) * (4)))\n        if <(level) = [5]> then\n            if <(flippers?) = [0]> then\n                show\n            end\n            if <touching (player v)?> then\n                set [flippers? v] to [1]\n                hide\n            end\n        else\n            hide\n        end\n    end\nend\n\n@Sprite2\n\nwhen flag clicked\nif <(gamestate) = [on]> then\n    go to x: (-58) y: (48)\n    set size to (75) %\n    forever\n        switch costume to (lives)\n    end\nend\n\n@Sprite3\n\nwhen flag clicked\nset [gamestate v] to [on]\nbroadcast (start v)\nforever\n    go to [front v] layer\n    go [backward v] (1) layers\nend\n\nwhen I receive [start v]\nhide\nset [shake v] to [20]\nwait until <(lives) = [0]>\nset [gamestate v] to [pause]\nshow\nrepeat until <(shake) = [0]>\n    go to x: (pick random (shake) to ((shake) - ((shake) * (2)))) y: (pick random (shake) to ((shake) - ((shake) * (2))))\n    change [shake v] by (-0.5)\nend\nstop [all v]\n\n@restart button\n\nwhen flag clicked\nforever\n    set [ghost v] effect to (20)\n    next costume\n    wait (0.03) seconds\nend\n\nwhen flag clicked\nforever\n    if <(gamestate) = [on]> then\n        hide\n    end\n    if <(gamestate) = [pause]> then\n        show\n    end\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (50)\n    end\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (0)\n    end\n    if <<touching (mouse-pointer v)?> and <mouse down?>> then\n        set [enemy1 state v] to [alive]\n        set [falling? v] to [0]\n        set [frame v] to [0]\n        set [gamestate v] to [on]\n        set [jumpkey v] to [0]\n        set [level v] to [1]\n        set [lives v] to [5]\n        set [shake v] to [20]\n        set [slope v] to [0]\n        set [speed v] to [0]\n        set [v v] to [0]\n        set [var v] to [0]\n        set [walljump v] to [0]\n        set [xvel v] to [0]\n        set [yvel v] to [0]\n    end\nend\n\nwhen I receive [start v]\ngo to x: (0) y: (0)\nswitch costume to (costume1 v)\nset [speed v] to [5]\nset [var v] to [0]\nforever\n    change [var v] by (speed)\n    go to x: (0) y: ((-100) + (([sin v] of (var) ) * (3)))\nend\n\n@water enemy\n\nwhen flag clicked\ngo to [back v] layer\ngo to x: (0) y: (0)\npoint in direction (90)\nswitch costume to (costume3 v)\nset [speed v] to [5]\nset [var v] to [0]\nforever\n    change [var v] by (speed)\n    go to x: (0) y: ((-100) + (([sin v] of (var) ) * (70)))\n    if <(level) = [10]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (player v)?> then\n        broadcast (die v)\n        wait (0.03) seconds\n    end\nend\n\n@flying enemy\n\nwhen flag clicked\nset rotation style [don't rotate v]\nforever\n    next costume\nend\n\nwhen flag clicked\nset rotation style [don't rotate v]\nforever\n    if <touching (rock v)?> then\n        start sound [Wooden Thump Sound Effect v]\n        hide\n        stop [other scripts in sprite v]\n        stop [this script v]\n    end\n    turn right (5) degrees\n    move (5) steps\n    if <(level) = [12]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nset rotation style [don't rotate v]\nforever\n    if <touching (player v)?> then\n        broadcast (die v)\n        wait (0.06) seconds\n    end\nend\n\n@enemy2\n\nwhen flag clicked\nset [gamestate v] to [on]\nswitch costume to (costume8 v)\nset size to (70) %\nset rotation style [left-right v]\ngo to [front v] layer\ngo [backward v] (5) layers\nforever\n    if <(gamestate) = [on]> then\n        set [flyingfish yvel v] to [5]\n        change y by (flyingfish yvel)\n        repeat until <(flyingfish yvel) = [-5]>\n            change [flyingfish yvel v] by (-.5)\n            change y by (flyingfish yvel)\n        end\n    end\n    if <(level) = [13]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    switch costume to (costume9 v)\n    repeat (5)\n        next costume\n        wait (0.03) seconds\n    end\nend\n\nwhen flag clicked\ngo to x: (150) y: (-121)\nforever\n    repeat until <(x position) = [70]>\n        point in direction (-90)\n        change x by (-1)\n    end\n    wait (0.07) seconds\n    repeat until <(x position) = [170]>\n        point in direction (90)\n        change x by (1)\n    end\n    wait (0.07) seconds\nend\n\nwhen flag clicked\nforever\n    if <touching (player v)?> then\n        broadcast (die v)\n        wait (0.02) seconds\n    end\nend\n\n@enemy\n\nwhen flag clicked\nforever\n    next costume\n    wait (0.04) seconds\nend\n\nwhen flag clicked\nset [fire enemy state v] to [1]\ngo to x: (0) y: (-100)\ngo to [front v] layer\nforever\n    if <touching (rock v)?> then\n        hide\n        set [fire enemy state v] to [0]\n        stop [other scripts in sprite v]\n        stop [this script v]\n    end\n    set y to ((-100) + (([cos v] of (((timer) - (1)) * (400)) ) * (10)))\n    if <touching (rock v)?> then\n        hide\n    end\n    if <(level) = [14]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen flag clicked\ngo to x: (0) y: (-100)\ngo to [front v] layer\nforever\n    repeat until <(x position) = [-80]>\n        change x by (-1)\n    end\n    wait (0.07) seconds\n    repeat until <(x position) = [80]>\n        change x by (1)\n    end\n    wait (0.07) seconds\nend\n\nwhen flag clicked\nforever\n    if <touching (player v)?> then\n        broadcast (die v)\n    end\nend\n\n@enemy lava\n\nwhen flag clicked\nforever\n    go to (enemy v)\n    next costume\n    create clone of (_myself_ v)\n    if <<(level) = [14]> and <(fire enemy state) = [1]>> then\n        show\n    else\n        hide\n    end\nend\n\ngo [backward v] (1) layers\n\nwhen I start as a clone\nif <<(level) = [14]> and <(fire enemy state) = [1]>> then\n    show\nelse\n    delete this clone\nend\nforever\n    set [lava yvel v] to (pick random (1) to (5))\n    if <(lava yvel) > [3]> then\n        set size to (30) %\n    else\n        set size to (100) %\n    end\n    repeat (30)\n        change size by (pick random (-0.3) to (2))\n        change [lava yvel v] by (-0.3)\n        change y by (lava yvel)\n    end\n    delete this clone\nend\n\nif <touching color (#4b1c0c)?> then\nend\n\n@rock\n\nwhen flag clicked\nforever\n    go to (slingshot v)\n    hide\n    point in direction ([direction v] of [player v])\n    if <key (space v) pressed?> then\n        create clone of (_myself_ v)\n        wait (0.5) seconds\n    end\nend\n\nwhen I start as a clone\ngo to [front v] layer\ngo [backward v] (15) layers\nshow\nset [rock yvel v] to [7]\nstart sound [Slingshot hit - Sound effect v]\nrepeat until <touching (ground v)?>\n    move (15) steps\n    change [rock yvel v] by (-1)\n    change y by (rock yvel)\n    if on edge, bounce\n    if <touching (enemy2 v)?> then\n        start sound [Wooden Thump Sound Effect v]\n        change [rock yvel v] by (7)\n    end\nend\ndelete this clone\n\n@slingshot\n\nwhen flag clicked\nset rotation style [left-right v]\ngo to [front v] layer\ngo [backward v] (18) layers\nforever\n    go to (player v)\n    point in direction ([direction v] of [player v])\nend\n\n@sword\n\nwhen flag clicked\npoint in direction (90)\nset rotation style [all around v]\nhide\ngo to x: (0) y: (-40)\nset [sword? v] to [0]\nset [pedestal v] to [0]\nwait until <(level) = [20]>\nshow\ngo to [front v] layer\nrepeat until <touching (player v)?>\n    set y to ((-70) + (([cos v] of (((timer) - (5)) * (400)) ) * (4)))\nend\nbroadcast (sword sparkle v) and wait\nset [sword? v] to [1]\nrepeat until <(pedestal) = [1]>\n    set x to ([x position v] of [player v])\n    set y to ((([y position v] of [player v]) + (45)) + (([cos v] of (((timer) - (5)) * (400)) ) * (4)))\nend\ngo to [back v] layer\nrepeat (50)\n    change x by ((([x position v] of [pedestal v]) - (x position)) / (25))\n    change y by (((([y position v] of [pedestal v]) + (20)) - (y position)) / (25))\n    turn right ((180) / (50)) degrees\nend\nbroadcast (sword sparkle v)\nwait (.7) seconds\nbroadcast (win v) and wait\n\n@sparkle\n\nwhen flag clicked\nclear graphic effects\nset rotation style [all around v]\nshow\npoint in direction (90)\ngo to x: (120) y: (-80)\nforever\n    wait until <touching (player v)?>\n    starburst [10]\n    start sound [starburst v]\n    wait (0.03) seconds\n    start sound [starburst2 v]\n    wait (0.02) seconds\n    start sound [starburst3 v]\nend\n\ndefine starburst (number)\nhide\nrepeat (number)\n    turn right (pick random (15) to (50)) degrees\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nset size to (100) %\nset [ghost v] effect to (20)\nshow\nset [starburst speed v] to (pick random (5) to (15))\nrepeat until <(starburst speed) = [0]>\n    change [starburst speed v] by (-1)\n    move (starburst speed) steps\n    change [ghost v] effect by (2)\nend\ndelete this clone\n\nwhen flag clicked\nset size to (120) %\nforever\n    repeat until <(size) < (pick random (30) to (10))>\n        change size by (-7)\n    end\n    repeat until <(size) > (pick random (50) to (150))>\n        change size by (7)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [1]> then\n        show\n        point in direction (90)\n        go to x: (-35) y: (0)\n        wait until <not <(level) = [1]>>\n    end\n    if <(level) = [2]> then\n        show\n        go to x: (-196) y: (60)\n        point in direction (90)\n        wait until <not <(level) = [2]>>\n    end\n    if <(level) = [3]> then\n        show\n        go to x: (-175) y: (100)\n        point in direction (90)\n        wait until <not <(level) = [3]>>\n    end\n    if <(level) = [4]> then\n        show\n        go to x: (-175) y: (100)\n        point in direction (90)\n        wait until <not <(level) = [4]>>\n    end\n    if <(level) = [5]> then\n        show\n        go to x: (-30) y: (50)\n        point in direction (90)\n        wait until <not <(level) = [5]>>\n    end\n    if <(level) = [6]> then\n        show\n        go to x: (75) y: (-130)\n        point in direction (90)\n        wait until <not <(level) = [6]>>\n    end\n    if <(level) = [7]> then\n        show\n        go to x: (200) y: (-50)\n        point in direction (90)\n        wait until <not <(level) = [7]>>\n    end\n    if <(level) = [8]> then\n        show\n        go to x: (-20) y: (-85)\n        point in direction (90)\n        wait until <not <(level) = [8]>>\n    end\n    if <(level) = [9]> then\n        show\n        go to x: (120) y: (-85)\n        point in direction (90)\n        wait until <not <(level) = [9]>>\n    end\n    if <(level) = [10]> then\n        show\n        go to x: (0) y: (-170)\n        point in direction (90)\n        wait until <not <(level) = [10]>>\n    end\n    if <(level) = [11]> then\n        show\n        go to x: (70) y: (-40)\n        point in direction (90)\n        wait until <not <(level) = [11]>>\n    end\n    if <(level) = [12]> then\n        show\n        go to x: (-100) y: (-150)\n        point in direction (90)\n        wait until <not <(level) = [12]>>\n    end\n    if <(level) = [13]> then\n        show\n        go to x: (-10) y: (150)\n        point in direction (90)\n        wait until <not <(level) = [13]>>\n    end\n    if <(level) = [14]> then\n        show\n        go to x: (180) y: (-70)\n        point in direction (90)\n        wait until <not <(level) = [14]>>\n    end\n    if <(level) = [15]> then\n        show\n        go to x: (40) y: (-100)\n        point in direction (90)\n        wait until <not <(level) = [15]>>\n    end\n    if <(level) = [16]> then\n        show\n        go to x: (40) y: (0)\n        point in direction (90)\n        wait until <not <(level) = [16]>>\n    end\n    if <(level) = [17]> then\n        show\n        go to x: (0) y: (-30)\n        point in direction (90)\n        wait until <not <(level) = [17]>>\n    end\n    if <(level) = [18]> then\n        show\n        go to x: (50) y: (-120)\n        point in direction (90)\n        wait until <not <(level) = [18]>>\n    end\n    if <(level) = [19]> then\n        show\n        go to x: (130) y: (-80)\n        point in direction (90)\n        wait until <not <(level) = [19]>>\n    end\nend\n\nwhen I receive [sword sparkle v]\ngo to (sword v)\nstarburst [50]\nstart sound [A Guitar v]\nstart sound [starburst v]\nwait (0.03) seconds\nstart sound [starburst2 v]\nwait (0.02) seconds\nstart sound [starburst3 v]\n\n@Music\n\n@pedestal\n\nwhen flag clicked\ngo to [front v] layer\ngo [backward v] (19) layers\ngo to x: (-155) y: (-112)\nforever\n    if <(level) = [1]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite4\n\nwhen flag clicked\nswitch costume to (costume2 v)\nset size to (100) %\nswitch costume to (costume1 v)\nset [ghost v] effect to (100)\n\nwhen I receive [win v]\nrepeat (16)\n    change [ghost v] effect by (-6.25)\nend\nstop [all v]\n\n@Sprite5\n\nwhen flag clicked\ngo to [front v] layer\nset [ghost v] effect to (100)\n\n