Shadow Forest || Platformer
@Stage\n\nwhen I receive [begin game v]\nstop all sounds\nset volume to (60) %\nforever\n    play sound [Firefly Lullaby v] until done\nend\n\nwhen I receive [end game v]\nrepeat (20)\n    change volume by (-3)\nend\nstop all sounds\n\n@Screen\n\ngo [backward v] (15) layers\n\nwhen flag clicked\nhide\nclear graphic effects\nset [ghost v] effect to (0)\n\nhide\n\nwhen I receive [end game v]\ngo to [front v] layer\nswitch costume to (end v)\nset [ghost v] effect to (100)\nrepeat (20)\n    change [ghost v] effect by (-5)\nend\n\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\n\nwhen I receive [begin game v]\nstop [other scripts in sprite v]\nshow\nclear graphic effects\nset [ghost v] effect to (30)\nswitch costume to (shadow1 v)\nwait (0) seconds\ngo to [back v] layer\ngo [forward v] (1) layers\n\nbroadcast (Begin game v)\n\nwhen I receive [intro done v]\nclear graphic effects\nshow\nset [ghost v] effect to (0)\ngo to x: (0) y: (0)\npoint in direction (90)\nshow\nswitch costume to (black v)\nset size to (100) %\nwait (0) seconds\ngo to [front v] layer\nclear graphic effects\nwait (5) seconds\nrepeat (20)\n    change [ghost v] effect by (5)\nend\nwait (19) seconds\nrepeat (20)\n    change [ghost v] effect by (-5)\nend\nrepeat (20)\n    change [ghost v] effect by (5)\nend\nwait (12) seconds\nrepeat (20)\n    change [ghost v] effect by (-5)\nend\nwait (5) seconds\ngo to [back v] layer\ngo [forward v] (1) layers\nswitch costume to (shadow1 v)\n\ngo to [front v] layer\n\nwhen I receive [intro done v]\nset [ghost v] effect to (0)\nclear graphic effects\n\nwhen flag clicked\nrepeat (10)\n    clear graphic effects\n    set [ghost v] effect to (0)\nend\n\nwhen I receive [intro done v]\nrepeat (10)\n    go to [front v] layer\nend\n\n@Art\n\nwhen flag clicked\nhide\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [begin game v]\nswitch costume to (costume1 v)\n\nwhen I receive [intro done v]\nshow\n\n@BG Art\n\nwhen flag clicked\nhide\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [begin game v]\nshow\ngo to [back v] layer\nset [ghost v] effect to (50)\nswitch costume to (costume1 v)\n\n@Particle\n\nwhen flag clicked\n\nwhen I start as a clone\nshow\ngo to (random position v)\nrepeat (10)\n    set [ghost v] effect to (pick random (0) to (50))\n    wait (0) seconds\nend\ndelete this clone\n\nwhen I receive [begin game v]\nwait (0.1) seconds\ngo to [back v] layer\ngo [forward v] (1) layers\nhide\nforever\n    create clone of (_myself_ v)\n    create clone of (_myself_ v)\nend\n\n@Ground\n\nwhen flag clicked\nshow\nswitch costume to (costume2 v)\nset [ghost v] effect to (100)\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [begin game v]\n\n@Death\n\nwhen flag clicked\nshow\nswitch costume to (costume2 v)\nset [ghost v] effect to (100)\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [begin game v]\n\n@Semisolid\n\nwhen flag clicked\nshow\nswitch costume to (costume2 v)\nset [ghost v] effect to (100)\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [begin game v]\n\n@Vine\n\nwhen flag clicked\nshow\nswitch costume to (costume2 v)\nset [ghost v] effect to (100)\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [begin game v]\n\n@Player\n\nwhen flag clicked\n\ndefine Platformer (type)\nset [costume v] to (costume [name v])\nswitch costume to (idle v)\nif <not <(type) = [shadepoppy]>> then\n    if <key (right arrow v) pressed?> then\n        point in direction (90)\n    end\n    if <key (left arrow v) pressed?> then\n        point in direction (-90)\n    end\nend\nif <(type) = [free]> then\n    change x by (Xspeed)\n    if <touching (vine2 v)?> then\n        set [position v] to (join [vine] ((Xspeed) / ([abs v] of (Xspeed) )))\n        set [keytrack v] to [1]\n    end\n    if <<touching (ground v)?> or <<<<touching (vine v)?> and <(Yspeed) < [0]>> and <not < (Position) contains [vine]?>>> or <<<(Semisolid) = [0]> and <(Yspeed) < [0]>> and <touching (semisolid v)?>>>> then\n        repeat (8)\n            if <<touching (ground v)?> or <<<<touching (vine v)?> and <(Yspeed) < [0]>> and <not < (Position) contains [vine]?>>> or <<<(Semisolid) = [0]> and <(Yspeed) < [0]>> and <touching (semisolid v)?>>>> then\n                change y by (1)\n            end\n        end\n        if <<touching (ground v)?> or <<<<touching (vine v)?> and <(Yspeed) < [0]>> and <not < (Position) contains [vine]?>>> or <<<(Semisolid) = [0]> and <(Yspeed) < [0]>> and <touching (semisolid v)?>>>> then\n            change y by (-8)\n            repeat until <not <<touching (ground v)?> or <<<<touching (vine v)?> and <(Yspeed) < [0]>> and <not < (Position) contains [vine]?>>> or <<<(Semisolid) = [0]> and <(Yspeed) < [0]>> and <touching (semisolid v)?>>>>>\n                change x by ((0) - ((Xspeed) / ([abs v] of (Xspeed) )))\n            end\n            set [xspeed v] to [0]\n        end\n    end\n    change y by (Yspeed)\n    set [semisolid2 v] to [0]\n    if <<touching (vine v)?> and <<not < (Position) contains [vine]?>> and <(Yspeed) > [0]>>> then\n        set [position v] to [vineabove]\n        set [keytrack v] to [1]\n    end\n    set [costuming assistance v] to [0]\n    if <<touching (ground v)?> or <<<<touching (vine v)?> and <(Yspeed) < [0]>> and <not < (Position) contains [vine]?>>> or <<<(Semisolid) = [0]> and <(Yspeed) < [0]>> and <touching (semisolid v)?>>>> then\n        set [costuming assistance v] to [1]\n        if <touching (ground v)?> then\n            set [semisolid2 v] to [2]\n        end\n        repeat until <not <<touching (ground v)?> or <<<<touching (vine v)?> and <(Yspeed) < [0]>> and <not < (Position) contains [vine]?>>> or <<<(Semisolid) = [0]> and <(Yspeed) < [0]>> and <touching (semisolid v)?>>>>>\n            change y by ((0) - ((Yspeed) / ([abs v] of (Yspeed) )))\n        end\n        if <<key (up arrow v) pressed?> and <(Yspeed) < [0]>> then\n            set [yspeed v] to [10]\n        else\n            set [yspeed v] to [0]\n        end\n    end\n    repeat ([abs v] of (<key (right arrow v) pressed?> - <key (left arrow v) pressed?>) )\n        if < (Costume) contains [Walk]?> then\n            set [costume v] to (join [Walk] ((letter (5) of (Costume)) + (1)))\n            if <(Costume) = [Walk7]> then\n                set [costume v] to [Walk1]\n            end\n        else\n            set [costume v] to [Walk1]\n        end\n    end\n    change [xspeed v] by ((2) * (<key (right arrow v) pressed?> - <key (left arrow v) pressed?>))\n    change [xspeed v] by ((1) * (<[0] > (Xspeed)> - <(Xspeed) > [0]>))\n    change [xspeed v] by ((0) - ((<(Xspeed) > [3]> * ((Xspeed) mod (3))) + (((Xspeed) mod (-3)) * <[-3] > (Xspeed)>)))\n    if <(Xspeed) = [0]> then\n        set [costume v] to [Idle]\n    end\n    if  then\n        set [costume v] to [Air]\n    end\n    change [yspeed v] by (-1)\n    if <<<(Semisolid) = [0]> and <(Yspeed) < [0]>> and <touching (bounce v)?>> then\n        set [yspeed v] to [14]\n    end\n    if <<(Semisolid2) = [2]> or <touching (semisolid v)?>> then\n        set [semisolid v] to [1]\n    else\n        set [semisolid v] to [0]\n    end\nend\nif <(type) = [vine1]> then\n    point in direction (90)\n    set [xspeed v] to [0]\n    set [yspeed v] to [0]\n    if <not <key (right arrow v) pressed?>> then\n        set [keytrack v] to [0]\n    end\n    repeat until <not <touching (vine2 v)?>>\n        change x by (-1)\n    end\n    repeat (8)\n        if <not <touching (vine2 v)?>> then\n            change x by (1)\n        end\n    end\n    if <not <touching (vine2 v)?>> then\n        change x by (-8)\n        set [position v] to [free]\n    end\n    change y by ((1) * (<key (up arrow v) pressed?> - <key (down arrow v) pressed?>))\n    if < (Costume) contains [Grab]?> then\n        repeat ([abs v] of (<key (up arrow v) pressed?> - <key (down arrow v) pressed?>) )\n            set [costume v] to (join [Grab] ((letter (5) of (Costume)) + (1)))\n            if <(Costume) = [Grab9]> then\n                set [costume v] to [Grab1]\n            end\n        end\n    else\n        set [costume v] to [Grab1]\n    end\n    change y by ((<key (up arrow v) pressed?> - <key (down arrow v) pressed?>) * ((0) - <touching (ground v)?>))\n    if <key (space v) pressed?> then\n        change x by (-10)\n        if <touching (ground v)?> then\n            change x by (10)\n        else\n            set [position v] to [free]\n            if <key (up arrow v) pressed?> then\n                set [yspeed v] to [6]\n            end\n        end\n    end\n    if <<key (right arrow v) pressed?> and <(Keytrack) = [0]>> then\n        repeat until <not <touching (vine2 v)?>>\n            change x by (1)\n        end\n        if <touching (ground v)?> then\n            change x by (-1)\n            repeat until <not <touching (vine2 v)?>>\n                change x by (-1)\n            end\n        else\n            set [position v] to [vine-1]\n        end\n    end\nend\nif <(type) = [vine-1]> then\n    point in direction (-90)\n    if <not <key (left arrow v) pressed?>> then\n        set [keytrack v] to [0]\n    end\n    set [xspeed v] to [0]\n    set [yspeed v] to [0]\n    repeat until <not <touching (vine2 v)?>>\n        change x by (1)\n    end\n    repeat (8)\n        if <not <touching (vine2 v)?>> then\n            change x by (-1)\n        end\n    end\n    if <not <touching (vine2 v)?>> then\n        change x by (8)\n        set [position v] to [free]\n    end\n    change y by ((1) * (<key (up arrow v) pressed?> - <key (down arrow v) pressed?>))\n    if < (Costume) contains [Grab]?> then\n        repeat ([abs v] of (<key (up arrow v) pressed?> - <key (down arrow v) pressed?>) )\n            set [costume v] to (join [Grab] ((letter (5) of (Costume)) + (1)))\n            if <(Costume) = [Grab9]> then\n                set [costume v] to [Grab1]\n            end\n        end\n    else\n        set [costume v] to [Grab1]\n    end\n    change y by ((<key (up arrow v) pressed?> - <key (down arrow v) pressed?>) * ((0) - <touching (ground v)?>))\n    if <key (space v) pressed?> then\n        change x by (10)\n        if <touching (ground v)?> then\n            change x by (-10)\n        else\n            set [position v] to [free]\n            if <key (up arrow v) pressed?> then\n                set [yspeed v] to [6]\n            end\n        end\n    end\n    if <<key (left arrow v) pressed?> and <(Keytrack) = [0]>> then\n        repeat until <not <touching (vine2 v)?>>\n            change x by (-1)\n        end\n        if <touching (ground v)?> then\n            change x by (1)\n            repeat until <not <touching (vine2 v)?>>\n                change x by (1)\n            end\n        else\n            set [position v] to [vine1]\n        end\n    end\nend\nif <(type) = [vineabove]> then\n    set [xspeed v] to [0]\n    set [yspeed v] to [0]\n    if <not <key (up arrow v) pressed?>> then\n        set [keytrack v] to [0]\n    end\n    repeat until <not <touching (vine v)?>>\n        change y by (-1)\n    end\n    repeat (8)\n        if <not <touching (vine v)?>> then\n            change y by (1)\n        end\n    end\n    if <not <touching (vine v)?>> then\n        change y by (-8)\n        set [position v] to [free]\n    end\n    change x by ((1) * (<key (right arrow v) pressed?> - <key (left arrow v) pressed?>))\n    if < (Costume) contains [Hang]?> then\n        repeat ([abs v] of (<key (right arrow v) pressed?> - <key (left arrow v) pressed?>) )\n            set [costume v] to (join [Hang] ((letter (5) of (Costume)) + (1)))\n            if <(Costume) = [Hang6]> then\n                set [costume v] to [Hang1]\n            end\n        end\n    else\n        set [costume v] to [Hang1]\n    end\n    change x by ((<key (right arrow v) pressed?> - <key (left arrow v) pressed?>) * ((0) - <touching (ground v)?>))\n    if <key (space v) pressed?> then\n        change y by (-10)\n        set [position v] to [free]\n    end\n    if <<key (up arrow v) pressed?> and <(Keytrack) = [0]>> then\n        repeat until <not <touching (vine v)?>>\n            change y by (1)\n        end\n        set [position v] to [free]\n    end\nend\nif <(type) = [orb]> then\n    repeat (10)\n        change [ghost v] effect by (10)\n        wait (0) seconds\n    end\n    show\n    go to [front v] layer\n    go to x: (-219) y: (-111)\n    set [xspeed v] to [0]\n    set [yspeed v] to [0]\n    set [position v] to [free]\n    repeat (10)\n        change [ghost v] effect by (-10)\n        wait (0) seconds\n    end\nend\nif <(type) = [vineNaN]> then\n    set [position v] to [vine1]\nend\nif <(type) = [shadepoppy]> then\n    set [costume v] to [Shadepoppy]\n    turn right (70) degrees\n    change x by (10)\n    if <touching (ground v)?> then\n        change x by (-10)\n    end\n    if <touching (vine2 v)?> then\n        change x by (-10)\n        set [position v] to [vine1]\n    else\n        set [position v] to [free]\n        set [yspeed v] to [-2]\n    end\nend\nif <<touching (death v)?> or <(y position) < [-187]>> then\n    show\n    go to [front v] layer\n    go to x: (-219) y: (-111)\n    set [xspeed v] to [0]\n    set [yspeed v] to [0]\n    set [position v] to [free]\nend\nif <<touching (goal v)?> or <<key (s v) pressed?> and <(username) = [geckos121]>>> then\n    wait until <not <<key (s v) pressed?> and <(username) = [geckos121]>>>\n    show\n    go to [front v] layer\n    go to x: (-219) y: (-111)\n    set [xspeed v] to [0]\n    set [yspeed v] to [0]\n    set [position v] to [free]\n    if <([costume # v] of [art v]) = [5]> then\n        broadcast (End Game v)\n        hide\n    else\n        broadcast (Next Level v)\n    end\nend\nif <touching (portal v)?> then\n    show\n    go to [front v] layer\n    go to x: (item (1) of [portalout coordinates v]) y: (item (2) of [portalout coordinates v])\n    set [xspeed v] to [0]\n    set [yspeed v] to [0]\n    set [position v] to [free]\nend\nswitch costume to (Costume)\n\nwhen I receive [orb v]\nset [position v] to [orb]\n\nwhen I receive [begin game v]\nset rotation style [left-right v]\nshow\ngo to [front v] layer\ngo to x: (-219) y: (-111)\nset [xspeed v] to [0]\nset [yspeed v] to [0]\nset [position v] to [free]\nforever\n    if <<touching (shadepoppies v)?> and <key (space v) pressed?>> then\n        set rotation style [all around v]\n        set [position v] to [shadepoppy]\n    else\n        set rotation style [left-right v]\n    end\n    Platformer (Position)\nend\n\nwhen flag clicked\nhide\n\nwhen [r v] key pressed\nshow\ngo to [front v] layer\ngo to x: (-219) y: (-111)\nset [xspeed v] to [0]\nset [yspeed v] to [0]\nset [position v] to [free]\n\n@glow\n\nwhen flag clicked\nhide\n\nwhen I receive [orb v]\nrepeat (10)\n    change [ghost v] effect by (2)\nend\nrepeat (10)\n    change [ghost v] effect by (-2)\nend\n\nwhen I receive [begin game v]\nshow\nset size to (200) %\nset [ghost v] effect to (80)\nforever\n    go to (player v)\nend\n\n@Vine2\n\nwhen flag clicked\nshow\nswitch costume to (costume2 v)\nset [ghost v] effect to (100)\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [begin game v]\n\n@Goal\n\nwhen flag clicked\nshow\nswitch costume to (costume2 v)\nset [ghost v] effect to (100)\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [begin game v]\n\n@Portal\n\nwhen flag clicked\ngo to x: (0) y: (0)\nswitch costume to (costume2 v)\nshow\nset [ghost v] effect to (100)\ndelete all of [all portal data v]\nadd [148] to [all portal data v]\nadd [-119] to [all portal data v]\nadd [-122] to [all portal data v]\nadd [130] to [all portal data v]\nadd [0] to [all portal data v]\nadd [0] to [all portal data v]\nadd [-152] to [all portal data v]\nadd [108] to [all portal data v]\nadd [148] to [all portal data v]\nadd [-119] to [all portal data v]\ndelete all of [portalout coordinates v]\nadd (item (1) of [all portal data v]) to [portalout coordinates v]\ndelete (1) of [all portal data v]\nadd (item (1) of [all portal data v]) to [portalout coordinates v]\ndelete (1) of [all portal data v]\n\nwhen I receive [next level v]\nnext costume\ndelete all of [portalout coordinates v]\nadd (item (1) of [all portal data v]) to [portalout coordinates v]\ndelete (1) of [all portal data v]\nadd (item (1) of [all portal data v]) to [portalout coordinates v]\ndelete (1) of [all portal data v]\n\nwhen I receive [begin game v]\n\n@Bounce\n\nwhen flag clicked\nshow\nswitch costume to (costume1 v)\nset [ghost v] effect to (100)\n\nwhen I receive [next level v]\nnext costume\n\nwhen I receive [begin game v]\n\n@Shadow Orb\n\nwhen flag clicked\nhide\n\nwhen flag clicked\n\nwhen I receive [next level v]\nshow\nset [collected? v] to [0]\nrepeat (10)\n    go to x: (item (1) of [all orb data v]) y: (item (2) of [all orb data v])\nend\ndelete (1) of [all orb data v]\ndelete (1) of [all orb data v]\n\nwhen I receive [begin game v]\nshow\ndelete all of [all orb data v]\nadd [102] to [all orb data v]\nadd [-111] to [all orb data v]\nadd [-193] to [all orb data v]\nadd [25] to [all orb data v]\nadd [-46] to [all orb data v]\nadd [-61] to [all orb data v]\nadd [205] to [all orb data v]\nadd [166] to [all orb data v]\nadd [-177] to [all orb data v]\nadd [81] to [all orb data v]\nset pen size to (30)\nset pen (transparency v) to (0)\nset pen color to (#66f8ff)\nforever\n    erase all\n    pen down\nend\n\nwhen I receive [begin game v]\nshow\ngo to x: (item (1) of [all orb data v]) y: (item (2) of [all orb data v])\ndelete (1) of [all orb data v]\nset [collected? v] to [0]\ndelete (1) of [all orb data v]\nforever\n    if <(Collected?) = [1]> then\n        glide (0.1) secs to (player v)\n    else\n        if <touching (player v)?> then\n            set [collected? v] to [1]\n            broadcast (Orb v)\n            repeat (10)\n                change [ghost v] effect by (10)\n                change pen (transparency v) by (10)\n            end\n            go to x: (-219) y: (-111)\n            repeat (10)\n                change [ghost v] effect by (-10)\n                change pen (transparency v) by (-10)\n            end\n        end\n    end\nend\n\n@Shadepoppies\n\nwhen flag clicked\nhide\n\nwhen I receive [next level v]\ndelete this clone\n\nwhen I receive [next level v]\nwait (0) seconds\nif <([costume # v] of [art v]) = [4]> then\n    go to x: (-179) y: (-148)\n    create clone of (_myself_ v)\n    repeat (5)\n        change x by (15)\n        create clone of (_myself_ v)\n    end\n    change x by (13)\n    create clone of (_myself_ v)\n    repeat (5)\n        change x by (15)\n        create clone of (_myself_ v)\n    end\nend\nif <([costume # v] of [art v]) = [5]> then\n    go to x: (-110) y: (-158)\n    create clone of (_myself_ v)\n    go to x: (-97) y: (-162)\n    create clone of (_myself_ v)\n    go to x: (-83) y: (-161)\n    create clone of (_myself_ v)\n    go to x: (-70) y: (-160)\n    create clone of (_myself_ v)\n    go to x: (-58) y: (-162)\n    create clone of (_myself_ v)\n    go to x: (-46) y: (-163)\n    create clone of (_myself_ v)\n    go to x: (-32) y: (-160)\n    create clone of (_myself_ v)\n    go to x: (-17) y: (-160)\n    create clone of (_myself_ v)\n    go to x: (-7) y: (-161)\n    create clone of (_myself_ v)\n    go to x: (6) y: (-163)\n    create clone of (_myself_ v)\n    go to x: (20) y: (-160)\n    create clone of (_myself_ v)\n    go to x: (33) y: (-159)\n    create clone of (_myself_ v)\n    go to x: (45) y: (-162)\n    create clone of (_myself_ v)\n    go to x: (59) y: (-164)\n    create clone of (_myself_ v)\nend\n\nwhen flag clicked\n\nwhen I start as a clone\nshow\nif <(Shadepoppy effects) = [1]> then\n    set size to (160) %\n    switch costume to (poppy v)\n    set [shadepoppy effects v] to [2]\n    set [shadepoppy spin v] to [0]\n    forever\n        if <<touching (player v)?> and <key (space v) pressed?>> then\n            set [shadepoppy spin v] to [50]\n            create clone of (_myself_ v)\n        end\n        turn right (Shadepoppy spin) degrees\n        change [shadepoppy spin v] by ((0) - <(Shadepoppy spin) > [0]>)\n    end\nend\nif <(Shadepoppy effects) = [2]> then\n    change x by (pick random (-10) to (10))\n    change y by (pick random (-10) to (10))\n    set size to (pick random (50) to (150)) %\n    switch costume to (sparkle v)\n    repeat (10)\n        change size by (10)\n        turn right (15) degrees\n    end\n    delete this clone\nend\n\nwhen I receive [begin game v]\nset [shadepoppy effects v] to [1]\nhide\n\n@Animation\n\nwhen flag clicked\n\nbroadcast (Begin game v)\n\nwhen flag clicked\nhide\n\nwhen I receive [begin game v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [intro done v]\nwait until <mouse down?>\nbroadcast (Begin game v)\n\nwhen I receive [intro done v]\nset volume to (100) %\nstart sound [5 Minute Calm Down - Relaxing Music for Panic Attacks.mp3 v]\ngo to [front v] layer\nshow\nclear graphic effects\nswitch costume to (intro1 v)\nwait (13) seconds\nrepeat (3)\n    next costume\n    wait (0.2) seconds\nend\nwait (8) seconds\nrepeat (3)\n    next costume\nend\nwait (0.2) seconds\nrepeat (2)\n    next costume\nend\nwait (0.6) seconds\nrepeat (3)\n    next costume\n    wait (0.1) seconds\nend\nwait (0.3) seconds\nnext costume\nwait (3.25) seconds\nnext costume\nrepeat (3)\n    wait (1) seconds\n    next costume\nend\nwait (1) seconds\nrepeat (11)\n    next costume\nend\nwait (0.5) seconds\nnext costume\nwait (4) seconds\nnext costume\nwait (8) seconds\nrepeat (30)\n    change volume by (-3)\nend\nhide\nbroadcast (Begin game v)\n\n@New Intro\n\nwhen flag clicked\nset volume to (5) %\nstart sound [Minoru - Reckless v]\nset [canitype v] to [1]\nhide\ncreate clone of (_myself_ v)\nchange [canitype v] by (1)\ncreate clone of (_myself_ v)\nchange [canitype v] by (1)\ncreate clone of (_myself_ v)\nchange [canitype v] by (1)\ncreate clone of (_myself_ v)\nhide\nwait (3) seconds\nchange [canitype v] by (2)\nrepeat (3)\n    create clone of (_myself_ v)\n    wait (0.1) seconds\nend\nwait (1.4) seconds\nchange [canitype v] by (1)\ncreate clone of (_myself_ v)\nwait (0.3) seconds\nchange [canitype v] by (1)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nswitch costume to (CAniType)\nif <(CAniType) = [1]> then\n    set size to (10000) %\n    show\n    go to x: (0) y: (0)\n    point in direction (-60)\n    move (100) steps\n    set [canitype v] to [1]\n    repeat (50)\n        go to [front v] layer\n        move (CAniType) steps\n        change [canitype v] by (2)\n    end\n    delete this clone\nend\nif <(CAniType) = [2]> then\n    set size to (10000) %\n    show\n    go to x: (0) y: (0)\n    point in direction (-60)\n    set [canitype v] to [1]\n    wait (0.3) seconds\n    repeat (50)\n        move (CAniType) steps\n        change [canitype v] by (2)\n    end\n    delete this clone\nend\nif <(CAniType) = [3]> then\n    go to x: (0) y: (0)\n    point in direction (90)\n    show\n    go to [back v] layer\n    forever\n        Shaking\n    end\nend\nif <(CAniType) = [4]> then\n    show\n    go to [back v] layer\n    go to x: (-100) y: (50)\n    point in direction (45)\n    repeat (19)\n        repeat (10)\n            move (7) steps\n        end\n        move (-70) steps\n    end\n    delete this clone\nend\nif <(CAniType) = [5]> then\n    show\n    go to [front v] layer\n    go to x: (0) y: (0)\n    point in direction (90)\n    repeat (10)\n        change size by (15)\n        change [ghost v] effect by (10)\n    end\n    delete this clone\nend\nif <(CAniType) = [6]> then\n    show\n    go to [front v] layer\n    go [backward v] (8) layers\n    go to x: (0) y: (0)\n    point in direction (90)\n    set size to (1000) %\n    repeat (10)\n        change size by (-30)\n    end\n    delete this clone\nend\nif <(CAniType) = [7]> then\n    show\n    go to [front v] layer\n    go to x: (0) y: (0)\n    point in direction (90)\n    set size to (1) %\n    set [canitype v] to [1]\n    repeat (60)\n        switch costume to (9 v)\n        change size by (CAniType)\n        change [canitype v] by (4)\n        switch costume to (7 v)\n    end\n    delete this clone\nend\nif <(CAniType) = [8]> then\n    show\n    go to [front v] layer\n    go to x: (0) y: (0)\n    point in direction (90)\n    set size to (1) %\n    set [canitype v] to [1]\n    repeat (58)\n        switch costume to (9 v)\n        change size by (CAniType)\n        change [canitype v] by (4)\n        switch costume to (8 v)\n    end\n    stop all sounds\n    broadcast (Intro done v)\n    delete this clone\nend\n\ndefine Shaking\nwait (0.01) seconds\nset size to (100) %\nturn right (5) degrees\nwait (0.01) seconds\nchange x by (10)\nwait (0.01) seconds\nchange y by (10)\nwait (0.01) seconds\nchange y by (-10)\nwait (0.01) seconds\nchange x by (-10)\nwait (0.01) seconds\nchange size by (2)\nturn left (10) degrees\nwait (0.01) seconds\nchange x by (10)\nwait (0.01) seconds\nchange y by (10)\nwait (0.01) seconds\nchange y by (-10)\nwait (0.01) seconds\nchange x by (-10)\nwait (0.01) seconds\nchange size by (-4)\nturn right (5) degrees\nwait (0.01) seconds\nchange x by (10)\nwait (0.01) seconds\nchange y by (10)\nwait (0.01) seconds\nchange y by (-10)\nwait (0.01) seconds\nchange x by (-10)\nwait (0.01) seconds\nchange size by (-4)\n\nwhen I start as a clone\nif <(CAniType) = [3]> then\n    wait (1.2) seconds\n    change [canitype v] by (2)\n    repeat (1)\n        create clone of (_myself_ v)\n        wait (0.1) seconds\n    end\n    wait (0.5) seconds\n    repeat (10)\n        turn right (36) degrees\n    end\n    wait (0.5) seconds\n    repeat (10)\n        turn right (36) degrees\n    end\n    wait (1) seconds\n    set [canitype v] to [5]\n    create clone of (_myself_ v)\n    delete this clone\nend\n\nwhen I receive [intro done v]\ndelete this clone\n\nwhen flag clicked\n\nbroadcast (Intro done v)\n\n@Thumb\n\nwhen flag clicked\nhide\n\n
This is not your normal platformer. It includes many... unusual elements. \n⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈\n•Arrows to move\n•Arrows to climb up/down/left/right on vines\n•Arrows to switch sides when climbing a vine, either vertically or horizontally.\n•<SPACE> to drop from vines (hold up arrow while pressing <SPACE> to jump off)\n•<SPACE> to interact with shadepoppies (little purple flowers)\n• [R] to restart a level if you glitch out (If you have an orb, you won't lose it)\n•Get to the tunnel at the end of the level to advance\n•Explore! Almost everything is interactive.\n⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈⏈\nCollect the glowing blue Shadow Orb on each level for an extra challenge!