Animals || a platformer 

Instructions: WASD or arrows to move\nYou will learn new moves as you beat more levels\n\n\n

@Stage\n\nwhen flag clicked\nforever\n    play sound [Instance v] until done\nend\n\n@Thumbnail\n\nwhen flag clicked\nset [ghost v] effect to (100)\nforever\n    go to [front v] layer\nend\n\n@Next Level Screen\n\nwhen I receive [next level v]\nshow\nset [ghost v] effect to (0)\ngo to [front v] layer\nforever\n    change [ghost v] effect by (10)\n    wait (.01) seconds\nend\n\nwhen flag clicked\nhide\n\n@Danger\n\nwhen flag clicked\nforever\n    switch costume to (LEVEL)\nend\n\n@Ground\n\nwhen flag clicked\nset [level v] to [1]\nforever\n    switch costume to (LEVEL)\nend\n\nwhen I receive [next level v]\nchange [level v] by (1)\n\n@Player\n\nwhen I start as a clone\nswitch costume to (trail v)\nrepeat (17)\n    change [ghost v] effect by (13)\n    change size by (-7)\nend\ndelete this clone\n\ndefine |Platforming|  Acceleration: (acceleration) Jump Height: (jump height) Gravity: (gravity) Wall jump Strength: (wall jump) Slope: (slope)\nswitch costume to (hitbox v)\nchange [yv v] by ((gravity) * (-1))\nif <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n    change [xv v] by (acceleration)\nend\nif <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n    change [xv v] by ((acceleration) * (-1))\nend\nset [xv v] to ((xv) * (0.9))\nchange x by (xv)\nif <touching (ground v)?> then\n    repeat (slope)\n        if <touching (ground v)?> then\n            change y by (1)\n        end\n    end\n    if <touching (ground v)?> then\n        change y by ((slope) * (-1))\n        repeat until <not <touching (ground v)?>>\n            if <(xv) > [0]> then\n                change x by (-1)\n            else\n                change x by (1)\n            end\n        end\n        if <<key (up arrow v) pressed?> or <key (w v) pressed?>> then\n            set [yv v] to ((jump height) - (2))\n            if <([abs v] of (xv) ) = (xv)> then\n                set [xv v] to ((wall jump) * (-1))\n            else\n                set [xv v] to (wall jump)\n            end\n        else\n            set [xv v] to [0]\n        end\n    end\nend\nchange y by (yv)\nif <touching (ground v)?> then\n    repeat until <not <touching (ground v)?>>\n        if <(yv) > [0]> then\n            change y by (-1)\n        else\n            change y by (1)\n        end\n    end\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <(yv) < [0]>> then\n        if <(animal) = [3]> then\n            set [yv v] to ((jump height) * (1.2))\n        else\n            set [yv v] to (jump height)\n        end\n    else\n        set [yv v] to [0]\n    end\nend\nswitch costume to (animal)\n\nwhen flag clicked\nshow\ngo to x: (-215) y: (0)\npoint in direction (90)\nset rotation style [left-right v]\nset [xv v] to [0]\nset [yv v] to [0]\nforever\n    |Platforming|  Acceleration: [1.1] Jump Height: [13] Gravity: [1] Wall jump Strength: [8] Slope: [12]\nend\n\nwhen flag clicked\nbroadcast (Trail v)\nstop [this script v]\n\nwhen I receive [trail v]\nset [ghost v] effect to (0)\nshow\nforever\n    create clone of (_myself_ v)\nend\n\nwhen flag clicked\nforever\n    if <(x position) > [230]> then\n        broadcast (Next Level v)\n        go to x: (-215) y: (0)\n    end\nend\n\nwhen flag clicked\nset [animal v] to [2]\nforever\n    if <<touching (danger v)?> or <<touching (danger 2 v)?> or <touching (sprite5 v)?>>> then\n        go to x: (-215) y: (0)\n    end\nend\n\nwhen [z v] key pressed\nset [animal v] to [2]\n\nwhen [x v] key pressed\nset [animal v] to [3]\n\nwhen [c v] key pressed\nset [animal v] to [4]\n\nwhen flag clicked\nforever\n    if <<(x position) > [-146]> and <<(animal) = [4]> and <(LEVEL) = [5]>>> then\n        change [level v] by (1)\n        stop [this script v]\n    end\nend\n\n@Lag\n\n@Sprite6\n\nwhen flag clicked\nset size to (100) %\ngo to x: (230) y: (160)\nforever\n    change [size change v] by (9)\n    go to [back v] layer\n    change size by ([cos v] of ((Size change) * (1)) )\nend\n\n@Danger 2\n\nwhen flag clicked\ngo to x: (0) y: (0)\ngo to [back v] layer\nforever\n    repeat (10)\n        change y by (.80)\n    end\n    repeat (10)\n        change y by (-.80)\n    end\nend\n\nwhen flag clicked\nforever\n    switch costume to (LEVEL)\nend\n\nwhen flag clicked\n\n@Sprite1\n\n