Halloween Platformer

Instructions: Happy Halloween! I hope you enjoy this spooky platformer!\n\nYour goal is to help Marvin the pumpkin get back to his pumpkin patch. You must watch out for sharp objects because they could hurt Marvin.\n\nArrow keys to move left, right jump etc.  

@Stage\n\nwhen I receive [start v]\nforever\n    play sound [Horror Land \(8-BIT\) - Mario Party 2 v] until done\nend\n\n@Pumpkin\n\nwhen I receive [start v]\nshow\ngo to x: (-192) y: (-67)\nforever\n    change [yv v] by (-0.5)\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        if <(water) = [0]> then\n            change [xv v] by (0.7)\n        end\n    end\n    go to [front v] layer\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        change [xv v] by (-0.7)\n    end\n    set [xv v] to ((Xv) * (0.9))\n    change x by (Xv)\n    if <<touching color (#b93f4a)?> or <touching color (#8e3038)?>> then\n        change y by (1)\n        if <<touching color (#b93f4a)?> or <touching color (#8e3038)?>> then\n            change y by (1)\n            if <<touching color (#b93f4a)?> or <touching color (#8e3038)?>> then\n                change y by (1)\n                if <<touching color (#b93f4a)?> or <touching color (#8e3038)?>> then\n                    change y by (1)\n                    if <<touching color (#b93f4a)?> or <touching color (#8e3038)?>> then\n                        change y by (1)\n                    end\n                    if <<touching color (#b93f4a)?> or <touching color (#8e3038)?>> then\n                        change x by ((Xv) * (-1))\n                        change x by (-1)\n                        change y by (-5)\n                        change x by (1)\n                        if <<key (up arrow v) pressed?> or <key (w v) pressed?>> then\n                            if <(Xv) < [0]> then\n                                set [yv v] to [10]\n                                set [xv v] to [10]\n                            else\n                                set [yv v] to [10]\n                                set [xv v] to [-10]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (Yv)\n    if <<touching color (#b93f4a)?> or <touching color (#8e3038)?>> then\n        change y by ((Yv) * (-1))\n        set [yv v] to [0]\n    end\n    change y by (-1)\n    if <key (up arrow v) pressed?> then\n        if <<touching color (#b93f4a)?> or <touching color (#8e3038)?>> then\n            if <(water) = [0]> then\n                set [yv v] to [8]\n            end\n        end\n    end\n    if <touching (spider webs v)?> then\n        set [yv v] to [13]\n    end\n    change y by (1)\n    if <touching (level_sensor v)?> then\n        go to x: (-192) y: (-67)\n        broadcast (NextLevel v)\n    end\n    if <touching color (#484848)?> then\n        go to x: (-192) y: (-67)\n    end\n    if <<touching (spider webs v)?> and <touching color (#d2b0b0)?>> then\n        set [xv v] to [13]\n    end\n    if <<touching (spider webs v)?> and <touching color (#9aa9d2)?>> then\n        set [yv v] to [50]\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen flag clicked\ngo to x: (-192) y: (-67)\nhide\n\n@Sprite1\n\nwhen flag clicked\ngo to x: (0) y: (0)\n\nwhen I receive [nextlevel v]\nnext costume\nchange [spider web level? v] by (1)\nwait (0.3) seconds\n\nwhen flag clicked\nswitch costume to (level1 v)\n\nwhen flag clicked\nset [spider web level? v] to [1]\n\nhide\n\nwhen I receive [start v]\nshow\n\n@Level_sensor\n\nwhen flag clicked\ngo to x: (60) y: (0)\nset [ghost v] effect to (100)\n\n@spider webs\n\nwhen flag clicked\ngo to x: (0) y: (0)\n\nwhen flag clicked\nforever\n    switch costume to (Spider web level?)\nend\n\n@saw one\n\nwhen flag clicked\npoint in direction (90)\nforever\n    turn right (15) degrees\nend\n\nwhen flag clicked\nforever\n    if <<<([costume # v] of [sprite1 v]) = [6]> or <([costume # v] of [sprite1 v]) = [7]>> or <([costume # v] of [sprite1 v]) = [8]>> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [nextlevel v]\nif <([costume # v] of [sprite1 v]) = [7]> then\nend\n\nwhen flag clicked\n\nwhen I receive [nextlevel v]\nforever\n    if <([costume # v] of [sprite1 v]) = [7]> then\n        go to x: (6) y: (93)\n        repeat (35)\n            change y by (-3)\n        end\n        repeat (35)\n            change y by (3)\n        end\n    end\n    if <([costume # v] of [sprite1 v]) = [6]> then\n        go to x: (45) y: (66)\n        repeat (30)\n            change x by (-3)\n        end\n        repeat (30)\n            change x by (3)\n        end\n    end\nend\n\nwhen I receive [nextlevel v]\nforever\n    if <([costume # v] of [sprite1 v]) = [8]> then\n        go to x: (135) y: (129)\n        repeat (50)\n            change y by (-2)\n            change x by (-1)\n        end\n        repeat (50)\n            change y by (2)\n            change x by (1)\n        end\n    end\nend\n\nwhen I receive [nextlevel v]\n\n@saw two\n\nwhen flag clicked\npoint in direction (90)\nforever\n    turn right (15) degrees\nend\n\nwhen flag clicked\nforever\n    if <([costume # v] of [sprite1 v]) = [6]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [nextlevel v]\nif <([costume # v] of [sprite1 v]) = [6]> then\nend\n\nwhen flag clicked\n\nwhen I receive [nextlevel v]\nforever\n    if <([costume # v] of [sprite1 v]) = [6]> then\n        go to x: (173) y: (16)\n        repeat (41)\n            change y by (-3)\n        end\n        repeat (41)\n            change y by (3)\n        end\n    end\nend\n\n@saw three\n\nwhen flag clicked\npoint in direction (90)\nforever\n    turn right (15) degrees\nend\n\nwhen flag clicked\nforever\n    if <([costume # v] of [sprite1 v]) = [9]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen flag clicked\n\nwhen I receive [nextlevel v]\nforever\n    if <([costume # v] of [sprite1 v]) = [9]> then\n        go to x: (-180) y: (73)\n        repeat (40)\n            change x by (2)\n        end\n        repeat (40)\n            change x by (-2)\n        end\n    end\nend\n\n@saw four\n\nwhen flag clicked\npoint in direction (90)\nforever\n    turn right (15) degrees\nend\n\nwhen flag clicked\nforever\n    if <([costume # v] of [sprite1 v]) = [9]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [nextlevel v]\nif <([costume # v] of [sprite1 v]) = [6]> then\n\nwhen flag clicked\n\nwhen I receive [nextlevel v]\nforever\n    if <([costume # v] of [sprite1 v]) = [9]> then\n        go to x: (0) y: (-16)\n        repeat (40)\n            change x by (-2)\n        end\n        repeat (40)\n            change x by (2)\n        end\n    end\nend\n\n@saw five\n\nwhen flag clicked\npoint in direction (90)\nforever\n    turn right (15) degrees\nend\n\nwhen flag clicked\nforever\n    if <([costume # v] of [sprite1 v]) = [12]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [nextlevel v]\nif <([costume # v] of [sprite1 v]) = [6]> then\n\nwhen flag clicked\n\nwhen I receive [nextlevel v]\nforever\n    if <([costume # v] of [sprite1 v]) = [12]> then\n        go to x: (35) y: (59)\n        repeat (80)\n            change x by (-3)\n        end\n        repeat (80)\n            change x by (3)\n        end\n    end\nend\n\n@saw six\n\nwhen flag clicked\npoint in direction (90)\nforever\n    turn right (15) degrees\nend\n\nwhen flag clicked\nforever\n    if <([costume # v] of [sprite1 v]) = [13]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [nextlevel v]\nif <([costume # v] of [sprite1 v]) = [6]> then\n\nwhen flag clicked\n\nwhen I receive [nextlevel v]\nforever\n    if <([costume # v] of [sprite1 v]) = [13]> then\n        go to x: (196) y: (-83)\n        repeat (105)\n            change x by (-3)\n        end\n        repeat (105)\n            change x by (3)\n        end\n    end\nend\n\n@Sprite2\n\nwhen flag clicked\nshow\ngo to x: (0) y: (0)\nswitch costume to (costume1 v)\n\nwhen I receive [shocky thing v]\nswitch costume to (costume2 v)\nwait (0.2) seconds\nswitch costume to (costume1 v)\n\nwhen I receive [almost start v]\nwait (2) seconds\nhide\n\nwhen flag clicked\nstart sound [Still Standing v]\n\nwhen I receive [almost start v]\nrepeat until <(volume) = [0]>\n    change volume by (-5)\nend\nclear sound effects\n\nwhen flag clicked\nset volume to (100) %\n\nwait (0.3) seconds\n\nwhen I receive [start v]\nstop all sounds\nhide\n\n@Sprite3\n\nwhen flag clicked\npoint in direction (90)\npoint in direction (90)\nset size to (100) %\nset [move v v] to [21]\ngo to [front v] layer\nhide\nwait (0.3) seconds\ngo to x: (-302) y: (0)\nshow\nrepeat until <(move v) < [1]>\n    change x by (move v)\n    change [move v v] by (-0.8)\nend\nset size to (100) %\nset [size z v] to [-6]\nwait (1) seconds\nbroadcast (Rotate v)\nbroadcast (shocky thing v)\nrepeat until <(SIZE z) > [7]>\n    change [size z v] by (0.7)\n    change size by (SIZE z)\nend\nrepeat until <(SIZE z) < [1]>\n    change [size z v] by (-0.7)\n    change size by (SIZE z)\nend\nbroadcast (Breeze v)\nwait (0.8) seconds\nrepeat until <(x position) > [290]>\n    change x by (10)\n    turn right (15) degrees\nend\nhide\nwait (1.5) seconds\nbroadcast (logo v)\n\nwhen I receive [rotate v]\npoint in direction (90)\nrepeat (15)\n    turn right (24) degrees\nend\n\n@Breeze\n\nwhen I start as a clone\ngo to [front v] layer\npoint in direction (pick random (105) to (75))\nset [ghost v] effect to (pick random (50) to (70))\nshow\ngo to x: (-236) y: (pick random (-36) to (29))\nglide (1.6) secs to x: (236) y: (pick random (-48) to (37))\ndelete this clone\n\nwhen I receive [breeze v]\nhide\nrepeat (35)\n    create clone of (_myself_ v)\nend\n\nwait (0.1) seconds\n\n@Sprite6\n\nwhen flag clicked\ngo to x: (0) y: (0)\nswitch costume to (costume1 v)\nset [ghost v] effect to (100)\nshow\n\nwhen I receive [logo v]\nrepeat (5)\n    change [ghost v] effect by (-20)\nend\nwait (5.5) seconds\nhide\nbroadcast (start v)\n\n@Sprite4\n\nshow\n\nwhen flag clicked\ngo to x: (0) y: (0)\ngo to [front v] layer\nhide\n\n