Pixely (Platformer create) v1

Instructions:     ･:*+.Pixely.:+\n Create your level and share it in the comments!\n\n||Credits                      ❤️ And ⭐️ PLZ B]\nFont ➡︎ bump it up\nBGM ➡︎ Curiosity             Pls Follow me :)\n\nPlease Enjoy!\n\n

@Stage\n\nwhen flag clicked\nforever\n    switch backdrop to ([costume name v] of [play v])\nend\n\nwhen flag clicked\nforever\n    play sound [1Curiosity v] until done\nend\n\n@Blocks\n\nwhen flag clicked\nt1\nA\nwait () seconds\nset [a v] to [1]\nStart [-219] [-90]\n\nwhen I start as a clone\nshow\nif <[1] = (a)> then\n    forever\n        wait until <<mouse down?> and <touching (mouse-pointer v)?>>\n        wait (0) seconds\n        if <[3] = (costume [number v])> then\n        wait until <not <mouse down?>>\n    end\nelse\n    forever\n        change size by ((((139) + ((20) * <touching (mouse-pointer v)?>)) - (size)) / (5))\n    end\nend\n\ndefine Start (x) (y)\nset [c v] to [0]\ngo to x: (x) y: (y)\nhide\nrepeat (12)\n    repeat (15)\n        change [c v] by (1)\n        switch costume to ((item (C) of [block_data v]) - (10))\n        create clone of (_myself_ v)\n        change x by (23)\n    end\n    change y by (23)\n    set x to (x)\nend\n\nwhen this sprite clicked\nif <[1] = (a)> then\n\ndefine t1\nset [a v] to [0]\nswitch costume to (block1 v)\ngo to x: (160) y: (150)\nrepeat (4)\n    repeat (3)\n        create clone of (_myself_ v)\n        change x by (30)\n        next costume\n        if <[3] = (costume [number v])> then\n            next costume\n        end\n    end\n    set x to (160)\n    change y by (-25)\nend\n\nwhen I receive [create v]\nwait (0.8) seconds\ndelete this clone\n\nwhen I receive [piay v]\nwait (0.8) seconds\ndelete this clone\n\nwhen I receive [piay v]\nwait (1) seconds\nStart [-161] [-126]\n\nwhen I receive [create v]\nwait (1) seconds\nStart [-219] [-90]\n\nwhen I receive [create v]\nwait (0.8) seconds\nt1\nwait () seconds\nset [a v] to [1]\n\nwhen flag clicked\ndelete all of [data_2 v]\nadd [1] to [data_2 v]\nadd [2] to [data_2 v]\nadd [3] to [data_2 v]\nadd [7] to [data_2 v]\nadd [10] to [data_2 v]\nadd [11] to [data_2 v]\nadd [13] to [data_2 v]\n\nwhen I receive [c v]\nif <[c] = (costume [name v])> then\n    set [a v] to [0]\n    t1\n    set [a v] to [1]\n    wait (0.3) seconds\n    Start [-219] [-90]\nend\n\nwhen I receive [c v]\ndelete this clone\n\nwhen flag clicked\nforever\n    switch costume to (c v)\nend\n\ndefine A\nset [block v] to [1]\ndelete all of [block_data v]\nadd [13] to [block_data v]\nrepeat (13)\n    add [11] to [block_data v]\nend\nadd [13] to [block_data v]\nrepeat (10)\n    add [13] to [block_data v]\n    repeat (13)\n        add [14] to [block_data v]\n    end\n    add [13] to [block_data v]\nend\nrepeat (15)\n    add [13] to [block_data v]\nend\n\n@Play\n\nwhen flag clicked\ngo to x: (161) y: (-144)\nswitch costume to (play v)\nshow\nforever\n    set [ghost v] effect to (15)\n    change size by ((((139) + ((20) * <touching (mouse-pointer v)?>)) - (size)) / (5))\nend\n\nwhen this sprite clicked\nif <(costume [number v]) = [1]> then\n    start sound [Connect v]\n    broadcast (Play v)\n    wait (0.8) seconds\n    next costume\nelse\n    start sound [Connect v]\n    broadcast (Create v)\n    wait (0.8) seconds\n    next costume\nend\n\nwhen I receive [a v]\nhide\n\nwhen I receive [b v]\nshow\n\nwhen I receive [win v]\nif <(costume [number v]) = [1]> then\n    start sound [Connect v]\n    broadcast (Play v)\n    wait (0.8) seconds\n    next costume\nelse\n    start sound [Connect v]\n    broadcast (Create v)\n    wait (0.8) seconds\n    next costume\nend\n\n@black\n\nwhen flag clicked\nshow\nset [ghost v] effect to (100)\nswitch costume to (a v)\nforever\n    go to [front v] layer\nend\n\nwhen I receive [create v]\nwait (0.2) seconds\nset [ghost v] effect to (100)\nif <[1] = (Win?)> then\n    switch costume to (a3 v)\nelse\n    switch costume to (a v)\nend\nrepeat (15)\n    change [ghost v] effect by (-7)\nend\nwait (0.5) seconds\nrepeat (15)\n    change [ghost v] effect by (7)\nend\n\nwhen I receive [piay v]\nset [ghost v] effect to (100)\nswitch costume to (a2 v)\nrepeat (15)\n    change [ghost v] effect by (-7)\nend\nwait (0.5) seconds\nrepeat (15)\n    change [ghost v] effect by (7)\nend\n\n@hit\n\nwhen I receive [play v]\nA\nbroadcast (PIay v)\n\ndefine A\ndelete all of [block_data v]\ngo to x: (-219) y: (-90)\nshow\nrepeat (12)\n    repeat (15)\n        B\n        change x by (23)\n    end\n    change y by (23)\n    set x to (-219)\nend\n\ndefine B\nset [ghost v] effect to (100)\nif <<touching color (#985800)?> and <touching color (#06820b)?>> then\n    add [11] to [block_data v]\nelse\n    if <touching color (#985800)?> then\n        add [12] to [block_data v]\n    else\n        if <touching color (#512f00)?> then\n            add [13] to [block_data v]\n        else\n            if <touching color (#549a10)?> then\n                add [15] to [block_data v]\n            else\n                if <touching color (#ac4545)?> then\n                    add [16] to [block_data v]\n                else\n                    if <touching color (#446aab)?> then\n                        add [17] to [block_data v]\n                    else\n                        if <touching color (#ab447b)?> then\n                            add [18] to [block_data v]\n                        else\n                            if <touching color (#44ab6a)?> then\n                                add [19] to [block_data v]\n                            else\n                                if <touching color (#bfbfbf)?> then\n                                    add [20] to [block_data v]\n                                else\n                                    if <touching color (#bfae3c)?> then\n                                        add [21] to [block_data v]\n                                    else\n                                        if <touching color (#afafaf)?> then\n                                            add [22] to [block_data v]\n                                        else\n                                            if <touching color (#00840b)?> then\n                                                add [23] to [block_data v]\n                                            else\n                                                add [14] to [block_data v]\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nif <touching color (#6de3e2)?> then\nelse\nend\n\nwhen flag clicked\nset [ghost v] effect to (100)\n\nwhen I receive [save v]\nA\n\n@Player\n\nwhen flag clicked\nset [player_x v] to [0]\nset [player_y v] to [0]\nhide\nwait (0.2) seconds\nforever\n    hide\n    wait until <[2] = ([costume # v] of [play v])>\n    wait (.1) seconds\n    set [player_x v] to [0]\n    set [player_y v] to [0]\n    go to x: (XX1) y: (YY1)\n    show\n    wait (1) seconds\n    repeat until <<touching color (#549a10)?> or <[1] = ([costume # v] of [black v])>>\n        A\n    end\n    set [win? v] to [0]\n    if <touching color (#549a10)?> then\n        set [win? v] to [1]\n        broadcast (Win v)\n    end\n    wait (.8) seconds\n    set [win? v] to [0]\nend\n\ndefine A\nset [x v] to (x position)\nset [y v] to (y position)\nshow\nswitch costume to (hitbox v)\nset [player_x v] to ((0.8) * ((Player_X) + (((0.9) - ((0.5) * <touching color (#446aab)?>)) * (<<<key (d v) pressed?> or <key (right arrow v) pressed?>> or <<mouse down?> and <[0] < (mouse x)>>> - <<<key (a v) pressed?> or <key (left arrow v) pressed?>> or <<mouse down?> and <(mouse x) < [0]>>>))))\nchange x by (Player_X)\nchange y by (0)\nif <<touching color (#985800)?> or > then\n    if <[0] < (Player_X)> then\n        if <<<<mouse down?> and <[0] < (mouse y)>> or <<key (w v) pressed?> or <key (up arrow v) pressed?>>> and <<<mouse down?> and <[0] < (mouse x)>> or <<key (d v) pressed?> or <key (right arrow v) pressed?>>>> then\n            broadcast (Crunch v)\n            set [player_x v] to [-6]\n            set [player_y v] to [7]\n        else\n            set [player_x v] to [1]\n        end\n        repeat until <<<touching color (#985800)?> or > = [0]>\n            change x by (-1)\n        end\n    else\n        if <<<mouse down?> and <[0] < (mouse y)>> or <<<key (w v) pressed?> or <key (up arrow v) pressed?>> or <<<mouse down?> and <(mouse x) < [0]>> or <<<key (a v) pressed?> or <key (left arrow v) pressed?>> or >>>> then\n            broadcast (Crunch v)\n            set [player_x v] to [6]\n            set [player_y v] to [7]\n        else\n            set [player_x v] to [-1]\n        end\n        repeat until <<<touching color (#985800)?> or > = [0]>\n            change x by (1)\n        end\n    end\nend\nchange y by (-5)\nif <<<touching color (#985800)?> or <<touching color (#446aab)?> or <<touching color (#bfbfbf)?> or <<touching color (#bfae3c)?> or <<touching color (#00840b)?> or <touching color (#512f00)?>>>>>> and <<<key (w v) pressed?> or <key (up arrow v) pressed?>> or <<mouse down?> and <[0] < (mouse y)>>>> then\n    if <(A) = [1]> then\n        broadcast (Jump v)\n        set [player_y v] to ((9) - ((4) * <touching color (#446aab)?>))\n    end\nend\nchange y by (5)\nchange y by (Player_Y)\nchange [player_y v] by ((-1) + ((0.5) * <touching color (#446aab)?>))\nif <<(Player_Y) < [-1]> and <touching color (#446aab)?>> then\n    set [player_y v] to [-1]\nend\nif <<touching color (#985800)?> or > then\n    if <[0] < (Player_Y)> then\n        change x by (-1)\n        set [player_y v] to [0]\n        repeat until <<<touching color (#985800)?> or > = [0]>\n            change y by (-1)\n        end\n    else\n        set [player_y v] to [0]\n        repeat until <<<touching color (#985800)?> or > = [0]>\n            change y by (1)\n        end\n    end\nend\nswitch costume to (player v)\nif <<touching (_edge_ v)?> or <<touching color (#488584)?> or <<touching color (#6de393)?> or <<touching color (#418757)?> or <touching color (#3b6e6d)?>>>>> then\n    go to x: (X) y: (Y)\nend\nif <<(y position) < [-131]> or <<touching color (#ac4545)?> or <touching color (#afafaf)?>>> then\n    set [player_x v] to [0]\n    set [player_y v] to [0]\n    broadcast (Oops v)\n    go to x: (XX1) y: (YY1)\nend\nif <touching color (#ab447b)?> then\n    set [player_y v] to [12]\n    broadcast (Jump v)\nend\nif <touching color (#44ab6a)?> then\n    broadcast (Jump v)\n    set [player_y v] to [10]\nend\n\nwhen flag clicked\nset [a v] to [1]\nforever\n    wait until <<<key (w v) pressed?> or <key (up arrow v) pressed?>> or <<mouse down?> and <[0] < (mouse y)>>>\n    wait (.01) seconds\n    wait until <[3] < (Player_Y)>\n    set [a v] to [0]\n    wait until <[0] = <<<key (w v) pressed?> or <key (up arrow v) pressed?>> or <<mouse down?> and <[0] < (mouse y)>>>>\n    set [a v] to [1]\nend\n\nwhen I receive [crunch v]\nplay sound [Crunch v] until done\n\nwhen I receive [jump v]\nplay sound [Jump v] until done\n\nwhen I receive [oops v]\nplay sound [Oops v] until done\n\n@Player2\n\nwhen flag clicked\nset drag mode [draggable v]\nforever\n    go to x: ((XX1) + (-58)) y: ((YY1) + (36))\n    show\n    wait until <[2] = ([costume # v] of [play v])>\n    set [xx1 v] to ((x position) + (58))\n    set [yy1 v] to ((y position) + (-36))\n    hide\n    wait until <[1] = ([costume # v] of [play v])>\nend\n\nwhen flag clicked\nforever\n    set [t v] to <<touching (mouse-pointer v)?> and <mouse down?>>\nend\n\nwhen flag clicked\nforever\n    set [xx v] to (x position)\n    set [yy v] to (y position)\n    wait until <<touching (mouse-pointer v)?> and <mouse down?>>\n    wait until <[0] = <<touching (mouse-pointer v)?> and <mouse down?>>>\n    if <<touching color (#985800)?> or <<touching color (#446aab)?> or <<touching color (#bfbfbf)?> or <<touching color (#bfae3c)?> or <<touching color (#00840b)?> or <touching color (#512f00)?>>>>>> then\n        go to x: (XX) y: (YY)\n    end\nend\n\nwhen flag clicked\nsay [Drag to move] for (2.5) seconds\n\nwhen I receive [c v]\ngo to x: ((join (letter (361) of (AA)) (join (letter (362) of (AA)) (letter (363) of (AA)))) - (500)) y: ((join (letter (364) of (AA)) (join (letter (365) of (AA)) (letter (366) of (AA)))) - (500))\n\n@save\n\nwhen flag clicked\ngo to x: (190) y: (15)\nforever\n    set [ghost v] effect to (15)\n    change size by ((((35) + ((6) * <touching (mouse-pointer v)?>)) - (size)) / (5))\n    if <[1] = ([costume # v] of [play v])> then\n        show\n    else\n        hide\n    end\nend\n\nwhen this sprite clicked\nstart sound [Collect v]\nbroadcast (Save v)\nwait (0.2) seconds\nA\nwait until <mouse down?>\nshow list [save code v]\n\nwhen flag clicked\nshow list [save code v]\n\ndefine A\nhide list [save code v]\ndelete all of [save code v]\nset [n1 v] to [0]\nset [nn v] to []\nrepeat (180)\n    change [n1 v] by (1)\n    set [nn v] to (join (NN) (item (n1) of [block_data v]))\nend\nadd (join (NN) (join (round (([x position v] of [player2 v]) + (500))) (round (([y position v] of [player2 v]) + (500))))) to [save code v]\n\n@load\n\nwhen flag clicked\ngo to x: (190) y: (-70)\nforever\n    set [ghost v] effect to (15)\n    change size by ((((35) + ((6) * <touching (mouse-pointer v)?>)) - (size)) / (5))\n    if <[1] = ([costume # v] of [play v])> then\n        show\n    else\n        hide\n    end\nend\n\nwhen this sprite clicked\nstart sound [Collect v]\nbroadcast (A v)\nask [] and wait\nbroadcast (B v)\nA\n\ndefine A\nset [aa v] to (answer)\nif <<<(AA) = ((AA) / (1))> and <[366] = (length of (AA))>> and <[0] < (AA)>> then\n    delete all of [block_data v]\n    set [n2 v] to [-1]\n    repeat (180)\n        change [n2 v] by (2)\n        add (join (letter (n2) of (AA)) (letter ((1) + (n2)) of (AA))) to [block_data v]\n    end\n    broadcast (C v)\nend\n\n@Thumbnail1\n\nwhen flag clicked\nhide\n\ngo to [front v] layer\nshow\n\n