Darkness | Platformer

Instructions: =≈=≈=≈=≈=≈=≈=≈=≈=≈=≈=≈=≈=≈=≈=≈=≈=≈=≈=≈=≈=≈• WASD, arrow keys or click and drag to move!\n• Avoid spikes!\n• More coming soon everybody!\n• Also, I'm NOT leaving.\n• Adding more levels!\n• Type "skip" or "retry" and "lag" to skip, retry or enable lag mode.

@Stage\n\nwhen flag clicked\nforever\n    if <(con 1) = [1]> then\n        switch backdrop to (backdrop1 v)\n    end\n    if <(con 1) = [2]> then\n        switch backdrop to (backdrop2 v)\n    end\n    if <(con 1) = [3]> then\n        switch backdrop to (backdrop3 v)\n    end\n    if <(con 1) = [4]> then\n        switch backdrop to (backdrop4 v)\n    end\n    if <(con 1) = [5]> then\n        switch backdrop to (backdrop5 v)\n    end\n    if <(con 1) = [6]> then\n        switch backdrop to (backdrop6 v)\n    end\n    if <(con 1) = [7]> then\n        switch backdrop to (backdrop4 v)\n    end\n    if <(con 1) = [8]> then\n        switch backdrop to (backdrop6 v)\n    end\nend\n\nwhen flag clicked\nforever\n    play sound [Vexento - Pixel Party v] until done\nend\n\n@Platformer\n\ndefine Touch Ground <up?>\nchange [falling? v] by (1)\nrepeat until <not <touching (ground v)?>>\n    if <up?> then\n        change y by (-1)\n    else\n        change y by (1)\n        set [falling? v] to [0]\n    end\n    set [speed y v] to [0]\nend\n\ndefine Walk (direction) (speed)\npoint in direction (direction)\nchange x by (speed)\nset [slope v] to [0]\nrepeat until <<(slope) = [8]> or <not <touching (ground v)?>>>\n    change y by (1)\n    change [slope v] by (1)\nend\nif <(slope) = [8]> then\n    change x by ((0) - (speed))\n    change y by ((0) - (slope))\n    if <<key (up arrow v) pressed?> and <([abs v] of (speed) ) > [3]>> then\n        if <(wall jump) = [0]> then\n            set [speed x v] to ((-1.2) * (speed))\n            set [speed y v] to [11]\n            set [falling? v] to [6]\n            set [wall jump v] to [15]\n        end\n    else\n        set [speed x v] to [0]\n    end\nend\nif <(speed) < [0]> then\n    change [frame v] by ((speed) / (-8))\nelse\n    change [frame v] by ((speed) / (8))\nend\n\ndefine Set Costume\nif <(falling?) < [6]> then\n    if <(frame) = [0]> then\n        switch costume to (stand_1 v)\n    else\n        switch costume to ([floor v] of ((4) + ((frame) mod (8))) )\n    end\nelse\n    if <(speed y) > [0]> then\n        switch costume to (jump_1 v)\n    else\n        switch costume to (fall_1 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching color (#00ff55)?> then\n        go to x: (-230) y: (0)\n        broadcast (nyps v)\n    end\nend\n\nwhen flag clicked\nset size to (25) %\nset rotation style [left-right v]\ngo to x: (-230) y: (0)\nshow\nset [speed y v] to [0]\nset [falling? v] to [10]\nforever\n    switch costume to (hitbox v)\n    if <<(speed y) < [4]> or <key (up arrow v) pressed?>> then\n        change [speed y v] by (-1)\n    else\n        change [speed y v] by (-2)\n    end\n    change y by (speed y)\n    Touch Ground <(speed y) > [0]>\n    if <(wall jump) > [0]> then\n        change [wall jump v] by (-1)\n    else\n        set [speed x v] to ((speed x) * (0.7))\n        if <key (left arrow v) pressed?> then\n            change [speed x v] by (-1.5)\n        end\n        if <key (right arrow v) pressed?> then\n            change [speed x v] by (1.5)\n        end\n    end\n    if <(speed x) < [-0.5]> then\n        Walk (-90) (speed x)\n    else\n        if <(speed x) > [0.5]> then\n            Walk (90) (speed x)\n        else\n            set [frame v] to [0]\n        end\n    end\n    if <key (up arrow v) pressed?> then\n        if <<(jump key) = [0]> and <(falling?) < [3]>> then\n            set [speed y v] to [14]\n            set [falling? v] to [6]\n            set [jump key v] to [1]\n        end\n    else\n        set [jump key v] to [0]\n    end\n    if <<(y position) < [-180]> or <touching color (#ff0000)?>> then\n        go to x: (-230) y: (0)\n        set [speed y v] to [0]\n    end\n    Set Costume\nend\n\n@Ground\n\nwhen flag clicked\ngo to x: (0) y: (0)\nhide\nshow\nswitch costume to (costume1 v)\n\nwhen I receive [nyps v]\nnext costume\n\nwhen flag clicked\nforever\n    set [con 1 v] to (costume [number v])\nend\n\n