Scratch Cat  || A Platformer #All #Games #Trending #ScratchCat

Instructions:                                    > STORY<\nScratch Cat was walking around one day when he found a mystical land. He stepped foot onto this mystical land, and this is what he found... \n\n                               >INSTRUCTIONS<\n>Arrow Keys, WASD, or tap to move.\n>Collect all of the coins in a level to move on\n>Avoid spikes!\n>Heart, Star, and follow for more awesome content (YES! this is in the instructions, so now you have to do it :) )\n\n\n\n\n\nHave a great day ;)        -@TheFrisson\n\n\n\n\n#All#Games#Trending#ScratchCat#Fun#Platformer#Cool#TheFrisson#Art#Relaxing#Scratchy#Code#WhyAreYouReadingThisLOL\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nI DARE you to comment, "Scratch Cat smells like cheese!"

@Stage\n\nwhen flag clicked\nbroadcast (start v)\nforever\n    play sound [Distant-Mountains v] until done\nend\n\n@Scratch Cat\n\nwhen I receive [start v]\nforever\n    go to (hitbox v)\n    if <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <(mouse x) > (x position)>>>> then\n        point in direction (90)\n    end\n    if <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < (x position)>>>> then\n        point in direction (-90)\n    end\nend\n\n@Hitbox\n\ndefine Beginning/Death\nhide\nset [xv v] to [0]\nset [yv v] to [0]\nset size to (100) %\ngo to x: (item (Level) of [respawnx v]) y: (item (Level) of [respawny v])\npoint in direction (90)\nshow\n\ndefine Setup Respawn\ndelete all of [respawnx v]\ndelete all of [respawny v]\nAdd Respawn x: [-220] y: [0]\nAdd Respawn x: [-220] y: [0]\nAdd Respawn x: [-220] y: [0]\nAdd Respawn x: [-220] y: [120]\nAdd Respawn x: [-190] y: [50]\nAdd Respawn x: [-220] y: [0]\nAdd Respawn x: [-220] y: [0]\nAdd Respawn x: [-220] y: [0]\nAdd Respawn x: [-220] y: [0]\nAdd Respawn x: [-220] y: [0]\n\ndefine Add Respawn x: (x) y: (y)\nadd (x) to [respawnx v]\nadd (y) to [respawny v]\n\nwhen I receive [next level / death v]\nBeginning/Death\n\nwhen [m v] key pressed\n\nsay (join (join [\(] (join (mouse x) (join [, ] (mouse y)))) [\)]) for (2) seconds\n\nwhen I receive [start v]\nset [ghost v] effect to (100)\nset [level v] to [1]\nSetup Respawn\nbroadcast (next level / death v)\nforever\n    if <<key (right arrow v) pressed?> or <<key (d v) pressed?> or <<mouse down?> and <(mouse x) > (x position)>>>> then\n        change [xv v] by (2)\n        point in direction (90)\n    end\n    if <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < (x position)>>>> then\n        change [xv v] by (-2)\n        point in direction (-90)\n    end\n    set [xv v] to ((Xv) * (0.8))\n    change x by (Xv)\n    if <touching (level platforms v)?> then\n        change y by (1)\n        if <touching (level platforms v)?> then\n            change y by (1)\n            if <touching (level platforms v)?> then\n                change y by (1)\n                if <touching (level platforms v)?> then\n                    change y by (1)\n                    if <touching (level platforms v)?> then\n                        change y by (1)\n                        if <touching (level platforms v)?> then\n                            change x by ((Xv) * (-1))\n                            change y by (-5)\n                            if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > ((20) + (y position))>>>> then\n                                if <(Xv) > [0]> then\n                                    set [xv v] to [-10]\n                                else\n                                    set [xv v] to [10]\n                                end\n                                set [yv v] to [10]\n                            else\n                                set [xv v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change [yv v] by (-1)\n    change y by (Yv)\n    if <touching (level platforms v)?> then\n        change y by ((Yv) * (-1))\n        set [yv v] to [0]\n    end\n    change y by (-1)\n    if <touching (level platforms v)?> then\n        if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > ((20) + (y position))>>>> then\n            set [yv v] to [13]\n        end\n    end\n    change y by (1)\n    if <<(x position) > [242]> and <(CoinsForLevel) < [1]>> then\n        if <not <(Level) = [10]>> then\n            change [level v] by (1)\n            broadcast (next level / death v)\n        end\n    end\n    if <touching (danger v)?> then\n        broadcast (next level / death v)\n        start sound [Meow v]\n    end\n    if <(y position) < [-181]> then\n        broadcast (next level / death v)\n        start sound [Meow v]\n    end\nend\n\nwhen [r v] key pressed\nbroadcast (next level / death v)\n\n@Level Platforms\n\nwhen I receive [start v]\nforever\n    switch costume to (Level)\nend\n\n@Coins\n\ndefine Create Clone At x: (x) y: (y) When Level = (level)\nif <(Level) = (level)> then\n    show\n    go to x: (x) y: (y)\n    create clone of (_myself_ v)\n    hide\nend\n\nwhen I receive [next level / death v]\nset [coinsforlevel v] to [0]\nbroadcast (delete clones v) and wait\nbroadcast (setup clones v) and wait\n\nwhen I receive [delete clones v]\ndelete this clone\n\nwhen I receive [setup clones v]\npoint in direction (90)\nCreate Clone At x: [0] y: [-60] When Level = [1]\nCreate Clone At x: [60] y: [-60] When Level = [2]\nCreate Clone At x: [160] y: [10] When Level = [2]\nCreate Clone At x: [30] y: [20] When Level = [3]\nCreate Clone At x: [155] y: [50] When Level = [3]\nCreate Clone At x: [195] y: [-120] When Level = [3]\nCreate Clone At x: [-85] y: [-100] When Level = [4]\nCreate Clone At x: [-10] y: [-150] When Level = [5]\nCreate Clone At x: [110] y: [-100] When Level = [5]\nCreate Clone At x: [-95] y: [-40] When Level = [6]\nCreate Clone At x: [-20] y: [-40] When Level = [6]\nCreate Clone At x: [50] y: [-40] When Level = [6]\nCreate Clone At x: [125] y: [-40] When Level = [6]\npoint in direction (75)\nCreate Clone At x: [135] y: [85] When Level = [7]\nCreate Clone At x: [-45] y: [15] When Level = [8]\nCreate Clone At x: [25] y: [45] When Level = [9]\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\nchange [coinsforlevel v] by (1)\nset [costume v] to [0]\nforever\n    change [costume v] by (0.5)\n    switch costume to ((1) + (([floor v] of (costume) ) mod (12)))\n    if <touching (scratch cat v)?> then\n        change [coinsforlevel v] by (-1)\n        start sound [Coin v]\n        delete this clone\n    end\nend\n\n@Clouds\n\ndefine create clone\nset [speed v] to (pick random (-1.0) to (-3.0))\ngo to x: (300) y: (pick random (0) to (160))\nswitch costume to (pick random (1) to (3))\nshow\ncreate clone of (_myself_ v)\nhide\n\nwhen I start as a clone\nset size to ((([abs v] of (speed) ) * (25)) + (25)) %\nforever\n    go to [back v] layer\n    change x by (speed)\n    if <(x position) < [-288]> then\n        delete this clone\n    end\nend\n\nwhen I receive [start v]\nset [ghost v] effect to (50)\nhide\nforever\n    wait (pick random (0.5) to (1.0)) seconds\n    create clone\nend\n\n@Front Decor\n\nwhen I receive [start v]\nforever\n    go to [front v] layer\n    go [backward v] (1) layers\n    switch costume to (Level)\nend\n\n@Back Decor\n\nwhen I receive [start v]\nforever\n    go to [back v] layer\n    go [forward v] (1) layers\n    switch costume to (Level)\nend\n\n@Danger\n\nwhen I receive [start v]\nforever\n    go to [front v] layer\n    go [backward v] (2) layers\n    switch costume to (Level)\nend\n\n@Thumbnail\n\nwhen flag clicked\ngo to x: (0) y: (5000)\nhide\nforever\n    go to [front v] layer\n    reset timer\nend\n\nwhen [timer v] > (0.0001)\nshow\nforever\n    change y by (((0) - (y position)) / (5))\nend\n\n