Immunity - A Platformer

Instructions: Use the arrow keys to move your player. If needed, let your player self destruct (by touching red) and then complete the level with your 2nd player! Remember, you can only die once or else you restart the level. Also please no advertising. Check lower to see some updates!\n\n~~~~~~~~~~~~~~~~~~UPDATES~~~~~~~~~~~~~~~~~~\nFebruary 6, 2019 - fixed bug where you move a lot after dying\nFebruary 9, 2019 - Nerfed Level 7 because people were having trouble with it\nFebruary 10, 2019 - added a "skip level" option (see level 3 to see how to skip)

@Stage\n\nwhen flag clicked\nshow variable [actual level lol v]\nset [level v] to [1]\nset [actual level lol v] to (join (Level) [/9])\nswitch backdrop to (Level)\nforever\n    play sound [Immunity - Dex Arson v] until done\nend\n\nset volume to (10) %\n\nwhen I receive [next level v]\nif <(Level) = [10]> then\n    set [actual level lol v] to [GG You did it!!!]\n    switch backdrop to (10 v)\nelse\n    change [level v] by (1)\n    set [actual level lol v] to (join (Level) [/9])\n    switch backdrop to (Level)\nend\n\nwhen flag clicked\nforever\n    if <key (s v) pressed?> then\n        broadcast (next level v)\n        wait (1) seconds\n    end\nend\n\n@Sprite1\n\nwhen flag clicked\nset [x v] to [0]\nset [y v] to [0]\nshow\ngo to x: (-171) y: (-22)\nswitch costume to (costume1 v)\nwait (0.5) seconds\nforever\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    if <touching color (#ff0000)?> then\n        switch costume to (costume2 v)\n        broadcast (message1 v)\n        stop [this script v]\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching color (#003fff)?> then\n        broadcast (next level v)\n    end\nend\n\nwhen I receive [next level v]\nset [x v] to [0]\nset [y v] to [0]\nswitch costume to (costume1 v)\nshow\ngo to x: (-171) y: (-22)\nwait (0.5) seconds\nforever\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    if <touching color (#ff0000)?> then\n        switch costume to (costume2 v)\n        broadcast (message1 v)\n        stop [this script v]\n    end\nend\n\nwhen I receive [dead v]\nset [x v] to [0]\nset [y v] to [0]\nswitch costume to (costume1 v)\nshow\ngo to x: (-171) y: (-22)\nwait (0.5) seconds\nforever\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    if <touching color (#ff0000)?> then\n        switch costume to (costume2 v)\n        broadcast (message1 v)\n        stop [this script v]\n    end\nend\n\nplay sound [Virtual Riot - Idols \(EDM Mashup\).mp3 v] until done\n\n@Sprite2\n\nwhen I receive [dead v]\nhide\nstop [other scripts in sprite v]\n\nwhen I receive [message1 v]\nset [x v] to [0]\nset [y v] to [0]\nswitch costume to (costume1 v)\nshow\ngo to x: (-171) y: (-22)\nwait (0.5) seconds\nforever\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    if <touching color (#ff0000)?> then\n        switch costume to (costume2 v)\n        broadcast (dead v)\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [message1 v]\nforever\n    if <touching color (#003fff)?> then\n        broadcast (next level v)\n        hide\n        go to x: (-171) y: (-22)\n        stop [other scripts in sprite v]\n    end\nend\n\nset [x v] to [0]\nset [y v] to [0]\n\n@Sprite3\n\n@Sprite4\n\nwhen flag clicked\nhide\n\ngo to x: (0) y: (0)\n\nhide variable [actual level lol v]\n\nhide variable [level v]\n\n