Cool Super Epic Awesome Platformer

Instructions: ! Disclaimer ! DO NOT under any circumstances, remix this project without changing anything.\n\nRated K for players 7+\n\n-Instructions-                                                                 \nClick the flag a couple hundred times.\n\nWSAD or arrow keys to move.\n\nIf the project lags or doesn't load, try this link: \nhttps://forkphorus.github.io/#442952285\n\nUpdate 6/7/2021: Added names for the bosses\n\nI know there are a lot of bugs, but I'm probably never going to fix them.. So just don't jump over the checkpoints..\n\nAll ads will be deleted btw\n\nUploading this was a nightmare... Let's just leave it at \nthat..

@Stage\n\nwhen flag clicked\nset volume to (0) %\nswitch backdrop to (backdrop2 v)\n\nwhen I receive [everyone hide v]\nswitch backdrop to (backdrop3 v)\n\nwhen I receive [waaakkkeee uuuupppp v]\nswitch backdrop to (backdrop4 v)\n\nwhen I receive [let's get set up v]\nforever\n    play sound [Deep_Woods v] until done\nend\n\nwhen I receive [let's get set up v]\nrepeat (10)\n    change volume by (10)\nend\n\nwhen I receive [game over v]\nstop all sounds\nstop [other scripts in sprite v]\n\nwhen I receive [retrylvl1 v]\nforever\n    play sound [Deep_Woods v] until done\nend\n\nwhen I receive [retryhalfway v]\nset volume to (100) %\nforever\n    play sound [Deep_Woods v] until done\nend\n\nwhen I receive [stop the music v]\nrepeat (10)\n    change volume by (-10)\nend\nstop [other scripts in sprite v]\nstop all sounds\n\nwhen I receive [fight start v]\nset volume to (100) %\nforever\n    play sound [Boss 1 and 2 v] until done\nend\n\nwhen I receive [other final blow stuff v]\nstop all sounds\nstop [other scripts in sprite v]\n\nwhen I receive [opened v]\nset volume to (100) %\nforever\n    play sound [Deep_Woods v] until done\nend\n\nwhen I receive [enter caves v]\nstop all sounds\nstop [other scripts in sprite v]\nforever\n    play sound [Spooky music v] until done\nend\n\nwhen I receive [retrylvl2 v]\nset volume to (100) %\nforever\n    play sound [Spooky music v] until done\nend\n\nwhen I receive [fight start2 v]\nset volume to (100) %\nforever\n    play sound [Boss 1 and 2 v] until done\nend\n\nwhen I receive [retryhalfway2 v]\nset volume to (100) %\nforever\n    play sound [Spooky music v] until done\nend\n\nwhen I receive [other final blow stuff2 v]\nstop all sounds\nstop [other scripts in sprite v]\n\nwhen I receive [opened 2 v]\nset volume to (100) %\nforever\n    play sound [Spooky music v] until done\nend\n\nwhen I receive [enter volcano world v]\nstop all sounds\nstop [other scripts in sprite v]\nforever\n    play sound [Bowsers Castle 2 v] until done\nend\n\nwhen I receive [retrylvl3 v]\nset volume to (100) %\nforever\n    play sound [Bowsers Castle 2 v] until done\nend\n\nwhen I receive [retryhalfway3 v]\nset volume to (100) %\nforever\n    play sound [Bowsers Castle 2 v] until done\nend\n\nwhen I receive [fight start 3 v]\nset volume to (100) %\nplay sound [Boss 3 v] until done\nforever\n    play sound [Boss 3-2 v] until done\nend\n\nwhen I receive [other final blow stuff 3 v]\nstop all sounds\nstop [other scripts in sprite v]\nset volume to (100) %\nstart sound [mallon v]\n\n@Logo\n\nwhen flag clicked\nshow\ngo to x: (0) y: (-338)\nSmooth glide [0] [0] [7]\nwait (.2) seconds\nbroadcast (A wild play button appears v)\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen flag clicked\nset volume to (100) %\nforever\n    play sound [SONG v] until done\nend\n\nwhen I receive [start game v]\nrepeat (100)\n    change volume by (-1)\nend\nstop all sounds\nstop [other scripts in sprite v]\nhide\n\nwhen flag clicked\nforever\n    point in direction ((([cos v] of (Blaring shnargen) ) * (2)) + (90))\n    change [blaring shnargen v] by (5)\nend\n\n@Play button\n\nwhen flag clicked\nset size to (100) %\ngo to x: (-130) y: (-220)\nhide\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [a wild play button appears v]\nshow\nSmooth glide [-130] [-92] [7]\nbroadcast (it's okay now v)\nwait until <touching (mouse-pointer v)?>\nforever\n    if <touching (mouse-pointer v)?> then\n        set size to (105) %\n        wait (0) seconds\n        set size to (107) %\n        wait (0) seconds\n        set size to (108) %\n        wait until <not <touching (mouse-pointer v)?>>\n    else\n        set size to (105) %\n        wait (0) seconds\n        set size to (101) %\n        wait (0) seconds\n        wait until <touching (mouse-pointer v)?>\n    end\nend\n\nwhen I receive [it's okay now v]\nforever\n    if <<touching (mouse-pointer v)?> and <mouse down?>> then\n        broadcast (Start game v)\n        stop [this script v]\n    end\nend\n\nwhen I receive [everyone hide v]\nstop [other scripts in sprite v]\nhide\n\nwhen flag clicked\nforever\n    point in direction ((([cos v] of (Blaring shnargen) ) * (2)) + (90))\n    change [blaring shnargen v] by (5)\nend\n\n@Ebic cursor\n\nwhen flag clicked\nshow\nforever\n    go to (mouse-pointer v)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nrepeat (10)\n    change [ghost v] effect by (10)\nend\ndelete this clone\n\nwhen I receive [everyone hide v]\nstop [other scripts in sprite v]\nhide\n\n@Fade\n\nwhen flag clicked\nhide\nswitch costume to (costume1 v)\nwait (.1) seconds\ngo to [front v] layer\n\nwhen I receive [start game v]\nshow\nset [ghost v] effect to (100)\nrepeat (100)\n    change [ghost v] effect by (-1)\nend\nhide\nbroadcast (EVERYONE HIDE v)\nwait (2) seconds\nbroadcast (The beginnning v)\n\nwhen I receive [waaakkkeee uuuupppp v]\nshow\nwait (2) seconds\nrepeat (50)\n    change [ghost v] effect by (1)\nend\nrepeat (5)\n    change [ghost v] effect by (-10)\nend\nwait (1.5) seconds\nrepeat (80)\n    change [ghost v] effect by (1)\nend\nrepeat (8)\n    change [ghost v] effect by (-10)\nend\nwait (1) seconds\nrepeat (100)\n    change [ghost v] effect by (1)\nend\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\nwait (1) seconds\nbroadcast (Grandpa cube v)\n\nwhen I receive [start it up! v]\nshow\nset [ghost v] effect to (100)\nrepeat (100)\n    change [ghost v] effect by (-1)\nend\nbroadcast (Let's get set up v)\nwait (.5) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\nbroadcast (Tutorial1 v)\n\nwhen I receive [fading v]\nshow\nbroadcast (Let's get set up v)\nwait (.5) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\nbroadcast (Tutorial1 v)\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nbroadcast (fading v)\n\nwhen I receive [final cutscene v]\nshow\nset [ghost v] effect to (100)\nrepeat (100)\n    change [ghost v] effect by (-1)\nend\nbroadcast (Now play it v)\nrepeat (100)\n    change [ghost v] effect by (1)\nend\nhide\nbroadcast (frame1 v)\n\nwhen I receive [fade out v]\nshow\nset [ghost v] effect to (100)\nrepeat (100)\n    change [ghost v] effect by (-1)\nend\nstop all sounds\nswitch costume to (costume1 \(2\) v)\nplay sound [Thei end v] until done\nswitch costume to (1 \(2\) v)\nforever\n    play sound [Megalovania v] until done\nend\n\n@Wise old cube\n\nwhen flag clicked\nswitch costume to (costume1 v)\nset size to (150) %\npoint in direction (60)\nhide\n\nwhen I receive [waaakkkeee uuuupppp v]\nshow\ngo to x: (-25) y: (53)\nforever\n    change x by (([cos v] of (blah) ) * (-.5))\n    change y by (([cos v] of (blah) ) * (.5))\n    change [blah v] by (7)\nend\n\nwhen I receive [okay... now i'm getting up v]\nwait (.5) seconds\nhide\nstop [other scripts in sprite v]\n\nwhen I receive [granpatalk3 v]\ngo to x: (-291) y: (30)\npoint in direction (90)\nset size to (120) %\nwait (1) seconds\nbroadcast (I have way to many messages v)\nshow\nSmooth glide [-149] [30] [7]\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [i have way to many messages v]\nforever\n    change y by (([cos v] of (blah) ) * (.5))\n    change [blah v] by (7)\nend\n\nwhen I receive [explain granpa v]\nwait (.5) seconds\nset size to (170) %\ngo to x: (0) y: (-263)\nSmooth glide [0] [0] [7]\nbroadcast (Low down v)\n\nwhen I receive [mmmm gotta get that clout v]\nwait (.5) seconds\nSmooth glide [-137] [0] [7]\n\nwhen I receive [bosses v]\nwait (.5) seconds\nSmooth glide [153] [0] [8]\n\nwhen I receive [get going v]\nwait (.5) seconds\nSmooth glide [0] [0] [7]\n\nwhen I receive [let's get set up v]\nhide\nstop [other scripts in sprite v]\n\nwhen I receive [tutorial1 v]\npoint in direction (90)\nclear graphic effects\nswitch costume to (costume2 v)\ngo to x: (0) y: (81)\nset size to (100) %\nshow\nSmooth glide [0] [0] [7]\nwait until <key (z v) pressed?>\nbroadcast (Over1 v)\nSmooth glide [0] [81] [7]\nhide\n\nwhen I receive [over1 v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\nwhen I receive [next level v]\nif <<<<(Levelo) = [2]> or <(Levelo) = [4]>> or <(Levelo) = [5]>> or <(Levelo) = [10]>> then\n    broadcast (Tutorial2 v)\n    clear graphic effects\n    next costume\n    go to x: (0) y: (81)\n    set size to (100) %\n    show\n    Smooth glide [0] [0] [7]\n    wait until <key (z v) pressed?>\n    broadcast (Over1 v)\n    Smooth glide [0] [81] [7]\n    hide\nend\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [got green cc v]\npoint in direction (90)\nclear graphic effects\nswitch costume to (costume6 v)\ngo to x: (0) y: (81)\nset size to (100) %\nshow\nSmooth glide [0] [0] [7]\nwait until <key (z v) pressed?>\nbroadcast (Over2 v)\nSmooth glide [0] [81] [7]\nhide\nbroadcast (Open the gate v)\n\nwhen I receive [over2 v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\nwhen I receive [enter caves v]\npoint in direction (90)\nclear graphic effects\nswitch costume to (costume7 v)\ngo to x: (0) y: (81)\nset size to (100) %\nshow\nSmooth glide [0] [0] [7]\nwait until <key (z v) pressed?>\nbroadcast (Over1 v)\nSmooth glide [0] [81] [7]\nhide\n\nwhen I receive [attack the crystal v]\npoint in direction (90)\nclear graphic effects\nswitch costume to (costume9 v)\ngo to x: (0) y: (81)\nset size to (100) %\nshow\nSmooth glide [0] [0] [7]\nwait until <key (z v) pressed?>\nbroadcast (Over1 v)\nSmooth glide [0] [81] [7]\nhide\n\nwhen I receive [got blue cc v]\npoint in direction (90)\nclear graphic effects\nswitch costume to (costume10 v)\ngo to x: (0) y: (81)\nset size to (100) %\nshow\nSmooth glide [0] [0] [7]\nwait until <key (z v) pressed?>\nbroadcast (Over2 v)\nSmooth glide [0] [81] [7]\nhide\nbroadcast (Open the gate again v)\n\nwhen I receive [enter volcano world v]\npoint in direction (90)\nclear graphic effects\nswitch costume to (costume11 v)\ngo to x: (0) y: (81)\nset size to (100) %\nshow\nSmooth glide [0] [0] [7]\nwait until <key (z v) pressed?>\nbroadcast (Over1 v)\nSmooth glide [0] [81] [7]\nhide\n\nwhen I receive [got yellow cc v]\npoint in direction (90)\nclear graphic effects\nswitch costume to (costume12 v)\ngo to x: (0) y: (81)\nset size to (100) %\nshow\nSmooth glide [0] [0] [7]\nwait until <key (z v) pressed?>\nbroadcast (Over2 v)\nSmooth glide [0] [81] [7]\nhide\nbroadcast (Final cutscene v)\n\nwhen I receive [retrylvl2 v]\nswitch costume to (costume7 v)\n\n@Jungle background\n\nwhen flag clicked\ngo to x: (-5) y: (-10)\npoint in direction (60)\nhide\n\nwhen I receive [waaakkkeee uuuupppp v]\nshow\n\nwhen I receive [waaakkkeee uuuupppp v]\nshow\n\nwhen I receive [okay... now i'm getting up v]\nwait (.5) seconds\npoint in direction (90)\ngo to x: (0) y: (0)\n\nwhen I receive [granpatalk3 v]\nwait (1) seconds\nSmooth glide [82] [0] [7]\nwait (1) seconds\nbroadcast (granpatalk4 v)\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [explain granpa v]\nwait (.5) seconds\ngo to x: (0) y: (0)\n\nwhen I receive [low down v]\nwait (.5) seconds\nshow\n\nwhen I receive [let's get set up v]\nhide\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nhide\n\n@Text box\n\nwhen flag clicked\nhide\n\nwhen I receive [grandpa cube v]\nshow\nset [ghost v] effect to (40)\n\nwhen I receive [get up v]\nhide\n\nwhen I receive [next talk2 v]\nshow\n\nwhen I receive [granpatalk3 v]\nhide\n\nwhen I receive [granpatalk4 v]\nshow\n\nwhen I receive [explain granpa v]\nwait (.5) seconds\nhide\n\nwhen I receive [low down v]\nwait (.5) seconds\nshow\n\nwhen I receive [start it up! v]\nhide\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nhide\n\n@Text\n\nwhen I start as a clone\ngo to [front v] layer\nshow\n\nwhen I receive [clear v]\ndelete this clone\n\nwhen flag clicked\nhide\n\nwhen I receive [midway cutoff text v]\ndelete this clone\n\ndefine print line 1: (line1) 2: (line2) speaker (#) speaker x: (pos) name (name) top? y/n (y/n) narrator? y/n (y/nn)\nif <(y/n) = [y]> then\n    set [top? v] to [1]\nelse\n    set [top? v] to [0]\nend\nif <(y/nn) = [y]> then\n    set [narr v] to [1]\nelse\n    set [narr v] to [0]\nend\nset [show-box v] to [1]\nset [speaker v] to (#)\nset [char v] to [1]\nset [pos v] to (pos)\nif <(Narr) = [0]> then\n    if <(Top?) = [1]> then\n        go to x: (-223) y: (162)\n    else\n        go to x: (-223) y: (-114)\n    end\n    set [brightness v] effect to (30)\n    repeat (length of (name))\n        if <[numbers v] contains (letter (Char) of (name))?> then\n            switch costume to (join [n] (letter (Char) of (name)))\n        else\n            switch costume to (letter (Char) of (name))\n        end\n        create clone of (_myself_ v)\n        move (8) steps\n        change [char v] by (1)\n        start sound [ba-ding2 v]\n    end\nend\nif <(Top?) = [1]> then\n    go to x: (-230) y: (137)\nelse\n    go to x: (-230) y: (-140)\nend\nset [char v] to [1]\nset [brightness v] effect to (0)\nrepeat (length of (line1))\n    if <[numbers v] contains (letter (Char) of (line1))?> then\n        switch costume to (join [n] (letter (Char) of (line1)))\n    else\n        switch costume to (letter (Char) of (line1))\n    end\n    create clone of (_myself_ v)\n    move (8) steps\n    change [char v] by (1)\n    start sound [ba-ding2 v]\nend\nif <(Top?) = [1]> then\n    go to x: (-230) y: (123)\nelse\n    go to x: (-230) y: (-156)\nend\nset [char v] to [1]\nrepeat (length of (line2))\n    if <[numbers v] contains (letter (Char) of (line2))?> then\n        switch costume to (join [n] (letter (Char) of (line2)))\n    else\n        switch costume to (letter (Char) of (line2))\n    end\n    create clone of (_myself_ v)\n    move (8) steps\n    change [char v] by (1)\n    start sound [ba-ding2 v]\nend\n\nwhen I receive [the beginnning v]\nwait (1) seconds\nprint line 1: [Uuggghh...] 2: [Press Z] speaker (1) speaker x: (1) name [???] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nbroadcast (next talk1 v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [next talk1 v]\nwait (.5) seconds\nprint line 1: [What happened last night?] 2: [Press Z] speaker (1) speaker x: (1) name [???] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nbroadcast (Waaakkkeee uuuupppp v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [grandpa cube v]\nwait (.5) seconds\nprint line 1: [Hey!] 2: [Z] speaker (1) speaker x: (1) name [Mysterious old cube] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nbroadcast (GranpaTalk1 v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [granpatalk1 v]\nwait (.5) seconds\nprint line 1: [Wake up you lazy bum !] 2: [Z] speaker (1) speaker x: (1) name [Mysterious old cube] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nbroadcast (Okay I'm up v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [waaakkkeee uuuupppp v]\nforever\n    play sound (pick random (4) to (7)) until done\nend\n\nwhen I receive [waaakkkeee uuuupppp v]\nforever\n    play sound [amb_stream v] until done\nend\n\nwhen I receive [okay i'm up v]\nwait (.5) seconds\nprint line 1: [Press W to get up] 2: [Z] speaker (1) speaker x: (1) name [Mysterious old cube] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nbroadcast (Granpatalk2 v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [granpatalk2 v]\nwait (.5) seconds\nprint line 1: [Don't ask me how I know or what that means, just do it.] 2: [Z] speaker (1) speaker x: (1) name [Mysterious old cube] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nbroadcast (get up v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [next talk2 v]\nwait (.5) seconds\nprint line 1: [Wh-Where am I?] 2: [Z] speaker (1) speaker x: (1) name [???] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nbroadcast (GranpaTalk3 v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [granpatalk4 v]\nprint line 1: [You're in: IActuallySpentTimeMakingThisGame-] 2: [-UnlikePeopleWhoMakeGenericPlatformers-Land. Z] speaker (1) speaker x: (1) name [Mysterious old cube] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nbroadcast (Black cube talk v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [black cube talk v]\nwait (1) seconds\nprint line 1: [.....Who...Are you?] 2: [Z] speaker (1) speaker x: (1) name [???] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nbroadcast (Granpatalk5 v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [granpatalk5 v]\nwait (.5) seconds\nprint line 1: [Me? My name's not important, I'm just here to tell] 2: [you what to do for some reason.. Z] speaker (1) speaker x: (1) name [Wise old cube] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nbroadcast (GranpaTalk6 v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [granpatalk6 v]\nwait (.5) seconds\nprint line 1: [And don't ask why I'm floating.. I could tell you,] 2: [but than I would have to kill you. Z] speaker (1) speaker x: (1) name [Wise old cube] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nbroadcast (BlackCubeTalk2 v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [blackcubetalk2 v]\nwait (.5) seconds\nprint line 1: [Oh... Well my name is-] 2: [] speaker (1) speaker x: (1) name [???] top? y/n [] narrator? y/n []\nwait (1) seconds\nbroadcast (Midway Cutoff Text v)\nprint line 1: [I know . It's Cubo.] 2: [Z] speaker (1) speaker x: (1) name [Wise old cube] top? y/n [] narrator? y/n []\nbroadcast (Shocc v)\nwait until <key (z v) pressed?>\nbroadcast (Black cube talk3 v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [black cube talk3 v]\nwait (1) seconds\nprint line 1: [H-How did you-] 2: [] speaker (1) speaker x: (1) name [Cubo] top? y/n [] narrator? y/n []\nwait (1) seconds\nbroadcast (Midway Cutoff Text v)\nprint line 1: [Look kid let me just get this out of the way.] 2: [I know everything. Z] speaker (1) speaker x: (1) name [Wise old cube] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nbroadcast (Black cube talk 4 v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [black cube talk 4 v]\nwait (.5) seconds\nprint line 1: [Well if you're so smart, how do I get out of here?] 2: [Z] speaker (1) speaker x: (1) name [Cubo] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nbroadcast (Explain granpa v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [low down v]\nwait (.5) seconds\nprint line 1: [Okay, here's the low -down.] 2: [Z] speaker (1) speaker x: (1) name [Wise old cube] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nbroadcast (Clout crystals v)\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\n\nwhen I receive [clout crystals v]\nwait (.5) seconds\nprint line 1: [In order to get home, you must collect all three] 2: [Clout Crystals. Z] speaker (1) speaker x: (1) name [Wise old cube] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\nwait (.5) seconds\nbroadcast (Mmmm gotta get that clout v)\nprint line 1: [Three gems that hold follower-increasing powers.] 2: [They will also get you home. Z] speaker (1) speaker x: (1) name [Wise old cube] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\nwait (.5) seconds\nbroadcast (Bosses v)\nprint line 1: [To get them, you must defeat three bosses across three] 2: [worlds. Z] speaker (1) speaker x: (1) name [Wise old cube] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\nwait (.5) seconds\nbroadcast (Get going v)\nprint line 1: [Now get going!] 2: [Z] speaker (1) speaker x: (1) name [Wise old cube] top? y/n [] narrator? y/n []\nwait until <key (z v) pressed?>\nstart sound [clicky v]\nbroadcast (Clear v)\nset [show-box v] to [0]\nset [top? v] to [0]\nwait (.5) seconds\nbroadcast (Start it up! v)\n\nwhen I receive [let's get set up v]\nstop [other scripts in sprite v]\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nhide\nbroadcast (Clear v)\n\n@W key\n\nwhen flag clicked\ngo to x: (0) y: (-211)\nhide\n\nwhen I receive [get up v]\nwait (.1) seconds\nshow\nset [ghost v] effect to (100)\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [get up v]\nwait (.1) seconds\nSmooth glide [0] [-122] [7]\nwait until <key (w v) pressed?>\nbroadcast (Okay... NOW I'm getting up v)\nSmooth grow [120] [5]\nbroadcast (sorry to break it to you but i'm ghosting you call back later or don't v)\nSmooth grow [100] [3]\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\ndefine Smooth grow (size) (speed)\nset [pregrow v] to (size)\nset [postgrow v] to (size)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change size by (((size) / (speed)) - ((size) / (speed)))\nend\n\nwhen I receive [sorry to break it to you but i'm ghosting you call back later or don't v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [sorry to break it to you but i'm ghosting you call back later or don't v]\nSmooth glide [0] [-211] [7]\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nhide\n\n@Cutscene\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\nset [rotate v] to [0]\ngo to x: (144) y: (-276)\npoint in direction (165)\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [okay... now i'm getting up v]\nwait (1) seconds\nrepeat (10)\n    turn left (rotate) degrees\n    change [rotate v] by (.7)\nend\nrepeat (10)\n    turn left (rotate) degrees\n    change [rotate v] by (-.7)\nend\n\nwhen I receive [okay... now i'm getting up v]\nwait (1) seconds\nshow\nSmooth glide [9] [-74] [8]\nrepeat (7)\n    next costume\n    wait (.06) seconds\nend\nwait (1.5) seconds\nbroadcast (next talk2 v)\nrepeat (4)\n    next costume\n    wait (.07) seconds\nend\n\nwhen I receive [okay... now i'm getting up v]\nwait (1) seconds\nset [ghost v] effect to (100)\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [granpatalk3 v]\nwait (1) seconds\nSmooth glide [91] [-74] [7]\n\nwhen I receive [granpatalk4 v]\nrepeat (4)\n    next costume\n    wait (.06) seconds\nend\nwait (1) seconds\nrepeat (6)\n    next costume\n    wait (.07) seconds\nend\n\nwhen I receive [shocc v]\nrepeat (4)\n    next costume\n    wait (.06) seconds\nend\n\nwhen I receive [explain granpa v]\nwait (.5) seconds\nhide\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nhide\n\n@Green clout crystal\n\nwhen flag clicked\ngo to x: (0) y: (0)\nhide\n\nwhen I receive [mmmm gotta get that clout v]\nwait (.5) seconds\nshow\nset [ghost v] effect to (40)\nSmooth glide [7] [0] [7]\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [bosses v]\nwait (.5) seconds\nSmooth glide [153] [0] [7]\nhide\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nhide\n\n@Blue clout crystal\n\nwhen flag clicked\ngo to x: (0) y: (0)\nhide\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [mmmm gotta get that clout v]\nwait (.5) seconds\nshow\nset [ghost v] effect to (40)\nSmooth glide [98] [0] [7]\n\nwhen I receive [bosses v]\nwait (.5) seconds\nSmooth glide [153] [0] [7]\nhide\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nhide\n\n@Yellow clout crystal\n\nwhen flag clicked\ngo to x: (0) y: (0)\nhide\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [mmmm gotta get that clout v]\nwait (.5) seconds\nshow\nset [ghost v] effect to (40)\nSmooth glide [190] [0] [7]\n\nwhen I receive [bosses v]\nwait (.5) seconds\nSmooth glide [153] [0] [7]\nhide\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nhide\n\n@Bosses\n\n@Mysterious boss 1\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen flag clicked\ngo to x: (153) y: (-7)\nhide\n\nwhen I receive [bosses v]\nwait (1) seconds\nshow\nSmooth glide [-2] [-7] [7]\n\nwhen I receive [get going v]\nwait (.5) seconds\nSmooth glide [0] [0] [7]\nhide\n\nwhen I receive [get going v]\nwait (.5) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nhide\n\n@Mysterious boss 2\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen flag clicked\ngo to x: (153) y: (11)\nhide\n\nwhen I receive [bosses v]\nwait (1) seconds\nshow\nSmooth glide [-99] [11] [7]\n\nwhen I receive [get going v]\nwait (.5) seconds\nSmooth glide [0] [0] [7]\nhide\n\nwhen I receive [get going v]\nwait (.5) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\nwhen I receive [get going v]\nwait (.5) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nhide\n\n@Mysterious boss 3\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen flag clicked\ngo to x: (153) y: (10)\nhide\n\nwhen I receive [bosses v]\nwait (1) seconds\nshow\nSmooth glide [-191] [10] [7]\n\nwhen I receive [get going v]\nwait (.5) seconds\nSmooth glide [0] [0] [7]\nhide\n\nwhen I receive [get going v]\nwait (.5) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\nwhen I receive [skip v]\nstop [other scripts in sprite v]\nhide\n\n@ground\n\nwhen flag clicked\ngo to x: (31) y: (-20)\nhide\n\nwhen I receive [let's get set up v]\nswitch costume to (to blur v)\nshow\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [retrylvl1 v]\nswitch costume to (to blur v)\n\nwhen I receive [retryhalfway v]\nswitch costume to (to blur5 v)\n\nwhen I receive [shake v]\nrepeat (20)\n    go to x: (pick random (29) to (33)) y: (pick random (-22) to (-18))\nend\ngo to x: (31) y: (-20)\n\nwhen I receive [retrylvl2 v]\nswitch costume to (costume1 v)\n\nwhen I receive [retryhalfway2 v]\nswitch costume to (costume5 v)\n\nwhen I receive [retrylvl3 v]\nswitch costume to (costume8 v)\n\nwhen I receive [retryhalfway3 v]\nswitch costume to (costume12 v)\n\n@Background\n\nwhen flag clicked\nswitch costume to (to blur v)\nhide\n\nwhen I receive [let's get set up v]\nshow\n\nwhen I receive [next level v]\nif <(Levelo) = [7]> then\n    switch costume to (to blur3 v)\nend\nif <(Levelo) = [8]> then\n    switch costume to (to blur2 v)\nend\nif <(Levelo) = [14]> then\n    switch costume to (to blur4 v)\nend\nif <(Levelo) = [15]> then\n    switch costume to (to blur5 v)\nend\n\n@player\n\nwhen flag clicked\ngo to x: (-206) y: (-34)\nset [levelo v] to [1]\nswitch costume to (costume1 v)\npoint in direction (90)\nhide\nset [y vel v] to [0]\nset [x vel v] to [0]\n\ndefine platform physics (jump height) (gravity) (friction) (movement speed) (wall jump vm) (wall jump hm)\nchange y by (y vel)\nif <<<<<touching (ground v)?> or <touching (gates v)?>> or <touching (switch v)?>> or <touching (single gate v)?>> or <touching (lava spout v)?>> then\n    repeat ([abs v] of (y vel) )\n        if <<<<<touching (ground v)?> or <touching (gates v)?>> or <touching (switch v)?>> or <touching (single gate v)?>> or <touching (lava spout v)?>> then\n            change y by ((-1) * (([abs v] of (y vel) ) / (y vel)))\n        end\n    end\n    if <<<key (w v) pressed?> or <key (up arrow v) pressed?>> and <not <(y vel) > [0]>>> then\n        set [y vel v] to (jump height)\n    else\n        set [y vel v] to [0]\n    end\nelse\n    change [y vel v] by (gravity)\nend\nif <<key (d v) pressed?> or <key (right arrow v) pressed?>> then\n    change [x vel v] by (movement speed)\nend\nif <<key (a v) pressed?> or <key (left arrow v) pressed?>> then\n    change [x vel v] by ((-1) * (movement speed))\nend\nchange x by (x vel)\nif <<<<<touching (ground v)?> or <touching (gates v)?>> or <touching (switch v)?>> or <touching (single gate v)?>> or <touching (lava spout v)?>> then\n    set [old y v] to (y position)\n    repeat (([abs v] of (x vel) ) + (1))\n        if <<<<<touching (ground v)?> or <touching (gates v)?>> or <touching (switch v)?>> or <touching (single gate v)?>> or <touching (lava spout v)?>> then\n            change y by (1)\n        end\n    end\n    if <<<<<touching (ground v)?> or <touching (gates v)?>> or <touching (switch v)?>> or <touching (single gate v)?>> or <touching (lava spout v)?>> then\n        set y to (old y)\n        repeat ([ceiling v] of ([abs v] of (x vel) ) )\n            if <<<<<touching (ground v)?> or <touching (gates v)?>> or <touching (switch v)?>> or <touching (single gate v)?>> or <touching (lava spout v)?>> then\n                change x by ((-1) * (([abs v] of (x vel) ) / (x vel)))\n            end\n        end\n        if <<key (w v) pressed?> or <key (up arrow v) pressed?>> then\n            if <(x vel) < [0]> then\n                set [x vel v] to [0]\n                if <<key (a v) pressed?> or <key (left arrow v) pressed?>> then\n                    set [x vel v] to (wall jump hm)\n                    set [y vel v] to (wall jump vm)\n                end\n            else\n                set [x vel v] to [0]\n                if <<key (d v) pressed?> or <key (right arrow v) pressed?>> then\n                    set [x vel v] to ((-1) * (wall jump hm))\n                    set [y vel v] to (wall jump vm)\n                end\n            end\n        end\n    end\nend\nset [x vel v] to ((x vel) * (friction))\n\nwhen I receive [move v]\nforever\n    if <<key (a v) pressed?> or <key (left arrow v) pressed?>> then\n        point in direction (-90)\n    end\n    if <<key (d v) pressed?> or <key (right arrow v) pressed?>> then\n        point in direction (90)\n    end\n    if <<key (w v) pressed?> or <key (up arrow v) pressed?>> then\n        switch costume to (costume2 v)\n    end\n    if <(y vel) < [0]> then\n        switch costume to (costume1 v)\n    end\nend\n\nwhen I receive [move v]\nshow\nforever\n    platform physics (12) (-1) (0.9) (1) (8) (8)\nend\n\nwhen I receive [move v]\nforever\n    if <<<<<<touching (damage v)?> or <touching (jungle boss v)?>> or <touching (crystal projectiles v)?>> or <touching (lava pool v)?>> or <touching (mallon boss v)?>> or <touching (shockwave v)?>> then\n        if <<<<(Levelo) = [1]> or <(Levelo) = [2]>> or <(Levelo) = [3]>> or <(Levelo) = [5]>> then\n            change [lives v] by (-1)\n            start sound [Crunch v]\n            broadcast (Hurt v)\n            go to x: (-206) y: (-34)\n            set [y vel v] to [0]\n            set [x vel v] to [0]\n            stop [other scripts in sprite v]\n            wait (.5) seconds\n            broadcast (move v)\n        end\n        if <<(Levelo) = [6]> and <(BossAbleToHurt) = [1]>> then\n            change [lives v] by (-1)\n            start sound [Crunch v]\n            broadcast (Hurt v)\n            go to x: (-199) y: (-120)\n            set [y vel v] to [0]\n            set [x vel v] to [0]\n            stop [other scripts in sprite v]\n            wait (1) seconds\n            broadcast (move v)\n        end\n        if <(Levelo) = [8]> then\n            change [lives v] by (-1)\n            start sound [Crunch v]\n            broadcast (Hurt v)\n            go to x: (-199) y: (-97)\n            set [y vel v] to [0]\n            set [x vel v] to [0]\n            stop [other scripts in sprite v]\n            wait (.5) seconds\n            broadcast (move v)\n        end\n        if <<(Levelo) = [9]> or <(Levelo) = [10]>> then\n            change [lives v] by (-1)\n            start sound [Crunch v]\n            broadcast (Hurt v)\n            go to x: (-208) y: (83)\n            set [y vel v] to [0]\n            set [x vel v] to [0]\n            stop [other scripts in sprite v]\n            wait (.5) seconds\n            broadcast (move v)\n        end\n        if <(Levelo) = [13]> then\n            change [lives v] by (-1)\n            start sound [Crunch v]\n            broadcast (Hurt v)\n            go to x: (-175) y: (-97)\n            set [y vel v] to [0]\n            set [x vel v] to [0]\n            stop [other scripts in sprite v]\n            wait (1) seconds\n            broadcast (move v)\n        end\n        if <<(Levelo) = [15]> or <(Levelo) = [17]>> then\n            change [lives v] by (-1)\n            start sound [Crunch v]\n            broadcast (Hurt v)\n            go to x: (-195) y: (-90)\n            set [y vel v] to [0]\n            set [x vel v] to [0]\n            stop [other scripts in sprite v]\n            wait (1) seconds\n            broadcast (move v)\n        end\n        if <(Levelo) = [16]> then\n            change [lives v] by (-1)\n            start sound [Crunch v]\n            broadcast (Hurt v)\n            go to x: (-210) y: (-90)\n            set [y vel v] to [0]\n            set [x vel v] to [0]\n            stop [other scripts in sprite v]\n            wait (1) seconds\n            broadcast (move v)\n        end\n        if <(Levelo) = [18]> then\n            change [lives v] by (-1)\n            start sound [Crunch v]\n            broadcast (Hurt v)\n            go to x: (-205) y: (-109)\n            set [y vel v] to [0]\n            set [x vel v] to [0]\n            stop [other scripts in sprite v]\n            wait (1) seconds\n            broadcast (move v)\n        end\n        if <(Levelo) = [20]> then\n            change [lives v] by (-1)\n            start sound [Crunch v]\n            broadcast (Hurt v)\n            go to x: (-187) y: (-106)\n            set [y vel v] to [0]\n            set [x vel v] to [0]\n            stop [other scripts in sprite v]\n            wait (1) seconds\n            broadcast (move v)\n        end\n    end\nend\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [retrylvl1 v]\ngo to x: (-205) y: (-41)\nset [levelo v] to [1]\nset [y vel v] to [0]\nset [x vel v] to [0]\n\nwhen I receive [move v]\nforever\n    if <touching (barrier v)?> then\n        broadcast (Next level v)\n        set [y vel v] to [0]\n        set [x vel v] to [0]\n        change [levelo v] by (1)\n    end\nend\n\nwhen I receive [tutorial2 v]\nstop [other scripts in sprite v]\n\nwhen I receive [next level v]\nif <<<<(Levelo) = [1]> or <(Levelo) = [2]>> or <(Levelo) = [3]>> or <(Levelo) = [5]>> then\n    go to x: (-205) y: (-41)\nend\nif <(Levelo) = [4]> then\n    go to x: (-195) y: (-114)\nend\nif <(Levelo) = [7]> then\n    go to x: (-195) y: (-114)\nend\nif <(Levelo) = [8]> then\n    go to x: (-195) y: (-97)\n    stop [other scripts in sprite v]\n    broadcast (Enter caves v)\n    set [checkpoint v] to [lvl2]\nend\nif <<(Levelo) = [9]> or <(Levelo) = [10]>> then\n    go to x: (-208) y: (83)\nend\nif <(Levelo) = [11]> then\n    go to x: (-204) y: (-60)\nend\nif <(Levelo) = [12]> then\n    go to x: (-195) y: (-97)\nend\nif <(Levelo) = [13]> then\n    go to x: (-175) y: (-97)\nend\nif <(Levelo) = [14]> then\n    go to x: (-195) y: (-90)\n    stop [other scripts in sprite v]\n    broadcast (Enter Volcano world v)\nend\nif <(Levelo) = [15]> then\n    go to x: (-195) y: (-90)\n    set [checkpoint v] to [lvl3]\nend\nif <(Levelo) = [16]> then\n    go to x: (-210) y: (-90)\nend\nif <<(Levelo) = [17]> or <(Levelo) = [19]>> then\n    go to x: (-195) y: (-90)\nend\nif <(Levelo) = [18]> then\n    go to x: (-205) y: (-109)\nend\nif <(Levelo) = [20]> then\n    go to x: (-187) y: (-106)\nend\n\nwhen I receive [retryhalfway v]\ngo to x: (-195) y: (-114)\nset [levelo v] to [5]\nset [y vel v] to [0]\nset [x vel v] to [0]\n\nwhen I receive [retryhalfway v]\ngo to x: (-56) y: (-40)\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [next level v]\nforever\n    if <(Levelo) = [6]> then\n        go to x: (-199) y: (-120)\n        wait until <(x position) > [-1]>\n        broadcast (Gates v)\n        stop [other scripts in sprite v]\n        set [y vel v] to [0]\n        set [x vel v] to [0]\n        Smooth glide [0] [-120] [8]\n        switch costume to (costume1 v)\n        broadcast (what v)\n        stop [this script v]\n    end\nend\n\nwhen I receive [what v]\nwait (2) seconds\nswitch costume to (costume3 v)\nwait (.07) seconds\nrepeat (5)\n    next costume\n    wait (.07) seconds\nend\nwait (.5) seconds\nrepeat (5)\n    next costume\n    wait (.06) seconds\nend\nSmooth glide [-176] [-120] [5]\n\nwhen I receive [shake v]\nrepeat (20)\n    go to x: (pick random (-177) to (-173)) y: (pick random (-122) to (-118))\nend\ngo to x: (-175) y: (-120)\n\nwhen I receive [fight start v]\nswitch costume to (costume1 v)\nbroadcast (move v)\n\nwhen I receive [move v]\nforever\n    set [player x v] to (x position)\nend\n\nwhen I receive [move v]\nset [y vel v] to [0]\nset [x vel v] to [0]\nforever\n    if <<touching (rocks v)?> and <(Hurtable) = [0]>> then\n        broadcast (HurtJungleBoss v)\n    end\n    if <<touching (rocks v)?> and <(Hurtable) = [1]>> then\n        change [lives v] by (-1)\n        start sound [Crunch v]\n        broadcast (Hurt v)\n        go to x: (-199) y: (-120)\n        set [y vel v] to [0]\n        set [x vel v] to [0]\n        stop [other scripts in sprite v]\n        wait (.5) seconds\n        broadcast (move v)\n    end\nend\n\nwhen I receive [stop moving so i can give you the green clout crystal v]\nstop [other scripts in sprite v]\nSmooth glide [-38] [-118] [7]\n\nwhen I receive [other final blow stuff v]\nstop [other scripts in sprite v]\n\nwhen I receive [retrylvl2 v]\ngo to x: (-205) y: (-99)\nset [levelo v] to [8]\n\nwhen I receive [retryhalfway2 v]\ngo to x: (-59) y: (-96)\nset [levelo v] to [12]\nset [y vel v] to [0]\nset [x vel v] to [0]\n\nwhen I receive [next level v]\nif <(Levelo) = [13]> then\n    wait until <(x position) > [14]>\n    broadcast (Gates2 v)\n    stop [other scripts in sprite v]\n    set [y vel v] to [0]\n    set [x vel v] to [0]\n    Smooth glide [15] [-97] [8]\n    switch costume to (costume1 v)\n    broadcast (Double what v)\n    stop [this script v]\nend\n\nwhen I receive [double what v]\nwait (2) seconds\nswitch costume to (costume14 v)\nwait (.07) seconds\nrepeat (3)\n    next costume\n    wait (.07) seconds\nend\nwait (2.5) seconds\nSmooth glide [-100] [-97] [7]\n\nwhen I receive [move v]\nforever\n    if <<<(Levelo) = [13]> and <(Left arm hurtable) = [1]>> and <touching (left arm v)?>> then\n        change [lives v] by (-1)\n        start sound [Crunch v]\n        broadcast (Hurt v)\n        go to x: (-175) y: (-97)\n        set [y vel v] to [0]\n        set [x vel v] to [0]\n        stop [other scripts in sprite v]\n        wait (1) seconds\n        broadcast (move v)\n    end\nend\n\nwhen I receive [move v]\nforever\n    if <<<(Levelo) = [13]> and <(Right arm hurtable) = [1]>> and <touching (right arm v)?>> then\n        change [lives v] by (-1)\n        start sound [Crunch v]\n        broadcast (Hurt v)\n        go to x: (-175) y: (-97)\n        set [y vel v] to [0]\n        set [x vel v] to [0]\n        stop [other scripts in sprite v]\n        wait (1) seconds\n        broadcast (move v)\n    end\nend\n\nwhen I receive [crystal owie v]\nchange [lives v] by (-1)\nstart sound [Crunch v]\nbroadcast (Hurt v)\ngo to x: (-175) y: (-97)\nset [y vel v] to [0]\nset [x vel v] to [0]\nstop [other scripts in sprite v]\nwait (1) seconds\nbroadcast (move v)\n\nwhen I receive [attack the crystal v]\nstop [other scripts in sprite v]\n\nwhen I receive [move v]\nforever\n    if <touching (attackable crystal v)?> then\n        start sound [Light Bulb Breaking-SoundBible v]\n        broadcast (CBLoseHealth v)\n        Smooth glide [-175] [-97] [7]\n    end\nend\n\nwhen I receive [move v]\nforever\n    if <<<(Levelo) = [13]> and <touching (caves boss v)?>> and <(BossAbleToHurt) = [1]>> then\n        change [lives v] by (-1)\n        start sound [Crunch v]\n        broadcast (Hurt v)\n        go to x: (-175) y: (-97)\n        set [y vel v] to [0]\n        set [x vel v] to [0]\n        stop [other scripts in sprite v]\n        wait (1) seconds\n        broadcast (move v)\n    end\nend\n\nwhen I receive [other final blow stuff2 v]\nstop [other scripts in sprite v]\n\nwhen I receive [stop moving so i can give you the blue clout crystal v]\nstop [other scripts in sprite v]\nSmooth glide [-27] [-99] [7]\n\nwhen I receive [retrylvl3 v]\ngo to x: (-195) y: (-90)\nset [levelo v] to [15]\nset [y vel v] to [0]\nset [x vel v] to [0]\n\nwhen I receive [retryhalfway3 v]\ngo to x: (-59) y: (-90)\nset [levelo v] to [19]\nset [y vel v] to [0]\nset [x vel v] to [0]\n\nwhen I receive [next level v]\nif <(Levelo) = [20]> then\n    wait until <(x position) > [-1]>\n    broadcast (Gates3 v)\n    stop [other scripts in sprite v]\n    set [y vel v] to [0]\n    set [x vel v] to [0]\n    Smooth glide [0] [-106] [8]\n    switch costume to (costume1 v)\n    broadcast (Triple what v)\n    stop [this script v]\nend\n\nwhen I receive [triple what v]\nwait (3.5) seconds\nswitch costume to (costume14 v)\nwait (.07) seconds\nrepeat (3)\n    next costume\n    wait (.07) seconds\nend\nwait (1) seconds\nSmooth glide [-187] [-106] [7]\n\nwhen I receive [fight start 3 v]\nswitch costume to (costume1 v)\nbroadcast (move v)\n\nwhen I receive [move v]\nset [y vel v] to [0]\nset [x vel v] to [0]\nforever\n    if <<touching (loooooong arm v)?> and <(Arm hitable) = [1]>> then\n        broadcast (Ow! v)\n    end\n    if <<touching (loooooong arm v)?> and <(Arm hitable) = [0]>> then\n        change [lives v] by (-1)\n        start sound [Crunch v]\n        broadcast (Hurt v)\n        broadcast (Okay go back v)\n        go to x: (-197) y: (-106)\n        set [y vel v] to [0]\n        set [x vel v] to [0]\n        stop [other scripts in sprite v]\n        wait (.5) seconds\n        broadcast (move v)\n    end\nend\n\nwhen I receive [yellow clout crystal joins the battle v]\nstop [other scripts in sprite v]\n\nwhen I receive [stop moving so i can give you the yellow clout crystal v]\nstop [other scripts in sprite v]\nSmooth glide [-27] [-105] [7]\n\nwhen I receive [other final blow stuff 3 v]\nstop [other scripts in sprite v]\n\nwhen I receive [move v]\nforever\n    if <(Levelo) = [10]> then\n        forever\n            if <<(y position) = [117]> and <<(y vel) = [-1]> or <(y vel) = [0]>>> then\n                broadcast (Switch drain lava v)\n                stop [this script v]\n            end\n        end\n    end\nend\n\nwhen I receive [next level v]\nif <(Levelo) = [11]> then\n    forever\n        if <<(y position) = [-84]> and <<(y vel) = [-1]> or <(y vel) = [0]>>> then\n            broadcast (Timed v)\n        end\n    end\nend\n\n@Visual aids\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\n\nwhen I receive [tutorial1 v]\nshow\nset [ghost v] effect to (100)\nrepeat (8)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [over1 v]\nrepeat (8)\n    change [ghost v] effect by (10)\nend\nhide\nbroadcast (move v)\n\nwhen I receive [next level v]\nif <<<<(Levelo) = [2]> or <(Levelo) = [4]>> or <(Levelo) = [5]>> or <(Levelo) = [10]>> then\n    next costume\n    show\n    set [ghost v] effect to (100)\n    repeat (8)\n        change [ghost v] effect by (-10)\n    end\nend\n\nwhen I receive [retrylvl1 v]\nswitch costume to (costume1 v)\n\nwhen I receive [retryhalfway v]\nswitch costume to (costume4 v)\n\nwhen I receive [got green cc v]\nshow\nswitch costume to (costume5 v)\nset [ghost v] effect to (100)\nrepeat (8)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [over2 v]\nrepeat (8)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [enter caves v]\nshow\nswitch costume to (costume5 v)\nset [ghost v] effect to (100)\nrepeat (8)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [attack the crystal v]\nshow\nswitch costume to (costume7 v)\nset [ghost v] effect to (100)\nrepeat (8)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [got blue cc v]\nshow\nswitch costume to (costume5 v)\nset [ghost v] effect to (100)\nrepeat (8)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [enter volcano world v]\nshow\nswitch costume to (costume5 v)\nset [ghost v] effect to (100)\nrepeat (8)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [got yellow cc v]\nshow\nswitch costume to (costume5 v)\nset [ghost v] effect to (100)\nrepeat (8)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [retrylvl2 v]\nswitch costume to (costume5 v)\n\n@Damage\n\nwhen flag clicked\ngo to x: (0) y: (0)\nswitch costume to (1 v)\nhide\n\nwhen I receive [let's get set up v]\nshow\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [retryhalfway v]\nswitch costume to (5 v)\n\nwhen I receive [retrylvl2 v]\nswitch costume to (8 v)\n\nwhen I receive [go down lava v]\nstart sound [golden_gate v]\nSmooth glide [0] [-169] [10]\nwait until <(Levelo) = [11]>\ngo to x: (0) y: (0)\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [retryhalfway2 v]\nswitch costume to (12 v)\n\nwhen I receive [retrylvl3 v]\nstop [other scripts in sprite v]\nswitch costume to (15 v)\ngo to x: (0) y: (-210)\nwait (.1) seconds\nstart sound [lava_damage v]\nSmooth glide [0] [0] [8]\nwait (2) seconds\nrepeat until <(Levelo) = [16]>\n    start sound [lava_splash v]\n    Smooth glide [0] [-210] [8]\n    wait (1.5) seconds\n    start sound [lava_damage v]\n    Smooth glide [0] [0] [8]\n    wait (2) seconds\nend\ngo to x: (0) y: (-210)\nstop [this script v]\n\nwhen I receive [next level v]\nif <(Levelo) = [15]> then\n    go to x: (0) y: (-210)\n    wait (.1) seconds\n    start sound [lava_damage v]\n    Smooth glide [0] [0] [8]\n    wait (2) seconds\n    repeat until <(Levelo) = [16]>\n        start sound [lava_splash v]\n        Smooth glide [0] [-210] [8]\n        wait (1.5) seconds\n        start sound [lava_damage v]\n        Smooth glide [0] [0] [8]\n        wait (2) seconds\n    end\n    go to x: (0) y: (-210)\n    stop [this script v]\nend\nif <(Levelo) = [16]> then\n    stop [other scripts in sprite v]\n    switch costume to (16 v)\n    go to x: (0) y: (-210)\n    wait (.1) seconds\n    start sound [lava_damage v]\n    Smooth glide [0] [0] [8]\n    wait (2) seconds\n    repeat until <(Levelo) = [17]>\n        start sound [lava_splash v]\n        Smooth glide [0] [-210] [8]\n        wait (1.5) seconds\n        start sound [lava_damage v]\n        Smooth glide [0] [0] [8]\n        wait (2) seconds\n    end\n    go to x: (0) y: (0)\n    stop [this script v]\nend\nif <(Levelo) = [17]> then\n    go to x: (0) y: (0)\nend\nif <(Levelo) = [18]> then\n    go to x: (0) y: (200)\n    wait (.1) seconds\n    start sound [lava_damage v]\n    Smooth glide [0] [0] [8]\n    wait (2) seconds\n    repeat until <(Levelo) = [19]>\n        start sound [lava_splash v]\n        Smooth glide [0] [200] [8]\n        wait (3) seconds\n        start sound [lava_damage v]\n        Smooth glide [0] [0] [8]\n        wait (2) seconds\n    end\n    go to x: (0) y: (0)\n    stop [this script v]\nend\nif <(Levelo) = [19]> then\n    go to x: (0) y: (0)\nend\n\nwhen I receive [retrylvl1 v]\nswitch costume to (1 v)\n\nwhen I receive [retryhalfway3 v]\nswitch costume to (19 v)\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\n\n@Lives\n\nwhen flag clicked\nset [lives v] to [4]\nhide\n\nwhen I receive [let's get set up v]\nswitch costume to (costume1 v)\nshow\n\nwhen I receive [game over v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [retrylvl1 v]\nswitch costume to (costume1 v)\nset [lives v] to [4]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [hurt v]\nif <(Lives) = [4]> then\n    switch costume to (costume1 v)\nend\nif <(Lives) = [3]> then\n    switch costume to (costume2 v)\nend\nif <(Lives) = [2]> then\n    switch costume to (costume3 v)\nend\nif <(Lives) = [1]> then\n    switch costume to (costume4 v)\nend\nif <(Lives) = [0]> then\n    switch costume to (costume5 v)\n    broadcast (Game over v)\nend\n\nwhen I receive [retryhalfway v]\nswitch costume to (costume1 v)\nset [lives v] to [4]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [czechpoint1 v]\nset [brightness v] effect to (100)\nset [lives v] to [4]\nswitch costume to (costume1 v)\nrepeat (10)\n    change [brightness v] effect by (-10)\nend\n\nwhen I receive [what v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\nwhen I receive [fight start v]\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [stop moving so i can give you the green clout crystal v]\nset [brightness v] effect to (100)\nset [lives v] to [4]\nswitch costume to (costume1 v)\nrepeat (10)\n    change [brightness v] effect by (-10)\nend\n\nwhen I receive [retrylvl2 v]\nswitch costume to (costume1 v)\nset [lives v] to [4]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [checkpoint2 v]\nset [brightness v] effect to (100)\nset [lives v] to [4]\nswitch costume to (costume1 v)\nrepeat (10)\n    change [brightness v] effect by (-10)\nend\n\nwhen I receive [double what v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\nwhen I receive [fight start2 v]\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [retryhalfway2 v]\nswitch costume to (costume1 v)\nset [lives v] to [4]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [stop moving so i can give you the blue clout crystal v]\nset [brightness v] effect to (100)\nset [lives v] to [4]\nswitch costume to (costume1 v)\nrepeat (10)\n    change [brightness v] effect by (-10)\nend\n\nwhen I receive [retrylvl3 v]\nswitch costume to (costume1 v)\nset [lives v] to [4]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [checkpoint3 v]\nset [brightness v] effect to (100)\nset [lives v] to [4]\nswitch costume to (costume1 v)\nrepeat (10)\n    change [brightness v] effect by (-10)\nend\n\nwhen I receive [retryhalfway3 v]\nswitch costume to (costume1 v)\nset [lives v] to [4]\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [triple what v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\nwhen I receive [fight start 3 v]\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\n@Life clones\n\nwhen I receive [hurt v]\nif <(Lives) = [3]> then\n    go to x: (-133) y: (159)\n    set [ghost v] effect to (100)\n    create clone of (_myself_ v)\nend\nif <(Lives) = [2]> then\n    go to x: (-160) y: (159)\n    set [ghost v] effect to (100)\n    create clone of (_myself_ v)\nend\nif <(Lives) = [1]> then\n    go to x: (-188) y: (159)\n    set [ghost v] effect to (100)\n    create clone of (_myself_ v)\nend\nif <(Lives) = [0]> then\n    go to x: (-216) y: (159)\n    set [ghost v] effect to (100)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nclear graphic effects\npoint in direction (90)\nset [grav v] to [4]\nrepeat (30)\n    change [grav v] by (-.5)\n    change y by (Grav)\n    turn right (2) degrees\n    change [ghost v] effect by (4)\nend\ndelete this clone\n\nwhen flag clicked\nhide\n\nwhen I receive [let's get set up v]\nshow\nset [ghost v] effect to (100)\n\nwhen I start as a clone\nclear graphic effects\npoint in direction (90)\nset [grav v] to [4]\nrepeat (30)\n    change [grav v] by (-.2)\n    change y by (Grav)\n    turn right (2) degrees\n    change [ghost v] effect by (2)\nend\ndelete this clone\n\n@Game over screen\n\nwhen flag clicked\nset [checkpoint v] to [lvl1]\nhide\n\nwhen I receive [game over v]\nwait (1) seconds\nstart sound [fishmiss v]\nset [ghost v] effect to (100)\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nwait until <key (z v) pressed?>\nif <(Checkpoint) = [lvl1]> then\n    broadcast (Retrylvl1 v)\n    repeat (10)\n        change [ghost v] effect by (10)\n    end\n    hide\nend\nif <(Checkpoint) = [Halfway]> then\n    broadcast (RetryHalfway v)\n    broadcast (move v)\n    repeat (10)\n        change [ghost v] effect by (10)\n    end\n    hide\nend\nif <(Checkpoint) = [lvl2]> then\n    broadcast (Retrylvl2 v)\n    broadcast (move v)\n    repeat (10)\n        change [ghost v] effect by (10)\n    end\n    hide\nend\nif <(Checkpoint) = [Halfway2]> then\n    broadcast (RetryHalfway2 v)\n    broadcast (move v)\n    repeat (10)\n        change [ghost v] effect by (10)\n    end\n    hide\nend\nif <(Checkpoint) = [lvl3]> then\n    broadcast (Retrylvl3 v)\n    broadcast (move v)\n    repeat (10)\n        change [ghost v] effect by (10)\n    end\n    hide\nend\nif <(Checkpoint) = [Halfway3]> then\n    broadcast (RetryHalfway3 v)\n    broadcast (move v)\n    repeat (10)\n        change [ghost v] effect by (10)\n    end\n    hide\nend\n\nwhen I receive [retrylvl1 v]\nbroadcast (Tutorial1 v)\n\n@Barrier\n\nwhen flag clicked\nhide\n\nwhen I receive [let's get set up v]\nshow\nset [ghost v] effect to (100)\n\nforever\n    change x by (([cos v] of (blah) ) * (-.5))\n    change y by (([cos v] of (blah) ) * (.5))\n    change [blah v] by (7)\nend\n\n@Skip button\n\nwhen flag clicked\ngo to x: (-188) y: (131)\nhide\nwait (.2) seconds\ngo to [front v] layer\n\nwhen I receive [the beginnning v]\nshow\nset [ghost v] effect to (100)\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nbroadcast (Clicky v)\nwait (2) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nforever\n    if <touching (mouse-pointer v)?> then\n        repeat (10)\n            change [ghost v] effect by (-10)\n        end\n        wait until <not <touching (mouse-pointer v)?>>\n        repeat (10)\n            change [ghost v] effect by (10)\n        end\n    end\nend\n\nwhen I receive [clicky v]\nforever\n    if <<touching (mouse-pointer v)?> and <mouse down?>> then\n        stop [other scripts in sprite v]\n        start sound [clicky v]\n        broadcast (Ghosty v)\n        Smooth glide [-79] [131] [7]\n        broadcast (Skip v)\n    end\nend\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [ghosty v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [start it up! v]\nhide\nstop [other scripts in sprite v]\n\n@Checkpoint\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\nforever\n    if <<<(Levelo) = [5]> or <(Levelo) = [12]>> or <(Levelo) = [19]>> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [czechpoint1 v]\nswitch costume to (costume2 v)\nset [brightness v] effect to (100)\nrepeat (10)\n    change [brightness v] effect by (-10)\nend\n\nwhen flag clicked\ngo to x: (-3) y: (-42)\nforever\n    if <touching (player v)?> then\n        broadcast (Czechpoint1 v)\n        set [checkpoint v] to [Halfway]\n        start sound [Checkpoint v]\n        stop [this script v]\n    end\nend\n\nwhen I receive [next level v]\nif <(Levelo) = [12]> then\n    go to x: (-3) y: (-99)\n    switch costume to (costume3 v)\n    forever\n        if <touching (player v)?> then\n            switch costume to (costume4 v)\n            broadcast (Checkpoint2 v)\n            set [checkpoint v] to [Halfway2]\n            start sound [Checkpoint v]\n            stop [this script v]\n        end\n    end\nend\nif <(Levelo) = [19]> then\n    go to x: (-3) y: (-89)\n    switch costume to (costume5 v)\n    forever\n        if <touching (player v)?> then\n            switch costume to (costume6 v)\n            broadcast (Checkpoint3 v)\n            set [checkpoint v] to [Halfway3]\n            start sound [Checkpoint v]\n            stop [this script v]\n        end\n    end\nend\n\nwhen I receive [checkpoint2 v]\nset [brightness v] effect to (100)\nrepeat (10)\n    change [brightness v] effect by (-10)\nend\n\nwhen I receive [checkpoint3 v]\nset [brightness v] effect to (100)\nrepeat (10)\n    change [brightness v] effect by (-10)\nend\n\n@Jungle boss\n\nwhen I receive [what v]\nset [hitable v] to [0]\nwait (1) seconds\nplay sound [fallblock_rumble v] until done\nshow\nrepeat (18)\n    change y by (Fall)\n    change [fall v] by (-2)\nend\nchange y by (-4)\nstart sound [fallblock_land v]\nbroadcast (Shake v)\nrepeat (20)\n    go to x: (pick random (-2) to (2)) y: (pick random (-71) to (-67))\nend\ngo to x: (0) y: (-69)\nwait (1) seconds\nswitch costume to (costume1 v)\nSmooth glide [0] [88] [5]\nwait (.5) seconds\nbroadcast (Fight start v)\n\nwhen flag clicked\nclear graphic effects\nset [boss damage v] to [0]\nset [fall v] to [0]\nswitch costume to (costume2 v)\ngo to x: (0) y: (241)\nhide\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [fight start v]\nset [bossabletohurt v] to [1]\nrepeat until <(Boss damage) = [3]>\n    repeat (2)\n        repeat (100)\n            set x to ((Player x) - (5))\n        end\n        start sound [fallblock_rumble2 v]\n        repeat (20)\n            go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random (86) to (90))\n        end\n        set y to (88)\n        if <(Boss damage) = [0]> then\n            switch costume to (costume2 v)\n        end\n        if <(Boss damage) = [1]> then\n            switch costume to (costume4 v)\n        end\n        if <(Boss damage) = [2]> then\n            switch costume to (costume6 v)\n        end\n        set [fall v] to [0]\n        repeat (13)\n            change y by (Fall)\n            change [fall v] by (-2)\n        end\n        start sound [fallblock_land v]\n        repeat (12)\n            go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random (-70) to (-66))\n        end\n        wait (.1) seconds\n        if <(Boss damage) = [0]> then\n            switch costume to (costume1 v)\n        end\n        if <(Boss damage) = [1]> then\n            switch costume to (costume3 v)\n        end\n        if <(Boss damage) = [2]> then\n            switch costume to (costume5 v)\n        end\n        Smooth glide (x position) [88] [5]\n    end\n    broadcast (JunglePhase2 v)\n    stop [this script v]\nend\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [retryhalfway v]\nclear graphic effects\nset [boss damage v] to [0]\nset [fall v] to [0]\nswitch costume to (costume2 v)\ngo to x: (0) y: (241)\nhide\n\nwhen I receive [retrylvl1 v]\nset [boss damage v] to [0]\nset [fall v] to [0]\nswitch costume to (costume2 v)\ngo to x: (0) y: (241)\nhide\n\nwhen I receive [junglephase2 v]\nSmooth glide [132] [88] [5]\nrepeat (2)\n    start sound [fallblock_rumble2 v]\n    repeat (20)\n        go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random (86) to (90))\n    end\n    set y to (88)\n    if <(Boss damage) = [0]> then\n        switch costume to (costume2 v)\n    end\n    if <(Boss damage) = [1]> then\n        switch costume to (costume4 v)\n    end\n    if <(Boss damage) = [2]> then\n        switch costume to (costume6 v)\n    end\n    set [fall v] to [0]\n    repeat (13)\n        change y by (Fall)\n        change [fall v] by (-2)\n    end\n    start sound [fallblock_land v]\n    repeat (12)\n        go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random (-70) to (-66))\n    end\n    wait (.1) seconds\n    if <(Boss damage) = [0]> then\n        switch costume to (costume1 v)\n    end\n    if <(Boss damage) = [1]> then\n        switch costume to (costume3 v)\n    end\n    if <(Boss damage) = [2]> then\n        switch costume to (costume5 v)\n    end\n    broadcast (Rocks v)\n    Smooth glide (x position) [88] [5]\n    wait (1) seconds\nend\nrepeat (20)\n    go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random (86) to (90))\nend\nset y to (88)\nif <(Boss damage) = [0]> then\n    switch costume to (costume2 v)\nend\nif <(Boss damage) = [1]> then\n    switch costume to (costume4 v)\nend\nif <(Boss damage) = [2]> then\n    switch costume to (costume6 v)\nend\nset [fall v] to [0]\nrepeat (13)\n    change y by (Fall)\n    change [fall v] by (-2)\nend\nstart sound [fallblock_land v]\nrepeat (12)\n    go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random (-70) to (-66))\nend\nwait (.1) seconds\nif <(Boss damage) = [0]> then\n    switch costume to (costume1 v)\nend\nif <(Boss damage) = [1]> then\n    switch costume to (costume3 v)\nend\nif <(Boss damage) = [2]> then\n    switch costume to (costume5 v)\nend\nset [hitable v] to [1]\nbroadcast (Rocks v)\n\nwhen I receive [jblosehealth v]\nchange [boss damage v] by (1)\nset [hitable v] to [0]\nif <(Boss damage) = [1]> then\n    switch costume to (costume3 v)\nend\nif <(Boss damage) = [2]> then\n    switch costume to (costume5 v)\nend\nrepeat (20)\n    go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random ((y position) - (2)) to ((y position) + (2)))\nend\nif <<(Boss damage) = [1]> or <(Boss damage) = [2]>> then\n    broadcast (IWasHurt v)\nelse\n    broadcast (Other final blow stuff v)\n    repeat (100)\n        change x by (-1.3)\n        change y by (1)\n        change [brightness v] effect by (1)\n    end\n    broadcast (Green clout crystal joins the battle v)\n    hide\n    create clone of (_myself_ v)\nend\n\nwhen I receive [iwashurt v]\nSmooth glide (x position) [88] [5]\nrepeat until <(Boss damage) = [3]>\n    repeat (2)\n        repeat (100)\n            set x to ((Player x) - (5))\n        end\n        start sound [fallblock_rumble2 v]\n        repeat (20)\n            go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random (86) to (90))\n        end\n        set y to (88)\n        if <(Boss damage) = [0]> then\n            switch costume to (costume2 v)\n        end\n        if <(Boss damage) = [1]> then\n            switch costume to (costume4 v)\n        end\n        if <(Boss damage) = [2]> then\n            switch costume to (costume6 v)\n        end\n        set [fall v] to [0]\n        repeat (13)\n            change y by (Fall)\n            change [fall v] by (-2)\n        end\n        start sound [fallblock_land v]\n        repeat (12)\n            go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random (-70) to (-66))\n        end\n        wait (.1) seconds\n        if <(Boss damage) = [0]> then\n            switch costume to (costume1 v)\n        end\n        if <(Boss damage) = [1]> then\n            switch costume to (costume3 v)\n        end\n        if <(Boss damage) = [2]> then\n            switch costume to (costume5 v)\n        end\n        Smooth glide (x position) [88] [5]\n    end\n    broadcast (JunglePhase2 v)\n    stop [this script v]\nend\n\nwhen I receive [jblosehealth v]\nstart sound [fallblock_land v]\nset [brightness v] effect to (100)\nrepeat (10)\n    change [brightness v] effect by (-10)\nend\n\nwhen I receive [other final blow stuff v]\nset [sound v] to [1]\nrepeat (20)\n    broadcast (Final blow shake v)\n    start sound [fallblock_land v]\n    wait (Sound) seconds\n    change [sound v] by (-.3)\nend\nstart sound [explosive_barrel_explosion v]\n\nwhen I receive [final blow shake v]\nrepeat (5)\n    go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random ((y position) - (2)) to ((y position) + (2)))\nend\n\nwhen I start as a clone\nset [bossabletohurt v] to [0]\nshow\nset size to (100) %\nswitch costume to (costume7 v)\nclear graphic effects\npoint in direction (90)\nset [grav3 v] to [4]\nrepeat (30)\n    change [grav3 v] by (-.5)\n    change y by (Grav3)\n    turn right (2) degrees\n    change [ghost v] effect by (4)\nend\ndelete this clone\n\n@Gates\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\ngo to x: (2) y: (75)\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [gates v]\nshow\nstart sound [gate_closing v]\nSmooth glide [2] [0] [7]\nbroadcast (Stop the music v)\n\nwhen I receive [shake v]\nrepeat (20)\n    go to x: (pick random (0) to (4)) y: (pick random (-2) to (2))\nend\ngo to x: (2) y: (0)\n\nwhen I receive [retryhalfway v]\nhide\ngo to x: (2) y: (75)\n\nwhen I receive [retrylvl1 v]\nhide\ngo to x: (2) y: (75)\n\nwhen I receive [open the gate v]\nswitch costume to (costume2 v)\n\nwhen I receive [next level v]\nif <(Levelo) = [7]> then\n    hide\nend\nif <(Levelo) = [14]> then\n    hide\nend\n\nwhen I receive [gates2 v]\ngo to x: (2) y: (105)\nswitch costume to (costume1 v)\nshow\nstart sound [gate_closing v]\nSmooth glide [2] [20] [7]\nbroadcast (Stop the music v)\n\nwhen I receive [retryhalfway2 v]\nhide\n\nwhen I receive [retrylvl2 v]\nhide\n\nwhen I receive [open the gate again v]\nswitch costume to (costume2 v)\n\nwhen I receive [gates3 v]\ngo to x: (2) y: (95)\nswitch costume to (costume3 v)\nshow\nstart sound [gate_closing v]\nSmooth glide [2] [10] [7]\nbroadcast (Stop the music v)\n\nwhen I receive [retryhalfway3 v]\nhide\n\nwhen I receive [retrylvl3 v]\nhide\n\n@Rocks\n\nwhen flag clicked\nset [hurtable v] to [1]\nset size to (100) %\npoint in direction (90)\nhide\n\nwhen I receive [rocks v]\nif <(Hitable) = [0]> then\n    set size to (100) %\n    switch costume to (costume1 v)\n    show\n    go to x: (pick random (-189) to (-13)) y: (190)\n    repeat (45)\n        change y by (-7)\n    end\n    start sound [fallblock_land v]\n    hide\n    create clone of (_myself_ v)\nelse\n    set size to (100) %\n    switch costume to (costume1 v)\n    show\n    go to x: (pick random (-137) to (-13)) y: (190)\n    repeat until <<touching (ground v)?> or <touching (player v)?>>\n        change y by (-7)\n    end\n    if <touching (ground v)?> then\n        set [hurtable v] to [0]\n    else\n        start sound [fallblock_land v]\n        hide\n        create clone of (_myself_ v)\n        broadcast (IWasHurt v)\n    end\nend\n\nwhen I receive [rocks v]\nrepeat (45)\n    turn right (5) degrees\nend\n\nwhen I start as a clone\nshow\nset size to (40) %\nswitch costume to (costume2 v)\nclear graphic effects\npoint in direction (90)\nset [grav2 v] to [4]\nrepeat (30)\n    change [grav2 v] by (-.5)\n    change y by (Grav2)\n    turn right (2) degrees\n    change [ghost v] effect by (4)\nend\ndelete this clone\n\nwhen I receive [hurtjungleboss v]\nbroadcast (Bossbar v)\nSmooth glide [30] [-74] [5]\nset [hurtable v] to [1]\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [retrylvl1 v]\nhide\nset [hurtable v] to [1]\nset size to (100) %\npoint in direction (90)\nhide\n\nwhen I receive [retryhalfway v]\nhide\nset [hurtable v] to [1]\nset size to (100) %\npoint in direction (90)\nhide\n\nwhen I receive [hurtjungleboss v]\nwait (.3) seconds\nhide\ncreate clone of (_myself_ v)\nbroadcast (JBLoseHealth v)\n\n@Green clout crystal2\n\nwhen flag clicked\ngo to x: (-3) y: (0)\nhide\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [green clout crystal joins the battle v]\nshow\nwait (2.5) seconds\nSmooth glide [-3] [-102] [10]\nbroadcast (move v)\nforever\n    if <touching (player v)?> then\n        stop [other scripts in sprite v]\n        broadcast (Stop moving so I can give you the green clout crystal v)\n        stop [this script v]\n    end\nend\n\nwhen I receive [green clout crystal joins the battle v]\nforever\n    change y by (([cos v] of (blah) ) * (.5))\n    change [blah v] by (7)\nend\n\nwhen I receive [stop moving so i can give you the green clout crystal v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [stop moving so i can give you the green clout crystal v]\nstart sound [activate_crystal v]\nSmooth glide [-38] [-113] [7]\nplay sound [Super Mario Odyssey SFX You Got a Moon! v] until done\nbroadcast (Got Green CC v)\n\n@Bossbar\n\nwhen flag clicked\nhide\n\nwhen I receive [fight start v]\ngo to x: (0) y: (0)\nswitch costume to (costume1 v)\nshow\nset [ghost v] effect to (100)\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [bossbar v]\nwait (.4) seconds\nif <<(Boss damage) = [1]> or <(Boss damage) = [2]>> then\n    broadcast (Boss bar shake v)\n    set [brightness v] effect to (100)\n    next costume\n    repeat (10)\n        change [brightness v] effect by (-10)\n    end\nend\nif <(Boss damage) = [3]> then\n    broadcast (Boss bar shake v)\n    set [brightness v] effect to (100)\n    next costume\n    repeat (10)\n        change [brightness v] effect by (-10)\n    end\n    repeat (10)\n        change [ghost v] effect by (10)\n    end\n    hide\nend\n\nwhen I receive [boss bar shake v]\nrepeat (3)\n    go to x: (pick random (-2) to (2)) y: (pick random (-2) to (2))\nend\ngo to x: (0) y: (0)\n\nwhen I receive [retrylvl1 v]\nhide\n\nwhen I receive [retryhalfway v]\nhide\n\nwhen I receive [fight start2 v]\ngo to x: (0) y: (0)\nswitch costume to (costume1 v)\nshow\nset [ghost v] effect to (100)\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [retrylvl2 v]\nhide\n\nwhen I receive [retryhalfway2 v]\nhide\n\nwhen I receive [fight start 3 v]\ngo to x: (0) y: (0)\nswitch costume to (costume1 v)\nshow\nset [ghost v] effect to (100)\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [retryhalfway3 v]\nhide\n\nwhen I receive [retrylvl3 v]\nhide\n\n@Single gate\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\ngo to x: (2) y: (0)\n\nwhen I receive [open the gate v]\nshow\nstart sound [gate_opening v]\nSmooth glide [2] [77] [7]\nbroadcast (move v)\nbroadcast (Opened v)\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [next level v]\nif <(Levelo) = [7]> then\n    hide\nend\nif <(Levelo) = [11]> then\n    show\n    switch costume to (costume2 v)\n    go to x: (2) y: (193)\nend\nif <(Levelo) = [12]> then\n    hide\nend\nif <(Levelo) = [13]> then\n    hide\n    go to x: (2) y: (22)\nend\nif <(Levelo) = [14]> then\n    hide\nend\n\nwhen I receive [open timed gate v]\nSmooth glide [2] [262] [7]\n\nwhen I receive [close timed gate v]\nSmooth glide [2] [193] [7]\n\nwhen flag clicked\nhide\n\nwhen I receive [open the gate again v]\nshow\nstart sound [gate_opening v]\nSmooth glide [2] [94] [7]\nbroadcast (move v)\nbroadcast (Opened 2 v)\n\n@Switch\n\nwhen flag clicked\nset [there is another \(variable\) v] to [0]\ngo to x: (-110) y: (57)\nhide\n\nwhen I receive [next level v]\nif <(Levelo) = [10]> then\n    show\n    go to x: (-110) y: (57)\nend\nif <(Levelo) = [11]> then\n    show\n    go to x: (-179) y: (-144)\nend\nif <(Levelo) = [12]> then\n    hide\n    stop all sounds\n    stop [other scripts in sprite v]\nend\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [retrylvl2 v]\ngo to x: (-110) y: (57)\nhide\n\nwhen I receive [open timed gate v]\nset [sound v] to [1]\nrepeat (2)\n    start sound [Tick v]\n    wait (Sound) seconds\n    change [sound v] by (-.1)\n    start sound [tock v]\n    wait (Sound) seconds\nend\nrepeat (3)\n    play sound [Tick v] until done\n    wait (.1) seconds\n    play sound [tock v] until done\n    wait (.1) seconds\nend\nset [there is another \(variable\) v] to [1]\n\nwhen I receive [switch drain lava v]\nstart sound [groundswitch_moving_down v]\nSmooth glide [-110] [32] [7]\nbroadcast (Go down lava v)\nstop [this script v]\n\nwhen I receive [timed v]\nstart sound [groundswitch_moving_down v]\nSmooth glide [-179] [-167] [7]\nbroadcast (Open timed gate v)\nwait until <(There is another \(Variable\)) = [1]>\nbroadcast (Close timed gate v)\nset [there is another \(variable\) v] to [0]\nSmooth glide [-179] [-144] [7]\n\n@Caves boss\n\nwhen I receive [next level v]\nif <(Levelo) = [13]> then\n    set [boss damage v] to [0]\n    go to x: (132) y: (-18)\n    point in direction (90)\n    show\n    switch costume to (costume2 v)\nend\n\nwhen flag clicked\ngo to x: (129) y: (-21)\nhide\n\nwhen I receive [double what v]\nset [bossabletohurt v] to [1]\nwait (1) seconds\nrepeat (5)\n    next costume\n    wait (.07) seconds\nend\nwait (1) seconds\nrepeat (4)\n    next costume\n    wait (.07) seconds\nend\nwait (2) seconds\nbroadcast (ShakeMonster v)\nrepeat (8)\n    next costume\n    wait (.07) seconds\nend\n\nwhen I receive [shakemonster v]\nwait (.4) seconds\nstart sound [Monster Growl-SoundBible v]\nrepeat (70)\n    go to x: (pick random (127) to (131)) y: (pick random (-19) to (-23))\nend\nwait (.07) seconds\nrepeat (6)\n    next costume\n    wait (.07) seconds\nend\nbroadcast (He has arms now v)\n\nwhen I receive [crystal attack v]\nswitch costume to (costume5 v)\nwait (.07) seconds\nrepeat (4)\n    next costume\n    wait (.07) seconds\nend\nbroadcast (Cmon crystals do yo thang v)\n\nwhen I receive [shake i guess v]\nrepeat (10)\n    go to x: (pick random (127) to (131)) y: (pick random (-19) to (-23))\nend\n\nwhen I receive [close your mouth you're attracting flies v]\nrepeat (6)\n    next costume\n    wait (.07) seconds\nend\nwait (2) seconds\nbroadcast (I'm-a-tired v)\nswitch costume to (costume6 v)\nwait (.07) seconds\nrepeat (2)\n    switch costume to ((costume [number v]) - (1))\nend\n\nwhen I receive [i'm-a-tired v]\nset [rotate v] to [0]\nrepeat (15)\n    turn left (rotate) degrees\n    change [rotate v] by (.5)\nend\nrepeat (5)\n    turn left (rotate) degrees\n    change [rotate v] by (-.5)\nend\n\nwhen I receive [i'm-a-tired v]\nSmooth glide [99] [-62] [17]\nbroadcast (Attack the crystal v)\nswitch costume to (costume26 v)\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [cblosehealth v]\nswitch costume to (costume2 v)\nset [rotate v] to [0]\nrepeat (15)\n    turn right (rotate) degrees\n    change [rotate v] by (.5)\nend\nrepeat (5)\n    turn right (rotate) degrees\n    change [rotate v] by (-.5)\nend\n\nwhen I receive [cblosehealth v]\nchange [boss damage v] by (1)\nif <<(Boss damage) = [1]> or <(Boss damage) = [2]>> then\n    Smooth glide [132] [-18] [17]\nend\n\nwhen I receive [cblosehealth v]\nif <<(Boss damage) = [1]> or <(Boss damage) = [2]>> then\n    broadcast (Bossbar v)\n    repeat (9)\n        next costume\n        wait (.07) seconds\n    end\n    wait (1) seconds\n    start sound [Monster Growl-SoundBible v]\n    broadcast (Shake because it seems empty v)\n    repeat (8)\n        next costume\n        wait (.07) seconds\n    end\n    wait (1) seconds\n    repeat (6)\n        next costume\n        wait (.07) seconds\n    end\n    broadcast (Comeback arms v)\nelse\n    go to x: (132) y: (-18)\n    broadcast (Bossbar v)\n    broadcast (Other final blow stuff2 v)\n    repeat (100)\n        change x by (-1.3)\n        change y by (1)\n        change [brightness v] effect by (1)\n    end\n    broadcast (Blue clout crystal joins the battle v)\n    hide\n    create clone of (_myself_ v)\nend\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\n\nwhen I receive [retryhalfway2 v]\nclear graphic effects\nset [boss damage v] to [0]\nhide\n\nwhen I receive [retrylvl2 v]\nclear graphic effects\nset [boss damage v] to [0]\nhide\n\nwhen I receive [cblosehealth v]\nset [brightness v] effect to (100)\nrepeat (10)\n    change [brightness v] effect by (-10)\nend\n\nwhen I receive [cblosehealth v]\nrepeat (20)\n    go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random ((y position) - (2)) to ((y position) + (2)))\nend\n\nwhen I receive [other final blow stuff2 v]\nset [sound v] to [1]\nrepeat (20)\n    broadcast (Final blow shake 2 v)\n    start sound [Light Bulb Breaking-SoundBible v]\n    wait (Sound) seconds\n    change [sound v] by (-.3)\nend\nstart sound [explosive_barrel_explosion v]\n\nwhen I receive [final blow shake 2 v]\nrepeat (5)\n    go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random ((y position) - (2)) to ((y position) + (2)))\nend\n\nwhen I start as a clone\nset [bossabletohurt v] to [0]\nshow\nset size to (100) %\nswitch costume to (costume27 v)\nclear graphic effects\npoint in direction (90)\nset [grav3 v] to [4]\nrepeat (30)\n    change [grav3 v] by (-.5)\n    change y by (Grav3)\n    turn right (2) degrees\n    change [ghost v] effect by (4)\nend\ndelete this clone\n\nwhen I receive [shake because it seems empty v]\nwait (.4) seconds\nrepeat (70)\n    go to x: (pick random (127) to (131)) y: (pick random (-19) to (-23))\nend\n\n@Right arm\n\nwhen flag clicked\nset [right arm hurtable v] to [0]\nswitch costume to (costume1 v)\ngo to x: (10) y: (-162)\nhide\n\nwhen I receive [he has arms now v]\nclear graphic effects\nshow\nSmooth glide [10] [-110] [7]\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [fight start2 v]\nSmooth glide [-30] [-20] [7]\nset [right arm hurtable v] to [1]\nrepeat (100)\n    set x to (Player x)\nend\nwait (.5) seconds\nswitch costume to (costume2 v)\nset [fall v] to [0]\nrepeat (10)\n    change y by (Fall)\n    change [fall v] by (-2)\nend\nstart sound [fallblock_land v]\nrepeat (10)\n    go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random (-112) to (-108))\nend\nwait (.5) seconds\nswitch costume to (costume1 v)\nSmooth glide [10] [-110] [7]\nset [right arm hurtable v] to [0]\nbroadcast (Left arm attack v)\n\nwhen I receive [crystal attack v]\nSmooth glide [10] [-162] [7]\nhide\n\nwhen I receive [crystal attack v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\nwhen I receive [comeback arms v]\nclear graphic effects\nswitch costume to (costume1 v)\nshow\nSmooth glide [10] [-110] [7]\n\nwhen I receive [right arm attack v]\nSmooth glide [-30] [-20] [7]\nrepeat (100)\n    set x to (Player x)\nend\nwait (.5) seconds\nset [right arm hurtable v] to [1]\nswitch costume to (costume2 v)\nset [fall v] to [0]\nrepeat (10)\n    change y by (Fall)\n    change [fall v] by (-2)\nend\nstart sound [fallblock_land v]\nrepeat (10)\n    go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random (-112) to (-108))\nend\nwait (.5) seconds\nswitch costume to (costume1 v)\nSmooth glide [10] [-110] [7]\nset [right arm hurtable v] to [0]\nbroadcast (Left arm attack v)\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\n\nwhen I receive [retryhalfway2 v]\nswitch costume to (costume1 v)\ngo to x: (10) y: (-162)\nhide\n\nwhen I receive [retrylvl2 v]\nswitch costume to (costume1 v)\ngo to x: (10) y: (-162)\nhide\n\n@Left arm\n\nwhen flag clicked\ngo to x: (45) y: (-203)\nhide\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [he has arms now v]\nclear graphic effects\nset [left arm hurtable v] to [0]\nswitch costume to (costume1 v)\nshow\nSmooth glide [65] [-120] [7]\nbroadcast (Fight start2 v)\nbroadcast (move v)\n\nwhen I receive [left arm attack v]\nSmooth glide [-30] [-20] [7]\nset [left arm hurtable v] to [1]\nrepeat (100)\n    set x to (Player x)\nend\nwait (.5) seconds\nswitch costume to (costume2 v)\nset [fall v] to [0]\nrepeat (10)\n    change y by (Fall)\n    change [fall v] by (-2)\nend\nstart sound [fallblock_land v]\nrepeat (10)\n    go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random (-112) to (-108))\nend\nwait (.5) seconds\nswitch costume to (costume1 v)\nSmooth glide [65] [-120] [7]\nset [left arm hurtable v] to [0]\nbroadcast (Crystal attack v)\nSmooth glide [45] [-203] [7]\nhide\n\nwhen I receive [crystal attack v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\nwhen I receive [comeback arms v]\nset [left arm hurtable v] to [0]\nclear graphic effects\nswitch costume to (costume1 v)\nshow\nSmooth glide [65] [-120] [7]\nbroadcast (Right arm attack v)\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\n\nwhen I receive [retryhalfway2 v]\nswitch costume to (costume1 v)\ngo to x: (45) y: (-203)\nhide\n\nwhen I receive [retrylvl2 v]\nswitch costume to (costume1 v)\ngo to x: (45) y: (-203)\nhide\n\n@Crystal projectiles\n\nwhen flag clicked\nhide\n\nwhen I receive [cmon crystals do yo thang v]\nswitch costume to (costume1 v)\nshow\nrepeat (3)\n    go to x: (50) y: (-100)\n    show\n    broadcast (Shake I guess v)\n    repeat until <<<touching (ground v)?> or <touching (player v)?>> or <touching (gates v)?>>\n        change x by (-5)\n    end\n    hide\n    start sound [Light Bulb Breaking-SoundBible v]\n    create clone of (_myself_ v)\n    wait (.5) seconds\nend\nbroadcast (Close your mouth you're attracting flies v)\n\nwhen I start as a clone\nshow\nset size to (40) %\nswitch costume to (costume2 v)\nclear graphic effects\npoint in direction (90)\nset [grav2 v] to [4]\nrepeat (30)\n    change [grav2 v] by (-.5)\n    change y by (Grav2)\n    turn right (2) degrees\n    change [ghost v] effect by (4)\nend\ndelete this clone\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\n\nwhen I receive [retrylvl2 v]\nswitch costume to (costume1 v)\nhide\ndelete this clone\n\nwhen I receive [retryhalfway2 v]\nswitch costume to (costume1 v)\nhide\ndelete this clone\n\n@Attackable crystal\n\nwhen flag clicked\nhide\n\nwhen I receive [attack the crystal v]\nshow\n\nwhen I receive [cblosehealth v]\nhide\n\nwhen I receive [retrylvl2 v]\nhide\n\nwhen I receive [retryhalfway2 v]\nhide\n\n@Blue clout crystal2\n\nwhen flag clicked\ngo to x: (2) y: (82)\nhide\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [blue clout crystal joins the battle v]\nshow\nwait (2.5) seconds\nSmooth glide [2] [-79] [10]\nbroadcast (move v)\nforever\n    if <touching (player v)?> then\n        stop [other scripts in sprite v]\n        broadcast (Stop moving so I can give you the blue clout crystal v)\n        stop [this script v]\n    end\nend\n\nwhen I receive [blue clout crystal joins the battle v]\nforever\n    change y by (([cos v] of (blah) ) * (.5))\n    change [blah v] by (7)\nend\n\nwhen I receive [stop moving so i can give you the blue clout crystal v]\nstart sound [activate_crystal v]\nSmooth glide [-27] [-99] [7]\nplay sound [Super Mario Odyssey SFX You Got a Moon! v] until done\nbroadcast (Got blue CC v)\n\nwhen I receive [stop moving so i can give you the blue clout crystal v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nbroadcast (move v)\nforever\n    if <touching (player v)?> then\n        stop [other scripts in sprite v]\n        broadcast (Stop moving so I can give you the blue clout crystal v)\n        stop [this script v]\n    end\nend\n\n@Lava spout\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to x: (-1) y: (-46)\nhide\n\nwhen I receive [next level v]\nif <(Levelo) = [15]> then\n    show\nend\nif <(Levelo) = [16]> then\n    switch costume to (costume2 v)\nend\nif <(Levelo) = [17]> then\n    hide\nend\n\nwhen I receive [retrylvl3 v]\nswitch costume to (costume1 v)\ngo to x: (-1) y: (-46)\nshow\n\n@Lava pool\n\nwhen flag clicked\nhide\n\nwhen I receive [next level v]\nif <(Levelo) = [16]> then\n    show\nend\nif <(Levelo) = [17]> then\n    hide\nend\n\n@Mallon Boss\n\nwhen I receive [triple what v]\nclear graphic effects\nswitch costume to (mallon v)\ngo to x: (145) y: (-327)\nshow\nset [boss damage v] to [0]\nwait (1.5) seconds\nplay sound [mallon v] until done\nstart sound [earthquake_rumble v]\nwait (1) seconds\nSmooth glide [145] [-73] [10]\nbroadcast (Fight start 3 v)\nbroadcast (Shockwave attack v)\n\nwhen flag clicked\nswitch costume to (mallon v)\ngo to x: (145) y: (-327)\nhide\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [retryhalfway3 v]\nhide\n\nwhen I receive [retrylvl3 v]\nhide\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\n\nwhen I receive [shockwave attack v]\nwait (1) seconds\nswitch costume to (mallon v)\nif <(Boss damage) = [0]> then\n    wait (.06) seconds\n    repeat (9)\n        next costume\n        wait (.06) seconds\n    end\n    start sound [fallblock_land v]\n    broadcast (Shockwave v)\n    repeat (15)\n        go to x: (pick random (143) to (147)) y: (pick random (-76) to (-72))\n    end\n    wait (1.5) seconds\n    repeat (2)\n        repeat (6)\n            next costume\n            wait (.06) seconds\n        end\n        switch costume to (mallon5 v)\n        wait (.06) seconds\n        repeat (4)\n            next costume\n            wait (.06) seconds\n        end\n        start sound [fallblock_land v]\n        broadcast (Shockwave v)\n        repeat (15)\n            go to x: (pick random (143) to (147)) y: (pick random (-76) to (-72))\n        end\n        wait (1.5) seconds\n    end\n    switch costume to (mallon12 v)\n    wait (.06) seconds\n    repeat (7)\n        next costume\n        wait (.06) seconds\n    end\n    wait (.5) seconds\n    wait (.06) seconds\n    repeat (4)\n        next costume\n        wait (.06) seconds\n    end\n    broadcast (Fist v)\nend\nif <(Boss damage) = [1]> then\n    wait (.06) seconds\n    repeat (9)\n        next costume\n        wait (.06) seconds\n    end\n    start sound [fallblock_land v]\n    broadcast (Shockwave v)\n    repeat (15)\n        go to x: (pick random (143) to (147)) y: (pick random (-76) to (-72))\n    end\n    wait (1) seconds\n    repeat (2)\n        repeat (6)\n            next costume\n            wait (.06) seconds\n        end\n        switch costume to (mallon5 v)\n        wait (.07) seconds\n        repeat (4)\n            next costume\n            wait (.06) seconds\n        end\n        start sound [fallblock_land v]\n        broadcast (Shockwave v)\n        repeat (15)\n            go to x: (pick random (143) to (147)) y: (pick random (-76) to (-72))\n        end\n        wait (1) seconds\n    end\n    switch costume to (mallon12 v)\n    wait (.06) seconds\n    repeat (7)\n        next costume\n        wait (.06) seconds\n    end\n    wait (.5) seconds\n    wait (.06) seconds\n    repeat (4)\n        next costume\n        wait (.06) seconds\n    end\n    broadcast (Fist v)\nend\nif <(Boss damage) = [2]> then\n    wait (.06) seconds\n    repeat (9)\n        next costume\n        wait (.06) seconds\n    end\n    start sound [fallblock_land v]\n    broadcast (Shockwave v)\n    repeat (15)\n        go to x: (pick random (143) to (147)) y: (pick random (-76) to (-72))\n    end\n    wait (.5) seconds\n    repeat (2)\n        repeat (6)\n            next costume\n            wait (.06) seconds\n        end\n        switch costume to (mallon5 v)\n        wait (.06) seconds\n        repeat (4)\n            next costume\n            wait (.06) seconds\n        end\n        start sound [fallblock_land v]\n        broadcast (Shockwave v)\n        repeat (15)\n            go to x: (pick random (143) to (147)) y: (pick random (-76) to (-72))\n        end\n        wait (.5) seconds\n    end\n    switch costume to (mallon12 v)\n    wait (.06) seconds\n    repeat (7)\n        next costume\n        wait (.06) seconds\n    end\n    wait (.5) seconds\n    wait (.06) seconds\n    repeat (4)\n        next costume\n        wait (.06) seconds\n    end\n    broadcast (Fist v)\nend\n\nwhen I receive [bring your arm out v]\nrepeat (4)\n    switch costume to ((costume [number v]) - (1))\n    wait (.06) seconds\nend\nwait (1) seconds\nbroadcast (Shockwave attack v)\n\nwhen I receive [mallonhurt v]\nbroadcast (Bossbar v)\nchange [boss damage v] by (1)\nswitch costume to (mallon v)\nbroadcast (Hide hand v)\nstart sound [recording8 v]\nrepeat (20)\n    go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random ((y position) - (2)) to ((y position) + (2)))\nend\nif <<(Boss damage) = [1]> or <(Boss damage) = [2]>> then\n    broadcast (Shockwave attack v)\nelse\n    switch costume to (mallon29 v)\n    broadcast (Other final blow stuff 3 v)\n    Smooth glide [145] [-327] [45]\n    start sound [lava_damage v]\n    broadcast (Yellow clout crystal joins the battle v)\n    hide\nend\n\nwhen I receive [mallonhurt v]\nset [brightness v] effect to (100)\nrepeat (10)\n    change [brightness v] effect by (-10)\nend\n\n@Shockwave\n\nwhen flag clicked\nhide\n\nwhen I receive [shockwave v]\nswitch costume to (costume1 v)\nshow\ncreate clone of (_myself_ v)\nhide\n\nwhen I start as a clone\ngo to x: (62) y: (-137)\nshow\nrepeat until <<touching (player v)?> or <touching (gates v)?>>\n    change x by (-8)\nend\nrepeat (10)\n    change [ghost v] effect by (10)\nend\ndelete this clone\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\n\nwhen I receive [retryhalfway3 v]\nclear graphic effects\nhide\n\nwhen I receive [retrylvl3 v]\nclear graphic effects\nhide\n\n@Loooooong arm\n\nwhen flag clicked\nset [arm hitable v] to [0]\nhide\n\nwhen I receive [fist v]\nset [arm hitable v] to [0]\ngo to x: (156) y: (-8)\nshow\nSmooth glide [-193] [-8] [7]\nrepeat (70)\n    set x to (Player x)\nend\nwait (1) seconds\nset [fall v] to [0]\nrepeat (11)\n    change y by (Fall)\n    change [fall v] by (-2)\nend\nstart sound [fallblock_land v]\nrepeat (10)\n    go to x: (pick random ((x position) - (2)) to ((x position) + (2))) y: (pick random (-120) to (-116))\nend\nchange [arm hitable v] by (1)\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [okay go back v]\nSmooth glide (x position) [-8] [7]\nSmooth glide [156] [-8] [7]\nhide\nbroadcast (Bring your arm out v)\n\nwhen I receive [ow! v]\nSmooth glide [103] [7] [3]\nstart sound [CS_Punch v]\n\nwhen I receive [ow! v]\nwait (.5) seconds\nbroadcast (Mallonhurt v)\n\nwhen I receive [hide hand v]\nhide\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\n\nwhen I receive [retryhalfway3 v]\nhide\n\nwhen I receive [retrylvl3 v]\nhide\n\n@Yellow clout crystal2\n\nwhen flag clicked\ngo to x: (174) y: (-203)\nhide\n\ndefine Smooth glide (x) (y) (speed)\nset [prex v] to (x position)\nset [prey v] to (y position)\nset [postx v] to (x)\nset [postx v] to (y)\nrepeat ((speed) * ((speed) / ((speed) / (5))))\n    change x by (((x) / (speed)) - ((x position) / (speed)))\n    change y by (((y) / (speed)) - ((y position) / (speed)))\nend\n\nwhen I receive [yellow clout crystal joins the battle v]\nshow\nSmooth glide [11] [6] [10]\nwait (1) seconds\nSmooth glide [11] [-95] [7]\nbroadcast (move v)\nforever\n    if <touching (player v)?> then\n        stop [other scripts in sprite v]\n        broadcast (Stop moving so I can give you the yellow clout crystal v)\n        stop [this script v]\n    end\nend\n\nwhen I receive [yellow clout crystal joins the battle v]\nforever\n    change y by (([cos v] of (blah) ) * (.5))\n    change [blah v] by (7)\nend\n\nwhen I receive [stop moving so i can give you the yellow clout crystal v]\nstart sound [activate_crystal v]\nSmooth glide [-27] [-105] [7]\nplay sound [Super Mario Odyssey SFX You Got a Moon! v] until done\nbroadcast (Got Yellow CC v)\n\nwhen I receive [stop moving so i can give you the yellow clout crystal v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\n@Frame 1\n\nwhen flag clicked\ngo to [front v] layer\nclear graphic effects\nswitch costume to (costume1 v)\nhide\n\nwhen I receive [now play it v]\nshow\nplay sound [Erik Satie - Gymnopédie No v] until done\n\nwhen I receive [frame1 v]\nwait (3) seconds\nrepeat (100)\n    change [ghost v] effect by (1)\nend\nbroadcast (frame2 v)\nswitch costume to (costume2 v)\nwait (3) seconds\nclear graphic effects\n\nwhen I receive [frame3 v]\ngo [forward v] (1) layers\nwait (3) seconds\nrepeat (100)\n    change [ghost v] effect by (1)\nend\nbroadcast (frame4 v)\nswitch costume to (costume4 v)\nwait (3) seconds\nclear graphic effects\n\nwhen I receive [frame5 v]\ngo [forward v] (1) layers\nwait (3) seconds\nrepeat (100)\n    change [ghost v] effect by (1)\nend\nwait (4) seconds\nbroadcast (fade out v)\n\n@Frame 2\n\nwhen I receive [frame1 v]\nwait (3) seconds\nshow\n\nwhen flag clicked\nswitch costume to (costume1 v)\nclear graphic effects\nhide\n\nwhen I receive [frame2 v]\ngo [forward v] (1) layers\nwait (3) seconds\nrepeat (100)\n    change [ghost v] effect by (1)\nend\nbroadcast (frame3 v)\nswitch costume to (costume2 v)\nwait (3) seconds\nclear graphic effects\n\nwhen I receive [frame4 v]\ngo [forward v] (1) layers\nwait (3) seconds\nrepeat (100)\n    change [ghost v] effect by (1)\nend\nbroadcast (frame5 v)\nswitch costume to (costume4 v)\nwait (3) seconds\nclear graphic effects\n\n@Thumb\n\nwhen flag clicked\nhide\n\n@Sprite1\n\nwhen I receive [fight start v]\ngo to x: (0) y: (0)\nswitch costume to (costume1 v)\nshow\nset [ghost v] effect to (100)\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [fight start2 v]\ngo to x: (0) y: (0)\nswitch costume to (costume2 v)\nshow\nset [ghost v] effect to (100)\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [fight start 3 v]\ngo to x: (0) y: (0)\nswitch costume to (costume3 v)\nshow\nset [ghost v] effect to (100)\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [other final blow stuff v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen flag clicked\nhide\n\nwhen I receive [other final blow stuff2 v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [other final blow stuff 3 v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\n