Grass - Platformer

Instructions: Navigate Mr.Smile through a grassland full of dangers such as enemies, lava and spikes\nCharacter\n-Arrows\nEnemies follow your position and can bounce on obstacles, wall jump and bounce on trampolines\nThere are 15 levels\nPlease enjoy\nOutro by FX2COOL, modified slightly by me\n(Hinkik - Time Leaper)\nGame music is from Minecraft\napprox 10 hours\nProblem \n- :)

@Stage\n\n@LevelHIT\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to x: (0) y: (0)\ngo to [back v] layer\nset size to (100) %\nforever\n    play sound [Minecraft-Story-Mode-OST-No-More-Creepers-by-Telltale-Games-ytmp3.com.mp3 v] until done\nend\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [it go downnn!!!!! v]\nstop [other scripts in sprite v]\nhide\nstop [this script v]\n\nwhen flag clicked\nshow\n\n@Player\n\nwhen flag clicked\nforever\n    set [ply v] to (y position)\n    set [plx v] to (x position)\nend\n\nwait (0.05) seconds\nnext costume\n\nwhen [space v] key pressed\n\nhide\n\nwhen flag clicked\ngo to x: (-175) y: (0)\nset size to (20) %\nshow\nset [brightness v] effect to (-5)\nset [level v] to [1]\nset [yv v] to [0]\nset [xv v] to [0]\nset rotation style [all around v]\nforever\n    if <touching (water v)?> then\n        if <not <key (down arrow v) pressed?>> then\n            change [playery v] by (0.2)\n        else\n            change [playery v] by (-0.15)\n        end\n    else\n        change [playery v] by (-0.5)\n    end\n    turn right ((PlayerX) * (2)) degrees\n    if <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > (x position)>>> then\n        change [playerx v] by (0.7)\n    else\n        if <<key (left arrow v) pressed?> or <<mouse down?> and <(mouse x) < (x position)>>> then\n            change [playerx v] by (-0.7)\n        end\n    end\n    set [playerx v] to ((PlayerX) * (0.9))\n    change x by (PlayerX)\n    if <touching (levelhit v)?> then\n        change y by (1)\n        if <touching (levelhit v)?> then\n            change y by (1)\n            if <touching (levelhit v)?> then\n                change y by (1)\n                if <touching (levelhit v)?> then\n                    change y by (1)\n                    if <touching (levelhit v)?> then\n                        change y by (1)\n                        if <touching (levelhit v)?> then\n                            change x by ((PlayerX) * (-1))\n                            change x by (-1)\n                            change y by (-5)\n                            change x by (1)\n                            if <<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>> then\n                                if <(PlayerX) > [0]> then\n                                    set [playerx v] to [-8]\n                                else\n                                    set [playerx v] to [8]\n                                end\n                                if <touching (water v)?> then\n                                    change [playery v] by (2)\n                                else\n                                    set [playery v] to [8]\n                                end\n                            else\n                                set [playerx v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (PlayerY)\n    if <touching (levelhit v)?> then\n        change y by ((PlayerY) * (-1))\n        set [playery v] to [0]\n    end\n    change y by (-1)\n    if <<touching (levelhit v)?> or <touching (boss v)?>> then\n        if <<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>> then\n            set [playery v] to [10]\n        end\n    end\n    if <<(PlayerX) > [2]> or <(PlayerX) < [-2]>> then\n        if <not <<(PlayerY) > [0.7]> or <(PlayerY) < [-0.7]>>> then\n            switch costume to ((Costume) + (3))\n            if <not <(Costume) > [7]>> then\n                change [costume v] by (1)\n            else\n                set [costume v] to [0]\n            end\n        else\n            if <(PlayerY) > [0.5]> then\n                switch costume to (jump v)\n            else\n                if <(PlayerY) < [-0.5]> then\n                    switch costume to (fall v)\n                end\n            end\n        end\n    else\n        switch costume to (stand v)\n    end\n    if <<<<touching (other obstacles v)?> or <touching (lava v)?>> or <<touching (slow mobs v)?> or <key (r v) pressed?>>> or <touching (quick mobs v)?>> then\n        broadcast (pl has died lol v)\n        wait (0.01) seconds\n        start sound [SYS-PO-FALL v]\n        go to x: (-188) y: (-146)\n        go to x: (-175) y: (0)\n        set [playerx v] to [0]\n        set [playery v] to [0]\n        point in direction (90)\n    end\n    if <<touching (bouncies v)?> or <<touching (trampolines2 v)?> or <touching (trampolines3 v)?>>> then\n        set [playery v] to [15]\n    end\n    if <touching (boss v)?> then\n        set [playery v] to [7]\n    end\n    if <touching (portal v)?> then\n        go to x: (-188) y: (-146)\n        go to x: (-232) y: (-37)\n        set [playerx v] to [0]\n        set [playery v] to [0]\n        point in direction (90)\n        broadcast (Transition v) and wait\n        change [level v] by (1)\n    end\n    change y by (1)\nend\n\npoint in direction (-90)\n\npoint in direction (90)\n\nbroadcast (Transition v)\n\nif <touching color (#00cc44)?> then\n    change y by (100)\nend\n\nswitch costume to (hitbox v)\n\nset [playery v] to [8]\n\n\n\n\nnext costume\n\n    switch costume to ((Costume) - (1))\nend\n\n\n\nchange [playery v] by (0.7)\n\nnext costume\n\n\n\nwhen I start as a clone\n\nwhen flag clicked\n\nplay sound [oooooff! v] until done\n\nset size to (20) %\nset [ghost v] effect to (0)\nrepeat (15)\n    turn right (3) degrees\n    change [ghost v] effect by ((100) / (15))\n    change size by (((20) / (15)) * (-1))\nend\ndelete this clone\n\nwhen I receive [pl has died lol v]\nDeath\n\ndefine Death\ncreate clone of (_myself_ v)\n\ndelete this clone\n\nwhen I start as a clone\nclear graphic effects\nrepeat (20)\n    change y by (10)\n    set rotation style [all around v]\n    change [ghost v] effect by (5)\n    turn right (15) degrees\n    if <touching (_edge_ v)?> then\n        delete this clone\n    end\nend\ndelete this clone\n\nwhen I receive [go! v]\n\nwhen flag clicked\nhide\n\nwhen I receive [message3 v]\nshow\n\nwhen I receive [skip v]\ngo to x: (-188) y: (-146)\ngo to x: (-232) y: (-37)\nset [playerx v] to [0]\nset [playery v] to [0]\npoint in direction (90)\nbroadcast (Transition v) and wait\nchange [level v] by (1)\n\nwhen flag clicked\nwait (0.1) seconds\nshow\n\nturn right (-10) degrees\n\nwhen I receive [it go downnn!!!!! v]\nstop [other scripts in sprite v]\nhide\nstop [this script v]\n\nwhen I receive [it go downnn!!!!! v]\n\nwhen flag clicked\nshow\n\n@Lava\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to x: (0) y: (0)\ngo to [back v] layer\nset size to (100) %\npoint in direction (90)\nforever\n    go to x: (0) y: (0)\n    repeat (25)\n        change x by (-2)\n    end\nend\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [it go downnn!!!!! v]\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen flag clicked\nshow\n\n@Portal\n\nwhen I receive [next level v]\nnext costume\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to x: (0) y: (0)\ngo to [back v] layer\ngo to [front v] layer\nset size to (100) %\npoint in direction (90)\nforever\n    turn right (0) degrees\n    set y to (([sin v] of ((timer) * (200)) ) * (6))\n    set x to (([cos v] of ((timer) * (50)) ) * (6))\nend\n\npoint in direction (90)\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [15]> then\n        play sound [Win v] until done\n        stop [this script v]\n    end\nend\n\nwhen I receive [it go downnn!!!!! v]\nstop [other scripts in sprite v]\nhide\nstop [this script v]\n\nwhen flag clicked\nshow\n\n@Transition\n\ndefine Transition\nstart sound [Magic Spell2 v]\nshow\ngo to x: (600) y: (0)\nset [ghost v] effect to (100)\nrepeat (20)\n    go to [front v] layer\n    change x by (((0) - (x position)) / (3))\n    point in direction (((x position) / (6.5)) + (90))\n    change [ghost v] effect by (-7)\nend\nbroadcast (next level v)\nrepeat (20)\n    go to [front v] layer\n    change x by (((-600) - (x position)) / (3))\n    point in direction (((x position) / (6.5)) + (90))\n    change [ghost v] effect by (7)\nend\nhide\n\nset x to (36)\n\nwhen [space v] key pressed\n\nwhen I receive [transition v]\nTransition\n\nwhen flag clicked\nhide\n\nwhen I receive [outro v]\nstop all sounds\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen I receive [it go downnn!!!!! v]\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen flag clicked\nshow\n\n@Other Obstacles\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to x: (0) y: (0)\ngo to [back v] layer\nset size to (100) %\npoint in direction (90)\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [it go downnn!!!!! v]\nstop [other scripts in sprite v]\nhide\nstop [this script v]\n\nwhen flag clicked\nshow\n\n@FrontART\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to x: (0) y: (0)\ngo [forward v] (1) layers\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [it go downnn!!!!! v]\nstop [other scripts in sprite v]\nhide\nstop [this script v]\n\nwhen flag clicked\nshow\n\n@BackART\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to x: (0) y: (0)\ngo to [back v] layer\n\ngo [backward v] (1) layers\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [it go downnn!!!!! v]\nstop [other scripts in sprite v]\nhide\nstop [this script v]\n\nwhen flag clicked\nshow\n\n@Bouncies\n\nwhen flag clicked\nset [level v] to [1]\nforever\n    if <(level) < [6]> then\n        hide\n    else\n        if <(level) = [6]> then\n            show\n            go to x: (-200) y: (-110)\n        else\n            if <(level) = [7]> then\n                show\n                go to x: (0) y: (-110)\n            else\n                if <(level) = [8]> then\n                    show\n                    go to x: (-210) y: (-60)\n                else\n                    if <(level) = [9]> then\n                        show\n                        hide\n                        go to x: (-210) y: (-60)\n                    end\n                end\n            end\n        end\n    end\nend\n\nnext costume\n\nwhen flag clicked\nforever\n    if <touching (player v)?> then\n        switch costume to (costume1 v)\n        start sound [Low Boing v]\n        repeat (4)\n            next costume\n        end\n        switch costume to (costume4 v)\n        repeat (4)\n            switch costume to ((costume [number v]) - (1))\n        end\n    end\n    if <touching (slow mobs v)?> then\n        switch costume to (costume1 v)\n        start sound [Low Boing v]\n        repeat (4)\n            next costume\n        end\n        switch costume to (costume4 v)\n        repeat (4)\n            switch costume to ((costume [number v]) - (1))\n        end\n    end\nend\n\nhide\n\nwhen I receive [it go downnn!!!!! v]\nstop [other scripts in sprite v]\nhide\nstop [this script v]\n\nwhen flag clicked\nshow\n\n@Slow Mobs\n\nwhen flag clicked\nforever\n    set [ply v] to (y position)\n    set [plx v] to (x position)\nend\n\nwhen [space v] key pressed\n\nwhen flag clicked\nhide\n\nbroadcast (Transition v)\n\nif <touching color (#00cc44)?> then\n    change y by (100)\nend\n\nswitch costume to (hitbox v)\n\nset [playery v] to [8]\n\n\n\n\nnext costume\n\n    switch costume to ((Costume) - (1))\nend\n\n\n\nchange [playery v] by (0.7)\n\nnext costume\n\n\n\nwhen I start as a clone\n\nwhen flag clicked\n\nplay sound [oooooff! v] until done\n\nset size to (20) %\nset [ghost v] effect to (0)\nrepeat (15)\n    turn right (3) degrees\n    change [ghost v] effect by ((100) / (15))\n    change size by (((20) / (15)) * (-1))\nend\ndelete this clone\n\nwhen I receive [pl has died lol v]\n\nDeath\n\ndefine Death\ncreate clone of (_myself_ v)\n\ndelete this clone\n\nwhen I start as a clone\n\nclear graphic effects\nrepeat (20)\n    change y by (10)\n    set rotation style [all around v]\n    change [ghost v] effect by (5)\n    turn right (15) degrees\n    if <touching (_edge_ v)?> then\n        delete this clone\n    end\nend\ndelete this clone\n\nwhen I receive [go! v]\nhide\nshow\nhide\n\nwhen flag clicked\nhide\n\nwhen I receive [message3 v]\nshow\n\nwhen I receive [transition v]\ndelete this clone\n\ndefine Placement\nRanPos\nrepeat until <not <touching (levelhit v)?>>\n    RanPos\nend\n\ndefine RanPos\ngo to (random position v)\n\nwhen I start as a clone\ngo to x: (-175) y: (0)\nset size to (20) %\nshow\nset [brightness v] effect to (-5)\nset [level v] to [1]\nset [yv v] to [0]\nset [xv v] to [0]\nset rotation style [left-right v]\nPlacement\nforever\n    if <touching (water v)?> then\n        if <not <key (down arrow v) pressed?>> then\n            change [yv v] by (0.2)\n        else\n            change [yv v] by (-0.15)\n        end\n    else\n        change [yv v] by (-0.5)\n    end\n    if <(right.) = [1]> then\n        change [xv v] by (0.15)\n        point in direction (-90)\n    else\n        if <(left) = [1]> then\n            change [xv v] by (-0.15)\n            point in direction (90)\n        end\n    end\n    set [xv v] to ((Xv) * (0.9))\n    change x by (Xv)\n    if <touching (levelhit v)?> then\n        change y by (1)\n        if <touching (levelhit v)?> then\n            change y by (1)\n            if <touching (levelhit v)?> then\n                change y by (1)\n                if <touching (levelhit v)?> then\n                    change y by (1)\n                    if <touching (levelhit v)?> then\n                        change y by (1)\n                        if <touching (levelhit v)?> then\n                            change x by ((Xv) * (-1))\n                            change x by (-1)\n                            change y by (-5)\n                            change x by (1)\n                            if <(up) = [1]> then\n                                if <(Xv) > [0]> then\n                                    set [xv v] to [-8]\n                                else\n                                    set [xv v] to [8]\n                                end\n                                if <touching (water v)?> then\n                                    change [yv v] by (2)\n                                else\n                                    set [yv v] to [8]\n                                end\n                            else\n                                set [xv v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (Yv)\n    if <touching (levelhit v)?> then\n        change y by ((Yv) * (-1))\n        set [yv v] to [0]\n    end\n    change y by (-1)\n    if <<touching (levelhit v)?> or <touching (boss v)?>> then\n        if <(up) = [1]> then\n            set [yv v] to [10]\n        end\n    end\n    if <<(PlayerX) > [2]> or <(PlayerX) < [-2]>> then\n        if <not <<(PlayerY) > [0.7]> or <(PlayerY) < [-0.7]>>> then\n            switch costume to ((Costume) + (3))\n            if <not <(Costume) > [7]>> then\n                change [costume v] by (1)\n            else\n                set [costume v] to [0]\n            end\n        else\n            if <(PlayerY) > [0.5]> then\n                switch costume to (jump v)\n            else\n                if <(PlayerY) < [-0.5]> then\n                    switch costume to (fall v)\n                end\n            end\n        end\n    else\n        switch costume to (stand v)\n    end\n    if <[me] = [clever]> then\n        broadcast (pl has died lol v)\n        wait (0.01) seconds\n        start sound [oooooff! v]\n        go to x: (-188) y: (-146)\n        go to x: (-175) y: (0)\n        set [xv v] to [0]\n        set [yv v] to [0]\n        point in direction (90)\n    end\n    if <<touching (bouncies v)?> or <<touching (lava v)?> or <touching (other obstacles v)?>>> then\n        set [yv v] to [15]\n    end\n    if <touching (boss v)?> then\n        set [yv v] to [7]\n    end\n    if <[me] = [alive]> then\n        go to x: (-188) y: (-146)\n        go to x: (-232) y: (-37)\n        set [xv v] to [0]\n        set [yv v] to [0]\n        point in direction (90)\n        broadcast (Transition v) and wait\n        change [level v] by (1)\n    end\n    change y by (1)\nend\n\nhide\n\nwhen I receive [next level v]\nif <not <(item (level) of [enemylevels v]) = [0]>> then\n    repeat (item (level) of [enemylevels v])\n        create clone of (_myself_ v)\n    end\nend\n\nrepeat (10)\n\nrepeat (10)\n\nwhen flag clicked\ndelete all of [lavalevels v]\ndelete all of [enemylevels v]\nadd [10] to [lavalevels v]\nadd [11] to [lavalevels v]\nadd [14] to [lavalevels v]\nrepeat (5)\n    add [0] to [enemylevels v]\nend\nadd [1] to [enemylevels v]\nadd [1] to [enemylevels v]\nadd [1] to [enemylevels v]\nadd [1] to [enemylevels v]\nadd [0] to [enemylevels v]\nadd [0] to [enemylevels v]\nadd [1] to [enemylevels v]\nadd [1] to [enemylevels v]\nadd [2] to [enemylevels v]\n\nforever\n    if <(level) > [14]> then\n        broadcast (Outro v)\n        stop [this script v]\n    end\nend\n\nrepeat (30)\n    set [right. v] to [0]\nend\n\nwhen I start as a clone\nforever\n    if <([x position v] of [player v]) > (x position)> then\n        repeat (pick random (15) to (100))\n            set [right. v] to [1]\n            set [left v] to [0]\n        end\n    end\n    if <(x position) > ([x position v] of [player v])> then\n        repeat (pick random (15) to (100))\n            set [right. v] to [0]\n            set [left v] to [1]\n        end\n    end\n    if <([y position v] of [player v]) > (y position)> then\n        if <not <(pick random (1) to (4)) = [1]>> then\n            set [up v] to [1]\n        end\n    else\n        if <not <(pick random (1) to (3)) = [1]>> then\n            set [up v] to [0]\n        else\n            set [up v] to [1]\n        end\n    end\nend\n\nwhen I receive [pl has died lol v]\nPlacement\n\nwhen I receive [message4 v]\n\nwhen I receive [outro v]\nstop all sounds\nstop [other scripts in sprite v]\nstop [this script v]\n\nreplace item (9) of [enemylevels v] with [0]\n\nreplace item (9) of [enemylevels v] with [0]\n\nwhen I receive [it go downnn!!!!! v]\nstop [other scripts in sprite v]\nhide\nstop [this script v]\n\nwhen flag clicked\n\nshow\nshow\n\n@QUICK Mobs\n\nwhen flag clicked\nforever\n    set [ply v] to (y position)\n    set [plx v] to (x position)\nend\n\nwhen [space v] key pressed\n\nwhen flag clicked\nhide\n\nbroadcast (Transition v)\n\nif <touching color (#00cc44)?> then\n    change y by (100)\nend\n\nswitch costume to (hitbox v)\n\nset [playery v] to [8]\n\n\n\n\nnext costume\n\n    switch costume to ((Costume) - (1))\nend\n\n\n\nchange [playery v] by (0.7)\n\nnext costume\n\n\n\nwhen I start as a clone\n\nwhen flag clicked\n\nplay sound [oooooff! v] until done\n\nset size to (20) %\nset [ghost v] effect to (0)\nrepeat (15)\n    turn right (3) degrees\n    change [ghost v] effect by ((100) / (15))\n    change size by (((20) / (15)) * (-1))\nend\ndelete this clone\n\nwhen I receive [pl has died lol v]\n\nDeath\n\ndefine Death\ncreate clone of (_myself_ v)\n\ndelete this clone\n\nwhen I start as a clone\n\nclear graphic effects\nrepeat (20)\n    change y by (10)\n    set rotation style [all around v]\n    change [ghost v] effect by (5)\n    turn right (15) degrees\n    if <touching (_edge_ v)?> then\n        delete this clone\n    end\nend\ndelete this clone\n\nwhen I receive [go! v]\nhide\nshow\nhide\n\nwhen flag clicked\nhide\n\nwhen I receive [message3 v]\nshow\n\nwhen I receive [transition v]\ndelete this clone\n\ndefine Placement\nRanPos\nrepeat until <not <touching (levelhit v)?>>\n    RanPos\nend\n\ndefine RanPos\ngo to (random position v)\n\nwhen I start as a clone\ngo to x: (-175) y: (0)\nswitch costume to (costume10 v)\nset size to (20) %\ngo to [front v] layer\nshow\nset [brightness v] effect to (-5)\nset [level v] to [1]\nset [yv v] to [0]\nset [xv v] to [0]\nset rotation style [left-right v]\nPlacement\nforever\n    if <touching (water v)?> then\n        if <not <key (down arrow v) pressed?>> then\n            change [yv v] by (0.2)\n        else\n            change [yv v] by (-0.15)\n        end\n    else\n        change [yv v] by (-0.5)\n    end\n    if <(right.) = [1]> then\n        change [xv v] by (.5)\n        point in direction (-90)\n    else\n        if <(left) = [1]> then\n            change [xv v] by (-.5)\n            point in direction (90)\n        end\n    end\n    set [xv v] to ((Xv) * (0.9))\n    change x by (Xv)\n    if <touching (levelhit v)?> then\n        change y by (1)\n        if <touching (levelhit v)?> then\n            change y by (1)\n            if <touching (levelhit v)?> then\n                change y by (1)\n                if <touching (levelhit v)?> then\n                    change y by (1)\n                    if <touching (levelhit v)?> then\n                        change y by (1)\n                        if <touching (levelhit v)?> then\n                            change x by ((Xv) * (-1))\n                            change x by (-1)\n                            change y by (-5)\n                            change x by (1)\n                            if <(up) = [1]> then\n                                if <(Xv) > [0]> then\n                                    set [xv v] to [-8]\n                                else\n                                    set [xv v] to [8]\n                                end\n                                if <touching (water v)?> then\n                                    change [yv v] by (2)\n                                else\n                                    set [yv v] to [8]\n                                end\n                            else\n                                set [xv v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (Yv)\n    if <touching (levelhit v)?> then\n        change y by ((Yv) * (-1))\n        set [yv v] to [0]\n    end\n    change y by (-1)\n    if <<touching (levelhit v)?> or <touching (boss v)?>> then\n        if <(up) = [1]> then\n            set [yv v] to [10]\n        end\n    end\n    if <<(PlayerX) > [2]> or <(PlayerX) < [-2]>> then\n        if <not <<(PlayerY) > [0.7]> or <(PlayerY) < [-0.7]>>> then\n            switch costume to ((Costume) + (3))\n            if <not <(Costume) > [7]>> then\n                change [costume v] by (1)\n            else\n                set [costume v] to [0]\n            end\n        else\n            if <(PlayerY) > [0.5]> then\n                switch costume to (jump v)\n            else\n                if <(PlayerY) < [-0.5]> then\n                    switch costume to (fall v)\n                end\n            end\n        end\n    else\n        switch costume to (stand v)\n    end\n    if <[me] = [clever]> then\n        broadcast (pl has died lol v)\n        wait (0.01) seconds\n        start sound [oooooff! v]\n        go to x: (-188) y: (-146)\n        go to x: (-175) y: (0)\n        set [xv v] to [0]\n        set [yv v] to [0]\n        point in direction (90)\n    end\n    if <<touching (bouncies v)?> or <<touching (lava v)?> or <touching (other obstacles v)?>>> then\n        set [yv v] to [15]\n    end\n    if <touching (boss v)?> then\n        set [yv v] to [7]\n    end\n    if <[me] = [alive]> then\n        go to x: (-188) y: (-146)\n        go to x: (-232) y: (-37)\n        set [xv v] to [0]\n        set [yv v] to [0]\n        point in direction (90)\n        broadcast (Transition v) and wait\n        change [level v] by (1)\n    end\n    change y by (1)\nend\n\nhide\n\nwhen I receive [transition v]\nwait (.1) seconds\nrepeat (1)\n    if <(level) = [8]> then\n        repeat (1)\n            create clone of (_myself_ v)\n        end\n    else\n        if <(level) = [11]> then\n            repeat (1)\n                create clone of (_myself_ v)\n            end\n        else\n            if <(level) = [14]> then\n                repeat (1)\n                    create clone of (_myself_ v)\n                end\n            end\n        end\n    end\nend\n\nrepeat (10)\n\nrepeat (10)\n\nwhen flag clicked\ndelete all of [enemylevels2 v]\nadd [1] to [enemylevels2 v]\nrepeat (7)\n    add [0] to [enemylevels2 v]\nend\n\nforever\n    if <(level) > [14]> then\n        broadcast (Outro v)\n        stop [this script v]\n    end\nend\n\nrepeat (30)\n    set [right. v] to [0]\nend\n\nwhen I start as a clone\nforever\n    if <([x position v] of [player v]) > (x position)> then\n        repeat (pick random (3) to (20))\n            set [right. v] to [1]\n            set [left v] to [0]\n        end\n    end\n    if <(x position) > ([x position v] of [player v])> then\n        repeat (pick random (3) to (20))\n            set [right. v] to [0]\n            set [left v] to [1]\n        end\n    end\n    if <([y position v] of [player v]) > (y position)> then\n        if <not <(pick random (1) to (2)) = [1]>> then\n            set [up v] to [1]\n        end\n    else\n        if <not <(pick random (1) to (1)) = [1]>> then\n            set [up v] to [0]\n        else\n            set [up v] to [1]\n        end\n    end\nend\n\nwhen I receive [pl has died lol v]\nPlacement\n\nwhen I receive [message4 v]\nshow\n\nwhen I receive [outro v]\nstop all sounds\nstop [other scripts in sprite v]\nstop [this script v]\n\nadd [10] to [lavalevels v]\nadd [11] to [lavalevels v]\nadd [14] to [lavalevels v]\n\nadd [1] to [enemylevels v]\nadd [1] to [enemylevels v]\nadd [1] to [enemylevels v]\n\ndelete all of [lavalevels v]\n\n\n\nwhen I start as a clone\nPlacement\n\nwhen I receive [it go downnn!!!!! v]\nstop [other scripts in sprite v]\nstop [this script v]\n\nwhen flag clicked\n\nshow\n\n@Assets (Music Included)\n\ndefine Smooth Glide x (x) y (y) size (size) direction (direction) speed (speed)\nrepeat until <<(round (x)) = (round (x position))> and <<(round (y)) = (round (y position))> and <<(round (size)) = (round (size))> and <(round (direction)) = (round (direction))>>>>\n    change x by (((x) - (x position)) / (speed))\n    change y by (((y) - (y position)) / (speed))\n    change size by (((size) - (size)) / (speed))\n    turn right (((direction) - (direction)) / (speed)) degrees\nend\n\nwhen I start as a clone\nif <(clone id) = [m2]> then\n    point in direction (90)\n    go to x: (233) y: (-256)\n    show\n    switch costume to (blank v)\n    set size to (200) %\n    go to [back v] layer\n    switch costume to (mountain2 v)\n    glide (0.2) secs to x: (3000) y: (-100)\n    go to [front v] layer\n    glide (5) secs to x: (-600) y: (-100)\n    delete this clone\nend\n\nwhen I start as a clone\nif <(clone id) = [m1]> then\n    go to x: (233) y: (-256)\n    point in direction (90)\n    show\n    switch costume to (blank v)\n    set size to (200) %\n    go to [back v] layer\n    switch costume to (mountain1 v)\n    glide (0.2) secs to x: (3000) y: (-100)\n    go to [front v] layer\n    glide (5) secs to x: (-600) y: (-100)\n    delete this clone\nend\n\nwhen I start as a clone\nif <(clone id) = [sun]> then\n    go to [back v] layer\n    point in direction (90)\n    show\n    switch costume to (blank v)\n    switch costume to (octa1 v)\n    go to x: (-235) y: (175)\n    set size to (75) %\n    forever\n        turn left (5) degrees\n    end\nend\n\nwhen I start as a clone\nif <(clone id) = [sun2]> then\n    point in direction (90)\n    show\n    switch costume to (blank v)\n    switch costume to (octa2 v)\n    go to x: (-235) y: (175)\n    set size to (75) %\n    forever\n        turn right (5) degrees\n    end\nend\n\nwhen I start as a clone\nif <(clone id) = [logo]> then\n    show\n    set size to (60) %\n    switch costume to (logo v)\n    go to [front v] layer\n    set [ok v] to [0]\n    point in direction (90)\n    set [my variable v] to [0]\n    go to x: (0) y: (0)\n    forever\n        go to [front v] layer\n        go to x: (([tan v] of ((my variable) / (1)) ) * (-30)) y: (0)\n        change [my variable v] by (4)\n        turn right ([cos v] of (Ok) ) degrees\n        set [broad v] to (([abs v] of (x position) ) / (30))\n        change [ok v] by (3)\n    end\nend\n\nwhen I start as a clone\nif <(clone id) = [wind]> then\n    wait (pick random (0) to (1)) seconds\n    point in direction (90)\n    set size to (100) %\n    switch costume to (costume1 v)\n    show\n    set [ghost v] effect to (0)\n    go to [back v] layer\n    go to (random position v)\n    set x to (430)\n    go to x: (430) y: (pick random (150) to (-160))\n    set [x v] to (y position)\n    set [move v] to (pick random (4) to (15))\n    repeat until <<[-230] > (x position)> and <touching (_edge_ v)?>>\n        set size to ((move) * (10)) %\n        change x by (((move) * (-1)) - (Broad))\n        set y to ((([sin v] of ((my variable) / (1)) ) * (50)) + (X))\n        point in direction ((([cos v] of ((my variable) / (1)) ) * (10)) + (90))\n    end\n    delete this clone\nend\n\nwhen I receive [outro v]\nset [clone id v] to [bg]\ncreate clone of (_myself_ v)\nwait (0.0) seconds\nset size to (100) %\nhide\nset [clone id v] to [logo]\ncreate clone of (_myself_ v)\nwait (0.0) seconds\nset [clone id v] to [sun]\ncreate clone of (_myself_ v)\nwait (0.0) seconds\nset [clone id v] to [sun2]\ncreate clone of (_myself_ v)\nforever\n    wait (0.0) seconds\n    set [clone id v] to [m1]\n    create clone of (_myself_ v)\n    wait (0.0) seconds\n    set [clone id v] to [wind]\n    repeat (5)\n        create clone of (_myself_ v)\n    end\n    wait (1) seconds\n    set [clone id v] to [m2]\n    create clone of (_myself_ v)\n    wait (0.0) seconds\n    set [clone id v] to [wind]\n    repeat (5)\n        create clone of (_myself_ v)\n    end\n    wait (1) seconds\n    set [clone id v] to [wind]\n    repeat (5)\n        create clone of (_myself_ v)\n    end\n    wait (0.0) seconds\n    set [clone id v] to [wind]\n    repeat (5)\n        create clone of (_myself_ v)\n    end\nend\n\nwhen I receive [outro v]\nforever\n    play sound [Hinkik - Time Leaper v] until done\nend\n\nwhen I start as a clone\nif <(clone id) = [bg]> then\n    point in direction (90)\n    switch costume to (costume2 v)\n    show\n    forever\n        switch costume to (mountain1 v)\n        set size to ((([sin v] of ((my variable) / (2)) ) * (20)) + (100)) %\n        switch costume to (costume2 v)\n        go to [back v] layer\n    end\nend\n\nrepeat (50)\n\nwhen flag clicked\ngo to x: (0) y: (0)\n\nwhen flag clicked\nwait until <(level) > [15]>\nbroadcast (IT GO DOWNNN!!!!! v)\nbroadcast (outro v)\n\n@Bail\n\nwhen flag clicked\nhide\n\n