7Sofa - A Platformer

Instructions: hai peeps!\nfor @7Sofa , well, its a platformer called, 7sofa- A platformer!!\n\nOk, so my Potatoanimator platformer was popular, so why not maker this? Im prob gonna make more, but here it is :)\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\nomg stop why does this have views

@Stage\n\n@SOFA\n\nwhen I start as a clone\nswitch costume to (2 v)\nwait (0) seconds\nrepeat (10)\n    change size by (-2.5)\n    change [ghost v] effect by (12)\n    change [pixelate v] effect by (20)\nend\ndelete this clone\n\nwhen I receive [start v]\ngo to [front v] layer\nshow\n\nwhen flag clicked\nset [level v] to [1]\npoint in direction (90)\nset [y spawn v] to [-206]\nset [x spawn v] to [-218]\ngo to x: (X Spawn) y: (Y Spawn)\nshow\nset size to (12) %\nset [movement x v] to [0]\nset [movement y v] to [0]\n\nwhen flag clicked\nwait (1) seconds\nchange [level v] by (1)\nswitch costume to (costume1 v)\npoint in direction (90)\nset [movement x v] to [0]\nset [movement y v] to [0]\n\nwhen I receive [next level v]\nset [movement x v] to [0]\nset [movement y v] to [0]\ngo to x: (-192) y: (-35)\npoint in direction (90)\n\nwhen flag clicked\ngo to x: (-192) y: (-35)\n\nwhen I receive [start v]\nshow\ngo to x: (-192) y: (-35)\n\nwhen flag clicked\nwait (0.1) seconds\nforever\n    play sound [Julius Dreisig & Zeus X Crona - Invisible \[NCS Release\] v] until done\nend\n\nwhen I receive [start v]\nwait (0.5) seconds\nforever\n    player movement\nend\n\nwhen I receive [replay v]\nset [movement x v] to [0]\nset [movement y v] to [0]\ngo to x: (-192) y: (-35)\npoint in direction (90)\n\nwhen flag clicked\nswitch costume to (1 v)\nforever\n    create clone of (_myself_ v)\nend\n\nwhen flag clicked\nshow\nforever\n    change [movement y v] by (-0.5)\n    if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(mouse x) < (x position)>>> then\n        set rotation style [left-right v]\n        point in direction (-90)\n        change [movement x v] by (-.7)\n    end\n    if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(x position) < (mouse x)>>> then\n        point in direction (90)\n        change [movement x v] by (.7)\n    end\n    set [movement x v] to ((Movement X) * (0.9))\n    change x by (Movement X)\n    if <touching (level v)?> then\n        change y by (1)\n        if <touching (level v)?> then\n            change y by (1)\n            if <touching (level v)?> then\n                change y by (1)\n                if <touching (level v)?> then\n                    change y by (1)\n                    if <touching (level v)?> then\n                        change y by (1)\n                        if <touching (level v)?> then\n                            change y by (1)\n                            if <touching (level v)?> then\n                                change y by (-6)\n                                change x by ((Movement X) * (-1))\n                                if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(y position) < (mouse y)>>> then\n                                    set [movement y v] to [8]\n                                    if <(Movement X) > [0]> then\n                                        set [movement x v] to [-8]\n                                    else\n                                        set [movement x v] to [8]\n                                    end\n                                else\n                                    set [movement x v] to [0]\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (Movement Y)\n    if <touching (level v)?> then\n        change y by ((Movement Y) * (-1))\n        set [movement y v] to <<(x position) = [200]> or <(x position) > [200]>>\n    end\n    change y by (-0.5)\n    if <<<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(y position) < (mouse y)>>> and <touching (level v)?>> then\n        set [movement y v] to [8]\n    end\n    change y by (0.5)\n    if <<touching (spikes v)?> or <(y position) < [-180]>> then\n        start sound [Bonk v]\n        repeat (10)\n            change [ghost v] effect by (10)\n        end\n        set [movement x v] to [0]\n        set [movement y v] to [0]\n        go to x: (-209) y: (50)\n        point in direction (90)\n        repeat (10)\n            change [ghost v] effect by (-10)\n        end\n    end\n    if <touching (bouncy stuff v)?> then\n        set [movement y v] to [13]\n    end\n    if <<(x position) = [210]> or <(x position) > [210]>> then\n        broadcast (next level v)\n        go to x: (-206) y: (-88)\n    end\n    if <touching (speed v)?> then\n        change [movement x v] by (18)\n        change [movement y v] by (14)\n    end\nend\n\ndefine player movement\n\nwhen I receive [replay v]\ngo to x: (-192) y: (-35)\n\n@level\n\nwhen I receive [next level v]\nnext costume\n\nwhen flag clicked\ngo to x: (0) y: (-20)\nswitch costume to (1 v)\n\nwhen flag clicked\nshow\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [11]> then\n        broadcast (end. v)\n    end\nend\n\nwhen I receive [skip v]\nnext costume\nbroadcast (next level v)\n\n@spikes\n\nwhen flag clicked\nshow\ngo to [front v] layer\nswitch costume to (1 v)\nforever\n    switch costume to ([costume # v] of [level v])\nend\n\nwhen I receive [start v]\ngo to x: (0) y: (0)\nshow\n\nwhen I receive [next level v]\ngo to [front v] layer\nnext costume\n\n@Cloud\n\nwhen flag clicked\ngo to [back v] layer\nhide\nwait (0.1) seconds\nforever\n    create clone of (_myself_ v)\n    wait (1.5) seconds\nend\n\nwhen I start as a clone\nshow\nif <(pick random (1) to (2)) = [1]> then\n    go to x: (-250) y: (pick random (50) to (200))\n    set [ghost v] effect to (pick random (60) to (90))\n    switch costume to (pick random (1) to (2))\n    repeat until <(x position) = [250]>\n        change x by (1)\n    end\n    delete this clone\nelse\n    go to x: (250) y: (pick random (50) to (200))\n    set [ghost v] effect to (pick random (60) to (90))\n    switch costume to (pick random (1) to (2))\n    repeat until <(x position) = [-250]>\n        change x by (-1)\n    end\n    delete this clone\nend\n\n@bouncy stuff\n\nwhen flag clicked\nshow\ngo to x: (0) y: (0)\nswitch costume to (1 v)\nforever\n    switch costume to ([costume # v] of [level v])\nend\n\nwhen I receive [start v]\nshow\n\nwhen I receive [next level v]\nnext costume\n\n@speed\n\nwhen flag clicked\ngo to x: (0) y: (0)\nhide\n\nwhen I receive [start v]\ngo to [back v] layer\nswitch costume to (1 v)\nshow\n\nwhen I receive [next level v]\nnext costume\n\n@Grass\n\nwhen flag clicked\ngo to [back v] layer\ngo to x: (36) y: (28)\nswitch costume to (grass v)\nhide\n\nwhen I receive [start v]\nshow\n\nwhen I receive [next level v]\nnext costume\n\n@skip\n\nwhen I receive [start v]\nset size to (80) %\nset [ghost v] effect to (100)\ngo to [front v] layer\nshow\nrepeat (45)\n    change [ghost v] effect by (-2)\nend\nforever\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (20)\n        if <mouse down?> then\n            broadcast (next level v)\n            wait until <not <mouse down?>>\n        end\n    else\n        set [ghost v] effect to (10)\n    end\nend\n\nwhen flag clicked\nswitch costume to (1 v)\ngo to x: (-217) y: (158)\nshow\n\nwhen I receive [end. v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\nstop [this script v]\n\nwhen this sprite clicked\nbroadcast (SKIP v)\n\n@replay\n\nwhen I receive [start v]\nset size to (80) %\nset [ghost v] effect to (100)\ngo to [front v] layer\nshow\nrepeat (45)\n    change [ghost v] effect by (-2)\nend\nforever\n    if <touching (mouse-pointer v)?> then\n        set [ghost v] effect to (20)\n        if <mouse down?> then\n            broadcast (replay v)\n            wait until <not <mouse down?>>\n        end\n    else\n        set [ghost v] effect to (10)\n    end\nend\n\nwhen flag clicked\nswitch costume to (1 v)\ngo to x: (-173) y: (158)\nshow\n\nwhen I receive [end. v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\nstop [this script v]\n\nwhen this sprite clicked\nbroadcast (REPLAY v)\n\n@1\n\nwhen [timer v] > (timer)\nif <(endy) = [0]> then\n    switch costume to (1 v)\n    show\n    set [ghost v] effect to (100)\n    go to [front v] layer\n    start sound [Manea v]\n    repeat (20)\n        change [ghost v] effect by (-5)\n        go to [front v] layer\n    end\nelse\n    switch costume to (1 v)\n    show\n    set [ghost v] effect to (100)\n    go to [front v] layer\n    repeat (20)\n        change [ghost v] effect by (-5)\n        go to [front v] layer\n    end\nend\n\nwhen flag clicked\nset size to (200) %\nswitch costume to (1 v)\npoint in direction (90)\ngo to x: (0) y: (0)\nset size to (100) %\nhide\nforever\n    set [timer v] to (timer)\nend\n\n