Bored-Platformer
@Stage\n\nwhen I receive [frame v]\nforever\n    if <<<(Transition) = [-1]> and <([costume # v] of [ground2 v]) = [10]>> and <<not <(backdrop [number v]) = [1]>> or <not <(sound) = [teehee]>>>> then\n        switch backdrop to (sky v)\n        set [sound v] to [Teehee]\n        stop all sounds\n    end\n    if <<<(Transition) = [1]> and <([costume # v] of [ground2 v]) = [11]>> and <not <(sound) = [woohoo]>>> then\n        set [sound v] to [woohoo]\n        stop all sounds\n    end\n    if <<<(Transition) = [1]> and <([costume # v] of [ground2 v]) = [12]>> and <not <(backdrop [number v]) = [2]>>> then\n        switch backdrop to (fortress v)\n    end\n    if <<<(Transition) = [1]> and <([costume # v] of [ground2 v]) = [19]>> and <not <(sound) = [Downtown intro]>>> then\n        set [sound v] to [Downtown intro]\n        switch backdrop to (night v)\n        stop all sounds\n    end\n    if <<<(Transition) = [-1]> and <([costume # v] of [ground2 v]) = [18]>> and <not <(sound) = [woohoo]>>> then\n        set [sound v] to [woohoo]\n        stop all sounds\n    end\n    if <<<(Transition) = [-1]> and <([costume # v] of [ground2 v]) = [17]>> and <not <(backdrop [number v]) = [2]>>> then\n        switch backdrop to (fortress v)\n    end\n    if <<<(Transition) = [-1]> and <([costume # v] of [ground2 v]) = [27]>> and <<not <(backdrop [number v]) = [3]>> or <not <(sound) = [Downtown intro]>>>> then\n        switch backdrop to (night v)\n        set [sound v] to [Downtown intro]\n        stop all sounds\n    end\n    if <<<(Transition) = [1]> and <([costume # v] of [ground2 v]) = [28]>> and <not <(sound) = [Hoohoo]>>> then\n        set [sound v] to [Hoohoo]\n        stop all sounds\n    end\n    if <<<(Transition) = [1]> and <([costume # v] of [ground2 v]) = [29]>> and <not <(backdrop [number v]) = [4]>>> then\n        switch backdrop to (brick wall v)\n    end\nend\n\nwhen I receive [frame v]\n\nwhen I receive [where? v]\nset [sound v] to [blank]\n\nwhen I receive [where2 v]\nswitch backdrop to (where? v)\nwait (1) seconds\nset [sound v] to [Under Intro]\n\nwhen flag clicked\n\nwhen I receive [here! v]\nset [sound v] to [blank]\n\nwhen flag clicked\nwait (0.1) seconds\nforever\n    play sound (sound) until done\n    wait (0) seconds\n    if <(sound) = [Downtown intro]> then\n        set [sound v] to [Downtown]\n    end\n    if <(sound) = [Under Intro]> then\n        set [sound v] to [Under Where]\n    end\nend\n\nif <<(Slow Motion) = [1]> and <(Is slow on?) = [1]>> then\n    if <(volume) > [10]> then\n        change volume by (-15)\n    end\nend\nif <(Slow Motion) = [0]> then\n    if <(volume) < [100]> then\n        change volume by (15)\n    end\nend\n\nwhen flag clicked\nif <([costume # v] of [ground v]) > [35]> then\n    switch backdrop to (where? v)\n    set [sound v] to [Under Intro]\nelse\n    switch backdrop to (sky v)\n    set [sound v] to [Teehee]\nend\n\n@Marco\n\ndefine Touch Ground <up?>\nchange [falling? v] by (1)\nrepeat until <<not <touching (ground v)?>> and <not <touching (gate v)?>>>\n    if <up?> then\n        change y by (-1)\n    else\n        change y by (1)\n        set [falling? v] to [0]\n    end\n    set [speed y v] to [0]\nend\nswitch costume to (hitbox_foot v)\nif <not <touching (platform v)?>> then\n    set [platform bug fix v] to [0]\nend\nif <<touching (platform v)?> and <(Platform bug fix) = [0]>> then\n    if <<key (down arrow v) pressed?> or <key (s v) pressed?>> then\n        set [platform bug fix v] to [1]\n    else\n        if <not <up?>> then\n            set [speed y v] to [0]\n            repeat until <not <touching (platform v)?>>\n                change y by (1)\n            end\n        end\n        set [falling? v] to [0]\n    end\nend\nswitch costume to (hitbox v)\n\nwhen flag clicked\ngo to x: (-170) y: (-100)\nset [transition v] to [0]\nset rotation style [left-right v]\nshow\nset [speed x v] to [0]\nset [speed y v] to [0]\nset [falling? v] to [10]\nset [slow motion v] to [0]\nbroadcast (frame v)\n\nif <<(Slow Motion) = [1]> and <(Is slow on?) = [1]>> then\n    wait (0.15) seconds\nend\nwait (0) seconds\n\nif <not <<key (up arrow v) pressed?> or <key (w v) pressed?>>> then\n\nif <not <<key (up arrow v) pressed?> or <key (w v) pressed?>>> then\n\nwhen I start as a clone\nchange x by (-3)\nchange y by (10)\nwait (0) seconds\ndelete this clone\n\nrepeat (2)\n\nwhen I receive [frame v]\nforever\n    if <not <[] = [22]>> then\n        if <(timer) > [1]> then\n            if <mouse down?> then\n                set [slow motion v] to [1]\n            else\n                if <(Slow Motion) = [1]> then\n                    if <(costume [number v]) > [19]> then\n                        create clone of (arrow v)\n                    end\n                end\n                set [slow motion v] to [0]\n            end\n        end\n    end\nend\n\nset [brightness v] effect to (-25)\n\nwhen I receive [frame v]\nforever\n    if <not <(costume [number v]) = [22]>> then\n        if <<([costume # v] of [ground2 v]) = [10]> or <([costume # v] of [ground2 v]) = [19]>> then\n            if <touching color (#dbab1f)?> then\n                say [Fortress entrance is that way.]\n            else\n                say []\n            end\n        end\n        if <([costume # v] of [ground2 v]) = [27]> then\n            if <touching color (#dbab1f)?> then\n                say [This temple uses ancient security technology. You need to hit all the targets in 4 seconds or else they will come back.]\n            else\n                say []\n            end\n        end\n    end\nend\n\ndefine Animate\nif <(costume [number v]) = [22]> then\n    stop [this script v]\nend\nswitch costume to (Previous Costume)\nif <(Slow Motion) = [0]> then\n    if <<<(Speed Y) = [0]> and <(Falling?) < [4]>> and <not <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<key (left arrow v) pressed?> or <key (a v) pressed?>>>>> then\n        if <not <<(costume [number v]) > [2]> and <(costume [number v]) < [7]>>> then\n            set [frames pause v] to [0]\n            switch costume to (stand v)\n        end\n        if <(Frames pause) = [6]> then\n            set [frames pause v] to [0]\n            if <<(costume [number v]) > [2]> and <(costume [number v]) < [6]>> then\n                next costume\n            else\n                if <(costume [number v]) = [6]> then\n                    switch costume to (stand v)\n                else\n                    switch costume to (stand v)\n                end\n            end\n        end\n        change [frames pause v] by (1)\n    end\n    if <(Speed Y) > [0]> then\n        if <not <<(costume [number v]) > [6]> and <(costume [number v]) < [9]>>> then\n            set [frames pause v] to [0]\n        end\n        if <<(costume [number v]) = [7]> and <(Frames pause) = [4]>> then\n            switch costume to (jump v)\n        else\n            if <(costume [number v]) = [8]> then\n                switch costume to (jump v)\n            else\n                switch costume to (going up v)\n                change [frames pause v] by (1)\n            end\n        end\n    end\n    if <(Speed Y) < [-5]> then\n        switch costume to (falling v)\n    end\n    if <<<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<key (left arrow v) pressed?> or <key (a v) pressed?>>> and <<<(Speed Y) > [-5.1]> and <(Speed Y) < [0.1]>> and <(Falling?) < [4]>>> then\n        if <not <<(costume [number v]) > [9]> and <(costume [number v]) < [16]>>> then\n            set [frames pause v] to [0]\n            switch costume to (walk 1 v)\n        end\n        if <(Frames pause) = [2]> then\n            set [frames pause v] to [0]\n            if <<(costume [number v]) > [9]> and <(costume [number v]) < [15]>> then\n                next costume\n            else\n                if <(costume [number v]) = [15]> then\n                    switch costume to (walk 1 v)\n                else\n                    switch costume to (walk 1 v)\n                end\n            end\n        end\n        change [frames pause v] by (1)\n    end\nelse\n    point towards (mouse-pointer v)\n    if <(costume [number v]) < [16]> then\n        switch costume to (arrow1 v)\n    else\n        if <(costume [number v]) > [20]> then\n            switch costume to (arrow7 v)\n            set rotation style [all around v]\n            create clone of (_myself_ v)\n            switch costume to (arrow8 v)\n        else\n            next costume\n        end\n    end\nend\n\nif <<key (up arrow v) pressed?> or <key (w v) pressed?>> then\n    if <(Wall jump) = [0]> then\n        start sound [hute v]\n        set [speed x v] to ((-1.2) * (speed))\n        set [speed y v] to [11]\n        set [falling? v] to [6]\n        set [wall jump v] to [15]\n    end\nelse\n    set [speed x v] to [0]\nend\n\nwhen I receive [frame v]\nforever\n    set rotation style [don't rotate v]\n    if <not <(costume [number v]) = [22]>> then\n        if <(Transition) = [0]> then\n            set [previous costume v] to (costume [number v])\n            switch costume to (hitbox v)\n            if <<(Speed Y) < [4]> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>> then\n                change [speed y v] by (-1)\n            else\n                change [speed y v] by (-2)\n            end\n            if <(Speed Y) < [-16]> then\n                set [speed y v] to [-16]\n            end\n            change y by (Speed Y)\n            Touch Ground <(Speed Y) > [0]>\n            if <(Wall jump) > [0]> then\n                change [wall jump v] by (-1)\n            else\n                if <<(Falling?) < [4]> or <([abs v] of (Speed X) ) > [4]>> then\n                    set [speed x v] to ((Speed X) * (0.625))\n                end\n                set [speed x v] to ((round ((Speed X) * (100))) / (100))\n                if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n                    change [speed x v] by (((-0.9) * (Run speed)) - (0.6))\n                end\n                if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n                    change [speed x v] by (((0.9) * (Run speed)) + (0.6))\n                end\n            end\n            if <(Speed X) < [-0.5]> then\n                Walk (-90) (Speed X)\n            else\n                if <(Speed X) > [0.5]> then\n                    Walk (90) (Speed X)\n                else\n                    set [speed x v] to [0]\n                end\n            end\n            if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <(Falling?) < [4]>> then\n                set [speed y v] to [12]\n                if <(Falling?) = [2]> then\n                    start sound [hut v]\n                end\n            end\n            Animate\n        else\n            if <(Transition) = [1]> then\n                change x by (-45)\n                if <(x position) = [-220]> then\n                    set [transition v] to [0]\n                end\n            else\n                change x by (45)\n                if <(x position) = [220]> then\n                    set [transition v] to [0]\n                end\n            end\n        end\n    end\n    set rotation style [left-right v]\nend\n\ndefine Walk (direction) (speed)\npoint in direction (direction)\nchange x by (speed)\nif <(x position) > [229]> then\n    if <([costume # v] of [ground v]) = [35]> then\n        broadcast (where? v)\n        stop [this script v]\n    else\n        if <([costume # v] of [ground v]) = [42]> then\n            broadcast (here! v)\n            stop [this script v]\n        else\n            set x to (230)\n            set [transition v] to [1]\n        end\n    end\nend\nif <(x position) < [-229]> then\n    set x to (-230)\n    set [transition v] to [-1]\nend\nset [slope v] to [0]\nrepeat until <<(Slope) = [8]> or <<not <touching (ground v)?>> and <not <touching (gate v)?>>>>\n    change y by (1)\n    change [slope v] by (1)\nend\nif <(Slope) = [8]> then\n    change x by ((0) - (speed))\n    change y by ((0) - (Slope))\nend\n\nwhen I receive [where? v]\nstop [other scripts in sprite v]\nstop all sounds\nstart sound [A Bad Dream. v]\ndelete this clone\n\nwhen I receive [where2 v]\ngo to x: (-150) y: (150)\nset [transition v] to [0]\nset rotation style [left-right v]\nshow\nset [speed y v] to [0]\nset [falling? v] to [10]\nset [slow motion v] to [0]\nwait (0.5) seconds\nbroadcast (frame v)\n\nwhen I receive [here! v]\nstop [other scripts in sprite v]\nstop all sounds\nstart sound [A Bad Dream. v]\ndelete this clone\n\nwhen I receive [frame v]\n\nforever\n    if <(costume [number v]) = [22]> then\n        delete this clone\n    end\nend\n\nwait (0) seconds\n\nif <(Is slow on?) = [1]> then\n    wait (0.15) seconds\nend\n\n@Ground\n\nwhen I start as a clone\ngo to x: (0) y: (0)\nset volume to (50) %\nforever\n    if <(volume) = [100]> then\n        if <(Transition) = [0]> then\n    else\n        if <(Transition) = [0]> then\n            delete this clone\n        else\n            if <(Transition) = [1]> then\n                change x by (-45)\n            else\n                change x by (45)\n            end\n        end\n    end\nend\n\nset [ghost v] effect to (100)\n\nbroadcast (where? v)\n\nwhen I receive [where2 v]\nswitch costume to (where?1 v)\n\nwhen flag clicked\ngo to x: (0) y: (0)\nset [ghost v] effect to (100)\nset volume to (100) %\ngo [backward v] (20) layers\nshow\nif <([costume # v] of [ground v]) > [35]> then\n    switch costume to (where?1 v)\nelse\n    switch costume to (savannah1 v)\nend\n\nwhen I receive [frame v]\nforever\n    if <(volume) = [100]> then\n        if <(Transition) = [0]> then\n    else\n        if <(Transition) = [0]> then\n            delete this clone\n        else\n            if <(Transition) = [1]> then\n                change x by (-45)\n            else\n                change x by (45)\n            end\n        end\n    end\nend\n\nclear graphic effects\n\nwhen I receive [here! v]\nwait (2) seconds\nswitch costume to (savannah1 v)\n\n@Platform\n\nwhen I start as a clone\ngo to x: (0) y: (0)\nset volume to (50) %\nforever\n    if <(volume) = [100]> then\n        if <(Transition) = [0]> then\n    else\n        if <(Transition) = [0]> then\n            delete this clone\n        else\n            if <(Transition) = [1]> then\n                change x by (-45)\n            else\n                change x by (45)\n            end\n        end\n    end\nend\n\nwhen I receive [where2 v]\nswitch costume to (where?1 v)\n\nwhen flag clicked\ngo to x: (0) y: (0)\nset [ghost v] effect to (100)\nset volume to (100) %\nshow\nif <([costume # v] of [ground v]) > [35]> then\n    switch costume to (where?1 v)\nelse\n    switch costume to (savannah1 v)\nend\n\nwhen I receive [frame v]\nforever\n    if <(volume) = [100]> then\n        if <(Transition) = [0]> then\n        else\n            if <(Transition) = [1]> then\n                if <(x position) = [0]> then\n                    create clone of (_myself_ v)\n                    next costume\n                    set [my x v] to [450]\n                end\n                change [my x v] by (-45)\n                set x to (My X)\n            else\n                if <(x position) = [0]> then\n                    create clone of (_myself_ v)\n                    switch costume to ((costume [number v]) - (1))\n                    set [my x v] to [-450]\n                end\n                change [my x v] by (45)\n                set x to (My X)\n            end\n        end\n    else\n        if <(Transition) = [0]> then\n            delete this clone\n        else\n            if <(Transition) = [1]> then\n                change x by (-45)\n            else\n                change x by (45)\n            end\n        end\n    end\nend\n\n@Ground2\n\nwhen flag clicked\ngo to x: (0) y: (0)\nset volume to (100) %\nshow\nif <([costume # v] of [ground v]) > [35]> then\n    switch costume to (where?1 v)\nelse\n    switch costume to (savannah1 v)\nend\n\ngo to [front v] layer\ngo [backward v] (-1) layers\n\nwhen I start as a clone\nshow\ngo to x: ((-60) * (Transition)) y: (0)\nset volume to (50) %\nif <<(Transition) = [1]> and <(costume [number v]) = [28]>> then\n    switch costume to (temple bugfix v)\nend\nforever\n    if <(volume) = [100]> then\n        if <(Transition) = [0]> then\n            if <(costume [number v]) = [2]> then\n                switch costume to (temple1 v)\n            end\n        else\n            if <(Transition) = [1]> then\n                if <(x position) = [0]> then\n                    create clone of (_myself_ v)\n                    next costume\n                    set [my x v] to [450]\n                end\n                change [my x v] by (-45)\n                set x to (My X)\n            else\n                if <<<(Transition) = [-1]> and <(costume [number v]) = [28]>> and <(x position) < [-15]>> then\n                    switch costume to (temple bugfix v)\n                end\n                if <(x position) = [0]> then\n                    create clone of (_myself_ v)\n                    switch costume to ((costume [number v]) - (1))\n                    set [my x v] to [-450]\n                end\n                change [my x v] by (45)\n                set x to (My X)\n            end\n        end\n    else\n        if <(Transition) = [0]> then\n            delete this clone\n        else\n            if <(Transition) = [1]> then\n                change x by (-45)\n            else\n                change x by (45)\n            end\n        end\n    end\nend\n\nwhen I receive [where2 v]\nswitch costume to (where?1 v)\nset volume to (100) %\ngo to x: (0) y: (0)\nshow\ndelete this clone\n\nwhen I receive [frame v]\nforever\n    if <(volume) = [100]> then\n        if <(Transition) = [0]> then\n            if <(costume [number v]) = [2]> then\n                switch costume to (temple1 v)\n            end\n        else\n            if <(Transition) = [1]> then\n                if <(x position) = [0]> then\n                    create clone of (_myself_ v)\n                    next costume\n                    set [my x v] to [450]\n                end\n                change [my x v] by (-45)\n                set x to (My X)\n            else\n                if <<<(Transition) = [-1]> and <(costume [number v]) = [28]>> and <(x position) < [-15]>> then\n                    switch costume to (temple bugfix v)\n                end\n                if <(x position) = [0]> then\n                    create clone of (_myself_ v)\n                    switch costume to ((costume [number v]) - (1))\n                    set [my x v] to [-450]\n                end\n                change [my x v] by (45)\n                set x to (My X)\n            end\n        end\n    else\n        if <(Transition) = [0]> then\n            delete this clone\n        else\n            if <(Transition) = [1]> then\n                change x by (-45)\n            else\n                change x by (45)\n            end\n        end\n    end\nend\n\n@Targets\n\nwhen I receive [frame v]\nforever\n    block name2\nend\n\ndefine Make (number) clones\nset [clone id v] to (item ([costume # v] of [ground v]) of [first target of this level v])\nrepeat (number)\n    create clone of (_myself_ v)\n    change [clone id v] by (1)\nend\n\nif <(Transition) = [-1]> then\n    set [targets left v] to [0]\n    delete this clone\nend\n\nwhen flag clicked\nset volume to (100) %\nhide\nset [targets left v] to [0]\nset [farthest screen v] to [1]\ndelete (all) of [targets per level v]\nadd [0] to [targets per level v]\nadd [0] to [targets per level v]\nadd [0] to [targets per level v]\nadd [1] to [targets per level v]\nadd [2] to [targets per level v]\nadd [4] to [targets per level v]\nadd [1] to [targets per level v]\nadd [1] to [targets per level v]\nadd [3] to [targets per level v]\nadd [0] to [targets per level v]\nadd [0] to [targets per level v]\nadd [1] to [targets per level v]\nadd [4] to [targets per level v]\nadd [2] to [targets per level v]\nadd [1] to [targets per level v]\nadd [2] to [targets per level v]\nadd [2] to [targets per level v]\nadd [0] to [targets per level v]\nadd [0] to [targets per level v]\nadd [1] to [targets per level v]\nadd [2] to [targets per level v]\nadd [1] to [targets per level v]\nadd [2] to [targets per level v]\nadd [0] to [targets per level v]\nadd [1] to [targets per level v]\nadd [1] to [targets per level v]\nadd [2] to [targets per level v]\nadd [0] to [targets per level v]\nadd [3] to [targets per level v]\nadd [4] to [targets per level v]\nadd [5] to [targets per level v]\nadd [2] to [targets per level v]\nadd [2] to [targets per level v]\nadd [3] to [targets per level v]\nadd [1] to [targets per level v]\nadd [0] to [targets per level v]\nadd [3] to [targets per level v]\nadd [4] to [targets per level v]\nadd [8] to [targets per level v]\nadd [1] to [targets per level v]\nadd [1] to [targets per level v]\nadd [1] to [targets per level v]\n\nadd (x position) to [x positions v]\nadd (y position) to [y positions v]\nadd (direction) to [directions v]\n\nswitch costume to (target4 v)\n\nswitch costume to (target3 v)\n\nwhen I start as a clone\nset [move v] to [3]\nswitch costume to (target3 v)\ngo to x: (item (Clone ID) of [x positions v]) y: (item (Clone ID) of [y positions v])\npoint in direction (item (Clone ID) of [directions v])\nset volume to (100) %\nshow\n\nwhen I receive [frame v]\nforever\n    4\nend\n\nwhen I receive [frame v]\nforever\n    3\nend\n\nwhen I receive [frame v]\nforever\n    block name\nend\n\nadd (x position) to [x2 v]\nadd (y position) to [y2 v]\n\ndefine block name\nif <<<touching (arrow v)?> or <<(volume) < [100]> or <key (x v) pressed?>>> and <<(costume [number v]) > [2]> and <(costume [number v]) < [5]>>> then\n    if <(volume) = [100]> then\n        start sound [clap beatbox v]\n    end\n    change volume by (-10)\n    change [ghost v] effect by (10)\n    if <<(volume) < [1]> or <<(Clone ID) > [33]> and <(volume) < [35]>>> then\n        if <(Clone ID) < [34]> then\n            change [targets left v] by (-1)\n            if <(Targets left) = [0]> then\n                replace item ([costume # v] of [ground v]) of [targets per level v] with [0]\n            end\n            delete this clone\n        else\n            switch costume to (target5 v)\n            set [ghost v] effect to (70)\n            set [timer v] to [110]\n            if <([costume # v] of [ground v]) = [39]> then\n                set [timer v] to [160]\n            end\n            change [targets left v] by (-0.1)\n            if <((round ((Targets left) * (10))) / (10)) = ((item ([costume # v] of [ground v]) of [targets per level v]) - ((item ([costume # v] of [ground v]) of [targets per level v]) / (10)))> then\n                set [targets left v] to [0]\n                replace item ([costume # v] of [ground v]) of [targets per level v] with [0]\n                start sound [The Sphinx's Puzzle Solved! v]\n                set volume to (100) %\n            end\n        end\n    end\nend\n\ndefine block name2\nif <<(Transition) = [1]> or <(Transition) = [-1]>> then\n    if <(costume [number v]) > [2]> then\n        delete this clone\n    end\n    set [targets left v] to [0]\n    switch costume to (target2 v)\nend\nif <<(Transition) = [0]> and <(costume [number v]) = [2]>> then\n    switch costume to (target v)\n    set [targets left v] to (item ([costume # v] of [ground v]) of [targets per level v])\n    Make (item ([costume # v] of [ground v]) of [targets per level v]) clones\nend\n\ndefine 3\nif <<(Clone ID) > [33]> and <(costume [number v]) = [5]>> then\n    if <(Targets left) = [0]> then\n        delete this clone\n    end\n    if <(timer) = [0]> then\n        change [targets left v] by (0.1)\n        switch costume to (target3 v)\n        set volume to (100) %\n        clear graphic effects\n        show\n    end\n    change [timer v] by (-1)\nend\n\ndefine 4\nif <<<(Clone ID) > [13]> and <<(Clone ID) < [26]> or <(Clone ID) > [58]>>> and <(costume [number v]) > [2]>> then\n    if <(Move) = [3]> then\n        change x by (((item (Clone ID) of [x2 v]) - (item (Clone ID) of [x positions v])) / (60))\n        change y by (((item (Clone ID) of [y2 v]) - (item (Clone ID) of [y positions v])) / (60))\n    end\n    if <<(x position) = (item (Clone ID) of [x2 v])> and <(y position) = (item (Clone ID) of [y2 v])>> then\n        set [move v] to [4]\n    end\n    if <(Move) = [4]> then\n        change x by (((item (Clone ID) of [x positions v]) - (item (Clone ID) of [x2 v])) / (60))\n        change y by (((item (Clone ID) of [y positions v]) - (item (Clone ID) of [y2 v])) / (60))\n    end\n    if <<(x position) = (item (Clone ID) of [x positions v])> and <(y position) = (item (Clone ID) of [y positions v])>> then\n        set [move v] to [3]\n    end\nend\n\nstart sound [The Sphinx's Puzzle Solved! v]\n\nwhen I start as a clone\nforever\n    block name2\nend\n\nwhen I start as a clone\nforever\n    block name\nend\n\nwhen I start as a clone\nforever\n    3\nend\n\nwhen I start as a clone\nforever\n    4\nend\n\n@Arrow\n\nwhen I start as a clone\nset volume to (100) %\nclear graphic effects\nshow\ngo to (marco v)\npoint towards (mouse-pointer v)\nset [x velocity v] to (((mouse x) - ([x position v] of [marco v])) / (10))\nset [y velocity v] to (((mouse y) - ([y position v] of [marco v])) / (8))\nchange x by (X velocity)\nchange y by (Y velocity)\nchange [y velocity v] by (-0.8)\nif <(X velocity) > [0]> then\n    point in direction ((90) - ([atan v] of ((Y velocity) / (X velocity)) ))\nelse\n    point in direction ((-90) - ([atan v] of ((Y velocity) / (X velocity)) ))\nend\n\nwhen I receive [frame v]\n\nwhen I receive [frame v]\n\nwhen I receive [frame v]\n\nwhen flag clicked\nset [x velocity v] to [0]\nset [y velocity v] to [0]\nhide\nstop [other scripts in sprite v]\ndelete this clone\n\nwhen I receive [where? v]\nstop [other scripts in sprite v]\ndelete this clone\n\nwhen I receive [here! v]\nstop [other scripts in sprite v]\ndelete this clone\n\nwhen I start as a clone\nforever\n    if <<<touching (_edge_ v)?> and <([abs v] of (y position) ) < [160]>> and <not <(round (((volume) mod (1)) * (10))) = [3]>>> then\n        set volume to (88.3) %\n    end\n    if <(round (((volume) mod (1)) * (10))) = [3]> then\n        change x by (X velocity)\n        change y by (Y velocity)\n        change volume by (1)\n        if <(volume) > [90]> then\n            delete this clone\n        end\n    end\n    if <<<touching (_edge_ v)?> and <([abs v] of (y position) ) > [170]>> and <<(Y velocity) > [10]> and <(volume) = [100]>>> then\n        set volume to (95) %\n        change [ghost v] effect by (-5)\n    end\nend\n\nwhen I start as a clone\nforever\n    if <not <(Transition) = [0]>> then\n        delete this clone\n    end\nend\n\nwhen I start as a clone\nforever\n    if <not <(round (((volume) mod (1)) * (10))) = [3]>> then\n        if <<touching (ground v)?> or <<touching (targets v)?> or <(volume) < [100]>>> then\n            change [ghost v] effect by (5)\n            change volume by (-5)\n            if <<(volume) = [95]> and <touching (targets v)?>> then\n                move (4) steps\n            end\n            if <(volume) = [0]> then\n                delete this clone\n            end\n        else\n            change x by (X velocity)\n            change y by (Y velocity)\n            change [y velocity v] by (-0.8)\n            if <(X velocity) > [0]> then\n                point in direction ((90) - ([atan v] of ((Y velocity) / (X velocity)) ))\n            else\n                point in direction ((-90) - ([atan v] of ((Y velocity) / (X velocity)) ))\n            end\n        end\n    end\nend\n\n@Gate\n\nwhen flag clicked\ngo to x: (0) y: (0)\nset [ghost v] effect to (100)\nset volume to (100) %\nswitch costume to (savannah1 v)\n\nwhen I receive [frame v]\nforever\n    block name\nend\n\nif <touching (marco v)?> then\n    say [You need to hit all of the targets before you can move on.]\nelse\n    say []\nend\n\ndefine block name\nif <(Transition) = [0]> then\n    if <(Targets left) > [0]> then\n        clear graphic effects\n        switch costume to ([costume # v] of [ground v])\n        show\n    else\n        change volume by (-10)\n        change [ghost v] effect by (10)\n        if <(volume) = [0]> then\n            hide\n        end\n    end\nelse\n    set volume to (100) %\n    hide\n    switch costume to ([costume # v] of [ground v])\nend\n\nwhen I receive [where? v]\nstop [other scripts in sprite v]\nswitch costume to (where?1 v)\n\nforever\n    block name\nend\n\n@Scope\n\nwhen flag clicked\nset [is slow on? v] to [0]\nhide\n\nwhen I start as a clone\n\nwhen I receive [frame v]\n\nwhen I receive [frame v]\n\ngo to [front v] layer\n\nwhen I receive [frame v]\n\nwhen I receive [where? v]\ndelete this clone\n\nwhen I receive [where? v]\nstop [other scripts in sprite v]\ngo to x: (0) y: (0)\nswitch costume to (full cover v)\nset [ghost v] effect to (100)\nshow\ngo to [front v] layer\nrepeat (100)\n    change [ghost v] effect by (-1)\nend\nwait (0.8) seconds\nbroadcast (where2 v)\nset volume to (100) %\nstart sound [out v]\nrepeat (25)\n    change [ghost v] effect by (4)\nend\nhide\nset volume to (0) %\n\nwhen I receive [here! v]\ndelete this clone\n\nwhen I receive [here! v]\nreset timer\nstop [other scripts in sprite v]\ngo to x: (0) y: (0)\nswitch costume to (full cover v)\nset [ghost v] effect to (100)\nshow\ngo to [front v] layer\nrepeat (100)\n    change [ghost v] effect by (-1)\nend\nwait (0.8) seconds\n\ndefine block name\nif <(costume [number v]) = [1]> then\n    if <<(Slow Motion) = [1]> and <(Is slow on?) = [1]>> then\n        show\n        go to (marco v)\n        if <(volume) = [20]> then\n            start sound [in v]\n        end\n        if <(volume) < [100]> then\n            change volume by (20)\n            change [ghost v] effect by (-10)\n        end\n    end\n    if <(Slow Motion) = [0]> then\n        go to (marco v)\n        if <(volume) = [100]> then\n            start sound [out v]\n        end\n        if <(volume) > [0]> then\n            change volume by (-20)\n            change [ghost v] effect by (10)\n        end\n        if <(volume) = [0]> then\n            hide\n        end\n    end\nend\n\ndefine block name2\nif <(costume [number v]) = [1]> then\n    if <(timer) > [0]> then\n        change [timer v] by (-1)\n    else\n        if <key (2 v) pressed?> then\n            set [timer v] to [45]\n            if <(Is slow on?) = [0]> then\n                set [is slow on? v] to [1]\n                create clone of (_myself_ v)\n            else\n                set [is slow on? v] to [0]\n                create clone of (_myself_ v)\n            end\n        end\n    end\nend\n\ndefine block name3\nif <(costume [number v]) > [1]> then\n    if <<(y position) < [0]> and <(timer) = [0]>> then\n        change y by (3)\n    else\n        if <(timer) > [30]> then\n            if <(y position) > [-15]> then\n                change y by (-3)\n            else\n                delete this clone\n            end\n        else\n            change [timer v] by (1)\n        end\n    end\nend\n\nwhen I start as a clone\n\nwhen I start as a clone\n\nwhen I start as a clone\n\nforever\n    block name\nend\n\nforever\n    block name\nend\n\nforever\n    block name2\nend\n\nforever\n    block name2\nend\n\nswitch costume to (2 v)\nif <(Is slow on?) = [1]> then\n    switch costume to (1 v)\nend\nset size to (100) %\ngo to x: (0) y: (-15)\ngo to [front v] layer\nset [timer v] to [0]\nclear graphic effects\nshow\n\nforever\n    block name3\nend\n\nforever\n    block name3\nend\n\nswitch costume to (scope v)\nforever\n    play sound [Stellardrone - To The Great Beyond.mp3 v] until done\nend\n\nswitch costume to (scope v)\nclear graphic effects\nset volume to (0) %\nset [ghost v] effect to (100)\nforever\n    play sound [Stellardrone - To The Great Beyond.mp3 v] until done\nend\n\n@Guide\n\nwhen I receive [frame v]\nforever\n    if <(costume [number v]) = [1]> then\n        erase all\n        if <<mouse down?> and <(Guide) = [1]>> then\n            Draw\n        end\n    end\nend\n\nwhen flag clicked\nset [guide v] to [0]\nswitch costume to (dot v)\nhide\ndelete this clone\n\ndefine Draw\nshow\ngo to (marco v)\nset [x velocity v] to (((mouse x) - ([x position v] of [marco v])) / (10))\nset [y velocity v] to (((mouse y) - ([y position v] of [marco v])) / (8))\nrepeat until <<<touching (_edge_ v)?> or <touching (ground v)?>> or <touching (targets v)?>>\n    change x by (X velocity)\n    change y by (Y velocity)\n    change [y velocity v] by (-0.8)\n    switch costume to (dot v)\n    stamp\nend\nhide\n\nwhen I receive [frame v]\nforever\n    block name\nend\n\nwhen I start as a clone\nswitch costume to (0 v)\nif <(Guide) = [1]> then\n    switch costume to (1 v)\nend\ngo to x: (0) y: (-15)\ngo to [front v] layer\nset [timer v] to [0]\nshow\n\nwhen I receive [frame v]\nforever\n    block name2\nend\n\nwhen I receive [where? v]\nerase all\n\nwhen I receive [here! v]\nerase all\n\ndefine block name\nif <(costume [number v]) = [1]> then\n    if <(timer) > [0]> then\n        change [timer v] by (-1)\n    else\n        if <<key (1 v) pressed?> or <key (z v) pressed?>> then\n            set [timer v] to [45]\n            if <(Guide) = [0]> then\n                set [guide v] to [1]\n                create clone of (_myself_ v)\n            else\n                set [guide v] to [0]\n                create clone of (_myself_ v)\n            end\n        end\n    end\nend\n\ndefine block name2\nif <(costume [number v]) > [1]> then\n    if <<(y position) < [0]> and <(timer) = [0]>> then\n        change y by (3)\n    else\n        if <(timer) > [30]> then\n            if <(y position) > [-15]> then\n                change y by (-3)\n            else\n                delete this clone\n            end\n        else\n            change [timer v] by (1)\n        end\n    end\nend\n\nwhen I start as a clone\nforever\n    block name\nend\n\nwhen I start as a clone\nforever\n    block name2\nend\n\n@Run\n\nwhen I receive [frame v]\n\nforever\n    if <(costume [number v]) = [1]> then\n        if <(timer) > [0]> then\n            change [timer v] by (-1)\n        else\n            if <key (3 v) pressed?> then\n                set [timer v] to [45]\n                if <(Run speed) < [3]> then\n                    change [run speed v] by (1)\n                    create clone of (_myself_ v)\n                else\n                    set [run speed v] to [1]\n                    create clone of (_myself_ v)\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [run speed v] to [2]\nswitch costume to (bug fix v)\ndelete this clone\n\nwhen I start as a clone\nswitch costume to ((Run speed) + (1))\ngo to x: (0) y: (-15)\ngo to [front v] layer\nset [timer v] to [0]\nshow\n\nwhen I start as a clone\nforever\n    if <(costume [number v]) > [1]> then\n        if <<(y position) < [0]> and <(timer) = [0]>> then\n            change y by (3)\n        else\n            if <(timer) > [30]> then\n                if <(y position) > [-15]> then\n                    change y by (-3)\n                else\n                    delete this clone\n                end\n            else\n                change [timer v] by (1)\n            end\n        end\n    end\nend\n\n@Epic Photos\n\nwhen flag clicked\nhide\nforever\n    set [timer v] to (timer)\nend\n\nwhen [timer v] > ((timer) + (0.4))\ngo to x: (0) y: (0)\nswitch costume to (picture v)\ngo to [front v] layer\nshow\nclear graphic effects\nstop [all v]\n\nwhen I receive [here! v]\nwait (4.5) seconds\nswitch costume to (temple9 v)\nclear graphic effects\nset [ghost v] effect to (100)\nshow\ngo to [front v] layer\nstart sound [Morning v]\nrepeat (100)\n    change [ghost v] effect by (-1)\nend\nwait (5) seconds\nrepeat (100)\n    change [brightness v] effect by (-1)\nend\nswitch costume to (picture v)\nstop [all v]\n\n
                                       1st project!\n                                ???How to play???\n\nComputer:\n- Use the arrows or WASD (thanks to @NinjaNathan for proposing the idea) to move\n- Avoid the light green\n- The darker green is bouncy \nPhone:\n- Click to jump \n- Avoid the light green\n- The darker green is bouncy \nMusic:\n- Press m to mute/ stop all sounds\n- The song should start automatically but if it stops or u want to play the song press p\n                   \nFor more go on my profile @-Serenety- to check out more games!\n 