No Colors (platformer)

Instructions: Plz ❤️,⭐️, and FOLLOW\nI will be very happy!!!\nWhich leads to better projects!!!\nAll levels are possible.\nArrow keys or WASD to move\nDown arrow or S to shrink\nAvoid spikes\nThere is a mobile mode\nI made a restart and skip button to make stuff easier\nYou can wall jump!\nLike it? Love, favorite, follow!\n14 levels (I rushed)! \nHave fun!\n

@Stage\n\n@Sprite1\n\ndefine Touch Ground <up?>\nchange [falling v] by (1)\nrepeat until <not <<touching (ground v)?> or <touching (sprite8 v)?>>>\n    if <up?> then\n        change y by (-1)\n    else\n        change y by (1)\n        set [falling v] to [0]\n    end\n    set [speed y v] to [0]\nend\n\nwhen I start as a clone\nrepeat (15)\n    change size by (-1)\n    change [ghost v] effect by (10)\nend\ndelete this clone\n\nwhen I receive [message1 v]\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I receive [message1 v]\ngo to x: (-210) y: (90)\nset [speed x v] to [0]\nset [speed y v] to [0]\nset [falling v] to [10]\nforever\n    set size to (50) %\n    switch costume to (costume1 v)\n    show\n    set rotation style [left-right v]\n    change [speed y v] by (-1)\n    change y by (Speed y)\n    Touch Ground <(Speed y) > [0]>\n    set [speed x v] to ((Speed x) * (0.7))\n    if <(Wall jump) > [0]> then\n        change [wall jump v] by (-1)\n    else\n        if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n            change [speed x v] by (-2)\n        end\n        if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n            change [speed x v] by (2)\n        end\n    end\n    if <(Speed x) < [-0.2]> then\n        Walk (Speed x) [-90]\n    else\n        if <(Speed x) > [0.2]> then\n            Walk (Speed x) [90]\n        end\n    end\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <[3] > (Falling)>> then\n        set [falling v] to [6]\n        set [speed y v] to [12]\n    end\nend\n\nwhen I receive [next level v]\ngo to x: (-210) y: (140)\n\nset [wall jump v] to [1]\nchange y by (1)\nchange x by ((-1) * (Speed x))\n\nwhen flag clicked\nset [wall jump v] to [0]\n\nwhen I receive [next level v]\nset [wall jump v] to [0]\n\nwhen I receive [message1 v]\nforever\n    repeat until <not <<key (down arrow v) pressed?> or <[1] = (Shrink)>>>\n        switch costume to (costume2 v)\n    end\n    switch costume to (costume1 v)\nend\n\nwhen I receive [mobile v]\ngo to x: (-210) y: (90)\nset [speed x v] to [0]\nset [speed y v] to [0]\nset [falling v] to [10]\nforever\n    set size to (50) %\n    switch costume to (costume1 v)\n    show\n    set rotation style [left-right v]\n    change [speed y v] by (-1)\n    change y by (Speed y)\n    Touch Ground <(Speed y) > [0]>\n    set [speed x v] to ((Speed x) * (0.7))\n    if <(Wall jump) > [0]> then\n        change [wall jump v] by (-1)\n    else\n        if <(Left) = [1]> then\n            change [speed x v] by (-2)\n        end\n        if <(Right) = [1]> then\n            change [speed x v] by (2)\n        end\n    end\n    if <(Speed x) < [-0.2]> then\n        Walk (Speed x) [-90]\n    else\n        if <(Speed x) > [0.2]> then\n            Walk (Speed x) [90]\n        end\n    end\n    if <<(Jump) = [1]> and <[3] > (Falling)>> then\n        set [falling v] to [6]\n        set [speed y v] to [12]\n    end\nend\n\nwhen I receive [mobile v]\nforever\n    repeat until <not <<<key (down arrow v) pressed?> or <key (s v) pressed?>> or <[1] = (Shrink)>>>\n        switch costume to (costume2 v)\n    end\n    switch costume to (costume1 v)\nend\n\nwhen I receive [mobile v]\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I receive [redo v]\ngo to x: (-210) y: (90)\n\nwhen flag clicked\nforever\n    if <[-179] > (y position)> then\n        broadcast (Redo v)\n    end\nend\n\nwhen I receive [skip v]\nbroadcast (Redo v)\n\nwhen flag clicked\nset [level v] to [1]\nhide\n\nwhen flag clicked\nforever\n    if <touching (sprite3 v)?> then\n        go to x: (-210) y: (140)\n    end\nend\n\ndefine Walk (speed) (direction)\npoint in direction (direction)\nchange x by (speed)\nset [slope v] to [0]\nrepeat until <<not <touching (ground v)?>> or <(Slope) = [8]>>\n    change y by (1)\n    change [slope v] by (1)\nend\nif <(Slope) = [8]> then\n    change x by ((0) - (speed))\n    change y by ((0) - (Slope))\n    if <<<key (up arrow v) pressed?> or <[1] = (Jump)>> and <([abs v] of (speed) ) > [0.5]>> then\n        if <(Wall jump) = [0]> then\n            set [speed x v] to ((-0.5) * (speed))\n            set [speed y v] to [10]\n            set [falling v] to [0]\n            set [wall jump v] to [5]\n        end\n    else\n        set [speed x v] to [0]\n    end\nend\n\n@Sprite2\n\nwhen this sprite clicked\nset size to (120) %\nwait (0.3) seconds\nset size to (100) %\nchange [ghost v] effect by (100)\nhide\nbroadcast (Game start v)\n\nwhen flag clicked\nhide\n\nwhen I receive [intro over v]\nhide\npoint in direction (80)\nforever\n    show\n    repeat (40)\n        turn right (0.5) degrees\n    end\n    repeat (40)\n        turn left (0.5) degrees\n    end\nend\n\nwhen I receive [intro over v]\nset size to (100) %\nforever\n    wait (0.75) seconds\n    change size by (10)\n    wait (0.75) seconds\n    change size by (-10)\nend\n\n@Ground\n\nwhen I receive [game start v]\nswitch costume to (costume8 v)\nshow\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [skip v]\nchange [level v] by (1)\nnext costume\n\nwhen I receive [message1 v]\nnext costume\nforever\n    show\n    if <[235] < ([x position v] of [sprite1 v])> then\n        broadcast (Next level v)\n        change [level v] by (1)\n    end\nend\n\nwhen I receive [mobile v]\nnext costume\nforever\n    show\n    if <[235] < ([x position v] of [sprite1 v])> then\n        broadcast (Next level v)\n        change [level v] by (1)\n    end\nend\n\nTouch Ground <(Speed y) > [0]>\n\nwhen flag clicked\nswitch costume to (costume1 v)\nforever\n    if <[15] = (costume [number v])> then\n        broadcast (Game over v)\n        stop [other scripts in sprite v]\n    end\nend\n\nTouch Ground <(Speed y) > [0]>\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\n\n@Sprite3\n\nwhen flag clicked\nhide\ngo to [back v] layer\n\nwhen I receive [skip v]\nwait (0.1) seconds\nif <(Level) < [3]> then\n    hide\nend\nif <(Level) = [3]> then\n    show\n    switch costume to (costume1 v)\nend\nif <[3] < (Level)> then\n    next costume\n    show\nend\n\nwhen I receive [next level v]\nif <(Level) = [3]> then\n    show\n    switch costume to (costume1 v)\nend\nif <[3] < (Level)> then\n    next costume\n    show\nend\n\nwhen I receive [game over v]\nswitch costume to (costume12 v)\n\n@Sprite4\n\nwhen flag clicked\nhide\n\nwhen I receive [message1 v]\ngo to [back v] layer\nshow\n\nwhen this sprite clicked\nbroadcast (Skip v)\n\nwhen I receive [mobile v]\ngo to [back v] layer\nshow\n\nwhen I receive [game over v]\nhide\n\n@Sprite10\n\nwhen flag clicked\nhide\n\nwhen I receive [mobile v]\nshow\n\nwhen I receive [message1 v]\nshow\ngo to [back v] layer\n\nwhen this sprite clicked\nbroadcast (Redo v)\n\nwhen I receive [game over v]\nhide\n\n@Sprite5\n\nwhen I receive [game start v]\nshow\n\nwhen this sprite clicked\nhide\nbroadcast (Mobile v)\n\nwhen I receive [message1 v]\nhide\n\nwhen flag clicked\nhide\n\n@Sprite6\n\nwhen I receive [mobile v]\ngo to x: (-171) y: (-108)\ngo to [back v] layer\nset [ghost v] effect to (50)\nshow\n\nwhen flag clicked\nhide\n\n@Sprite7\n\nwhen I receive [mobile v]\ngo to x: (-171) y: (-108)\nset [jump v] to [0]\nset [left v] to [0]\nset [right v] to [0]\nset [shrink v] to [0]\ngo to [front v] layer\nset [ghost v] effect to (50)\nshow\nforever\n    go to x: (-171) y: (-108)\n    set [jump v] to [0]\n    set [left v] to [0]\n    set [right v] to [0]\n    set [shrink v] to [0]\n    point in direction (0)\n    if <mouse down?> then\n        go to x: (-171) y: (-108)\n        point towards (mouse-pointer v)\n        move (28) steps\n        if <<(direction) < [60]> and <(direction) > [-60]>> then\n            set [jump v] to [1]\n        else\n            if <<(direction) > [120]> or <(direction) < [-120]>> then\n                set [shrink v] to [1]\n            end\n        end\n        if <<(direction) > [30]> and <(direction) < [150]>> then\n            set [right v] to [1]\n        else\n            if <<(direction) > [-150]> and <(direction) < [-30]>> then\n                set [left v] to [1]\n            end\n        end\n    end\nend\n\nwhen flag clicked\nhide\nforever\n    set [direction v] to (direction)\nend\n\n@Sprite8\n\nwhen flag clicked\nforever\n    hide\nend\n\nwhen I start as a clone\nshow\nforever\n    repeat until <<touching (_edge_ v)?> or <<touching (sprite3 v)?> or <<[150] < (y position)> or <touching (ground v)?>>>>\n        change y by (4)\n    end\n    wait (0.5) seconds\n    change y by (-4)\n    repeat until <<touching (_edge_ v)?> or <<touching (sprite3 v)?> or <<(y position) < [20]> or <touching (ground v)?>>>>\n        change y by (-4)\n    end\n    wait (0.5) seconds\n    change y by (4)\nend\n\nwhen I receive [next level v]\nset [delete clones v] to [1]\nwait (0.1) seconds\nset [delete clones v] to [0]\nif <(Level) = [9]> then\n    go to x: (36) y: (28)\n    create clone of (_myself_ v)\nend\nif <(Level) = [11]> then\n    go to x: (10) y: (100)\n    create clone of (_myself_ v)\nend\nif <(Level) = [12]> then\n    go to x: (90) y: (51)\n    create clone of (_myself_ v)\nend\nif <(Level) = [13]> then\n    go to x: (-71) y: (49)\n    create clone of (_myself_ v)\n    go to x: (89) y: (92)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nforever\n    if <(Delete clones) = [1]> then\n        delete this clone\n    end\nend\n\nwhen I receive [skip v]\nset [delete clones v] to [1]\nwait (0.1) seconds\nset [delete clones v] to [0]\nif <(Level) = [9]> then\n    go to x: (36) y: (28)\n    create clone of (_myself_ v)\nend\nif <(Level) = [11]> then\n    go to x: (10) y: (100)\n    create clone of (_myself_ v)\nend\nif <(Level) = [12]> then\n    go to x: (90) y: (51)\n    create clone of (_myself_ v)\nend\nif <(Level) = [13]> then\n    go to x: (-71) y: (49)\n    create clone of (_myself_ v)\n    go to x: (89) y: (92)\n    create clone of (_myself_ v)\nend\n\n@Sprite11\n\nwhen flag clicked\nclear graphic effects\nset [intro x v] to [50]\nset [intro y v] to [15]\nswitch costume to (costume1 v)\ncreate clone of (_myself_ v)\nshow\nswitch costume to (costume3 v)\ngo to x: (pick random (-200) to (200)) y: (-180)\nset size to (100) %\nrepeat (75)\n    go to [front v] layer\n    change x by (Intro x)\n    change y by (Intro y)\n    change [intro y v] by (((50) - (y position)) / (10))\n    set [intro y v] to ((Intro y) * (0.8))\n    change [intro x v] by (((0) - (x position)) / (10))\n    set [intro x v] to ((Intro x) * (0.8))\n    change size by ((([abs v] of (Intro y) ) + ([abs v] of (Intro x) )) / (20))\nend\nbroadcast (Intro over v)\n\nwhen I start as a clone\nset size to (100) %\nforever\n    go to x: (0) y: (0)\nend\n\nwhen I receive [intro over v]\nrepeat (5)\n    change [brightness v] effect by (20)\nend\nrepeat (5)\n    change [ghost v] effect by (20)\nend\ndelete this clone\n\nwhen I receive [game over v]\ngo to x: (0) y: (0)\nclear graphic effects\nset size to (100) %\nswitch costume to (costume2 v)\ngo to [front v] layer\nshow\n\n@Sprite9\n\nwhen I receive [game start v]\nshow\n\nwhen flag clicked\nhide\n\nwhen this sprite clicked\nhide\nbroadcast (message1 v)\n\nwhen I receive [mobile v]\nhide\n\n@Sprite12\n\nwhen flag clicked\nhide\n\nwhen I receive [game over v]\nshow\n\n