Platformer ( ;
@Stage\n\nwhen I receive [3 v]\n\nwhen flag clicked\n\nwhen I receive [green flag v]\nwait (1) seconds\nforever\n    play sound [PIKASONIC - Miss You v] until done\nend\n\nnext backdrop\n\nwhen I receive [levelup v]\n\nwhen flag clicked\nforever\n    if <([costume # v] of [ground v]) = [1]> then\n        switch backdrop to (1 v)\n    else\n        if <([costume # v] of [ground v]) = [22]> then\n            switch backdrop to (4 v)\n        else\n            if <([costume # v] of [ground v]) = [23]> then\n                switch backdrop to (3 v)\n            else\n                switch backdrop to (2 v)\n            end\n        end\n    end\nend\n\nwhen I receive [green flag v]\n\nwait  seconds\n\nwait <not <([costume # v] of [ground v]) = [22]>> seconds\nswitch backdrop to (4 v)\nwait <not <([costume # v] of [ground v]) = [23]>> seconds\nswitch backdrop to (3 v)\n\n@Player\n\nwhen flag clicked\n\nwhen I start as a clone\nswitch costume to (\( .    \) v)\nset [ghost v] effect to (60)\nrepeat (4)\n    wait (0.01) seconds\n    change [ghost v] effect by (5)\n    change size by (-3)\nend\ndelete this clone\n\nwhen I receive [dead v]\nset [y v] to [12]\nset [dead? v] to [1]\nrepeat (2)\n    switch costume to (\('' \)y v)\n    wait (0.1) seconds\n    switch costume to (\('' \)r v)\n    wait (0.1) seconds\nend\nset [dead? v] to [0]\nbroadcast (delete all v)\nbroadcast (delete all 2 v)\ngo to x: (-200) y: (-50)\n\nwhen I receive [levelup v]\nbroadcast (delete all v)\nbroadcast (delete all 2 v)\nset [dead? v] to [0]\ngo to x: (-200) y: (-52)\n\nwhen I receive [green flag v]\nwait (0.03) seconds\nhide\ngo to [front v] layer\ngo [backward v] (99) layers\nswitch costume to (\(o\) v)\nset [ghost v] effect to (0)\nshow\ngo to x: (0) y: (-100)\nset [level v] to [1]\nset [x v] to [0]\nset [y v] to [0]\npoint in direction (90)\nforever\n    change [y v] by (-1)\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        if <(dead?) = [0]> then\n            switch costume to (\(.o\) v)\n            change [x v] by (-0.8)\n        end\n    else\n        if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n            if <(dead?) = [0]> then\n                switch costume to (\(o.\) v)\n                change [x v] by (0.8)\n            end\n        else\n            if <(dead?) = [0]> then\n                switch costume to (\(o\) v)\n            end\n        end\n    end\n    set [x v] to ((x) * (0.9))\n    change x by (x)\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 ((x) * (-1))\n        if <<key (space v) pressed?> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>> then\n            set [y v] to [10]\n            if <([abs v] of (x) ) = (x)> then\n                set [x v] to [-5]\n            else\n                set [x v] to [5]\n            end\n        else\n            set [x v] to [0]\n        end\n    end\n    change y by (y)\n    if <touching (ground v)?> then\n        change y by ((0) - (y))\n        set [y v] to [0]\n    end\n    change y by (-1)\n    if <<<key (space v) pressed?> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>> and <touching (ground v)?>> then\n        set [y v] to [15]\n    end\n    change y by (1)\n    if <(y position) > [180]> then\n        set [y v] to [0]\n    end\nend\n\nwhen flag clicked\n\nbroadcast (dead v)\n\nwhen I receive [green flag v]\nset [dead? v] to [0]\nset [level v] to [1]\nforever\n    if <<<<key (b v) pressed?> or <touching (spikes v)?>> or <touching (sprite19 v)?>> or <<touching (sprite9 v)?> or <[-175] > (y position)>>> then\n        broadcast (dead v) and wait\n    end\n    if <(x position) > [242]> then\n        if <not <([costume # v] of [ground v]) = [21]>> then\n            broadcast (levelup v)\n        end\n    end\n    if <touching (sprite21 v)?> then\n        stop [other scripts in sprite v]\n        broadcast (end v)\n        stop [this script v]\n    end\nend\n\nwhen I receive [green flag v]\nforever\n    create clone of (_myself_ v)\n    wait (0.01) seconds\nend\n\nwhen this sprite clicked\n\nchange y by (-9999)\nif <(Level) > [2]> then\n    change [level v] by (-2)\nend\n\nwhen flag clicked\nhide\nwait until <([costume # v] of [ground v]) = [14]>\nset [tsunami v] to [1]\n\nchange [level v] by (1)\n\nset [level v] to [1]\n\nset [dead? v] to [0]\ngo to x: (-180) y: (-50)\n\nswitch backdrop to (backdrop1 v)\nset [hp v] to [5]\nrepeat (10)\n    set [dead? v] to [0]\nend\n\nchange [level v] by (1)\n\nbroadcast (green flag v)\n\nbroadcast (dead v)\n\nhide\n\nwhen I receive [teleport v]\nset [dead? v] to [0]\nset [level v] to [1]\nforever\n    if <<<<key (b v) pressed?> or <touching (spikes v)?>> or <touching (sprite19 v)?>> or <<touching (sprite9 v)?> or <[-175] > (y position)>>> then\n        broadcast (dead v) and wait\n    end\n    if <(x position) > [242]> then\n        if <not <([costume # v] of [ground v]) = [21]>> then\n            broadcast (levelup v)\n        end\n    end\n    if <touching (sprite21 v)?> then\n        stop [other scripts in sprite v]\n        broadcast (end v)\n        stop [this script v]\n    end\nend\n\nwhen I receive [teleport v]\nwait (0.03) seconds\nhide\ngo to [front v] layer\ngo [backward v] (99) layers\nswitch costume to (\(o\) v)\nset [ghost v] effect to (0)\nshow\ngo to x: (-200) y: (-110)\nset [level v] to [1]\nset [x v] to [0]\nset [y v] to [0]\npoint in direction (90)\nforever\n    change [y v] by (-1)\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        if <(dead?) = [0]> then\n            switch costume to (\(.o\) v)\n            change [x v] by (-0.8)\n        end\n    else\n        if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n            if <(dead?) = [0]> then\n                switch costume to (\(o.\) v)\n                change [x v] by (0.8)\n            end\n        else\n            if <(dead?) = [0]> then\n                switch costume to (\(o\) v)\n            end\n        end\n    end\n    set [x v] to ((x) * (0.9))\n    change x by (x)\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 ((x) * (-1))\n        if <<key (space v) pressed?> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>> then\n            set [y v] to [10]\n            if <([abs v] of (x) ) = (x)> then\n                set [x v] to [-5]\n            else\n                set [x v] to [5]\n            end\n        else\n            set [x v] to [0]\n        end\n    end\n    change y by (y)\n    if <touching (ground v)?> then\n        change y by ((0) - (y))\n        set [y v] to [0]\n    end\n    change y by (-1)\n    if <<<key (space v) pressed?> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>> and <touching (ground v)?>> then\n        set [y v] to [15]\n    end\n    change y by (1)\n    if <(y position) > [180]> then\n        set [y v] to [0]\n    end\nend\n\nchange [hp v] by (-1)\nif <(HP) > [0]> then\n\nif <([costume # v] of [ground v]) = [1]> then\n\n@Ground\n\nwhen I receive [end v]\n\nhide\n\nwhen flag clicked\nswitch costume to (1 v)\nhide\n\nwhen I receive [green flag v]\ngo to [front v] layer\ngo [backward v] (100) layers\nshow\nswitch costume to (1 v)\nwait (8) seconds\n\nswitch costume to (7 v)\n\ngo to [front v] layer\ngo [backward v] (1) layers\n\nwhen I receive [teleport v]\nswitch costume to (22 v)\n\nwhen I receive [levelup v]\nnext costume\n\n@Spikes\n\nwhen flag clicked\ngo to [front v] layer\nshow\nswitch costume to (1 v)\nforever\n    go to [back v] layer\nend\n\nwhen I receive [levelup v]\nnext costume\n\n@Sprite1\n\nforever\n\nwhen flag clicked\n\nwhen I receive [staaaaart v]\nhide\nwait (8) seconds\nshow\ngo to [front v] layer\ngo [backward v] (2) layers\nrepeat (60)\n    next costume\n    wait (0.03) seconds\nend\nhide\n\n@Sprite2\n\nwhen flag clicked\nchange [ghost v] effect by (100)\ngo to [front v] layer\n\nshow\n\nwhen I receive [3 v]\ngo to [front v] layer\ngo [backward v] (1) layers\n\nwhen I receive [2 v]\ngo to [front v] layer\nset [ghost v] effect to (100)\nshow\nrepeat (100)\n    change [ghost v] effect by (-1)\nend\nbroadcast (green flag v)\nwait (1) seconds\ngo to [front v] layer\ngo to [front v] layer\ngo to [front v] layer\nrepeat (25)\n    change [ghost v] effect by (4)\nend\nhide\n\nwhen I receive [1 v]\n\nwait (1) seconds\n\nwhen I receive [green flag v]\nwait (3) seconds\n\nwait (6) seconds\n\ngo to [front v] layer\n\nwhen I receive [2 v]\n\nclear graphic effects\n\ngo [backward v] (2) layers\nclear graphic effects\nswitch costume to (costume2 v)\nhide\n\nrepeat (50)\n    change [ghost v] effect by (-2)\nend\n\n@Sprite3\n\nwhen flag clicked\nhide\n\nwhen I receive [staaaaart v]\nwait (3) seconds\ngo to [front v] layer\nset [ghost v] effect to (100)\nshow\nrepeat (50)\n    change [ghost v] effect by (-2)\nend\nwait (1) seconds\nrepeat (50)\n    change [ghost v] effect by (2)\nend\nhide\n\n@sprite4\n\nwhen flag clicked\nhide\n\nforever\n\nset [dead? v] to [0]\n\nstart sound [rocket-in-flight_z1i4ba4_2 v]\n\nwhen I receive [3 v]\n\nchange [dead? v] by (1)\n\nhide\n\nwhen I receive [green flag v]\ndelete this clone\n\nwhen I receive [staaaaart v]\nhide\nset size to (90) %\npoint in direction (90)\nswitch costume to ( v)\nwait (8) seconds\nshow\nstart sound [rocket-in-flight_z1i4ba4_ v]\ngo to [front v] layer\ngo to [front v] layer\nrepeat (114)\n    go to x: (pick random (-3) to (3)) y: (pick random (-3) to (3))\nend\nbroadcast (1 v)\nhide\nrepeat (2)\n    play sound [rocket-in-flight_z1i4ba4_2 v] until done\nend\nstart sound [rocket-in-flight_z1i4ba4_3 v]\n\ngo to [front v] layer\nhide\nswitch costume to (2 v)\nset size to (50) %\nwait (1) seconds\nshow\ngo to x: (-300) y: (40)\n\ncreate clone of (_myself_ v)\nshow\nstart sound [zvuk-vzryva v]\nset size to (30) %\nswitch costume to (costume1 v)\nrepeat (7)\n    next costume\n    wait (0.08) seconds\nend\nhide\nwait (3) seconds\nbroadcast (4 v)\n\nturn left (0) degrees\nswitch costume to (3 v)\n\ngo to x: ((x position) + (pick random (-2) to (2))) y: ((y position) + (pick random (-2) to (2)))\n\nhide\nwait (3) seconds\nshow\npoint in direction (-60)\ngo to x: (22) y: (35)\nset size to (5) %\nrepeat (65)\n    move (5) steps\n    turn right (-0.8) degrees\n    change size by (0.3)\nend\nhide\n\n@1dcda66ab2ff5f4031dc26474dc2d2cf\n\nwhen I receive [1 v]\n\nwhen flag clicked\nhide\n\nwhen I receive [green flag v]\nhide\n\n@Sprite4\n\nwhen I receive [1 v]\n\nswitch costume to (costume1 v)\ngo to [front v] layer\ngo [backward v] (2) layers\nshow\nrepeat (257)\n    set [xx v] to (pick random (-1) to (1))\n    set [yy v] to (pick random (-1) to (1))\n    go to x: (xx) y: (yy)\nend\nhide\nbroadcast (3 v)\n\nwhen flag clicked\nhide\n\nforever\n\nwhen I receive [2 v]\nrepeat (48)\n    next costume\n    wait (0.001) seconds\nend\n\nforever\n\n@Sprite5\n\nwhen I receive [1 v]\n\nshow\nstart sound [korabl-signalizatsiya-signal-trevoga-na-bortu-sudna-26727 v]\nswitch costume to (costume1 v)\ngo to [front v] layer\nrepeat (3)\n    repeat (5)\n        change [ghost v] effect by (20)\n    end\n    repeat (5)\n        change [ghost v] effect by (-20)\n    end\n    wait (0.2) seconds\nend\nswitch costume to (costume2 v)\nrepeat (3)\n    repeat (5)\n        change [ghost v] effect by (20)\n    end\n    repeat (5)\n        change [ghost v] effect by (-20)\n    end\n    wait (0.2) seconds\nend\nswitch costume to (costume3 v)\nrepeat (3)\n    repeat (5)\n        change [ghost v] effect by (20)\n    end\n    repeat (5)\n        change [ghost v] effect by (-20)\n    end\n    wait (0.2) seconds\nend\nhide\nbroadcast (2 v)\n\nwhen flag clicked\nhide\n\nwhen I receive [1 v]\nforever\n    go to x: ((xx) + (7)) y: ((yy) + (50))\nend\n\ngo to [front v] layer\n\n@Sprite6\n\nset [ghost v] effect to (85)\n\nrepeat (10)\n\nset [ghost v] effect to (80)\n\nwhen I receive [1 v]\n\nbroadcast (1 v)\n\nbroadcast (1 v)\n\nwhen flag clicked\nhide\n\nshow\nset [ghost v] effect to (100)\ngo to [front v] layer\ngo to [front v] layer\ngo to [front v] layer\nrepeat (5)\n    repeat (15)\n        change [ghost v] effect by (-1.25)\n    end\n    repeat (15)\n        change [ghost v] effect by (1.25)\n    end\nend\nhide\n\n@Sprite9\n\nwhen flag clicked\npoint in direction (90)\nhide\n\n\n\nwhen I start as a clone\nshow\nforever\n    repeat until <<touching (_edge_ v)?> or <touching (ground2 v)?>>\n        move (3) steps\n        if <touching (sprite8 v)?> then\n            delete this clone\n        end\n    end\n    turn right (180) degrees\n    move (10) steps\nend\n\nwhen I receive [delete all v]\ndelete this clone\n\nwhen I receive [delete all 2 v]\npoint in direction (90)\nhide\nif <([costume # v] of [ground v]) = [7]> then\n    go to x: (60) y: (-90)\n    point in direction (-90)\n    create clone of (_myself_ v)\n    wait until <not <([costume # v] of [ground v]) = [7]>>\nend\nif <([costume # v] of [ground v]) = [8]> then\n    point in direction (-90)\n    go to x: (-35) y: (-113)\n    create clone of (_myself_ v)\n    go to x: (170) y: (-113)\n    create clone of (_myself_ v)\n    point in direction (90)\n    go to x: (23) y: (-113)\n    create clone of (_myself_ v)\n    wait until <not <([costume # v] of [ground v]) = [8]>>\nend\n\nif <not <([costume # v] of [ground v]) = [8]>> then\n    hide\n    delete this clone\nend\n\nif <([costume # v] of [ground v]) = [7]> then\n    repeat until <not <([costume # v] of [ground v]) = [7]>>\n        repeat (100)\n            move (3) steps\n            if <not <([costume # v] of [ground v]) = [7]>> then\n                hide\n                delete this clone\n            end\n        end\n        turn right (180) degrees\n    end\nelse\n    if <([costume # v] of [ground v]) = [8]> then\nend\n\nrepeat until <not <([costume # v] of [ground v]) = [8]>>\n\nforever\n    if <([costume # v] of [ground v]) = [7]> then\n        create clone of (_myself_ v)\n        wait until <not <([costume # v] of [ground v]) = [7]>>\n    end\n    if <([costume # v] of [ground v]) = [8]> then\n        go to x: (-72) y: (-92)\n        point in direction (-90)\n        create clone of (_myself_ v)\n        change x by (50)\n        create clone of (_myself_ v)\n        change x by (50)\n        create clone of (_myself_ v)\n        change x by (50)\n        create clone of (_myself_ v)\n        change x by (50)\n        create clone of (_myself_ v)\n        change x by (50)\n        wait until <not <([costume # v] of [ground v]) = [8]>>\n    end\nend\n\ngo to x: (21) y: (-116)\n\ngo to x: (-72) y: (-92)\npoint in direction (-90)\ncreate clone of (_myself_ v)\nchange x by (50)\ncreate clone of (_myself_ v)\nchange x by (50)\ncreate clone of (_myself_ v)\nchange x by (50)\ncreate clone of (_myself_ v)\nchange x by (50)\ncreate clone of (_myself_ v)\nchange x by (50)\nwait until <not <([costume # v] of [ground v]) = [8]>>\n\n@Sprite10\n\nwhen flag clicked\nhide\n\nforever\nend\n\nif <([costume # v] of [ground v]) = [1]> then\n    show\nelse\n    hide\nend\n\n@Sprite11\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nforever\n    go to [front v] layer\nend\n\n@Sprite8\n\nwhen flag clicked\nforever\n    if <<(BLASTER on?) = [1]> and <key (x v) pressed?>> then\n        create clone of (_myself_ v)\n        start sound [laser-blast-descend_gy7c5deo v]\n        wait (0.8) seconds\n    end\nend\n\nwhen I start as a clone\ngo to (player v)\nshow\ngo to [back v] layer\nif <([costume # v] of [player v]) = [2]> then\n    point in direction (90)\nelse\n    if <([costume # v] of [player v]) = [3]> then\n        point in direction (-90)\n    end\nend\nrepeat until <<touching (ground v)?> or <<touching (_edge_ v)?> or <touching (sprite9 v)?>>>\n    if <touching (sprite9 v)?> then\n        wait (0.2) seconds\n        delete this clone\n    end\n    move (10) steps\n    if <touching (sprite9 v)?> then\n        wait (0.2) seconds\n        delete this clone\n    end\nend\nhide\ndelete this clone\n\nif <touching (sprite9 v)?> then\n\nmove (10) steps\n\nmove (10) steps\n\n@INTRO\n\nwhen I start as a clone\nif <(Clone) = [Particles]> then\n    switch costume to (pick random (29) to (31))\n    set size to (pick random (50) to (150)) %\n    set [ghost v] effect to (pick random (0.) to (5.))\n    set [brightness v] effect to (pick random (-25.) to (100.))\n    go to x: (0) y: (0)\n    point in direction (pick random (-180) to (180))\n    set [intro: x v] to (pick random (10.) to (12.))\n    set [i v] to (pick random (2.) to (9.))\n    go to [front v] layer\n    show\n    repeat until <touching (_edge_ v)?>\n        move (INTRO: X) steps\n        change y by (I)\n        change [i v] by (-0.4)\n        set [intro: x v] to ((INTRO: X) * (0.95))\n    end\n    delete this clone\nend\n\ndefine Particles\nset [clone v] to [Particles]\nrepeat (50)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nif <(Clone) = [Name]> then\n    switch costume to (name v)\n    set size to (50) %\n    clear graphic effects\n    go to [front v] layer\n    go to x: (0) y: (-100)\n    point in direction (0)\n    show\n    repeat (50)\n        go to [front v] layer\n        change size by (((130) - (size)) / (8))\n        change y by (((0) - (y position)) / (8))\n        turn right (((90) - (direction)) / (8)) degrees\n    end\n    set [i v] to [-1]\n    repeat (10)\n        go to [front v] layer\n        change size by (I)\n        change [i v] by (join [-] (([abs v] of (I) ) / (2)))\n        turn right (I) degrees\n    end\n    switch costume to (logo v)\n    repeat (40)\n        go to [front v] layer\n        change size by (((130) - (size)) / (8))\n        turn right (((90) - (direction)) / (8)) degrees\n    end\n    set [i v] to [-1]\n    repeat (20)\n        go to [front v] layer\n        change size by ((I) / (3))\n        change [i v] by (join [-] (([abs v] of (I) ) / (4)))\n        turn right ((I) / (-3)) degrees\n    end\n    delete this clone\nend\n\nwhen flag clicked\n\nbroadcast (green flag v)\n\ngo to [front v] layer\nreset timer\nhide\nstart sound [Prismo - Stronger v]\nset volume to (100) %\nclear graphic effects\nset size to (100) %\npoint in direction (90)\ngo to x: (0) y: (0)\nset [clone v] to [Square]\ncreate clone of (_myself_ v)\nwait (1) seconds\nset [clone v] to [Name]\ncreate clone of (_myself_ v)\nwait (0) seconds\nrepeat (2)\n    Spiral spline explosion\n    Particles\n    Rect\n    Spiral spline explosion\nend\nCircle\nrepeat (4)\n    Spiral spline explosion\n    Particles\n    Rect\n    Spiral spline explosion\nend\nCircle\nrepeat (2)\n    Spiral spline explosion\n    Rect\n    Spiral spline explosion\nend\n\nbroadcast (STAAAAART v)\n\nwhen I start as a clone\nif <(Clone) = [Square]> then\n    clear graphic effects\n    show\n    set size to (0) %\n    go to x: (0) y: (300)\n    point in direction (0)\n    switch costume to (square v)\n    repeat (20)\n        change size by (((100) - (size)) / (5))\n        turn right (((90) - (direction)) / (5)) degrees\n        change y by (((0) - (y position)) / (5))\n    end\n    point in direction (90)\n    repeat (12)\n        next costume\n    end\n    repeat (20)\n        switch costume to (blank v)\n        change size by (((2000) - (size)) / (5))\n        switch costume to (square13 v)\n    end\n    wait (3) seconds\n    repeat (20)\n        switch costume to (blank v)\n        change size by (((100) - (size)) / (5))\n        switch costume to (square13 v)\n    end\n    repeat (12)\n        switch costume to ((costume [number v]) - (1))\n        change size by (-5)\n    end\n    set [i v] to [-1]\n    repeat (20)\n        change size by ((I) / (3))\n        change [i v] by (join [-] (([abs v] of (I) ) / (4)))\n        turn right ((I) / (-3)) degrees\n        change y by ((I) / (3))\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone) = [Bursts]> then\n    switch costume to (lineexplosion1 v)\n    clear graphic effects\n    go to [front v] layer\n    go [backward v] (1) layers\n    set [i v] to (pick random (1) to (3))\n    if <(I) = [1]> then\n        set [brightness v] effect to (100)\n    else\n        if <(I) = [2]> then\n            set [brightness v] effect to (25)\n        else\n            set [brightness v] effect to (-25)\n        end\n    end\n    show\n    set [i v] to [20]\n    Animate   x: [0] y: [0] size: [0] rotate: (pick random (-180) to (180)) speed: [1]\n    repeat (2)\n        set [i v] to ((I) * (0.9))\n        move (I) steps\n        Size: [100] speed: [5]\n    end\n    repeat (10)\n        set [i v] to ((I) * (0.9))\n        move (I) steps\n        Size: [100] speed: [5]\n        change [ghost v] effect by (10)\n        next costume\n    end\n    delete this clone\nend\n\ndefine Animate   x: (x) y: (y) size: (s) rotate: (r) speed: (s)\nchange x by (((round (x)) - (round (x position))) / (s))\nchange y by (((round (y)) - (round (y position))) / (s))\nchange size by (((round (s)) - (round (size))) / (s))\nturn right (((round (r)) - (round (direction))) / (s)) degrees\n\ndefine Spiral spline explosion\nset [clone v] to [Bursts]\nrepeat (5)\n    create clone of (_myself_ v)\nend\n\ndefine Size: (s) speed: (spd)\nchange size by (((round (s)) - (round (size))) / (spd))\n\ndefine Rect\nset [clone v] to [Rect]\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nif <(Clone) = [Rect]> then\n    clear graphic effects\n    show\n    set size to (0) %\n    go to (random position v)\n    point in direction (90)\n    switch costume to (background rect v)\n    repeat until <(round (size)) = [300]>\n        change size by (((300) - (size)) / (15))\n        change [ghost v] effect by (4)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone) = [Circle]> then\n    clear graphic effects\n    set [brightness v] effect to (100)\n    go to [front v] layer\n    go [backward v] (2) layers\n    show\n    set size to (0) %\n    go to x: (0) y: (0)\n    point in direction (90)\n    switch costume to (circle explosion 1 v)\n    repeat (20)\n        switch costume to (blank v)\n        change size by (((300) - (size)) / (5))\n        switch costume to (circle explosion 1 v)\n    end\n    delete this clone\nend\n\ndefine Circle\nset [clone v] to [Circle]\ncreate clone of (_myself_ v)\nwait (0.1) seconds\nset [clone v] to [Circle 2]\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nif <(Clone) = [Circle 2]> then\n    clear graphic effects\n    set [brightness v] effect to (0)\n    go to [front v] layer\n    go [backward v] (1) layers\n    show\n    set size to (0) %\n    go to x: (0) y: (0)\n    point in direction (90)\n    switch costume to (circle explosion 1 v)\n    repeat (20)\n        switch costume to (blank v)\n        change size by (((300) - (size)) / (5))\n        switch costume to (circle explosion 1 v)\n    end\n    delete this clone\nend\n\nwait (1) seconds\n\n@Sprite12\n\nwhen flag clicked\nshow\ngo to [front v] layer\ngo [backward v] (4) layers\nhide\n\nrepeat (10)\nend\n\nwait (3) seconds\n\n@Sprite13\n\nwhen I receive [green flag v]\nhide\nwait (7) seconds\ngo to [front v] layer\nforever\n    go to [front v] layer\n    switch costume to (reminder2 v)\n    go to x: (121) y: (-200)\n    show\n    go to [front v] layer\n    repeat (7)\n        change y by (6)\n    end\n    start sound [pop v]\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 (5)\n        change y by (-7)\n    end\n    hide\n    wait (pick random (20) to (30)) seconds\nend\n\n@Ground2\n\nwhen I receive [end v]\nhide\n\nwhen flag clicked\nswitch costume to (1 v)\n\nwhen I receive [green flag v]\nset [ghost v] effect to (100)\ngo to [front v] layer\ngo [backward v] (10) layers\nshow\nswitch costume to (1 v)\n\nswitch costume to (7 v)\n\nwhen I receive [levelup v]\nnext costume\n\nhide\n\n@Sprite7\n\nwhen flag clicked\nset [blaster on? v] to [0]\n\nforever\n    if <([costume # v] of [ground v]) = [14]> then\n        show\n        if <touching (player v)?> then\n            start sound [zaryajennyiy-dlya-strelbyi-pistolet v]\n            hide\n            set [blaster on? v] to [1]\n            stop [this script v]\n        end\n    else\n        hide\n    end\nend\n\n@Sprite14\n\nwhen flag clicked\n\ngo to [front v] layer\ngo [backward v] (1) layers\nshow\nwait (2) seconds\nhide\n\n@Sprite15\n\nforever\n\nwhen flag clicked\nshow\ngo to [front v] layer\ngo [backward v] (1) layers\ngo to x: (0) y: (0)\nswitch costume to (costume1 v)\nwait (1) seconds\nrepeat (12)\n    next costume\n    wait (0.05) seconds\nend\nwait (1) seconds\nswitch costume to (costume14 v)\ngo to x: (0) y: (0)\nrepeat (25)\n    change y by (-0.5)\nend\nrepeat (55)\n    change y by (-1)\nend\nrepeat (15)\n    change y by (-0.5)\nend\nwait (1) seconds\nbroadcast (1 v)\ngo to x: (0) y: (0)\nswitch costume to (costume15 v)\n\nhide\n\nwhen I receive [green flag v]\nhide\n\n@Sprite16\n\nrepeat (10)\n\nwhen I receive [1 v]\nshow\ngo to [front v] layer\ngo to x: (-176) y: (-113)\npoint in direction (90)\nswitch costume to (costume1 v)\nwait (1) seconds\nswitch costume to (costume2 v)\nwait (0.5) seconds\nmove (1) steps\nwait (0.02) seconds\nmove (2) steps\nwait (0.02) seconds\nmove (3) steps\nwait (0.02) seconds\nmove (3.5) steps\nwait (0.02) seconds\nmove (4) steps\nwait (0.02) seconds\nmove (4) steps\nwait (0.02) seconds\nrepeat (12)\n    move (5) steps\n    wait (0.01) seconds\nend\nswitch costume to (costume3 v)\nbroadcast (lol v)\n\nchange [xx v] by (-1)\n\nwhen I receive [lol v]\nset [yy v] to [10]\nrepeat (21)\n    change y by (Yy)\n    change [yy v] by (-1)\n    turn left (4.3) degrees\nend\npoint in direction (0)\nwait (1) seconds\nbroadcast (2 v)\n\nwhen I receive [lol v]\nset [xx v] to [-4]\nrepeat (21)\n    change x by (Xx)\nend\n\ngo to x: (-103) y: (-110)\n\nwait (2) seconds\n\nwhen I receive [green flag v]\nhide\n\n@Sprite17\n\nwhen flag clicked\n\nwhen I start as a clone\ngo to (player v)\nshow\ngo to [back v] layer\nif <([costume # v] of [player v]) = [2]> then\n    point in direction (90)\nelse\n    if <([costume # v] of [player v]) = [3]> then\n        point in direction (-90)\n    end\nend\nrepeat until <<touching (ground v)?> or <<touching (_edge_ v)?> or <touching (sprite9 v)?>>>\n    if <touching (sprite9 v)?> then\n        wait (0.2) seconds\n        delete this clone\n    end\n    move (10) steps\n    if <touching (sprite9 v)?> then\n        wait (0.2) seconds\n        delete this clone\n    end\nend\nhide\ndelete this clone\n\nif <touching (sprite9 v)?> then\n\nmove (10) steps\n\nmove (10) steps\n\nwhen I receive [1 v]\nhide\nwait (2) seconds\nshow\ngo to x: (93) y: (152)\npoint in direction (-140)\nstart sound [laser-blast-descend_gy7c5deo2 v]\nrepeat (15)\n    move (20) steps\nend\nstart sound [Tennis Hit v]\nhide\n\nbroadcast (1 v)\n\n@Sprite18\n\nwhen flag clicked\npoint in direction (90)\nhide\n\n\n\nwhen I start as a clone\nshow\nforever\n    repeat until <<touching (_edge_ v)?> or <touching (ground2 v)?>>\n        move (3) steps\n        if <touching (sprite8 v)?> then\n            delete this clone\n        end\n    end\n    turn right (180) degrees\n    move (10) steps\nend\n\nwhen I receive [delete all v]\ndelete this clone\n\nwhen I receive [1 v]\nswitch costume to (costume1 v)\ngo to [front v] layer\npoint in direction (-90)\nwait (4) seconds\nshow\ngo to x: (-57) y: (190)\nstart sound [High Whoosh v]\nrepeat until <touching (sprite15 v)?>\n    change y by (-20)\nend\nsus\nswitch costume to (costume3 v)\n\nif <not <([costume # v] of [ground v]) = [8]>> then\n    hide\n    delete this clone\nend\n\nif <([costume # v] of [ground v]) = [7]> then\n    repeat until <not <([costume # v] of [ground v]) = [7]>>\n        repeat (100)\n            move (3) steps\n            if <not <([costume # v] of [ground v]) = [7]>> then\n                hide\n                delete this clone\n            end\n        end\n        turn right (180) degrees\n    end\nelse\n    if <([costume # v] of [ground v]) = [8]> then\nend\n\nrepeat until <not <([costume # v] of [ground v]) = [8]>>\n\nforever\n    if <([costume # v] of [ground v]) = [7]> then\n        create clone of (_myself_ v)\n        wait until <not <([costume # v] of [ground v]) = [7]>>\n    end\n    if <([costume # v] of [ground v]) = [8]> then\n        go to x: (-72) y: (-92)\n        point in direction (-90)\n        create clone of (_myself_ v)\n        change x by (50)\n        create clone of (_myself_ v)\n        change x by (50)\n        create clone of (_myself_ v)\n        change x by (50)\n        create clone of (_myself_ v)\n        change x by (50)\n        create clone of (_myself_ v)\n        change x by (50)\n        wait until <not <([costume # v] of [ground v]) = [8]>>\n    end\nend\n\ngo to x: (21) y: (-116)\n\ndefine sus\nrepeat until <not <touching (sprite15 v)?>>\n    change y by (1)\nend\n\nwait (1) seconds\n\nwhen I receive [green flag v]\nhide\n\n@Sprite19\n\nwhen flag clicked\npoint in direction (90)\nhide\nset [xfjjhxj v] to [0]\nset [tsunami v] to [0]\nwait until <(TSUNAMI) = [1]>\nwait (2) seconds\nshow\ngo to x: (-999) y: (0)\nrepeat (305)\n    move (3) steps\nend\nset [xfjjhxj v] to [1]\n\nwhen I receive [levelup v]\nhide\nwait (1) seconds\nif <<(TSUNAMI) = [1]> and <(XFJJHXJ) = [1]>> then\n    if <([costume # v] of [ground v]) = [18]> then\n        set [tsunami v] to [0]\n        point in direction (90)\n        show\n        go to x: (-999) y: (0)\n        repeat (40)\n            move (3) steps\n        end\n        point in direction (135)\n        repeat (170)\n            move (3) steps\n        end\n        hide\n    else\n        show\n        go to x: (-999) y: (0)\n        repeat (305)\n            move (3) steps\n        end\n    end\nend\n\nwhen I receive [delete all v]\nhide\nstop [other scripts in sprite v]\nset [xfjjhxj v] to [1]\nwait (1) seconds\nif <<(TSUNAMI) = [1]> and <(XFJJHXJ) = [1]>> then\n    if <not <([costume # v] of [ground v]) = [18]>> then\n        show\n        go to x: (-999) y: (0)\n        repeat (305)\n            move (2.5) steps\n        end\n        stop [this script v]\n    else\n        set [tsunami v] to [0]\n        point in direction (90)\n        show\n        go to x: (-999) y: (0)\n        point in direction (125)\n        repeat (215)\n            move (3) steps\n        end\n        hide\n        set [tsunami v] to [0]\n    end\nend\n\n\n\nforever\n\n@Sprite20\n\nwhen flag clicked\nforever\n    if <([costume # v] of [ground v]) = [21]> then\n        show\n    else\n        hide\n    end\nend\n\n@Sprite21\n\nwhen flag clicked\nset [ghost v] effect to (100)\nforever\n    if <([costume # v] of [ground v]) = [21]> then\n        show\n    else\n        hide\n    end\nend\n\ngo [forward v] (1) layers\n\n@Sprite22\n\nwhen flag clicked\nset [ghost v] effect to (100)\nhide\n\nwhen I receive [end v]\nshow\ngo to [front v] layer\nrepeat (50)\n    change [ghost v] effect by (-2)\nend\nbroadcast (TELEPORT v)\nrepeat (50)\n    change [ghost v] effect by (2)\nend\n\nwait (0.5) seconds\n\nbroadcast (green flag v)\n\nbroadcast (SSS v)\n\n@Sprite23\n\nwhen flag clicked\ngo to [back v] layer\nshow\n\nwhen I receive [green flag v]\nhide\n\n
No need to repeat the instructions here since it's already in the main game as a tutorial but if you're lazy and impatient and want to know now(for whatever reason) here are the key bindings:\n\nWASD or ARROW KEYS to move and jump but SPACE is also an option for jumping.\nAlso there are no lives