Cool Platformer

Instructions: Use the arrow keys or WASD to move\nAvoid the red spikes\nR key to restart\nI'm still working on this\nAND...\nSMASH THAT LOVE AND FAVORITE BUTTON!!!\n\n(Some graphics may be bad because this was created in Scratch 2.0 and in bitmap)

@Stage\n\n@Sprite1\n\nwhen [r v] key pressed\ngo to x: (-196) y: (-17)\n\nwhen I receive [message1 v]\nforever\n    play sound [Nekozilla - Different Heaven v] until done\nend\n\nwhen I receive [message1 v]\nswitch backdrop to (backdrop1 v)\nhide\nwait (0) seconds\ngo to x: (-196) y: (-17)\nshow\nset [x v] to [0]\nset [y v] to [0]\nforever\n    change [y v] by (-1)\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        change [x v] by (-1)\n        turn left (11) degrees\n    end\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        change [x v] by (1)\n        turn right (11) degrees\n    end\n    set [x v] to ((x) * (0.9))\n    change x by (x)\n    if <touching color (#000008)?> then\n        change y by (1)\n    end\n    if <touching color (#000008)?> then\n        change y by (1)\n    end\n    if <touching color (#000008)?> then\n        change y by (1)\n    end\n    if <touching color (#000008)?> then\n        change y by (1)\n    end\n    if <touching color (#000008)?> then\n        change y by (-4)\n        change x by ((x) * (-1))\n        if <<key (up arrow v) pressed?> or <key (w v) pressed?>> then\n            set [y v] to [15]\n            if <([abs v] of (x) ) = (x)> then\n                set [x v] to [-10]\n            else\n                set [x v] to [10]\n            end\n        else\n            set [x v] to [0]\n        end\n    end\n    change y by (y)\n    if <touching color (#000008)?> then\n        change y by ((y) - ((y) * (2)))\n        set [y v] to [0]\n    end\n    change y by (-1)\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <touching color (#000008)?>> then\n        set [y v] to [15]\n    end\n    change y by (1)\n    if <touching color (#ff0000)?> then\n        go to x: (-196) y: (-17)\n    end\n    if <touching color (#00cccc)?> then\n        set [y v] to [20]\n    end\n    if <touching color (#00cc44)?> then\n        switch backdrop to (next backdrop v)\n        go to x: (-196) y: (-119)\n    end\nend\n\nwhen flag clicked\nhide\nswitch backdrop to (intro v)\n\nwhen backdrop switches to [frame2 v]\nchange volume by (-50)\nset voice to (tenor v)::tts\nspeak (join (username) [has won])::tts\nset volume to (150) %\n\nwhen flag clicked\nforever\n    if <(y position) < [-179]> then\n        go to x: (-196) y: (-17)\n    end\nend\n\n@Sprite2\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop10 v]\nshow\ngo to x: (-94) y: (-53)\nrepeat until <(backdrop [name v]) = [backdrop11]>\n    repeat (50)\n        change x by (4.2)\n    end\n    repeat (50)\n        change x by (-4.2)\n    end\nend\nhide\n\nwhen backdrop switches to [backdrop11 v]\nhide\n\n@Sprite3\n\nwhen I receive [message1 v]\nshow\nforever\n    Level\nend\n\nwhen flag clicked\ngo to x: (126) y: (-29)\nhide\n\ndefine Level\nif <(backdrop [name v]) = [backdrop1]> then\n    switch costume to (1 v)\nend\nif <(backdrop [name v]) = [backdrop2]> then\n    switch costume to (2 v)\nend\nif <(backdrop [name v]) = [backdrop3]> then\n    switch costume to (3 v)\nend\nif <(backdrop [name v]) = [backdrop4]> then\n    switch costume to (4 v)\nend\nif <(backdrop [name v]) = [backdrop5]> then\n    switch costume to (5 v)\nend\nif <(backdrop [name v]) = [backdrop6]> then\n    switch costume to (6 v)\nend\nif <(backdrop [name v]) = [backdrop7]> then\n    switch costume to (7 v)\nend\nif <(backdrop [name v]) = [backdrop8]> then\n    switch costume to (8 v)\nend\nif <(backdrop [name v]) = [backdrop9]> then\n    switch costume to (9 v)\nend\nif <(backdrop [name v]) = [backdrop10]> then\n    switch costume to (10 v)\nend\nif <(backdrop [name v]) = [backdrop11]> then\n    switch costume to (11 v)\nend\nif <(backdrop [name v]) = [backdrop12]> then\n    switch costume to (12 v)\nend\nif <(backdrop [name v]) = [Frame2]> then\n    hide\nend\n\n@Sprite4\n\nwhen flag clicked\ngo to x: (0) y: (150)\nshow\ngo to x: (0) y: (150)\npoint in direction (-90)\nMove\nhide\n\ndefine Move\nrepeat (16)\n    move (Move) steps\n    turn left (9) degrees\nend\nglide (0.2) secs to x: (0) y: (0)\nbroadcast (Grow v)\n\nwhen flag clicked\ngo to x: (0) y: (150)\nset [move v] to [0]\nforever\n    change [move v] by (0.3)\nend\n\nwhen flag clicked\nforever\n    wait (0.05) seconds\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nrepeat (10)\n    change size by (-10)\nend\ndelete this clone\n\n@Sprite5\n\ndefine Move\nrepeat (16)\n    move (Move) steps\n    turn left (9) degrees\nend\nglide (0.2) secs to x: (0) y: (0)\n\nwhen flag clicked\ngo to x: (-150) y: (0)\nshow\ngo to x: (-150) y: (0)\npoint in direction (180)\nMove\nhide\n\nwhen flag clicked\ngo to x: (-150) y: (0)\nset [move v] to [0]\nforever\n    change [move v] by (0.3)\nend\n\nwhen flag clicked\nforever\n    wait (0.05) seconds\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nrepeat (10)\n    change size by (-10)\nend\ndelete this clone\n\n@Sprite6\n\ndefine Move\nrepeat (16)\n    move (Move) steps\n    turn left (9) degrees\nend\nglide (0.2) secs to x: (0) y: (0)\n\nwhen flag clicked\ngo to x: (0) y: (-150)\nshow\ngo to x: (0) y: (-150)\npoint in direction (90)\nMove\nhide\n\nwhen flag clicked\ngo to x: (0) y: (-150)\nset [move v] to [0]\nforever\n    change [move v] by (0.3)\nend\n\nwhen flag clicked\nforever\n    wait (0.05) seconds\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nrepeat (10)\n    change size by (-10)\nend\ndelete this clone\n\n@Sprite7\n\ndefine Move\nrepeat (16)\n    move (Move) steps\n    turn left (9) degrees\nend\nglide (0.2) secs to x: (0) y: (0)\n\nwhen flag clicked\ngo to x: (150) y: (0)\nshow\ngo to x: (150) y: (0)\npoint in direction (0)\nMove\nhide\n\nwhen flag clicked\ngo to x: (150) y: (0)\nset [move v] to [0]\nforever\n    change [move v] by (0.3)\nend\n\nwhen I start as a clone\nrepeat (10)\n    change size by (-10)\nend\ndelete this clone\n\nwhen flag clicked\nforever\n    wait (0.05) seconds\n    create clone of (_myself_ v)\nend\n\n@Sprite9\n\nwhen flag clicked\ngo to [back v] layer\nset [ghost v] effect to (0)\nset size to (100) %\nhide\n\nwhen I receive [1 v]\nshow\nrepeat (3)\n    show\n    repeat (10)\n        change size by (10)\n        change [ghost v] effect by (10)\n    end\n    set [ghost v] effect to (0)\n    set size to (100) %\n    hide\n    wait (1.3) seconds\nend\n\n@Sprite10\n\nwhen flag clicked\nset [ghost v] effect to (0)\nset volume to (100) %\nstart sound [JPB - High \[NCS Release\] v]\ngo to x: (0) y: (0)\npoint in direction (90)\nset size to (70) %\ngo to [back v] layer\nhide\n\nwhen flag clicked\nset [ghost v] effect to (0)\nset size to (20) %\n\nwhen I receive [grow v]\nwait (0.3) seconds\nshow\nset [ghost v] effect to (100)\nrepeat (10)\n    wait (0.01) seconds\n    change [ghost v] effect by (-10)\nend\nset [ghost v] effect to (0)\nwait (0.58) seconds\nbroadcast (1 v)\nrepeat (8)\n    change size by (12.5)\nend\nrepeat (20)\n    change size by (-5)\nend\nwait (0.67) seconds\nrepeat (8)\n    change size by (12.5)\nend\nrepeat (20)\n    change size by (-5)\nend\nwait (0.67) seconds\nrepeat (8)\n    change size by (12.5)\nend\nrepeat (20)\n    change size by (-5)\nend\nspin out\nrepeat (20)\n    change volume by (-5)\nend\nstop all sounds\nwait (0.5) seconds\nbroadcast (message1 v)\n\nshow\n\ndefine spin out\nrepeat (10)\n    turn right ((100) - ((direction) * (0.2))) degrees\n    change size by ((0.1) - ((size) / (5)))\n    change [ghost v] effect by (10)\nend\nhide\npoint in direction (90)\n\n@Sprite8\n\nwhen flag clicked\ngo to x: (0) y: (0)\nset size to (25) %\n\nwhen flag clicked\nhide\n\nwhen I receive [grow v]\nshow\nset [ghost v] effect to (0)\nrepeat (15)\n    change size by (35)\nend\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\n