Planet 2 II A Platformer

Instructions: Welcome to the platformer: "Planet 2"!\n\n-Arrow keys or W,A,S,D to move \n-↓ or "S" to cower space to change color\nGood luck!\n\n-Have fun! All levels are possible! Write in the comments if you need help.\n

@Stage\n\n@Figur1\n\nwhen flag clicked\ngo to x: (0) y: (-200)\ngo to [back v] layer\nforever\n    turn right (0.5) degrees\nend\n\nmove (2) steps\n\n@Apple2\n\nwhen flag clicked\nforever\n    wait (pick random (0.1) to (0.05)) seconds\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\ngo to x: (pick random (-240) to (240)) y: (-230)\nset size to (pick random (20) to (90)) %\nset [color v] effect to (pick random (1) to (15))\nif <(pick random (1) to (3)) = [1]> then\n    switch costume to (apple v)\nend\nif <(pick random (1) to (3)) = [2]> then\n    switch costume to (apple2 v)\nend\nif <(pick random (1) to (3)) = [3]> then\n    switch costume to (apple3 v)\nend\nforever\n    change y by (pick random (2) to (7))\n    if <(y position) > [170]> then\n        delete this clone\n    end\nend\n\n@Figur12\n\ndefine Trampolin\nif <<touching (tranmpolin v)?> or <touching (tranmpolin e v)?>> then\n    set [y v] to [18]\nend\nif <touching (tranmpolin v)?> then\n    broadcast (sprung v)\nend\nif <touching (tranmpolin e v)?> then\n    broadcast (sprung2 v)\nend\n\nwhen flag clicked\nforever\n    if <<key (down arrow v) pressed?> or <key (s v) pressed?>> then\n        repeat until <not <<key (down arrow v) pressed?> or <key (s v) pressed?>>>\n            switch costume to (player2 v)\n        end\n        if <not <<key (down arrow v) pressed?> or <key (s v) pressed?>>> then\n            switch costume to (player v)\n        end\n    end\nend\n\ndefine y\nchange [y v] by (-1)\nrepeat (4)\n    if <touching (platform v)?> then\n        change y by (1)\n    end\nend\nif <touching (platform v)?> 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        if <(x) > [0]> then\n            set [x v] to [-10]\n        else\n            set [x v] to [10]\n        end\n        set [y v] to [12]\n    else\n        set [x v] to [0]\n    end\nend\nchange y by (y)\nif <touching (platform v)?> then\n    if <(y) > [0]> then\n        repeat until <not <touching (platform v)?>>\n            change y by (-1)\n            set [y v] to [0]\n        end\n    else\n        repeat until <not <touching (platform v)?>>\n            change y by (1)\n            set [y v] to [0]\n        end\n    end\nend\nchange y by (-1)\nif <<touching (platform v)?> and <<key (up arrow v) pressed?> or <key (w v) pressed?>>> then\n    set [y v] to [12]\nend\nchange y by (1)\n\nwhen I receive [1 v]\ny\nright or left\nTrampolin\n\nwhen I receive [play v]\nset [y v] to [0]\nset [x v] to [0]\nset [x begin v] to [-200]\nset [y begin v] to [45]\ngo to x: (x begin) y: (y begin)\ngo to [front v] layer\nshow\n\nwhen I receive [works v]\nset [level v] to [1]\nhide\n\nwhen flag clicked\nbroadcast (works v)\nbroadcast (play v)\nnext or die\nset [level v] to [0]\n\nwhen I receive [play v]\nforever\n    broadcast (1 v)\n    broadcast (2 v)\nend\n\ndefine dead\ngo to x: (x begin) y: (y begin)\nGame - Reset x and y\n\ndefine next\ngo to x: (x begin) y: (y begin)\nchange [level v] by (1)\nGame - Reset x and y\n\ndefine next or die\nforever\n    if <<<touching (die3 v)?> or <<touching (die2 v)?> or <touching (die v)?>>> or <touching (wd v)?>> then\n        wait (0.00000000000000000000000000000000000000000000000000000000000000001) seconds\n        dead\n    end\n    if <(x position) > [225]> then\n        broadcast (next v)\n        next\n    end\nend\n\ndefine right or left\nif <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n    change [x v] by (1.5)\n    point in direction (90)\nend\nif <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n    change [x v] by (-1.5)\n    point in direction (-90)\nend\nset [x v] to ((x) * (0.85))\nchange x by (x)\nif <([abs v] of (x) ) < [0.1]> then\n    set [x v] to [0]\nend\n\nwhen flag clicked\nset [color v] effect to (0)\n\nwhen [space v] key pressed\nchange [color v] effect by (50)\n\n\n\n@Apple\n\nwhen flag clicked\nset [color v] effect to (0)\ngo to [back v] layer\nforever\n    go to (figur12 v)\nend\n\nwhen [space v] key pressed\nchange [color v] effect by (50)\n\n@Platform\n\nwhen flag clicked\nswitch costume to (1 v)\ngo to x: (0) y: (0)\nshow\n\nwhen I receive [next v]\nnext costume\n\n@die\n\nwhen I receive [next v]\nnext costume\n\nwhen flag clicked\ngo to [back v] layer\nswitch costume to (1 v)\ngo to x: (0) y: (0)\nshow\n\n@die3\n\nwhen I receive [next v]\nnext costume\n\nwhen flag clicked\ngo to [back v] layer\nswitch costume to (1 v)\nshow\n\nwhen flag clicked\ngo to x: (66) y: (121)\nset [ghost v] effect to (25)\nforever\n    if <<(level) = [2]> or <(level) = [6]>> then\n        repeat (10)\n            change y by (1)\n        end\n        repeat (10)\n            change y by (-1)\n        end\n    end\nend\n\ngo [forward v] (1) layers\n\nwhen flag clicked\nforever\n    if <(level) = [3]> then\n        repeat (10)\n            change y by (1)\n        end\n        repeat (10)\n            change y by (-1)\n        end\n    end\nend\n\nchange [ghost v] effect by (25)\n\nforever\n\n@die2\n\nwhen I receive [next v]\nnext costume\n\nwhen flag clicked\nswitch costume to (1 v)\nshow\n\nwhen flag clicked\ngo to [back v] layer\nforever\n    if <(level) = [3]> then\n        go to x: (49) y: (-3)\n        turn right (17) degrees\n    end\n    if  then\n        go to x: (-113.75) y: (-175)\n        turn right (10) degrees\n    end\n    if  then\n        go to x: (0) y: (-83)\n        turn right (5) degrees\n    end\n    if  then\n        go to x: (230) y: (85)\n        turn right (10) degrees\n    end\nend\n\nwhen I start as a clone\nif  then\n    repeat (10)\n        change [ghost v] effect by (10)\n    end\n    delete this clone\nelse\n    delete this clone\nend\n\ngo to x: (30) y: (-30)\n\nwhen flag clicked\nforever\n    if  then\n        wait (0.2) seconds\n        create clone of (_myself_ v)\n    end\nend\n\n@stars\n\nwhen flag clicked\ngo to [back v] layer\nforever\n    repeat (10)\n        change [brightness v] effect by (1)\n    end\n    repeat (10)\n        change [brightness v] effect by (-1)\n    end\nend\n\nchange size by (1)\n\n@Tranmpolin\n\nwhen flag clicked\nhide\nset drag mode [not draggable v]\n\nwhen flag clicked\nswitch costume to (normal v)\nhide\n\nwhen flag clicked\nforever\n    if <<not <(level) = [8]>> or <<not <(level) = [9]>> or <not <(level) = [5]>>>> then\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    if  then\n        go to x: (0) y: (-100)\n        show\n    end\n    if  then\n        go to x: (-143) y: (-40)\n        show\n    end\n    if  then\n        go to x: (-50) y: (-40)\n        show\n    end\n    if  then\n        go to x: (-79) y: (-40)\n        show\n    end\nend\n\nforever\n\nwhen I receive [sprung v]\nswitch costume to (gebeugt v)\nwait (0.2) seconds\nswitch costume to (normal v)\n\n@Tranmpolin e\n\nwhen flag clicked\nswitch costume to (normal2 v)\nhide\n\nwhen flag clicked\nforever\n    if  then\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    if  then\n        go to x: (-175) y: (20)\n        show\n    end\nend\n\nwhen I receive [sprung2 v]\nswitch costume to (gebeugt2 v)\nwait (0.2) seconds\nswitch costume to (normal2 v)\n\n@Figur2\n\nmove (2) steps\n\nwhen flag clicked\ngo to [back v] layer\nhide\nforever\n    if <(level) = [10]> then\n        show\n    end\nend\n\nwhen [space v] key pressed\nchange [color v] effect by (50)\n\nwhen flag clicked\nforever\n    if <not <(level) = [10]>> then\n        hide\n    end\nend\n\n@Figur3\n\nmove (2) steps\n\nwhen flag clicked\ngo to [back v] layer\nhide\nforever\n    if <(level) = [10]> then\n        show\n    end\nend\n\nwhen flag clicked\nforever\n    if <not <(level) = [10]>> then\n        hide\n    end\nend\n\n@Sprite3\n\nwhen flag clicked\nforever\n    set [uuuuuuunnnnn v] to (((Uuuuuuunnnnn) * (0.8)) + ((((100) + ((20) * <touching (mouse-pointer v)?>)) - (size)) / (4)))\n    change size by (Uuuuuuunnnnn)\n    go to x: (0) y: ((120) + (([sin v] of (Deeeeueuuuuuuux) ) * (10)))\n    point in direction ((90) + (([cos v] of (Deeeeueuuuuuuux) ) * (3)))\n    change [deeeeueuuuuuuux v] by (5)\nend\n\nwhen flag clicked\ngo to [back v] layer\nhide\nforever\n    if <(level) = [10]> then\n        show\n    end\nend\n\nwhen flag clicked\nforever\n    if <not <(level) = [10]>> then\n        hide\n    end\nend\n\n