Snow platformer

Instructions: Snow Platformer by -Drow\n\n➤ 11 Levels\n➤Wasd , Arrow key and mobile

@Stage\n\nwhen flag clicked\nswitch backdrop to (arrière-plan1 v)\n\nwhen I receive [play v]\nswitch backdrop to (arrière-plan2 v)\n\nwhen flag clicked\nstart sound [-Drow v]\n\nwhen I receive [play v]\nstop all sounds\nplay sound [stormy-Guy v] until done\nstart sound [stormy-Guy v]\n\n@Particle\n\nwhen flag clicked\nshow\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\ngo to [back v] layer\nswitch costume to (pick random (0) to (3))\nset [ghost v] effect to (pick random (20) to (100))\nset [brightness v] effect to (pick random (-3) to (3))\ngo to x: (pick random (-240) to (240)) y: (180)\nforever\n    change [ghost v] effect by ((pick random (-1) to (1)) * (2))\n    change [brightness v] effect by ((pick random (-1) to (1)) * (2))\n    change y by (((2) + (costume [number v])) * ((costume [number v]) * (-1)))\n    if <(y position) < [-178]> then\n        delete this clone\n    end\nend\n\nchange [ghost v] effect by ((pick random (-1) to (1)) * (2))\n\nwhen I receive [play v]\nhide\n\n@Sprite1\n\nwhen flag clicked\nset [school v] to [1]\nshow\nforever\n    if <(school) = [1]> then\n        set [ghost v] effect to (0)\n        point in direction ((90) + (([cos v] of ((timer) * (100)) ) * (1)))\n        go to x: (0) y: ((90) + (([cos v] of ((timer) * (100)) ) * (5)))\n    else\n        change [ghost v] effect by (25)\n    end\nend\n\nwhen I receive [play v]\nhide\n\n@Sprite2\n\nwhen flag clicked\ngo to x: (0) y: (0)\nset [school v] to [1]\nshow\nforever\n    if <(school) = [1]> then\n        set [ghost v] effect to (0)\n        point in direction ((90) + (([cos v] of ((timer) * (100)) ) * (1)))\n        go to x: (0) y: ((90) + (([cos v] of ((timer) * (100)) ) * (5)))\n        wait (0.1) seconds\n    else\n        change [ghost v] effect by (25)\n    end\nend\n\nwhen this sprite clicked\nwait (0.1) seconds\nbroadcast (play v)\n\nwhen I receive [play v]\nhide\n\n@Sprite3\n\nwhen flag clicked\nhide\n\nwhen I receive [end v]\nshow\n\n@gg\n\nwhen I receive [..:.:.. v]\nnext costume\nset [yv v] to [0]\nset [xv v] to [0]\ngo to x: (-200) y: (0)\nset [ghost v] effect to (0)\n\nwhen [space v] key pressed\nset [yv v] to [0]\nset [xv v] to [0]\ngo to x: (-200) y: (0)\nset [ghost v] effect to (0)\n\nwhen I start as a clone\nswitch costume to (player -drow v)\nrepeat (20)\n    change size by (-4)\n    change [ghost v] effect by (5)\nend\ndelete this clone\n\nwhen flag clicked\n\ndefine if touching\nif <touching (spikes v)?> then\n    set [ghost v] effect to (100)\n    start sound [whoop v]\n    set [yv v] to [0]\n    set [xv v] to [0]\n    set size to (100) %\n    set [ghost v] effect to (0)\n    go to x: (-200) y: (0)\n    point in direction (90)\nend\nif <touching (1 v)?> then\n    set [yv v] to [20]\nend\nif <touching (speed v)?> then\n    set [xv v] to [21]\nend\n\nwhen flag clicked\nswitch costume to (costume1 v)\n\nwhen I receive [haha* v]\ngo to x: (-200) y: (0)\n\nwhen flag clicked\n\nwhen flag clicked\nhide\n\nwhen I receive [play v]\npoint in direction (90)\nset [xvel v] to [0]\nset [yvel v] to [0]\nforever\n    set size to (size) %\n    set [size v] to [100]\n    show\n    set rotation style [all around v]\n    if <<<mouse down?> and <(x position) > (mouse x)>> or <<key (a v) pressed?> or <key (left arrow v) pressed?>>> then\n        change [xv v] by (-1)\n    end\n    if <<<mouse down?> and <(x position) < (mouse x)>> or <<key (d v) pressed?> or <key (right arrow v) pressed?>>> then\n        change [xv v] by (1)\n    end\n    set [xv v] to ((Xv) * (0.9))\n    change x by (Xv)\n    if <touching (levels -drow v)?> then\n        change y by (1)\n        if <touching (levels -drow v)?> then\n            change y by (1)\n            if <touching (levels -drow v)?> then\n                change y by (1)\n                if <touching (levels -drow v)?> then\n                    change y by (1)\n                    if <touching (levels -drow v)?> then\n                        change y by (1)\n                        if <touching (levels -drow v)?> then\n                            change y by (-5)\n                            change x by ((Xv) * (-1))\n                            if <<<mouse down?> and <(y position) < (mouse y)>> or <<key (w v) pressed?> or <key (up arrow v) pressed?>>> then\n                                if <(Xv) > [0]> then\n                                    set [xv v] to [-7]\n                                else\n                                    set [xv v] to [7]\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 y by (-1)\n    if <touching (levels -drow v)?> then\n        if <<<mouse down?> and <(y position) < (mouse y)>> or <<key (w v) pressed?> or <key (up arrow v) pressed?>>> then\n            set [yv v] to [17]\n        end\n    end\n    change y by (1)\n    change [yv v] by (-1)\n    set [yv v] to ((Yv) * (0.99))\n    change y by (Yv)\n    if <touching (levels -drow v)?> then\n        change y by ((Yv) * (-1))\n        set [yv v] to [0]\n    end\n    hide variable [xv v]\n    if <(x position) > [230]> then\n        broadcast (..:.:.. v)\n    end\n    if <(y position) < [-170]> then\n        go to x: (-200) y: (0)\n    end\n    if touching\nend\n\nwhen I receive [play v]\ngo to x: (-200) y: (0)\nforever\n    if <touching (level meduim v)?> then\n        broadcast (Bonce 1 v)\n        if <(Yv) > [0]> then\n            set [yv v] to [-20]\n        else\n            set [yv v] to [20]\n        end\n    end\nend\n\nwhen I receive [play v]\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I receive [play v]\nforever\n    if <touching (bloob v)?> then\n        broadcast (Bonce 1 v)\n        broadcast (haha* v)\n    end\nend\n\nwhen I receive [play v]\nforever\n    if <touching (bounce v)?> then\n        change [yv v] by (10)\n    end\nend\n\n@Levels -drow\n\nwhen I receive [fin v]\nforever\n    hide\nend\n\nwhen I receive [..:.:.. v]\nnext costume\n\nwhen flag clicked\nswitch costume to (10 v)\n\nwhen flag clicked\nhide\n\nwhen I receive [play v]\nshow\nforever\n    go to [front v] layer\nend\n\n@bloob\n\nwhen I receive [..:.:.. v]\nnext costume\n\nwhen flag clicked\nhide\n\nwhen I receive [play v]\nshow\nswitch costume to (costume23 v)\n\nwhen I receive [fin v]\nforever\n    hide\nend\n\nwhen I receive [play v]\nforever\n    if <(costume [number v]) = [7]> then\n        broadcast (bloofdofkdofd v)\n        wait (0.2) seconds\n        stop [this script v]\n    end\nend\n\nwhen I receive [play v]\nforever\n    if <(costume [number v]) = [8]> then\n        broadcast (arreter bloodbloid v)\n        wait (0.2) seconds\n        stop [this script v]\n    end\nend\n\n@Sprite4\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nforever\n    go to [front v] layer\nend\n\nhide\n\n@snow\n\nwhen flag clicked\nset [tick v] to [0]\nset [fade v] to [0.7]\nforever\n    create clone of (_myself_ v)\n    wait (fade) seconds\n    change [tick v] by (4)\n    if <[0] < (fade)> then\n        change [fade v] by (-0.1)\n    end\nend\n\nwhen I start as a clone\nswitch costume to (big v)\nset size to (pick random (30) to (130)) %\nswitch costume to (snow v)\nset [me v] to (pick random (30) to (-30))\nset [ghost v] effect to (pick random (0) to (70))\ngo to x: (pick random (-170) to (90)) y: (135)\npoint in direction (pick random (170) to (150))\nrepeat until <<[140] < (x position)> or <(y position) < [-100]>>\n    move ((0.5) + ((size) * (0.01))) steps\n    turn right ((1) * ([sin v] of ((2) * ((tick) + (me))) )) degrees\nend\ndelete this clone\n\n@Sprite14\n\nwhen I receive [bloofdofkdofd v]\nforever\n    point in direction ((90) + (([sin v] of ((timer) * (300)) ) * (100)))\nend\n\ngo to [front v] layer\n\nwhen I receive [bloofdofkdofd v]\nshow\ngo to x: (-135) y: (-92)\nset size to (100) %\n\ngo [forward v] (1000) layers\n\nwhen I receive [bloofdofkdofd v]\nwait (0.2) seconds\ngo to [back v] layer\nwait (1) seconds\ngo to [back v] layer\n\nwhen flag clicked\nhide\nforever\n    set drag mode [not draggable v]\nend\n\nif <(Level) = [3]> then\n\nwhen I receive [arreter bloodbloid v]\nhide\n\n