Pen Platformer #Trending #Games #Art #All

Instructions: Use WASD or Arrow keys Or tap to move. Press WASD or Arrow keys Or tap up on the yellow tramp to jump Very high. \nNote this is a 90% Pen Platformer.\nHope You Enjoy!

@Stage\n\nwhen flag clicked\nforever\n    play sound [Warriyo - Mortals v] until done\nend\n\nwhen [space v] key pressed\nset [x and y v] to (join (join (mouse x) [:]) (mouse y))\n\n@Render\n\ndefine Draw Level At X (x) Y (y) X2 (x2) Y2 (y2) Size (size) Type (type)\nset pen size to (size)\nif <(type) = [Grass]> then\n    set pen color to (#03b500)\nelse\n    if <(type) = [Dirt]> then\n        set pen color to (#ad8d00)\n    end\nend\npen up\ngo to x: (x) y: (y)\npen down\ngo to x: (x2) y: (y2)\npen up\n\ndefine Draw Sky Color (color)\npen up\ngo to x: (0) y: (0)\nif <(color) = [Light Blue]> then\n    set pen color to (#00bfff)\nelse\n    if <(color) = [Blue]> then\n        set pen color to (#168eff)\n    else\n        if <(color) = [Dark Blue]> then\n            set pen color to (#0008ff)\n        else\n            set pen color to (#fdfdfd)\n        end\n    end\nend\npen down\nchange pen size by ((1) / ())\ngo to (random position v)\npen up\n\ndefine RENDER\nif <(Level) = [1]> then\n    Level 1\nelse\n    if <(Level) = [2]> then\n        Level 2\n    else\n        if <(Level) = [3]> then\n            Level 3\n        else\n            if <(Level) = [4]> then\n                Level 4\n            else\n                if <(Level) = [5]> then\n                    Level 5\n                else\n                    if <(Level) = [6]> then\n                        Level 6\n                    else\n                        Level 7\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine Level 1\nDraw Sky Color [Light Blue]\nDraw Sun [100]\nDraw Level At X [-300] Y [-180] X2 [300] Y2 [-180] Size [60] Type [Dirt]\nDraw Level At X [-300] Y [-140] X2 [300] Y2 [-140] Size [20] Type [Grass]\n\nwhen flag clicked\nReset\nforever\n    erase all\n    RENDER\n    broadcast (Tick v)\nend\n\ndefine Level 2\nDraw Sky Color [Light Blue]\nDraw Sun [100]\nDraw Level At X [-300] Y [-180] X2 [300] Y2 [-180] Size [60] Type [Dirt]\nDraw Level At X [-50] Y [-100] X2 [-50] Y2 [-20] Size [100] Type [Dirt]\nDraw Level At X [-50] Y [-20] X2 [70] Y2 [-20] Size [100] Type [Dirt]\nDraw Level At X [70] Y [-20] X2 [70] Y2 [-100] Size [100] Type [Dirt]\nDraw Level At X [-50] Y [-100] X2 [70] Y2 [-100] Size [100] Type [Dirt]\nDraw Level At X [-300] Y [-140] X2 [300] Y2 [-140] Size [20] Type [Grass]\nDraw Level At X [-100] Y [-140] X2 [-100] Y2 [20] Size [20] Type [Grass]\nDraw Level At X [-100] Y [20] X2 [120] Y2 [20] Size [20] Type [Grass]\nDraw Level At X [120] Y [20] X2 [120] Y2 [-140] Size [20] Type [Grass]\n\ndefine Draw Sun (brightness)\nset pen color to (#e7ff39)\nset pen size to (250)\nset pen (brightness v) to (brightness)\npen up\ngo to x: (270) y: (200)\npen down\npen up\n\nwhen I receive [hide v]\nerase all\n\ndefine Reset\nset [level v] to [1]\nerase all\nset pen size to (1)\nset pen (color v) to (0)\n\ndefine Level 3\nDraw Sky Color [Light Blue]\nDraw Sun [100]\nDraw Level At X [-300] Y [-180] X2 [300] Y2 [-180] Size [60] Type [Dirt]\nDraw Level At X [-100] Y [-150] X2 [90] Y2 [-70] Size [50] Type [Dirt]\nDraw Level At X [90] Y [-70] X2 [300] Y2 [-70] Size [55] Type [Dirt]\nDraw Level At X [-70] Y [-140] X2 [300] Y2 [-140] Size [60] Type [Dirt]\nDraw Level At X [-50] Y [-130] X2 [300] Y2 [-130] Size [60] Type [Dirt]\nDraw Level At X [-30] Y [-120] X2 [300] Y2 [-120] Size [60] Type [Dirt]\nDraw Level At X [-110] Y [-130] X2 [90] Y2 [-50] Size [20] Type [Grass]\nDraw Level At X [-300] Y [-140] X2 [300] Y2 [-140] Size [20] Type [Grass]\nDraw Level At X [90] Y [-50] X2 [300] Y2 [-50] Size [20] Type [Grass]\nDraw Lava X [200] Y [-40] X2 [140] Y2 [-40] Size [15]\n\ndefine Level 4\nDraw Sky Color [Light Blue]\nDraw Sun [100]\nDraw Level At X [-300] Y [-180] X2 [300] Y2 [-180] Size [60] Type [Dirt]\nDraw Level At X [155] Y [-127] X2 [300] Y2 [-127] Size [60] Type [Dirt]\nDraw Level At X [170] Y [-127] X2 [300] Y2 [0] Size [70] Type [Dirt]\nDraw Level At X [200] Y [-127] X2 [300] Y2 [0] Size [70] Type [Dirt]\nDraw Level At X [155] Y [0] X2 [155] Y2 [-127] Size [60] Type [Dirt]\nDraw Level At X [155] Y [0] X2 [300] Y2 [0] Size [60] Type [Dirt]\nDraw Level At X [155] Y [-127] X2 [300] Y2 [-127] Size [20] Type [Grass]\nDraw Level At X [140] Y [20] X2 [140] Y2 [-127] Size [30] Type [Grass]\nDraw Level At X [140] Y [20] X2 [300] Y2 [20] Size [30] Type [Grass]\nDraw Level At X [-300] Y [-140] X2 [300] Y2 [-140] Size [20] Type [Grass]\nDraw Bouncy At X [-50] Y [-130] X2 [30] Y2 [-130] Size [20]\n\ndefine Draw Lava X (x) Y (y) X2 (x2) Y2 (y2) Size (size)\nset pen color to (#ff0000)\nset pen size to (size)\npen up\ngo to x: (x) y: (y)\npen down\ngo to x: (x2) y: (y2)\npen up\n\ndefine Draw Bouncy At X (x) Y (y) X2 (x2) Y2 (y2) Size (size)\nset pen color to (#e1ff00)\nset pen size to (size)\npen up\ngo to x: (x) y: (y)\npen down\ngo to x: (x2) y: (y2)\npen up\n\ndefine Level 5\nDraw Sky Color [Light Blue]\nDraw Sun [100]\nDraw Level At X [-300] Y [-140] X2 [300] Y2 [-140] Size [20] Type [Grass]\nDraw Level At X [-300] Y [-180] X2 [300] Y2 [-180] Size [60] Type [Dirt]\nDraw Bouncy At X [-150] Y [-130] X2 [-50] Y2 [-130] Size [20]\nDraw Lava X [100] Y [-130] X2 [0] Y2 [-130] Size [20]\nDraw Lava X [200] Y [-130] X2 [300] Y2 [-130] Size [20]\n\ndefine Level 6\nDraw Sky Color [Light Blue]\nDraw Sun [100]\nDraw Level At X [-300] Y [-180] X2 [300] Y2 [-180] Size [60] Type [Dirt]\nDraw Lava X [0] Y [-130] X2 [0] Y2 [0] Size [20]\nDraw Lava X [200] Y [-130] X2 [200] Y2 [0] Size [20]\nDraw Level At X [-300] Y [-140] X2 [300] Y2 [-140] Size [20] Type [Grass]\nDraw Bouncy At X [-150] Y [-130] X2 [-50] Y2 [-130] Size [20]\nDraw Bouncy At X [50] Y [-130] X2 [150] Y2 [-130] Size [20]\n\ndefine Level 7\nDraw Sky Color [Light Blue]\nDraw Sun [100]\nDraw Level At X [-300] Y [-180] X2 [300] Y2 [-180] Size [60] Type [Dirt]\nDraw Level At X [-300] Y [-140] X2 [300] Y2 [-140] Size [20] Type [Grass]\n\ndefine Draw White Line At X (x) Y (y) X2 (x2) Y2 (y2) Size (size)\nset pen size to (size)\nset pen color to (#ffffff)\npen up\ngo to x: (x) y: (y)\npen down\ngo to x: (x2) y: (y2)\npen up\n\nwhen I receive [tick v]\nif <(Level) = [7]> then\n    Draw White Line At X [-60] Y [100] X2 [-30] Y2 [50] Size [20]\n    Draw White Line At X [0] Y [100] X2 [-30] Y2 [50] Size [20]\n    Draw White Line At X [0] Y [100] X2 [30] Y2 [50] Size [20]\n    Draw White Line At X [50] Y [100] X2 [30] Y2 [50] Size [20]\n    Draw White Line At X [90] Y [100] X2 [90] Y2 [50] Size [20]\n    Draw White Line At X [90] Y [130] X2 [90] Y2 [130] Size [20]\n    Draw White Line At X [130] Y [100] X2 [130] Y2 [50] Size [20]\n    Draw White Line At X [130] Y [100] X2 [170] Y2 [50] Size [20]\n    Draw White Line At X [170] Y [50] X2 [170] Y2 [100] Size [20]\nend\n\n@Thumbnail\n\ndefine Smooth Glide Y (y) Speed (speed)\nrepeat until <(round (y position)) = (round (y))>\n    change y by (((y) - (y position)) / (speed))\nend\nset y to (y)\n\nwhen [timer v] > (-)\ngo to x: (0) y: (0)\nRun Script\n\ndefine Run Script\nswitch costume to (thumbnail v)\nbroadcast (Hide v)\nset size to (100) %\ngo to x: (0) y: (-365)\nSmooth Glide Y [0] Speed [7]\n\nwhen flag clicked\nforever\n    reset timer\n    broadcast (Show v)\nend\n\nwhen I receive [show v]\nhide\n\nwhen I receive [hide v]\nshow\n\n@Player\n\ndefine Change Player X (sx) (friction)\nchange [x v] by ((<<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> - <<<mouse down?> and <(mouse x) < (x position)>> or <<key (left arrow v) pressed?> or <key (a v) pressed?>>>) * (sx))\nset [x v] to ((X) * (friction))\nchange x by (X)\nSlope [12]\nif <<touching color (#02b500)?> or <touching color (#ad8c00)?>> then\n    change x by (() - (X))\n    if <not <(Level) = [4]>> then\n        if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n            if <(X) > [0]> then\n                set [x v] to [-10]\n                set [y v] to [10]\n            else\n                set [x v] to [10]\n                set [y v] to [10]\n            end\n        else\n            set [x v] to [0]\n        end\n        Slope [12]\n    end\nend\nif <not <(Level) = [7]>> then\n    if <(x position) > [230]> then\n        Next Level\n    end\nend\n\ndefine Slope (degrees)\nset [slope v] to [0]\nrepeat until <<not <<touching color (#02b500)?> or <touching color (#ad8c00)?>>> or <(Slope) = (degrees)>>\n    change [slope v] by (1)\n    change y by (1)\nend\nif <<touching color (#02b500)?> or <touching color (#ad8c00)?>> then\n    change y by ((0) - (degrees))\nend\n\ndefine Change Player Y (gravity) (height)\nchange [y v] by (gravity)\nchange y by (Y)\nif <<touching color (#02b500)?> or <touching color (#ad8c00)?>> then\n    if <[0] < (Y)> then\n        repeat until <not <<touching color (#02b500)?> or <touching color (#ad8c00)?>>>\n            change [y v] by (-1)\n            change y by (-1)\n        end\n    else\n        change y by (() - (Y))\n        set [y v] to [0]\n        if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n            set [y v] to (height)\n        end\n    end\nend\nif <[-20] > (Y)> then\n    set [y v] to [-20]\nend\nif <touching color (#e1ff00)?> then\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n        set [y v] to ((height) + (10))\n    else\n        set [y v] to ((height) + (5))\n    end\nend\n\ndefine Platformer Gravity (gravity) Jump height (height ) Speed X (sx) Friction (friction)\nChange Player Y (gravity) (height )\nChange Player X (sx) (friction)\nDie\nif <key (r v) pressed?> then\n    Reset\nend\n\nwhen flag clicked\nReset\n\ndefine Die\nif <[-180] > (y position)> then\n    Reset\nend\nif <touching color (#ff0000)?> then\n    Reset\nend\n\ndefine Reset\ngo to x: (-200) y: (0)\nset [y v] to [0]\nset [x v] to [0]\n\nwhen I receive [hide v]\nhide\n\nwhen I receive [tick v]\nshow\ngo to [front v] layer\nset size to (100) %\nPlatformer Gravity [-1] Jump height [11] Speed X [1.5] Friction [0.88]\n\ndefine Next Level\nReset\nchange [level v] by (1)\n\n