Night Ninja (Platformer)

Instructions: Night Ninja (Platformer)\n\nSetting:\nYou are a Night Ninja with a mission! Your goal is to get through the enemies outposts, infiltrate their base, and steal the papers that will show your team what the enemies next plans our. Don't fail, Night Ninja!\n\nInstructions:\n--Use arrow keys to move--\n--Click the R key to restart any level--\n--Click the S key to skip any level--\n\nDodge the warriors, slip by traps, and hurtle over barricades!

@Stage\n\nwhen [s v] key pressed\nswitch backdrop to (next backdrop v)\n\nwhen flag clicked\nforever\n    play sound [AfterInfinity-Solstice v] until done\nend\n\n@Night Ninja\n\nwhen flag clicked\nforever\n    if <(x position) > [234]> then\n        switch backdrop to (next backdrop v)\n        go to x: (-215) y: (-75)\n    end\nend\n\nwhen flag clicked\nhide\nset size to (40) %\nswitch backdrop to (backdrop1 v)\ngo to x: (-199) y: (-93)\nset [xv v] to [0]\nset [yv v] to [0]\nforever\n    if <touching color (#cc0099)?> then\n        set [mode v] to [jump]\n        set [yv v] to [13]\n    end\n    if <touching color (#5b9aea)?> then\n        if <<key (down arrow v) pressed?> or <key (s v) pressed?>> then\n            change [yv v] by (-1)\n        else\n            change [yv v] by (1)\n        end\n    end\n    if <<key (r v) pressed?> and <key (g v) pressed?>> then\n        wait until <not <<key (g v) pressed?> and <key (r v) pressed?>>>\n        go to x: (-231) y: (-135)\n        set [xv v] to [0]\n        set [yv v] to [0]\n        broadcast (Restart v)\n    end\n    if <key (r v) pressed?> then\n        if <not <key (g v) pressed?>> then\n            wait until <not <key (r v) pressed?>>\n            go to x: (-231) y: (-135)\n            set [xv v] to [0]\n            set [yv v] to [0]\n        end\n    end\n    go to [front v] layer\n    if <(back2) = [1]> then\n        hide\n        stop [this script v]\n    end\n    if <(x position) > [235]> then\n        broadcast (Next v)\n        set x to (-222)\n        set [xv v] to [0]\n        set [yv v] to [0]\n    end\n    if <<(y position) < [-175]> or <touching color (#ff0000)?>> then\n        go to x: (-215) y: (-75)\n        set [xv v] to [0]\n        set [yv v] to [0]\n    end\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        point in direction (90)\n        change [xv v] by (-1)\n    end\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        point in direction (-90)\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 (#000008)?> then\n        change y by (-2)\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 (-5)\n                                change x by ((-1) * (xv))\n                                if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <not <(xv) = [0]>>> then\n                                    set [mode v] to [walljump]\n                                    set [yv v] to [8]\n                                    set [xv v] to (((xv) / ([abs v] of (xv) )) * (-10))\n                                else\n                                    set [mode v] to [wallslide]\n                                    set [xv v] to [0]\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n        change y by (2)\n    end\n    change y by (-3)\n    if <touching color (#000008)?> then\n        if <(yv) = [-3]> then\n            if <<key (left arrow v) pressed?> or <key (right arrow v) pressed?>> then\n                set [mode v] to [run]\n            else\n                if <([abs v] of (xv) ) > [.1]> then\n                    set [mode v] to [skid]\n                else\n                    set [mode v] to [stand]\n                end\n            end\n        end\n        if <key (up arrow v) pressed?> then\n            set [mode v] to [jump]\n            set [yv v] to [9]\n        end\n    end\n    if <<<<(mode) = [jump]> or <(mode) = [walljump]>> and <(yv) < [0]>> or <<<(mode) = [run]> or <(mode) = [skid]>> and <(yv) < [-3]>>> then\n        set [mode v] to [fall]\n    end\n    change y by (3)\n    if <(yv) > [-15]> then\n        change [yv v] by (-0.5)\n    end\n    change y by (-2)\n    if <not <touching color (#000008)?>> then\n        change y by (-1)\n        if <not <touching color (#000008)?>> then\n            change y by (-1)\n            if <not <touching color (#000008)?>> then\n                change y by (-1)\n                if <not <touching color (#000008)?>> then\n                    change y by (-1)\n                    if <not <touching color (#000008)?>> then\n                        change y by (-1)\n                        if <not <touching color (#000008)?>> then\n                            change y by (5)\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (2)\n    change y by (yv)\n    if <touching color (#000008)?> then\n        change y by (-2)\n        if <touching color (#000008)?> then\n            change y by ((-1) * (yv))\n            set [yv v] to [-3]\n        end\n        change y by (2)\n    end\nend\n\nwhen backdrop switches to [backdrop7 v]\nset size to (25) %\n\nwhen backdrop switches to [backdrop2 v]\nshow\n\nwhen backdrop switches to [backdrop11 v]\nset size to (40) %\ngo to x: (-215) y: (-93)\n\nwhen backdrop switches to [backdrop8 v]\ngo to x: (-233) y: (103)\nif <key (r v) pressed?> then\n    go to x: (-233) y: (103)\nend\n\nwhen [s v] key pressed\ngo to x: (-215) y: (-75)\n\nwhen flag clicked\nforever\n    if <touching (warrior7 v)?> then\n        go to x: (-215) y: (-82)\n    end\n    if <touching (warrior6 v)?> then\n        go to x: (-215) y: (-82)\n    end\n    if <touching (warrior2 v)?> then\n        go to x: (-215) y: (-82)\n    end\n    if <touching (warrior5 v)?> then\n        go to x: (-215) y: (-82)\n    end\n    if <touching (warrior4 v)?> then\n        go to x: (-215) y: (-82)\n    end\n    if <touching (warrior3 v)?> then\n        go to x: (-215) y: (-82)\n    end\n    if <touching (warrior v)?> then\n        go to x: (-215) y: (-82)\n    end\nend\n\nwhen backdrop switches to [backdrop17 v]\nset size to (20) %\n\nwhen backdrop switches to [backdrop17 v]\nforever\n    if <touching color (#ff0000)?> then\n        go to x: (-208) y: (-114)\n    end\nend\n\nwhen backdrop switches to [backdrop1 v]\nhide\n\nwhen backdrop switches to [backdrop17 v]\ngo to x: (-224) y: (-103)\nforever\n    if <key (r v) pressed?> then\n        go to x: (-224) y: (-103)\n    end\nend\n\nwhen backdrop switches to [backdrop20 v]\nset size to (40) %\ngo to x: (-222) y: (-96)\n\nwhen flag clicked\nforever\n    if <touching (scroll v)?> then\n        switch backdrop to (backdrop1 v)\n    end\nend\n\nwhen backdrop switches to [backdrop8 v]\nrepeat until <not <(backdrop [number v]) = [8]>>\n    if <touching color (#ff0000)?> then\n        go to x: (-233) y: (101)\n    end\nend\n\n@Platform\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop8 v]\ngo to x: (161) y: (82)\nshow\nforever\n    glide (4) secs to x: (-176) y: (82)\n    wait (0.5) seconds\n    glide (4) secs to x: (161) y: (82)\nend\n\nwhen backdrop switches to [backdrop9 v]\nhide\n\n@Menu\n\nwhen flag clicked\ngo to x: (0) y: (0)\nshow\n\nwhen backdrop switches to [backdrop2 v]\nhide\n\n@Play Game Button\n\nwhen this sprite clicked\nswitch backdrop to (backdrop2 v)\n\nwhen flag clicked\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        repeat (10)\n            change size by (2)\n        end\n        wait until <not <touching (mouse-pointer v)?>>\n        repeat (10)\n            change size by (-2)\n        end\n    end\nend\n\nwhen backdrop switches to [backdrop2 v]\nhide\n\n@Warrior\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop12 v]\nshow\nforever\n    switch costume to (costume1 v)\n    go to x: (134) y: (-83)\n    wait (1) seconds\n    glide (4) secs to x: (-78) y: (-83)\n    switch costume to (costume2 v)\n    wait (1) seconds\n    glide (4) secs to x: (134) y: (-83)\nend\n\nwhen backdrop switches to [backdrop14 v]\nhide\n\n@Warrior2\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop13 v]\nshow\nforever\n    switch costume to (costume1 v)\n    go to x: (205) y: (85)\n    wait (1) seconds\n    glide (4) secs to x: (23) y: (85)\n    switch costume to (costume2 v)\n    wait (1) seconds\n    glide (4) secs to x: (205) y: (85)\nend\n\nwhen backdrop switches to [backdrop14 v]\nhide\n\n@Warrior3\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop15 v]\nhide\n\nwhen backdrop switches to [backdrop14 v]\nshow\ngo to x: (208) y: (-20)\nswitch costume to (costume1 v)\nforever\n    glide (3) secs to x: (-18) y: (-20)\n    switch costume to (costume2 v)\n    wait (1) seconds\n    glide (3) secs to x: (208) y: (-20)\n    switch costume to (costume1 v)\n    wait (1) seconds\nend\n\n@Warrior4\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop16 v]\nhide\n\nwhen backdrop switches to [backdrop15 v]\nshow\ngo to x: (155) y: (-80)\nswitch costume to (costume1 v)\nforever\n    glide (3) secs to x: (-122) y: (-82)\n    switch costume to (costume2 v)\n    wait (1) seconds\n    glide (3) secs to x: (115) y: (-80)\n    switch costume to (costume1 v)\n    wait (1) seconds\nend\n\n@Warrior5\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop16 v]\nhide\n\nwhen backdrop switches to [backdrop15 v]\nshow\ngo to x: (-11) y: (110)\nswitch costume to (costume1 v)\nforever\n    glide (3) secs to x: (-206) y: (110)\n    switch costume to (costume2 v)\n    wait (1) seconds\n    glide (3) secs to x: (-11) y: (110)\n    switch costume to (costume1 v)\n    wait (1) seconds\nend\n\n@Warrior6\n\nwhen backdrop switches to [backdrop28 v]\nhide\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop27 v]\nshow\ngo to x: (167) y: (-89)\nswitch costume to (costume1 v)\nforever\n    glide (3) secs to x: (-128) y: (-89)\n    switch costume to (costume2 v)\n    wait (1) seconds\n    glide (3) secs to x: (167) y: (-89)\n    switch costume to (costume1 v)\n    wait (1) seconds\nend\n\n@Warrior7\n\nwhen backdrop switches to [backdrop28 v]\nhide\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop27 v]\nshow\ngo to x: (-128) y: (-89)\nswitch costume to (costume2 v)\nforever\n    glide (3) secs to x: (167) y: (-89)\n    switch costume to (costume1 v)\n    wait (1) seconds\n    glide (3) secs to x: (-128) y: (-89)\n    switch costume to (costume2 v)\n    wait (1) seconds\nend\n\n@Scroll\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop28 v]\nshow\n\nwhen flag clicked\ngo to x: (140) y: (-37)\nforever\n    glide (1) secs to x: (140) y: (-20)\n    glide (1) secs to x: (140) y: (-37)\nend\n\nwhen backdrop switches to [backdrop1 v]\nhide\n\n