Pink Platformer

Instructions: The game tell you how to play?!!!!

@Stage\n\nwhen flag clicked\nforever\n    play sound [the piano moosic v] until done\nend\n\n@Player\n\ndefine Touch Ground\nrepeat until <not <<touching (level v)?> or <touching ( moving level v)?>>>\n    change y by (1)\n    set [y velocity v] to [0]\nend\n\nwhen flag clicked\nset [level v] to [1]\nset [last level v] to [30]\nReset to Position: [-210] [100]\nshow\nforever\n    Platformer [1] [0.9] [15] [-1] Walljump: [-5] [10]\nend\n\ndefine Platformer (speed) (friction) (jump height) (gravity) Walljump: (x \(walljump\)) (y \(walljump\))\nAnimation\nif <not <touching (ladder v)?>> then\n    if <<<key (right arrow v) pressed?> or <key (b v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n        change [x velocity v] by (speed)\n    end\n    if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(mouse x) < (x position)>>> then\n        change [x velocity v] by ((speed) * (-1))\n    end\n    set [x velocity v] to ((X Velocity) * (friction))\nend\nchange x by (X Velocity)\nif <<touching (level v)?> or <touching ( moving level v)?>> then\n    change y by (1)\n    if <<touching (level v)?> or <touching ( moving level v)?>> then\n        change y by (1)\n        if <<touching (level v)?> or <touching ( moving level v)?>> then\n            change y by (1)\n            if <<touching (level v)?> or <touching ( moving level v)?>> then\n                change y by (1)\n                if <<touching (level v)?> or <touching ( moving level v)?>> then\n                    change y by (1)\n                    if <<touching (level v)?> or <touching ( moving level v)?>> then\n                        change x by ((X Velocity) * (-1))\n                        change y by (-5)\n                        if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n                            if <(X Velocity) > [0]> then\n                                set [x velocity v] to (x \(walljump\))\n                            else\n                                set [x velocity v] to ((x \(walljump\)) * (-1))\n                            end\n                            set [y velocity v] to (y \(walljump\))\n                        else\n                            set [x velocity v] to [0]\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nif <not <<<touching (ladder v)?> or <touching (water v)?>> or <touching (jumping v)?>>> then\n    change [y velocity v] by (gravity)\nend\nchange y by (Y Velocity)\nTouch Ground\nchange y by (-1)\nif <<<touching (level v)?> or <touching ( moving level v)?>> and <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>>> then\n    if <not <touching (ladder v)?>> then\n        set [y velocity v] to (jump height)\n    end\nend\nchange y by (1)\nif <<(x position) > [239]> and <not <(Level) = (Last Level)>>> then\n    change [level v] by (1)\n    Reset to Position: [-210] [100]\nend\nif <(y position) < [-178]> then\n    Reset to Position: [-210] [100]\nend\nDetections\n\ndefine Reset to Position: (x) (y)\nset [x velocity v] to [0]\nset [y velocity v] to [0]\ngo to x: (x) y: (y)\ngo to [front v] layer\nshow\n\ndefine Animation\nif <not <key (any v) pressed?>> then\n    switch costume to (idle v)\nend\nif <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n    switch costume to (right v)\nend\nif <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(mouse x) < (x position)>>> then\n    switch costume to (left v)\nend\nif <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n    switch costume to (up v)\nend\nif <<<key (down arrow v) pressed?> or <key (s v) pressed?>> or <<mouse down?> and <(mouse y) < (y position)>>> then\n    switch costume to (down v)\nend\nif <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>>> then\n    switch costume to (up right v)\nend\nif <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(mouse x) < (x position)>>>> then\n    switch costume to (up left v)\nend\n\ndefine Detections\nif <touching (danger v)?> then\n    Reset to Position: [-210] [100]\nend\nif <touching (water v)?> then\n    change [y velocity v] by (-0.1)\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n        change [y velocity v] by (0.5)\n    end\n    if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n        set [x velocity v] to (0.5)\n    end\n    if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(mouse x) < (x position)>>> then\n        set [x velocity v] to (0.5)\n    end\n    set [y velocity v] to ((Y Velocity) * (0.9))\nend\nif <touching (ladder v)?> then\n    set [x velocity v] to [0]\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n        set [y velocity v] to (20)\n    end\n    if <<<key (down arrow v) pressed?> or <key (s v) pressed?>> or <<mouse down?> and <(mouse y) < (y position)>>> then\n        set [y velocity v] to (-20)\n    end\n    set [y velocity v] to ((Y Velocity) * (0.4))\n    if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n        set [x velocity v] to (2)\n    end\n    if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(mouse x) < (x position)>>> then\n        set [x velocity v] to (-2)\n    end\n    set [y velocity v] to ((Y Velocity) * (0.4))\nend\nif <touching (jumping v)?> then\n    set [y velocity v] to [23]\nend\n\nwhen flag clicked\nset size to (100) %\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nrepeat (50)\n    change size by (-5)\n    change [ghost v] effect by (5)\nend\ndelete this clone\n\nwhen I start as a clone\nif <(costume [number v]) = [5]> then\n    switch costume to (clone2 v)\nelse\n    switch costume to (clone v)\nend\n\n@Level\n\nwhen flag clicked\nshow\nforever\n    clear graphic effects\n    switch costume to (Level)\nend\n\n@ Moving Level\n\nwhen flag clicked\nshow\nforever\n    switch costume to (Level)\n    if <(Level) = [16]> then\n        go to x: (0) y: (0)\n        glide (2) secs to x: (200) y: (0)\n        glide (2) secs to x: (0) y: (0)\n    end\n    if <(Level) = [17]> then\n        switch costume to (17 v)\n    end\nend\n\n@Danger\n\nwhen flag clicked\nshow\nforever\n    switch costume to (Level)\n    if <(Level) = [12]> then\n        go to [front v] layer\n    end\nend\n\n@Water\n\nwhen flag clicked\ngo to [back v] layer\nshow\nforever\n    switch costume to (Level)\nend\n\n@Ladder\n\nwhen flag clicked\nshow\nforever\n    switch costume to (Level)\nend\n\n@Text/Background\n\nwhen flag clicked\nshow\nforever\n    go to [front v] layer\n    switch costume to (Level)\nend\n\n@Thumbnail\n\nwhen flag clicked\ngo to x: (0) y: (0)\nshow\nset [ghost v] effect to (99)\n\n