SCRATCH CAT PLATFORMER (pixel)

Instructions: ARow key loooool pls heart and favorite wrk hard..if i get this on trending I will make a limited edition charcter and levels....and it will last about 1week.............................................................\ni doont add music\n(here is the contest version https://scratch.mit.edu/projects/823492638 just play it and if you want love and heart the contest version)\nif Lag open on turbowrap I don't know how to get turbowrap link \n\nWhat i should create next\n\nBRUh\n\n\ni work haard\nadvertise yes \nheart and fav if you want dont be shy and pls make this on trending\n\nit had bad graphics before   the bad of bad\n\nupdated jan 3 2022\nupdate march 29 2                  \nfixed a bug where you actually can get stuck in ground and added a level 1/30/2023            \nif i get 65stars and 55  hearts ama add a 6 new levels\n2 17 2023 ADDED START BUTTON THANKS FOR @DM_STUDIOS_413 for the button

@Stage\n\nwhen flag clicked\nset [pixelate v] effect to (34)\n\nwhen flag clicked\nwait until <(Level) = [22]>\nswitch backdrop to (night v)\n\nwhen flag clicked\nwait until <(Level) = [2]>\nswitch backdrop to (day v)\n\nwhen flag clicked\nswitch backdrop to (day v)\n\n@HITBOX\n\nwhen flag clicked\nshow\nset size to (50) %\nset [spawnx v] to [-195]\nset [spawny v] to [-74]\ngo to x: (SpawnX) y: (SpawnY)\nset rotation style [left-right v]\nset [yvelocity v] to [0]\nset [xvelocity v] to [0]\nset [ghost v] effect to (100)\nforever\n    broadcast (FOLLOWHITBOX v)\n    UP/DOWN [13] [-1]\n    RIGHT/LEFT [10] [0.6]\n    CheckNextLevel\n    SPIKE1\n    ACID\n    BLUE_THINGY\n    Lava\n    spike3\nend\n\ndefine UP/DOWN (jump height ) (fall speed)\nchange y by (Yvelocity)\nif <touching (level v)?> then\n    BLUE_THINGY\n    SPIKE1\n    Lava\n    ACID\n    spike3\n    repeat ([ceiling v] of ([abs v] of (Yvelocity) ) )\n        if <touching (level v)?> then\n            change y by (((Yvelocity) / ([abs v] of (Yvelocity) )) * (-1))\n        end\n    end\n    if <<not <(Yvelocity) > [0]>> and <key (up arrow v) pressed?>> then\n        set [yvelocity v] to (jump height )\n    else\n        set [yvelocity v] to [0]\n    end\nelse\n    change [yvelocity v] by (fall speed)\nend\n\ndefine RIGHT/LEFT (move speed) (drag)\nchange x by (Xvelocity)\nif <touching (level v)?> then\n    BLUE_THINGY\n    SPIKE1\n    ACID\n    Lava\n    spike3\n    repeat ([ceiling v] of ([abs v] of (Xvelocity) ) )\n        if <touching (level v)?> then\n            change x by (((Xvelocity) / ([abs v] of (Xvelocity) )) * (-1))\n        end\n    end\n    set [xvelocity v] to [0]\nend\nif <key (right arrow v) pressed?> then\n    set [xvelocity v] to (move speed)\nelse\n    if <key (left arrow v) pressed?> then\n        set [xvelocity v] to ((move speed) * (-1))\n    end\nend\nset [xvelocity v] to ((Xvelocity) * (drag))\n\ndefine CheckNextLevel\nif <(x position) > [235]> then\n    broadcast (Next Level v)\n    go to x: (SpawnX) y: (SpawnY)\nend\n\ndefine Lava\nif <touching color (#ff7100)?> then\n    go to x: (SpawnX) y: (SpawnY)\nend\n\ndefine SPIKE1\nif <touching color (#ff0000)?> then\n    go to x: (SpawnX) y: (SpawnY)\nend\n\ndefine ACID\nif <touching color (#51fc78)?> then\n    go to x: (SpawnX) y: (SpawnY)\nend\n\ndefine BLUE_THINGY\nif <touching color (#00a5fa)?> then\n    go to x: (SpawnX) y: (SpawnY)\nend\n\nwhen flag clicked\n\ndefine RIGHT/LEFT (move speed) (drag)\nchange x by (Xvelocity)\nif <touching (level v)?> then\n    BLUE_THINGY\n    SPIKE1\n    ACID\n    Lava\n    spike3\n    repeat ([ceiling v] of ([abs v] of (Xvelocity) ) )\n        if <touching (level v)?> then\n            change x by (((Xvelocity) / ([abs v] of (Xvelocity) )) * (-1))\n        end\n    end\n    set [xvelocity v] to [0]\nend\nif <key (d v) pressed?> then\n    set [xvelocity v] to (move speed)\nelse\n    if <key (a v) pressed?> then\n        set [xvelocity v] to ((move speed) * (-1))\n    end\nend\nset [xvelocity v] to ((Xvelocity) * (drag))\n\ndefine spike3\nif <touching color (#646464)?> then\n    go to x: (SpawnX) y: (SpawnY)\nend\n\n@LEVEL\n\nwhen flag clicked\nwait until <(Levelstart?) = [1]>\nset [level v] to [1]\ngo to x: (0) y: (0)\nswitch costume to (costume1 v)\n\nwhen I receive [next level v]\nchange [level v] by (1)\nnext costume\n\nwhen flag clicked\nset [pixelate v] effect to (50)\n\nset [level v] to [1]\ngo to x: (0) y: (0)\nswitch costume to (costume1 v)\n\n@PLAYER\n\nwhen I receive [followhitbox v]\ngo to (hitbox v)\n\nwhen flag clicked\nswitch costume to (costume1 v)\nset rotation style [left-right v]\npoint in direction (90)\nforever\n    if <key (right arrow v) pressed?> then\n        switch costume to ((costume [number v]) + (1))\n        point in direction (90)\n    else\n        if <key (left arrow v) pressed?> then\n            switch costume to ((costume [number v]) - (1))\n            point in direction (-90)\n        else\n            switch costume to (costume1 v)\n        end\n    end\n    wait (0.13) seconds\nend\n\nwhen flag clicked\nset [pixelate v] effect to (38)\n\n@Sprite1\n\nwhen flag clicked\nset [ghost v] effect to (0)\nwait until <(Levelstart?) = [1]>\nset [ghost v] effect to (100)\n\nset [ghost v] effect to (100)\n\n@Sprite2\n\ndefine RIGHT/LEFT (move speed) (drag)\nchange x by (Xvelocity)\nif <touching (level v)?> then\n    BLUE_THINGY\n    SPIKE1\n    ACID\n    Lava\n    repeat ([ceiling v] of ([abs v] of (Xvelocity) ) )\n        if <touching (level v)?> then\n            change x by (((Xvelocity) / ([abs v] of (Xvelocity) )) * (-1))\n        end\n    end\n    set [xvelocity v] to [0]\nend\nif <key (right arrow v) pressed?> then\n    set [xvelocity v] to (move speed)\nelse\n    if <key (left arrow v) pressed?> then\n        set [xvelocity v] to ((move speed) * (-1))\n    end\nend\nset [xvelocity v] to ((Xvelocity) * (drag))\n\n@Sprite3\n\nwhen flag clicked\ngo to x: (-3) y: (-104)\nshow\nset [levelstart? v] to [0]\n\nwhen this sprite clicked\ngo to x: (0) y: (0)\nhide\nbroadcast (Start Game v)\n\nwhen I receive [start game v]\nset [levelstart? v] to [1]\n\n