PLATFORMER


@Stage\n\n@Sprite1\n\nwhen flag clicked\nforever\n    play sound [POL-spaceship-ambience-short v] until done\nend\n\n@transition\n\nwhen flag clicked\ngo to x: (0) y: (0)\nset [ghost v] effect to (100)\n\nwhen I receive [transition v]\nshow\nswitch costume to (costume1 v)\nrepeat (100)\n    change [ghost v] effect by (-1)\n    go to [front v] layer\nend\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nswitch costume to (costume2 v)\nset size to (0) %\nrepeat (100)\n    go to [front v] layer\n    change size by (1)\nend\nrepeat (600)\n    change y by (1)\nend\nstop [all v]\n\n@Captain\n\ndefine say 1 (number or text)\ndelete all of [message list v]\nset [letter counted v] to [0]\nrepeat (length of (number or text))\n    add (letter ((1) + (letter counted)) of (number or text)) to [message list v]\n    say (message list)\n    change [letter counted v] by (1)\n    wait (0.05) seconds\nend\nsay (number or text) for ((length of (number or text)) / (20)) seconds\n\nwhen flag clicked\nset [level v] to [1]\nforever\n    if <(level) = [17]> then\n        go to x: (48) y: (-103)\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [caption v]\nsay 1 [We will have to escape in the escape pod… with the remaing faithful crew.]\nsay 1 [Lets go.]\nbroadcast (Transition v)\n\n@key\n\nwhen flag clicked\nset [level v] to [1]\nforever\n    go to [back v] layer\n    if <(level) = [15]> then\n        go to x: (-190) y: (128)\n        show\n        wait until <touching (my friend v)?>\n        start sound [Connect v]\n        hide\n        broadcast (open sesme v)\n        change [level v] by (1)\n        hide\n        stop [this script v]\n    else\n        hide\n    end\nend\n\nbroadcast (bext v)\n\nwhen flag clicked\nforever\nend\n\n@Stomper2\n\nwhen flag clicked\nforever\n    go to [back v] layer\n    set [stomper v] to [0]\n    repeat until <touching (ground v)?>\n        change [stomper v] by (-1)\n        change y by (stomper)\n    end\n    start sound [Metal Bang-SoundBible v]\n    backup\n    repeat until <(y position) > [170]>\n        change y by (5)\n    end\nend\n\ndefine backup\nrepeat until <not <touching (ground v)?>>\n    change y by (1)\nend\n\nwhen flag clicked\nforever\n    if <(level) = [1]> then\n        hide\n    end\n    if <(level) = [2]> then\n        hide\n    end\n    if <(level) = [3]> then\n        hide\n    end\n    if <(level) = [4]> then\n        hide\n    end\n    if <(level) = [5]> then\n        hide\n    end\n    if <(level) = [6]> then\n        hide\n    end\n    if <(level) = [7]> then\n        hide\n    end\n    if <(level) = [8]> then\n        hide\n    end\n    if <(level) = [9]> then\n        show\n        go to x: (150) y: (-109)\n        set [stomper lvl v] to (level)\n        wait until <<(level) < (stomper lvl)> or <(level) > (stomper lvl)>>\n    end\n    if <(level) = [10]> then\n        hide\n    end\n    if <(level) = [11]> then\n    if <(level) = [12]> then\n    if <(level) = [13]> then\n    if <(level) = [14]> then\n        show\n        go to x: (55) y: (-109)\n        set [stomper lvl v] to (level)\n        wait until <<(level) < (stomper lvl)> or <(level) > (stomper lvl)>>\n    end\n    if <(level) = [15]> then\n        hide\n        stop [this script v]\n    end\n    if <(level) = [16]> then\n    if <(level) = [17]> then\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [10]> then\n        hide\n    end\nend\n\n@decor\n\nwhen flag clicked\nforever\n    switch costume to (level)\nend\n\n@Stomper\n\nhide\n\nwhen [loudness v] > (10)\n\nwhen I receive [lvl detect v]\nset y to (160)\n\nwhen flag clicked\nforever\n    go to [back v] layer\n    set [stomper v] to [0]\n    repeat until <touching (ground v)?>\n        change [stomper v] by (-1)\n        change y by (stomper)\n    end\n    start sound [Metal Bang-SoundBible v]\n    backup\n    start sound [recording1 v]\n    repeat until <(y position) > [170]>\n        change y by (5)\n    end\nend\n\ndefine backup\nrepeat until <not <touching (ground v)?>>\n    change y by (1)\nend\n\nwhen flag clicked\nforever\n    if <(level) = [1]> then\n        hide\n    end\n    if <(level) = [2]> then\n        hide\n    end\n    if <(level) = [3]> then\n        hide\n    end\n    if <(level) = [4]> then\n        hide\n    end\n    if <(level) = [5]> then\n        hide\n    end\n    if <(level) = [6]> then\n        hide\n    end\n    if <(level) = [7]> then\n        show\n        go to x: (-67) y: (-109)\n        set [stomper lvl v] to (level)\n        wait until <<(level) < (stomper lvl)> or <(level) > (stomper lvl)>>\n    end\n    if <(level) = [8]> then\n        hide\n    end\n    if <(level) = [9]> then\n        show\n        go to x: (-50) y: (-109)\n        set [stomper lvl v] to (level)\n        wait until <<(level) < (stomper lvl)> or <(level) > (stomper lvl)>>\n    end\n    if <(level) = [10]> then\n        show\n        go to x: (-150) y: (-109)\n        set [stomper lvl v] to (level)\n        wait until <<(level) < (stomper lvl)> or <(level) > (stomper lvl)>>\n    end\n    if <(level) = [11]> then\n        hide\n    end\n    if <(level) = [12]> then\n    if <(level) = [13]> then\n    if <(level) = [14]> then\n        show\n        go to x: (-150) y: (-109)\n        set [stomper lvl v] to (level)\n        wait until <<(level) < (stomper lvl)> or <(level) > (stomper lvl)>>\n    end\n    if <(level) = [15]> then\n        hide\n        stop [this script v]\n    end\n    if <(level) = [16]> then\n    if <(level) = [17]> then\n        hide\n    end\nend\n\n@spikes\n\nwhen flag clicked\nforever\n    switch costume to (level)\n    go to [back v] layer\nend\n\n@thumbnail\n\nwhen flag clicked\nforever\n    go to [front v] layer\n    show\n    set [ghost v] effect to (100)\nend\n\n@zapped\n\nwhen flag clicked\nhide\n\nwhen I receive [zap v]\nshow\nrepeat (25)\n    next costume\n    go to [front v] layer\nend\nhide\n\n@lazer\n\nwhen flag clicked\nforever\n\npen up\n\nwhen flag clicked\nforever\n    point in direction (90)\n    wait (0.04) seconds\n    point in direction (-90)\nend\n\nbroadcast (lets go v)\n\nwhen I receive [lets go v]\nshow\n\nwhen I receive [lets hide v]\nhide\n\nwhen flag clicked\nset rotation style [left-right v]\ncreate clone of (_myself_ v)\n\nforever\n    go to [back v] layer\n    go [forward v] (1) layers\n    if <(costume [number v]) = [1]> then\n        hide\n    end\n    if <(costume [number v]) = [2]> then\n        hide\n    end\n    if <(costume [number v]) = [3]> then\n        hide\n    end\n    if <(costume [number v]) = [4]> then\n        show\n        go to x: (2) y: (0)\n    end\n    if <(costume [number v]) = [5]> then\n    if <(costume [number v]) = [6]> then\n    if <(costume [number v]) = [7]> then\n    if <(costume [number v]) = [8]> then\n    if <(costume [number v]) = [9]> then\n    if <(costume [number v]) = [10]> then\nend\n\nwhen I start as a clone\nforever\n    hide\nend\n\nwhen I receive [lvl detect v]\n\nerase all\n\nif <(show lazer) = [0]> then\n    broadcast (lazers v)\n    stop [this script v]\nend\n\nwhen I receive [bext v]\n\nwhen flag clicked\nbroadcast (lazers v)\n\nwhen I receive [lazers v]\nforever\n    if <(show lazer) = [1]> then\n        set pen color to (#c9ce00)\n        set pen size to (1)\n        start sound [sf_desintegration v]\n        repeat (30)\n            erase all\n            change pen size by (1)\n            pen down\n            go to (zapper v)\n            go to (zapper2 v)\n            if <(show lazer) = [0]> then\n                broadcast (lazers v)\n                stop [this script v]\n            end\n        end\n        start sound [Electric Shock Zap-SoundBible v]\n        pen down\n        set pen size to (15)\n        set pen color to (#faff00)\n        go to (zapper v)\n        go to (zapper2 v)\n        repeat (50)\n            change [arg v] by (2)\n            if <(show lazer) = [0]> then\n                broadcast (lazers v)\n                stop [this script v]\n            end\n        end\n        broadcast (lets hide v)\n        erase all\n        set pen size to (31)\n        set pen color to (#c9ce00)\n        start sound [sf_desintegration v]\n        repeat (30)\n            erase all\n            change pen size by (-1)\n            set pen color to (#c9ce00)\n            if <(show lazer) = [0]> then\n                broadcast (lazers v)\n                stop [this script v]\n            end\n            go to (zapper v)\n            go to (zapper2 v)\n        end\n        erase all\n        repeat (50)\n            change [arg v] by (2)\n            if <(show lazer) = [0]> then\n                broadcast (lazers v)\n                stop [this script v]\n            end\n        end\n    else\n        erase all\n    end\nend\n\n@zapper2\n\nwhen flag clicked\nhide\nforever\n    if <(level) = [1]> then\n        hide\n        set [show lazer v] to [0]\n    end\n    if <(level) = [2]> then\n        hide\n    end\n    if <(level) = [3]> then\n        hide\n        set [show lazer v] to [0]\n    end\n    if <(level) = [4]> then\n        show\n        go to x: (2) y: (92)\n    end\n    if <(level) = [5]> then\n        show\n        go to x: (-124) y: (171)\n    end\n    if <(level) = [6]> then\n        hide\n    end\n    if <(level) = [7]> then\n    if <(level) = [8]> then\n    if <(level) = [9]> then\n    if <(level) = [10]> then\n        hide\n    end\n    if <(level) = [11]> then\n        show\n        go to x: (-62) y: (87)\n        set [show lazer v] to [1]\n    end\n    if <(level) = [12]> then\n        hide\n    end\n    if <(level) = [13]> then\n        show\n        go to x: (-52) y: (-28)\n        set [show lazer v] to [1]\n    end\n    if <(level) = [14]> then\n        show\n        go to x: (-52) y: (67)\n        set [show lazer v] to [1]\n    end\n    if <(level) = [15]> then\n        hide\n    end\n    if <(level) = [16]> then\n        hide\n    end\n    if <(level) = [17]> then\n        hide\n        set [show lazer v] to [0]\n    end\nend\n\n@zapper\n\nset [show lazer v] to [0]\n\nwhen I receive [bext v]\n\nwhen flag clicked\nset [show lazer v] to [0]\nhide\nforever\n    if <(level) = [1]> then\n        set [show lazer v] to [0]\n        hide\n    end\n    if <(level) = [2]> then\n        hide\n    end\n    if <(level) = [3]> then\n        hide\n        set [show lazer v] to [0]\n    end\n    if <(level) = [4]> then\n        show\n        set [show lazer v] to [1]\n        go to x: (2) y: (-102)\n    end\n    if <(level) = [5]> then\n        show\n        go to x: (-124) y: (-117)\n        set [show lazer v] to [1]\n    end\n    if <(level) = [6]> then\n        hide\n        set [show lazer v] to [0]\n    end\n    if <(level) = [7]> then\n        hide\n    end\n    if <(level) = [8]> then\n        hide\n    end\n    if <(level) = [9]> then\n        hide\n    end\n    if <(level) = [10]> then\n        hide\n    end\n    if <(level) = [11]> then\n        show\n        go to x: (-62) y: (-144)\n    end\n    if <(level) = [12]> then\n        hide\n    end\n    if <(level) = [13]> then\n        show\n        go to x: (-52) y: (-118)\n    end\n    if <(level) = [14]> then\n        show\n    end\n    if <(level) = [15]> then\n        hide\n    end\n    if <(level) = [16]> then\n        hide\n    end\n    if <(level) = [17]> then\n        hide\n        set [show lazer v] to [0]\n    end\nend\n\n@vent 2\n\nwhen flag clicked\nswitch costume to (costume1 v)\nforever\n    if <(level) = [1]> then\n        hide\n    end\n    if <(level) = [2]> then\n        hide\n    end\n    if <(level) = [3]> then\n        go to x: (112) y: (-64)\n        show\n    end\n    if <(level) = [4]> then\n        hide\n    end\n    if <(level) = [5]> then\n        hide\n    end\n    if <(level) = [6]> then\n        go to x: (0) y: (-29)\n        show\n    end\n    if <(level) = [7]> then\n        show\n        go to x: (120) y: (-70)\n    end\n    if <(level) = [8]> then\n        hide\n    end\n    if <(level) = [9]> then\n    if <(level) = [10]> then\n        hide\n    end\n    if <(level) = [11]> then\n        show\n        go to x: (123) y: (-103)\n    end\n    if <(level) = [12]> then\n        hide\n    end\n    if <(level) = [13]> then\n        hide\n    end\n    if <(level) = [14]> then\n        hide\n    end\n    if <(level) = [15]> then\n        show\n        go to x: (-25) y: (129)\n    end\n    if <(level) = [16]> then\n        show\n        go to x: (-25) y: (129)\n    end\n    if <(level) = [17]> then\n        hide\n    end\n    if <(touching player) = [0]> then\n        set [vents hide v] to [0]\n    end\n    if <touching (my friend v)?> then\n        set [vents hide v] to [1]\n    end\n    if <touching (my friend v)?> then\n        switch costume to (costume1 v)\n        repeat (4)\n            next costume\n        end\n        wait until <not <touching (my friend v)?>>\n        switch costume to (costume1 v)\n    end\nend\n\n@vent hider\n\nwhen flag clicked\nset [ghost v] effect to (0)\nforever\n    switch costume to (level)\n    if <(vents hide) = [1]> then\n        set [ghost v] effect to (75)\n    else\n        set [ghost v] effect to (0)\n    end\n    if <touching (main player v)?> then\n        set [vents hide v] to [1]\n        set [touching player v] to [1]\n    else\n        set [touching player v] to [0]\n    end\nend\n\n@Vent 1\n\nwhen flag clicked\nset [vents hide v] to [0]\n\nwhen flag clicked\nswitch costume to (costume1 v)\nforever\n    if <(level) = [1]> then\n        hide\n    end\n    if <(level) = [2]> then\n        hide\n    end\n    if <(level) = [3]> then\n        show\n        go to x: (0) y: (-64)\n    end\n    if <(level) = [4]> then\n        hide\n    end\n    if <(level) = [5]> then\n        show\n        go to x: (5) y: (-90)\n    end\n    if <(level) = [6]> then\n        show\n        go to x: (-119) y: (-29)\n    end\n    if <(level) = [7]> then\n        show\n        go to x: (0) y: (-70)\n    end\n    if <(level) = [8]> then\n        show\n        go to x: (-56) y: (11)\n    end\n    if <(level) = [9]> then\n        hide\n    end\n    if <(level) = [10]> then\n        hide\n    end\n    if <(level) = [11]> then\n        show\n        go to x: (7) y: (-102)\n    end\n    if <(level) = [12]> then\n        show\n        go to x: (6) y: (30)\n    end\n    if <(level) = [13]> then\n        show\n        go to x: (-127) y: (72)\n    end\n    if <(level) = [14]> then\n        hide\n    end\n    if <(level) = [15]> then\n        hide\n    end\n    if <(level) = [16]> then\n        hide\n    end\n    if <(level) = [17]> then\n        hide\n    end\n    if <(touching player) = [0]> then\n        set [vents hide v] to [0]\n    end\n    if <touching (my friend v)?> then\n        set [vents hide v] to [1]\n    end\n    if <touching (my friend v)?> then\n        switch costume to (costume1 v)\n        repeat (4)\n            next costume\n        end\n        wait until <not <touching (my friend v)?>>\n        switch costume to (costume1 v)\n    end\nend\n\n@animations\n\nwhen flag clicked\nhide\n\nwhen I receive [oof v]\ngo to x: (0) y: (0)\nshow\ngo to [front v] layer\nswitch costume to (costume1 v)\nrepeat (14)\n    go to [front v] layer\n    next costume\nend\nwait (0.4) seconds\nhide\n\n@Trampoline\n\nwhen flag clicked\nhide\nforever\n    if <(level) = [1]> then\n        hide\n    end\n    if <(level) = [2]> then\n        show\n        go to x: (-49) y: (-116)\n    end\n    if <(level) = [3]> then\n        hide\n    end\n    if <(level) = [4]> then\n        hide\n    end\n    if <(level) = [5]> then\n        hide\n    end\n    if <(level) = [6]> then\n        hide\n    end\n    if <(level) = [7]> then\n        hide\n    end\n    if <(level) = [8]> then\n        show\n        go to x: (135) y: (-105)\n    end\n    if <(level) = [9]> then\n        show\n        go to x: (-184) y: (-56)\n    end\n    if <(level) = [10]> then\n        show\n        go to x: (-9) y: (-62)\n    end\n    if <(level) = [11]> then\n        hide\n    end\n    if <(level) = [12]> then\n        show\n        go to x: (-166) y: (-116)\n    end\n    if <(level) = [13]> then\n        show\n        go to x: (178) y: (-117)\n    end\n    if <(level) = [14]> then\n        hide\n    end\n    if <(level) = [15]> then\n        show\n        go to x: (159) y: (-34)\n    end\n    if <(level) = [16]> then\n        show\n    end\n    if <(level) = [17]> then\n        hide\n    end\nend\n\n@Imposter\n\nwhen I start as a clone\nset [color v] effect to (pick random (10) to (100))\nhide\nif <(level) = [1]> then\nif <(level) = [2]> then\n    go to x: (150) y: (0)\n    patrol\nend\nif <(level) = [3]> then\nif <(level) = [4]> then\nif <(level) = [5]> then\n    go to x: (150) y: (0)\n    patrol\nend\nif <(level) = [6]> then\n    go to x: (150) y: (-100)\n    patrol\nend\nif <(level) = [7]> then\nif <(level) = [8]> then\n    go to x: (75) y: (-100)\n    patrol\nend\nif <(level) = [9]> then\n    go to x: (50) y: (-100)\n    patrol\nend\nif <(level) = [10]> then\nif <(level) = [11]> then\n    go to x: (250) y: (-100)\n    patrol\nend\nif <(level) = [12]> then\n    go to x: (200) y: (115)\n    patrol\nend\nif <(level) = [13]> then\n    go to x: (20) y: (60)\n    patrol\nend\nif <(level) = [14]> then\nif <(level) = [15]> then\nif <(level) = [16]> then\n\ndefine patrol\nshow\nset rotation style [left-right v]\nrepeat until <not <touching (ground v)?>>\n    change y by (1)\nend\nchange y by (-1)\nforever\n    repeat (25)\n        point in direction (-90)\n        change x by (-5)\n        next costume\n        if <(costume [number v]) = [17]> then\n            switch costume to (costume10 v)\n        end\n    end\n    switch costume to (costume9 v)\n    wait (1) seconds\n    repeat (25)\n        point in direction (90)\n        change x by (5)\n        next costume\n        if <(costume [number v]) = [17]> then\n            switch costume to (costume10 v)\n        end\n    end\n    switch costume to (costume9 v)\n    wait (1) seconds\nend\n\nwhen I receive [play v]\nset size to (28) %\nforever\n    if <(level) = [1]> then\n    if <(level) = [2]> then\n        create clone of (_myself_ v)\n        set [level spawned v] to (level)\n        wait until <not <(level spawned) = (level)>>\n    end\n    if <(level) = [3]> then\n    if <(level) = [4]> then\n    if <(level) = [5]> then\n        create clone of (_myself_ v)\n        set [level spawned v] to (level)\n        wait until <not <(level spawned) = (level)>>\n    end\n    if <(level) = [6]> then\n        create clone of (_myself_ v)\n        set [level spawned v] to (level)\n        wait until <not <(level spawned) = (level)>>\n    end\n    if <(level) = [7]> then\n    if <(level) = [8]> then\n        create clone of (_myself_ v)\n        set [level spawned v] to (level)\n        wait until <not <(level spawned) = (level)>>\n    end\n    if <(level) = [9]> then\n        create clone of (_myself_ v)\n        set [level spawned v] to (level)\n        wait until <not <(level spawned) = (level)>>\n    end\n    if <(level) = [10]> then\n    if <(level) = [11]> then\n        create clone of (_myself_ v)\n        set [level spawned v] to (level)\n        wait until <not <(level spawned) = (level)>>\n    end\n    if <(level) = [12]> then\n        create clone of (_myself_ v)\n        set [level spawned v] to (level)\n        wait until <not <(level spawned) = (level)>>\n    end\n    if <(level) = [13]> then\n        create clone of (_myself_ v)\n        set [level spawned v] to (level)\n        wait until <not <(level spawned) = (level)>>\n    end\n    if <(level) = [14]> then\n    if <(level) = [15]> then\n    if <(level) = [16]> then\nend\n\nwhen flag clicked\nforever\n    hide\nend\n\nwhen I start as a clone\nforever\n    if <not <(level spawned) = (level)>> then\n        delete this clone\n    end\nend\n\nwhen I start as a clone\nforever\n    if <(costume [number v]) = [3]> then\n        play sound [Footstep2 v] until done\n    end\nend\n\nif <(costume [number v]) = [8]> then\n    play sound [Footstep2 v] until done\nend\n\nset [color v] effect to (50)\n\n@Text\n\nwhen flag clicked\nforever\n    change y by (([cos v] of ((timer) * (100)) ) * (0.5))\nend\n\nwhen flag clicked\ngo to x: (0) y: (0)\nshow\nswitch costume to (costume1 v)\nforever\n    if <<key (down arrow v) pressed?> or <key (s v) pressed?>> then\n        next costume\n        wait until <not <<key (down arrow v) pressed?> or <key (s v) pressed?>>>\n    end\n    if <(costume [number v]) = [5]> then\n        broadcast (play v)\n        switch costume to (costume1 v)\n        hide\n    end\nend\n\n@assets\n\n@my friend\n\ndefine say 1 (number or text)\ndelete all of [message list v]\nset [letter counted v] to [0]\nrepeat (length of (number or text))\n    add (letter ((1) + (letter counted)) of (number or text)) to [message list v]\n    say (message list)\n    change [letter counted v] by (1)\n    wait (0.05) seconds\nend\nsay (number or text) for ((length of (number or text)) / (20)) seconds\n\nwhen flag clicked\nset [level v] to [1]\n\ndefine starting position\nset [show lazer v] to [0]\nset [fallspeed v] to [0]\ngo to x: (-220) y: (y lvl start)\nshow\n\nwhen I receive [boing v]\nset [fallspeed v] to [18]\n\nif <(pause) = [1]> then\n    wait (0.1) seconds\nend\n\nset y to (-75)\n\ndefine restart/back/next\nif <key (b v) pressed?> then\n    if <not <(level) = [1]>> then\n        change [level v] by (-1)\n        starting position\n        wait (0.2) seconds\n    end\nend\nif <key (r v) pressed?> then\n    starting position\n    wait (0.2) seconds\n    up\nend\nif <key (n v) pressed?> then\n    if <not <(level) = [26]>> then\n        broadcast (bext v)\n        wait (0.2) seconds\n        change [level v] by (1)\n    end\nend\nif <<(fallspeed) > [5]> and <touching (ground v)?>> then\n    start sound [Footstep2 v]\nend\n\nwhen I receive [coolieu v]\nstarting position\n\nbroadcast (coolieu v)\n\nwhen I receive [end of end v]\n\nwhen flag clicked\ngo to x: (0) y: (-98)\nhide\n\ngo to x: (0) y: (0)\n\nif <(x position) > [220]> then\n    hide\n    broadcast (hide now v)\n    set [good v] to [0]\n    broadcast (bext v)\n    wait (0.5) seconds\n    go to x: (0) y: (0)\n    change [level v] by (1)\nend\n\nif <touching (spikes v)?> then\n    broadcast (fall apart v)\n    dead start\nend\nrestart/back/next\nif <touching (trampoline v)?> then\n    set [fallspeed v] to [18]\nend\nif <touching (chainsaw v)?> then\n    broadcast (fall apart v)\n    dead start\nend\nif <touching (badguy v)?> then\n    broadcast (fall apart v)\n    dead start\nend\nif <touching (stompers v)?> then\n    broadcast (fall apart v)\n    dead start\nend\nif <touching (lavaly lava v)?> then\n    broadcast (fall apart v)\n    dead start\nend\nif <(level) = [16]> then\n    broadcast (hide now v)\n    broadcast (supercalifragilisticexpialodocious v)\n    stop [this script v]\nend\n\nwait (17) seconds\n\nset [runspeed v] to [0]\n\nwhen I receive [end intro v]\n\nstarting position\n\ndefine dead start\nhide\nwait (1) seconds\nset [fallspeed v] to [0]\ngo to x: (-220) y: (-70)\nshow\nbroadcast (show v)\nup\n\ndefine up\nrepeat until <not <touching (ground v)?>>\n    change y by (1)\nend\nset [good v] to [1]\nbroadcast (show now v)\n\nwhen I receive [up! v]\n\nhide\n\nwhen I receive [play v]\ngo to x: (0) y: (-98)\nset size to (100) %\nshow\nset [ghost v] effect to (100)\nset [good v] to [1]\nset [takeoffspeed v] to [12]\nset [runspeed v] to [0]\nset [fallspeed v] to [0]\nforever\n    if <(good) = [1]> then\n        change [fallspeed v] by (-1)\n        if <<key (a v) pressed?> or <key (left arrow v) pressed?>> then\n            set [runspeed v] to [-5]\n        end\n        if <<key (d v) pressed?> or <key (right arrow v) pressed?>> then\n            set [runspeed v] to [5]\n        end\n        if <not <<<key (a v) pressed?> or <key (left arrow v) pressed?>> or <<key (d v) pressed?> or <key (right arrow v) pressed?>>>> then\n            set [runspeed v] to [0]\n        end\n        if <touching (water v)?> then\n            change x by ((runspeed) / (3))\n        else\n            change x by (runspeed)\n        end\n        if <touching (ground v)?> then\n            change y by (1)\n        end\n        if <touching (ground v)?> then\n            change y by (1)\n        end\n        if <touching (ground v)?> then\n            change y by (1)\n        end\n        if <touching (ground v)?> then\n            change y by (1)\n        end\n        if <touching (ground v)?> then\n            change y by (-4)\n            change x by ((runspeed) * (-1))\n        end\n        if <touching (water v)?> then\n            change y by ((fallspeed) / (3))\n        else\n            change y by (fallspeed)\n        end\n        set [y v] to (y position)\n        if <touching (ground v)?> then\n            change y by ((fallspeed) - ((fallspeed) * (2)))\n            set [fallspeed v] to [0]\n        end\n        change y by (-1)\n        if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <touching (ground v)?>> then\n            set [fallspeed v] to [12]\n        end\n        change y by (1)\n        if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <touching (water v)?>> then\n            set [fallspeed v] to [5]\n        end\n    end\n    if <(x position) > [237]> then\n        change [level v] by (1)\n        broadcast (lvl detect v)\n    end\n    if <(y position) < [-180]> then\n        starting position\n    end\n    if <touching (trampoline v)?> then\n        set [fallspeed v] to [18]\n        start sound [Jump v]\n    end\n    if <touching (imposter v)?> then\n        start sound [Smashing-Yuri_Santana-1233262689 v]\n        starting position\n    end\n    if <touching color (#faff00)?> then\n        starting position\n        start sound [Smashing-Yuri_Santana-1233262689 v]\n    end\n    if <touching (spikes v)?> then\n        start sound [Smashing-Yuri_Santana-1233262689 v]\n        starting position\n    end\n    if <touching (stomper v)?> then\n        start sound [Smashing-Yuri_Santana-1233262689 v]\n        starting position\n    end\n    if <<key (n v) pressed?> and <not <(level) = [17]>>> then\n        change [level v] by (1)\n        broadcast (lvl detect v)\n        wait until <not <key (n v) pressed?>>\n    end\n    if <(level) = [17]> then\n        go to x: (-200) y: (-100)\n        broadcast (end v)\n        say 1 [Captain! Captain! The imposters are taking the ship!]\n        broadcast (caption v)\n        forever\n            wait (1) seconds\n            go to x: (-200) y: (-100)\n            stop [this script v]\n        end\n    end\nend\n\nwhen flag clicked\n\nwhen I receive [lvl detect v]\nif <(level) = [1]> then\n    set [y lvl start v] to [-70]\n    broadcast (starter up v)\nend\nif <(level) = [2]> then\n    set [y lvl start v] to [-70]\n    broadcast (starter up v)\nend\nif <(level) = [3]> then\n    set [y lvl start v] to [30]\n    broadcast (starter up v)\nend\nif <(level) = [4]> then\n    set [y lvl start v] to [30]\n    broadcast (starter up v)\nend\nif <(level) = [5]> then\n    broadcast (starter up v)\nend\nif <(level) = [6]> then\n    broadcast (starter up v)\n    set [y lvl start v] to [30]\nend\nif <(level) = [7]> then\n    broadcast (starter up v)\nend\nif <(level) = [8]> then\n    broadcast (starter up v)\n    set [y lvl start v] to [150]\nend\nif <(level) = [9]> then\n    broadcast (starter up v)\nend\nif <(level) = [10]> then\n    broadcast (starter up v)\n    set [y lvl start v] to [-20]\nend\nif <(level) = [11]> then\n    broadcast (starter up v)\n    set [y lvl start v] to [-20]\nend\nif <(level) = [12]> then\n    broadcast (starter up v)\n    set [y lvl start v] to [-20]\nend\nif <(level) = [13]> then\n    set [y lvl start v] to [-40]\n    broadcast (starter up v)\nend\nif <(level) = [14]> then\n    broadcast (starter up v)\nend\nif <(level) = [15]> then\n    broadcast (starter up v)\n    set [y lvl start v] to [-20]\nend\n\nwhen I receive [starter up v]\nstarting position\n\nif <touching (mouse-pointer v)?> then\n\nwhen flag clicked\nforever\n    if <<touching (vent 1 v)?> or <touching (vent 2 v)?>> then\n        start sound [131ce567-df76-4ae8-99f8-b700a360f681 v]\n        wait until <not <<touching (vent 1 v)?> or <touching (vent 2 v)?>>>\n        start sound [A Bass v]\n    end\nend\n\nset [arg v] to [0]\n\nrepeat until <not <touching (ground v)?>>\n    change y by (1)\nend\n\n@Ground\n\nwhen flag clicked\nforever\n    switch costume to (level)\nend\n\nwhen I receive [open sesme v]\nnext costume\n\n@Main Player\n\nwhen flag clicked\nset rotation style [left-right v]\nshow\nforever\n    if <<key (w v) pressed?> or <key (up arrow v) pressed?>> then\n        switch costume to (jump v)\n    end\n    if <<<key (a v) pressed?> or <key (left arrow v) pressed?>> or <<key (d v) pressed?> or <key (right arrow v) pressed?>>> then\n        if <<key (a v) pressed?> or <key (left arrow v) pressed?>> then\n            point in direction (-90)\n            next costume\n            wait (0.04) seconds\n            if <(costume [number v]) = [11]> then\n                switch costume to (walk v)\n            end\n            if <(costume [number v]) = [12]> then\n                switch costume to (walk v)\n            end\n        end\n        if <<key (d v) pressed?> or <key (right arrow v) pressed?>> then\n            point in direction (90)\n            next costume\n            wait (0.04) seconds\n            if <(costume [number v]) = [11]> then\n                switch costume to (walk v)\n            end\n            if <(costume [number v]) = [12]> then\n                switch costume to (walk v)\n            end\n        end\n    else\n        switch costume to (idle v)\n    end\nend\n\nif <<key (w v) pressed?> or <key (up arrow v) pressed?>> then\n    switch costume to (jump v)\nend\n\nwhen flag clicked\nforever\n    if <<key (w v) pressed?> or <key (up arrow v) pressed?>> then\n        switch costume to (jump v)\n        repeat until <touching (ground v)?>\n            switch costume to (jump v)\n        end\n    end\nend\n\n\nstart sound [Footstep2 v]\n\nwhen flag clicked\nforever\n    go to (my friend v)\nend\n\nwhen flag clicked\nforever\n    if <(level) = [17]> then\n        go to x: (-200) y: (-100)\n    end\nend\n\nstart sound [Footstep2 v]\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [3]> then\n        play sound [Footstep2 v] until done\n    end\n    if <(costume [number v]) = [8]> then\n        play sound [Footstep2 v] until done\n    end\nend\n\nwhen flag clicked\n\nwait until <not <<key (w v) pressed?> or <key (up arrow v) pressed?>>>\n\nrepeat until <not <touching (ground v)?>>\n    change y by (1)\nend\n\nwhen I receive [end v]\nswitch costume to (idle v)\ngo to x: (-200) y: (-100)\nstop [other scripts in sprite v]\n\n