Dark : A scrolling platformer 

Instructions: Follow the rules-   DUE BY  FEB 1st \n\n\nPrizes-\n1st place will get a studio saying to follow them. \nAnd hundreds of people will be invited.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nyou scrolled here for no reason :)

@Stage\n\nwhen I receive [end v]\nchange [brightness v] effect by (10)\n\n@Player\n\ndefine C\nset [checkpoint last touched : x v] to [750]\nset [checkpoint last touched : y v] to [446]\n\ndefine Reset checkpoints\nset [checkpoint last touched : x v] to (SCROLLX)\nset [checkpoint last touched : y v] to (SCROLLY)\n\nwhen flag clicked\ngo to [front v] layer\ngo [backward v] (2) layers\nswitch costume to (costume2 v)\nset [ghost v] effect to (0)\nset size to (45) %\nshow\npoint in direction (90)\nset [xvel v] to [0]\nset [yvel v] to [0]\nC\nshow\nforever\n    broadcast (Tick v)\nend\n\nwhen I receive [tick v]\nforever\n    Tick\nend\n\ndefine Tick\nif <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n    change [xvel v] by (1)\n    switch costume to (costume2 v)\nend\nif <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(x position) > (mouse x)>>> then\n    change [xvel v] by (-1)\n    switch costume to (costume3 v)\nend\nchange x by (XVEL)\nset [xvel v] to ((XVEL) * (0.9))\nif <touching (ground v)?> then\n    change y by (1)\n    if <touching (ground v)?> then\n        change y by (1)\n        if <touching (ground v)?> then\n            change y by (1)\n            if <touching (ground v)?> then\n                change y by (1)\n                if <touching (ground v)?> then\n                    change y by (1)\n                    if <touching (ground v)?> then\n                        change x by ((XVEL) * (-2))\n                        change y by (-5)\n                        if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n                            if <(XVEL) > [0]> then\n                                set [xvel v] to [-10]\n                            else\n                                set [xvel v] to [10]\n                            end\n                            set [yvel v] to [15]\n                        else\n                            set [xvel v] to [0]\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nchange [yvel v] by (-1)\nchange y by (YVEL)\nif <touching (ground v)?> then\n    change y by ((YVEL) * (-1))\n    set [yvel v] to [0]\nend\nchange y by (-1)\nif <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n    if <touching (ground v)?> then\n        set [yvel v] to [13]\n    end\nend\nchange y by (1)\nchange [scrollx v] by ((x position) * (-1))\nchange [scrolly v] by ((y position) * (-1))\ngo to x: (0) y: (0)\nif <[710] < (SCROLLY)> then\n    Position\nend\nif <touching (ground2 v)?> then\n    Position\nend\nif <<[710] < (SCROLLY)> or <touching (ground2 v)?>> then\n    play sound [Roblox Death Sound  OOF Sound Effect v] until done\nend\nif <touching color (#031300)?> then\n    Reset checkpoints\nend\nif <touching (ground3 v)?> then\n    set [yvel v] to [20]\nend\nif <touching (ground4 v)?> then\n    broadcast (Next level v) and wait\nend\nif <touching (ground3 v)?> then\n    play sound [Mario-jump-sound v] until done\nend\n\nwhen I receive [next level v]\nset [checkpoint last touched : x v] to [750]\nset [checkpoint last touched : y v] to [446]\ngo to [front v] layer\ngo [backward v] (2) layers\n\ndefine Position\nset [scrollx v] to (Checkpoint last touched : X)\nset [scrolly v] to (Checkpoint last touched : Y)\nReset checkpoints\nset [ghost v] effect to (0)\nplay sound [Roblox Death Sound  OOF Sound Effect v] until done\n\nwhen I receive [go back v]\nPosition\n\nwhen [up arrow v] key pressed\n\n@Ground\n\nwhen flag clicked\nshow\nswitch costume to (costume1 v)\nset size to (400) %\nswitch costume to (level 1 v)\nPosition\nforever\n    go to x: (SCROLLX) y: (SCROLLY)\nend\n\nwhen I receive [next level v]\nchange [level v] by (1)\nPosition\nnext costume\n\ndefine Position\nset [scrollx v] to [750]\nset [scrolly v] to [446]\nclear graphic effects\n\nwhen flag clicked\nset [level v] to [1]\nforever\n    go to [front v] layer\n    go [backward v] (5) layers\nend\n\nwhen flag clicked\nforever\n    if <(Level) = [5]> then\n        broadcast (End v) and wait\n    end\nend\n\n@Sprite2\n\nwhen flag clicked\nforever\n    go to (player v)\n    go to [front v] layer\n    go [backward v] (12) layers\nend\n\n@Ground2\n\nwhen flag clicked\nshow\nswitch costume to (costume1 v)\nset size to (400) %\nswitch costume to (level 1 v)\nPosition\nforever\n    go to x: (SCROLLX) y: (SCROLLY)\nend\n\nwhen I receive [next level v]\nPosition\nnext costume\n\ndefine Position\nset [scrollx v] to [750]\nset [scrolly v] to [446]\nclear graphic effects\n\n@Ground3\n\nwhen flag clicked\nshow\nswitch costume to (costume1 v)\nset size to (400) %\nswitch costume to (level 1 v)\nPosition\nforever\n    go to x: (SCROLLX) y: (SCROLLY)\nend\n\nwhen I receive [next level v]\nPosition\nnext costume\n\ndefine Position\nset [scrollx v] to [750]\nset [scrolly v] to [446]\nclear graphic effects\n\nwhen flag clicked\nforever\n    if <touching (_edge_ v)?> then\n        hide\n    else\n        show\n    end\nend\n\n@Ground4\n\nwhen flag clicked\nshow\nswitch costume to (costume1 v)\nset size to (400) %\nswitch costume to (level 1 v)\nPosition\nforever\n    go to x: (SCROLLX) y: (SCROLLY)\nend\n\nwhen I receive [next level v]\nPosition\nnext costume\n\ndefine Position\nset [scrollx v] to [750]\nset [scrolly v] to [446]\nclear graphic effects\n\nwhen flag clicked\nforever\n    if <touching (_edge_ v)?> then\n        hide\n    else\n        show\n    end\nend\n\n@Sound4\n\nwhen flag clicked\ngo to x: (90) y: (-150)\nhide\nforever\n    repeat (10)\n        turn right (1.5) degrees\n        wait (0.05) seconds\n    end\n    wait (0.2) seconds\n    repeat (10)\n        turn left (1.5) degrees\n        wait (0.05) seconds\n    end\nend\n\nwhen this sprite clicked\nbroadcast (Go back v)\n\nwhen flag clicked\nswitch costume to (1 v)\npoint in direction (90)\nset size to (50) %\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        change size by (((125) - (size)) / (5))\n        set [brightness v] effect to (5)\n    else\n        change size by (((100) - (size)) / (5))\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen flag clicked\nforever\n    go to [front v] layer\n    go [backward v] (2) layers\n    show\nend\n\n@Sound3\n\nwhen flag clicked\ngo to x: (150) y: (-150)\nforever\n    repeat (10)\n        turn right (1.5) degrees\n        wait (0.05) seconds\n    end\n    wait (0.2) seconds\n    repeat (10)\n        turn left (1.5) degrees\n        wait (0.05) seconds\n    end\nend\n\nwhen this sprite clicked\nbroadcast (Next level v)\n\nwhen flag clicked\nswitch costume to (1 v)\npoint in direction (90)\nset size to (50) %\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        change size by (((125) - (size)) / (5))\n        set [brightness v] effect to (5)\n    else\n        change size by (((100) - (size)) / (5))\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen flag clicked\nforever\n    go to [front v] layer\n    go [backward v] (2) layers\nend\n\n@Sound2\n\nwhen flag clicked\ngo to x: (210) y: (-150)\nhide\nbroadcast (Munsic v)\nset [munsic on v] to [1]\nforever\n    repeat (10)\n        turn right (1.5) degrees\n        wait (0.05) seconds\n    end\n    wait (0.2) seconds\n    repeat (10)\n        turn left (1.5) degrees\n        wait (0.05) seconds\n    end\nend\n\nwhen this sprite clicked\nif <(Munsic on) = [0]> then\n    broadcast (Munsic v)\n    switch costume to (1 v)\nelse\n    set [munsic on v] to [0]\n    repeat (5)\n        change size by (1)\n    end\n    switch costume to (2 v)\nend\n\nwhen I receive [munsic v]\nset [munsic on v] to [1]\n\nwhen flag clicked\nswitch costume to (1 v)\npoint in direction (90)\nset size to (50) %\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        change size by (((125) - (size)) / (5))\n        set [brightness v] effect to (5)\n    else\n        change size by (((100) - (size)) / (5))\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(Munsic on) = [0]> then\n        set volume to (0) %\n    else\n        set volume to (50) %\n    end\nend\n\nwhen flag clicked\nforever\n    play sound [Nebula v] until done\nend\n\nwhen flag clicked\nforever\n    go to [front v] layer\n    go [backward v] (2) layers\nend\n\n@Thumb\n\nwhen flag clicked\ngo to [front v] layer\nset [ghost v] effect to (100)\n\n