The Grand plains 2.5D platformer

Instructions: arrow keys or wasd to move.\nTap for mobile\nThe shining cavern here! https://scratch.mit.edu/projects/648224728

@Stage\n\nwhen flag clicked\nset volume to (20) %\nset [soundcontroller v] to []\nforever\n    set [soundcontroller v] to [more xDD]\n    switch backdrop to (Lvl)\nend\n\nif <(Lvl) = [1]> then\n    set [soundcontroller v] to [more xDD]\nend\nif <not <(soundController) = (controllerData)>> then\n    stop all sounds\n    wait until <(soundController) = (controllerData)>\nend\n\ndefine Play sound (   lvl type   )\nstop all sounds\nplay sound [cool v] until done\n\nwhen I receive [crosscheck data v]\nset [controllerdata v] to (soundController)\n\nwhen I receive [setup v]\n\n    Play sound (soundController)\nend\n\nwhen I receive [game v]\n\n    broadcast (crosscheck data v)\nend\n\nset [soundcontroller v] to [overworldNSMB2]\n\nset [soundcontroller v] to [JJD - Adventure \[NCS Release\]]\n\n@player\n\nwhen flag clicked\nbroadcast (Setup v)\nbroadcast (GameSetup v)\n\nwhen I receive [gamesetup v]\nset [keycontrol v] to [1]\nset [playercanmove v] to [1]\nforever\n    Setup\n    broadcast (deleteAllClones v)\n    broadcast (Game v)\n    repeat until <key (r v) pressed?>\n        set [yp v] to ((<(globalSize) = [0]> * (YP)) + ((((1.055) * (globalSize)) - (74.5)) * <not <(globalSize) = [0]>>))\n        set size to ((75) + ((globalSize) * (0.8))) %\n        set [xp v] to ((((-74) + (globalSize)) * <not <(globalSize) = [0]>>) + ((XP) * <(globalSize) = [0]>))\n        if <(Yv) < [-16]> then\n            set [yv v] to [-16]\n        end\n        set [scrolllocky v] to ((((SCY) * <not <(YP) < ((SCY) - (70))>>) + (((YP) + (70)) * )) + (0))\n        set [scrolllockx v] to [0]\n        set [scx v] to (SCX)\n        Platform Collision               min SY (ScrollLockY) max SY ((((((330) * <(Lvl) = [1]>) + (<(Lvl) = [2]> * (500))) + ((250) * <(Lvl) = [3]>)) + ((300) * <(Lvl) = [4]>)) + ((300) * <(Lvl) = [5]>)) min SX (ScrollLockX) max SX (((((230) * <(Lvl) = [1]>) + ((155) * <(Lvl) = [2]>)) + (<(Lvl) = [3]> * (400))) + ((600) * <(Lvl) = [4]>)) Second Area SCY               min SY [-300] max SY [-170] controls <<<key (a v) pressed?> or <key (left arrow v) pressed?>> or <<[-50] > (mouse x)> and <mouse down?>>>  <<<key (d v) pressed?> or <key (right arrow v) pressed?>> or <<(mouse x) > [50]> and <mouse down?>>>\n        Position Sprites\n        broadcast (Refresh v)\n    end\nend\n\ndefine Platform Collision               min SY (misy) max SY (masy) min SX (misx) max SX (masx) Second Area SCY               min SY (misy2) max SY (masy2) controls <     left     > <     up     > <     right     >\nif <(playerCanMove) = [1]> then\n    switch costume to ((<not <     left     >> + (([abs v] of (<     right     > - <     left     >) ) * (2))) + (0))\n    set [xv v] to ((1) * (((Xv) + (((<     left     > * (-2.5)) + (<     right     > * (2.5))) * (keyControl))) * (1)))\n    Change Player X by (Xv)\n    set [xv v] to ((Xv) * (0.7))\n    set [yv v] to (((13) * <<     up     > and <(Airtime) < [4]>>) + ((Yv) * <not <<     up     > and <(Airtime) < [4]>>>))\n    change [yv v] by (-1)\n    Change Player Y by (Yv)\n    Position Sprites\n    set [camdelay v] to ((0) + (((XP) - (SCX)) / (5)))\n    change [scx v] by (CamDelay)\n    set [scx v] to ((((misx) * <(SCX) < (misx)>) + ((masx) * <(masx) < (SCX)>)) + ((SCX) * <not <<(SCX) < (misx)> or <(masx) < (SCX)>>>))\n    broadcast (correct SCY v)\n    if <((SCY) + (80)) < (YP)> then\n        set [scy v] to ((YP) - (80))\n    else\n        if <<(YP) < ((SCY) - (70))> and <not <<(SCY) < [10]> and <not <touching (scrollzones v)?>>>>> then\n            set [scy v] to ((YP) + (70))\n        else\n            if <<(YP) < ((SCY) - (70))> and <<touching (scrollzones v)?> and <(ScrollLockY) < [10]>>> then\n                set [scy v] to ((YP) + (70))\n            end\n        end\n    end\n    set [scy v] to (((((misy) * <(SCY) < (misy)>) + ((misy2) * <<not <(SCY) < (misy)>> and <(SCY) < (misy2)>>)) + ((masy) * <(masy) < (SCY)>)) + ((SCY) * <not <<<(SCY) < (misy)> or <(SCY) < (misy2)>> or <(masy) < (SCY)>>>))\n    if <(YP) < [-175]> then\n        if <not <touching (scrollzones v)?>> then\n            broadcast (GameSetup v)\n        end\n    end\n    Position Sprites\n    if <(keyControl) < [1]> then\n        change [keycontrol v] by (0.05)\n    end\n    if <[1] < (keyControl)> then\n        set [keycontrol v] to [1]\n    end\n    set [playerxglobal v] to (x position)\n    set [playeryglobal v] to (y position)\nend\n\ndefine Change Player Y by ( y       )\nchange [yp v] by ( y       )\nchange [airtime v] by (1)\nPosition Sprites\nrepeat until <not <<touching (ghitbox v)?> or <touching (solidobjs v)?>>>\n    if <( y       ) > [0]> then\n        change [yp v] by (-1)\n    else\n        change [yp v] by (1)\n        set [airtime v] to [0]\n    end\n    Position Sprites\n    set [yv v] to [0]\nend\n\ndefine Position Sprites\ngo to x: ((XP) - (SCX)) y: ((YP) - (SCY))\n\ndefine Setup\nbroadcast (dump clones v)\nClone [10]\nset [xp v] to [-65]\nset [yp v] to [-63]\nset [xv v] to [0]\nset [yv v] to [0]\nset [scx v] to [0]\nset [scy v] to [0]\nset [airtime v] to [0]\nset [scrolllocky v] to [0]\npoint in direction (90)\n\ndefine Change Player X by ( x       )\nset [sliding? v] to [0]\nchange [xp v] by (round ( x       ))\nPosition Sprites\nif <<touching (ghitbox v)?> or <touching (solidobjs v)?>> then\n    repeat (12)\n        change [yp v] by (1)\n        Position Sprites\n        if <not <<touching (ghitbox v)?> or <touching (solidobjs v)?>>> then\n            stop [this script v]\n        end\n    end\n    change [yp v] by (-12)\n    repeat until <not <<touching (ghitbox v)?> or <touching (solidobjs v)?>>>\n        if <( x       ) > [0]> then\n            change [xp v] by (-1)\n        else\n            change [xp v] by (1)\n        end\n        Position Sprites\n    end\nend\n\nwhen I start as a clone\ngo to [back v] layer\ngo [forward v] (1) layers\nswitch costume to (bg v)\nforever\n    set [xp v] to ((playerXGlobal) + (SCX))\n    set [yp v] to ((playerYGlobal) + (SCY))\n    Position Sprites\n    set x to (round (((playerXGlobal) * (((150) + ((zPos) * (-1))) / (150))) * (1)))\n    set y to (round (((playerYGlobal) * (((200) + ((zPos) * (-1.5))) / (200))) * (1)))\nend\n\ndefine Clone (     amnt     )\nclear graphic effects\nset [zpos v] to [0]\nset [brightness v] effect to (-1)\nrepeat (     amnt     )\n    create clone of (_myself_ v)\n    change [zpos v] by (0.5)\n    change [brightness v] effect by (-0.5)\nend\nclear graphic effects\nset [brightness v] effect to (0)\n\nwhen I receive [dump clones v]\ndelete this clone\n\n\n    broadcast (GameSetup v)\nend\n\nwhen I start as a clone\nif <<(username) = [-BenGaming-]> and <<key (down arrow v) pressed?> and <key (space v) pressed?>>> then\n    set [pixelate v] effect to (25)\nend\n\nset [coins picked up v] to [0]\n\nwhen flag clicked\nforever\n    if <[-160] > (y position)> then\n        broadcast (dead v)\n    end\nend\n\nwhen I receive [dead v]\nset [coins picked up v] to [0]\n\n@ground\n\ndefine Position (CHECK) (x) (y)\ngo to x: (x) y: (y)\nif <<(x) = (x position)> and <(y) = (y position)>> then\n    show\nelse\n    hide\nend\n\nwhen I receive [setup v]\nif <<(username) = [-BenGaming-]> and <key (2 v) pressed?>> then\n    set [lvl v] to [2]\nelse\n    if <<(username) = [-BenGaming-]> and <key (3 v) pressed?>> then\n        set [lvl v] to [3]\n    else\n        if <<(username) = [-BenGaming-]> and <key (4 v) pressed?>> then\n            set [lvl v] to [4]\n        else\n            if <<(username) = [-BenGaming-]> and <key (5 v) pressed?>> then\n                set [lvl v] to [5]\n            else\n                set [lvl v] to [1]\n            end\n        end\n    end\nend\n\nwhen I receive [deleteallclones v]\ndelete this clone\n\ndefine Clone (     amnt     )\nhide\nclear graphic effects\nset [zpos v] to [0]\nset [brightness v] effect to (-15)\nswitch costume to (Lvl)\nrepeat (     amnt     )\n    create clone of (_myself_ v)\n    change [zpos v] by (1.5)\n    change [brightness v] effect by (0.5)\nend\nset [brightness v] effect to (0)\nhide\n\ndefine Adjust to large size (     size     )\nswitch costume to (blank v)\nset size to (     size     ) %\nswitch costume to (Lvl)\n\nwhen I start as a clone\ngo to [back v] layer\ngo [forward v] ((zPos) / (1.5)) layers\nAdjust to large size ((zPos) + (150))\nshow\nforever\n    Position (CHECK) (round (((SCX) * (((150) + (zPos)) / (150))) * (-1))) (round (((SCY) * (((150) + (zPos)) / (150))) * (-1)))\n    if <(zPos) > [33.75]> then\n        go to [front v] layer\n    end\n    switch costume to (Lvl)\nend\n\nwhen I receive [game v]\nClone [45]\n\nwhen I start as a clone\nif <<(username) = [-BenGaming-]> and <<key (down arrow v) pressed?> and <key (space v) pressed?>>> then\n    set [pixelate v] effect to (25)\nend\n\nwhen flag clicked\n\nwhen I receive [end intro v]\n\nshow\n\nhide\nbroadcast (deleteAllClones v)\n\nhide\n\nwhen flag clicked\nbroadcast (Game v)\n\n@gHitbox\n\ndefine Position (CHECK) (x) (y)\ngo to x: (x) y: (y)\nif <<(x) = (x position)> and <(y) = (y position)>> then\n    show\nelse\n    hide\nend\n\nwhen I receive [game v]\nhide\nclear graphic effects\ncreate clone of (_myself_ v)\n\nwhen I receive [deleteallclones v]\ndelete this clone\n\ndefine Adjust to large size (     size     )\nswitch costume to (blank v)\nset size to (     size     ) %\nswitch costume to (Lvl)\n\nwhen I start as a clone\nAdjust to large size [175]\nset [ghost v] effect to (100)\nshow\nforever\n    Position (CHECK) (round (((SCX) * (1.15)) * (-1))) (round (((SCY) * (1.15)) * (-1)))\n    switch costume to (Lvl)\nend\n\n@TN\n\nwhen flag clicked\nset [ghost v] effect to (100)\ngo to [front v] layer\n\n@Goal\n\nwhen I receive [game v]\nif <(Lvl) = [1]> then\n    Goal at [-120] [400]\nelse\n    if <(Lvl) = [2]> then\n        Goal at [-60] [440]\n    else\n        if <(Lvl) = [3]> then\n            Goal at [-196] [200]\n        else\n            if <(Lvl) = [4]> then\n                Goal at [628] [186]\n            end\n        end\n    end\nend\n\ndefine Goal at (     xpos     ) (     ypos     )\nhide\nset size to (150) %\nset [xpos v] to (     xpos     )\nset [ypos v] to (     ypos     )\ncreate clone of (_myself_ v)\nhide\n\ndefine Position (CHECK) (x) (y)\ngo to x: (x) y: (y)\nif <<(x) = (x position)> and <(y) = (y position)>> then\n    show\nelse\n    hide\nend\n\nwhen I start as a clone\npoint in direction (90)\nswitch costume to (goalred v)\nclear graphic effects\nforever\n    Position (CHECK) (round ((xPos) + (((SCX) * (1.15)) * (-1)))) (((yPos) + (([sin v] of ((timer) * (150)) ) * (5))) + (round (((SCY) * (1.15)) * (-1))))\n    set size to ((150) + (([sin v] of ((timer) * (200)) ) * (15))) %\n    set [color v] effect to ((-100) + (([sin v] of ((timer) * (100)) ) * (15)))\n    turn right (2) degrees\n    if <touching (player v)?> then\n        if <not <(Lvl) = [5]>> then\n            change [lvl v] by (1)\n            broadcast (deleteAllClones v)\n            broadcast (GameSetup v)\n        end\n    end\nend\n\nchange [lvl v] by (-1)\nbroadcast (deleteAllClones v)\nbroadcast (GameSetup v)\n\nwhen I receive [deleteallclones v]\ndelete this clone\n\nwhen I start as a clone\nif <<(username) = [-Bencoder-]> and <<key (down arrow v) pressed?> and <key (space v) pressed?>>> then\n    set [pixelate v] effect to (25)\nend\n\n@solidOBJS\n\ndefine OBJ at (     xpos     ) (     ypos     ) type (     type     )\nhide\nchange [set v] by (1)\nclear graphic effects\nset size to (150) %\nset [xpos v] to (     xpos     )\nset [ypos v] to (     ypos     )\nset [type v] to (     type     )\nset [zpos v] to [0]\nset [brightness v] effect to (0)\ncreate clone of (_myself_ v)\nset [brightness v] effect to (0)\nclear graphic effects\nhide\n\nwhen I receive [game v]\nset [set v] to [0]\nif <(Lvl) = [1]> then\n\nOBJ at [80] [0] type [box2]\n\nwhen I start as a clone\nset [color v] effect to (<(type) = [ball]> * (((1) + (set)) * (10)))\nset [brightness v] effect to (-10)\nshow\nswitch costume to (type)\nforever\n    Tick Entities\n    set [xpos v] to (xPos)\n    set [ypos v] to (yPos)\n    Position (CHECK) (round ((xPos) - ((SCX) * (1.15)))) (round ((yPos) - (SCY)))\nend\n\ndefine Change Y by ( y       )\nchange [ypos v] by ( y       )\nPosition (CHECK) (round ((xPos) - (SCX))) (round ((yPos) - (SCY)))\nrepeat until <not <<touching (ghitbox v)?> or <touching (solidobjs v)?>>>\n    if <( y       ) > [0]> then\n        change [ypos v] by (-1)\n    else\n        change [ypos v] by (1)\n    end\n    Position (CHECK) (round ((xPos) - (SCX))) (round ((yPos) - (SCY)))\n    set [yv v] to [0]\nend\n\ndefine Change X by ( x       )\nchange [xpos v] by (round ( x       ))\nPosition (CHECK) (round ((xPos) - (SCX))) (round ((yPos) - (SCY)))\nif <<touching (ghitbox v)?> or <touching (solidobjs v)?>> then\n    repeat (12)\n        change [ypos v] by (1)\n        Position (CHECK) (round ((xPos) - (SCX))) (round ((yPos) - (SCY)))\n        if <not <<touching (ghitbox v)?> or <touching (solidobjs v)?>>> then\n            stop [this script v]\n        end\n    end\n    change [ypos v] by (-12)\n    repeat until <not <<touching (ghitbox v)?> or <touching (solidobjs v)?>>>\n        if <<( x       ) > [0]> or <([xv v] of [player v]) > [0]>> then\n            change [xpos v] by (-2)\n        else\n            change [xpos v] by (2)\n        end\n        Position (CHECK) (round ((xPos) - (SCX))) (round ((yPos) - (SCY)))\n        set [xv v] to [0]\n    end\nend\n\nif <not <(round ( x       )) = [0]>> then\n\ndefine Position (CHECK) (x) (y)\ngo to x: (x) y: (y)\nif <<(x) = (round (x position))> and <(y) = (round (y position))>> then\n    show\nelse\n    hide\nend\n\ndefine Tick Entities\nPosition (CHECK) (round ((xPos) - (SCX))) (round ((yPos) - (SCY)))\nset [xv v] to (((xv) + ((<<(distance to [player v]) < [55]> and <not >> * ([xv v] of [player v])) * (0.6))) * (0.6))\nchange [yv v] by (-1)\nChange Y by (yv)\nChange X by ((xv) * (0.7))\nPosition (CHECK) (round ((xPos) - (SCX))) (round ((yPos) - (SCY)))\n\nOBJ at [0] [0] type [box2]\nOBJ at [-100] [-50] type [box1]\nOBJ at [0] [0] type [box3]\nOBJ at [80] [0] type [box2]\nOBJ at [50] [50] type [box2]\nOBJ at [0] [-50] type [box1]\nOBJ at [25] [0] type [box2]\nOBJ at [60] [60] type [box2]\n\nset [brightness v] effect to (-1)\nrepeat (10)\n    create clone of (_myself_ v)\n    change [zpos v] by (0.5)\n    change [brightness v] effect by (-0.5)\nend\n\nwhen I receive [deleteallclones v]\ndelete this clone\n\nOBJ at [20] [0] type [box3]\n\n@scrollZones\n\ndefine Position (CHECK) (x) (y)\ngo to x: (x) y: (y)\nif <<(x) = (x position)> and <(y) = (y position)>> then\n    show\nelse\n    hide\nend\n\nwhen I receive [game v]\nhide\nclear graphic effects\ncreate clone of (_myself_ v)\n\nwhen I receive [deleteallclones v]\ndelete this clone\n\ndefine Adjust to large size (     size     )\nswitch costume to (blank v)\nset size to (     size     ) %\nswitch costume to (Lvl)\n\nwhen I start as a clone\nAdjust to large size [175]\nset [ghost v] effect to (100)\nshow\nforever\n    Position (CHECK) (round (((SCX) * (1.15)) * (-1))) (round (((SCY) * (1.15)) * (-1)))\n    switch costume to (Lvl)\nend\n\n@BG Elements\n\ndefine Position (CHECK) (x) (y)\ngo to x: (x) y: (y)\nif <<(x) = (x position)> and <(y) = (y position)>> then\n    show\nelse\n    hide\nend\n\nwhen I receive [game v]\nhide\nclear graphic effects\ncreate clone of (_myself_ v)\n\nwhen I receive [deleteallclones v]\ndelete this clone\n\ndefine Adjust to large size (     size     )\nswitch costume to (blank v)\nset size to (     size     ) %\nswitch costume to (Lvl)\n\nwhen I start as a clone\nAdjust to large size [175]\nset [ghost v] effect to (0)\nshow\nforever\n    Position (CHECK) (round (((SCX) * (1)) * (-1))) (round (((SCY) * (1)) * (-1)))\n    switch costume to (Lvl)\n    go to [back v] layer\nend\n\ngo [forward v] (22) layers\n\nwhen I start as a clone\nif <<(username) = [BirdNani]> and <<key (down arrow v) pressed?> and <key (space v) pressed?>>> then\n    set [pixelate v] effect to (25)\nend\n\n@coins\n\ndefine Particles (     xpos     ) (     ypos     ) class (     id     )\nset [subclass v] to [0]\nset [xpos v] to (     xpos     )\nset [ypos v] to (     ypos     )\nrepeat (((pick random (10) to (20)) * <(     id     ) = [2]>) + ((pick random (5) to (10)) * <(     id     ) = [1]>))\n    set [subclass v] to [1]\n    set [entitytype v] to [1]\n    create clone of (_myself_ v)\nend\nset [subclass v] to [0]\n\ndefine Coin at (     xpos     ) (     ypos     ) type coin/starcoin (     type     )\nset [subclass v] to [0]\nif <(     type     ) = [coin]> then\n    set [entitytype v] to [2]\nelse\n    if <(     type     ) = [starcoin]> then\n        set [entitytype v] to [3]\n    end\nend\nhide\nset size to (150) %\nset [xpos v] to (     xpos     )\nset [ypos v] to (     ypos     )\ncreate clone of (_myself_ v)\nhide\n\nwhen I receive [game v]\nif <(Lvl) = [1]> then\n    Coin at [64] [5] type coin/starcoin [coin]\n    Coin at [92] [20] type coin/starcoin [coin]\n    Coin at [119] [5] type coin/starcoin [coin]\n    Coin at [-65] [405] type coin/starcoin [coin]\n    Coin at [-38] [420] type coin/starcoin [coin]\n    Coin at [-11] [405] type coin/starcoin [coin]\n    Coin at [306] [275] type coin/starcoin [coin]\n    Coin at [336] [275] type coin/starcoin [coin]\n    Coin at [336] [305] type coin/starcoin [coin]\n    Coin at [306] [305] type coin/starcoin [coin]\n    Coin at [-180] [235] type coin/starcoin [starcoin]\n    Coin at [280] [-70] type coin/starcoin [starcoin]\nelse\n    if <(Lvl) = [2]> then\n        Coin at [55] [0] type coin/starcoin [coin]\n        Coin at [35] [140] type coin/starcoin [coin]\n        Coin at [-160] [250] type coin/starcoin [starcoin]\n        Coin at [165] [260] type coin/starcoin [coin]\n        Coin at [210] [260] type coin/starcoin [coin]\n        Coin at [187.5] [285] type coin/starcoin [coin]\n    else\n        if <(Lvl) = [3]> then\n            Coin at [135] [130] type coin/starcoin [starcoin]\n            Coin at [400] [-165] type coin/starcoin [starcoin]\n            Coin at [300] [20] type coin/starcoin [coin]\n        else\n            if <(Lvl) = [4]> then\n                Coin at [300] [-50] type coin/starcoin [starcoin]\n                Coin at [-135] [115] type coin/starcoin [coin]\n                Coin at [-100] [115] type coin/starcoin [coin]\n                Coin at [-118] [140] type coin/starcoin [coin]\n            else\n                if <(Lvl) = [5]> then\n            end\n        end\n    end\nend\n\nwhen I start as a clone\nif <(subClass) = [0]> then\n    if <(entityTYPE) = [2]> then\n        clear graphic effects\n        set size to (65) %\n        switch costume to (coin v)\n        set [collected? v] to [0]\n        broadcast (check v)\n        forever\n            Position (CHECK) (round ((xPos) + (((SCX) * (1.15)) * (-1)))) (((yPos) + (([sin v] of ((timer) * (150)) ) * (10))) + (round (((SCY) * (1.15)) * (-1))))\n        end\n    else\n        if <(entityTYPE) = [3]> then\n            clear graphic effects\n            set size to (150) %\n            switch costume to (starcoin v)\n            set [collected? v] to [0]\n            broadcast (check v)\n            forever\n                Position (CHECK) (round ((xPos) + (((SCX) * (1.15)) * (-1)))) (((yPos) + (([sin v] of ((timer) * (150)) ) * (10))) + (round (((SCY) * (1.15)) * (-1))))\n            end\n        end\n    end\nelse\n    if <(subClass) = [1]> then\n        if <(entityTYPE) = [1]> then\n            show\n            clear graphic effects\n            switch costume to (dust v)\n            set size to (65) %\n            set [xv v] to (pick random (-3.000) to (3.000))\n            set [yv v] to (pick random (3.000) to (6.000))\n            \n                change [xpos v] by (xv)\n                change [ypos v] by (yv)\n                change [yv v] by (-0.5)\n                change [ghost v] effect by (5)\n                Position (CHECK) (round ((xPos) + (((SCX) * (1.15)) * (-1)))) (round ((yPos) + (((SCY) * (1.15)) * (-1))))\n            end\n        end\n    end\nend\n\ndefine Position (CHECK) (x) (y)\ngo to x: (x) y: (y)\nif <<(x) = (x position)> and <(y) = (y position)>> then\n    show\nelse\n    hide\nend\n\nwhen I receive [check v]\nforever\n    if <(subClass) = [0]> then\n        if <touching (player v)?> then\n            set [collected? v] to [1]\n            start sound ((entityTYPE) - (1))\n            change [coins picked up v] by (1)\n            Particles (xPos) (yPos) class [1]\n            repeat (5)\n                change [ghost v] effect by (20)\n            end\n            delete this clone\n        end\n    end\nend\n\nwhen I receive [deleteallclones v]\ndelete this clone\n\nwhen I start as a clone\nif <<(username) = [BirdNani]> and <<key (down arrow v) pressed?> and <key (space v) pressed?>>> then\n    set [pixelate v] effect to (25)\nend\n\nbroadcast (coin v)\n\nbroadcast (starcoin v)\n\nCoin at [300] [200] type coin/starcoin [coin]\nCoin at [200] [450] type coin/starcoin [coin]\nCoin at [230] [450] type coin/starcoin [coin]\nCoin at [200] [480] type coin/starcoin [coin]\nCoin at [230] [480] type coin/starcoin [coin]\nCoin at [-60] [620] type coin/starcoin [starcoin]\n\nCoin at [60] [80] type coin/starcoin [starcoin]\nCoin at [0] [120] type coin/starcoin [starcoin]\nCoin at [-60] [80] type coin/starcoin [starcoin]\n\n@Sprite1\n\nwhen flag clicked\nset [coins picked up v] to [0]\nset [star coins picked up v] to [0]\nshow\nforever\n    switch costume to ((coins picked up) + (1))\nend\n\ngo to [front v] layer\ngo [forward v] (9999999) layers\n\n