3D Minecraft Platformer
@Stage\n\nwhen I receive [changemode v]\nswitch backdrop to (join (EDIT) [])\n\nwhen flag clicked\nforever\n    play sound [Run 2 Theme - Run 2 v] until done\nend\n\nwhen flag clicked\nforever\n    if <(PlayerState) < [0]> then\nend\n\n@Game\n\nwhen [r v] key pressed\nif <(EDIT) = [0]> then\n    Reset\nend\nwait until <not <key (r v) pressed?>>\n\ndefine Draw rect (x1) (x2) (x3) (x4) (y1) (y2)\ngo to x: (x1) y: (y1)\npen down\ngo to x: (x2) y: (y1)\ngo to x: (x3) y: (y2)\ngo to x: (x4) y: (y2)\ngo to x: (x1) y: (y1)\nset pen size to (1)\ngo to x: (x3) y: (y2)\ngo to x: (x4) y: (y2)\ngo to x: (x2) y: (y1)\npen up\n\ndefine Game\nerase all\nif <(PlayerState) = [0]> then\n    change [playerx v] by ((<<key (right arrow v) pressed?> or <key (d v) pressed?>> - <<key (left arrow v) pressed?> or <key (a v) pressed?>>) * (0.13))\n    change [playerz v] by ((<<key (up arrow v) pressed?> or <key (w v) pressed?>> - <<key (down arrow v) pressed?> or <key (s v) pressed?>>) * (0.13))\n    change [vy v] by (-0.02)\n    if <(PlayerY) < [-8]> then\n        set [playerstate v] to [-0.001]\n        start sound [Fail v]\n    end\nend\nif <<([abs v] of (PlayerX) ) < [5]> and <([abs v] of ((PlayerZ) + (-10)) ) < [5]>> then\n    set [playertileid v] to ((((([floor v] of (PlayerZ) ) * (10)) + ([floor v] of (PlayerX) )) + (-144)) + ((Level) * (100)))\nelse\n    set [playertileid v] to [-1]\nend\nset [_z v] to [14]\nset [camerax v] to ((PlayerX) * (Diff))\nset [cameraz v] to (((PlayerZ) - (8)) * (Diff))\nrepeat ((10) - (((10) - ((14) - (CameraZ))) * <[10] > ((14) - (CameraZ))>))\n    set [_x v] to [-5]\n    repeat (10)\n        set [drawtileid v] to (((((_z) * (10)) + (_x)) + (-144)) + ((Level) * (100)))\n        set [_y v] to (item (DrawTileID) of [tiley v])\n        set [drawtiletype v] to (item (DrawTileID) of [tiletype v])\n        if <(DrawTileType) > [0]> then\n            set [x1 v] to ((_x) - (CameraX))\n            set [x2 v] to ((X1) + (1))\n            set [z1 v] to (((_z) - (CameraZ)) / (273))\n            set [z2 v] to ((Z1) + (0.00366300366))\n            set pen size to ((0.055) / (Z1))\n            set pen color to (item (DrawTileType) of [tiletypecolors v])\n            if <(PlayerTileID) = (DrawTileID)> then\n                set pen size to (5)\n                change pen (saturation v) by (-40)\n            end\n            Draw rect ((X1) / (Z1)) ((X2) / (Z1)) ((X2) / (Z2)) ((X1) / (Z2)) (((_y) / (Z1)) + (200)) (((_y) / (Z2)) + (200))\n        end\n        change [_x v] by (1)\n    end\n    change [_z v] by (-1)\nend\nif <(PlayerTileID) > [-1]> then\n    set [playertilevalue v] to (item (PlayerTileID) of [tiley v])\n    set [playertiletype v] to (item (PlayerTileID) of [tiletype v])\n    if <(PlayerTileType) > [0]> then\n        if <(PlayerState) = [0]> then\n            if <([abs v] of ((PlayerY) - (PlayerTileValue)) ) < [0.3]> then\n                set [playery v] to (PlayerTileValue)\n                if <(Vy) < [0]> then\n                    if <(PlayerTileType) = [1]> then\n                        start sound (join [Fall] ([floor v] of ((Vy) * (-10)) ))\n                    end\n                    set [vy v] to [0]\n                end\n                if <(PlayerTileType) = [1]> then\n                    set [collidedtimer v] to [1]\n                end\n                if <(PlayerTileType) = [2]> then\n                    set [vy v] to [0.262]\n                    change [playery v] by (0.3)\n                    start sound [Bounce v]\n                end\n                if <(PlayerTileType) = [3]> then\n                    start sound [Fail v]\n                    set [playerstate v] to [-0.001]\n                end\n                if <(PlayerTileType) = [4]> then\n                    start sound [End v]\n                    set [playerstate v] to [0.001]\n                end\n            end\n        end\n        if <(PlayerY) < (PlayerTileValue)> then\n    end\nend\nchange [collidedtimer v] by (-0.15)\nif <<key (space v) pressed?> and <(CollidedTimer) > [0]>> then\n    set [vy v] to [0.197]\n    change [playery v] by (0.3)\n    start sound [Jump v]\n    set [collidedtimer v] to [0]\nend\nif <<(PlayerState) = [0]> or <(PlayerY) < [-8]>> then\n    change [playery v] by (Vy)\nend\ngo to x: ((((PlayerX) - (CameraX)) / (PlayerZ)) * (273)) y: ((((PlayerY) / ((PlayerZ) - (CameraZ))) * (273)) + (200))\nset pen color to (#c5b02e)\nset pen size to ((136.5) / ((PlayerZ) - (CameraZ)))\nset pen (transparency v) to ([abs v] of (PlayerState) )\npen down\nset pen (brightness v) to (100)\nchange pen size by (-3)\nmove (0) steps\npen up\nif <(PlayerState) > [0]> then\n    change [playerstate v] by (0.75)\n    if <(PlayerState) > [110]> then\n        if <<(WasEditing) = [1]> or <(Level) = (MaxLevel)>> then\n            set [edit v] to [1]\n            broadcast (ChangeMode v)\n        else\n            change [level v] by (1)\n            if <(DeathCount) > [-1]> then\n                set [deathcount v] to [0]\n            end\n        end\n        Reset\n    end\nelse\n    if <(PlayerState) < [0]> then\n        change [playerstate v] by (-1.5)\n        if <(PlayerState) < [-90]> then\n            Reset\n            if <(DeathCount) > [-1]> then\n                change [deathcount v] by (1)\n                if <(DeathCount) > [9]> then\n                    set [deathcount v] to [-1]\n                    broadcast (Too hard v)\n                end\n            end\n        end\n    end\nend\n\ndefine Reset\nset [playerx v] to [-4.5]\nset [playery v] to ((item ((-99) + ((Level) * (100))) of [tiley v]) + (1))\nset [playerz v] to [5.5]\nset [vy v] to [0]\nset [playerstate v] to [0]\n\nwhen flag clicked\nswitch costume to (empty v)\nset size to (999999999999999999999999) %\nswitch costume to (costume1 v)\nset [playerstate v] to [0]\nset [wasediting v] to [0]\nset [level v] to [1]\nset [edit v] to [0]\nbroadcast (ChangeMode v) and wait\n\nwhen I receive [changemode v]\nrepeat until <(EDIT) = [0]>\n    Edit\n    broadcast (DrawTextEdit v) and wait\nend\n\nwhen I receive [changemode v]\nReset\nrepeat until <(EDIT) = [1]>\n    Game\n    broadcast (DrawTextGame v) and wait\nend\n\ndefine Edit\nerase all\nset [_x v] to [0]\nset [mousetileid v] to ((((([floor v] of (((mouse y) + (180)) / (36)) ) * (10)) + ([floor v] of (((mouse x) + (240)) / (36)) )) + ((Level) * (100))) + (-99))\nrepeat (10)\n    set [_z v] to [0]\n    repeat (10)\n        set [drawtileid v] to (((((_z) * (10)) + (_x)) + ((Level) * (100))) + (-99))\n        set [drawtiletype v] to (item (DrawTileID) of [tiletype v])\n        set [x1 v] to (((_x) * (36)) - (240))\n        set [x2 v] to ((X1) + (36))\n        set [y1 v] to (((_z) * (36)) - (180))\n        set [y2 v] to ((Y1) + (36))\n        if <(DrawTileType) > [0]> then\n            set pen size to (1)\n            set pen color to (item (DrawTileType) of [tiletypecolors v])\n            change pen (transparency v) by ((60) * <<not <(TileYSelected) = (item (DrawTileID) of [tiley v])>> and <(EditMode) = [1]>>)\n            Draw level Edit rect (X1) (Y1) (X2) (Y2) offset (((item (DrawTileID) of [tiley v]) * (4)) + (30))\n        end\n        if <<([abs v] of (mouse y) ) < [180]> and <([abs v] of ((mouse x) + (60)) ) < [180]>> then\n            if <(MouseTileID) = (DrawTileID)> then\n                go to x: (((X1) + (X2)) / (2)) y: (((Y1) + (Y2)) / (2))\n                set pen color to (#f3f3f3)\n                set pen (transparency v) to (50)\n                set pen size to (30)\n                pen down\n                pen up\n            end\n            if <<mouse down?> and <(saveload) = [0]>> then\n                set [wasediting v] to [1]\n                if <(EditMode) = [0]> then\n                    replace item (MouseTileID) of [tiletype v] with (TileTypeSelected)\n                else\n                    replace item (MouseTileID) of [tiley v] with (TileYSelected)\n                end\n            end\n        end\n        change [_z v] by (1)\n    end\n    change [_x v] by (1)\nend\n\ndefine Transfer Draw (x1) (y1) (x2) (y2)\nDraw rect (x1) (x2) (x1) (x2) (y1) (y2)\n\ndefine Draw level Edit rect (x1) (y1) (x2) (y2) offset (offset)\nTransfer Draw ((x1) + (offset)) ((y1) + (offset)) ((x2) - (offset)) ((y2) - (offset))\n\nwhen flag clicked\ndelete all of [tiletypecolors v]\nadd [#66f2ff] to [tiletypecolors v]\nadd [#04ff00] to [tiletypecolors v]\nadd [#ff4242] to [tiletypecolors v]\nadd [#ff17dc] to [tiletypecolors v]\n\n@Level Data\n\nwhen I receive [load v]\nwait (0) seconds\nshow\ngo to [front v] layer\n\nwhen flag clicked\nset [maxlevel v] to [0]\nset [saveload v] to [0]\ngo to x: (0) y: (0)\nhide\ndelete all of [tiley v]\ndelete all of [tiletype v]\nLevels\n\nwhen I receive [load v]\nset [saveload v] to [1]\nask [Please enter your save code] and wait\nhide\nset [saveload v] to [0]\nSet Level (answer) level ID (Level)\nLoad\n\ndefine Set Level (code) level ID (id)\nset [~temp v] to []\nset [~i v] to [0]\nset [~datatype v] to [0]\nset [~id v] to (((id) * (100)) + (-99))\nrepeat (length of (code))\n    change [~i v] by (1)\n    set [~char v] to (letter (~i) of (code))\n    if <(~char) = [;]> then\n        if <(~dataType) = [0]> then\n            replace item (~id) of [tiletype v] with (~temp)\n        else\n            replace item (~id) of [tiley v] with (~temp)\n            change [~id v] by (1)\n        end\n        set [~datatype v] to ((1) - (~dataType))\n        set [~temp v] to []\n    else\n        set [~temp v] to (join (~temp) (~char))\n    end\nend\n\ndefine Levels\nAdd Level [1] Code [1;-7.5;1;-7.25;1;-7;1;-6.75;1;-6.5;1;-6.25;1;-6;1;-5.75;1;-5.5;1;-5.25;1;-7.25;1;-7.25;1;-7;1;-6.75;1;-6.5;1;-6.25;1;-6;1;-5.75;1;-5.5;1;-5.25;1;-7;1;-7;1;-7;1;-6.75;1;-6.5;1;-6.25;1;-6;1;-5.75;1;-5.5;1;-5.25;1;-6.75;1;-6.75;1;-6.75;1;-6.75;1;-6.5;1;-6.25;1;-6;1;-5.75;1;-5.5;1;-5.25;1;-6.5;1;-6.5;1;-6.5;1;-6.5;1;-6.5;1;-6.25;1;-6;1;-5.75;1;-5.5;1;-5.25;1;-6.25;1;-6.25;1;-6.25;1;-6.25;1;-6.25;1;-6.25;1;-6;1;-5.75;1;-5.5;1;-5.25;1;-6;1;-6;1;-6;1;-6;1;-6;1;-6;1;-6;1;-5.75;1;-5.5;4;-5.25;1;-5.75;1;-5.75;1;-5.75;1;-5.75;1;-5.75;1;-5.75;1;-5.75;1;-5.75;4;-5.5;4;-5.25;1;-5.5;1;-5.5;1;-5.5;1;-5.5;1;-5.5;1;-5.5;1;-5.5;4;-5.5;4;-5.5;4;-5.25;1;-5.25;1;-5.25;1;-5.25;1;-5.25;1;-5.25;1;-5.25;4;-5.25;4;-5.25;4;-5.25;4;-5.25;]\nAdd Level [2] Code [1;-7.5;1;-7.5;1;-7.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-7.25;1;-7.5;1;-7.5;1;-7.5;1;-7.25;1;-7;1;-6.75;1;-6.5;1;-6.5;1;-6.75;1;-7;1;-7.25;1;-7.5;1;-7.5;1;-7.5;1;-7.25;0;-7.5;1;-6.25;1;-6.25;0;-7.5;1;-7.25;1;-7.5;1;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-5.75;1;-6;1;-6;1;-5.75;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-6.5;0;-7.5;1;-5.5;0;-7.5;0;-7.5;1;-5.5;0;-7.5;0;-6.5;0;-7.5;0;-7.5;0;-6.5;0;-7.5;1;-5.5;0;-7.5;0;-7.5;1;-5.5;0;-7.5;0;-6.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-5.5;1;-5.5;1;-5.5;1;-5.5;0;-7.5;0;-7.5;0;-7.5;1;-4;1;-4.25;1;-4.25;0;-7.5;1;-5.25;1;-5.25;0;-7.5;1;-4.25;1;-4.25;1;-4;1;-4;4;-4.25;1;-4.5;1;-4.75;1;-5;1;-5;1;-4.75;1;-4.5;4;-4.25;1;-4;1;-4;1;-4.25;1;-4.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-4.25;1;-4.25;1;-4;]\nAdd Level [3] Code [1;-7.5;1;-7.5;1;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-7.5;1;-7.5;1;-7.5;0;-7.5;1;-6.5;1;-6.5;0;-7.5;1;-5.5;1;-5.5;0;-7.5;1;-7.5;1;-7.5;1;-7.5;0;-7.5;1;-6.5;1;-6.5;0;-7.5;1;-5.5;1;-5.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-6.5;1;-6.5;0;-7.5;1;-5.5;1;-5.5;0;-7.5;1;-4.5;1;-4.5;0;-7.5;0;-7.5;1;-6.5;1;-6.5;0;-7.5;1;-5.5;1;-5.5;0;-7.5;1;-4.5;1;-4.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-5.5;1;-5.5;0;-7.5;1;-4.5;1;-4.5;0;-7.5;4;-3.5;4;-3.5;0;-7.5;0;-7.5;1;-5.5;1;-5.5;0;-7.5;1;-4.5;1;-4.5;0;-7.5;4;-3.5;4;-3.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;]\nAdd Level [4] Code [1;-7.5;1;-7.5;1;-7.5;2;-7.5;0;-7.5;1;-5.5;2;-5.5;0;-7.5;1;-4.25;1;-3.25;1;-7.5;1;-7.5;1;-7.5;2;-7.5;0;-7.5;1;-5.5;2;-5.5;0;-7.5;1;-4.25;1;-3.25;1;-7.5;1;-7.5;1;-7.5;0;-7.5;0;-7.5;1;-5.5;2;-5.5;0;-7.5;1;-4.25;1;-3.25;2;-7.5;2;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-5.5;0;-5.5;0;-7.5;0;-7.5;1;-3.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-4.5;0;-5.5;0;-7.5;0;-7.5;1;-3.25;1;-5.5;1;-5.5;1;-5.5;0;-5.5;1;-4.5;1;-4.5;0;-5.5;0;-7.5;0;-7.5;1;-3.25;2;-5.5;2;-5.5;2;-5.5;0;-5.5;0;-5.5;0;-5.5;1;-4;1;-4;0;-7.5;1;-3.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-4;1;-4;0;-7.5;4;-3.25;1;-4.25;1;-4.25;1;-4.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;4;-3.25;1;-3.25;1;-3.25;1;-3.25;1;-3.25;1;-3.25;1;-3.25;1;-3.25;4;-3.25;4;-3.25;4;-3.25;]\nAdd Level [5] Code [1;-7.5;1;-7.5;0;-7.5;2;-7.5;2;-7.5;2;-7.5;0;-7.5;2;-7;2;-7;2;-7;1;-7.5;1;-7.5;0;-7.5;2;-7.5;2;-7.5;2;-7.5;0;-7.5;2;-7;2;-7;2;-7;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-7.5;2;-7.5;0;-7.5;0;-7.5;2;-7;2;-7;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-4.5;2;-4.5;2;-4.5;0;-7.5;4;-3.25;4;-3.25;0;-7.5;0;-7.5;2;-6.5;2;-6.5;2;-4.5;2;-4.5;2;-4.5;0;-7.5;4;-3.25;4;-3.25;0;-7.5;0;-7.5;2;-6.5;2;-6.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-5;2;-5;0;-7.5;0;-7.5;2;-5.5;2;-5.5;0;-7.5;0;-7.5;2;-6;2;-6;2;-5;2;-5;2;-5;0;-7.5;2;-5.5;2;-5.5;0;-7.5;2;-6;2;-6;2;-6;2;-5;2;-5;2;-5;0;-7.5;2;-5.5;2;-5.5;0;-7.5;2;-6;2;-6;2;-6;]\nAdd Level [6] Code [1;-7.5;2;-3.25;1;-7.5;1;-3.75;1;-7;1;-4.25;1;-6.5;1;-4.75;1;-6;1;-5.25;2;-3.25;2;-3.25;1;-7.5;1;-3.75;1;-7;1;-4.25;1;-6.5;1;-4.75;1;-6;1;-5.25;0;-7.5;0;-7.5;0;-7.5;0;-3.75;0;-7;0;-4.25;0;-6.5;0;-4.75;0;-6;0;-5.25;0;-3.75;0;-3.75;0;-3.75;0;-3.75;0;-7;0;-4.25;0;-6.5;0;-4.75;0;-6;0;-5.25;0;-5.5;0;-5.5;0;-5.5;0;-7;0;-7;0;-4.25;0;-6.5;0;-4.75;0;-6;0;-5.25;1;-5;1;-5;1;-5;0;-4.25;0;-4.25;0;-4.25;0;-6.5;0;-4.75;0;-3.25;0;-3.25;1;-5;1;-5;1;-5;0;-6.5;0;-6.5;0;-6.5;0;-6.5;0;-4.75;0;-3.25;0;-3.25;1;-5;1;-5;2;-4.75;2;-4.5;0;-4.75;0;-4.75;0;-4.75;4;-4.25;4;-4.25;0;-3.25;1;-5;1;-5;2;-4.75;2;-4.5;0;-6;0;-6;0;-6;4;-4.25;4;-4.25;0;-3.25;1;-5;1;-5;1;-5;0;-5.25;0;-5.25;0;-5.25;0;-5.25;0;-5.25;0;-3.25;0;-3.25;]\nAdd Level [7] Code [1;-7.5;0;-7.5;0;-7.5;1;-6;0;-7.5;0;-7.5;1;-5.75;0;-7.5;0;-7.5;1;-4.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-7;0;-7.5;0;-7.5;1;-5.5;0;-7.5;0;-7.5;1;-4.75;0;-7.5;0;-7.5;1;-3.75;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-6.5;0;-7.5;0;-7.5;1;-5.75;0;-7.5;0;-7.5;1;-4.25;0;-7.5;0;-7.5;1;-3.75;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-4.75;0;-7.5;0;-7.5;1;-3.5;0;-7.5;0;-7.5;1;-4;0;-7.5;0;-7.5;4;-3.25;]\nAdd Level [8] Code [1;-7.5;1;-3.25;2;-6.75;0;-3.75;1;-3.25;2;-6.75;0;-7.5;4;-3.25;0;-7.5;2;-6.75;1;-7.5;1;-3.25;2;-6.75;0;-3.75;0;-3.25;2;-6.75;0;-7.5;0;-3.25;0;-7.5;2;-6.75;1;-3.25;1;-3.25;1;-3.25;0;-3.75;0;-4;0;-6.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-3.25;0;-3.25;0;-3.25;0;-3.25;0;-3.25;0;-3.25;0;-3.25;0;-7.5;0;-7.5;0;-7.5;2;-3.25;2;-3.25;2;-3.25;0;-4;0;-4;2;-4.5;2;-4.5;0;-7.5;0;-7.5;0;-7.5;2;-3.25;2;-3.25;2;-3.25;0;-6.25;0;-6.25;2;-4.5;2;-4.5;0;-7.5;0;-7.5;2;-7.5;0;-3.25;0;-3.25;0;-7.5;0;-7.5;0;-3.25;0;-3.25;0;-3.25;0;-7.5;0;-7.5;2;-7.5;0;-3.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-4.25;0;-7.5;0;-7.5;0;-7.5;0;-3.25;0;-7.5;0;-7.5;0;-7.5;2;-5.75;2;-5.75;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-3.25;0;-3.25;0;-3.25;0;-3.25;2;-5.75;2;-5.75;0;-3.25;0;-3.25;2;-7.5;2;-7.5;]\nAdd Level [9] Code [1;-7.5;0;-3.5;0;-3.5;0;-3.5;0;-3.5;0;-3.5;0;-3.5;0;-3.5;0;-3.5;0;-4.75;1;-7.25;0;-4.75;0;-7;0;-7;0;-7;0;-7;0;-7;0;-7;0;-3.5;0;-4.75;1;-7.25;0;-4.75;0;-3.75;0;-5;4;-5;0;-5;0;-5;0;-6.75;0;-3.5;0;-4.75;1;-7.25;0;-4.75;0;-3.75;0;-3.25;0;-3.25;0;-4.25;0;-6.25;0;-6.75;0;-3.5;0;-4.75;0;-7.25;0;-4.75;0;-3.75;0;-3.25;0;-4;0;-5.25;0;-6.25;0;-6.75;0;-3.5;0;-4.75;1;-7.25;0;-4.75;1;-3.75;0;-3.25;2;-4;0;-6.5;1;-3.75;0;-6.75;1;-3.5;1;-4.75;0;-7.25;0;-4.75;1;-3.75;0;-3.25;0;-6;0;-6;0;-6;0;-6.75;0;-3.5;0;-4.75;1;-7.25;0;-4.75;1;-3.75;1;-5.5;1;-5.5;0;-5.5;1;-5.5;0;-5.5;1;-3.5;1;-4.75;0;-7.25;0;-4.75;0;-4.5;0;-4.5;0;-4.5;0;-4.5;0;-4.5;0;-4.5;0;-4.5;0;-4.75;1;-7.25;0;-5.75;1;-5.75;0;-5.75;1;-5.75;0;-5.75;1;-5.75;0;-5.75;1;-5.75;1;-5.75;]\nAdd Level [10] Code [1;-7.5;1;-7.5;3;-6.75;1;-7.25;1;-7.25;3;-6.5;1;-6.75;1;-6.75;2;-6.5;2;-6.5;1;-7.5;1;-7.5;3;-6.75;1;-7.25;1;-7.25;3;-6.5;1;-6.75;1;-6.75;2;-6.5;2;-6.5;0;-6.75;0;-6.75;0;-6.75;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-5.5;3;-5.5;0;-7.5;0;-7.5;3;-7.5;3;-7.5;3;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-5.75;1;-5.75;0;-7.5;0;-7.5;3;-7.5;3;-7.5;3;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-5;1;-5;0;-7.5;0;-7.5;3;-7.5;3;-7.5;3;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-4.75;3;-4.75;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-5;3;-5;4;-7.5;4;-7.25;4;-7;3;-6.75;3;-6.5;3;-6.25;3;-6;2;-4.25;1;-5.5;1;-5.5;4;-7.5;4;-7.25;4;-7;3;-6.75;3;-6.5;3;-6.25;3;-6;2;-4.25;1;-5.5;1;-5.5;]\nAdd Level [11] Code [1;-3.25;1;-3.25;0;-7.5;3;-3.75;3;-4;3;-4.75;4;-6.5;4;-6.5;4;-6.5;4;-6.5;1;-3.25;1;-3.25;0;-7.5;3;-3.75;3;-4;3;-4.75;4;-6.5;4;-6.5;4;-6.5;4;-6.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-4;3;-4;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-4.5;3;-4.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-6.5;2;-6.5;2;-6.5;0;-7.5;1;-7.5;1;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-7.5;1;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-7.5;1;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-7;2;-7;2;-7;0;-7.5;1;-7.5;1;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-7.5;1;-7.5;1;-7.25;1;-7;1;-6.75;1;-6.5;1;-6.25;1;-6.25;1;-6.25;0;-6.25;]\nAdd Level [12] Code [1;-7.5;0;-7.5;0;-7.5;1;-6;0;-7.5;0;-7.5;3;-7.25;3;-7;3;-6.75;3;-6.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-6.75;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-7;1;-6;0;-7.5;0;-7.5;1;-7;0;-7.5;0;-7.5;1;-5.5;0;-7.5;0;-7.5;3;-7.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-4;0;-7.5;0;-7.5;1;-5.5;0;-7.5;0;-7.5;1;-6.5;0;-7.5;0;-7.5;1;-5;3;-3.75;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-3.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-3.25;3;-3.5;3;-3.75;3;-4;0;-7.5;0;-7.5;1;-5;0;-7.5;0;-7.5;4;-4.5;]\nAdd Level [13] Code [1;-3.25;1;-3.25;3;-3.25;3;-3.25;3;-3.25;1;-7.5;1;-7.5;0;-7.5;2;-6.5;2;-6.5;1;-3.25;1;-3.25;3;-3.25;3;-3.25;3;-3.25;1;-7.5;1;-7.5;0;-7.5;2;-6.5;2;-6.5;0;-3.25;0;-3.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-3.25;0;-3.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-3.25;0;-3.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-3.25;0;-3.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-6.25;2;-6.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-6.25;2;-6.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-6.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;4;-7.25;4;-7.25;0;-7.5;0;-7.5;0;-7.5;3;-6.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;4;-7.25;4;-7.25;3;-7;3;-7;3;-6.75;3;-6.75;]\nAdd Level [14] Code [1;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-7;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;4;-6;0;-7.5;2;-5.75;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-4.75;0;-7.5;0;-7.5;0;-7.5;1;-5.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-4.5;0;-5.75;0;-7.5;0;-7.5;1;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-7.5;0;-7.5;0;-3.25;0;-7.5;0;-3.5;0;-7.5;0;-6.5;0;-7.5;1;-6.5;2;-6.5;3;-4.25;2;-5.75;3;-4;3;-4.25;3;-4.5;3;-4.75;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-6.75;0;-7.5;3;-3.75;3;-4;3;-4.25;3;-4.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-3.5;3;-3.75;3;-4;3;-4.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-3.25;3;-3.5;3;-3.75;3;-4;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;]\nAdd Level [15] Code [2;-7.5;0;-7.5;0;-7.5;4;-3.25;0;-7.5;0;-7.5;4;-5;3;-4.5;0;-7.5;2;-6;0;-7.5;3;-6.75;3;-6.5;3;-6.75;0;-7.5;0;-7.5;3;-4.5;3;-4.5;0;-7.5;0;-7.5;0;-7.5;3;-6.5;3;-6.25;0;-3.25;0;-7.5;0;-7.5;0;-3.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-6.75;0;-6.5;2;-6.75;0;-7.5;0;-7.5;4;-3.25;0;-7.5;2;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-6.25;0;-7.5;0;-5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-3.25;0;-3.25;0;-7.5;4;-4.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;4;-3.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-5;0;-7.5;3;-4.25;0;-7.5;2;-6.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;4;-5.5;3;-4.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-4.25;0;-7.5;0;-7.5;0;-7.5;0;-7.5;]\nAdd Level [16] Code [1;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-7;3;-7;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-7.5;0;-7.5;3;-6.5;3;-6.5;0;-7.5;2;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-7.5;2;-7.5;0;-7.5;3;-6.25;3;-6.25;0;-7.5;2;-7.5;2;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-5.5;3;-5.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-7;3;-6.5;3;-6.25;3;-5.5;2;-7.5;2;-7.5;3;-5.5;3;-6.25;3;-6.5;3;-7;3;-7;3;-6.5;3;-6.25;3;-5.5;2;-7.5;2;-7.5;3;-5.5;3;-6.25;3;-6.5;3;-7;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-5.5;3;-5.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-7.5;2;-7.5;0;-7.5;3;-6.25;3;-6.25;0;-7.5;2;-7.5;2;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-7.5;0;-7.5;3;-6.5;3;-6.5;0;-7.5;2;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-7;3;-7;0;-7.5;0;-7.5;0;-7.5;4;-6.25;]\nAdd Level [17] Code [1;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-7.5;2;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-3.25;3;-3.5;3;-4.5;2;-4.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-3.25;3;-6.5;3;-5.5;2;-4.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-6;2;-6;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-3.25;1;-3.25;0;-3.25;0;-3.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-3.25;1;-3.25;3;-5;3;-5;3;-5;3;-5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;1;-3.25;1;-3.25;2;-3.25;0;-3.5;0;-7.5;2;-7.5;3;-6.25;3;-6.5;4;-7.5;0;-7.5;1;-3.25;1;-3.25;2;-3.25;0;-3.5;0;-7.5;2;-7.5;3;-6.25;3;-6.5;4;-7.5;]\nAdd Level [18] Code [2;-7.5;2;-7.5;0;-6.5;3;-5.5;2;-6.5;2;-6.5;0;-6.5;0;-6.5;0;-7.5;0;-7.5;2;-7.5;2;-7.5;0;-6.5;3;-5.5;2;-6.5;0;-6.5;0;-6.5;0;-6.5;0;-7.5;0;-7.5;0;-6.5;0;-6.5;0;-6.5;0;-6.5;0;-6.5;0;-6.5;0;-6.5;3;-4.5;3;-4.5;3;-4.5;3;-5.5;3;-5.5;0;-6.5;0;-6.5;0;-6.5;0;-6.5;0;-6.5;3;-4.5;0;-6.5;0;-6.5;2;-6.5;2;-6.5;0;-6.5;0;-6.5;1;-5;1;-5;0;-6.5;3;-3.25;0;-7.5;2;-7;2;-6.5;0;-6.5;0;-6.5;0;-6.5;1;-5;1;-5;0;-6.5;3;-3.25;0;-7.5;2;-7;0;-6.5;0;-6.5;0;-6.5;0;-6.5;0;-6.5;0;-6.5;0;-6.5;3;-3.25;0;-6.5;0;-6.5;0;-6.5;0;-6.5;3;-4.5;3;-4.5;3;-3.25;3;-3.25;3;-3.25;3;-3.25;0;-6.5;0;-5.75;0;-3.25;0;-3.25;3;-4.5;0;-6.5;0;-7.5;0;-7.5;0;-6.5;0;-6.5;0;-5.75;4;-5.5;0;-3.25;0;-3.25;3;-4.5;0;-6.5;2;-7;2;-7;0;-6.5;0;-5.75;4;-5.5;4;-5.25;]\nAdd Level [19] Code [1;-7.5;0;-7.5;0;-7.5;0;-7.5;3;-7.5;3;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;2;-7.5;0;-7.5;1;-3.25;0;-7.5;3;-5;3;-5;0;-7.5;1;-3.25;0;-7.5;2;-7.5;2;-4.75;0;-7.5;1;-3.25;0;-7.5;2;-5.75;2;-5.75;0;-7.5;1;-3.25;0;-7.5;2;-4.75;2;-7.5;0;-7.5;1;-3.25;0;-7.5;3;-3.25;3;-3.25;0;-7.5;1;-3.25;0;-7.5;2;-7.5;1;-7.5;1;-7.5;1;-3.25;1;-6.25;3;-7.5;3;-7.5;1;-6.25;1;-3.25;1;-7.5;1;-7.5;2;-4.25;0;-7.5;1;-3.25;0;-7.5;3;-5;3;-5;0;-7.5;1;-3.25;0;-7.5;2;-4.25;2;-4.25;0;-7.5;1;-3.25;0;-7.5;3;-5;3;-5;0;-7.5;1;-3.25;0;-7.5;2;-4.25;2;-4.25;0;-7.5;1;-3.25;0;-7.5;3;-5;3;-5;0;-7.5;1;-3.25;0;-7.5;2;-4.25;1;-7;1;-7;1;-3.25;1;-7;3;-7.5;3;-7.5;1;-7;1;-3.25;1;-7;1;-7;0;-7.5;0;-7.5;0;-7.5;0;-7.5;4;-5.5;4;-5.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;]\nAdd Level [20] Code [1;-7.5;3;-7.5;3;-7.5;3;-5.75;3;-5.75;0;-7;1;-7.5;0;-6;1;-6;1;-6;1;-7.5;1;-5.75;0;-6.75;1;-7.5;3;-4;0;-4;1;-4;3;-6.5;1;-3.25;3;-3.25;0;-7.5;1;-5.75;0;-7.25;0;-4;0;-7.5;3;-5.5;3;-6.75;3;-4.25;0;-4.75;1;-3.25;3;-5.75;1;-7.5;3;-4;0;-6.25;0;-5;3;-5.5;1;-7.5;3;-5.5;1;-4.25;1;-3.25;3;-5;0;-4;3;-7.5;0;-5;1;-7;0;-5;0;-7.5;1;-5.5;3;-7;0;-3.25;1;-5;0;-5.75;3;-7.5;1;-5.5;0;-5;1;-5;1;-4.75;0;-6.5;1;-6.5;0;-4.75;3;-5;0;-3.75;0;-6.75;3;-7;0;-7.5;1;-5;1;-4.75;1;-4.75;3;-4.5;1;-3.25;3;-7.5;1;-3.75;0;-7;1;-7.25;1;-5;1;-6.5;0;-6.5;3;-4.5;1;-4.25;1;-6.25;1;-6.25;1;-3.75;0;-7.5;0;-5;0;-7.5;0;-7.5;1;-7.5;0;-3.5;1;-3.5;1;-3.25;1;-7.5;1;-3.5;1;-3.5;1;-3.5;1;-7.5;1;-3.5;1;-5.75;0;-7.5;1;-5.75;4;-3.25;]\n\ndefine Add Level (name) Code (code)\nrepeat (100)\n    add [1] to [tiletype v]\n    add [-8] to [tiley v]\nend\nSet Level (code) level ID ((length of [tiletype v]) / (100))\nchange [maxlevel v] by (1)\n\nAdd Level [0template] Code [4;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;0;-7.5;]\n\nAdd Level [thumbnail] Code [0;-7;0;-7;0;-7;0;-7;1;-7.5;0;-7.5;0;-7;0;-7;0;-7;0;-7;2;-6.75;2;-6.75;2;-6.75;2;-6.75;0;-7.5;3;-7.5;4;-6.75;4;-6.75;0;-6.75;0;-6.75;0;-6;0;-6;0;-6;2;-6.5;1;-7.5;0;-7.5;4;-6.5;0;-6.5;4;-6.5;4;-6.5;0;-6;0;-6;0;-6;2;-6.25;0;-7.5;3;-7.5;4;-6.25;0;-6.5;0;-6;4;-6.25;2;-6;2;-6;2;-6;2;-6;1;-7.5;0;-7.5;4;-6;0;-6.25;0;-6;4;-6;2;-6;2;-6;2;-6;2;-6;0;-7.5;3;-7.5;4;-6;0;-6;0;-6;4;-6;0;-3.25;0;-3.25;0;-3.25;2;-5.75;1;-7.5;0;-7.5;4;-5.75;0;-5.75;0;-5.75;4;-5.75;0;-3.25;0;-3.25;0;-3.25;2;-5.5;0;-7.5;3;-7.5;4;-5.5;0;-5.5;0;-6;4;-5.5;0;-3.25;0;-3.25;0;-3.25;2;-5.25;0;-7.5;0;-7.5;4;-5.25;0;-6;4;-5.25;4;-5.25;2;-5;2;-5;2;-5;2;-5;0;-7.5;0;-7.5;4;-5;4;-5;0;-5;0;-5;]\n\n@Edit/Play\n\nwhen this sprite clicked\nMODE\n\nwhen flag clicked\ngo to x: (240) y: (180)\n\nwhen [c v] key pressed\nif <(WasEditing) = [1]> then\n    MODE\nend\n\ndefine MODE\nset [edit v] to ((1) - (EDIT))\nbroadcast (ChangeMode v)\n\nwhen I receive [changemode v]\nswitch costume to (join [] (EDIT))\n\n@TileTypes\n\nwhen I receive [changemode v]\nif <(EDIT) = [1]> then\n    if <(EditMode) = [0]> then\n        Make Clones\n    else\n        delete this clone\n    end\nelse\n    delete this clone\nend\n\nwhen flag clicked\nset [tiletypeselected v] to [0]\nhide\n\ndefine Make Clones\nswitch costume to (0 v)\nset y to (75)\nrepeat (2)\n    set x to (154)\n    repeat (2)\n        create clone of (_myself_ v)\n        next costume\n        change x by (60)\n    end\n    change y by (-50)\nend\nset x to (184)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nshow\nforever\n    set [~temp v] to <(costume [name v]) = (TileTypeSelected)>\n    set [brightness v] effect to ((~temp) * (50))\n    set size to ((80) + ((~temp) * (20))) %\n    if <key (((costume [name v]) + (1)) v) pressed?> then\n        set [tiletypeselected v] to (costume [name v])\n    end\nend\n\nwhen this sprite clicked\nset [tiletypeselected v] to (costume [name v])\n\n@TileY\n\nwhen I receive [changemode v]\nif <(EDIT) = [1]> then\n    if <(EditMode) = [1]> then\n        Make Clones\n    else\n        delete this clone\n    end\nelse\n    delete this clone\nend\n\nwhen flag clicked\nset [tileyselected v] to [-7.5]\nhide\n\ndefine Make Clones\nswitch costume to (-7.5 v)\nset y to (100)\nrepeat (6)\n    set x to (154)\n    repeat (3)\n        create clone of (_myself_ v)\n        next costume\n        change x by (30)\n    end\n    change y by (-30)\nend\n\nwhen I start as a clone\nshow\nset [key v] to ((costume [number v]) - (1))\nforever\n    set [~temp v] to <(costume [name v]) = (TileYSelected)>\n    set [brightness v] effect to ((~temp) * (50))\n    set size to ((80) + ((~temp) * (20))) %\n    if <key (z v) pressed?> then\n        if <<(length of (key)) = [2]> and <key ((letter (2) of (key)) v) pressed?>> then\n            set [tileyselected v] to (costume [name v])\n        end\n    else\n        if <<(length of (key)) = [1]> and <key ((key) v) pressed?>> then\n            set [tileyselected v] to (costume [name v])\n        end\n    end\nend\n\nwhen this sprite clicked\nset [tileyselected v] to (costume [name v])\n\n@ChangeEditMode\n\nwhen this sprite clicked\nMODE\n\nwhen flag clicked\ngo to x: (185) y: (-90)\nset [editmode v] to [0]\nswitch costume to (0 v)\n\nwhen I receive [changemode v]\nif <(EDIT) = [1]> then\n    show\nelse\n    hide\nend\n\ndefine MODE\nset [editmode v] to ((1) - (EditMode))\nswitch costume to (join (EditMode) [])\nbroadcast (ChangeMode v)\n\nwhen [x v] key pressed\nif <(EDIT) = [1]> then\n    MODE\nend\n\n@Save\n\nwhen this sprite clicked\nset [saveload v] to [1]\nbroadcast (SAVE v)\nSave\n\nwhen flag clicked\ngo to x: (158) y: (165)\nshow list [savelist v]\n\nwhen I receive [changemode v]\nif <(EDIT) = [1]> then\n    show\nelse\n    hide\nend\n\ndefine Save\ndelete all of [savelist v]\nadd [Post your levels here:] to [savelist v]\nadd [ https://scratch.mit.edu/discuss/topic/605344/] to [savelist v]\nadd [Triple click + Ctrl + C to save the code] to [savelist v]\nhide list [savelist v]\nset [~i v] to [0]\nset [~temp v] to []\nrepeat (100)\n    change [~i v] by (1)\n    set [~id v] to ((((Level) - (1)) * (100)) + (~i))\n    set [~temp v] to (join (~temp) (join (join (item (~id) of [tiletype v]) [;]) (join (item (~id) of [tiley v]) [;])))\nend\nadd (~temp) to [savelist v]\n\n@Load\n\nwhen flag clicked\ngo to x: (158) y: (135)\n\nwhen I receive [changemode v]\nif <(EDIT) = [1]> then\n    show\nelse\n    hide\nend\n\nwhen this sprite clicked\nbroadcast (LOAD v) and wait\n\n@Close\n\nwhen I receive [save v]\nshow\ngo to [front v] layer\n\nwhen this sprite clicked\nhide\nshow list [savelist v]\nwait until <not <mouse down?>>\nset [saveload v] to [0]\n\nwhen flag clicked\nhide\n\n@Level Next\n\nwhen this sprite clicked\nChange\n\nwhen flag clicked\ngo to x: (213) y: (-130)\n\nwhen I receive [changemode v]\nif <(EDIT) = [1]> then\n    show\nelse\n    hide\nend\n\nwhen [right arrow v] key pressed\nif <(EDIT) = [1]> then\n    Change\nend\n\ndefine Change\nif <not <(Level) = (MaxLevel)>> then\n    change [level v] by (1)\nend\n\n@Level Previous\n\nwhen this sprite clicked\nChange\n\nwhen flag clicked\ngo to x: (160) y: (-130)\n\nwhen I receive [changemode v]\nif <(EDIT) = [1]> then\n    show\nelse\n    hide\nend\n\ndefine Change\nif <(Level) > [1]> then\n    change [level v] by (-1)\nend\n\nwhen [left arrow v] key pressed\nif <(EDIT) = [1]> then\n    Change\nend\n\n@STE\n\ndefine Draw Text (text) at (x) (y) align [0-1] (align)\nset [~cc v] to [0]\nset [brightness v] effect to (100)\ngo to x: ((x) - (((length of (text)) * (13)) * (align))) y: (y)\nrepeat (length of (text))\n    change [~cc v] by (1)\n    switch costume to (letter (~cc) of (text))\n    stamp\n    change x by (13)\nend\n\nwhen I receive [drawtextedit v]\nDraw Text (join (Level) (join [/] (MaxLevel))) at [187] [-167] align [0-1] [0.5]\n\nwhen I receive [drawtextgame v]\nDraw Text (join (Level) (join [/] (MaxLevel))) at [0] [158] align [0-1] [0.5]\n\n@Thumb\n\nwhen flag clicked\nhide\n\ngo to x: (0) y: (0)\nshow\ngo to [front v] layer\n\n@Difficulty\n\nwhen this sprite clicked\nMODE\n\nwhen flag clicked\nset [diff v] to [0]\nswitch costume to (0 v)\ngo to x: (-240) y: (180)\n\ndefine MODE\nset [deathcount v] to [-1]\nset [diff v] to ((1) - (Diff))\nswitch costume to (join [] (Diff))\n\nwhen I receive [changemode v]\nif <(EDIT) = [1]> then\n    hide\nelse\n    show\nend\n\n@Too hard\n\nwhen flag clicked\nset [deathcount v] to [0]\nhide\n\nwhen I receive [too hard v]\ngo to x: (-189) y: (163)\nshow\nwait (7) seconds\nhide\n\n
Use your Ninja Skills to help Scratch Cat fight enemy rats, solve puzzles, and find fish to eat!\n\nCONTROLS (Keyboard):\nWASD / arrow keys - move, jump, climb, push\nSPACE - interact or attack\nR - reset the level\nM - return to main menu\n\nCONTROLS (Mobile):\nPress your finger above/left/right of the cat to move, jump, or climb walls.\nTap directly on (or nearby) the cat to interact or attack.