Ball Platformer v1.7

Instructions:                           ❤︎       ★       ✚\n                          Love      Favorite    Follow\n\n[Arrow Keys] to move\n[S] to skip\n[R] to restart\n\nLOVED BY @Za-Chary! WHAT!??!\nPlay without lag: https://sulfurous.aau.at/#223179317

@Stage\n\nwhen flag clicked\nswitch backdrop to (backdrop1 v)\n\nwhen I receive [next level v]\nnext backdrop\n\nwhen flag clicked\nforever\n    start sound [UNDERSWAP - Bonetrousle EXTENDED \(NerdyLizardePerson\).mp3 v]\n    set [lvl v] to (backdrop [number v])\nend\n\nwhen backdrop switches to [backdrop35 v]\nbroadcast (end v)\nhide variable [lvl v]\n\n@Sprite1\n\nwhen flag clicked\n\nwhen flag clicked\nshow\nforever\n    play sound [Pirates Of The Caribbean Theme Song.mp3 v] until done\nend\n\nwhen I receive [greenflag v]\nforever\n    if <key (right arrow v) pressed?> then\n        point in direction (90)\n    end\n    if <key (left arrow v) pressed?> then\n        point in direction (-90)\n    end\nend\n\nwhen flag clicked\n\nwhen I receive [greenflag v]\nswitch costume to (costume2 v)\ngo to x: (-215) y: (160)\nset [xv v] to [0]\nset [yv v] to [0]\nset size to (20) %\nswitch backdrop to (level1 v)\nforever\n    if <touching color (#ff0000)?> then\n        broadcast (death v)\n        wait (0.1) seconds\n        switch costume to (costume2 v)\n        go to x: (-215) y: (160)\n        set [xv v] to [0]\n        set [yv v] to [0]\n    end\n    if <key (right arrow v) pressed?> then\n        change [xv v] by (1)\n    end\n    if <key (left arrow v) pressed?> then\n        change [xv v] by (-1)\n    end\n    set [xv v] to ((xv) * (0.85))\n    change x by (xv)\n    if <touching color (#000000)?> then\n        change y by (-2)\n        if <touching color (#000000)?> then\n            change x by ((-1) * ((xv) + ((xv) / (([abs v] of (xv) ) + (0.0001)))))\n        end\n        change y by (2)\n    end\n    if <key (up arrow v) pressed?> then\n        change y by (-5)\n        if <touching color (#000000)?> then\n            set [yv v] to [10]\n        end\n        change y by (5)\n    end\n    if <(yv) > [-15]> then\n        change [yv v] by (-0.5)\n    end\n    change y by (yv)\n    if <(yv) < [3]> then\n        change y by (-2)\n        if <not <touching color (#000000)?>> then\n        end\n        change y by (2)\n    end\n    if <touching color (#000000)?> then\n        if <touching color (#000000)?> then\n            change y by ((-1) * (yv))\n            set [yv v] to [-3]\n        end\n    end\n    if <touching color (#ffff02)?> then\n        go to x: (-215) y: (160)\n        set [xv v] to [0]\n        set [yv v] to [0]\n        broadcast (next level v)\n    end\n    if <touching color (#00ffff)?> then\n        change [xv v] by (-0.5)\n        create clone of (object - water effect v)\n    end\n    if <touching color (#66004c)?> then\n        change y by (-5)\n        if <touching color (#000000)?> then\n            set [yv v] to [20]\n        end\n        change y by (-5)\n    end\n    if <touching color (#000008)?> then\n        change y by ((y) * (-1))\n        set [y v] to [0]\n    end\n    change y by (-0.5)\n    if <<touching color (#000008)?> and <key (w v) pressed?>> then\n        set [y v] to [10]\n    end\n    change y by (0.5)\nend\n\ngo to x: (-225) y: (160)\nforever\n    if <touching color (#ff0000)?> then\n        wait (1) seconds\n        go to x: (-225) y: (165)\n    end\n    if <touching color (#00ffff)?> then\n        change [x v] by (-0.8)\n    end\n    if <touching color (#ffff00)?> then\n        go to x: (-225) y: (165)\n        broadcast (next level v)\n    end\n    if <touching color (#66004c)?> then\n        change [y v] by (15)\n    end\n    change [y v] by (-0.5)\n    if <key (left arrow v) pressed?> then\n        change [x v] by (-1)\n    end\n    if <key (right arrow v) pressed?> then\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 (#000008)?> then\n        change y by (1)\n        if <touching color (#000008)?> then\n            change y by (1)\n            if <touching color (#000008)?> then\n                change y by (1)\n                if <touching color (#000008)?> then\n                    change y by (1)\n                    if <touching color (#000008)?> then\n                        change y by (1)\n                        if <touching color (#000008)?> then\n                            change y by (1)\n                            if <touching color (#000008)?> then\n                                change y by (-6)\n                                if <key (up arrow v) pressed?> then\n                                    set [y v] to [10]\n                                    if <(x) > [0]> then\n                                        set [x v] to [-10]\n                                    else\n                                        set [x v] to [10]\n                                    end\n                                else\n                                    change x by ((x) * (-1))\n                                    set [x v] to [0]\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (y)\n    if <touching color (#000008)?> then\n        change y by ((y) * (-1))\n        set [y v] to [0]\n    end\n    change y by (-0.5)\n    if <<touching color (#000008)?> and <key (up arrow v) pressed?>> then\n        set [y v] to [10]\n    end\n    change y by (0.5)\n    change [y v] by (-0.5)\n    if <key (a v) pressed?> then\n        change [x v] by (-1)\n    end\n    if <key (d v) pressed?> then\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 (#000008)?> then\n        change y by (1)\n        if <touching color (#000008)?> then\n            change y by (1)\n            if <touching color (#000008)?> then\n                change y by (1)\n                if <touching color (#000008)?> then\n                    change y by (1)\n                    if <touching color (#000008)?> then\n                        change y by (1)\n                        if <touching color (#000008)?> then\n                            change y by (1)\n                            if <touching color (#000008)?> then\n                                change y by (-6)\n                                if <key (w v) pressed?> then\n                                    set [y v] to [10]\n                                    if <(x) > [0]> then\n                                        set [x v] to [-10]\n                                    else\n                                        set [x v] to [10]\n                                    end\n                                else\n                                    change x by ((x) * (-1))\n                                    set [x v] to [0]\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (y)\n    if <touching color (#000008)?> then\n        change y by ((y) * (-1))\n        set [y v] to [0]\n    end\n    change y by (-0.5)\n    if <<touching color (#000008)?> and <key (w v) pressed?>> then\n        set [y v] to [10]\n    end\n    change y by (0.5)\nend\n\nwhen I receive [next level v]\ngo to x: (-215) y: (160)\nset [xv v] to [0]\nset [yv v] to [0]\n\nwhen [s v] key pressed\nbroadcast (next level v)\n\nwhen [r v] key pressed\ngo to x: (-215) y: (160)\nset [xv v] to [0]\nset [yv v] to [0]\n\nwhen I start as a clone\nswitch costume to (costume3 v)\nset [ghost v] effect to (0)\nshow\nset [effect_grv v] to (pick random (1) to (10))\nset [effect_hsp v] to (pick random (-5) to (5))\nforever\n    set [ghost v] effect to (10)\n    turn right (60) degrees\n    change x by (effect_hsp)\n    change y by (effect_grv)\n    change [effect_grv v] by (-0.5)\n    if <touching (_edge_ v)?> then\n        delete this clone\n    end\nend\n\nwhen I receive [death v]\nrepeat (10)\n    create clone of (_myself_ v)\n    create clone of (_myself_ v)\nend\n\nwhen I receive [downsize v]\nforever\n    switch costume to (costume3 v)\nend\n\nwhen I receive [end v]\nhide\n\nwhen I receive [end v]\nhide\nstop [other scripts in sprite v]\n\n@Sprite2\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop34 v]\nshow\nsay [TIME TO DIE] for (2) seconds\nsay [YOU SHALL NOT PASS] for (2) seconds\n\nwhen backdrop switches to [backdrop34 v]\nwait (4) seconds\nforever\n    point towards (sprite1 v)\n    move (3) steps\n    if <touching color (#cc99ff)?> then\n        go to x: (108) y: (6)\n    end\nend\n\nwhen backdrop switches to [backdrop35 v]\nhide\n\nwhen I receive [end v]\nhide\n\nwhen I receive [end v]\nhide\nstop [other scripts in sprite v]\n\n@Sprite3\n\nwhen flag clicked\nhide\n\nwhen flag clicked\n\nshow\n\nwhen I receive [thumbnail v]\nshow\ngo to [front v] layer\n\nbroadcast (thumbnail v)\n\n@Cheating Engine\n\nwhen [timer v] > (0.5)\nset [cheat v] to [None]\n\nwhen flag clicked\nbroadcast (GreenFlag v)\nhide\nif <(username) = [Deathstriding]> then\n    broadcast (yup v)\n    stop [other scripts in sprite v]\n    stop [this script v]\nelse\n    broadcast (nope v)\nend\n\nwhen I receive [yup v]\nhide\ngo to x: (0) y: (0)\nforever\n    if <<(mouse y) < [180]> and <(mouse x) = [240]>> then\n        show\n        go to [front v] layer\n        set [cheat v] to [Cheating]\n    end\nend\n\nwhen I receive [nope v]\nforever\n    if <(Cheat) = [None]> then\n        stop [this script v]\n    end\nend\n\nwhen I receive [nope v]\nforever\n    reset timer\nend\n\nwhen I receive [nope v]\nforever\n    if <<(Cheat) = [Cheating]> and <not <(username) = [Deathstriding]>>> then\n        show\n        go to [front v] layer\n    end\nend\n\nstop [all v]\n\nwhen I receive [end v]\nhide\nstop [other scripts in sprite v]\n\n@Sprite4\n\nwhen flag clicked\nhide\n\nwhen [c v] key pressed\nask [Cheat code?] and wait\nif <(answer) = [downsize]> then\n    broadcast (downsize v)\nend\n\nwhen I receive [end v]\nhide\nstop [other scripts in sprite v]\n\n@BackGround Effects\n\nwhen flag clicked\ngo to x: (0) y: (0)\nhide\n\nwhen I receive [end v]\nwait (1) seconds\nrepeat (100)\n    go [backward v] (50) layers\nend\nhide\n\nwhen I start as a clone\nsize (100) spd (10)\n\nwhen I receive [end v]\nwait (0.1) seconds\nshow\nset size to (0) %\nset [cloneid v] to [0]\nhide\ncreate clone of (_myself_ v)\nrepeat (4)\n    create clone of (_myself_ v)\n    change [cloneid v] by (1)\nend\nwait (1) seconds\nshow\ncreate clone of (_myself_ v)\nrepeat (4)\n    change [cloneid v] by (1)\n    create clone of (_myself_ v)\nend\nswitch costume to (backemerge v)\nsize (100) spd (10)\nwait (2) seconds\nstop [this script v]\n\nwhen I start as a clone\nif <(cloneID) = [0]> then\n    wait (0) seconds\n    switch costume to (open1 v)\n    set size to (100) %\n    go to x: (-240) y: (0)\n    go to [front v] layer\n    show\n    Glide To (x (-4) , y (0) ) speed (7)\n    wait (0.3) seconds\n    Glide To (x (-228) , y (0) ) speed (6)\n    repeat (10)\n        change [ghost v] effect by (10)\n    end\n    hide\nelse\n    if <(cloneID) = [1]> then\n        wait (0) seconds\n        switch costume to (open2 v)\n        set size to (100) %\n        go to x: (240) y: (0)\n        go to [front v] layer\n        show\n        Glide To (x (4) , y (0) ) speed (7)\n        wait (0.3) seconds\n        Glide To (x (230) , y (0) ) speed (6)\n        repeat (10)\n            change [ghost v] effect by (10)\n        end\n        hide\n    else\n        if <(cloneID) = [2]> then\n            show\n            switch costume to (boom v)\n            wait (0.2) seconds\n            size (100) spd (8)\n            wait (0.5) seconds\n            size (1) spd (1)\n            hide\n        else\n            if <(cloneID) = [3]> then\n                hide\n                switch costume to (endbackground v)\n                go to x: (0) y: (0)\n                wait (0.9) seconds\n                show\n                repeat (50)\n                    go [backward v] (99) layers\n                end\n                hide\n            else\n                if <(cloneID) = [4]> then\n                    go to [front v] layer\n                    set [ghost v] effect to (100)\n                    set [brightness v] effect to (5)\n                    set size to (100) %\n                    switch costume to (topfade v)\n                    repeat (10)\n                        change [ghost v] effect by (-5)\n                    end\n                else\n                    if <(cloneID) = [5]> then\n                        go to [front v] layer\n                        set [ghost v] effect to (100)\n                        set size to (100) %\n                        switch costume to (bottomfade v)\n                        repeat (10)\n                            change [ghost v] effect by (-5)\n                        end\n                    else\n                        if <(cloneID) = [6]> then\n                            wait (0.3) seconds\n                            set size to (100) %\n                            switch costume to (topbar v)\n                            go to x: (240) y: (180)\n                            point in direction (90)\n                            wait (0.1) seconds\n                            go to [front v] layer\n                            Glide To (x (0) , y (10) ) speed (7)\n                        else\n                            wait (0.3) seconds\n                            set size to (100) %\n                            switch costume to (bottombar v)\n                            go to x: (-240) y: (-180)\n                            point in direction (90)\n                            wait (0.1) seconds\n                            go to [front v] layer\n                            Glide To (x (0) , y (0) ) speed (7)\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\ndefine None\nrepeat until <<(round (x position)) = (x)> and <(round (y position)) = (y)>>\n    change x by (((x) - (x position)) / (speed))\n    change y by (((y) - (y position)) / (speed))\nend\ngo to x: (x) y: (y)\n\ndefine None\nrepeat until <(round (size)) = (siz)>\n    change size by (((siz) - (size)) / (s))\nend\nset size to (siz) %\n\n@@DeathStriding's Outro - Made by @npjensen\n\ndefine None\nrepeat until <<(round (x position)) = (x)> and <(round (y position)) = (y)>>\n    change x by (((x) - (x position)) / (s))\n    change y by (((y) - (y position)) / (s))\nend\ngo to x: (x) y: (y)\n\ndefine None\nrepeat until <(round (direction)) = (t)>\n    turn right (((t) - (direction)) / (s)) degrees\nend\npoint in direction (t)\n\ndefine None\nrepeat until <(round (size)) = (siz)>\n    change size by (((siz) - (size)) / (s))\nend\nset size to (siz) %\n\nwhen I start as a clone\nif <<<(cloneID) = [2]> or <(cloneID) = [3]>> or <(cloneID) = [4]>> then\n    size (80) spd (5)\nend\n\nwhen I start as a clone\nif <<(cloneID) = [0]> or <(cloneID) = [1]>> then\n    wait (0.1) seconds\n    size (50) spd (5)\nend\n\nwhen I start as a clone\nif <<(cloneID) = [0]> or <(cloneID) = [1]>> then\n    turn (90) spd (35)\nend\n\nwhen I start as a clone\nif <(cloneID) = [0]> then\n    go to x: (0) y: (75)\n    wait (0.1) seconds\n    Glide x (100)  y (-50)  spd (10)\nelse\n    if <(cloneID) = [1]> then\n        wait (0.1) seconds\n        go to x: (0) y: (75)\n        Glide x (-100)  y (-50)  spd (10)\n    end\nend\n\nwhen I receive [end v]\nwait (3.9) seconds\nbroadcast (endpt3 v)\ncreate clone of (_myself_ v)\nrepeat (5)\n    change [cloneid v] by (1)\n    create clone of (_myself_ v)\nend\n\nwhen I receive [end v]\nset [cloneid v] to [0]\nwait (1.8) seconds\nbroadcast (endpt2 v)\n\nwhen I receive [endpt2 v]\nsize (75) spd (10)\n\nwhen I receive [endpt2 v]\nturn (90) spd (7)\n\nwhen I start as a clone\nif <(cloneID) = [0]> then\n    switch costume to (stext v)\n    set size to (0) %\n    wait (0.1) seconds\n    forever\n        point in direction ((([cos v] of (c) ) * (8)) + (90))\n        set y to ((([cos v] of (c) ) * (12)) - (50))\n        set size to ((([cos v] of (c) ) * (8)) + (40)) %\n        change [c v] by (7)\n    end\nelse\n    if <(cloneID) = [1]> then\n        switch costume to (dtext v)\n        set size to (0) %\n        wait (0.1) seconds\n        forever\n            point in direction ((([sin v] of (c) ) * (8)) + (90))\n            set y to ((([cos v] of (c) ) * (12)) - (50))\n            set size to ((([cos v] of (c) ) * (8)) + (40)) %\n            change [c v] by (7)\n        end\n    else\n        if <(cloneID) = [2]> then\n            go to x: (0) y: (-999)\n            hide\n            wait (0.2) seconds\n            point in direction (90)\n            switch costume to (follo v)\n            show\n            set size to (0) %\n            set [brightness v] effect to (-10)\n            Glide x (0)  y (-110)  spd (5)\n            forever\n                point in direction ((([tan v] of (c) ) * (10)) + (90))\n                set size to ((([sin v] of (c) ) * (25)) + (80)) %\n                change [c v] by (3)\n            end\n        else\n            if <(cloneID) = [3]> then\n                go to x: (100) y: (-999)\n                hide\n                point in direction (90)\n                wait (0.1) seconds\n                switch costume to (unfortunate bungee jumper v)\n                show\n                set size to (0) %\n                set [brightness v] effect to (-10)\n                Glide x (-100)  y (-110)  spd (5)\n                forever\n                    point in direction ((([tan v] of (c) ) * (10)) + (90))\n                    set size to ((([sin v] of (c) ) * (25)) + (80)) %\n                    change [c v] by (3)\n                end\n            else\n                if <(cloneID) = [4]> then\n                    go to x: (-100) y: (-999)\n                    hide\n                    point in direction (90)\n                    wait (0.1) seconds\n                    switch costume to (luv v)\n                    show\n                    set size to (0) %\n                    set [brightness v] effect to (-10)\n                    Glide x (100)  y (-110)  spd (5)\n                    forever\n                        point in direction ((([tan v] of (c) ) * (10)) + (90))\n                        set size to ((([sin v] of (c) ) * (25)) + (80)) %\n                        change [c v] by (3)\n                    end\n                else\n                    if <(cloneID) = [5]> then\n                        go to x: (0) y: (0)\n                        point in direction (90)\n                        switch costume to (ds background v)\n                        go [backward v] (10) layers\n                        set size to (120) %\n                        set [ghost v] effect to (100)\n                        show\n                        repeat (10)\n                            change [ghost v] effect by (-10)\n                        end\n                        forever\n                            point in direction ((([sin v] of (c) ) * (5)) + (90))\n                            set y to ((([cos v] of (c) ) * (5)) + (0))\n                            set size to ((([sin v] of (c) ) * (5)) + (115)) %\n                            change [c v] by (3)\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [end v]\nforever\n    play sound [Aero Chord - Shooting Star v] until done\nend\n\nwhen flag clicked\ngo to x: (-240) y: (0)\nset size to (1) %\npoint in direction (-90)\nhide\n\nwhen I receive [endpt2 v]\nswitch costume to (logo v)\nshow\nset [c v] to [0]\nGlide x (0)  y (0)  spd (7)\nGlide x (0)  y (75)  spd (6)\nforever\n    point in direction ((([sin v] of (c) ) * (10)) + (90))\n    set y to ((([cos v] of (c) ) * (10)) + (75))\n    set size to ((([sin v] of (c) ) * (10)) + (75)) %\n    change [c v] by (10)\nend\n\n