Creeper - A Scrolling Platformer

Instructions: |PL|\nTo moja pierwsza (nie zremiksowana) platformówka, i pierwsza scrolling. To jest krótkie dlatego, że to tylko test. Dlatego też mogą występować błędy. Np. Można wybuchnąć w powietrzu. Nie umiem naprawić tego błędu więc jeśli ktoś wie jak to zrobić to pisać :p\n\nNa początku miały być skyblocki, ale ponieważ było to za trudne, zrezygnowałam z tego. Także wybuch na razie niczemu nie służy.\n\nNie wiem czy gra będzie aktualizowana, ale jeśli macie pomysły na aktualizacje, możecie pisać :)\n\n--------------------------------------------------------------------\n|ENG|\nThis is my first scrolling platformer game. It's short because it is a test. Sorry for all bugs, if there'll be an update I'll try to fix them.\n\nI wanted to make a skyblocks, but it was too hard for me so I decided to delete them. That's  why an explosion isn't useful now.\n\nIf you have any ideas for updates, you can write them in comments :)

@Stage\n\nwhen flag clicked\nswitch backdrop to (tło1 v)\n\nwhen I receive [graj v]\nwait (1) seconds\nswitch backdrop to (tło2 v)\n\nwhen flag clicked\nplay sound [Danny v] until done\nforever\n    play sound [Stal v] until done\n    play sound [Living Mice v] until done\nend\n\n@creeper\n\nwhen I receive [start v]\ngo to [front v] layer\nhide\n\nwhen I receive [play v]\nset [color v] effect to (0)\nclear graphic effects\nset [level v] to [1]\nforever\n    broadcast (reset v) and wait\n    broadcast (setup v) and wait\n    G on\n    repeat until <(exit) > []>\n        Tick\n        broadcast (tick v) and wait\n    end\n    Game die\nend\n\ndefine G on\nset [y v] to [0]\nset [x v] to [0]\nset [speed y v] to [0]\nset [in air v] to [0]\nset [exit v] to []\nshow\n\ndefine Tick\nif <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n    Change player x by [-8]\nend\nif <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n    Change player x by [8]\nend\nif <<key (up arrow v) pressed?> or <key (w v) pressed?>> then\n    if <(in air) < [4]> then\n        set [speed y v] to [16]\n    end\nend\nchange [speed y v] by (-2)\nChange player y by (speed y)\nset [scroll x v] to (x)\nposition\nif <(y) < [-180]> then\n    set [exit v] to [die]\nend\n\ndefine Change player y by (sy)\nset [color v] effect to (0)\nchange [y v] by (sy)\nchange [in air v] by (1)\nposition\nTest die\nrepeat until <not <touching (podłoga v)?>>\n    if <(sy) > [0]> then\n        change [y v] by (-1)\n    else\n        change [y v] by (1)\n        set [in air v] to [0]\n    end\n    position\n    set [speed y v] to [0]\nend\n\ndefine position\ngo to x: ((x) - (scroll x)) y: ((y) - (scroll y))\n\ndefine Change player x by (sx)\nchange [x v] by (sx)\nposition\nif <touching (podłoga v)?> then\n    repeat (12)\n        change [y v] by (1)\n        position\n        if <not <touching (podłoga v)?>> then\n            stop [this script v]\n        end\n    end\n    change [y v] by (-12)\n    repeat until <not <touching (podłoga v)?>>\n        if <(sx) > [0]> then\n            change [x v] by (-1)\n        else\n            change [x v] by (1)\n        end\n        position\n    end\nend\n\ndefine Game die\nset [exit v] to []\n\ndefine Test die\nif <touching color (#ff0000)?> then\n    set [exit v] to [die]\nend\n\nwhen flag clicked\nif <(exit) = [die]> then\n    switch costume to (kostium1 v)\nend\nforever\n\nwhen flag clicked\nhide\n\nbroadcast (PLAY v) and wait\nbroadcast (START v) and wait\n\nset [exit v] to []\nrepeat (5)\n    hide\n    wait (0.1) seconds\n    show\n    wait (0.1) seconds\nend\nhide\nswitch costume to (kostium1 v)\nwait (0.5) seconds\n\nwhen I receive [wybuch v]\nstop [other scripts in sprite v]\nset [brightness v] effect to (100)\nstart sound [boom v]\nset [fisheye v] effect to (50)\nswitch costume to (kostium2 v)\nrepeat (2)\n    next costume\nend\nhide\nclear graphic effects\nwait (0.5) seconds\nswitch costume to (kostium1 v)\nbroadcast (PLAY v) and wait\n\nwhen I receive [play v]\nset size to (100) %\nswitch costume to (kostium1 v)\nforever\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        point in direction (90)\n        repeat (4)\n            next costume\n            wait (0.1) seconds\n        end\n        switch costume to (kostium1 v)\n    end\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        point in direction (-90)\n        repeat (4)\n            next costume\n            wait (0.1) seconds\n        end\n        switch costume to (kostium1 v)\n    end\n    if <key (space v) pressed?> then\n        stop [this script v]\n    end\nend\n\nwhen I receive [play v]\nset size to (100) %\nswitch costume to (kostium1 v)\nforever\n    if <key (space v) pressed?> then\n        if <(in air) < [4]> then\n            Tick\n            set [speed y v] to [-16]\n        end\n        stop [other scripts in sprite v]\n        switch costume to (kostium1 v)\n        start sound [tss v]\n        change [wybuch v] by (1)\n        repeat (10)\n            change [fisheye v] effect by (5)\n            change [brightness v] effect by (10)\n        end\n        wait (3.6) seconds\n        broadcast (wybuch v) and wait\n    end\nend\n\nwhen I receive [play v]\nforever\n    if <<touching color (#ff0000)?> and <(exit) = [die]>> then\n        set [color v] effect to (530)\n    end\nend\n\nwhen flag clicked\nforever\n    if <<touching color (#ff0000)?> and <(exit) = [die]>> then\n        set [color v] effect to (530)\n    end\nend\n\nwhen flag clicked\nset [wybuch v] to [0]\n\nwhen flag clicked\nforever\n    if <<touching (skyblok 1 v)?> and <key (space v) pressed?>> then\n        broadcast (ukryj v)\n    end\nend\n\nif  then\nend\n\nwhen I receive [play v]\nforever\n    wait until <<touching (skyblok 1 v)?> and <key (space v) pressed?>>\n    broadcast (ukryj v)\nend\n\n@podłoga\n\nwhen I receive [start v]\nshow\n\nwhen I receive [tick v]\nposition ((x) - (scroll x)) ((y) - (scroll y))\n\nwhen I receive [setup v]\nset [x v] to [0]\nset [y v] to [0]\nswitch costume to (kostium1 v)\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\n\ndefine position (x) (y)\ngo to x: (x) y: (y)\nif <<(x) = (x position)> and <(y) = (y position)>> then\n    show\nelse\n    hide\nend\n\nwhen I receive [reset v]\ndelete this clone\n\nwhen flag clicked\nset [ghost v] effect to (100)\n\n@podłoga2\n\nwhen I receive [start v]\nshow\n\nwhen I receive [tick v]\nposition ((x) - (scroll x)) ((y) - (scroll y))\n\nwhen I receive [setup v]\nset [x v] to [0]\nset [y v] to [0]\nswitch costume to (kostium1 v)\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\n\ndefine position (x) (y)\ngo to x: (x) y: (y)\nif <<(x) = (x position)> and <(y) = (y position)>> then\n    show\nelse\n    hide\nend\n\nwhen I receive [reset v]\ndelete this clone\n\nwhen flag clicked\nhide\n\n@text eng\n\nwhen flag clicked\nhide\n\nwhen I receive [tick v]\nposition ((x) - (scroll x)) ((y) - (scroll y))\n\nwhen I receive [setup v]\nset [x v] to [0]\nset [y v] to [0]\nswitch costume to (kostium1 v)\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\n\ndefine position (x) (y)\ngo to x: (x) y: (y)\nif <<(x) = (x position)> and <(y) = (y position)>> then\n    show\nelse\n    hide\nend\n\nwhen I receive [reset v]\ndelete this clone\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nforever\n    if <(language) = [english]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nclear graphic effects\n\nwhen I receive [play v]\nforever\n    if <(language) = [english]> then\n        show\n    end\n    if <(language) = [polski]> then\n        forever\n            hide\n            stop [other scripts in sprite v]\n            set [ghost v] effect to (100)\n        end\n    end\nend\n\n@black\n\nwhen flag clicked\ngo to [front v] layer\ngo to [front v] layer\nshow\ngo to [front v] layer\ngo to x: (0) y: (0)\nclear graphic effects\nswitch costume to (kostium1 v)\nrepeat (100)\n    change [brightness v] effect by (1)\n    change [ghost v] effect by (1)\nend\nhide\nbroadcast (napis v)\n\nwhen I receive [graj v]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\n    change [brightness v] effect by (-10)\nend\nwait (1) seconds\nbroadcast (background v)\nwait (3) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\n    change [brightness v] effect by (10)\nend\nhide\n\nwhen flag clicked\nforever\n    go to [front v] layer\nend\n\n@play\n\nwhen flag clicked\nset size to (100) %\ngo to [front v] layer\nswitch costume to (kostium1 v)\ngo to x: (17) y: (-47)\nset [ghost v] effect to (100)\nhide\n\nwhen I receive [przycisk v]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [przycisk v]\nforever\n    if <touching (mouse-pointer v)?> then\n        set size to (110) %\n    else\n        set size to (100) %\n    end\nend\n\nwhen I receive [english v]\nswitch costume to (kostium1 v)\n\nwhen I receive [polski v]\nswitch costume to (kostium2 v)\n\nwhen I receive [ukryj: jak grac v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [powrot v]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen this sprite clicked\nbroadcast (graj v)\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [background v]\nhide\n\nwhen I receive [graj v]\nwait (3) seconds\nbroadcast (PLAY v) and wait\nbroadcast (START v) and wait\n\n@back\n\nwhen flag clicked\ngo [forward v] (5) layers\nset [ghost v] effect to (100)\ngo to x: (-135) y: (-155)\nset size to (100) %\nswitch costume to (kostium1 v)\nhide\n\nwhen I receive [ukryj: jak grac v]\nforever\n    if <touching (mouse-pointer v)?> then\n        set size to (110) %\n    else\n        set size to (100) %\n    end\nend\n\nwhen this sprite clicked\nbroadcast (powrot v)\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [ukryj: jak grac v]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [english v]\nswitch costume to (kostium1 v)\n\nwhen I receive [polski v]\nswitch costume to (kostium1 v)\n\n@htp\n\nwhen flag clicked\ngo [forward v] (2) layers\nswitch costume to (kostium1 v)\nset [ghost v] effect to (100)\nset size to (100) %\ngo to x: (0) y: (0)\nhide\n\nwhen I receive [ukryj: jak grac v]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [powrot v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [english v]\nswitch costume to (kostium1 v)\n\nwhen I receive [polski v]\nswitch costume to (kostium2 v)\n\n@how to play\n\nwhen flag clicked\nset size to (100) %\nset [ghost v] effect to (100)\ngo to [front v] layer\nswitch costume to (kostium1 v)\ngo to x: (17) y: (-130)\nhide\n\nwhen I receive [przycisk v]\nwait (0.2) seconds\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [przycisk v]\nforever\n    if <touching (mouse-pointer v)?> then\n        set size to (110) %\n    else\n        set size to (100) %\n    end\nend\n\nwhen I receive [english v]\nswitch costume to (kostium1 v)\n\nwhen I receive [polski v]\nswitch costume to (kostium2 v)\n\nwhen this sprite clicked\nbroadcast (ukryj: jak grac v)\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [powrot v]\nwait (0.2) seconds\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [graj v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [background v]\nhide\n\n@text menu\n\nwhen flag clicked\nset [ghost v] effect to (100)\ngo to x: (228) y: (68)\nswitch costume to (pick random (1) to (6))\nset size to (100) %\nhide\n\nwhen I receive [ukryj: jak grac v]\nhide\n\nwhen I receive [powrot v]\nshow\n\nwhen I receive [napis v]\nshow\nwait (0) seconds\nrepeat (9)\n    change [ghost v] effect by (-10)\nend\n\nwhen flag clicked\nforever\n    repeat (10)\n        change size by (0.3)\n    end\n    wait (0) seconds\n    repeat (10)\n        change size by (-0.3)\n    end\nend\n\nwhen I receive [graj v]\nhide\n\n@i\n\nwhen flag clicked\nset [ghost v] effect to (0)\nset size to (100) %\nswitch costume to (kostium1 v)\ngo to x: (36) y: (28)\nhide\n\nwhen I receive [5 v]\nset [ghost v] effect to (0)\nshow\nforever\n    if <touching (explosion v)?> then\n        forever\n            set [ghost v] effect to (100)\n        end\n    end\nend\n\nwhen flag clicked\nset [ghost v] effect to (0)\n\n@effect\n\nwhen flag clicked\nshow\nset [ghost v] effect to (0)\ngo to x: (-50) y: (-26)\nswitch costume to (kostium1 v)\ncreate clone of (_myself_ v)\n\nwhen flag clicked\nforever\n    go to x: ((mouse x) / (9)) y: ((mouse y) / (9))\nend\n\nwhen I start as a clone\nset [ghost v] effect to (50)\nforever\n    go to x: ((mouse x) / (20)) y: ((mouse y) / (20))\nend\n\nwhen I receive [graj v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\n@language\n\nwhen I receive [przycisk v]\nwait (0.1) seconds\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [przycisk v]\nforever\n    if <touching (mouse-pointer v)?> then\n        set size to (110) %\n    else\n        set size to (100) %\n    end\nend\n\nwhen flag clicked\ngo to x: (-197) y: (-144)\nset size to (100) %\nset [ghost v] effect to (100)\ngo to [front v] layer\nswitch costume to (kostium1 v)\nhide\n\nwhen this sprite clicked\nnext costume\n\nwhen flag clicked\nset [language v] to [english]\nforever\n    if <(costume [name v]) = [kostium2]> then\n        broadcast (polski v)\n        set [language v] to [polski]\n    else\n        broadcast (english v)\n        set [language v] to [english]\n    end\nend\n\nwhen I receive [ukryj: jak grac v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [graj v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [powrot v]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [background v]\nhide\n\nwhen flag clicked\nset [language v] to [english]\n\n@title\n\nwhen flag clicked\nset [ghost v] effect to (100)\ngo to x: (9) y: (52)\nswitch costume to (kostium2 v)\nhide\n\nwhen I receive [napis v]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nwait (1) seconds\nbroadcast (przycisk v)\n\nwhen I receive [ukryj: jak grac v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [powrot v]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nwait (1) seconds\nbroadcast (przycisk v)\n\nwhen I receive [graj v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\n@text pl\n\nwhen I receive [play v]\nforever\n    if <(language) = [polski]> then\n        show\n    end\n    if <(language) = [english]> then\n        forever\n            hide\n            stop [other scripts in sprite v]\n            set [ghost v] effect to (100)\n        end\n    end\nend\n\nwhen I receive [tick v]\nposition ((x) - (scroll x)) ((y) - (scroll y))\n\nwhen I receive [setup v]\nset [x v] to [0]\nset [y v] to [0]\nswitch costume to (kostium1 v)\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\ncreate clone of (_myself_ v)\nchange [x v] by (360)\nnext costume\n\ndefine position (x) (y)\ngo to x: (x) y: (y)\nif <<(x) = (x position)> and <(y) = (y position)>> then\n    show\nelse\n    hide\nend\n\nwhen I receive [reset v]\ndelete this clone\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nclear graphic effects\n\n@Duszek1\n\nwhen flag clicked\ngo to x: (-25) y: (-6)\nswitch costume to (kostium6 v)\nforever\n    set [ghost v] effect to (100)\n    go to [front v] layer\n    show\nend\n\nforever\n    show\nend\n\n