Nature Explorer 2 || A platformer (mobile friendly)

Instructions: Wow, thanks for top-loved\n\n\nHey and welcome to part 2 of my most succesful game ever. Double click green flag to start.\nALL LEVELS ARE POSSIBLE \n-.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.\nStory: Welcome to the nature again!\nIn part 2 you are an explorer and you explore the nature. \nBut there are also many dangers. \nAvoid all dangers!  \n-.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.--.\nInstructions:\n-Move with arrows, WASD or mobile controls\n-Avoid Spikes and other dangers\n-HAVE FUN\n-Please love, fave and follow\n

@Stage\n\nwhen flag clicked\nswitch backdrop to (backdrop2 v)\n\nwhen I receive [intro_finished v]\nswitch backdrop to (backdrop1 v)\n\n@Thumbnail\n\nwhen flag clicked\nforever\n    show\n    set [ghost v] effect to (100)\n    go to [front v] layer\nend\n\nwhen flag clicked\n\nbroadcast (Intro_finished v)\n\n@Figur9\n\nwhen flag clicked\nshow\ngo [backward v] (3) layers\nforever\n    switch costume to (LEVEL)\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [intro_finished v]\nshow\n\n@Figur6\n\nwhen I receive [instructions v]\ngo to [front v] layer\ngo [forward v] (1) layers\nshow\nrepeat (10)\n    change size by (12)\nend\nset size to (100) %\nforever\n    if <mouse down?> then\n        repeat (10)\n            change size by (-10)\n        end\n        hide\n        broadcast (instructions_closed v)\n        stop [this script v]\n    end\nend\n\nwhen flag clicked\nhide\nset size to (10) %\n\nwhen flag clicked\n\n@Figur8\n\nwhen flag clicked\nswitch costume to (kostüm12 v)\n\nwhen I receive [start v]\nforever\n    switch costume to (LEVEL)\nend\n\n@nonamedspriteXD\n\nwhen I receive [start v]\n\nwhen flag clicked\nshow\nforever\n    go to x: (mouse x) y: (mouse y)\n    if <touching (figur3 v)?> then\n        go to x: ((mouse x) + (70)) y: ((mouse y) - (20))\n        switch costume to (costume1 v)\n        set [ghost v] effect to (10)\n        go [forward v] (1) layers\n        go to [front v] layer\n        show\n    else\n        if <touching (figur4 v)?> then\n            go to x: ((mouse x) + (70)) y: ((mouse y) - (20))\n            switch costume to (kostüm2 v)\n            set [ghost v] effect to (10)\n            go [forward v] (1) layers\n            go to [front v] layer\n            show\n        else\n            switch costume to (kostüm1 v)\n            set [ghost v] effect to (100)\n        end\n    end\nend\n\nhide\n\nswitch costume to (kostüm1 v)\nset [ghost v] effect to (100)\n\nwhen I receive [intro_finish v]\nshow\n\n@Figur4\n\nwhen flag clicked\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        set size to (70) %\n        switch costume to (kostüm2 v)\n        repeat until <not <touching (mouse-pointer v)?>>\n            turn right (15) degrees\n            wait (0.1) seconds\n            turn left (15) degrees\n            wait (0.3) seconds\n        end\n    else\n        set size to (60) %\n        switch costume to (kostüm1 v)\n    end\nend\n\nwhen I receive [start v]\nhide\n\nwhen this sprite clicked\nhide\nbroadcast (instructions v)\n\nwhen I receive [instructions_closed v]\nshow\n\nwhen flag clicked\nhide\n\nwhen I receive [intro_finished v]\nshow\n\n@Figur3\n\nwhen flag clicked\nwait (0.2) seconds\nforever\n    if <touching (mouse-pointer v)?> then\n        broadcast (start_idk v)\n        set size to (70) %\n        switch costume to (kostüm2 v)\n        repeat until <not <touching (mouse-pointer v)?>>\n            turn right (15) degrees\n            wait (0.1) seconds\n            turn left (15) degrees\n            wait (0.3) seconds\n        end\n    else\n        set size to (60) %\n        switch costume to (kostüm1 v)\n    end\nend\n\nwhen flag clicked\npoint in direction (90)\nshow\ngo to [front v] layer\n\nwhen this sprite clicked\nbroadcast (start v)\nturn right (15) degrees\nrepeat (2)\n    turn right (15) degrees\n    change size by (-30)\n    change [ghost v] effect by (40)\nend\nhide\n\nwhen I receive [instructions v]\nhide\n\nwhen I receive [intro_finished v]\nshow\n\nwhen flag clicked\nhide\n\nwhen I receive [instructions_closed v]\nshow\n\n@trampolins\n\nwhen flag clicked\nforever\n    if <touching (sprite2 v)?> then\n        switch costume to (kostüm2 v)\n        wait (0.1) seconds\n    else\n        switch costume to (kostüm1 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(LEVEL) = [8]> then\n        go to x: (-90) y: (-87)\n        show\n    else\n        hide\n    end\nend\n\nif <(LEVEL) = [9]> then\nelse\nend\n\nshow\nset x to (-70)\n\nwhen I start as a clone\nforever\n    if  then\n        point in direction (90)\n        show\n        set y to ()\n        set x to (40)\n    else\n        hide\n    end\nend\n\nwhen flag clicked\ncreate clone of (_myself_ v)\n\n@shadows\n\nwhen flag clicked\nforever\n    go to [back v] layer\n    switch costume to (LEVEL)\n    set [ghost v] effect to (50)\nend\n\n@moving platforms\n\nwhen flag clicked\nhide\ngo to x: (36) y: (28)\nforever\n    if <(LEVEL) = [6]> then\n        show\n        repeat (30)\n            change x by (5)\n            change y by (4)\n        end\n        repeat (30)\n            change x by (-5)\n            change y by (-4)\n        end\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    if <(LEVEL) = [6]> then\n        show\n    else\n        hide\n    end\nend\n\n@Spikes\n\nwhen flag clicked\nforever\n    if <(LEVEL) = [10]> then\n        set x to (0)\n        repeat (20)\n            change x by (10)\n        end\n        repeat (20)\n            change x by (-10)\n        end\n    else\n        set x to (19)\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nhide\n\nwhen I receive [intro_finished v]\nforever\n    switch costume to (LEVEL)\n    if <not <(LEVEL) = [10]>> then\n        set [ghost v] effect to (0)\n        show\n        set y to (-104)\n    end\nend\n\nwhen I receive [enemy_killed v]\nif <(LEVEL) = [10]> then\n    repeat (6)\n        change y by (-10)\n    end\n    hide\nelse\n    set [ghost v] effect to (0)\nend\n\nset [level v] to [10]\n\nglide (1.7) secs to x: (200) y: (-104)\nglide (1.7) secs to x: (0) y: (-104)\n\n@Sprite2\n\ndefine Platformer physics\nchange [yv v] by (-1)\nif <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(x position) > (mouse x)>>> then\n    change [xv v] by (-1)\nend\nif <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n    change [xv v] by (1)\nend\nset [xv v] to ((Xv) * (0.9))\nchange x by (Xv)\nif <<touching (ground v)?> or <touching (moving platforms v)?>> then\n    change y by (1)\nend\nif <<touching (ground v)?> or <touching (moving platforms v)?>> then\n    change y by (1)\nend\nif <<touching (ground v)?> or <touching (moving platforms v)?>> then\n    change y by (1)\nend\nif <<touching (ground v)?> or <touching (moving platforms v)?>> then\n    change y by (1)\nend\nif <<touching (ground v)?> or <touching (moving platforms v)?>> then\n    change y by (-4)\n    change x by ((Xv) * (-1))\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > ((y position) + (20))>>> then\n        set [yv v] to [15]\n        if <(Xv) > [0]> then\n            set [xv v] to [-10]\n        else\n            set [xv v] to [10]\n        end\n    end\nend\nchange y by (Yv)\nif <<touching (ground v)?> or <touching (moving platforms v)?>> then\n    change y by ((Yv) * (-1))\n    set [yv v] to [0]\nend\nchange y by (-1)\nif <<<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > ((y position) + (20))>>> and <<touching (ground v)?> or <touching (moving platforms v)?>>> then\n    set [yv v] to [15]\nend\nchange y by (1)\nif <<touching (spikes v)?> or <touching (another_danger v)?>> then\n    if <not <(LEVEL) = [10]>> then\n        broadcast (oof v)\n        go to x: (-180) y: (0)\n        set [xv v] to [0]\n        set [yv v] to [0]\n    else\n        if <[-3] > (Yv)> then\n            broadcast (enemy_killed v)\n            wait (0.2) seconds\n        else\n            broadcast (oof v)\n            go to x: (-180) y: (0)\n            set [xv v] to [0]\n            set [yv v] to [0]\n        end\n    end\nend\nif <(y position) < [-180]> then\n    go to x: (-180) y: (0)\n    set [xv v] to [0]\n    set [yv v] to [0]\nend\nif <(x position) > [220]> then\n    broadcast (LEVEL UP! v)\n    change [level v] by (1)\n    hide\n    go to x: (-180) y: (0)\n    wait (0.8) seconds\n    show\nend\nif <touching (trampolins v)?> then\n    set [yv v] to [25]\nend\n\nwhen flag clicked\nset [level v] to [4]\ngo to x: (107) y: (-83)\nswitch costume to (costume1 v)\nforever\n    if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n        point in direction (90)\n    end\n    if <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(x position) > (mouse x)>>>> then\n        point in direction (-90)\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nshow\nset [level v] to [1]\ngo to x: (-180) y: (0)\nforever\n    Platformer physics\nend\n\nwhen flag clicked\nforever\n    set rotation style [left-right v]\n    switch costume to (costume1 v)\n    wait (pick random (2) to (5)) seconds\n    repeat (8)\n        next costume\n        wait (0.001) seconds\n    end\nend\n\npoint towards (mouse-pointer v)\n\npoint in direction (90)\n\n@ground\n\nwhen flag clicked\ngo [forward v] (1) layers\nforever\n    switch costume to (LEVEL)\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [intro_finished v]\nshow\n\n@another_danger\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nwait (1) seconds\nforever\n    if <(LEVEL) = [3]> then\n        show\n        go to x: (90) y: (40)\n    else\n        if <(LEVEL) = [5]> then\n            show\n            go to x: (0) y: (-110)\n            repeat (20)\n                change x by (5)\n            end\n            repeat (20)\n                change x by (-5)\n            end\n        else\n            if <(LEVEL) = [11]> then\n                show\n                go to x: (20) y: (-50)\n            else\n                hide\n            end\n        end\n    end\nend\n\nwhen I start as a clone\nwait (1) seconds\nforever\n    if <(LEVEL) = [3]> then\n        turn right (10) degrees\n        show\n        go to x: (-100) y: (-110)\n    else\n        if <(LEVEL) = [11]> then\n            turn right (10) degrees\n            show\n            go to x: (160) y: (-50)\n        else\n            hide\n        end\n    end\nend\n\nwhen I receive [start v]\ncreate clone of (_myself_ v)\nforever\n    turn right (10) degrees\nend\n\nwhen flag clicked\nforever\n    if <not <<<(LEVEL) = [5]> or <(LEVEL) = [11]>> or <(LEVEL) = [3]>>> then\n        hide\n        set x to (0)\n    end\nend\n\nwait (1) seconds\n\n@Figur2\n\nwhen flag clicked\nrepeat (5)\n    create clone of (_myself_ v)\n    wait (1) seconds\nend\n\nwhen I start as a clone\nforever\n    switch costume to (pick random (1) to (4))\n    set size to (pick random (40) to (70)) %\n    go to [back v] layer\n    set [ghost v] effect to (pick random (5) to (20))\n    if <(pick random (1) to (2)) = [1]> then\n        show\n        go to x: (-200) y: (pick random (20) to (180))\n        repeat (220)\n            change x by (2)\n        end\n        hide\n        wait (pick random (1) to (5)) seconds\n    end\n    if <(pick random (1) to (2)) = [2]> then\n        show\n        go to x: (220) y: (pick random (20) to (180))\n        repeat (110)\n            change x by (-4)\n        end\n        hide\n        wait (pick random (1) to (5)) seconds\n    end\nend\n\n@Intro\n\ndefine Smooth Glide to x (x) y (y) Speed (s)\nrepeat until <<(round (x position)) = (x)> and <(round (y position)) = (y)>>\n    change x by (((x) - (x position)) / (s))\n    change y by (((y) - (y position)) / (s))\nend\ngo to x: (x) y: (y)\n\nwhen flag clicked\nset [end? v] to [0]\nstart sound [Ampyx - LMAO \[Argofox\].mp4 v]\nhide\nset [uservanish v] to [0]\nset [sine v] to [0]\nset [id v] to [0]\ncreate clone of (_myself_ v)\nwait (0.01) seconds\nchange [id v] by (1)\nrepeat (3)\n    switch costume to (slide v)\n    create clone of (_myself_ v)\n    wait (0.1) seconds\n    switch costume to (slide2 v)\n    create clone of (_myself_ v)\n    wait (0.1) seconds\nend\nswitch costume to (background v)\ncreate clone of (_myself_ v)\nwait (0.8) seconds\nchange [id v] by (1)\ncreate clone of (_myself_ v)\nwait (0.1) seconds\nchange [id v] by (1)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nif <(id) = [0]> then\n    go to x: (0) y: (0)\n    point in direction (90)\n    show\n    switch costume to (background v)\n    go to [back v] layer\nend\nif <(id) = [1]> then\n    go to x: (700) y: (0)\n    show\n    point in direction (90)\n    go to [front v] layer\n    Smooth Glide to x [0] y [0] Speed [4]\n    hide\n    delete this clone\nend\nif <(id) = [2]> then\n    set size to (0) %\n    show\n    switch costume to (logo v)\n    go to [front v] layer\n    go to x: (0) y: (35)\n    repeat (16)\n        turn right (22.5) degrees\n        change size by (6.25)\n    end\n    point in direction (90)\n    set size to (100) %\n    forever\n        if <(end?) = [0]> then\n            point in direction ((([cos v] of ((sine) * (18)) ) * (9)) + (90))\n            change [sine v] by (1)\n        else\n            repeat (24)\n                turn right (-16.875) degrees\n                change size by (-4.6875)\n            end\n            broadcast (Intro_finished v)\n            delete this clone\n        end\n    end\nend\nif <(id) = [3]> then\n    point in direction (90)\n    wait (0.5) seconds\n    set [ghost v] effect to (0)\n    switch costume to (username v)\n    go to [front v] layer\n    go [backward v] (1) layers\n    show\n    go to x: (700) y: (0)\n    Smooth Glide to x [0] y [0] Speed [4]\n    forever\n        if <(uservanish) = [0]> then\n            set [ghost v] effect to (0)\n            switch costume to (username v)\n            go to [front v] layer\n            go [backward v] (1) layers\n            show\n            go to x: (0) y: (0)\n        else\n            Smooth Glide to x [0] y [25] Speed [3]\n            Smooth Glide to x [0] y [-100] Speed [3]\n            delete this clone\n        end\n    end\nend\n\nwhen I receive [instructions_closed v]\ndelete this clone\n\nwhen I receive [intro_finished v]\nhide\nrepeat (10)\n    change volume by (-10)\nend\nstop all sounds\n\nwhen flag clicked\nset volume to (100) %\nwait (6) seconds\nset [end? v] to [1]\nset [uservanish v] to [1]\n\n@Sprite3\n\nwhen flag clicked\nforever\n    if <(LEVEL) = [12]> then\n        show\n        point in direction ((([sin v] of ((timer) * (200)) ) * (3)) + (90))\n    else\n        hide\n    end\nend\n\nwhen flag clicked\ngo [backward v] (1) layers\n\n@Sprite1\n\nwhen flag clicked\nhide\n\nwhen I receive [level up! v]\ngo [forward v] (1) layers\ngo to [front v] layer\nset x to (500)\nshow\nrepeat (6)\n    change x by (-80)\nend\nchange x by (-15)\nwait (0.6) seconds\nrepeat (5)\n    change x by (-80)\nend\nhide\n\n@Sprite4\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo [backward v] (15) layers\nhide\nset [ghost v] effect to (30)\n\nwhen I receive [intro_finished v]\nshow\ngo [backward v] (5) layers\nwait (1) seconds\n\nwhen I receive [oof v]\nif <(costume [number v]) = [1]> then\n    play sound [ROBLOX Death Sound.mp3 v] until done\nend\n\nwhen this sprite clicked\nnext costume\nif <(costume [number v]) = [1]> then\n    play sound [TheFatRat - Time Lapse v] until done\nelse\n    if <(costume [number v]) = [2]> then\n        stop all sounds\n    end\nend\n\nplay sound [TheFatRat - Time Lapse v] until done\n\nwhen I receive [intro_finished v]\nshow\ngo [backward v] (5) layers\nwait (1) seconds\nrepeat until <(costume [number v]) = [2]>\n    play sound [TheFatRat - Time Lapse v] until done\nend\n\n@Natureexplorerpart2\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nforever\n    show\n    set [ghost v] effect to (100)\n    go to [front v] layer\nend\n\n