Platformer Adventure
@Stage\n\nwhen flag clicked\nswitch backdrop to (backdrop1 v)\nforever\n    if <(world) = [1]> then\n        switch backdrop to (backdrop1 v)\n    end\n    if <(world) = [2]> then\n        switch backdrop to (backdrop3 v)\n    end\n    if <(world) = [3]> then\n        switch backdrop to (backdrop4 v)\n    end\nend\n\nwhen I receive [start v]\nswitch backdrop to (backdrop1 v)\n\n@player\n\nwhen flag clicked\nset size to (100) %\nhide\nset [world v] to [0]\nforever\n    switch costume to (costume)\nend\n\nwhen I receive [world 1 v]\nhide\nstop [other scripts in sprite v]\ngo to x: (-170) y: (-97)\nset [x v] to [0]\nset [y v] to [0]\nforever\n    switch costume to (costume)\nend\n\nwhen I receive [world 2 v]\nhide\nstop [other scripts in sprite v]\ngo to x: (-170) y: (-97)\nset [x v] to [0]\nset [y v] to [0]\nforever\n    switch costume to (costume)\nend\n\nwhen I receive [play level v]\nset [x v] to [0]\nset [y v] to [0]\ngo to x: (-170) y: (-97)\nwait (2) seconds\nshow\nforever\n    if <(world) = [1]> then\n        platform world 1\n        check\n    end\n    if <(world) = [2]> then\n        platform world 2\n        check\n    end\n    if <(world) = [3]> then\n        platform world 3\n        check\n    end\nend\n\ndefine platform world 1\nchange y by (y)\nif <touching color (#04d900)?> then\n    repeat ([abs v] of (y) )\n        if <touching color (#04d900)?> then\n            change y by ((([abs v] of (y) ) / (y)) * (-1))\n        end\n    end\n    if <<<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > ((y position) + (40))>>> and <not <(y) > [0]>>> then\n        set [y v] to [11]\n    else\n        set [y v] to [0]\n    end\nelse\n    change [y v] by (-1)\nend\nif <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > ((x position) + (10))>>> then\n    change [x v] by (1)\nend\nif <<key (left arrow v) pressed?> or <<mouse down?> and <(x position) > ((mouse x) + (10))>>> then\n    change [x v] by (-1)\nend\nchange x by (x)\nif <touching color (#04d900)?> then\n    set [old y v] to (y position)\n    repeat (([abs v] of (x) ) + (1))\n        if <touching color (#04d900)?> then\n            change y by (1)\n        end\n    end\n    if <touching color (#04d900)?> then\n        set y to (old y)\n        repeat ([ceiling v] of ([abs v] of (x) ) )\n            if <touching color (#04d900)?> then\n                change x by ((([abs v] of (x) ) / (x)) * (-1))\n            end\n        end\n        if <<<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > ((y position) + (40))>>> and <not <(y) > [0]>>> then\n            if <[0] > (x)> then\n                set [x v] to [0]\n                if <<key (left arrow v) pressed?> or <<mouse down?> and <(x position) > ((mouse x) + (10))>>> then\n                    set [x v] to [8]\n                    set [y v] to [8]\n                end\n            else\n                set [x v] to [0]\n                if <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > ((x position) + (10))>>> then\n                    set [x v] to [-8]\n                    set [y v] to [8]\n                end\n            end\n        end\n    end\nend\nset [x v] to ((x) * (0.85))\n\ndefine platform world 2\nchange y by (y)\nif <touching color (#fffa00)?> then\n    repeat ([abs v] of (y) )\n        if <touching color (#fffa00)?> then\n            change y by ((([abs v] of (y) ) / (y)) * (-1))\n        end\n    end\n    if <<<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > ((y position) + (40))>>> and <not <(y) > [0]>>> then\n        if <(power) = [jump]> then\n            set [y v] to [17]\n        else\n            set [y v] to [11]\n        end\n    else\n        set [y v] to [0]\n    end\nelse\n    change [y v] by (-1)\nend\nif <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > ((x position) + (10))>>> then\n    change [x v] by (1)\nend\nif <<key (left arrow v) pressed?> or <<mouse down?> and <(x position) > ((mouse x) + (10))>>> then\n    change [x v] by (-1)\nend\nchange x by (x)\nif <touching color (#fffa00)?> then\n    set [old y v] to (y position)\n    repeat (([abs v] of (x) ) + (1))\n        if <touching color (#fffa00)?> then\n            change y by (1)\n        end\n    end\n    if <touching color (#fffa00)?> then\n        set y to (old y)\n        repeat ([ceiling v] of ([abs v] of (x) ) )\n            if <touching color (#fffa00)?> then\n                change x by ((([abs v] of (x) ) / (x)) * (-1))\n            end\n        end\n        if <<<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > ((y position) + (40))>>> and <not <(y) > [0]>>> then\n            if <[0] > (x)> then\n                set [x v] to [0]\n                if <<key (left arrow v) pressed?> or <<mouse down?> and <(x position) > ((mouse x) + (10))>>> then\n                    set [x v] to [8]\n                    set [y v] to [8]\n                end\n            else\n                set [x v] to [0]\n                if <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > ((x position) + (10))>>> then\n                    set [x v] to [-8]\n                    set [y v] to [8]\n                end\n            end\n        end\n    end\nend\nset [x v] to ((x) * (0.85))\n\ndefine death animation\nset [death y v] to [7]\nrepeat (17)\n    change y by (death y)\n    change x by (3)\n    change [death y v] by (-1)\n    change size by (-5)\nend\n\ndefine check\nif <(world) = [1]> then\n    if <touching (flag v)?> then\n        go to x: (-170) y: (-97)\n        if <(last level completed1) = (level)> then\n            change [last level completed1 v] by (1)\n        end\n        if <(last level completed1) = [25]> then\n            set [last world completed v] to [2]\n        end\n        change [level v] by (1)\n        set [x v] to [0]\n        set [y v] to [0]\n    end\n    if <touching color (#ff0000)?> then\n        death animation\n        go to x: (-170) y: (-97)\n        set size to (100) %\n    end\n    if <touching color (#db00ff)?> then\n        set [y v] to [17]\n    end\nend\nif <(world) = [2]> then\n    if <touching (flag v)?> then\n        go to x: (-170) y: (-97)\n        if <((last level completed2) + (26)) = (level)> then\n            change [last level completed2 v] by (1)\n        end\n        if <(last level completed1) = [25]> then\n            set [last world completed v] to [2]\n        end\n        if <(last level completed2) = [50]> then\n            set [last world completed v] to [3]\n        end\n        change [level v] by (1)\n        set [x v] to [0]\n        set [y v] to [0]\n    end\n    if <touching color (#ff0000)?> then\n        death animation\n        go to x: (-170) y: (-97)\n        set size to (100) %\n    end\n    if <touching color (#8fff82)?> then\n        set [y v] to [17]\n    end\nend\nif <(world) = [3]> then\n    if <touching (flag v)?> then\n        go to x: (-170) y: (-97)\n        if <((last level completed 3) + (52)) = (level)> then\n            change [last level completed 3 v] by (1)\n        end\n        if <(last level completed1) = [25]> then\n            set [last world completed v] to [2]\n        end\n        if <(last level completed2) = [50]> then\n            set [last world completed v] to [3]\n        end\n        change [level v] by (1)\n        set [x v] to [0]\n        set [y v] to [0]\n    end\n    if <touching color (#d40000)?> then\n        death animation\n        go to x: (-170) y: (-97)\n        set size to (100) %\n    end\n    if <touching color (#faff00)?> then\n        set [y v] to [17]\n    end\nend\n\ndefine platform world 3\nchange y by (y)\nif <touching color (#0094ff)?> then\n    repeat ([abs v] of (y) )\n        if <touching color (#0094ff)?> then\n            change y by ((([abs v] of (y) ) / (y)) * (-1))\n        end\n    end\n    if <<<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > ((y position) + (40))>>> and <not <(y) > [0]>>> then\n        if <(power) = [jump]> then\n            set [y v] to [17]\n        else\n            set [y v] to [11]\n        end\n    else\n        set [y v] to [0]\n    end\nelse\n    change [y v] by (-1)\nend\nif <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > ((x position) + (10))>>> then\n    change [x v] by (1)\nend\nif <<key (left arrow v) pressed?> or <<mouse down?> and <(x position) > ((mouse x) + (10))>>> then\n    change [x v] by (-1)\nend\nchange x by (x)\nif <touching color (#0094ff)?> then\n    set [old y v] to (y position)\n    repeat (([abs v] of (x) ) + (1))\n        if <touching color (#0094ff)?> then\n            change y by (1)\n        end\n    end\n    if <touching color (#0094ff)?> then\n        set y to (old y)\n        repeat ([ceiling v] of ([abs v] of (x) ) )\n            if <touching color (#0094ff)?> then\n                change x by ((([abs v] of (x) ) / (x)) * (-1))\n            end\n        end\n        if <<<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > ((y position) + (40))>>> and <not <(y) > [0]>>> then\n            if <[0] > (x)> then\n                set [x v] to [0]\n                if <<key (left arrow v) pressed?> or <<mouse down?> and <(x position) > ((mouse x) + (10))>>> then\n                    set [x v] to [8]\n                    set [y v] to [8]\n                end\n            else\n                set [x v] to [0]\n                if <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > ((x position) + (10))>>> then\n                    set [x v] to [-8]\n                    set [y v] to [8]\n                end\n            end\n        end\n    end\nend\nset [x v] to ((x) * (0.85))\n\nwhen I receive [world 3 v]\nhide\nstop [other scripts in sprite v]\ngo to x: (-170) y: (-97)\nset [x v] to [0]\nset [y v] to [0]\nforever\n    switch costume to (costume)\nend\n\n@world\n\nwhen flag clicked\nhide\nset [world v] to [1]\ndelete this clone\n\nwhen I start as a clone\nwait until <not <mouse down?>>\nshow\nif <(costume [number v]) = [1]> then\n    forever\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] effect to (15)\n            if <mouse down?> then\n                broadcast (world 1 v)\n                delete this clone\n            end\n        else\n            set [brightness v] effect to (0)\n        end\n    end\nend\nif <<(costume [number v]) = [2]> and <(last level completed1) > [25]>> then\n    forever\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] effect to (15)\n            if <mouse down?> then\n                broadcast (world 2 v)\n                delete this clone\n            end\n        else\n            set [brightness v] effect to (0)\n        end\n    end\nend\nif <<(last level completed2) > [25]> and <(costume [number v]) = [3]>> then\n    forever\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] effect to (15)\n            if <mouse down?> then\n                broadcast (world 3 v)\n                delete this clone\n            end\n        else\n            set [brightness v] effect to (0)\n        end\n    end\nend\n\nwhen I receive [world 1 v]\nset [world v] to [1]\ndelete this clone\n\nwhen I receive [world 2 v]\nset [world v] to [2]\ndelete this clone\n\nwhen I receive [world 3 v]\nset [world v] to [3]\ndelete this clone\n\nwhen I receive [worlds v]\nwait (0.5) seconds\nhide\nswitch costume to (costume1 v)\ngo to x: (-80) y: (60)\ncreate clone of (_myself_ v)\nwait (0.0000000000001) seconds\nswitch costume to (costume2 v)\ngo to x: (80) y: (60)\ncreate clone of (_myself_ v)\nwait (0.0000000000001) seconds\nswitch costume to (costume3 v)\ngo to x: (0) y: (-60)\ncreate clone of (_myself_ v)\n\nwhen I receive [start v]\ndelete this clone\n\n@level\n\nwhen flag clicked\nhide\n\nwhen I receive [world 1 v]\nwait (0.5) seconds\nswitch costume to (world 1-1 v)\nclone at x: [-100] y: [100]\nswitch costume to (world 1-2 v)\nclone at x: [-50] y: [100]\nswitch costume to (world1-3 v)\nclone at x: [0] y: [100]\nswitch costume to (costume4 v)\ngo to x: (50) y: (100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nswitch costume to (costume5 v)\ngo to x: (100) y: (100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nswitch costume to (costume6 v)\ngo to x: (-100) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nswitch costume to (costume7 v)\ngo to x: (-50) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nswitch costume to (costume8 v)\ngo to x: (0) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nswitch costume to (costume9 v)\ngo to x: (50) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nswitch costume to (costume10 v)\ngo to x: (100) y: (50)\ncreate clone of (_myself_ v)\nwait (0.00000001) seconds\nswitch costume to (costume11 v)\nclone at x: [-100] y: [0]\nswitch costume to (costume12 v)\nclone at x: [-50] y: [0]\nswitch costume to (costume13 v)\nclone at x: [0] y: [0]\nswitch costume to (costume14 v)\nclone at x: [50] y: [0]\nswitch costume to (costume15 v)\nclone at x: [100] y: [0]\nswitch costume to (costume16 v)\nclone at x: [-100] y: [-50]\nswitch costume to (costume17 v)\nclone at x: [-50] y: [-50]\nswitch costume to (costume18 v)\nclone at x: [0] y: [-50]\nswitch costume to (costume19 v)\nclone at x: [50] y: [-50]\nswitch costume to (costume20 v)\nclone at x: [100] y: [-50]\nswitch costume to (costume21 v)\nclone at x: [-100] y: [-100]\nswitch costume to (costume22 v)\nclone at x: [-50] y: [-100]\nswitch costume to (costume23 v)\nclone at x: [0] y: [-100]\nswitch costume to (costume24 v)\nclone at x: [50] y: [-100]\nswitch costume to (costume25 v)\nclone at x: [100] y: [-100]\n\nwhen I start as a clone\nwait until <not <mouse down?>>\nshow\nlevel: [1] , [0] , [1] , (last level completed1)\nlevel: [2] , [1] , [2] , (last level completed1)\nlevel: [3] , [2] , [3] , (last level completed1)\nlevel: [4] , [3] , [4] , (last level completed1)\nlevel: [5] , [4] , [5] , (last level completed1)\nlevel: [6] , [5] , [6] , (last level completed1)\nlevel: [7] , [6] , [7] , (last level completed1)\nlevel: [8] , [7] , [8] , (last level completed1)\nlevel: [9] , [8] , [9] , (last level completed1)\nlevel: [10] , [9] , [10] , (last level completed1)\nlevel: [11] , [10] , [11] , (last level completed1)\nlevel: [12] , [11] , [12] , (last level completed1)\nlevel: [13] , [12] , [13] , (last level completed1)\nlevel: [14] , [13] , [14] , (last level completed1)\nlevel: [15] , [14] , [15] , (last level completed1)\nlevel: [16] , [15] , [16] , (last level completed1)\nlevel: [17] , [16] , [17] , (last level completed1)\nlevel: [18] , [17] , [18] , (last level completed1)\nlevel: [19] , [18] , [19] , (last level completed1)\nlevel: [20] , [19] , [20] , (last level completed1)\nlevel: [21] , [20] , [21] , (last level completed1)\nlevel: [22] , [21] , [22] , (last level completed1)\nlevel: [23] , [22] , [23] , (last level completed1)\nlevel: [24] , [23] , [24] , (last level completed1)\nlevel: [25] , [24] , [25] , (last level completed1)\nlevel: [26] , [0] , [27] , (last level completed2)\nlevel: [27] , [1] , [28] , (last level completed2)\nlevel: [28] , [2] , [29] , (last level completed2)\nlevel: [29] , [3] , [30] , (last level completed2)\nlevel: [30] , [4] , [31] , (last level completed2)\nlevel: [31] , [5] , [32] , (last level completed2)\nlevel: [32] , [6] , [33] , (last level completed2)\nlevel: [33] , [7] , [34] , (last level completed2)\nlevel: [34] , [8] , [35] , (last level completed2)\nlevel: [35] , [9] , [36] , (last level completed2)\nlevel: [36] , [10] , [37] , (last level completed2)\nlevel: [37] , [11] , [38] , (last level completed2)\nlevel: [38] , [12] , [39] , (last level completed2)\nlevel: [39] , [13] , [40] , (last level completed2)\nlevel: [40] , [14] , [41] , (last level completed2)\nlevel: [41] , [15] , [42] , (last level completed2)\nlevel: [42] , [16] , [43] , (last level completed2)\nlevel: [43] , [17] , [44] , (last level completed2)\nlevel: [44] , [18] , [45] , (last level completed2)\nlevel: [45] , [19] , [46] , (last level completed2)\nlevel: [46] , [20] , [47] , (last level completed2)\nlevel: [47] , [21] , [48] , (last level completed2)\nlevel: [48] , [22] , [49] , (last level completed2)\nlevel: [49] , [23] , [50] , (last level completed2)\nlevel: [50] , [24] , [51] , (last level completed2)\nlevel: [51] , [0] , [53] , (last level completed 3)\nlevel: [52] , [1] , [54] , (last level completed 3)\nlevel: [53] , [2] , [55] , (last level completed 3)\nlevel: [54] , [3] , [56] , (last level completed 3)\nlevel: [55] , [4] , [57] , (last level completed 3)\nlevel: [56] , [5] , [58] , (last level completed 3)\nlevel: [57] , [6] , [59] , (last level completed 3)\nlevel: [58] , [7] , [60] , (last level completed 3)\nlevel: [59] , [8] , [61] , (last level completed 3)\nlevel: [60] , [9] , [62] , (last level completed 3)\nlevel: [61] , [10] , [63] , (last level completed 3)\nlevel: [62] , [11] , [64] , (last level completed 3)\nlevel: [63] , [12] , [65] , (last level completed 3)\nlevel: [64] , [13] , [66] , (last level completed 3)\nlevel: [65] , [14] , [67] , (last level completed 3)\nlevel: [66] , [15] , [68] , (last level completed 3)\nlevel: [67] , [16] , [69] , (last level completed 3)\nlevel: [68] , [17] , [70] , (last level completed 3)\nlevel: [69] , [18] , [71] , (last level completed 3)\nlevel: [70] , [19] , [72] , (last level completed 3)\nlevel: [71] , [20] , [73] , (last level completed 3)\nlevel: [72] , [21] , [74] , (last level completed 3)\nlevel: [73] , [22] , [75] , (last level completed 3)\nlevel: [74] , [23] , [76] , (last level completed 3)\nlevel: [75] , [24] , [77] , (last level completed 3)\n\nwhen I receive [play level v]\ndelete this clone\n\ndefine level: (costume number) , (llc) , (level) , (last level completed)\nif <<(costume [number v]) = (costume number)> and <(last level completed) > (llc)>> then\n    forever\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] effect to (15)\n            if <mouse down?> then\n                set [level v] to (level)\n                broadcast (play level v)\n            end\n        else\n            set [brightness v] effect to (0)\n        end\n    end\nend\n\ndefine clone at x: (x) y: (y)\ngo to x: (x) y: (y)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\n\nwhen I receive [worlds v]\ndelete this clone\n\nwhen I receive [world 2 v]\nwait (0.5) seconds\nswitch costume to (world2-1 v)\nclone at x: [-100] y: [100]\nswitch costume to (world2-2 v)\nclone at x: [-50] y: [100]\nswitch costume to (world2-3 v)\nclone at x: [0] y: [100]\nswitch costume to (world2-4 v)\nclone at x: [50] y: [100]\nswitch costume to (world2-5 v)\nclone at x: [100] y: [100]\nswitch costume to (world2-6 v)\nclone at x: [-100] y: [50]\nswitch costume to (world2-7 v)\nclone at x: [-50] y: [50]\nswitch costume to (world2-8 v)\nclone at x: [0] y: [50]\nswitch costume to (world2-9 v)\nclone at x: [50] y: [50]\nswitch costume to (world2-10 v)\nclone at x: [100] y: [50]\nswitch costume to (world2-11 v)\nclone at x: [-100] y: [0]\nswitch costume to (world2-12 v)\nclone at x: [-50] y: [0]\nswitch costume to (world2-13 v)\nclone at x: [0] y: [0]\nswitch costume to (world2-14 v)\nclone at x: [50] y: [0]\nswitch costume to (world2-15 v)\nclone at x: [100] y: [0]\nswitch costume to (world2-16 v)\nclone at x: [-100] y: [-50]\nswitch costume to (world2-17 v)\nclone at x: [-50] y: [-50]\nswitch costume to (world2-18 v)\nclone at x: [0] y: [-50]\nswitch costume to (world2-19 v)\nclone at x: [50] y: [-50]\nswitch costume to (world2-20 v)\nclone at x: [100] y: [-50]\nswitch costume to (world2-21 v)\nclone at x: [-100] y: [-100]\nswitch costume to (world2-22 v)\nclone at x: [-50] y: [-100]\nswitch costume to (world2-23 v)\nclone at x: [0] y: [-100]\nswitch costume to (world2-24 v)\nclone at x: [50] y: [-100]\nswitch costume to (world2-25 v)\nclone at x: [100] y: [-100]\n\nwhen flag clicked\nset [last level completed 3 v] to [1]\n\nwhen I receive [world 3 v]\nwait (0.5) seconds\nswitch costume to (world3-1 v)\nclone at x: [-100] y: [100]\nswitch costume to (world3-2 v)\nclone at x: [-50] y: [100]\nswitch costume to (world3-3 v)\nclone at x: [0] y: [100]\nswitch costume to (world3-4 v)\nclone at x: [50] y: [100]\nswitch costume to (world3-5 v)\nclone at x: [100] y: [100]\nswitch costume to (world3-6 v)\nclone at x: [-100] y: [50]\nswitch costume to (world3-7 v)\nclone at x: [-50] y: [50]\nswitch costume to (world3-8 v)\nclone at x: [0] y: [50]\nswitch costume to (world3-9 v)\nclone at x: [50] y: [50]\nswitch costume to (world3-10 v)\nclone at x: [100] y: [50]\nswitch costume to (world3-11 v)\nclone at x: [-100] y: [0]\nswitch costume to (world3-12 v)\nclone at x: [-50] y: [0]\nswitch costume to (world3-13 v)\nclone at x: [0] y: [0]\nswitch costume to (world3-14 v)\nclone at x: [50] y: [0]\nswitch costume to (world3-15 v)\nclone at x: [100] y: [0]\nswitch costume to (world3-16 v)\nclone at x: [-100] y: [-50]\nswitch costume to (world3-17 v)\nclone at x: [-50] y: [-50]\nswitch costume to (world3-18 v)\nclone at x: [0] y: [-50]\nswitch costume to (world3-19 v)\nclone at x: [50] y: [-50]\nswitch costume to (world3-20 v)\nclone at x: [100] y: [-50]\nswitch costume to (world3-21 v)\nclone at x: [-100] y: [-100]\nswitch costume to (world3-22 v)\nclone at x: [-50] y: [-100]\nswitch costume to (world3-23 v)\nclone at x: [0] y: [-100]\nswitch costume to (world3-24 v)\nclone at x: [50] y: [-100]\nswitch costume to (world3-25 v)\nclone at x: [100] y: [-100]\n\n@platform\n\nwhen flag clicked\nhide\n\nwhen I receive [play level v]\nshow\nforever\n    switch costume to (level)\nend\n\nwhen I receive [world 1 v]\nhide\n\nwhen I receive [world 2 v]\nhide\n\nwhen I receive [world 3 v]\nhide\n\n@flag\n\nwhen I receive [play level v]\nshow\ngo to x: (208) y: (-127)\nforever\n    next costume\n    wait (0.1) seconds\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [world 1 v]\nhide\n\nwhen I receive [world 2 v]\nhide\n\nwhen I receive [world 3 v]\nhide\n\n@lock-world1\n\nwhen I receive [world 1 v]\nwait (0.5) seconds\nset [clone id v] to [1]\ngo to x: (-50) y: (100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [2]\ngo to x: (0) y: (100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [3]\ngo to x: (50) y: (100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [4]\ngo to x: (100) y: (100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [5]\ngo to x: (-100) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [6]\ngo to x: (-50) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [7]\ngo to x: (0) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [8]\ngo to x: (50) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [9]\ngo to x: (100) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [10]\ngo to x: (-100) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [11]\ngo to x: (-50) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [12]\ngo to x: (0) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [13]\ngo to x: (50) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [14]\ngo to x: (100) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [15]\ngo to x: (-100) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [16]\ngo to x: (-50) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [17]\ngo to x: (0) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [18]\ngo to x: (50) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [19]\ngo to x: (100) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [20]\ngo to x: (-100) y: (-100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [21]\ngo to x: (-50) y: (-100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [22]\ngo to x: (0) y: (-100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [23]\ngo to x: (50) y: (-100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [24]\ngo to x: (100) y: (-100)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nshow\nlock [1]\nlock [2]\nlock [3]\nlock [4]\nlock [5]\nlock [6]\nlock [7]\nlock [8]\nlock [9]\nlock [10]\nlock [11]\nlock [12]\nlock [13]\nlock [14]\nlock [15]\nlock [16]\nlock [17]\nlock [18]\nlock [19]\nlock [20]\nlock [21]\nlock [22]\nlock [23]\nlock [24]\nlock [25]\n\nwhen flag clicked\nhide\nset [last level completed1 v] to [1]\nset [last level completed2 v] to [1]\n\nwhen I receive [play level v]\ndelete this clone\n\ndefine lock (lock)\nif <(clone id) = (lock)> then\n    forever\n        if <(last level completed1) > (lock)> then\n            delete this clone\n        end\n    end\nend\n\nwait (0.0000001) seconds\nset [clone id v] to [25]\ngo to x: (-100) y: (-100)\ncreate clone of (_myself_ v)\n\nwhen I receive [worlds v]\ndelete this clone\n\n@back\n\nwhen flag clicked\nhide\n\nwhen I receive [world 1 v]\nhide\nwait (0.5) seconds\nwait until <not <mouse down?>>\nstop [other scripts in sprite v]\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            broadcast (worlds v)\n            stop [this script v]\n        end\n    else\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen I receive [play level v]\nhide\nwait (0.5) seconds\nwait until <not <mouse down?>>\nstop [other scripts in sprite v]\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            if <(world) = [1]> then\n                broadcast (world 1 v)\n            end\n            if <(world) = [2]> then\n                broadcast (world 2 v)\n            end\n            if <(world) = [3]> then\n                broadcast (world 3 v)\n            end\n            stop [this script v]\n        end\n    else\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen I receive [worlds v]\nhide\nwait (0.5) seconds\nwait until <not <mouse down?>>\nstop [other scripts in sprite v]\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            broadcast (start v)\n            hide\n            stop [this script v]\n        end\n    else\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen I receive [world 2 v]\nhide\nwait (0.5) seconds\nwait until <not <mouse down?>>\nstop [other scripts in sprite v]\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            broadcast (worlds v)\n            stop [this script v]\n        end\n    else\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen I receive [shop v]\nhide\nwait (0.5) seconds\nwait until <not <mouse down?>>\nstop [other scripts in sprite v]\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            broadcast (start v)\n            hide\n            stop [this script v]\n        end\n    else\n        set [brightness v] effect to (0)\n    end\nend\n\nwhen I receive [world 3 v]\nhide\nwait (0.5) seconds\nwait until <not <mouse down?>>\nstop [other scripts in sprite v]\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (15)\n        if <mouse down?> then\n            broadcast (worlds v)\n            stop [this script v]\n        end\n    else\n        set [brightness v] effect to (0)\n    end\nend\n\n@start\n\nwhen flag clicked\nhide\ngo to x: (0) y: (50)\nswitch costume to (costume1 v)\ncreate clone of (_myself_ v)\nwait (0.00000001) seconds\ngo to x: (0) y: (0)\nswitch costume to (costume2 v)\ncreate clone of (_myself_ v)\nwait (0.0000000000001) seconds\ngo to x: (0) y: (-50)\nswitch costume to (costume3 v)\ncreate clone of (_myself_ v)\ngo to x: (0) y: (100)\nswitch costume to (costume4 v)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nshow\nif <(costume [number v]) = [1]> then\n    forever\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] effect to (50)\n            if <mouse down?> then\n                broadcast (worlds v)\n                stop [this script v]\n            end\n        else\n            set [brightness v] effect to (0)\n        end\n    end\nend\nif <(costume [number v]) = [2]> then\n    forever\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] effect to (50)\n            if <mouse down?> then\n                broadcast (shop v)\n                stop [this script v]\n            end\n        else\n            set [brightness v] effect to (0)\n        end\n    end\nend\nif <(costume [number v]) = [3]> then\n    forever\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] effect to (50)\n            if <mouse down?> then\n                if <(sound#) = [1]> then\n                    stop all sounds\n                    set [sound# v] to [2]\n                    start sound [2 v]\n                else\n                    if <(sound#) = [2]> then\n                        stop all sounds\n                        set [sound# v] to [3]\n                        start sound [3 v]\n                    else\n                        if <(sound#) = [3]> then\n                            stop all sounds\n                            set [sound# v] to [4]\n                            start sound [4 v]\n                        else\n                            stop all sounds\n                            set [sound# v] to [1]\n                            start sound [1 v]\n                        end\n                    end\n                end\n                wait until <not <mouse down?>>\n            end\n        else\n            set [brightness v] effect to (0)\n        end\n    end\nend\nif <(costume [number v]) = [4]> then\n    forever\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] effect to (50)\n            if <mouse down?> then\n                set size to (10) %\n                repeat (9)\n                    change size by (10)\n                end\n            end\n        else\n            set [brightness v] effect to (0)\n        end\n    end\nend\n\nwhen I receive [worlds v]\ndelete this clone\n\nwhen I receive [start v]\nwait (0.5) seconds\nhide\ngo to x: (0) y: (50)\nswitch costume to (costume1 v)\ncreate clone of (_myself_ v)\nwait (0.00000001) seconds\ngo to x: (0) y: (0)\nswitch costume to (costume2 v)\ncreate clone of (_myself_ v)\nwait (0.0000000000001) seconds\ngo to x: (0) y: (-50)\nswitch costume to (costume3 v)\ncreate clone of (_myself_ v)\ngo to x: (0) y: (100)\nswitch costume to (costume4 v)\ncreate clone of (_myself_ v)\n\nwhen I receive [shop v]\ndelete this clone\n\nwhen flag clicked\nset [sound# v] to [1]\nstart sound [1 v]\n\nwhen flag clicked\nshow variable [volume v]\nshow variable [sound# v]\nforever\n    set volume to (volume) %\nend\n\nwhen I receive [worlds v]\nhide variable [volume v]\nhide variable [sound# v]\n\nwhen I receive [shop v]\nhide variable [volume v]\nhide variable [sound# v]\n\nwhen I receive [start v]\nshow variable [volume v]\nshow variable [sound# v]\n\nwhen I start as a clone\nset size to (100) %\npoint in direction (90)\nif <(costume [number v]) = [4]> then\n    repeat (5)\n        change size by (-1)\n        turn right (-0.5) degrees\n    end\n    forever\n        repeat (10)\n            change size by (1)\n            turn right (0.5) degrees\n        end\n        repeat (10)\n            change size by (-1)\n            turn right (-0.5) degrees\n        end\n    end\nend\n\n@loading\n\nwhen flag clicked\ngo to x: (465) y: (0)\nhide\n\nwhen I receive [worlds v]\nshow\ngo to x: (465) y: (0)\nrepeat (11)\n    change x by (-40)\nend\nchange x by (-25)\nwait (1) seconds\nrepeat (11)\n    change x by (-40)\nend\nchange x by (-25)\ngo to x: (465) y: (0)\nhide\n\nwhen I receive [world 1 v]\nshow\ngo to x: (465) y: (0)\nrepeat (11)\n    change x by (-40)\nend\nchange x by (-25)\nwait (1) seconds\nrepeat (11)\n    change x by (-40)\nend\nchange x by (-25)\ngo to x: (465) y: (0)\nhide\n\nwhen I receive [play level v]\nshow\ngo to x: (465) y: (0)\nrepeat (11)\n    change x by (-40)\nend\nchange x by (-25)\nwait (1) seconds\nrepeat (11)\n    change x by (-40)\nend\nchange x by (-25)\ngo to x: (465) y: (0)\nhide\n\nwhen I receive [start v]\nshow\ngo to x: (465) y: (0)\nrepeat (11)\n    change x by (-40)\nend\nchange x by (-25)\nwait (1) seconds\nrepeat (11)\n    change x by (-40)\nend\nchange x by (-25)\ngo to x: (465) y: (0)\nhide\n\nwhen I receive [world 2 v]\nshow\ngo to x: (465) y: (0)\nrepeat (11)\n    change x by (-40)\nend\nchange x by (-25)\nwait (1) seconds\nrepeat (11)\n    change x by (-40)\nend\nchange x by (-25)\ngo to x: (465) y: (0)\nhide\n\nwhen I receive [shop v]\nshow\ngo to x: (465) y: (0)\nrepeat (11)\n    change x by (-40)\nend\nchange x by (-25)\nwait (1) seconds\nrepeat (11)\n    change x by (-40)\nend\nchange x by (-25)\ngo to x: (465) y: (0)\nhide\n\nwhen I receive [world 3 v]\nshow\ngo to x: (465) y: (0)\nrepeat (11)\n    change x by (-40)\nend\nchange x by (-25)\nwait (1) seconds\nrepeat (11)\n    change x by (-40)\nend\nchange x by (-25)\ngo to x: (465) y: (0)\nhide\n\n@moving platforms\n\nwhen flag clicked\nset [level v] to [0]\nhide\nforever\n    if <(level) = [30]> then\n        show\n        go to x: (-50) y: (-75)\n        repeat until <not <(level) = [30]>>\n            repeat (24)\n                change x by (5)\n                if <not <(level) = [30]>> then\n                    hide\n                end\n            end\n            repeat (24)\n                change x by (-5)\n                if <not <(level) = [30]>> then\n                    hide\n                end\n            end\n        end\n    end\n    if <(level) = [31]> then\n        go to x: (-50) y: (-113)\n        create clone of (_myself_ v)\n        wait (0.5) seconds\n        go to x: (-50) y: (10)\n        create clone of (_myself_ v)\n        wait until <not <(level) = [31]>>\n    end\nend\n\nwhen I start as a clone\nif <(level) = [31]> then\n    wait until <not <(level) = [31]>>\n    delete this clone\nend\n\nwhen I start as a clone\nshow\nforever\n    repeat (24)\n        change x by (5)\n    end\n    repeat (24)\n        change x by (-5)\n    end\nend\n\nif <(level) = [31]> then\n    go to x: (-50) y: (-113)\n    create clone of (_myself_ v)\n    wait (0.5) seconds\n    go to x: (-50) y: (10)\n    create clone of (_myself_ v)\n    wait until <not <(level) = [31]>>\nend\n\nwhen flag clicked\nforever\n    if <(level) = [30]> then\n        show\n        wait until <not <(level) = [30]>>\n    end\nend\n\nwhen I receive [world 2 v]\nhide\n\n@lock-world2\n\nwhen I receive [world 2 v]\nwait (0.5) seconds\nset [clone id v] to [1]\ngo to x: (-50) y: (100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [2]\ngo to x: (0) y: (100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [3]\ngo to x: (50) y: (100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [4]\ngo to x: (100) y: (100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [5]\ngo to x: (-100) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [6]\ngo to x: (-50) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [7]\ngo to x: (0) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [8]\ngo to x: (50) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [9]\ngo to x: (100) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [10]\ngo to x: (-100) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [11]\ngo to x: (-50) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [12]\ngo to x: (0) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [13]\ngo to x: (50) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [14]\ngo to x: (100) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [15]\ngo to x: (-100) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [16]\ngo to x: (-50) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [17]\ngo to x: (0) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [18]\ngo to x: (50) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [19]\ngo to x: (100) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [20]\ngo to x: (-100) y: (-100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [21]\ngo to x: (-50) y: (-100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [22]\ngo to x: (0) y: (-100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [23]\ngo to x: (50) y: (-100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [24]\ngo to x: (100) y: (-100)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nshow\nlock [1]\nlock [2]\nlock [3]\nlock [4]\nlock [5]\nlock [6]\nlock [7]\nlock [8]\nlock [9]\nlock [10]\nlock [11]\nlock [12]\nlock [13]\nlock [14]\nlock [15]\nlock [16]\nlock [17]\nlock [18]\nlock [19]\nlock [20]\nlock [21]\nlock [22]\nlock [23]\nlock [24]\nlock [25]\n\nwhen flag clicked\nhide\n\nwhen I receive [play level v]\ndelete this clone\n\ndefine lock (lock)\nif <(clone id) = (lock)> then\n    forever\n        if <(last level completed2) > (lock)> then\n            delete this clone\n        end\n    end\nend\n\nwait (0.0000001) seconds\nset [clone id v] to [25]\ngo to x: (-100) y: (-100)\ncreate clone of (_myself_ v)\n\nwhen I receive [worlds v]\ndelete this clone\n\n@lock-worlds\n\nwhen I receive [worlds v]\nwait (0.5) seconds\nset [clone id v] to [1]\ngo to x: (80) y: (60)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [2]\ngo to x: (0) y: (-60)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nshow\nif <(clone id) = [1]> then\n    forever\n        if <(last world completed) > [1]> then\n            delete this clone\n        end\n    end\nend\nif <(clone id) = [2]> then\n    forever\n        if <(last level completed2) > [25]> then\n            delete this clone\n        end\n    end\nend\n\nwhen flag clicked\nhide\nset [last world completed v] to [1]\n\nwhen I receive [play level v]\ndelete this clone\n\nwait (0.0000001) seconds\nset [clone id v] to [25]\ngo to x: (-100) y: (-100)\ncreate clone of (_myself_ v)\n\nwhen I receive [world 1 v]\ndelete this clone\n\nwhen I receive [world 2 v]\ndelete this clone\n\nwhen I receive [world 3 v]\ndelete this clone\n\nwhen I receive [start v]\ndelete this clone\n\n@lock-world3\n\nwhen I receive [world 3 v]\nwait (0.5) seconds\nset [clone id v] to [1]\ngo to x: (-50) y: (100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [2]\ngo to x: (0) y: (100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [3]\ngo to x: (50) y: (100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [4]\ngo to x: (100) y: (100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [5]\ngo to x: (-100) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [6]\ngo to x: (-50) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [7]\ngo to x: (0) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [8]\ngo to x: (50) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [9]\ngo to x: (100) y: (50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [10]\ngo to x: (-100) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [11]\ngo to x: (-50) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [12]\ngo to x: (0) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [13]\ngo to x: (50) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [14]\ngo to x: (100) y: (0)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [15]\ngo to x: (-100) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [16]\ngo to x: (-50) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [17]\ngo to x: (0) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [18]\ngo to x: (50) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [19]\ngo to x: (100) y: (-50)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [20]\ngo to x: (-100) y: (-100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [21]\ngo to x: (-50) y: (-100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [22]\ngo to x: (0) y: (-100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [23]\ngo to x: (50) y: (-100)\ncreate clone of (_myself_ v)\nwait (0.0000001) seconds\nset [clone id v] to [24]\ngo to x: (100) y: (-100)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nshow\nlock [1]\nlock [2]\nlock [3]\nlock [4]\nlock [5]\nlock [6]\nlock [7]\nlock [8]\nlock [9]\nlock [10]\nlock [11]\nlock [12]\nlock [13]\nlock [14]\nlock [15]\nlock [16]\nlock [17]\nlock [18]\nlock [19]\nlock [20]\nlock [21]\nlock [22]\nlock [23]\nlock [24]\nlock [25]\n\nwhen flag clicked\nhide\n\nwhen I receive [play level v]\ndelete this clone\n\ndefine lock (lock)\nif <(clone id) = (lock)> then\n    forever\n        if <(last level completed 3) > (lock)> then\n            delete this clone\n        end\n    end\nend\n\nwait (0.0000001) seconds\nset [clone id v] to [25]\ngo to x: (-100) y: (-100)\ncreate clone of (_myself_ v)\n\nwhen I receive [worlds v]\ndelete this clone\n\n@player costumes\n\nwhen flag clicked\nset [costume v] to [1]\nhide\n\nwhen I receive [start v]\nhide\n\nwhen I receive [shop v]\nwait (0.5) seconds\nshow\ngo to x: (0) y: (0)\nswitch costume to (costume)\n\nwhen I receive [right v]\nnext costume\n\nwhen I receive [left v]\nnext costume\nnext costume\nnext costume\nnext costume\nnext costume\n\n@right arrow\n\nwhen I receive [start v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [shop v]\nwait (0.5) seconds\ngo to x: (36) y: (7)\nforever\n    if <([costume # v] of [player costumes v]) = [6]> then\n        hide\n    else\n        show\n    end\nend\n\nwhen this sprite clicked\nbroadcast (right v)\n\nwhen flag clicked\nstop [other scripts in sprite v]\nhide\n\n@left arrow\n\nwhen I receive [start v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [shop v]\nwait (0.5) seconds\ngo to x: (-30) y: (7)\nforever\n    if <([costume # v] of [player costumes v]) = [1]> then\n        hide\n    else\n        show\n    end\nend\n\nwhen this sprite clicked\nbroadcast (left v)\n\nwhen flag clicked\nstop [other scripts in sprite v]\nhide\n\n@ok\n\nwhen flag clicked\ngo to x: (0) y: (-37)\nswitch costume to (costume1 v)\nhide\n\nwhen I receive [start v]\nstop [other scripts in sprite v]\nhide\n\nwhen I receive [shop v]\nwait (0.5) seconds\nshow\nforever\n    if <([costume # v] of [player costumes v]) = [1]> then\n        switch costume to (costume1 v)\n    end\n    if <([costume # v] of [player costumes v]) = [2]> then\n        if <(last level completed1) > [25]> then\n            switch costume to (costume1 v)\n        else\n            switch costume to (costume2 v)\n        end\n    end\n    if <([costume # v] of [player costumes v]) = [3]> then\n        if <(last level completed2) > [25]> then\n            switch costume to (costume1 v)\n        else\n            switch costume to (costume3 v)\n        end\n    end\n    if <([costume # v] of [player costumes v]) = [4]> then\n        if <(last level completed2) > [25]> then\n            switch costume to (costume1 v)\n        else\n            switch costume to (costume4 v)\n        end\n    end\n    if <([costume # v] of [player costumes v]) = [5]> then\n        if <(last level completed 3) > [25]> then\n            switch costume to (costume1 v)\n        else\n            switch costume to (costume5 v)\n        end\n    end\n    if <([costume # v] of [player costumes v]) = [6]> then\n        if <[followers v] contains (username)?> then\n            switch costume to (costume1 v)\n        else\n            switch costume to (costume6 v)\n        end\n    end\nend\n\nwhen I receive [shop v]\nwait (0.5) seconds\nshow\nforever\n    if <(costume [number v]) = [1]> then\n        if <touching (mouse-pointer v)?> then\n            set [brightness v] effect to (15)\n            if <mouse down?> then\n                set [costume v] to ([costume # v] of [player costumes v])\n            end\n        else\n            set [brightness v] effect to (0)\n        end\n    end\nend\n\n@power ups\n\nwhen flag clicked\nset [power v] to [none]\nhide\nwait (0.1) seconds\nwait until <(level) = [44]>\nswitch costume to (costume1 v)\ngo to x: (-204) y: (55)\ncreate clone of (_myself_ v)\nwait until <(level) = [48]>\nswitch costume to (costume1 v)\ngo to x: (-213) y: (-63)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nshow\nforever\n    if <(level) = [44]> then\n        if <<touching (player v)?> or <not <(level) = [44]>>> then\n            if <touching (player v)?> then\n                set [power v] to [jump]\n            end\n            delete this clone\n        end\n    end\n    if <(level) = [48]> then\n        if <<touching (player v)?> or <not <(level) = [48]>>> then\n            if <touching (player v)?> then\n                set [power v] to [jump]\n            end\n            delete this clone\n        end\n    end\nend\n\nwhen flag clicked\nwait (0.1) seconds\nwait until <(power) = [jump]>\nwait until <not <(level) = [44]>>\nset [power v] to [none]\nwait until <(power) = [jump]>\nwait until <not <(level) = [48]>>\nset [power v] to [none]\n\n@draggable platforms\n\nwhen flag clicked\nswitch costume to (costume1 v)\nhide\nforever\n    if <(level) = [45]> then\n        set drag mode [draggable v]\n        switch costume to (costume1 v)\n        show\n        go to x: (-192) y: (33)\n        wait until <not <(level) = [45]>>\n        hide\n    end\n    if <(level) = [46]> then\n        set drag mode [draggable v]\n        show\n        switch costume to (costume2 v)\n        go to x: (-163) y: (75)\n        wait until <not <(level) = [46]>>\n        hide\n    end\nend\n\nwhen flag clicked\nadd (username) to [viewers v]\nforever\n    if <<touching (mouse-pointer v)?> and <mouse down?>> then\n        wait until <not <mouse down?>>\n        set drag mode [not draggable v]\n    end\nend\n\n@Sprite1\n\nwhen flag clicked\nset [glide x v] to [10]\ngo to x: (0) y: (0)\nswitch costume to (costume1 v)\nset [ghost v] effect to (0)\nwait (1) seconds\nrepeat (50)\n    change [ghost v] effect by (2)\nend\n\nwhen flag clicked\nforever\n    reset timer\nend\n\nwhen [timer v] > (0.2)\nswitch costume to (costume2 v)\nset [ghost v] effect to (0)\nforever\n    repeat (20)\n        change x by (glide x)\n        change [glide x v] by (-1)\n    end\n    repeat (20)\n        change x by (glide x)\n        change [glide x v] by (1)\n    end\nend\n\n
✅ Read ALL instructions \n✅ most of the Instructions are if you are on a PC, but this is Mobile Friendly!\n✅ Arrow keys to move.\n✅ In the shop, if you are following me and it says to follow me on the last player tell me in the comments and I will fix it as soon as I can.\n✅ go ahead and give suggestions in the comments\n✅ press the sound button to change the sound\n✅If you need any other help ask me in the comments\n✅ Report any glitches in the comments\n✅ I worked sooooo hard on this so be sure to leave a heart and star before you go\n✅ remember you can get a 1scrachmaster player FOR FREE if you follow me. \n✅ ALL LEVELS ARE POSSIBLE so please don't ask how to beat a level in the comments. Thanks :)\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n✅PLEASE✅ go here and propose to be featured: https://scratch.mit.edu/studios/4228481/comments/\n\n39 loves! 32 favorites! and 325 views! Thank you!!!!!!