Jelly - A Platformer #games


@Stage\n\nwhen I receive [gamemusic v]\nforever\n    stop all sounds\n    play sound [minecraft_holder_trap_remix v] until done\nend\n\nwhen flag clicked\nswitch backdrop to (startscreen v)\n\nwhen I receive [levelup v]\nswitch backdrop to (Level)\n\nwhen I receive [gameover v]\nswitch backdrop to (won v)\n\nwhen I receive [instructionsstickers v]\nwait (0.1) seconds\nswitch backdrop to (startscreen2 v)\n\nwhen I receive [start v]\nswitch backdrop to (1 v)\n\n@Start End screens\n\nwhen flag clicked\nset [level v] to [1]\nswitch costume to (title v)\nshow\ngo to [front v] layer\nclear graphic effects\nset size to (100) %\nbroadcast (gamemusic v)\ngo to x: (0) y: (0)\nwait (1) seconds\nrepeat (40)\n    change size by (-1)\n    change y by (1.5)\nend\nbroadcast (ShowEpisode v)\n\nwhen I receive [start v]\nhide\nplay sound [start v] until done\n\nwhen I receive [instructionspage v]\nrepeat (30)\n    change size by (-1)\n    change y by (1.5)\nend\nbroadcast (InstructionsStickers v)\n\nwhen I receive [gameover v]\nswitch costume to (you win! v)\ngo to x: (0) y: (300)\nset size to (100) %\nshow\nglide (1) secs to x: (0) y: (0)\n\n@BlueSticker\n\nwhen I receive [instructionsstickers v]\ngo to x: (0) y: (0)\nshow\ngo to [front v] layer\ncreate clone of (_myself_ v)\nswitch costume to (sticker1 v)\nwait (0.1) seconds\nrepeat (200)\n    change x by (5)\nend\n\nwhen I start as a clone\nswitch costume to (sticker2 v)\nwait (3) seconds\nrepeat (200)\n    change x by (5)\nend\nwait (0.1) seconds\nbroadcast (ShowPlayButton v) and wait\n\nwhen I receive [start v]\nhide\ndelete this clone\n\n@Sprite3\n\nwhen flag clicked\nhide\ngo to x: (0) y: (-400)\n\nwhen I receive [showplaybutton v]\nshow\nset size to (50) %\ngo to [front v] layer\nshow\ngo to x: (0) y: (-450)\nglide (0.8) secs to x: (0) y: (-60)\nforever\n    repeat (10)\n        change size by (0.2)\n        if <<<touching (mouse-pointer v)?> and <mouse down?>> or <key (space v) pressed?>> then\n            broadcast (FadeOutInstructions v)\n            hide\n            stop [this script v]\n        end\n    end\n    repeat (10)\n        change size by (-0.2)\n        if <<<touching (mouse-pointer v)?> and <mouse down?>> or <key (space v) pressed?>> then\n            broadcast (FadeOutInstructions v)\n            hide\n            stop [this script v]\n        end\n    end\nend\n\nwhen I receive [start v]\ndelete this clone\n\n@Score\n\nwhen I receive [deletemyball v]\nset size to (215) %\nset [color v] effect to (-25)\nwait (1) seconds\nset size to (190) %\nclear graphic effects\n\nwhen I receive [dollarcollected v]\n\nbroadcast (DollarCollected v)\n\nwhen I start as a clone\nshow\nforever\n    switch costume to (10 v)\n    switch costume to (letter ((length of (Score)) - (Numeral)) of (Score))\nend\n\nwhen I receive [start v]\nhide\nswitch costume to (0 v)\nwait (0.5) seconds\nset size to (60) %\ngo to x: (-90) y: (160)\nset [numeral v] to [0]\ngo to [front v] layer\nrepeat (5)\n    wait (0) seconds\n    create clone of (_myself_ v)\n    change x by (-15)\n    change [numeral v] by (1)\nend\nswitch costume to (score v)\nshow\nset size to (60) %\nforever\n    go to [front v] layer\n    wait (1) seconds\nend\n\nset size to (215) %\nset [color v] effect to (-25)\nwait (1) seconds\nset size to (190) %\nclear graphic effects\n\nwhen flag clicked\nset [brightness v] effect to (100)\nset [score v] to [0]\nhide\n\nset [brightness v] effect to (100)\n\n@Score2\n\nwhen I receive [start v]\nhide\nset size to (40) %\ngo to x: (-150) y: (140)\nset [numeral v] to [0]\nwait (0.5) seconds\ngo to [front v] layer\nrepeat (5)\n    create clone of (_myself_ v)\n    change x by (-10)\n    change [numeral v] by (1)\nend\nswitch costume to (score v)\nshow\n\nwhen I start as a clone\nshow\nswitch costume to (0 v)\nforever\n    switch costume to (10 v)\n    switch costume to (letter ((length of (☁ #BestScore)) - (Numeral)) of (☁ #BestScore))\n    wait (1) seconds\n    if <(Score) > [30000]> then\n        if <<(Score) > (☁ #BestScore)> and <(☁ #BestScore) > [30000]>> then\n            set [☁ #bestscore v] to (Score)\n            if <(username) = [atomicmagicnumber]> then\n        end\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nset [brightness v] effect to (100)\nhide\n\n@ControlCharacter\n\nwhen I receive [gameover v]\nhide\nstop [other scripts in sprite v]\n\nwhen [up arrow v] key pressed\nchange y by (-1)\nif <touching (platforms v)?> then\n    set [yvelocity v] to [5]\nend\nchange y by (1)\n\nwhen I receive [start v]\nbroadcast (Walk v)\nset [yvelocity v] to [0]\nset [xvelocity v] to [0]\nclear graphic effects\nset [ghost v] effect to (99)\nshow\ngo to x: (-200) y: (0)\nforever\n    change [yvelocity v] by (-0.5)\n    if <touching (ladder v)?> then\n        glide (1) secs to x: (10) y: (30)\n    end\n    if <[0] > (YVelocity)> then\n        if <not <touching (platforms v)?>> then\n            if <(YVelocity) < [0]> then\n                change y by (-1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(YVelocity) < [-1]> then\n                change y by (-1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(YVelocity) < [-2]> then\n                change y by (-1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(YVelocity) < [-3]> then\n                change y by (-1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(YVelocity) < [-4]> then\n                change y by (-1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(YVelocity) < [-5]> then\n                change y by (-1)\n            end\n        end\n        if <(YVelocity) < [-6]> then\n            set [yvelocity v] to [-6]\n        end\n        if <touching (platforms v)?> then\n            set [yvelocity v] to [0]\n            change y by (1)\n        end\n    end\n    if <(YVelocity) > [0]> then\n        if <not <touching (platforms v)?>> then\n            if <(YVelocity) > [0]> then\n                change y by (1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(YVelocity) > [1]> then\n                change y by (1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(YVelocity) > [1]> then\n                change y by (1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(YVelocity) > [1]> then\n                change y by (1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(YVelocity) > [1]> then\n                change y by (1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(YVelocity) > [1]> then\n                change y by (1)\n            end\n        end\n        if <(YVelocity) < [-5]> then\n            set [yvelocity v] to [-5]\n        end\n        if <touching (platforms v)?> then\n            change y by (-1)\n            set [yvelocity v] to [0]\n        end\n    end\n    set [xvelocity v] to ((XVelocity) * (0.85))\n    if <<(XVelocity) < [1]> and <(XVelocity) > [-1]>> then\n        set [xvelocity v] to [0]\n    end\n    if <[0] > (XVelocity)> then\n        if <not <touching (platforms v)?>> then\n            if <(XVelocity) < [0]> then\n                change x by (-1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(XVelocity) < [-1]> then\n                change x by (-1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(XVelocity) < [-2]> then\n                change x by (-1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(XVelocity) < [-3]> then\n                change x by (-1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(XVelocity) < [-4]> then\n                change x by (-1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(XVelocity) < [-5]> then\n                change x by (-1)\n            end\n        end\n        if <touching (platforms v)?> then\n            change x by (1)\n            set [xvelocity v] to [0]\n        end\n        if <(XVelocity) < [-5]> then\n            set [xvelocity v] to [-5]\n        end\n    end\n    if <(XVelocity) > [0]> then\n        if <not <touching (platforms v)?>> then\n            if <(XVelocity) > [0]> then\n                change x by (1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(XVelocity) > [1]> then\n                change x by (1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(XVelocity) > [2]> then\n                change x by (1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(XVelocity) > [3]> then\n                change x by (1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(XVelocity) > [4]> then\n                change x by (1)\n            end\n        end\n        if <not <touching (platforms v)?>> then\n            if <(XVelocity) > [5]> then\n                change x by (1)\n            end\n        end\n        if <touching (platforms v)?> then\n            change x by (-1)\n            set [xvelocity v] to [0]\n        end\n        if <[5] < (XVelocity)> then\n            set [xvelocity v] to [5]\n        end\n    end\nend\n\nwhen [w v] key pressed\nchange y by (-1)\nif <touching (platforms v)?> then\n    set [yvelocity v] to [5]\nend\nchange y by (1)\n\nwhen I receive [restartlevel v]\nbroadcast (PositionControlCharacter v)\n\nwhen I receive [levelup v]\nbroadcast (PositionControlCharacter v)\n\nwhen I receive [controlleft v]\ngo to x: (-220) y: (78)\nset [xvelocity v] to [0]\n\nwhen I receive [positioncontrolcharacter v]\ngo to x: (-200) y: (-100)\nif <(Level) = [1]> then\n    go to x: (-200) y: (-100)\nend\nif <(Level) = [4]> then\n    go to x: (-210) y: (0)\nend\nif <(Level) = [5]> then\n    go to x: (-210) y: (-50)\nend\n\nwhen I receive [restartlevel v]\nbroadcast (PositionControlCharacter v)\n\ndefine PlotTrail\n\nwhen flag clicked\ngo to x: (-210) y: (50)\nhide\nforever\n    if <(HoldingBoat?) = [Yes]> then\n        if <(y position) < [-150]> then\n            set y to (-150)\n            set [yvelocity v] to [0]\n        end\n    end\nend\n\nwhen I receive [levelup v]\nbroadcast (PositionControlCharacter v)\n\n@lava\n\nwhen flag clicked\ngo to [back v] layer\nhide\ngo to x: (-198) y: (-175)\nrepeat (3)\n    next costume\n    create clone of (_myself_ v)\n    change x by (170)\nend\n\nwhen I start as a clone\nshow\nforever\n    next costume\n    repeat (3)\n        if <touching (controlcharacter v)?> then\n            if <(HoldingBoat?) = [No]> then\n                start sound [Mine v]\n                broadcast (RestartLevel v)\n            end\n        end\n    end\nend\n\nwhen I receive [gameover v]\nwait (0.2) seconds\ndelete this clone\n\nset size to (100) %\n\nset [ghost v] effect to (50)\n\n@HERO\n\nwhen I receive [levelup v]\ngo to [front v] layer\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nbroadcast (Footsteps v)\ngo to [front v] layer\nshow\nforever\n    go to (controlcharacter v)\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        change [xvelocity v] by (1.5)\n        point in direction (90)\n        next costume\n    end\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        change [xvelocity v] by (-1.5)\n        point in direction (-90)\n        next costume\n    end\nend\n\nwhen I receive [heropointleft v]\npoint in direction (-90)\nnext costume\n\nwhen I receive [heropointright v]\npoint in direction (90)\nnext costume\n\nwhen I receive [gameover v]\nhide\nstop [other scripts in sprite v]\n\nwhen I receive [footsteps v]\nforever\n    if <not <(OldX) = (x position)>> then\n        play sound [Walk v] until done\n    end\n    set [oldx v] to (x position)\nend\n\n@Joystick\n\nwhen I receive [start v]\nwait (0.1) seconds\ngo to x: (162) y: (-102)\nbroadcast (JoyMouseSenseDown v)\nforever\n    if <<mouse down?> and <(mouse y) < [30]>> then\n        point towards (mouse-pointer v)\n        if <<(direction) > [-23]> and <(direction) < [23]>> then\n            switch costume to (n v)\n            if <(ControlOnGround) = [Yes]> then\n                set [yvelocity v] to [5]\n            end\n        end\n        if <<(direction) > [-68]> and <(direction) < [-23]>> then\n            switch costume to (nw v)\n            change [xvelocity v] by (-1.5)\n            broadcast (HeroPointLeft v)\n            if <(ControlOnGround) = [Yes]> then\n                set [yvelocity v] to [5]\n            end\n        end\n        if <<(direction) > [-140]> and <(direction) < [-68]>> then\n            switch costume to (w v)\n            broadcast (HeroPointLeft v)\n            change [xvelocity v] by (-1.5)\n        end\n        if <<(direction) > [23]> and <(direction) < [68]>> then\n            switch costume to (ne v)\n            change [xvelocity v] by (1.5)\n            broadcast (HeroPointRight v)\n            if <(ControlOnGround) = [Yes]> then\n                set [yvelocity v] to [5]\n            end\n        end\n        if <<(direction) > [68]> and <(direction) < [140]>> then\n            broadcast (HeroPointRight v)\n            change [xvelocity v] by (1.5)\n            switch costume to (e v)\n        end\n        if <<(direction) < [-140]> or <(direction) > [140]>> then\n            broadcast (#ACTION v) and wait\n            broadcast (#Crafting v)\n            switch costume to (action v)\n            wait (0.3) seconds\n        end\n    end\nend\n\nhide\n\nwhen I receive [joymousesensedown v]\nclear graphic effects\nforever\n    if <<mouse down?> and <(mouse y) < [30]>> then\n        show\n        go to [front v] layer\n        set [ghost v] effect to (50)\n        set [joyshowcounter v] to [0]\n    else\n        change [joyshowcounter v] by (1)\n        if <(JoyShowCounter) > [25]> then\n            switch costume to (neutral v)\n        end\n        if <(JoyShowCounter) > [50]> then\n            hide\n        end\n    end\nend\n\nwhen flag clicked\nhide\n\n@portal\n\nwhen flag clicked\nhide\n\nwhen I receive [gameover v]\nhide\nstop [other scripts in sprite v]\n\nwhen I receive [portalpositioning v]\ngo to x: (213) y: (-115)\nshow\nset size to (33) %\nforever\n    if <touching (hero v)?> then\n        hide\n        broadcast (#ReleaseTheFruit v)\n        set [levelwas v] to (Level)\n        start sound [minecraft-rare-achievements-sound v]\n    end\n    next costume\nend\n\nwhen I receive [levelup v]\nshow\nif <(Level) = [2]> then\n    go to x: (-65) y: (68)\nend\nif <(Level) = [3]> then\n    go to x: (224) y: (-84)\nend\nif <(Level) = [4]> then\n    go to x: (220) y: (-115)\nend\nif <(Level) = [5]> then\n    go to x: (220) y: (-142)\nend\n\nwhen I receive [start v]\nbroadcast (PortalPositioning v)\n\n@Layercake\n\nwhen flag clicked\nhide\nrepeat (100)\n    create clone of (_myself_ v)\n    go to [front v] layer\nend\n\n@crafting\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nshow\nswitch costume to (empty v)\nset size to (100) %\nforever\n    if <(letter (1) of (costume [name v])) = [*]> then\n        set size to (100) %\n        repeat (10)\n            change size by (0.5)\n        end\n        repeat (10)\n            change size by (-0.5)\n        end\n    end\nend\n\nwhen I receive [nextcraftingstage v]\nnext costume\n\nwhen this sprite clicked\nbroadcast (#Crafting v)\n\nwhen [space v] key pressed\nbroadcast (#Crafting v)\n\nwhen I receive [#crafting v]\nif <(Level) = [3]> then\n    if <(costume [number v]) = [17]> then\n        broadcast (ArmWithSword v)\n        next costume\n        set [#holdingsword? v] to [Yes]\n    end\n    stop [this script v]\nend\nwait (0.1) seconds\nif <(costume [number v]) = [5]> then\n    next costume\n    stop [this script v]\nend\nif <(costume [number v]) = [6]> then\n    if <([x position v] of [controlcharacter v]) > [-40]> then\n        next costume\n        broadcast (-L1Bridge v)\n        stop [this script v]\n    else\n        broadcast (L1BridgePrompt v)\n    end\nend\nif <(costume [number v]) = [11]> then\n    next costume\n    stop [this script v]\nend\nif <(costume [number v]) = [12]> then\n    if <<([x position v] of [controlcharacter v]) > [-25]> and <([x position v] of [controlcharacter v]) < [56]>> then\n        next costume\n        broadcast (-L2Ladder v)\n        stop [this script v]\n    else\n        broadcast (L2Ladderprompt v)\n    end\nend\nif <(costume [number v]) = [23]> then\n    broadcast (ArmWithSword v)\n    next costume\nend\nif <(costume [number v]) = [28]> then\n    set [holdingboat? v] to [Yes]\n    next costume\nend\n\nwhen I receive [levelup v]\nif <(Level) = [1]> then\n    switch costume to (empty v)\n    stop [this script v]\nend\nif <(Level) = [2]> then\n    switch costume to (level 1-2 v)\n    stop [this script v]\nend\nif <(Level) = [3]> then\n    switch costume to (level 2-3 v)\n    stop [this script v]\nend\nif <(Level) = [4]> then\n    switch costume to (level 3/4 v)\n    stop [this script v]\nend\nif <(Level) = [5]> then\n    switch costume to (l4/5 v)\n    stop [this script v]\nend\n\nwhen I receive [level3mining v]\nif <(costume [number v]) < [17]> then\n    next costume\nend\nif <(costume [number v]) = [17]> then\n    broadcast (-L3Mined v)\n    stop [this script v]\nend\n\nwhen I receive [l4mining v]\nif <(costume [number v]) < [22]> then\n    next costume\nend\nif <(costume [number v]) = [22]> then\n    broadcast (-L4Mined v)\n    wait (1) seconds\n    next costume\n    stop [this script v]\nend\n\nstop [this script v]\n\nwhen I receive [joycrafting v]\nbroadcast (#Crafting v)\n\nwhen I receive [restartlevel v]\nif <(Level) = [1]> then\n    switch costume to (empty v)\n    stop [this script v]\nend\nif <(Level) = [2]> then\n    switch costume to (level 1-2 v)\n    stop [this script v]\nend\nif <(Level) = [3]> then\n    switch costume to (level 2-3 v)\n    stop [this script v]\nend\nif <(Level) = [4]> then\n    switch costume to (level 3/4 v)\n    stop [this script v]\nend\nif <(Level) = [5]> then\n    switch costume to (l4/5 v)\n    stop [this script v]\nend\n\nwhen I receive [#crafting v]\nstart sound [Chop v]\nbroadcast (#ACTION v)\n\n@HINTS\n\nwhen I receive [start v]\nreset timer\nwait until <(timer) > [20]>\nrepeat until <([costume # v] of [crafting v]) > [4]>\n    think [Go to the tree.  Press SPACEBAR or click ACTION to chop 4 logs.]\nend\nif <([costume # v] of [crafting v]) < [5]> then\n    think [What now?]\nend\nreset timer\nwait until <(timer) > [20]>\nrepeat until <([costume # v] of [crafting v]) > [5]>\n    think [Press SPACEBAR or click ACTION to make planks.]\nend\nreset timer\nif <([costume # v] of [crafting v]) < [6]> then\n    think [AWESOME!]\nend\nsay []\nwait until <(timer) > [2]>\nrepeat until <([costume # v] of [crafting v]) > [6]>\n    think [Walk to the river then press SPACEBAR or ACTION to craft a bridge!]\nend\nif <<(#XP seconds left) < [0]> and <(Level) = [1]>> then\n    say [A W E S O M E !] for (3) seconds\nend\nif <<(#XP seconds left) < [0]> and <(Level) = [1]>> then\n    say [Grab the XP!] for (5) seconds\nend\n\nwhen flag clicked\nforever\n    go to (controlcharacter v)\n    change y by (15)\nend\n\nwhen I receive [l1bridgeprompt v]\nsay [Get closer to the river!] for (5) seconds\n\nwhen I receive [l2ladderprompt v]\nsay [Go higher first!] for (5) seconds\n\n@Platforms\n\nwhen I receive [levelup v]\nif <(Level) = [9]> then\n    broadcast (gameover v)\nelse\n    switch costume to (Level)\nend\n\nwhen I receive [start v]\nshow\n\nwhen I receive [-l1bridge v]\nswitch costume to (-l1bridge v)\nshow\n\nwhen I receive [-l2ladder v]\nswitch costume to (-l2ladder v)\nshow\n\nwhen I receive [-l3mined v]\nswitch costume to (-3mined v)\nshow\n\nwhen I receive [restartlevel v]\nswitch costume to (Level)\n\nwhen I receive [-l4mined v]\nswitch costume to (-4-dug v)\nshow\n\nwhen I receive [launchfirstlevel v]\nswitch costume to (1 v)\nshow\n\nwhen flag clicked\nhide\ngo to x: (0) y: (0)\nswitch costume to (1 v)\n\n@Trees2\n\nwhen I receive [gameover v]\nhide\nstop [other scripts in sprite v]\n\nwhen I receive [levelup v]\nbroadcast (ShowTrees v)\n\nwhen I receive [off v]\nhide\n\nwhen flag clicked\nhide\nswitch costume to (tree v)\n\nwhen I start as a clone\nshow\nswitch costume to (tree v)\n\ngo to [front v] layer\n\nwhen I receive [#action v]\nif <(distance to [controlcharacter v]) < [50]> then\n    next costume\n    broadcast (NextCraftingStage v)\n    if <(costume [number v]) > [4]> then\n        delete this clone\n    end\nend\n\nwhen I receive [start v]\nbroadcast (ShowTrees v)\n\ngo to x: (500) y: (500)\n\nshow\n\nshow\n\nwhen I receive [showtrees v]\nswitch costume to (tree v)\nif <[2] > [1]> then\n    delete this clone\nend\nif <(Level) = [1]> then\n    go to x: (-200) y: (-90)\n    create clone of (_myself_ v)\n    clear graphic effects\nend\nif <(Level) = [2]> then\n    go to x: (175) y: (-58)\n    set [color v] effect to (-30)\n    create clone of (_myself_ v)\nend\nif <(Level) = [5]> then\n    go to x: (-76) y: (117)\n    set [color v] effect to (-50)\n    create clone of (_myself_ v)\nend\ngo to x: (500) y: (500)\n\nwhen I receive [restartlevel v]\nbroadcast (ShowTrees v)\n\ngo to x: (500) y: (500)\n\n@Creeper\n\nwhen I receive [gameover v]\nhide\nstop [other scripts in sprite v]\n\nwhen I receive [levelup v]\nbroadcast (Creeper v)\n\nwhen I receive [start v]\nhide\ngo to [back v] layer\n\nwhen flag clicked\nhide\nforever\n    if <touching (holding v)?> then\n        if <(#HoldingSword?) = [Yes]> then\n            start sound [Clink v]\n            stop [other scripts in sprite v]\n            repeat (3)\n                next costume\n                wait (0.1) seconds\n                change x by (10)\n            end\n            hide\n        else\n            broadcast (BombHit v)\n            broadcast (RestartLevel v)\n            start sound [mine v]\n        end\n    end\nend\n\ngo to x: (-150) y: (-142)\n\nset y to (58)\n\nset [level v] to [6]\n\nwhen I receive [restartlevel v]\nbroadcast (Creeper v)\n\nwhen I receive [creeper v]\nswitch costume to (creeper v)\nif <(Level) = [3]> then\n    wait (0.3) seconds\n    show\n    go to x: (111) y: (-70)\n    go to [front v] layer\nend\nif <(Level) = [4]> then\n    show\n    go to x: (111) y: (-98)\n    go to [front v] layer\nend\nforever\n    point in direction (90)\n    repeat (50)\n        change x by (0.5)\n    end\n    point in direction (-90)\n    repeat (50)\n        change x by (-0.5)\n    end\nend\n\n@LevelText\n\nwhen I receive [start v]\ngo to x: (-115) y: (73)\nset size to (80) %\nwait (1) seconds\nswitch costume to (1 v)\nshow\nrepeat (3)\n    repeat (20)\n        change size by (1)\n    end\n    repeat (20)\n        change size by (-1)\n    end\nend\n\nwhen I receive [gameover v]\nhide\n\nwhen flag clicked\ngo to [back v] layer\nhide\n\nwhen I receive [levelupsoundonly v]\nstart sound [minecraft-rare-achievements-sound v]\nwait (0.5) seconds\nrepeat (10)\n    play sound [xp-sound-minecraft v] until done\nend\n\nwhen I receive [levelup v]\nif <(Level) = [2]> then\n    go to x: (-135) y: (-45)\n    switch costume to (2 v)\nend\nif <(Level) = [3]> then\n    go to x: (0) y: (20)\n    switch costume to (3 v)\nend\nif <(Level) = [4]> then\n    go to x: (-50) y: (-111)\n    switch costume to (4 v)\nend\nif <(Level) = [5]> then\n    go to x: (-20) y: (-25)\n    switch costume to (5 v)\nend\nset size to (80) %\nshow\nrepeat (3)\n    repeat (20)\n        change size by (1)\n    end\n    repeat (20)\n        change size by (-1)\n    end\nend\n\n@blue flame\n\nwhen I receive [#releasethefruit v]\nshow\nswitch costume to (jets v)\nrepeat until <(#XP seconds left) < [0]>\n    go to (controlcharacter v)\n    change x by (15)\n    next costume\n    change [yvelocity v] by (0.17)\nend\nhide\n\nwhen flag clicked\nhide\n\n@blue flame2\n\nwhen I receive [#releasethefruit v]\nshow\nswitch costume to (jets v)\nrepeat until <(#XP seconds left) < [0]>\n    go to (controlcharacter v)\n    change x by (-15)\n    next costume\n    change [yvelocity v] by (0.17)\nend\nhide\n\nwhen flag clicked\nhide\n\n@Sprite1\n\nwhen I receive [gameover v]\nhide\nstop [other scripts in sprite v]\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\nset [ghost v] effect to (99)\nshow\nforever\n    go to (controlcharacter v)\n    if <touching (platforms v)?> then\n        set [controlonground v] to [Yes]\n    else\n        set [controlonground v] to [No]\n    end\nend\n\n@Powerups Collection\n\nwhen flag clicked\nhide\n\nwhen I receive [streamofcash v]\nset [distancetoscore v] to (distance to [score v])\nrepeat (5)\n    create clone of (_myself_ v)\n    wait (0.05) seconds\nend\n\nwhen I start as a clone\ngo to x: (StreamofCashX) y: (StreamOfCashY)\nset [color v] effect to (150)\nshow\nset size to (50) %\nrepeat (33)\n    point towards (score v)\n    move ((DistanceToScore) / (28)) steps\n    change x by (7)\nend\ndelete this clone\n\n@Boat\n\nwhen I receive [gamemusic v]\nhide\nstop [other scripts in sprite v]\n\nwhen flag clicked\nhide\nset [holdingboat? v] to [No]\n\nwhen I receive [start v]\nset size to (50) %\nstop [other scripts in sprite v]\nforever\n    if <(HoldingBoat?) = [Yes]> then\n        go to (controlcharacter v)\n        show\n        go to [front v] layer\n    else\n        hide\n    end\nend\n\nwhen I receive [restartlevel v]\nset [holdingboat? v] to [No]\n\nwhen I receive [levelup v]\nset [holdingboat? v] to [No]\n\n@Sprite2\n\nwhen flag clicked\nhide\n\nwhen I receive [gameover v]\nclear graphic effects\ngo to x: (0) y: (2)\nset size to (0) %\nwait (1) seconds\nshow\nrepeat (95)\n    change size by (1)\nend\nforever\n    repeat (10)\n        change size by (1)\n        change [color v] effect by (5)\n    end\n    repeat (10)\n        change size by (-1)\n        change [color v] effect by (5)\n    end\nend\n\n@XP\n\nwhen I start as a clone\nshow\nrepeat until <(y position) < [-175]>\n    if <(YVelocityXP) > [-6]> then\n        change [yvelocityxp v] by (-0.2)\n    end\n    set [xvelocityxp v] to ((XVelocityXP) * (0.95))\n    next costume\n    change y by (YVelocityXP)\n    turn right (FruitTwistLocal) degrees\n    change x by (XVelocityXP)\n    if <(distance to [controlcharacter v]) < [27]> then\n        next costume\n        set [color v] effect to (150)\n        glide (0.6) secs to x: (-100) y: (168)\n        start sound [xp-sound-minecraft v]\n        change [score v] by (100)\n        delete this clone\n    end\n    if <([abs v] of (x position) ) > [237]> then\n        delete this clone\n    end\nend\ndelete this clone\n\nwhen I receive [#releasethefruit v]\nset [#xp seconds left v] to [20]\nswitch costume to (sandia v)\nclear graphic effects\npoint in direction (90)\nforever\n    set [fruittwistlocal v] to (pick random (-3) to (3))\n    set [xvelocityxp v] to (pick random (-12) to (-8))\n    set [yvelocityxp v] to [4]\n    switch costume to (((pick random (1) to (5)) * (3)) - (2))\n    create clone of (_myself_ v)\n    go to x: (-237) y: (pick random (0) to (150))\n    set [fruittwistlocal v] to (pick random (-3) to (3))\n    set [xvelocityxp v] to (pick random (15) to (20))\n    set [yvelocityxp v] to [4]\n    switch costume to (((pick random (1) to (5)) * (3)) - (2))\n    create clone of (_myself_ v)\n    wait (0.2) seconds\n    if <(#XP seconds left) < [0]> then\n        broadcast (#ShowLevelTransition v)\n        stop [this script v]\n    end\nend\n\nwait (0.2) seconds\ngo to x: (237) y: (pick random (60) to (150))\nset [fruittwistlocal v] to (pick random (-3) to (3))\nset [xvelocityxp v] to (pick random (-14) to (-10))\nset [yvelocityxp v] to [2]\nswitch costume to (((pick random (1) to (5)) * (3)) - (2))\ncreate clone of (_myself_ v)\n\nwhen flag clicked\nset [#xp seconds left v] to [0]\nhide\n\nwhen I receive [levelup v]\nif <[1] = [1]> then\n    delete this clone\nend\nstop [other scripts in sprite v]\n\nwait (1) seconds\n\nstop [other scripts in sprite v]\n\nstop [other scripts in sprite v]\n\n@ladder\n\nwhen I receive [-l2ladder v]\nshow\ngo to [front v] layer\nforever\n    if <touching (controlcharacter v)?> then\n        set [yvelocity v] to [5]\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [levelup v]\nhide\nstop [other scripts in sprite v]\n\n@HOLDING\n\nwhen flag clicked\ngo to x: (0) y: (0)\nhide\nset [#holdingsword? v] to [No]\nset [#holdingpickaxe? v] to [No]\n\nwhen I receive [levelup v]\nhide\nset [#holdingpickaxe? v] to [No]\nset [#holdingsword? v] to [No]\nstop [other scripts in sprite v]\nif <(Level) = [3]> then\n    switch costume to (pickaxe v)\n    go to x: (37) y: (-102)\n    show\n    wait until <touching (controlcharacter v)?>\n    set [#holdingpickaxe? v] to [Yes]\n    forever\n        go to (controlcharacter v)\n        point in direction ([direction v] of [hero v])\n    end\nend\nif <(Level) = [4]> then\n    switch costume to (pickaxe v)\n    go to x: (-154) y: (96)\n    show\n    wait until <touching (controlcharacter v)?>\n    set [#holdingpickaxe? v] to [Yes]\n    set [#holdingsword? v] to [No]\n    forever\n        go to (controlcharacter v)\n        point in direction ([direction v] of [hero v])\n    end\nend\n\nwhen I receive [#crafting v]\nif <(#HoldingPickaxe?) = [No]> then\n    stop [this script v]\nend\nif <(#HoldingSword?) = [Yes]> then\n    stop [this script v]\nend\nif <(Level) = [3]> then\n    if <(x position) < [-158]> then\n        broadcast (Level3Mining v)\n    else\n        if <([costume # v] of [crafting v]) < [17]> then\n            say [Go left to mine.] for (4) seconds\n        end\n    end\nend\nif <(Level) = [4]> then\n    if <<<(x position) > [-140]> and <(x position) < [-70]>> and <<(y position) > [-20]> and <(y position) < [-10]>>> then\n        broadcast (L4Mining v)\n    else\n        if <([costume # v] of [crafting v]) < [17]> then\n            say [Go left to mine.] for (4) seconds\n        end\n    end\nend\n\nwhen I receive [armwithsword v]\nswitch costume to (sword v)\nset [#holdingsword? v] to [Yes]\n\nwhen I receive [restartlevel v]\nsay []\nset [#holdingpickaxe? v] to [No]\nset [#holdingsword? v] to [No]\nstop [other scripts in sprite v]\nif <(Level) = [3]> then\n    switch costume to (pickaxe v)\n    go to x: (37) y: (-102)\n    show\n    wait until <touching (controlcharacter v)?>\n    set [#holdingpickaxe? v] to [Yes]\n    forever\n        go to (controlcharacter v)\n        point in direction ([direction v] of [hero v])\n    end\nend\nif <(Level) = [4]> then\n    switch costume to (pickaxe v)\n    go to x: (-154) y: (96)\n    show\n    wait until <touching (controlcharacter v)?>\n    set [#holdingpickaxe? v] to [Yes]\n    forever\n        go to (controlcharacter v)\n        point in direction ([direction v] of [hero v])\n    end\nend\n\n@blocksx3\n\nwhen I receive [dropcongrats v]\nif <(Level) = [5]> then\n    stop [this script v]\nend\nstart sound [FunWin v]\nwait (1) seconds\nclear graphic effects\ngo to [front v] layer\nhide\nswitch costume to (1 v)\ngo to x: (0) y: (300)\ncreate clone of (_myself_ v)\nwait (0.8) seconds\nswitch costume to (3 v)\ngo to x: (0) y: (300)\ncreate clone of (_myself_ v)\nwait (0.8) seconds\nswitch costume to (2 v)\ngo to x: (0) y: (300)\ncreate clone of (_myself_ v)\nwait (1.4) seconds\ngo to x: (0) y: (0)\ngo to [front v] layer\nswitch costume to (all v)\nshow\nbroadcast (DeleteLocalClones v)\nrepeat (75)\n    change y by (3)\nend\nhide\n\nwhen I start as a clone\nshow\nglide (0.6) secs to x: (0) y: (0)\nglide (0.3) secs to x: (0) y: (50)\nglide (0.3) secs to x: (0) y: (0)\nglide (0.1) secs to x: (0) y: (20)\nglide (0.1) secs to x: (0) y: (0)\n\nchange [pixelate v] effect by (0.5)\n\nwhen I receive [deletelocalclones v]\ndelete this clone\n\nwhen flag clicked\nhide\n\n@Episode 1\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\nshow\nglide (0.5) secs to x: (0) y: (-100)\nglide (0.2) secs to x: (0) y: (-50)\nglide (0.2) secs to x: (0) y: (-100)\nglide (0.1) secs to x: (0) y: (-75)\nglide (0.1) secs to x: (0) y: (-100)\n\nwhen I receive [showepisode v]\nhide\nclear graphic effects\ngo to x: (0) y: (400)\nswitch costume to (episode 1 v)\ngo to [front v] layer\nrepeat (9)\n    create clone of (_myself_ v)\n    next costume\n    wait (0.3) seconds\nend\nwait (1.5) seconds\ngo to x: (0) y: (0)\nclear graphic effects\nbroadcast (DropLetters v)\n\nwhen I receive [instructionspage v]\ndelete this clone\n\nwhen I receive [dropletters v]\nif <<(costume [number v]) = [1]> or <(costume [number v]) = [9]>> then\n    wait (0.1) seconds\nend\nif <<(costume [number v]) = [2]> or <(costume [number v]) = [8]>> then\n    wait (0.4) seconds\nend\nif <<(costume [number v]) = [3]> or <(costume [number v]) = [7]>> then\n    wait (0.7) seconds\nend\nif <<(costume [number v]) = [4]> or <(costume [number v]) = [6]>> then\n    wait (1) seconds\nend\nif <(costume [number v]) = [5]> then\n    wait (1.33) seconds\nend\nglide (0.2) secs to x: (0) y: (-155)\nrepeat (40)\n    change y by (-1)\nend\nif <(costume [number v]) = [5]> then\n    broadcast (InstructionsPage v)\nend\ndelete this clone\n\nwhen I receive [fadeoutinstructions v]\ngo to x: (0) y: (0)\nswitch costume to (costume2 v)\nshow\nset [ghost v] effect to (100)\nrepeat (20)\n    go to [front v] layer\n    change [ghost v] effect by (-5)\nend\nbroadcast (Start v)\nrepeat (20)\n    change [ghost v] effect by (5)\nend\nhide\n\n@Sprite6\n\nwhen I receive [#releasethefruit v]\nHowManyBonusChests?\nPositionTheChests\n\nwhen flag clicked\nhide\ngo to x: (400) y: (400)\n\nwhen I start as a clone\nshow\nrepeat until <touching (controlcharacter v)?>\n    next costume\nend\nstart sound [456966__funwithsound__success-fanfare-trumpets v]\nchange [score v] by (1000)\nset [streamofcashx v] to (x position)\nset [streamofcashy v] to (y position)\nbroadcast (StreamOfCash v)\ndelete this clone\n\nwhen I receive [levelup v]\nreset timer\ndelete this clone\n\ndefine HowManyBonusChests?\nif <(Level) = [1]> then\n    set [numberofxpbonusclones v] to [5]\n    set [timerstampforchests v] to (timer)\n    repeat until <(TimerStampForChests) < [7]>\n        change [numberofxpbonusclones v] by (-1)\n        change [timerstampforchests v] by (-3)\n    end\nend\nif <(Level) = [2]> then\n    set [numberofxpbonusclones v] to [5]\n    set [timerstampforchests v] to (timer)\n    repeat until <(TimerStampForChests) < [6]>\n        change [numberofxpbonusclones v] by (-1)\n        change [timerstampforchests v] by (-3)\n    end\nend\nif <(Level) = [3]> then\n    set [numberofxpbonusclones v] to [5]\n    set [timerstampforchests v] to (timer)\n    repeat until <(TimerStampForChests) < [13]>\n        change [numberofxpbonusclones v] by (-1)\n        change [timerstampforchests v] by (-3)\n    end\nend\nif <(Level) = [4]> then\n    set [numberofxpbonusclones v] to [5]\n    set [timerstampforchests v] to (timer)\n    repeat until <(TimerStampForChests) < [13]>\n        change [numberofxpbonusclones v] by (-1)\n        change [timerstampforchests v] by (-3)\n    end\nend\nif <(Level) = [5]> then\n    set [numberofxpbonusclones v] to [5]\n    set [timerstampforchests v] to (timer)\n    repeat until <(TimerStampForChests) < [14]>\n        change [numberofxpbonusclones v] by (-1)\n        change [timerstampforchests v] by (-3)\n    end\nend\n\ndefine PositionTheChests\nif <(Level) = [5]> then\n    go to x: (-150) y: (-150)\n    repeat (NumberofXPbonusClones)\n        create clone of (_myself_ v)\n        change x by (80)\n    end\nend\nif <(Level) = [3]> then\n    go to x: (30) y: (-100)\n    repeat (NumberofXPbonusClones)\n        create clone of (_myself_ v)\n        change x by (40)\n    end\nend\nif <(Level) = [2]> then\n    go to x: (65) y: (-100)\n    repeat (NumberofXPbonusClones)\n        create clone of (_myself_ v)\n        change x by (40)\n    end\nend\nif <<(Level) = [1]> or <(Level) = [4]>> then\n    go to x: (-193) y: (-134)\n    repeat (NumberofXPbonusClones)\n        create clone of (_myself_ v)\n        change x by (40)\n    end\nend\n\nwhen I receive [start v]\nreset timer\ndelete this clone\n\nwhen I receive [restartlevel v]\nreset timer\ndelete this clone\n\n@flame\n\nwhen I receive [#releasethefruit v]\ngo to x: (400) y: (400)\nwait (1) seconds\nrepeat until <(#XP seconds left) < [8]>\n    create clone of (_myself_ v)\n    wait (2.5) seconds\nend\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\ngo to x: (pick random (-150) to (150)) y: (180)\ngo to [front v] layer\nshow\nrepeat until <(y position) < [-175]>\n    next costume\n    change y by (-2)\n    if <touching (hero v)?> then\n        set [#xp seconds left v] to [-1]\n        start sound [Ow v]\n        delete this clone\n    end\nend\ndelete this clone\n\n@Timer\n\nwhen I start as a clone\nshow\nforever\n    switch costume to (10 v)\n    switch costume to (letter ((length of (#XP seconds left)) - (Numeral)) of (#XP seconds left))\n    if <(#XP seconds left) > [0]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen I receive [#releasethefruit v]\nset [#xp seconds left v] to [20]\nif <[1] = [1]> then\n    delete this clone\nend\nhide\nswitch costume to (0 v)\nwait (0.5) seconds\nset size to (50) %\ngo to x: (-147) y: (120)\nset [numeral v] to [0]\nrepeat (2)\n    wait (0) seconds\n    create clone of (_myself_ v)\n    change x by (-13)\n    change [numeral v] by (1)\nend\nswitch costume to (score v)\nshow\nforever\n    go to [front v] layer\n    change [#xp seconds left v] by (-1)\n    if <(#XP seconds left) = [0]> then\n        broadcast (#ShowLevelTransition v)\n    else\n    end\n    if <(#XP seconds left) > [0]> then\n        show\n    else\n        hide\n    end\n    wait (1) seconds\nend\n\nset [score v] to [0]\n\nwhen flag clicked\nset [brightness v] effect to (100)\nhide\n\n@Sprite4\n\nwhen flag clicked\ngo to x: (0) y: (0)\nhide\n\nwhen I receive [#showleveltransition v]\nwait (1) seconds\nset [ghost v] effect to (100)\nshow\nrepeat (20)\n    go to [front v] layer\n    change [ghost v] effect by (-3)\nend\nbroadcast (DropCongrats v)\nwait (2) seconds\nwait (3) seconds\nif <(Level) = [5]> then\nend\nchange [level v] by (1)\nif <(Level) = [6]> then\n    broadcast (gameover v)\nelse\n    broadcast (LevelUp v)\nend\nrepeat (20)\n    change [ghost v] effect by (3)\nend\nhide\n\nset [level v] to [0]\n\nwait (3) seconds\n\n@tinyrunner\n\nwhen I receive [gameover v]\nswitch costume to (tinyrunner40 v)\nwait (1) seconds\ngo to x: (8) y: (300)\nshow\nglide (1) secs to x: (8) y: (-51)\nbroadcast (EndTalk v)\nforever\n    go to [front v] layer\n    next costume\nend\n\nwhen I receive [endtalk v]\nif <(length of (username)) < [3]> then\n    set [username v] to [YOU]\nelse\n    set [username v] to (username)\nend\nforever\n    wait (0.2) seconds\n    say [WOW!] for (2) seconds\n    wait (3) seconds\n    say [★★★ AWESOME! ★★★] for (7) seconds\n    wait (1) seconds\n    say (join (join [★★★ ] (Username)) [ WON! ★★★ ]) for (7) seconds\n    wait (3) seconds\n    say [This game took AGES to make...📆] for (7) seconds\n    wait (3) seconds\n    say (join (Username) [ please LOVE ♥ FAV  ♥ FOLLOW!]) for (7) seconds\n    wait (3) seconds\n    say [AtomicMagicNumber MIGHT make episode 2...] for (10) seconds\n    wait (3) seconds\n    say (join (Username) [ is the BEST!]) for (7) seconds\n    wait (3) seconds\n    say [Please love ♥ fav  ♥ follow!] for (7) seconds\n    wait (3) seconds\n    say (join (Username) [ beat Minecraft Platformer Episode 1!]) for (9) seconds\n    wait (3) seconds\n    say [Please love ♥ fav  ♥ follow!] for (7) seconds\n    wait (3) seconds\n    say [★★★You RULE! ★★★] for (7) seconds\n    wait (3) seconds\n    say (join (Username) [ is a PRO-GAMER!]) for (7) seconds\n    wait (3) seconds\n    say [Still watching?] for (3) seconds\n    wait (3) seconds\n    say [Ok, free jokes coming up.  No extra charge.] for (7) seconds\n    wait (3) seconds\n    say [How does Minecraft Steve get his exercise?] for (7) seconds\n    wait (1) seconds\n    say [He runs around the block!!!] for (7) seconds\n    wait (3) seconds\n    say [What is Minecraft Steve's fav sport?] for (7) seconds\n    wait (1) seconds\n    say [Boxing!!!] for (4) seconds\n    wait (1) seconds\n    say [Why did the skeleton run away?] for (7) seconds\n    wait (1) seconds\n    say [He had no-body to back him up!!!!!] for (7) seconds\n    wait (1) seconds\nend\n\nwhen flag clicked\nhide\n\n@LoveB\n\nwhen I start as a clone\nforever\n    go to [front v] layer\n    go to x: ((Scroll) + (480)) y: (-14)\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [gameover v]\ngo to x: (0) y: (-100)\nglide (1.5) secs to x: (0) y: (-14)\npoint in direction (90)\nshow\nset [scroll v] to [0]\nset size to (103) %\ncreate clone of (_myself_ v)\nforever\n    go to [front v] layer\n    change [scroll v] by (-6)\n    if <(Scroll) > [-480]> then\n        go to x: (Scroll) y: (-14)\n    else\n        go to x: ((Scroll) + (960)) y: (-14)\n        if <(Scroll) < [-959]> then\n            set [scroll v] to [0]\n        end\n    end\nend\n\n@SkipLevel\n\nwhen this sprite clicked\nset [skiplevel v] to [Yes]\nif <(Level) = [5]> then\n    broadcast (gameover v)\n    stop [this script v]\nend\nchange [level v] by (1)\nbroadcast (LevelUp v)\n\nwhen I receive [restartlevel v]\nchange [skiplevellag v] by (1)\nif <(SkipLevelLag) > [3]> then\n    switch costume to (Level)\n    go to [back v] layer\n    show\nend\n\nwhen I receive [levelup v]\nhide\nset [skiplevellag v] to [0]\n\nwhen flag clicked\ngo to x: (0) y: (0)\nset [skiplevellag v] to [0]\nset [skiplevel v] to [No]\nhide\ngo to [back v] layer\n\nset [☁ #bestscore v] to [0]\n\n