Blue - A 100% pen Scrolling Platformer

Instructions: #25 ON GAMES!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! (I forgot when.)\n\nALL LEVELS 100% POSSIBLE!!!!!!!!!!!!! \nYou know the drill, use the arrows or WASD to move, finish the level without dying. mushrooms are bouncy, red kill you. Not 100% done but just ignore that. Like and star if you want more levels or a sequel.\n\nForkphorus link: https://forkphorus.github.io/#440925801\n\nPlatformer Tutorial: https://scratch.mit.edu/projects/452697670/

@Stage\n\nwhen flag clicked\nforever\n    play sound [Nebula v] until done\nend\n\n@Blank\n\n@Render\n\ndefine Render\nset [levelx v] to (SCROLL X)\nset [levely v] to (SCROLL Y)\nRender bg\nRender Platforms (LevelX) (LevelY)\nRender Player [20] (playerX) (playerY)\n\nwhen flag clicked\nset [level v] to [1]\nReset\nforever\n    erase all\n    Render\n    Platform [3] [0.8] [14] [1]\nend\n\ndefine Render Player (size) (x) (y)\npen up\nSet Pen Qualities [Player]\ngo to x: (x) y: (y)\nchange x by ((size) / (-2))\nchange y by ((size) / (2))\npen down\nchange x by ((size) / (1))\nchange y by ((size) / (-1))\nchange x by ((size) / (-1))\nchange y by ((size) / (1))\npen up\nchange pen size by (size)\ngo to x: (x) y: (y)\npen down\npen up\ngo to x: (((x) + ((sx) / (2))) + (5)) y: (((y) + ((sy) / (2))) + (-5))\nset pen size to (6)\nset pen color to (#ffffff)\npen down\ngo to x: (((x) + ((sx) / (2))) + (5)) y: (((y) + ((sy) / (2))) + (5))\npen up\ngo to x: (((x) + ((sx) / (2))) + (-5)) y: (((y) + ((sy) / (2))) + (-5))\nset pen size to (6)\nset pen color to (#ffffff)\npen down\ngo to x: (((x) + ((sx) / (2))) + (-5)) y: (((y) + ((sy) / (2))) + (5))\npen up\nset pen size to (5)\nset pen color to (#000000)\ngo to x: (((x) + ((sx) / (1.5))) + (-5)) y: ((y) + ((sy) / (1.4)))\npen down\npen up\nset pen size to (5)\nset pen color to (#000000)\ngo to x: (((x) + ((sx) / (1.5))) + (5)) y: ((y) + ((sy) / (1.4)))\npen down\npen up\n\ndefine Set Pen Qualities (asset)\nif <(asset) = [Player]> then\n    set pen (transparency v) to (0)\n    set pen (brightness v) to (100)\n    set pen (saturation v) to (100)\n    set pen color to (#2421e5)\n    set pen size to (20)\nelse\n    if <(asset) = [platform]> then\n        set pen (transparency v) to (0)\n        set pen (brightness v) to (100)\n        set pen (saturation v) to (100)\n        set pen color to (#795533)\n        set [levelpensize v] to [50]\n        set pen size to (levelPenSize)\n    else\n        if <(asset) = [trampoline]> then\n            set pen (transparency v) to (0)\n            set pen (brightness v) to (100)\n            set pen (saturation v) to (100)\n            set pen color to (#ffdd00)\n            set [levelpensize v] to [50]\n            set pen size to (levelPenSize)\n        end\n    end\nend\n\ndefine Render Platforms (x) (y)\ndelete all of [level v]\nset [rect# v] to [0]\nif <(Level) = [1]> then\n    Render Surface [425] [-65] [380] [4] [9] [7]\n    Render Surface [189.5] [65] [50] [0] [2] [0]\n    Render Surface [-35] [-65] [360] [3] [2] [4]\n    Render Portal [600] [0] [50]\n    Render Danger Horizontal [-130] [-55] [170]\n    Render Danger Horizontal [300] [-55] [170]\n    Render Trampoline [100] [-40] [50]\n    Render Rect [400] [20] [0] [-100] [Platform]\n    Render Rect [20] [120] [190] [-20] [Platform]\n    Render Rect [400] [20] [400] [-100] [Platform]\nelse\n    if <(Level) = [2]> then\n        Render Surface [0] [-65] [290] [3] [2] [4]\n        Render Surface [-189.5] [65] [50] [0] [0] [0]\n        Render Surface [189.5] [65] [50] [0] [2] [0]\n        Render Surface [0] [175] [430] [6] [7] [8]\n        Render Trampoline [100] [-40] [50]\n        Render Danger Horizontal [-100] [-55] [50]\n        Render Portal [0] [250] [50]\n        Render Rect [400] [20] [0] [-100] [Platform]\n        Render Rect [20] [120] [190] [-20] [Platform]\n        Render Rect [20] [120] [-190] [-20] [Platform]\n        Render Rect [400] [20] [0] [140] [Platform]\n    else\n        if <(Level) = [3]> then\n            Render Surface [150] [-65] [590] [7] [9] [4]\n            Render Surface [150] [135] [730] [9] [11] [6]\n            Render Danger Horizontal [50] [65] [50]\n            Render Trampoline [315] [-40] [50]\n            Render Danger Horizontal [150] [-65] [50]\n            Render Danger Horizontal [-50] [-65] [50]\n            Render Danger Horizontal [315] [65] [50]\n            Render Portal [420] [0] [50]\n            Render Rect [700] [20] [150] [-100] [Platform]\n            Render Rect [20] [160] [490] [0] [Platform]\n            Render Rect [20] [160] [-190] [0] [Platform]\n            Render Rect [700] [20] [150] [100] [Platform]\n        else\n            if <(Level) = [4]> then\n                Render Surface [0] [-73] [190] [2] [3] [1]\n                Render Surface [235] [-73] [106] [3] [4] [0]\n                Render Surface [500] [-73] [230] [5] [7] [6]\n                Render Surface [300] [-222] [630] [11] [15] [9]\n                Render Surface [0] [-350] [230] [6] [2] [1]\n                Render Surface [198] [-450] [123] [3] [2] [0]\n                Render Trampoline [240] [-50] [50]\n                Render Trampoline [70] [-50] [50]\n                Render Trampoline [0] [-50] [50]\n                Render Danger Horizontal [0] [200] [230]\n                Render Danger Horizontal [75] [-82] [200]\n                Render Danger Horizontal [350] [-82] [100]\n                Render Danger Horizontal [200] [-280] [100]\n                Render Danger Vertical [115] [180] [25]\n                Render Danger Vertical [-115] [50] [300]\n                Render Danger Vertical [115] [-20] [110]\n                Render Danger Vertical [-115] [-175] [100]\n                Render Danger Vertical [125] [-375] [35]\n                Render Portal [270] [-350] [50]\n                Render Rect [200] [5] [0] [-100] [Platform]\n                Render Rect [75] [5] [235] [-100] [Platform]\n                Render Rect [200] [5] [500] [-100] [Platform]\n                Render Rect [600] [5] [300] [-250] [Platform]\n                Render Rect [200] [5] [0] [-375] [Platform]\n                Render Rect [200] [5] [200] [-475] [Platform]\n                Render Rect [5] [150] [298] [-360] [Platform]\n                Render Rect [0] [20] [100] [-426] [Platform]\n            else\n                if <(Level) = [5]> then\n                    Render Surface [775] [25] [350] [5] [9] [3]\n                    Render Surface [900] [225] [130] [3] [2] [1]\n                    Render Surface [720] [385] [130] [3] [0] [2]\n                    Render Surface [475] [385] [130] [5] [7] [0]\n                    Render Surface [475] [130] [130] [5] [3] [2]\n                    Render Surface [150] [-72] [430] [5] [7] [9]\n                    Render Surface [250] [180] [130] [2] [0] [5]\n                    Render Danger Horizontal [250] [400] [100]\n                    Render Danger Horizontal [475] [335] [130]\n                    Render Danger Horizontal [720] [550] [100]\n                    Render Danger Horizontal [900] [25] [100]\n                    Render Danger Horizontal [900] [225] [20]\n                    Render Danger Vertical [600] [100] [400]\n                    Render Trampoline [325] [-50] [50]\n                    Render Trampoline [475] [150] [50]\n                    Render Trampoline [250] [200] [50]\n                    Render Trampoline [720] [410] [50]\n                    Render Portal [730] [100] [50]\n                    Render Rect [400] [5] [150] [-100] [Platform]\n                    Render Rect [100] [5] [475] [100] [Platform]\n                    Render Rect [100] [5] [250] [150] [Platform]\n                    Render Rect [100] [0] [475] [360] [Platform]\n                    Render Rect [100] [0] [720] [360] [Platform]\n                    Render Rect [100] [0] [900] [200] [Platform]\n                    Render Rect [300] [0] [785] [0] [Platform]\n                else\n                    Render Surface [150] [-70] [430] [8] [9] [11]\n                    Render Trampoline [280] [-50] [50]\n                    Render Rect [400] [5] [150] [-100] [Platform]\n                end\n            end\n        end\n    end\nend\n\ndefine Render Rect (width) (height) (rectx) (recty) (type)\nchange [rect# v] by (1)\npen up\nSet Pen Qualities (type)\ngo to x: ((rectx) - (LevelX)) y: ((recty) - (LevelY))\nchange x by ((width) / (-2))\nchange y by ((height) / (2))\npen down\nchange x by ((width) / (1))\nchange y by ((height) / (-1))\nchange x by ((width) / (-1))\nchange y by ((height) / (1))\npen up\ngo to x: ((rectx) - (LevelX)) y: ((recty) - (LevelY))\nif <(width) > (height)> then\n    change pen size by ((height) / (2))\n    change x by (((width) / (-2)) + ((50) / (2)))\n    pen down\n    change x by ((width) + ((50) / (-1)))\n    pen up\nelse\n    change pen size by (width)\n    change y by (((height) / (-2)) + ((size) / (2)))\n    pen down\n    change y by ((height) + ((50) / (-1)))\n    pen up\nend\nif <(type) = [Platform]> then\n    add (join (join (join (join ((rectx) - (LevelX)) [, ]) ((recty) - (LevelY))) [, ]) (join (join (width) [, ]) (height))) to [level v]\n    Outline [8]\n    Outline [2]\n    Outline [1]\nend\n\ndefine Reset\nif <(Level) = [1]> then\n    set [x v] to [0]\n    set [y v] to [0]\nelse\n    if <(Level) = [2]> then\n        set [x v] to [0]\n        set [y v] to [0]\n    else\n        if <(Level) = [3]> then\n            set [x v] to [-130]\n            set [y v] to [0]\n        else\n            if <(Level) = [4]> then\n                set [x v] to [0]\n                set [y v] to [0]\n            else\n                if <(Level) = [5]> then\n                    set [x v] to [0]\n                    set [y v] to [0]\n                else\n                    set [x v] to [0]\n                    set [y v] to [0]\n                end\n            end\n        end\n    end\nend\nset [scroll x v] to (x)\nset [scroll y v] to (y)\nset [sx v] to [0]\nset [sy v] to [0]\nhide\n\ndefine Split item (item) of list (list)\nif <(list) = [Level]> then\n    delete all of [split v]\n    set [i1 v] to [0]\n    set [i2 v] to []\n    repeat until <(letter (i1) of (item (item) of [level v])) = [,]>\n        set [i2 v] to (join (i2) (letter (i1) of (item (item) of [level v])))\n        change [i1 v] by (1)\n    end\n    add (i2) to [split v]\n    change [i1 v] by (2)\n    set [i2 v] to []\n    repeat until <(letter (i1) of (item (item) of [level v])) = [,]>\n        set [i2 v] to (join (i2) (letter (i1) of (item (item) of [level v])))\n        change [i1 v] by (1)\n    end\n    add (i2) to [split v]\n    change [i1 v] by (2)\n    set [i2 v] to []\n    repeat until <(letter (i1) of (item (item) of [level v])) = [,]>\n        set [i2 v] to (join (i2) (letter (i1) of (item (item) of [level v])))\n        change [i1 v] by (1)\n    end\n    add (i2) to [split v]\n    change [i1 v] by (2)\n    set [i2 v] to []\n    repeat until <(letter (i1) of (item (item) of [level v])) = []>\n        set [i2 v] to (join (i2) (letter (i1) of (item (item) of [level v])))\n        change [i1 v] by (1)\n    end\n    add (i2) to [split v]\nend\n\ndefine Touching?\nset [i3 v] to [1]\nset [touching? v] to [false]\nrepeat (length of [level v])\n    Split item (i3) of list [Level]\n    if <<<(playerX) > (((item (1) of [split v]) - ((item (3) of [split v]) / (2))) - ((levelPenSize) / (1.12)))> and <(playerX) < (((item (1) of [split v]) - ((item (3) of [split v]) / (-2))) + ((levelPenSize) / (1.12)))>> and <<(playerY) > (((item (2) of [split v]) - ((item (4) of [split v]) / (2))) - ((levelPenSize) / (1.12)))> and <(playerY) < (((item (2) of [split v]) - ((item (4) of [split v]) / (-2))) + ((levelPenSize) / (1.12)))>>> then\n        set [touching? v] to [true]\n    end\n    change [i3 v] by (1)\nend\n\ndefine Platform (speed) (friction) (jumpheight) (gravity)\nchange [sx v] by ((<key (right arrow v) pressed?> - <key (left arrow v) pressed?>) * (3))\nif <([abs v] of ((mouse x) - ((x) - (SCROLL X))) ) > [10]> then\n    change [sx v] by ((<<mouse down?> and <(mouse x) > ((x) - (SCROLL X))>> - <<mouse down?> and <(mouse x) < ((x) - (SCROLL X))>>) * (3))\nend\nchange [sx v] by ((<key (d v) pressed?> - <key (a v) pressed?>) * (3))\nset [sx v] to ((sx) * (0.8))\nChange player x by (sx)\nchange [sy v] by (-1)\nif <<<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > ((y) - (SCROLL Y))>>> and <(inAir) < [5]>> then\n    set [sy v] to [13]\nend\nChange player y by (sy)\nPosition\nCamFollow [10] (x) (y)\nif <(y) < [-500]> then\n    Reset\nend\n\ndefine Outline (pensize)\nSplit item (rect#) of list [Level]\npen up\nset [pensize v] to (pensize)\nset pen size to (penSize)\nset x to ((item (1) of [split v]) + ((((item (3) of [split v]) / (-2)) + ((levelPenSize) / (-2))) + ((penSize) / (2))))\nset y to ((item (2) of [split v]) + (((item (4) of [split v]) / (2)) + (((levelPenSize) / (2)) + ((penSize) / (-2)))))\npen down\nset x to ((item (1) of [split v]) + (((item (3) of [split v]) / (2)) + (((levelPenSize) / (2)) + ((penSize) / (-2)))))\nset y to ((item (2) of [split v]) + (((item (4) of [split v]) / (-2)) + (((levelPenSize) / (-2)) + ((penSize) / (2)))))\nset x to ((item (1) of [split v]) + (((item (3) of [split v]) / (-2)) + (((levelPenSize) / (-2)) + ((penSize) / (2)))))\nset y to ((item (2) of [split v]) + (((item (4) of [split v]) / (2)) + (((levelPenSize) / (2)) + ((penSize) / (-2)))))\npen up\n\ndefine Position\nset [playerx v] to ((x) - (SCROLL X))\nset [playery v] to ((y) - (SCROLL Y))\n\ndefine Change player y by (sy)\nchange [y v] by (sy)\nPosition\nTouching?\nif <(Touching?) = [true]> then\n    repeat until <(Touching?) = [false]>\n        if <(([abs v] of (sy) ) / (sy)) = [-1]> then\n            change [y v] by (1)\n            set [inair v] to [0]\n        else\n            change [y v] by (-1)\n            change [inair v] by (1)\n        end\n        Position\n        Touching?\n    end\n    set [sy v] to [0]\nelse\n    change [inair v] by (1)\nend\n\ndefine Change player x by (sx)\nchange [x v] by (sx)\nPosition\nTouching?\nif <(Touching?) = [true]> then\n    set [sx simplified oposite v] to (([abs v] of (sx) ) / (sx))\n    repeat until <(Touching?) = [false]>\n        if <(sx simplified oposite) = [-1]> then\n            change [x v] by (1)\n        else\n            change [x v] by (-1)\n        end\n        Position\n        Touching?\n    end\n    set [sx v] to [0]\nend\n\ndefine CamFollow (smoothing) (x) (y)\nset [scroll x v] to ((SCROLL X) + (((x) - (SCROLL X)) / (smoothing)))\nset [scroll y v] to ((SCROLL Y) + (((y) - (SCROLL Y)) / (smoothing)))\nPosition\n\ndefine Render Surface (x) (y) (width) (reeds) (rocks) (trees)\nRender Trees (trees) (width) (x) (y)\nRender grass (x) (y) (width)\nRender Rocks (rocks) (width) (x) (y)\nRender Reeds (reeds) (width) (x) (y)\n\ndefine - ()\n\ndefine Render Rock (x) (y)\ngo to x: ((x) + (14)) y: ((y) + (10))\nset pen color to (#8c8c8c)\nset pen size to (20)\npen down\npen up\ngo to x: (x) y: ((y) + (14))\nset pen color to (#a7a7a7)\nset pen size to (30)\npen down\npen up\nset pen size to (8)\nset pen color to (#5b9815)\ngo to x: ((x) - (10)) y: ((y) - (2))\npen down\ngo to x: ((x) - (-20)) y: ((y) - (2))\npen up\n\ndefine Render Reed Clump (x) (y)\nRender Reed (x) (y) [60] [-6]\nRender Reed (x) (y) [50] [15]\nRender Reed (x) (y) [28] [-25]\npen up\nset pen size to (4)\nset pen color to (#5b9815)\ngo to x: ((x) - (5)) y: ((y) - (5))\npen down\ngo to x: ((x) - (-5)) y: ((y) - (5))\npen up\n\ndefine Render Reed (x) (y) (size) (angle)\npen up\nset pen color to (#4a652b)\nset pen size to (10)\ngo to x: (x) y: (y)\npen down\ngo to x: ((x) + (([sin v] of (angle) ) * (size))) y: ((y) + (([cos v] of (angle) ) * (size)))\npen up\nset pen color to (#dcad7f)\nset pen size to (12)\ngo to x: ((x) + (([sin v] of (angle) ) * ((size) / (1.4)))) y: ((y) + (([cos v] of (angle) ) * ((size) / (1.4))))\npen down\ngo to x: ((x) + (([sin v] of (angle) ) * (size))) y: ((y) + (([cos v] of (angle) ) * (size)))\npen up\n\ndefine Render grass (x) (y) (width)\nset pen color to (#5c9815)\nset pen size to (20)\npen up\ngo to x: (((x) - ((width) / (2))) - (LevelX)) y: ((y) - (LevelY))\npen down\ngo to x: (((x) - ((width) / (-2))) - (LevelX)) y: ((y) - (LevelY))\npen up\n\ndefine Render Reeds (reeds) (width) (x) (y)\nset [i5 v] to [1]\nrepeat (reeds)\n    if <not <[skips v] contains (i5)?>> then\n        Render Reed Clump (((x) - (LevelX)) + ((((width) / ((reeds) + (1))) * (i5)) - ((((reeds) + (1)) / (2)) * ((width) / ((reeds) + (1)))))) ((y) - (LevelY))\n    end\n    change [i5 v] by (1)\nend\n\ndefine Render Rocks (rocks) (w) (x) (y)\nset [i6 v] to [1]\nrepeat (rocks)\n    if <not <[skips v] contains (i6)?>> then\n        Render Rock (((x) - (LevelX)) + ((((w) / ((rocks) + (1))) * (i6)) - ((((rocks) + (1)) / (2)) * ((w) / ((rocks) + (1)))))) ((y) - (LevelY))\n    end\n    change [i6 v] by (1)\nend\n\ndefine Render Tree (x) (y)\npen up\nset pen color to (#784415)\nset pen size to (40)\ngo to x: (x) y: ((y) + (12))\npen down\ngo to x: (x) y: ((y) + (100))\npen up\nset pen size to (50)\nset pen color to (#0b6700)\npen up\ngo to x: ((x) + (-20)) y: ((y) + (125))\npen down\ngo to x: ((x) + (20)) y: ((y) + (125))\nset pen color to (#0b6700)\npen up\ngo to x: ((x) + (-40)) y: ((y) + (100))\npen down\ngo to x: ((x) + (40)) y: ((y) + (100))\npen up\n\ndefine Render Trees (trees) (width) (x) (y)\nset [i7 v] to [1]\nrepeat (trees)\n    if <not <[skips v] contains (i7)?>> then\n        Render Tree (((x) - (LevelX)) + ((((width) / ((trees) + (1))) * (i7)) - ((((trees) + (1)) / (2)) * ((width) / ((trees) + (1)))))) ((y) - (LevelY))\n    end\n    change [i7 v] by (1)\nend\n\ndefine Render Trampoline (x) (y) (width)\npen up\nset pen size to (30)\nset pen color to (#5f5100)\ngo to x: ((x) - (LevelX)) y: ((y) - (LevelY))\npen down\ngo to x: ((x) - (LevelX)) y: (((y) - (LevelY)) + ((width) / (-2)))\npen up\nset pen color to (#847200)\nset [tramp pen size v] to [20]\nset pen size to (tramp pen size)\nset pen size to (25)\nset [i8 v] to [-90]\ngo to x: (((x) - (LevelX)) + ((width) / (-2))) y: ((y) - (LevelY))\npen down\nrepeat (180)\n    go to x: ((([sin v] of (i8) ) * ((width) / (4))) + ((x) - (LevelX))) y: ((([cos v] of (i8) ) * ((width) / (2.5))) + ((y) - (LevelY)))\n    change [i8 v] by (1)\nend\ngo to x: (((x) - (LevelX)) + ((width) / (2))) y: ((y) - (LevelY))\npen up\ngo to x: (((x) - (LevelX)) + ((width) / (-2))) y: ((y) - (LevelY))\npen down\ngo to x: (((x) - (LevelX)) + ((width) / (2))) y: ((y) - (LevelY))\npen up\nset pen color to (#9e9800)\nset pen size to (20)\ngo to x: (((x) - (LevelX)) + (-8)) y: (((y) - (LevelY)) + (15))\npen down\npen up\nset pen size to (10)\ngo to x: (((x) - (LevelX)) + (12)) y: (((y) - (LevelY)) + (0))\npen down\npen up\nif <<<((playerX) + (20)) > (((x) - (LevelX)) + ((width) / (-2)))> and <((playerX) + (-20)) < (((x) - (LevelX)) + ((width) / (2)))>> and <<((playerY) + (20)) > (((y) - (LevelY)) + (-10))> and <((playerY) + (-20)) < (((y) - (LevelY)) + (10))>>> then\n    set [sy v] to [20]\nend\n\ndefine Render Danger Horizontal (x) (y) (width)\npen up\nset pen color to (#9b0000)\nset [tramp pen size v] to [20]\nset pen size to (tramp pen size)\ngo to x: (((x) - (LevelX)) + ((width) / (-2))) y: ((y) - (LevelY))\npen down\ngo to x: (((x) - (LevelX)) + ((width) / (2))) y: ((y) - (LevelY))\nset [tramp pen size v] to [20]\nif <<<((playerX) + (20)) > (((x) - (LevelX)) + ((width) / (-2)))> and <((playerX) + (-20)) < (((x) - (LevelX)) + ((width) / (2)))>> and <<((playerY) + (20)) > (((y) - (LevelY)) + (-10))> and <((playerY) + (-20)) < (((y) - (LevelY)) + (10))>>> then\n    Reset\nend\n\nwhen [r v] key pressed\nReset\n\ndefine Render Portal (x) (y) (width)\nchange [timer v] by (0.05)\npen up\nset pen color to (#2421e5)\nset pen size to ((([sin v] of ((Timer) * (200)) ) * ((width) / (2))) + ((width) * (1.5)))\ngo to x: ((x) - (LevelX)) y: ((y) - (LevelY))\npen down\npen up\npen up\nset pen color to (#042579)\nset pen size to (width)\ngo to x: ((x) - (LevelX)) y: ((y) - (LevelY))\npen down\npen up\nif <<<((playerX) + (20)) > (((x) - (LevelX)) + ((width) / (-2)))> and <((playerX) + (-20)) < (((x) - (LevelX)) + ((width) / (2)))>> and <<((playerY) + (20)) > (((y) - (LevelY)) + (-10))> and <((playerY) + (-20)) < (((y) - (LevelY)) + (10))>>> then\n    change [level v] by (1)\n    Render\n    Reset\nend\n\ndefine Render Danger Vertical (x) (y) (hieght)\npen up\nset pen color to (#9b0000)\nset [tramp pen size v] to [20]\nset pen size to (tramp pen size)\ngo to x: ((x) - (LevelX)) y: (((y) - (LevelY)) + ((hieght) / (-2)))\npen down\ngo to x: ((x) - (LevelX)) y: (((y) - (LevelY)) + ((hieght) / (2)))\nset [tramp pen size v] to [20]\nif <<<((playerX) + (20)) > (((x) - (LevelX)) + (-20))> and <((playerX) + (-20)) < (((x) - (LevelX)) + (20))>> and <<((playerY) + (20)) > (((y) - (LevelY)) + ((hieght) / (-2)))> and <((playerY) + (-20)) < (((y) - (LevelY)) + ((hieght) / (2)))>>> then\n    Reset\nend\n\ndefine Render bg\ngo to x: (0) y: (0)\nset pen color to (#2e96e6)\nset pen size to (800)\npen down\npen up\n\n@Thumbnail\n\nwhen flag clicked\nforever\n    hide\n    reset timer\nend\n\nwhen [timer v] > (0.01)\nshow\n\n