--Lava dash-- a platformer
@Stage\n\nwhen flag clicked\nswitch backdrop to (dekor 3 v)\n\nwhen I receive [end v]\nset volume to (100) %\nbroadcast (play v)\nswitch backdrop to (dekor 2 v)\nwait (1) seconds\nforever\n    play sound [castle-theme-super-mario-world v] until done\nend\n\nwhen I receive [next v]\nrepeat (100)\n    change volume by (-1)\nend\nstop [other scripts in sprite v]\nstop all sounds\nwait (0.5) seconds\nset volume to (100) %\nbroadcast (2 v)\nforever\n    play sound [;-; v] until done\nend\n\nwhen I receive [next v]\ndelete all of [save scroll x v]\ndelete all of [save x v]\ndelete all of [save y v]\ndelete all of [save scroll y v]\ninsert [0] at (1) of [save scroll x v] \ninsert [-180] at (1) of [save x v] \ninsert [80] at (1) of [save y v] \ninsert [0] at (1) of [save scroll y v] \n\nwhen I receive [oof v]\nstop [other scripts in sprite v]\nchange [☁ boss defeated ... times v] by (1)\n\nwhen flag clicked\nbroadcast (end v)\n\n@Character\n\ndefine Go (direction) (speed)\nif <(ded) = [0]> then\n    point in direction (direction)\n    change x by (speed)\n    set [sthoppp v] to [0]\n    set [slope v] to [0]\n    repeat until <<(slope) = [8]> or <not <touching (platformwer v)?>>>\n        change y by (1)\n        change [slope v] by (1)\n        set [touched? v] to [1]\n    end\n    if <(slope) = [8]> then\n        change x by ((0) - (speed))\n        change y by ((0) - (slope))\n        if <(sthoppp) = [1]> then\n            set [xvel v] to ((scroll xvel) * (-1))\n        end\n    end\n    if <(scrolling mode?) = [1]> then\n        if <(x position) < [-100]> then\n            if <[0] > (scroll x)> then\n                set [sthoppp v] to [1]\n                change [scroll xvel v] by (6)\n                change x by (scroll xvel)\n            end\n        end\n        if <[100] < (x position)> then\n            if <(scroll x) > [-6708]> then\n                set [sthoppp v] to [1]\n                change [scroll xvel v] by (-6)\n                change x by (scroll xvel)\n            end\n        end\n    end\nend\n\nwhen flag clicked\nhide\ngo to x: (0) y: (0)\n\nwhen I receive [play v]\nset [brightness v] effect to (100)\ngo to x: (0) y: (0)\nset [yvel v] to [0]\nshow\nset [xvel v] to [0]\nforever\n    change [yvel v] by (-0.8)\n    change y by (yvel)\n    set [touched? v] to [0]\n    touch ground <(yvel) > [0]>\nend\n\nwhen I receive [play v]\nforever\n    set [idk wats this v] to ((idk wats this) * (0.8))\n    change y by (idk wats this)\n    change [y v] by (idk wats this)\n    if <<key (up arrow v) pressed?> and <(is it falling?) < [3]>> then\n        set [yvel v] to [11]\n    end\n    if <(scrolling mode?) = [1]> then\n        if <[70] < (y position)> then\n            change [idk wats this v] by (-3)\n        end\n        if <(y position) < [-70]> then\n            change [idk wats this v] by (5)\n        end\n        if <(x position) > [239]> then\n            start sound [win v]\n            stop [other scripts in sprite v]\n            hide\n            broadcast (1 v)\n            wait (1) seconds\n            broadcast (next v)\n            go to x: (0) y: (0)\n            wait (1) seconds\n            broadcast (clicc v)\n        end\n    end\nend\n\nwhen I receive [play v]\nforever\n    set rotation style [left-right v]\n    set [xvel v] to [0]\n    set [ded v] to [0]\n    if <key (right arrow v) pressed?> then\n        Go [90] [6]\n        set [xvel v] to [6]\n        point in direction (90)\n    end\n    if <key (left arrow v) pressed?> then\n        Go [90] [-6]\n        set [xvel v] to [-6]\n        point in direction (-90)\n    end\n    if <touching (platformwer v)?> then\n        set [xvel v] to ((xvel) * (-1))\n        change x by (xvel)\n        if <key (up arrow v) pressed?> then\n            set [yvel v] to [10]\n        end\n        set [touched? v] to [1]\n    end\nend\n\ndefine touch ground <up?>\nchange [is it falling? v] by (1)\nrepeat until <not <touching (platformwer v)?>>\n    if <up?> then\n        change y by (-1)\n        set [touched? v] to [1]\n    else\n        change y by (1)\n        set [is it falling? v] to [0]\n        set [touched? v] to [1]\n    end\n    set [yvel v] to [0]\n    set [touched? v] to [1]\n    if <touching color (#009aff)?> then\n        insert (y) at (1) of [save scroll y v] \n        insert (scroll x) at (1) of [save scroll x v] \n        insert (x position) at (1) of [save x v] \n        insert (y position) at (1) of [save y v] \n    end\nend\n\nwhen I receive [play v]\ngo to x: (item (1) of [save x v]) y: (item (1) of [save y v])\nforever\n    change [scroll x v] by (scroll xvel)\nend\n\nwhen I receive [play v]\nset [scroll x v] to (item (1) of [save scroll x v])\nset [y v] to (item (1) of [save scroll y v])\nforever\n    if <(y) > [300]> then\n        start sound [crashed oof v]\n        hide\n        stop [other scripts in sprite v]\n        repeat until <(round (scroll x)) = (item (1) of [save scroll x v])>\n            set [brightness v] effect to (100)\n            set [scroll x v] to (item (1) of [save scroll x v])\n            set [y v] to (item (1) of [save scroll y v])\n            stop [other scripts in sprite v]\n            set [ded v] to [1]\n        end\n        broadcast (restart v)\n    end\n    if <touching (lava v)?> then\n        start sound [crashed oof v]\n        hide\n        stop [other scripts in sprite v]\n        repeat until <(round (scroll x)) = (item (1) of [save scroll x v])>\n            set [brightness v] effect to (100)\n            set [scroll x v] to (item (1) of [save scroll x v])\n            set [y v] to (item (1) of [save scroll y v])\n            stop [other scripts in sprite v]\n            set [ded v] to [1]\n        end\n        broadcast (restart v)\n    end\n    if <touching (weird things v)?> then\n        start sound [crashed oof v]\n        hide\n        stop [other scripts in sprite v]\n        repeat until <(round (scroll x)) = (item (1) of [save scroll x v])>\n            set [brightness v] effect to (100)\n            set [scroll x v] to (item (1) of [save scroll x v])\n            set [y v] to (item (1) of [save scroll y v])\n            stop [other scripts in sprite v]\n            set [ded v] to [1]\n        end\n        broadcast (restart v)\n    end\n    if <touching (weird things2 v)?> then\n        start sound [crashed oof v]\n        hide\n        stop [other scripts in sprite v]\n        repeat until <(round (scroll x)) = (item (1) of [save scroll x v])>\n            set [brightness v] effect to (100)\n            set [scroll x v] to (item (1) of [save scroll x v])\n            set [y v] to (item (1) of [save scroll y v])\n            stop [other scripts in sprite v]\n            set [ded v] to [1]\n        end\n        broadcast (restart v)\n    end\n    if <touching color (#fd2b00)?> then\n        start sound [crashed oof v]\n        hide\n        stop [other scripts in sprite v]\n        repeat until <(round (scroll x)) = (item (1) of [save scroll x v])>\n            set [brightness v] effect to (100)\n            set [scroll x v] to (item (1) of [save scroll x v])\n            set [y v] to (item (1) of [save scroll y v])\n            stop [other scripts in sprite v]\n            set [ded v] to [1]\n        end\n        broadcast (restart v)\n    end\n    if <touching color (#ffc801)?> then\n        start sound [HIT v]\n        broadcast (die you bully >:\) v)\n        set [yvel v] to [9]\n    end\n    if <touching (lava2 v)?> then\n        start sound [crashed oof v]\n        hide\n        stop [other scripts in sprite v]\n        repeat until <(round (scroll x)) = (item (1) of [save scroll x v])>\n            set [brightness v] effect to (100)\n            set [scroll x v] to (item (1) of [save scroll x v])\n            set [y v] to (item (1) of [save scroll y v])\n            stop [other scripts in sprite v]\n            set [ded v] to [1]\n        end\n        broadcast (restart v)\n    end\n    if <touching (weird things3 v)?> then\n        start sound [crashed oof v]\n        hide\n        stop [other scripts in sprite v]\n        repeat until <(round (scroll x)) = (item (1) of [save scroll x v])>\n            set [brightness v] effect to (100)\n            set [scroll x v] to (item (1) of [save scroll x v])\n            set [y v] to (item (1) of [save scroll y v])\n            stop [other scripts in sprite v]\n            set [ded v] to [1]\n        end\n        broadcast (restart v)\n    end\n    if <touching (oof v)?> then\n        start sound [crashed oof v]\n        hide\n        stop [other scripts in sprite v]\n        repeat until <(round (scroll x)) = (item (1) of [save scroll x v])>\n            set [brightness v] effect to (100)\n            set [scroll x v] to (item (1) of [save scroll x v])\n            set [y v] to (item (1) of [save scroll y v])\n            stop [other scripts in sprite v]\n            set [ded v] to [1]\n        end\n        broadcast (restart v)\n    end\n    if <touching (oofh v)?> then\n        start sound [crashed oof v]\n        hide\n        stop [other scripts in sprite v]\n        repeat until <(round (scroll x)) = (item (1) of [save scroll x v])>\n            set [brightness v] effect to (100)\n            set [scroll x v] to (item (1) of [save scroll x v])\n            set [y v] to (item (1) of [save scroll y v])\n            stop [other scripts in sprite v]\n            set [ded v] to [1]\n        end\n        broadcast (restart v)\n    end\nend\n\nwhen I receive [play v]\nset [brightness v] effect to (100)\ngo to x: (item (1) of [save x v]) y: (item (1) of [save y v])\nshow\nset [xvel v] to [0]\nset [yvel v] to [0]\nset size to (110) %\nrepeat (10)\n    change [brightness v] effect by (-10)\n    change size by (-1)\nend\n\nwhen I receive [play v]\nset size to (110) %\nset [brightness v] effect to (100)\n\nwhen I receive [clicc v]\nbroadcast (play v)\n\nwhen I receive [restart v]\nbroadcast (play v)\n\nwhen I receive [play v]\nforever\n    if <<[1] > (yvel)> and <(yvel) > [-1]>> then\n        if <(touched?) = [1]> then\n            set volume to (100) %\n            start sound [ hit v]\n            wait until <not <<[1] > (yvel)> and <(yvel) > [-1]>>>\n        end\n    end\nend\n\nwhen I receive [play v]\nforever\n    if <<key (up arrow v) pressed?> and <(is it falling?) < [3]>> then\n        set volume to (100) %\n        start sound [ hit v]\n        wait until <not <<key (up arrow v) pressed?> and <(is it falling?) < [3]>>>\n    end\nend\n\nwhen flag clicked\ndelete all of [save scroll x v]\ndelete all of [save x v]\ndelete all of [save y v]\ndelete all of [save scroll y v]\ninsert [0] at (1) of [save scroll x v] \ninsert [0] at (1) of [save x v] \ninsert [0] at (1) of [save y v] \ninsert [0] at (1) of [save scroll y v] \n\nwhen I receive [play v]\nforever\n    set [scroll xvel v] to [0]\n    set [nani v] to <(yvel) > [0.1]>\nend\n\nwhen flag clicked\nset [score v] to [0]\n\nwhen I receive [next v]\nset [scrolling mode? v] to [0]\n\nwhen flag clicked\nset [scrolling mode? v] to [1]\n\nwhen I receive [next v]\ndelete all of [save scroll x v]\ndelete all of [save x v]\ndelete all of [save y v]\ndelete all of [save scroll y v]\ninsert [0] at (1) of [save scroll x v] \ninsert [0] at (1) of [save x v] \ninsert [0] at (1) of [save y v] \ninsert [0] at (1) of [save scroll y v] \n\nwhen I receive [oof v]\nset volume to (0) %\n\n@Platformwer\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\nshow\nforever\n    go to x: ((scroll x) + (((costume [number v]) - (1)) * (480))) y: (y)\nend\n\nwhen I receive [play v]\nset [yvel v] to [0]\n\nwhen I receive [end v]\ncreate game\n\ndefine create game\nswitch costume to (1-1 v)\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nswitch costume to (1-1 v)\n\nwhen I receive [next v]\nstop [other scripts in sprite v]\nswitch costume to (boss v)\nshow\ndelete this clone\n\n@Lava\n\nwhen flag clicked\nhide\nforever\n    change [tic v] by (1)\nend\n\ndefine create game\nswitch costume to (kostüm 1 v)\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\n\nwhen I start as a clone\nshow\nforever\n    go to x: ((scroll x) + (((costume [number v]) - (1)) * (480))) y: (((y) - (100)) + (([sin v] of ((tic) * (2.1)) ) * (30)))\n    set [ghost v] effect to (20)\n    if <(x position) > [464]> then\n        hide\n    else\n        show\n    end\n    go to [front v] layer\nend\n\nwhen I receive [end v]\ncreate game\n\n@bachground\n\nwhen flag clicked\nhide\nforever\n    switch costume to (blank v)\n    set size to (500) %\n    switch costume to (kostüm 1 v)\n    go to x: ((scroll x) / (5)) y: ((y) / (5))\nend\n\nwhen I receive [end v]\nshow\n\n@somethings\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\nshow\nforever\n    go to x: ((scroll x) + (((costume [number v]) - (1)) * (480))) y: (y)\n    if <(costume [number v]) = [15]> then\n        if <touching (character v)?> then\n            say [Boss fight -->]\n        else\n            say []\n        end\n    end\nend\n\nwhen I receive [end v]\ncreate game\n\ndefine create game\nswitch costume to (1-1 v)\nwait (1) seconds\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\ncreate clone of (_myself_ v)\nnext costume\n\nwhen I start as a clone\nforever\n    if <<<<<(costume [number v]) = [3]> or <(costume [number v]) = [7]>> or <(costume [number v]) = [13]>> or <(costume [number v]) = [9]>> or <(costume [number v]) = [10]>> then\n        set [brightness v] effect to (-50)\n        if <touching (character v)?> then\n            set [brightness v] effect to (0)\n            start sound [collect v]\n            stop [this script v]\n        end\n    end\nend\n\nwhen I start as a clone\nforever\n    if <<<<(costume [number v]) = [6]> or <(costume [number v]) = [5]>> or <(costume [number v]) = [11]>> or <(costume [number v]) = [14]>> then\n        if <touching (character v)?> then\n            start sound [Jump v]\n            set [yvel v] to [18]\n            repeat (2)\n                change y by (-10)\n            end\n            repeat (2)\n                change y by (-5)\n            end\n            repeat (1)\n                change y by (0)\n            end\n            repeat (2)\n                change y by (2)\n            end\n            repeat (2)\n                change y by (4)\n            end\n            repeat (2)\n                change y by (2)\n            end\n            repeat (1)\n                change y by (0)\n            end\n            repeat (2)\n                change y by (-2)\n            end\n            repeat (2)\n                change y by (-1)\n            end\n            wait until <not <touching (character v)?>>\n        end\n    end\nend\n\n@weird things2\n\nwhen I start as a clone\ngo to [front v] layer\npoint in direction (90)\nif <(costume [number v]) = [4]> then\n    point in direction (0)\nend\nif <(costume [number v]) = [6]> then\n    point in direction (-90)\nend\nforever\n    set rotation style [all around v]\n    go to x: ((scroll x) + (item (costume [number v]) of [thing x v])) y: (((y) + (item (costume [number v]) of [thing y v])) + ())\n    show\n    if <(costume [number v]) = [1]> then\n        turn right (-3) degrees\n    end\n    if <(costume [number v]) = [2]> then\n        turn right (1) degrees\n    end\n    if <(costume [number v]) = [3]> then\n        turn right (-1) degrees\n    end\n    if <(costume [number v]) = [4]> then\n        turn right (1) degrees\n    end\n    if <(costume [number v]) = [5]> then\n        turn right (1) degrees\n    end\n    if <(costume [number v]) = [6]> then\n        turn right (1) degrees\n    end\nend\n\nwhen I receive [end v]\nswitch costume to (1 v)\nrepeat (6)\n    create clone of (_myself_ v)\n    next costume\nend\n\nwhen flag clicked\nhide\n\nreplace item (5) of [thing x v] with [5100]\n\nadd [5350] to [thing x v]\nadd [200] to [thing y v]\n\nwhen I receive [play v]\npoint in direction (90)\nif <(costume [number v]) = [4]> then\n    point in direction (0)\nend\nif <(costume [number v]) = [6]> then\n    point in direction (-90)\nend\n\nreplace item (5) of [thing y v] with [200]\n\ncreate clone of (_myself_ v)\nnext costume\n\n@thing\n\nwhen flag clicked\nhide\ngo to x: (0) y: (0)\n\nwhen I receive [end v]\ngo to [front v] layer\nshow\nwait (0.5) seconds\nrepeat (2)\n    change x by (-1)\nend\nrepeat (2)\n    change x by (-2)\nend\nrepeat (2)\n    change x by (-3)\nend\nrepeat (2)\n    change x by (-5)\nend\nrepeat (2)\n    change x by (-8)\nend\nrepeat (2)\n    change x by (-10)\nend\nrepeat (2)\n    change x by (-15)\nend\nrepeat (2)\n    change x by (-20)\nend\nrepeat (3)\n    change x by (-25)\nend\nrepeat (8)\n    change x by (-35)\nend\nhide\n\nwhen I receive [1 v]\ngo to [front v] layer\ngo to x: (480) y: (0)\nshow\nwait (0) seconds\nrepeat (2)\n    change x by (-1)\nend\nrepeat (2)\n    change x by (-2)\nend\nrepeat (2)\n    change x by (-3)\nend\nrepeat (2)\n    change x by (-5)\nend\nrepeat (2)\n    change x by (-8)\nend\nrepeat (2)\n    change x by (-10)\nend\nrepeat (2)\n    change x by (-15)\nend\nrepeat (2)\n    change x by (-20)\nend\nrepeat (3)\n    change x by (-25)\nend\nrepeat (8)\n    change x by (-35)\nend\nwait (3) seconds\nrepeat (2)\n    change x by (-1)\nend\nrepeat (2)\n    change x by (-2)\nend\nrepeat (2)\n    change x by (-3)\nend\nrepeat (2)\n    change x by (-5)\nend\nrepeat (2)\n    change x by (-8)\nend\nrepeat (2)\n    change x by (-10)\nend\nrepeat (2)\n    change x by (-15)\nend\nrepeat (2)\n    change x by (-20)\nend\nrepeat (3)\n    change x by (-25)\nend\nrepeat (8)\n    change x by (-35)\nend\nhide\n\nwhen flag clicked\nforever\n    go to [front v] layer\nend\n\n@weird things\n\nwhen I start as a clone\nforever\n    set rotation style [don't rotate v]\n    go to x: ((scroll x) + (item (direction) of [lava bois x v])) y: (((y) + (item (direction) of [lava bois y v])) + (y2))\n    show\n    if <(yvel2) > [0]> then\n        switch costume to (kostüm 1 v)\n    else\n        switch costume to (kostüm 2 v)\n    end\nend\n\nwhen I receive [end v]\npoint in direction (1)\nrepeat (10)\n    create clone of (_myself_ v)\n    turn right (1) degrees\nend\n\nwhen flag clicked\nhide\n\nreplace item (7) of [lava bois x v] with [4576]\nreplace item (7) of [lava bois y v] with [-350]\n\nwhen flag clicked\nset [yvel2 v] to [0]\nset [y2 v] to [0]\nforever\n    set [yvel2 v] to [30]\n    set [y2 v] to [0]\n    repeat until <[-50] > (y2)>\n        change [yvel2 v] by (-1)\n        change [y2 v] by (yvel2)\n    end\n    wait (0.5) seconds\nend\n\nadd [-300] to [lava bois y v]\nadd [5508] to [lava bois x v]\n\nwhen I receive [next v]\nhide\nstop [other scripts in sprite v]\ndelete this clone\n\n@BOSS\n\nwhen flag clicked\nhide\nset rotation style [left-right v]\nswitch costume to (1 v)\n\nwhen I receive [next v]\ngo to x: (184) y: (-100)\nset [boss yvel v] to [0]\nshow\nset [boss xvel v] to [0]\nforever\n    change [boss yvel v] by (-0.8)\n    change y by (boss yvel)\n    set [boss touched? v] to [0]\n    touch ground <(boss yvel) > [0]>\nend\n\ndefine touch ground <up?>\nchange [b is boss falling? v] by (1)\nrepeat until <not <touching (platformwer v)?>>\n    if <up?> then\n        change y by (-1)\n        set [boss touched? v] to [1]\n    else\n        change y by (1)\n        set [b is boss falling? v] to [0]\n        set [boss touched? v] to [1]\n    end\n    set [boss yvel v] to [0]\n    set [boss touched? v] to [1]\nend\n\nwhen I receive [next v]\nforever\n    if <touching (platformwer v)?> then\n        set [boss xvel v] to ((boss xvel) * (-1))\n        change x by (boss xvel)\n        set [boss touched? v] to [1]\n    end\nend\n\ndefine Go (direction) (speed)\nset rotation style [left-right v]\npoint in direction (direction)\nchange x by (speed)\nset [boss stop v] to [0]\nset [slope v] to [0]\nrepeat until <<(slope) = [8]> or <not <touching (platformwer v)?>>>\n    change y by (1)\n    change [boss slope v] by (1)\n    set [boss touched? v] to [1]\nend\nif <(boss slope) = [8]> then\n    change x by ((0) - (speed))\n    change y by ((0) - (boss slope))\n    if <(boss stop) = [1]> then\n        set [boss xvel v] to [0]\n    end\nend\n\nGo [90] [-6]\nset [boss xvel v] to [-6]\npoint in direction (-90)\n\nGo [90] [6]\nset [boss xvel v] to [6]\npoint in direction (90)\n\nwhen I receive [2 v]\nset rotation style [left-right v]\nswitch costume to (1 v)\nset [boss hp v] to [50]\nwait (3) seconds\nrepeat until <[25] > (boss hp)>\n    Attack ;-; (pick random (1) to (3))\n    wait (3) seconds\nend\nrepeat until <[0] > (boss hp)>\n    Attack ;-; (pick random (1) to (3))\n    wait (1) seconds\nend\nset rotation style [all around v]\nswitch costume to (oof v)\ngo to x: (184) y: (-100)\nshow\nstop all sounds\nstart sound [Crunch v]\nstop [other scripts in sprite v]\nbroadcast (oof v)\nrepeat (2)\n    change y by (8)\nend\nrepeat (2)\n    change y by (5)\nend\nrepeat (2)\n    change y by (5)\nend\nrepeat (2)\n    change y by (3)\nend\nrepeat (1)\n    change y by (2)\nend\nrepeat (1)\n    change y by (1)\nend\nrepeat (1)\n    change y by (-1)\nend\nrepeat (1)\n    change y by (-2)\nend\nrepeat (2)\n    change y by (-3)\nend\nrepeat (2)\n    change y by (-5)\nend\nrepeat (2)\n    change y by (-8)\nend\nrepeat (2)\n    change y by (-10)\nend\nrepeat (2)\n    change y by (-12)\nend\nrepeat (5)\n    change y by (-15)\nend\nhide\n\ndefine Attack ;-; (type)\nrepeat (5)\n    change x by (3)\n    wait (0.1) seconds\n    change x by (-3)\n    wait (0.1) seconds\nend\nchange x by (1)\nwait (0.1) seconds\nchange x by (-1)\nwait (0.1) seconds\nif <(type) = [1]> then\n    repeat (4)\n        create clone of (weird things3 v)\n        wait (0.4) seconds\n    end\nend\nif <(type) = [2]> then\n    create clone of (oof v)\nend\nif <(type) = [3]> then\n    broadcast (3 v)\nend\n\nwhen I receive [die you bully >:\) v]\nstart sound [Jump v]\nchange [boss hp v] by (-1)\n\nwhen I receive [oof v]\nforever\n    turn right (-5) degrees\n    change x by (-5)\nend\n\nwhen flag clicked\npoint in direction (-90)\n\ngo to x: (178) y: (-98)\n\n@Lava2\n\nwhen flag clicked\nhide\n\nwhen I receive [next v]\nshow\nforever\n    go to x: ((scroll x) + (((costume [number v]) - (1)) * (480))) y: ((([sin v] of ((tic) * (2.1)) ) * (10)) - (50))\n    set [ghost v] effect to (20)\nend\n\n@weird things3\n\nwhen I start as a clone\nswitch costume to (kostüm 3 v)\nshow\ngo to [front v] layer\nset rotation style [don't rotate v]\npoint in direction (1)\nswitch costume to (kostüm 3 v)\nif <(pick random (1) to (2)) = [1]> then\n    go to x: (pick random (240) to (-150)) y: (((item (1) of [wow v]) / (2)) - (170))\n    wait (1) seconds\n    forever\n        if <(direction) > [29]> then\n            switch costume to (kostüm 2 v)\n        else\n            switch costume to (kostüm 1 v)\n        end\n        set rotation style [don't rotate v]\n        set y to (((item (direction) of [wow v]) / (2)) - (200))\n        turn right (1) degrees\n        show\n        if <(direction) = [61]> then\n            delete this clone\n        end\n    end\nelse\n    go to x: (pick random (240) to (-150)) y: ((((item (1) of [wow v]) / (2)) - (170)) * (-1))\n    wait (1) seconds\n    forever\n        set rotation style [don't rotate v]\n        if <(direction) > [29]> then\n            switch costume to (kostüm 1 v)\n        else\n            switch costume to (kostüm 2 v)\n        end\n        set y to ((((item (direction) of [wow v]) / (2)) - (200)) * (-1))\n        turn right (1) degrees\n        show\n        if <(direction) = [61]> then\n            delete this clone\n        end\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen flag clicked\ndelete all of [wow v]\nset [yvel3 v] to [30]\nset [y3 v] to [0]\nrepeat until <[-50] > (y3)>\n    change [yvel3 v] by (-1)\n    change [y3 v] by (yvel3)\n    add (y3) to [wow v]\nend\n\nwhen I start as a clone\nstart sound [Coin v]\n\n@oof\n\nwhen flag clicked\npoint in direction (90)\nhide\n\nwhen I start as a clone\npoint in direction (90)\ngo to x: (((pick random (4) to (-3)) * (46)) + (1)) y: (143)\nshow\nrepeat (2)\n    turn right (5) degrees\nend\nrepeat (3)\n    turn right (4) degrees\nend\nrepeat (3)\n    turn right (3) degrees\nend\nrepeat (3)\n    turn right (2) degrees\nend\nrepeat (3)\n    turn right (2) degrees\nend\nrepeat (3)\n    change y by (-1)\nend\nrepeat (3)\n    change y by (-3)\nend\nrepeat (3)\n    change y by (-5)\nend\nrepeat (3)\n    change y by (-8)\nend\nrepeat (3)\n    change y by (-10)\nend\nrepeat (3)\n    change y by (-15)\nend\nrepeat (3)\n    change y by (-18)\nend\nrepeat (4)\n    change y by (-21)\nend\nrepeat (5)\n    change y by (-25)\nend\nrepeat (6)\n    change y by (-30)\nend\ndelete this clone\n\n@oofh\n\nwhen flag clicked\nhide\npoint in direction (0)\n\nwhen I receive [3 v]\nshow\npoint in direction (0)\ngo to x: (100) y: (145)\nrepeat (2)\n    change y by (-5)\nend\nrepeat (2)\n    change y by (-3)\nend\nrepeat (2)\n    change y by (-2)\nend\nrepeat (2)\n    change y by (-1)\nend\nrepeat (2)\n    turn right (1) degrees\nend\nrepeat (2)\n    turn right (2) degrees\nend\nrepeat (2)\n    turn right (3) degrees\nend\nrepeat (70)\n    turn right (5) degrees\nend\nrepeat (2)\n    change y by (1)\nend\nrepeat (2)\n    change y by (2)\nend\nrepeat (2)\n    change y by (3)\nend\nrepeat (2)\n    change y by (5)\nend\nhide\n\n@TN\n\nwhen flag clicked\ngo to [front v] layer\nset [ghost v] effect to (100)\nshow\ngo to x: (0) y: (0)\nforever\n    go to [front v] layer\nend\n\nwhen I receive [oof v]\nwait (1) seconds\nforever\n    play sound [venxeto - idk the name of the music v] until done\nend\n\nwhen I receive [oof v]\nset [ghost v] effect to (100)\nwait (0.5) seconds\ngo to x: (480) y: (0)\nset [ghost v] effect to (0)\nrepeat (2)\n    change x by (-1)\nend\nrepeat (2)\n    change x by (-2)\nend\nrepeat (2)\n    change x by (-3)\nend\nrepeat (2)\n    change x by (-5)\nend\nrepeat (2)\n    change x by (-8)\nend\nrepeat (2)\n    change x by (-10)\nend\nrepeat (2)\n    change x by (-15)\nend\nrepeat (2)\n    change x by (-20)\nend\nrepeat (3)\n    change x by (-25)\nend\nrepeat (8)\n    change x by (-35)\nend\n\nwhen I receive [oof v]\nforever\n    go to [front v] layer\n    go [backward v] (1) layers\nend\n\n@outro\n\nwhen I receive [oof v]\nswitch costume to (kostüm 1 v)\nset [ghost v] effect to (100)\nwait (2) seconds\ngo to x: (480) y: (0)\nset [ghost v] effect to (25)\nrepeat (2)\n    change x by (-1)\nend\nrepeat (2)\n    change x by (-2)\nend\nrepeat (2)\n    change x by (-3)\nend\nrepeat (2)\n    change x by (-5)\nend\nrepeat (2)\n    change x by (-8)\nend\nrepeat (2)\n    change x by (-10)\nend\nrepeat (2)\n    change x by (-15)\nend\nrepeat (2)\n    change x by (-20)\nend\nrepeat (3)\n    change x by (-25)\nend\nrepeat (5)\n    change x by (-35)\nend\nswitch costume to (kostüm 2 v)\ncreate clone of (_myself_ v)\nswitch costume to (25 v)\ncreate clone of (_myself_ v)\nforever\n    switch costume to (kostüm 1 v)\n    go to [front v] layer\n    go [backward v] (3) layers\nend\n\nwhen flag clicked\nset [ghost v] effect to (100)\nshow\n\nwhen I start as a clone\nset [ghost v] effect to (0)\nforever\n    go to [front v] layer\n    set size to ((([cos v] of ((1) * (1)) ) * (3)) + (90)) %\n    point in direction ((([cos v] of ((1) * (2.1)) ) * (3)) + (90))\n    go to x: (0) y: (0)\nend\n\nwhen flag clicked\nforever\n    change [1 v] by (2.5)\n    go to [front v] layer\nend\n\n@thing2\n\nwhen flag clicked\nhide variable [☁ boss defeated ... times v]\nhide\n\nwhen I receive [oof v]\nwait (0.5) seconds\nshow variable [☁ boss defeated ... times v]\nshow\nforever\n    go to [front v] layer\nend\n\n
PART 2: (By @Game-cloud)\nhttps://scratch.mit.edu/projects/438125534/\n\nViews\n10 views - Done\n50 views - Done\n100 views - Done\n150 views - Done\n200 views - Done\n250 views - Done\n300 views - Done\n350 views - Done\n400 views - Done\n450 views  - Done\n\narrow keys to move\navoid lava\nenjoy\nIdea from @MJM3\nSong: Super mario castle theme\n\n\n\n\n\n\nMy best platformer...