Mario Platformer
@Stage\n\nwhen flag clicked\nforever\n    play sound [Summertime v] until done\nend\n\n@pen\n\ndefine Print (message ) at x: (x) y: (y) direction: (direction) size (size) thickness (thickness) height (height) width (width) spacing (spacing)\nset pen size to (thickness)\nset pen color to (#000000)\nset [penloops v] to [0]\npoint in direction (direction)\nrepeat (length of (message ))\n    change [penloops v] by (1)\n    if <[letters v] contains (letter (penloops) of (message ))?> then\n        set [penloops2 v] to [1]\n        go to x: (x) y: (y)\n        move (((penloops) - (1)) * ((size) * ((9) + (spacing)))) steps\n        move ((letter (penloops2) of (item (item # of (letter (penloops) of (message )) in [letters v]) of [letter data v])) * ((size) * ((1) + ((width) / (100))))) steps\n        turn left (90) degrees\n        move ((letter ((penloops2) + (1)) of (item (item # of (letter (penloops) of (message )) in [letters v]) of [letter data v])) * ((size) * ((1) + ((height) / (100))))) steps\n        turn left (-90) degrees\n        set [penx v] to (x position)\n        set [peny v] to (y position)\n        repeat (((length of (item (item # of (letter (penloops) of (message )) in [letters v]) of [letter data v])) / (2)) - (0))\n            go to x: (x) y: (y)\n            move (((penloops) - (1)) * ((size) * ((9) + (spacing)))) steps\n            move ((letter (penloops2) of (item (item # of (letter (penloops) of (message )) in [letters v]) of [letter data v])) * ((size) * ((1) + ((width) / (100))))) steps\n            turn left (90) degrees\n            move ((letter ((penloops2) + (1)) of (item (item # of (letter (penloops) of (message )) in [letters v]) of [letter data v])) * ((size) * ((1) + ((height) / (100))))) steps\n            turn left (-90) degrees\n            set [prevpenx v] to (penx)\n            set [prevpeny v] to (peny)\n            set [penx v] to (x position)\n            set [peny v] to (y position)\n            go to x: (prevpenx) y: (prevpeny)\n            pen down\n            go to x: (penx) y: (peny)\n            pen up\n            change [penloops2 v] by (2)\n        end\n    end\nend\n\ndefine load letters\ndelete all of [letters v]\ndelete all of [letter data v]\nadd [abcdefghijklmnopqrstuvwxyz] to list\nadd [004864246480] to [letter data v]\nadd [000868868564046483826000] to [letter data v]\nadd [8668280602206082] to [letter data v]\nadd [00085885835000] to [letter data v]\nadd [88080484040080] to [letter data v]\nadd [880804840400] to [letter data v]\nadd [86682806022060828444] to [letter data v]\nadd [000804848088] to [letter data v]\nadd [4048] to [letter data v]\nadd [8882602002] to [letter data v]\nadd [000804880480] to [letter data v]\nadd [080080] to [letter data v]\nadd [0008408880] to [letter data v]\nadd [00088088] to [letter data v]\nadd [608286682806022060] to [letter data v]\nadd [00087887857404] to [letter data v]\nadd [608286682806022060714480] to [letter data v]\nadd [0008788785740480] to [letter data v]\nadd [88180705147483817000] to [letter data v]\nadd [08884840] to [letter data v]\nadd [080220608288] to [letter data v]\nadd [084088] to [letter data v]\nadd [0820486088] to [letter data v]\nadd [0880448800] to [letter data v]\nadd [0844884440] to [letter data v]\nadd [08880080] to [letter data v]\n\ndefine add (msg) to list\nset [penloops v] to [0]\nrepeat (length of (msg))\n    change [penloops v] by (1)\n    add (letter (penloops) of (msg)) to [letters v]\nend\n\nwhen flag clicked\nset [level v] to [1]\n\ndefine physics\nleft and right movement\nwall detection\nup-down movement\nspecial detection\n\ndefine render\nerase all\nset pen color to (#4377ff)\ngo to x: (0) y: (0)\nset pen size to (600)\npen down\npen up\nset pen color to (#f8ff00)\ngo to x: (((() - (camx)) / (80)) + (-50)) y: (((() - (camy)) / (10)) + (100))\nset pen size to (60)\npen down\npen up\npoint in direction ((move) / (5))\nset pen size to (10)\nrepeat (5)\n    go to x: (((() - (camx)) / (80)) + (-50)) y: (((() - (camy)) / (10)) + (100))\n    move (40) steps\n    pen down\n    move (30) steps\n    pen up\n    move (-70) steps\n    turn right (35) degrees\n    move (40) steps\n    pen down\n    move (15) steps\n    pen up\n    turn right (35) degrees\nend\nClouds\nset [loops v] to [0]\nrepeat (length of [treex v])\n    change [loops v] by (1)\n    Render tree ((item (loops) of [treex v]) - (camx)) ((item (loops) of [treey v]) - (camy)) (item (loops) of [treetype v]) (item (loops) of [treecolor v]) (item (loops) of [treeseason v]) (item (loops) of [treeheight v])\nend\nset pen size to (20)\nset pen (color v) to ((move) / (10))\nset pen (saturation v) to (100)\nset pen (brightness v) to (70)\ngo to x: (((x) - (7)) - (camx)) y: (((y) - (7)) - (camy))\npen down\ngo to x: (((x) - (7)) - (camx)) y: (((y) + (10)) - (camy))\ngo to x: (((x) + (7)) - (camx)) y: (((y) + (10)) - (camy))\ngo to x: (((x) + (7)) - (camx)) y: (((y) - (7)) - (camy))\ngo to x: (((x) - (7)) - (camx)) y: (((y) - (7)) - (camy))\npen up\nif <(eye color) = [0]> then\n    set pen color to (#000000)\nelse\n    set pen color to (#ffffff)\nend\nset pen size to (5)\ngo to x: ((((x) + (xv)) - (-5)) - (camx)) y: (((y) + (10)) - (camy))\npen down\ngo to x: ((((x) + (xv)) - (-5)) - (camx)) y: (((y) - (0)) - (camy))\npen up\ngo to x: ((((x) + (xv)) - (5)) - (camx)) y: (((y) + (10)) - (camy))\npen down\ngo to x: ((((x) + (xv)) - (5)) - (camx)) y: (((y) - (0)) - (camy))\npen up\nif <(eye color) = [0]> then\n    set pen color to (#ffffff)\nelse\n    set pen color to (#000000)\nend\nset pen size to (5)\ngo to x: ((((x) + (xv)) - (-5)) - (camx)) y: (((y) + (7)) - (camy))\npen down\ngo to x: ((((x) + (xv)) - (-5)) - (camx)) y: (((y) + (4)) - (camy))\npen up\ngo to x: ((((x) + (xv)) - (5)) - (camx)) y: (((y) + (7)) - (camy))\npen down\ngo to x: ((((x) + (xv)) - (5)) - (camx)) y: (((y) + (4)) - (camy))\npen up\nset [loops v] to [0]\nrepeat (length of [waterx v])\n    change [loops v] by (1)\n    render water ((item (loops) of [waterx v]) - (camx)) ((item (loops) of [watery v]) - (camy)) ((item (loops) of [waterx2 v]) - (camx)) ((item (loops) of [watery2 v]) - (camy))\nend\nset [loops v] to [0]\nrepeat (length of [groundx v])\n    change [loops v] by (1)\n    set pen color to (#c35e00)\n    Render Rectangle ((item (loops) of [groundx v]) - (camx)) ((item (loops) of [groundy v]) - (camy)) ((item (loops) of [groundx2 v]) - (camx)) ((item (loops) of [groundy2 v]) - (camy))\n    set pen color to (#21f300)\n    if <(item (loops) of [groundseason v]) = [winter]> then\n        set pen color to (#ffffff)\n    end\n    if <(item (loops) of [groundseason v]) = [autumn]> then\n        set pen color to (#ff6100)\n    end\n    if <not <(item (loops) of [groundseason v]) = [none]>> then\n        set pen size to (20)\n        go to x: ((item (loops) of [groundx v]) - (camx)) y: (((item (loops) of [groundy2 v]) - (camy)) - (10))\n        pen down\n        go to x: ((item (loops) of [groundx2 v]) - (camx)) y: (((item (loops) of [groundy2 v]) - (camy)) - (10))\n        pen up\n    end\nend\nset pen size to (5)\ngrass\nparticles\n\ndefine up-down movement\nchange [yv v] by (-0.5)\nchange [y v] by (yv)\nget collision ((x) - (10)) ((y) - (15)) ((x) + (10)) ((y) + (10))\nchange [y v] by (5)\nif <[collisions v] contains [1]?> then\n    repeat (20)\n        get collision ((x) - (10)) ((y) - (15)) ((x) + (10)) ((y) + (10))\n        if <[collisions v] contains [1]?> then\n            change [y v] by (-1)\n            set [yv v] to [-5]\n        end\n    end\n    if <[collisions v] contains [1]?> then\n        change [y v] by (10)\n    end\nend\nchange [y v] by (-7)\nget collision ((x) - (10)) ((y) - (15)) ((x) + (10)) ((y) + (10))\nif <[collisions v] contains [1]?> then\n    change [y v] by (() - (yv))\n    set [yv v] to [0]\n    repeat (30)\n        if <[collisions v] contains [1]?> then\n            change [y v] by (1)\n            get collision ((x) - (10)) ((y) - (15)) ((x) + (10)) ((y) + (10))\n        end\n    end\n    if <[collisions v] contains [1]?> then\n        broadcast (death v)\n    end\n    if <<<key (w v) pressed?> or <key (up arrow v) pressed?>> or <<mouse down?> and <(mouse y) > [50]>>> then\n        if <[collisions v] contains [5]?> then\n            set [yv v] to [1]\n        else\n            set [yv v] to [12]\n        end\n    end\nend\n\ndefine left and right movement\nif <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(mouse x) < [-50]>>> then\n    change [xv v] by (-1.5)\nend\nif <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > [50]>>> then\n    change [xv v] by (1.5)\nend\nset [xv v] to ((xv) * (0.8))\nchange [x v] by (xv)\n\ndefine get collision (x) (y) (x2) (y2)\ndelete all of [collisions v]\nset [loops v] to [0]\nrepeat (length of [x v])\n    change [loops v] by (1)\n    if <<<(item (loops) of [x v]) < (x2)> and <(x) < (item (loops) of [x2 v])>> and <<(item (loops) of [y v]) < (y2)> and <(y) < (item (loops) of [y2 v])>>> then\n        add (item (loops) of [type v]) to [collisions v]\n    end\nend\n\ndefine wall detection\nchange [y v] by (1)\nget collision ((x) - (10)) ((y) - (15)) ((x) + (10)) ((y) + (10))\nrepeat (10)\n    if <[collisions v] contains [1]?> then\n        get collision ((x) - (10)) ((y) - (15)) ((x) + (10)) ((y) + (10))\n        change [y v] by (1)\n    end\nend\nif <[collisions v] contains [1]?> then\n    change [y v] by (-10)\n    change [x v] by ((xv) * (-1))\n    set [xv v] to [0]\nend\n\ndefine special detection\nget collision ((x) - (15)) ((y) - (20)) ((x) + (15)) ((y) + (20))\nif <[collisions v] contains [2]?> then\n    broadcast (death v)\nend\nif <[collisions v] contains [3]?> then\n    set [yv v] to [20]\nend\nif <[collisions v] contains [5]?> then\n    change [yv v] by (0.5)\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > [50]>>> then\n        change [yv v] by (1)\n    end\n    if <<<key (down arrow v) pressed?> or <key (s v) pressed?>> or <<mouse down?> and <(mouse y) < [-50]>>> then\n        change [yv v] by (-1)\n    end\n    set [yv v] to ((yv) * (0.9))\nend\nif <(x) > [11000]> then\n    broadcast (win v)\nend\n\ndefine create rect (x) (y) (x2) (y2) (type)\nif <(x2) > (x)> then\n    add (x) to [x v]\n    add (x2) to [x2 v]\nelse\n    add (x2) to [x v]\n    add (x) to [x2 v]\nend\nif <(y2) > (y)> then\n    add (y) to [y v]\n    add (y2) to [y2 v]\nelse\n    add (y2) to [y v]\n    add (y) to [y2 v]\nend\nadd (type) to [type v]\n\ndefine get colors\ndelete all of [colors v]\nadd [30] to [colors v]\nadd [0] to [colors v]\nadd [20] to [colors v]\nadd [40] to [colors v]\n\nwhen I receive [seasons v]\nlevel\nset pen color to (#ff0000)\nset [x v] to [0]\nset [y v] to [0]\nset [yv v] to [0]\nswitch costume to (costume1 v)\nset size to (50000000) %\nswitch costume to (costume1 v)\nhide\nget colors\nforever\n    broadcast (seasontick v)\nend\n\nwhen flag clicked\nbroadcast (seasons v)\n\ndefine level\ndelete all of [waterx v]\ndelete all of [waterx2 v]\ndelete all of [watery v]\ndelete all of [watery2 v]\ndelete all of [groundx v]\ndelete all of [groundx2 v]\ndelete all of [groundy v]\ndelete all of [groundy2 v]\ndelete all of [groundseason v]\ndelete all of [grassx v]\ndelete all of [grassy v]\ndelete all of [grasssway v]\ndelete all of [treeheight v]\ndelete all of [treeseason v]\ndelete all of [treetype v]\ndelete all of [treex v]\ndelete all of [treey v]\ndelete all of [treecolor v]\ndelete all of [grassmagnitude v]\ndelete all of [grasslength v]\ndelete all of [grassdir v]\ndelete all of [x v]\ndelete all of [x2 v]\ndelete all of [y v]\ndelete all of [y2 v]\ndelete all of [type v]\n// [summer]\ncreate rect [-240] [-400] [200] [-50] [1]\nAdd Ground Block [-240] [-400] [200] [-50] [summer]  \ncreate rect [200] [-400] [500] [0] [1]\nAdd Ground Block [200] [-400] [500] [0] [summer]  \ncreate rect [500] [-100] [700] [0] [5]\nadd water [500] [-100] [700] [0]\ncreate rect [500] [-400] [700] [-100] [1]\nAdd Ground Block [500] [-400] [700] [-100] [none] <> <>\ncreate rect [700] [-400] [800] [0] [1]\nAdd Ground Block [700] [-400] [800] [0] [summer]  \ncreate rect [800] [-400] [1000] [-50] [1]\nAdd Ground Block [800] [-400] [1000] [-50] [summer]  \ncreate rect [1000] [-400] [1200] [-100] [1]\nAdd Ground Block [1000] [-400] [1200] [-100] [summer]  \nadd water [1200] [-300] [1300] [-110]\ncreate rect [1200] [-300] [1300] [-110] [5]\nAdd Ground Block [1200] [-400] [1800] [-300] [none] <> <>\ncreate rect [1200] [-400] [1800] [-300] [1]\ncreate rect [1300] [-200] [1600] [-100] [1]\nAdd Ground Block [1300] [-200] [1600] [-100] [summer]  \nadd water [1300] [-400] [1700] [-205]\ncreate rect [1300] [-400] [1700] [-205] [5]\ncreate rect [1600] [-200] [1700] [100] [1]\nAdd Ground Block [1600] [-200] [1700] [100] [summer]  \nadd water [1700] [-400] [1800] [0]\ncreate rect [1700] [-400] [1800] [0] [5]\ncreate rect [1800] [-400] [2200] [0] [1]\nAdd Ground Block [1800] [-400] [2200] [0] [summer]  \n// [autumn]\nAdd Ground Block [2200] [-400] [2400] [-50] [autumn] <> \ncreate rect [2200] [-400] [2400] [-50] [1]\nadd water [2400] [-150] [2600] [-60]\ncreate rect [2400] [-150] [2600] [-60] [5]\nAdd Ground Block [2400] [-400] [2600] [-150] [none] <> <>\ncreate rect [2400] [-400] [2600] [-150] [1]\nAdd Ground Block [2600] [-400] [2800] [0] [autumn] <> \ncreate rect [2600] [-400] [2800] [0] [1]\nAdd Ground Block [2800] [-400] [3000] [50] [autumn] <> \ncreate rect [2800] [-400] [3000] [50] [1]\nAdd Ground Block [3000] [-400] [3100] [-50] [autumn] <> \ncreate rect [3000] [-400] [3100] [-50] [1]\nAdd Ground Block [3100] [-400] [3500] [-100] [none] <> <>\ncreate rect [3100] [-400] [3500] [-100] [1]\nAdd Ground Block [3150] [0] [3400] [100] [autumn] <> \ncreate rect [3150] [0] [3400] [100] [1]\nAdd Ground Block [3500] [-400] [3600] [150] [autumn] <> \ncreate rect [3500] [-400] [3600] [150] [1]\nAdd Ground Block [3600] [-400] [3800] [50] [autumn] <> \ncreate rect [3600] [-400] [3800] [50] [1]\nAdd Ground Block [4000] [-200] [4050] [200] [autumn] <> \ncreate rect [4000] [-200] [4050] [200] [1]\nAdd Ground Block [3800] [-100] [3950] [-50] [autumn] <> \ncreate rect [3800] [-100] [3950] [-50] [1]\nAdd Ground Block [3850] [-200] [4000] [-150] [none] <> <>\ncreate rect [3850] [-200] [4000] [-150] [1]\nAdd Ground Block [3800] [-400] [4050] [-250] [none] <> <>\ncreate rect [3800] [-400] [4050] [-250] [1]\nAdd Ground Block [4050] [-400] [4200] [-250] [autumn] <> \ncreate rect [4050] [-400] [4200] [-250] [1]\nAdd Ground Block [4200] [-400] [4300] [-150] [autumn] <> \ncreate rect [4200] [-400] [4300] [-150] [1]\nAdd Ground Block [4300] [-400] [4400] [-50] [autumn] <> \ncreate rect [4300] [-400] [4400] [-50] [1]\nadd water [4400] [-150] [4600] [-60]\ncreate rect [4400] [-150] [4600] [-60] [5]\nAdd Ground Block [4400] [-400] [4600] [-150] [none] <> <>\ncreate rect [4400] [-400] [4600] [-150] [1]\nAdd Ground Block [4600] [-400] [5000] [0] [autumn] <> \ncreate rect [4600] [-400] [5000] [0] [1]\n// [winter]\nAdd Ground Block [5000] [-400] [5200] [50] [winter] <> \ncreate rect [5000] [-400] [5200] [50] [1]\nAdd Ground Block [5200] [-400] [5400] [0] [winter] <> \ncreate rect [5200] [-400] [5400] [0] [1]\nAdd Ground Block [5400] [-400] [5600] [-200] [winter] <> \ncreate rect [5400] [-400] [5600] [-200] [1]\nAdd Ground Block [5600] [-400] [5650] [-150] [winter] <> \ncreate rect [5600] [-400] [5650] [-150] [1]\nAdd Ground Block [5650] [-400] [5700] [-100] [winter] <> \ncreate rect [5650] [-400] [5700] [-100] [1]\nAdd Ground Block [5700] [-400] [5750] [-50] [winter] <> \ncreate rect [5700] [-400] [5750] [-50] [1]\nAdd Ground Block [5750] [-400] [5800] [0] [winter] <> \ncreate rect [5750] [-400] [5800] [0] [1]\nAdd Ground Block [5800] [-400] [5850] [50] [winter] <> \ncreate rect [5800] [-400] [5850] [50] [1]\nAdd Ground Block [5850] [-400] [6000] [100] [winter] <> \ncreate rect [5850] [-400] [6000] [100] [1]\nAdd Ground Block [6000] [-400] [6050] [0] [winter] <> \ncreate rect [6000] [-400] [6050] [0] [1]\nAdd Ground Block [6050] [-400] [7000] [-100] [none] <> <>\ncreate rect [6000] [-400] [7000] [-100] [1]\nAdd Ground Block [6150] [0] [6200] [100] [winter] <> \ncreate rect [6150] [0] [6200] [100] [1]\nAdd Ground Block [6300] [0] [6350] [100] [winter] <> \ncreate rect [6300] [0] [6350] [100] [1]\nAdd Ground Block [6500] [0] [6600] [100] [winter] <> \ncreate rect [6500] [0] [6600] [100] [1]\nAdd Ground Block [6800] [0] [6900] [100] [winter] <> \ncreate rect [6800] [0] [6900] [100] [1]\nAdd Ground Block [7000] [-400] [7200] [150] [winter] <> \ncreate rect [7000] [-400] [7200] [150] [1]\nAdd Ground Block [6050] [-400] [6150] [-100] [winter] <> <>\nAdd Ground Block [6200] [-400] [6300] [-100] [winter] <> <>\nAdd Ground Block [6350] [-400] [6500] [-100] [winter] <> <>\nAdd Ground Block [6600] [-400] [6800] [-100] [winter] <> <>\nAdd Ground Block [6900] [-400] [7000] [-100] [winter] <> <>\nadd water [7200] [-100] [7400] [0]\ncreate rect [7200] [-100] [7400] [0] [5]\nAdd Ground Block [7200] [-400] [7400] [-100] [none] <> <>\ncreate rect [7200] [-400] [7400] [-100] [1]\nAdd Ground Block [7400] [-400] [7600] [0] [winter] <> \ncreate rect [7400] [-400] [7600] [0] [1]\nAdd Ground Block [7600] [-400] [7800] [50] [winter] <> \ncreate rect [7600] [-400] [7800] [50] [1]\nAdd Ground Block [7800] [-400] [8000] [100] [winter] <> \ncreate rect [7800] [-400] [8000] [100] [1]\n// [spring]\ncreate rect [8000] [-400] [8200] [50] [1]\nAdd Ground Block [8000] [-400] [8200] [50] [spring]  \nadd water [8200] [-100] [8400] [0]\ncreate rect [8200] [-100] [8400] [0] [5]\nAdd Ground Block [8200] [-400] [8400] [-100] [none] <> <>\ncreate rect [8200] [-400] [8400] [-100] [1]\nAdd Ground Block [8400] [-400] [8600] [0] [spring]  \ncreate rect [8400] [-400] [8600] [0] [1]\nadd water [8600] [-300] [10000] [-20]\ncreate rect [8600] [-300] [10000] [-10] [5]\nAdd Ground Block [8600] [-400] [10000] [-300] [none] <> <>\ncreate rect [8600] [-400] [10000] [-300] [1]\nAdd Ground Block [8900] [-100] [9100] [0] [spring]  \ncreate rect [8900] [-100] [9100] [0] [1]\nAdd Ground Block [9100] [-100] [9300] [50] [spring]  \ncreate rect [9100] [-100] [9300] [50] [1]\nAdd Ground Block [9500] [-100] [9700] [50] [spring]  \ncreate rect [9500] [-100] [9700] [50] [1]\nAdd Ground Block [9700] [-100] [10000] [100] [spring]  \ncreate rect [9700] [-100] [10000] [100] [1]\nAdd Ground Block [10000] [-400] [10200] [0] [spring]  \ncreate rect [10000] [-400] [10200] [0] [1]\nAdd Ground Block [10200] [-400] [10400] [-50] [spring]  \ncreate rect [10200] [-400] [10400] [-50] [1]\nadd water [10400] [-150] [10600] [-60]\ncreate rect [10400] [-150] [10600] [-50] [5]\nAdd Ground Block [10400] [-400] [10600] [-150] [none] <> <>\ncreate rect [10400] [-400] [10600] [-150] [1]\ncreate rect [10600] [-400] [11000] [0] [1]\nAdd Ground Block [10600] [-400] [11000] [0] [spring]  \n\nwhen I receive [seasontick v]\nrender\nphysics\nchange [camx v] by (((x) - (camx)) / (10))\nchange [camy v] by (((y) - (camy)) / (10))\nif <(camy) < [-200]> then\n    set [camy v] to [-200]\nend\nif <(camx) < [0]> then\n    set [camx v] to [0]\nend\nif <(x) < [-240]> then\n    set [x v] to [-240]\nend\nif <(camx) > [10760]> then\n    set [camx v] to [10760]\nend\nchange [move v] by (1)\nset [season v] to [summer]\nif <(x) > [2200]> then\n    set [season v] to [autumn]\nend\nif <(x) > [5000]> then\n    set [season v] to [winter]\nend\nif <(x) > [8000]> then\n    set [season v] to [spring]\nend\nPrint (season) at x: [-220] y: [150] direction: [90] size [1] thickness [1.5] height [75] width [] spacing [2]\n\ndefine Render Rectangle (x) (y) (x2) (y2)\nif <not <<<(x2) < [-240]> or <(x) > [240]>> or <<(y2) < [-180]> or <(y) > [180]>>>> then\n    if <((x2) - (x)) > ((y2) - (y))> then\n        set [pen size v] to ((y2) - (y))\n    else\n        set [pen size v] to ((x2) - (x))\n    end\n    repeat (10)\n        set [pen size v] to ((pen size) / (2))\n        set pen size to (pen size)\n        go to x: ((x) + (pen size)) y: ((y) + (pen size))\n        pen down\n        go to x: ((x) + (pen size)) y: ((y2) - (pen size))\n        go to x: ((x2) - (pen size)) y: ((y2) - (pen size))\n        go to x: ((x2) - (pen size)) y: ((y) + (pen size))\n        go to x: ((x) + (pen size)) y: ((y) + (pen size))\n        pen up\n    end\nend\n\ndefine Add Ground Block (x) (y) (x2) (y2) (season) <grass?> <trees?>\nif <grass?> then\n    set [loops v] to [0.5]\n    repeat (([ceiling v] of (((x2) - (x)) / (7)) ) - (1))\n        add (((loops) * (7)) + (x)) to [grassx v]\n        add ((y2) - (5)) to [grassy v]\n        add [0] to [grasssway v]\n        add [0] to [grassmagnitude v]\n        add (pick random (10) to (20)) to [grasslength v]\n        add [0] to [grassdir v]\n        change [loops v] by (1)\n    end\nend\nif <trees?> then\n    set [loops v] to [0.5]\n    repeat (([ceiling v] of (((x2) - (x)) / (40)) ) - (1))\n        if <(pick random (1) to (2)) = [1]> then\n            add (pick random (1) to (4)) to [treecolor v]\n            add (pick random (40) to (60)) to [treeheight v]\n            add (pick random (1) to (3)) to [treetype v]\n            add (((loops) * (40)) + (x)) to [treex v]\n            add (y2) to [treey v]\n            add (season) to [treeseason v]\n        end\n        change [loops v] by (1)\n    end\nend\nif <(x2) > (x)> then\n    add (x) to [groundx v]\n    add (x2) to [groundx2 v]\nelse\n    add (x2) to [groundx v]\n    add (x) to [groundx2 v]\nend\nif <(y2) > (y)> then\n    add (y) to [groundy v]\n    add (y2) to [groundy2 v]\nelse\n    add (y2) to [groundy v]\n    add (y) to [groundy2 v]\nend\nadd (season) to [groundseason v]\n\ndefine grass\nset pen color to (#20f200)\nset [loops v] to [0]\nrepeat (length of [grassdir v])\n    change [loops v] by (1)\n    if <<((item (loops) of [grassx v]) - (camx)) < [240]> and <((item (loops) of [grassx v]) - (camx)) > [-240]>> then\n        if <((((item (loops) of [grassx v]) - (x)) * ((item (loops) of [grassx v]) - (x))) + (((item (loops) of [grassy v]) - (y)) * ((item (loops) of [grassy v]) - (y)))) < [1000]> then\n            replace item (loops) of [grasssway v] with [0]\n            replace item (loops) of [grassmagnitude v] with (((xv) + (pick random (-2.0) to (2.0))) * (7))\n        end\n        replace item (loops) of [grassdir v] with ((0) - (([sin v] of (item (loops) of [grasssway v]) ) * (item (loops) of [grassmagnitude v])))\n        replace item (loops) of [grasssway v] with ((item (loops) of [grasssway v]) - (10))\n        replace item (loops) of [grassmagnitude v] with ((0.97) * (item (loops) of [grassmagnitude v]))\n        go to x: ((item (loops) of [grassx v]) - (camx)) y: ((item (loops) of [grassy v]) - (camy))\n        point in direction (item (loops) of [grassdir v])\n        pen down\n        move (item (loops) of [grasslength v]) steps\n        pen up\n    end\nend\n\ndefine render water (x) (y) (x2) (y2)\nset pen color to (#66c5ff)\nset pen (transparency v) to (20)\nif <not <<<(x2) < [-240]> or <(x) > [240]>> or <<(y2) < [-180]> or <(y) > [180]>>>> then\n    set [waterloops v] to [-0.5]\n    set pen size to (5.1)\n    repeat ([ceiling v] of (((x2) - (x)) / (5)) )\n        change [waterloops v] by (1)\n        go to x: ((x) + ((waterloops) * (5))) y: ((y) - (5))\n        pen down\n        go to x: ((x) + ((waterloops) * (5))) y: ((y2) + (([cos v] of (((waterloops) + (move)) * (7)) ) * (5)))\n        pen up\n    end\nend\n\ndefine add water (x) (y) (x2) (y2)\nif <(x2) > (x)> then\n    add (x) to [waterx v]\n    add (x2) to [waterx2 v]\nelse\n    add (x2) to [waterx v]\n    add (x) to [waterx2 v]\nend\nif <(y2) > (y)> then\n    add (y) to [watery v]\n    add (y2) to [watery2 v]\nelse\n    add (y2) to [watery v]\n    add (y) to [watery2 v]\nend\n\ndefine Render tree (x) (y) (type) (color) (season) (height)\nif <not <<<(x) < [-300]> or <(x) > [300]>> or <<(y) < [-300]> or <(y) > [300]>>>> then\n    go to x: (x) y: (y)\n    set pen color to (#c56800)\n    set pen size to (10)\n    pen down\n    change y by (height)\n    pen up\n    if <<(season) = [winter]> and <not <(type) = [2]>>> then\n        set pen size to (7)\n        pen down\n        point in direction (45)\n        move (30) steps\n        move (-16) steps\n        point in direction (75)\n        move (20) steps\n        move (-20) steps\n        point in direction (45)\n        move (-15) steps\n        point in direction (0)\n        move (60) steps\n        move (-25) steps\n        point in direction (45)\n        move (20) steps\n        move (-20) steps\n        point in direction (0)\n        move (-20) steps\n        point in direction (-20)\n        move (35) steps\n        move (-20) steps\n        point in direction (-90)\n        move (20) steps\n        pen up\n    else\n        if <<(season) = [summer]> or <(season) = [winter]>> then\n            if <(color) = [1]> then\n                set pen color to (#00ff21)\n            end\n            if <(color) = [2]> then\n                set pen color to (#1fc532)\n            end\n            if <(color) = [3]> then\n                set pen color to (#00ec17)\n            end\n            if <(color) = [4]> then\n                set pen color to (#4fe458)\n            end\n        end\n        if <(season) = [autumn]> then\n            if <(color) = [1]> then\n                set pen color to (#ffae00)\n            end\n            if <(color) = [2]> then\n                set pen color to (#ff0000)\n            end\n            if <(color) = [3]> then\n                set pen color to (#fff600)\n            end\n            if <(color) = [4]> then\n                set pen color to (#ff5400)\n            end\n        end\n        if <(season) = [spring]> then\n            if <(color) = [1]> then\n                set pen color to (#ff8585)\n            end\n            if <(color) = [2]> then\n                set pen color to (#ffaaaa)\n            end\n            if <(color) = [3]> then\n                set pen color to (#4cff00)\n            end\n            if <(color) = [4]> then\n                set pen color to (#ffd3d3)\n            end\n        end\n        if <(type) = [1]> then\n            set pen size to (40)\n            pen down\n            change y by (20)\n            pen up\n        end\n        if <(type) = [2]> then\n            set pen size to (20)\n            pen down\n            change x by (10)\n            point in direction (-15)\n            move (40) steps\n            point in direction (-165)\n            move (40) steps\n            change x by (10)\n            pen up\n        end\n        if <(type) = [3]> then\n            set pen size to (40)\n            pen down\n            pen up\n            change y by (10)\n            change x by (10)\n            change pen (brightness v) by (5)\n            pen down\n            pen up\n            change x by (-20)\n            change pen (brightness v) by (-10)\n            change pen (brightness v) by (15)\n            pen down\n            pen up\n            change y by (20)\n            change x by (10)\n            change pen (brightness v) by (-5)\n            pen down\n            pen up\n        end\n    end\nend\n\ndefine // ()\n\nlevel\n\nwhen I receive [win v]\nstop [other scripts in sprite v]\nset [loops v] to [-240]\nset [loops2 v] to [-2000]\nset [loops3 v] to [-10000]\nset pen color to (#ff0000)\nrepeat (60)\n    change [loops v] by (((240) - (loops)) / (5))\n    change [loops2 v] by (((240) - (loops2)) / (5))\n    change [loops3 v] by (((240) - (loops3)) / (5))\n    set pen (color v) to (0)\n    Render Rectangle [-240] [-180] (loops) [180]\n    set pen (color v) to (15)\n    Render Rectangle [-240] [-180] (loops2) [180]\n    set pen (color v) to (30)\n    Render Rectangle [-240] [-180] (loops3) [180]\nend\nset pen color to (#000000)\nPrint [YOU WIN] at x: [-200] y: [-25] direction: [90] size [5] thickness [10] height [75] width [] spacing [3]\n\ndefine particles\nif <(season) = [autumn]> then\n    if <((move) mod (5)) = [0]> then\n        add (pick random (-400) to (400)) to [particlesx v]\n        add [180] to [particlesy v]\n        add (pick random (1) to (360)) to [particlesdir v]\n        add ((pick random (1) to (4)) + (1)) to [particlestype v]\n    end\nend\nif <(season) = [winter]> then\n    if <((move) mod (2)) = [0]> then\n        add (pick random (-400) to (400)) to [particlesx v]\n        add [180] to [particlesy v]\n        add [0] to [particlesdir v]\n        add [1] to [particlestype v]\n    end\nend\nif <(season) = [spring]> then\n    if <((move) mod (5)) = [0]> then\n        add (pick random (-400) to (400)) to [particlesx v]\n        add [180] to [particlesy v]\n        add (pick random (1) to (360)) to [particlesdir v]\n        add ((pick random (1) to (4)) + (5)) to [particlestype v]\n    end\nend\nset [loops v] to [0]\nrepeat (length of [particlesx v])\n    change [loops v] by (1)\n    if <(item (loops) of [particlestype v]) > [5]> then\n        set pen size to (20)\n        go to x: (item (loops) of [particlesx v]) y: (item (loops) of [particlesy v])\n        set pen color to (#ff0000)\n        set pen (saturation v) to (((item (loops) of [particlestype v]) * (7)) + (-7))\n        set pen (transparency v) to (50)\n        pen down\n        point in direction (item (loops) of [particlesdir v])\n        repeat (5)\n            move (3) steps\n            change pen (saturation v) by (-6)\n            change pen size by (-2.5)\n        end\n        pen up\n    end\n    if <(item (loops) of [particlestype v]) = [1]> then\n        set pen size to (10)\n        go to x: (item (loops) of [particlesx v]) y: (item (loops) of [particlesy v])\n        set pen color to (#ffffff)\n        set pen (transparency v) to (20)\n        pen down\n        pen up\n    end\n    if <<(item (loops) of [particlestype v]) > [1]> and <(item (loops) of [particlestype v]) < [6]>> then\n        set pen size to (5)\n        if <(item (loops) of [particlestype v]) = [2]> then\n            set pen color to (#ff0000)\n        end\n        if <(item (loops) of [particlestype v]) = [3]> then\n            set pen color to (#ffbb00)\n        end\n        if <(item (loops) of [particlestype v]) = [4]> then\n            set pen color to (#d4ff00)\n        end\n        if <(item (loops) of [particlestype v]) = [5]> then\n            set pen color to (#ce6b00)\n        end\n        set pen (transparency v) to (0)\n        point in direction (item (loops) of [particlesdir v])\n        go to x: (item (loops) of [particlesx v]) y: (item (loops) of [particlesy v])\n        pen down\n        move (7) steps\n        move (6) steps\n        set pen size to (7)\n        pen down\n        pen up\n        move (-6) steps\n        turn right (-122) degrees\n        set pen size to (3)\n        pen down\n        repeat (5)\n            move (7) steps\n            turn right (138) degrees\n            move (7) steps\n            turn left (66) degrees\n        end\n        pen up\n    end\n    replace item (loops) of [particlesy v] with (((item (loops) of [particlesy v]) - (5)) - ((yv) / (2)))\n    replace item (loops) of [particlesx v] with ((item (loops) of [particlesx v]) - ((xv) / (1)))\n    replace item (loops) of [particlesdir v] with ((item (loops) of [particlesdir v]) + (5))\n    if <(item (loops) of [particlesy v]) < [-180]> then\n        delete (loops) of [particlesx v]\n        delete (loops) of [particlesy v]\n        delete (loops) of [particlestype v]\n        delete (loops) of [particlesdir v]\n        change [loops v] by (-1)\n    end\nend\n\nwhen flag clicked\nload letters\n\nbroadcast (win v)\n\ndefine Clouds\nif <((move) mod (300)) = [0]> then\n    add [240] to [cloudsx v]\n    add (pick random (0) to (150)) to [cloudsy v]\nend\nset [loops v] to [0]\nrepeat (length of [cloudsx v])\n    change [loops v] by (1)\n    go to x: (item (loops) of [cloudsx v]) y: ((item (loops) of [cloudsy v]) - ((camy) / (3)))\n    set pen color to (#ffffff)\n    set pen size to (20)\n    pen down\n    change x by (100)\n    change x by (-50)\n    change y by (30)\n    change x by (-30)\n    change x by (100)\n    pen up\n    replace item (loops) of [cloudsx v] with ((item (loops) of [cloudsx v]) - ((1) + ((xv) / (10))))\n    if <(item (loops) of [cloudsx v]) < [-400]> then\n        delete (loops) of [cloudsx v]\n        delete (loops) of [cloudsy v]\n        change [loops v] by (-1)\n    end\nend\n\nwhen flag clicked\nset [☁ people who played \(yes i stalk you guys\) v] to [0]\nset [eye color v] to [0]\n\nwhen I receive [seasons v]\n\nwhen [space v] key pressed\nset [eye color v] to ((1) - (eye color))\n\n@Sprite1\n\nwhen flag clicked\ngo to x: (0) y: (0)\nset [ghost v] effect to (100)\n\nwhen I receive [win v]\nwait (5) seconds\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nstop [all v]\n\n
▶❤️ & ⭐️ FOR 10 COINS AND TECHNOBLADE SKIN!!\n\n    ☁ Minecraft || Multiplayer Platformer ☁\n=====================================\nGoal of the project: 7000 ❤️&⭐️!\nHello everyone, I 've been working on ''Minecraft Mutiplayer Platformer'' for more than a week now, I promised I would share this when I hit 1.5k and we gained 500+ followers in less than 3 days! This is one of my Best Games yet! Hope you enjoy playing it! Follow me at (@TinyDxde) for more Fun Games. It's been 1 year since Technoblade has left us.. He will never be forgotten and will always be in our Hearts! =)\n\nPlease follow me I am trying to get 2500 followers! :D\n✦2000 follower Q&A https://scratch.mit.edu/projects/872418728 :D\n\n*** CONTROLS ***\n➡ Use Arrow keys, WASD, or tap to use (Mobile)\n➡ Watch out for cactus and lava\n➡ Press the shop button to open the shop and press the x to close it. To purchase something, type the number corresponding to the thing you want to purchase.\n➡ Press T or the chat button to open the chat and press the x to close it\n\n⚠️Play on turbowrap for smoother movement and less lag: https://turbowarp.org/862014723/fullscreen#?token=1688041151_5b5340f4a4142d37f50fa34f3d9b30109264d5dbf97de7321f659d3afdde8544494e0710ffe7e440a243bbe809bc7551f4b3f839cb861d5f32b5ebb8d631ebcc\n\n⛔Ads = Report\n⛔Hate = Report\n\nNews:\n30 June - Initial Release (500 views and 120+ likes and stars within 4 hours)\n30 June - reshared and fixed the chat and cloud variable glitches.\n30 June - mass reported :(\n1 July - reshared (also fixed the lag with cloud server as it was taken down by the st), \n1 July -  3RD ON TRENDING ALL!! and TOP LOVED! OMG =)\n2 July - 1000 likes for 10k views! :o and top remixed.. lol\n2 July - no.#2 on trending all\n3 July - NO#1 ON TRENDING ALL!!\n5 July - 50k views, 2.9k & 2.7k likes & favs, 125+ remixes\n7 July - 4k likes 78k views\n11 July - 100k+ and 5k+ likes\n=====================================\n\nTags: (Ignore :p)\n#games #all #art #music #Minecraft #multiplayer #scrolling #platformer #trending #TinyDxde #mobile #firendly #games #all #art #music #Minecraft #multiplayer #scrolling #platformer #trending #TinyDxde #mobile #firendly \n\n\n\nPress T and D at the same time for a surprise!! ;)