light in the darkness || scrolling platformer
@Stage\n\n@Danger\n\nwhen I receive [green flag v]\nhide\n\nwhen I receive [tick v]\nPosition ((x) - (SCROLL X)) ((y) - (SCROLL Y))\n\nwhen I receive [setip v]\nhide\nset [x v] to [0]\nset [y v] to [0]\nif <(LEVEL) = [1]> then\n    switch costume to (level 1-1 v)\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\nend\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\ndefine Clone at x: (x) y: (y)\ncreate clone of (_myself_ v)\nchange [x v] by (x)\nchange [y v] by (y)\nnext costume\n\nwhen flag clicked\nforever\n    set [ghost v] effect to (55)\nend\n\n@Platforms\n\nwhen I receive [green flag v]\nhide\nswitch backdrop to (backdrop3 v)\n\nwhen I receive [tick v]\nPosition ((x) - (SCROLL X)) ((y) - (SCROLL Y))\n\nwhen I receive [setip v]\nhide\nset [x v] to [0]\nset [y v] to [0]\nif <(LEVEL) = [1]> then\n    switch costume to (level 1-1 v)\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [700] y: [800]\nend\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\ndefine Clone at x: (x) y: (y)\ncreate clone of (_myself_ v)\nchange [x v] by (x)\nchange [y v] by (y)\nnext costume\n\nClone at x: [1663] y: [557]\n\nwhen I receive [green flag v]\n\nwhen flag clicked\nforever\n    go to [front v] layer\nend\n\ngo [backward v] (1) layers\n\nwhen flag clicked\nforever\n    set [brightness v] effect to (-60)\nend\n\n@Player\n\nwhen flag clicked\nbroadcast (Green Flag v) and wait\nbroadcast (Play Game v) and wait\n\nwhen I receive [green flag v]\nhide\ngo to [front v] layer\n\nwhen I receive [play game v]\nset [level v] to [1]\nforever\n    broadcast (Reset v) and wait\n    broadcast (Setip v) and wait\n    Game on\n    repeat until <(EXIT) > []>\n        Tick\n        broadcast (Tick v) and wait\n    end\n    if <(EXIT) = [Win]> then\n        Game - Win\n    else\n        Game - Die\n    end\nend\n\ndefine Game on\nif <(Checkpoint) = [0]> then\n    set [x v] to [0]\n    set [y v] to [0]\nelse\n    if <(Checkpoint) = [1]> then\n        set [x v] to [2050]\n        set [y v] to [20]\n    else\n        set [x v] to [4307]\n        set [y v] to [120]\n    end\nend\nset [speed y v] to [0]\nset [speed x v] to [0]\nset [in air v] to [0]\nset [exit v] to []\nset [scroll x v] to [0]\nset [scroll y v] to [0]\nset size to (10) %\nclear graphic effects\n\nshow\n\ndefine Tick\nif <<key (left arrow v) pressed?> or <<mouse down?> and <(mouse x) < (x position)>>> then\n    change [speed x v] by (-2)\n    point in direction (-90)\nend\nif <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > (x position)>>> then\n    change [speed x v] by (2)\n    point in direction (90)\nend\nset [speed x v] to ((Speed x) * (0.8))\nif <([abs v] of (Speed x) ) > [0.9]> then\n    Change player x by (round (Speed x))\nend\nif <<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>> then\n    if <(in air) < [4]> then\n        set [speed y v] to [16]\n    end\nend\nif <(Speed y) > [-20]> then\n    change [speed y v] by (-2)\nend\nChange player y by (Speed y)\nTest - Die\nset [scroll x v] to (x)\nif <(SCROLL X) < [0]> then\n    set [scroll x v] to [0]\nend\nif <(SCROLL X) > [6723]> then\n    set [scroll x v] to [6723]\nend\nchange [scroll y v] by (round (((y) - (SCROLL Y)) / (10)))\nif <(SCROLL Y) < [0]> then\n    set [scroll y v] to [0]\nend\nPosition\nif <(y) < [-178]> then\n    set [exit v] to [Die]\nend\nif <touching (danger v)?> then\n    set [exit v] to [Die]\nend\nif <touching (lava v)?> then\n    set [exit v] to [Die]\nend\nif <(SCROLL X) > [0]> then\n    switch backdrop to (backdrop3 v)\nend\nif <(SCROLL X) > [2041]> then\n    switch backdrop to (backdrop2 v)\nend\nif <(SCROLL X) > [4307]> then\n    switch backdrop to (backdrop1 v)\nend\nif <(SCROLL X) > [6450]> then\n    switch backdrop to (backdrop2 v)\nend\n\ndefine Change player y by (sy)\nchange [y v] by (sy)\nchange [in air v] by (1)\nPosition\nrepeat until <not <touching (platforms 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 (platforms v)?> then\n    repeat (12)\n        change [y v] by (1)\n        Position\n        if <not <touching (platforms v)?>> then\n            stop [this script v]\n        end\n    end\n    change [y v] by (-12)\n    if <<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>> then\n        if <(sx) > [0]> then\n            set [speed x v] to [-16]\n        else\n            set [speed x v] to [16]\n        end\n        set [in air v] to [0]\n    else\n        set [speed x v] to [0]\n    end\n    repeat until <not <touching (platforms 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 []\nrepeat (10)\n    change size by (-1)\nend\nrepeat (20)\n    change size by (5)\n    change [ghost v] effect by (4)\n    change [brightness v] effect by (4)\nend\n\nhide\nwait (0.1) seconds\nshow\nwait (0.1) seconds\n\ndefine Game - Win\nrepeat (50)\n    point towards (exit v)\n    turn right (65) degrees\n    move ((distance to [exit v]) / (2)) steps\n    change size by (-0.25)\n    change [ghost v] effect by (2)\nend\nhide\nclear graphic effects\nchange [level v] by (1)\nwait (1) seconds\n\ndefine Test - Die\n\nif <(Checkpoint) = [1]> then\n    set [x v] to [2050]\n    set [y v] to [20]\nelse\n    set [x v] to [4307]\n    set [y v] to [120]\nend\n\nwhen flag clicked\nforever\n    if <touching (bounce v)?> then\n        if <key (up arrow v) pressed?> then\n            set [speed y v] to [35]\n        end\n    end\nend\n\n\n\nwhen flag clicked\nset size to (100) %\n\nwhen flag clicked\nset [ghost v] effect to (0)\nset [brightness v] effect to (0)\n\nwhen flag clicked\nforever\n    if <touching (platforms2 v)?> then\n        broadcast (end v)\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nshow\n\nwhen flag clicked\nwait (0.01) seconds\nhide\nhide\nhide\nhide\n\n@Checkpoint \n\nwhen I receive [green flag v]\nhide\n\nwhen I receive [tick v]\nPosition ((x) - (SCROLL X)) ((y) - (SCROLL Y))\nif <(costume [number v]) = [2]> then\n    if <touching (player v)?> then\n        change [checkpoint v] by (1)\n        switch costume to (green flag v)\n    end\nend\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\ndefine Clone at x: (x) y: (y)\nset [x v] to (x)\nset [y v] to (y)\ncreate clone of (_myself_ v)\n\nwhen flag clicked\nset [checkpoint v] to [0]\nhide\nset [x v] to [0]\nset [y v] to [0]\nif <(LEVEL) = [1]> then\n    switch costume to (close flag v)\n    Clone at x: [2050] y: [20]\n    Clone at x: [4307] y: [100]\nend\nset [x v] to [-99999]\n\nClone at x: [6200] y: [100]\n\nClone at x: [4307] y: [100]\n\n@bild\n\nwhen flag clicked\nhide\n\ngo to [front v] layer\n\n@bounce\n\nwhen I receive [green flag v]\nhide\nswitch backdrop to (backdrop3 v)\n\nwhen I receive [tick v]\nPosition ((x) - (SCROLL X)) ((y) - (SCROLL Y))\n\nwhen I receive [setip v]\nhide\nset [x v] to [0]\nset [y v] to [0]\nif <(LEVEL) = [1]> then\n    switch costume to (level 1-1 v)\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [700] y: [800]\nend\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\ndefine Clone at x: (x) y: (y)\ncreate clone of (_myself_ v)\nchange [x v] by (x)\nchange [y v] by (y)\nnext costume\n\nClone at x: [1663] y: [557]\n\nwhen I receive [green flag v]\n\n@Lava\n\nwhen I receive [green flag v]\nhide\n\nwhen I receive [tick v]\nPosition ((x) - (SCROLL X)) ((y) - (SCROLL Y))\n\nwhen I receive [setip v]\nhide\nset [x v] to [0]\nset [y v] to [0]\nswitch costume to (level 1-1 v)\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\nClone at x: [480] y: [0]\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\ndefine Clone at x: (x) y: (y)\ncreate clone of (_myself_ v)\nchange [x v] by (x)\nchange [y v] by (y)\nnext costume\n\nwhen I start as a clone\ngo to [back v] layer\nforever\n    set [ghost v] effect to (0)\n    repeat (20)\n        change [y v] by (-0.5)\n    end\n    repeat (20)\n        change [y v] by (0.5)\n    end\nend\n\nwhen flag clicked\nforever\n\nset [brightness v] effect to (-50)\n\nset [brightness v] effect to (30)\n\n@light1\n\nwhen flag clicked\nforever\n    go to [back v] layer\n    go to (player v)\nend\n\nwhen flag clicked\nset size to (100) %\nforever\n    set [ghost v] effect to (65)\n    repeat (25)\n        change size by (0.5)\n    end\n    repeat (25)\n        change size by (-0.5)\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nshow\n\n@Fog\n\nwhen I start as a clone\nset x to (554)\nset [ghost v] effect to (100)\nrepeat (10)\n    change [ghost v] effect by (-2)\n    go to [back v] layer\n    go [forward v] (9) layers\n    change x by (-1)\n    if <(x position) = [0]> then\n        create clone of (_myself_ v)\n    end\n    if <(x position) = [-554]> then\n        delete this clone\n    end\nend\nforever\n    set [ghost v] effect to (80)\n    go to [back v] layer\n    go [forward v] (9) layers\n    change x by (-1)\n    if <(x position) = [0]> then\n        create clone of (_myself_ v)\n    end\n    if <(x position) = [-554]> then\n        delete this clone\n    end\nend\n\nwhen I start as a clone\nset [ghost v] effect to (100)\n\nwhen I receive [start background fog v]\n\ndelete this clone\n\nwhen flag clicked\nhide\nset [ghost v] effect to (80)\ngo to x: (0) y: (0)\nshow\ncreate clone of (_myself_ v)\nforever\n    change x by (-1)\n    if <(x position) = [-554]> then\n        hide\n    end\n    go to [back v] layer\nend\n\nwhen I receive [stoap v]\nhide\nstop [other scripts in sprite v]\ndelete this clone\n\n@Fog2\n\nwhen I start as a clone\nset x to (651)\nset [ghost v] effect to (100)\nrepeat (10)\n    change [color v] effect by (-2)\n    go to [back v] layer\n    go [forward v] (0) layers\n    change x by (-3)\n    if <(x position) = [0]> then\n        create clone of (_myself_ v)\n    end\n    if <(x position) = [-588]> then\n        delete this clone\n    end\nend\nforever\n    set [ghost v] effect to (80)\n    go to [back v] layer\n    go [forward v] (0) layers\n    change x by (-3)\n    if <(x position) = [0]> then\n        create clone of (_myself_ v)\n    end\n    if <(x position) = [-588]> then\n        delete this clone\n    end\nend\n\nwhen I receive [start background fog v]\n\nwhen flag clicked\nhide\nset [ghost v] effect to (80)\ngo to x: (0) y: (0)\nshow\ncreate clone of (_myself_ v)\nforever\n    go to [back v] layer\n    change x by (-3)\n    if <(x position) = [-588]> then\n        hide\n    end\nend\n\nwhen I receive [stoap v]\nhide\nstop [other scripts in sprite v]\ndelete this clone\n\n@effect\n\nwhen flag clicked\nhide\nforever\n    create clone of (_myself_ v)\n    wait (0.5) seconds\nend\n\nwhen I start as a clone\nset [ghost v] effect to (85)\ngo to (random position v)\nset y to (-178)\npoint in direction (pick random (-45) to (45))\nshow\nmove (1.5) steps\ngo to [back v] layer\nmove (1.5) steps\ngo to [back v] layer\nrepeat until <(y position) > [175]>\n    move (1.5) steps\n    go to [back v] layer\n    if <(pick random (1) to (2)) = [1]> then\n        point in direction ((direction) + (pick random (-10) to (10)))\n    end\n    if <touching (_edge_ v)?> then\n        delete this clone\n    end\nend\ndelete this clone\n\n@decorations\n\nwhen I receive [green flag v]\nhide\nswitch backdrop to (backdrop3 v)\n\nwhen I receive [tick v]\nPosition ((x) - (SCROLL X)) ((y) - (SCROLL Y))\n\nwhen I receive [setip v]\nhide\nset [x v] to [0]\nset [y v] to [0]\nif <(LEVEL) = [1]> then\n    switch costume to (level 1-1 v)\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [700] y: [800]\nend\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\ndefine Clone at x: (x) y: (y)\ncreate clone of (_myself_ v)\nchange [x v] by (x)\nchange [y v] by (y)\nnext costume\n\nClone at x: [1663] y: [557]\n\nwhen I receive [green flag v]\n\nwhen flag clicked\nforever\n    go to [front v] layer\n    go [backward v] (1) layers\nend\n\nwhen flag clicked\nforever\n    set [ghost v] effect to (40)\nend\n\n@decorations2\n\nwhen I receive [green flag v]\nhide\nswitch backdrop to (backdrop3 v)\n\nwhen I receive [tick v]\nPosition ((x) - (SCROLL X)) ((y) - (SCROLL Y))\n\nwhen I receive [setip v]\nhide\nset [x v] to [0]\nset [y v] to [0]\nif <(LEVEL) = [1]> then\n    switch costume to (level 1-1 v)\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [700] y: [800]\nend\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\ndefine Clone at x: (x) y: (y)\ncreate clone of (_myself_ v)\nchange [x v] by (x)\nchange [y v] by (y)\nnext costume\n\nClone at x: [1663] y: [557]\n\nwhen I receive [green flag v]\n\nwhen flag clicked\nforever\n    go to [back v] layer\nend\n\ngo [backward v] (1) layers\n\n@light2\n\nwhen flag clicked\nforever\n    go to [back v] layer\n    go to (player v)\nend\n\nwhen flag clicked\nset size to (100) %\nforever\n    set [ghost v] effect to (80)\n    repeat (30)\n        change size by (-0.5)\n    end\n    repeat (30)\n        change size by (0.5)\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nshow\n\n@Platforms2\n\nwhen I receive [green flag v]\nhide\nswitch backdrop to (backdrop3 v)\n\nwhen I receive [tick v]\nPosition ((x) - (SCROLL X)) ((y) - (SCROLL Y))\n\nwhen I receive [setip v]\nhide\nset [x v] to [0]\nset [y v] to [0]\nif <(LEVEL) = [1]> then\n    switch costume to (level 1-1 v)\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [480] y: [0]\n    Clone at x: [700] y: [800]\nend\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\ndefine Clone at x: (x) y: (y)\ncreate clone of (_myself_ v)\nchange [x v] by (x)\nchange [y v] by (y)\nnext costume\n\nClone at x: [1663] y: [557]\n\nwhen I receive [green flag v]\n\nwhen flag clicked\nforever\n    go to [front v] layer\n    set [ghost v] effect to (100)\nend\n\ngo [backward v] (1) layers\n\n@end\n\nwhen flag clicked\ngo to x: (0) y: (28)\nhide\n\nwhen I receive [end v]\nshow\nforever\n    change y by (0.5)\nend\n\nbroadcast (end2 v)\nstop [this script v]\n\nwhen I receive [end2 v]\n\n@light in the dark\n\nwhen flag clicked\nset [ghost v] effect to (0)\nwait (3) seconds\nrepeat (20)\n    change [ghost v] effect by (5)\nend\nbroadcast (start v)\n\n@light\n\nwhen flag clicked\ngo to x: (173) y: (255)\nset [ghost v] effect to (0)\nset size to (100) %\nshow\ngo to [back v] layer\npoint in direction (90)\nrepeat (10)\n    turn right (5) degrees\nend\nrepeat (10)\n    change x by (7)\n    change y by (7)\n    change size by (5)\nend\n\nchange size by (5)\n\nwhen flag clicked\nwait (3) seconds\nrepeat (20)\n    change [ghost v] effect by (5)\nend\n\n
LIGHT IN THE DARKNESS\n*****************************************************\n- Move with arrow keys, WASD or mobile mode\n- You can walljump\n\nIf I should add music, please comment