-Slide Blocs- [Platformer]

Instructions: TOP LOVED/ +600 loves!!\nThanks for playing!\n================================\nWelcome to Slide Blocs.\nArrow keys / WAD to move.\nAll instructions are in the game.\nAll levels are possible.\n

@Stage\n\nwhen flag clicked\nforever\n    play sound [Skread - Faut qu’on rentre bosser.mp3 v] until done\nend\n\n@Levels\n\nwhen flag clicked\nset [slide? v] to [0]\nhide\nswitch costume to (1 v)\nswitch costume to ((costume [number v]) - (1))\nset [clone v] to [0]\nforever\n    if <not <(Level) = [20]>> then\n        change [clone v] by (1)\n        next costume\n        create clone of (_myself_ v)\n    end\n    wait until <(Clone) = [1]>\n    wait (0.3) seconds\nend\n\nwhen I start as a clone\nset [ghost v] effect to (100)\nshow\nif <(Clone) = [1]> then\n    go to x: (0) y: (90)\nelse\n    go to x: (0) y: (-90)\nend\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nforever\n    if <(Slide?) = [1]> then\n        if <(y position) = [90]> then\n            change [clone v] by (-1)\n            repeat (15)\n                change y by (((270) - (y position)) / (4))\n                change [ghost v] effect by (10)\n            end\n            delete this clone\n        end\n        if <(y position) = [-90]> then\n            repeat (15)\n                change y by (((90) - (y position)) / (4))\n            end\n            go to x: (0) y: (90)\n        end\n        set [slide? v] to [0]\n    end\nend\n\n@Portal1\n\nwhen flag clicked\nhide\nwait until <(Level) = [2]>\nwait until <(Level) = [6]>\nLevel [6]\nwait until <(Level) = [7]>\n\ndefine Level (number)\nset [ghost v] effect to (100)\nshow\nif <(number) = [6]> then\n    go to x: (-70) y: (90)\nend\nwait (0.3) seconds\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nwait until <not <(Level) = (number)>>\nhide\n\nLevel [6]\n\n@Portal2\n\nwhen flag clicked\nhide\nwait until <(Level) = [2]>\nwait until <(Level) = [6]>\nLevel [6]\nwait until <(Level) = [7]>\n\ndefine Level (number)\nset [ghost v] effect to (100)\nshow\nif <(number) = [6]> then\n    go to x: (70) y: (90)\nend\nwait (0.3) seconds\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nwait until <not <(Level) = (number)>>\nhide\n\n@Flag\n\nwhen flag clicked\nforever\n    wait (0.05) seconds\n    next costume\nend\n\nwhen flag clicked\nset [level v] to [1]\nforever\n    set [yflag v] to [0]\n    point in direction (90)\n    if <<(Level) = [1]> or <<(Level) = [2]> or <<(Level) = [3]> or <<(Level) = [4]> or <<(Level) = [6]> or <<(Level) = [14]> or <(Level) = [18]>>>>>>> then\n        set size to (100) %\n        go to x: (195) y: (20)\n        show\n    end\n    if <<(Level) = [5]> or <<(Level) = [8]> or <<(Level) = [9]> or <(Level) = [10]>>>> then\n        set size to (100) %\n        go to x: (213) y: (40)\n        show\n    end\n    if <<(Level) = [11]> or <<(Level) = [12]> or <<(Level) = [13]> or <<(Level) = [15]> or <<(Level) = [16]> or <(Level) = [17]>>>>>> then\n        set size to (100) %\n        go to x: (213) y: (30)\n        show\n    end\n    if <(Level) = [7]> then\n        set size to (100) %\n        go to x: (200) y: (120)\n        show\n    end\n    wait (0.3) seconds\n    repeat (10)\n        change [ghost v] effect by (-10)\n    end\n    wait (1) seconds\n    wait until <(Coins?) = [0]>\n    wait until <touching (player v)?>\n    change [level v] by (1)\n    set [slide? v] to [1]\n    hide\n    set [ghost v] effect to (100)\nend\n\nwhen flag clicked\nset [yflag v] to [0]\nforever\n    if <<(Level) = [1]> or <<(Level) = [2]> or <<(Level) = [3]> or <<(Level) = [4]> or <<(Level) = [6]> or <<(Level) = [14]> or <(Level) = [18]>>>>>>> then\n        change [yflag v] by (7)\n        change y by ([cos v] of (Yflag) )\n    end\nend\n\n@Player\n\nwhen flag clicked\nset [death v] to [0]\nhide\nwait until <(Level) = [1]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [2]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [3]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [4]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [5]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [6]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [7]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [8]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [9]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [10]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [11]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [12]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [13]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [14]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [15]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [16]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [17]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [18]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [19]>\nshow variable [death v]\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [20]>\nstop [other scripts in sprite v]\nLevels\nwait until <(Level) = [21]>\nstop [other scripts in sprite v]\n\nwhen I start as a clone\nClone [1]\nClone [2]\nClone [3]\nClone [4]\nClone [5]\nClone [6]\nClone [7]\nClone [8]\nClone [9]\nClone [10]\nClone [11]\nClone [12]\nClone [13]\nClone [14]\nClone [15]\nClone [16]\nClone [17]\nClone [18]\nClone [19]\nClone [20]\n\ndefine Clone (1)\nif <(Level) = (1)> then\n    go to [front v] layer\n    set [x v] to [0]\n    set [y v] to [0]\n    wait (0.5) seconds\n    show\n    forever\n        if <not <(Level) = (1)>> then\n            delete this clone\n        end\n        if <<key (a v) pressed?> or <key (left arrow v) pressed?>> then\n            point in direction (-90)\n            change [x v] by (-1)\n        end\n        if <<key (d v) pressed?> or <key (right arrow v) pressed?>> then\n            point in direction (90)\n            change [x v] by (1)\n        end\n        set [x v] to ((x) * (0.9))\n        change x by (x)\n        if <touching color (#000000)?> then\n            change y by (1)\n            if <touching color (#000000)?> then\n                change y by (1)\n                if <touching color (#000000)?> then\n                    change y by (1)\n                    if <touching color (#000000)?> then\n                        change y by (1)\n                        if <touching color (#000000)?> then\n                            change y by (1)\n                        end\n                    end\n                end\n            end\n        end\n        if <touching color (#000000)?> then\n            change x by ((x) * (-1))\n            change y by (-5)\n            if <<key (w v) pressed?> or <key (up arrow v) pressed?>> then\n                if <(x) > [0]> then\n                    set [x v] to [-5]\n                else\n                    set [x v] to [5]\n                end\n                set [y v] to [10]\n            else\n                set [y v] to [0]\n            end\n        end\n        change [y v] by (-1)\n        change y by (y)\n        if <touching color (#000000)?> then\n            change y by ((y) * (-1))\n            set [y v] to [0]\n        end\n        change y by (-1)\n        if <touching color (#000000)?> then\n            if <<key (w v) pressed?> or <key (up arrow v) pressed?>> then\n                set [y v] to [12]\n            end\n        end\n        change y by (1)\n        if <touching color (#ff0000)?> then\n            change [death v] by (1)\n            repeat (5)\n                change [ghost v] effect by (20)\n            end\n            go to x: (-220) y: (40)\n            set [x v] to [0]\n            set [y v] to [0]\n            repeat (5)\n                change [ghost v] effect by (-20)\n            end\n        end\n        if <touching color (#3eaf04)?> then\n            set [y v] to [16]\n        end\n        if <touching (portal1 v)?> then\n            glide (0.3) secs to (portal1 v)\n            repeat (5)\n                change [ghost v] effect by (20)\n            end\n            go to (portal2 v)\n            repeat (5)\n                change [ghost v] effect by (-20)\n            end\n        end\n    end\nend\n\ndefine Levels\nhide\nset [x v] to [0]\nset [y v] to [0]\nset rotation style [left-right v]\nswitch costume to (player v)\nset size to (120) %\ngo to x: (-220) y: (40)\ncreate clone of (_myself_ v)\n\nwhen flag clicked\nhide variable [death v]\n\n@Coins\n\ndefine Level14\nset [coins? v] to [1]\nshow\ngo to x: (-61) y: (141)\ncreate clone of (_myself_ v)\nhide\n\ndefine Level12\nset [coins? v] to [1]\nshow\ngo to x: (120) y: (165)\ncreate clone of (_myself_ v)\nhide\n\ndefine Level7\nset [coins? v] to [3]\nshow\ngo to x: (0) y: (80)\ncreate clone of (_myself_ v)\ngo to x: (40) y: (60)\ncreate clone of (_myself_ v)\ngo to x: (50) y: (20)\ncreate clone of (_myself_ v)\nhide\n\ndefine Level6\nset [coins? v] to [2]\nset size to (100) %\nswitch costume to (c1 v)\nset [ghost v] effect to (100)\nshow\ngo to x: (147) y: (20)\ncreate clone of (_myself_ v)\ngo to x: (127) y: (20)\ncreate clone of (_myself_ v)\nhide\n\nwhen I start as a clone\nBloc [5]\nBloc [6]\nBloc [7]\nBloc [9]\nBloc [12]\nBloc [13]\nBloc [14]\nBloc [15]\nBloc [16]\nBloc [18]\n\ndefine Level5\nset [coins? v] to [1]\ngo to x: (147) y: (20)\nset size to (100) %\nswitch costume to (c1 v)\nset [ghost v] effect to (100)\nshow\ncreate clone of (_myself_ v)\nhide\n\nwhen flag clicked\nset [coins? v] to [0]\nhide\nwait (1) seconds\nwait until <(Level) = [5]>\nstop [other scripts in sprite v]\nLevel5\nwait until <(Level) = [6]>\nstop [other scripts in sprite v]\nLevel6\nwait until <(Level) = [7]>\nstop [other scripts in sprite v]\nLevel7\nwait until <(Level) = [8]>\nstop [other scripts in sprite v]\nwait until <(Level) = [9]>\nstop [other scripts in sprite v]\nLevel9\nwait until <(Level) = [10]>\nstop [other scripts in sprite v]\nwait until <(Level) = [12]>\nstop [other scripts in sprite v]\nLevel12\nwait until <(Level) = [13]>\nstop [other scripts in sprite v]\nLevel13\nwait until <(Level) = [14]>\nstop [other scripts in sprite v]\nLevel14\nwait until <(Level) = [15]>\nstop [other scripts in sprite v]\nLevel15\nwait until <(Level) = [16]>\nstop [other scripts in sprite v]\nLevel16\nwait until <(Level) = [17]>\nstop [other scripts in sprite v]\nwait until <(Level) = [18]>\nstop [other scripts in sprite v]\nLevel18\nwait until <(Level) = [19]>\nstop [other scripts in sprite v]\n\ndefine Level18\nset [coins? v] to [2]\nshow\ngo to x: (-165) y: (68)\ncreate clone of (_myself_ v)\ngo to x: (62) y: (127)\ncreate clone of (_myself_ v)\nhide\n\ndefine Level13\nset [coins? v] to [7]\nshow\ngo to x: (88) y: (21)\ncreate clone of (_myself_ v)\ngo to x: (58) y: (21)\ncreate clone of (_myself_ v)\ngo to x: (118) y: (21)\ncreate clone of (_myself_ v)\ngo to x: (-95) y: (165)\ncreate clone of (_myself_ v)\ngo to x: (-95) y: (60)\ncreate clone of (_myself_ v)\ngo to x: (87) y: (165)\ncreate clone of (_myself_ v)\ngo to x: (87) y: (100)\ncreate clone of (_myself_ v)\nhide\n\ndefine Level15\nset [coins? v] to [1]\nshow\ngo to x: (157) y: (120)\ncreate clone of (_myself_ v)\nhide\n\ndefine Level16\nset [coins? v] to [1]\nshow\ngo to x: (167) y: (141)\ncreate clone of (_myself_ v)\nhide\n\ndefine Level9\nset [coins? v] to [1]\nshow\ngo to x: (-90) y: (120)\ncreate clone of (_myself_ v)\nhide\n\ndefine Bloc (1)\nif <(Level) = (1)> then\n    wait (0.3) seconds\n    repeat (10)\n        change [ghost v] effect by (-10)\n    end\n    repeat until <not <(Level) = (1)>>\n        next costume\n        wait (0.05) seconds\n        if <touching (player v)?> then\n            start sound [retro-game-coin-pick-up-sound-effect-20-of-them-part-1 v]\n            hide\n            change [coins? v] by (-1)\n            stop [this script v]\n        end\n    end\nend\n\n@Thumbnail\n\nwhen flag clicked\nforever\n    go to x: (0) y: (0)\n    point in direction (90)\n    set size to (100) %\n    show\n    go to [front v] layer\n    set [ghost v] effect to (100)\nend\n\n