cat jumper platformer

Instructions: go to the ather side\nASWD or arrows to move\nR to restart the level if you glicthed\nall the levels are possible\nyou can wall climb\ndon't touch red\ngreen make you jump high\nmobile friendly\n------------------------------\nnew update : new levels\nnew update : fixed textures\nnew update : shadow added\n

@Stage\n\nwhen flag clicked\nforever\n    if <(voice) = [1]> then\n        set volume to (100) %\n    end\nend\n\nwhen flag clicked\nforever\n    if <(voice) = [2]> then\n        set volume to (0) %\n    end\nend\n\nwhen flag clicked\nwait (1.5) seconds\nforever\n    play sound [Fork Lifter - Rhythm Heaven Fever v] until done\nend\n\n@profil\n\nwhen flag clicked\nhide\n\ngo to x: (31) y: (26)\nshow\ngo to [front v] layer\n\n@levls\n\nwhen flag clicked\nforever\n    if <(level) = [0]> then\n        switch costume to (المظهر 1 v)\n    else\n        if <(level) = [1]> then\n            switch costume to (المظهر 2 v)\n        else\n            if <(level) = [2]> then\n                switch costume to (المظهر 3 v)\n            else\n                if <(level) = [3]> then\n                    switch costume to (المظهر 4 v)\n                else\n                    if <(level) = [4]> then\n                        switch costume to (المظهر 6 v)\n                    else\n                        if <(level) = [5]> then\n                            switch costume to (المظهر 7 v)\n                        else\n                            if <(level) = [6]> then\n                                switch costume to (المظهر 8 v)\n                            else\n                                if <(level) = [7]> then\n                                    switch costume to (المظهر 9 v)\n                                else\n                                    if <(level) = [8]> then\n                                        switch costume to (المظهر 10 v)\n                                    else\n                                        if <(level) = [9]> then\n                                            switch costume to (المظهر 11 v)\n                                        else\n                                            if <(level) = [10]> then\n                                                switch costume to (المظهر 12 v)\n                                            else\n                                                if <(level) = [11]> then\n                                                    switch costume to (المظهر 13 v)\n                                                else\n                                                    if <(level) = [12]> then\n                                                        switch costume to (المظهر 14 v)\n                                                    else\n                                                        if <(level) = [13]> then\n                                                            switch costume to (المظهر 5 v)\n                                                        else\n                                                            if <(level) = [14]> then\n                                                                switch costume to (المظهر 15 v)\n                                                            else\n                                                                if <(level) = [15]> then\n                                                                    switch costume to (المظهر 16 v)\n                                                                else\n                                                                    if <(level) = [16]> then\n                                                                        switch costume to (المظهر 17 v)\n                                                                    else\n                                                                        if <(level) = [17]> then\n                                                                            switch costume to (المظهر 18 v)\n                                                                        else\n                                                                            if <(level) = [18]> then\n                                                                                switch costume to (the end v)\n                                                                            end\n                                                                        end\n                                                                    end\n                                                                end\n                                                            end\n                                                        end\n                                                    end\n                                                end\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nset [level v] to [0]\ngo to x: (18) y: (-7)\n\ndefine test\nchange y by (-10)\nchange x by (10)\nset [brightness v] effect to (-100)\nset [ghost v] effect to (80)\nstamp\nchange x by (-10)\nchange y by (10)\n\nwhen flag clicked\nforever\n    erase all\n    test\n    clear graphic effects\n    wait (0.01) seconds\nend\n\n@end\n\nwhen flag clicked\nforever\n    if <touching (player v)?> then\n        change [level v] by (1)\n        wait (2) seconds\n    end\nend\n\n@cat cat cat cat\n\nwhen flag clicked\ngo to x: (0) y: (0)\nshow\ngo to [front v] layer\nrepeat (16)\n    next costume\n    start sound [Pop2 v]\n    wait (0.05) seconds\nend\nhide\n\n@like\n\nwhen flag clicked\nforever\n    if <(level) = [0]> then\n        go to x: (15) y: (155)\n        switch costume to (star v)\n        show\n        if <(y position) = [-180]> then\n            go to (random position v)\n            switch costume to (easter egg v)\n        end\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nset [level v] to [0]\nforever\n    if <(level) = [18]> then\n        glide (1) secs to (random position v)\n        glide (1) secs to x: (-32) y: (48)\n        next costume\n    end\nend\n\nwhen flag clicked\nrepeat (10)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nforever\n    if <(level) = [18]> then\n        glide (1) secs to (random position v)\n        glide (1) secs to x: (-32) y: (48)\n        next costume\n    end\nend\n\n@player\n\nwhen flag clicked\nforever\n    if <(level) = [1]> then\n        broadcast (yo v)\n        stop [this script v]\n    end\nend\n\nwhen flag clicked\nforever\n    if <mouse down?> then\n    end\nend\n\nchange [xv v] by (-1)\n\nwhen flag clicked\nhide\ngo to x: (-12) y: (-999)\n\nwhen flag clicked\nswitch costume to (normal v)\nset [back v] to [0]\n\nwhen flag clicked\ngo to x: (-222) y: (-40)\npoint in direction (-90)\nshow\n\nwhen flag clicked\nhide\nwait (2.5) seconds\nshow\ngo to x: (-222) y: (-40)\nset [xv v] to [0]\nset [yv v] to [0]\nforever\n    if <touching color (#ff0000)?> then\n        set [mode v] to [jump]\n        set [yv v] to [13]\n    end\n    if <touching color (#5cff00)?> 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 (15)\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: (-189) y: (-40)\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: (-189) y: (-40)\n            set [xv v] to [0]\n            set [yv v] to [0]\n        end\n    end\n    go to [front v] layer\n    if <(back) = [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: (-222) y: (-40)\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?> or <<mouse down?> and <(mouse x) < (x position)>>>> 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?> or <<mouse down?> and <(mouse x) > (x position)>>>> 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?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > [1]>>>> 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 flag clicked\nforever\n    if <touching (end v)?> then\n        wait (0.00001) seconds\n        go to x: (-222) y: (-40)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(y position) < [--10]> then\n        go to x: (-222) y: (-40)\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (end v)?> then\n        wait (0.00000001) seconds\n        go to x: (-222) y: (-40)\n    end\nend\n\nwhen flag clicked\nforever\n    if  then\n        stop all sounds\n    end\nend\n\n@sound\n\nwhen flag clicked\nswitch costume to (screenshot_2020-06-27 scratch - imagine, program, share v)\nset [voice v] to [1]\n\nwhen this sprite clicked\nnext costume\nif <(voice) = [1]> then\n    set [voice v] to [2]\nelse\n    if <(voice) = [2]> then\n        set [voice v] to [1]\n    end\nend\n\n@skip\n\nwhen flag clicked\nhide\nforever\n    if <(level) = [1]> then\n        wait (20) seconds\n        show\n    else\n        if <(level) = [2]> then\n            wait (20) seconds\n            show\n        else\n            if <(level) = [3]> then\n                wait (20) seconds\n                show\n            else\n                if <(level) = [4]> then\n                    wait (20) seconds\n                    show\n                else\n                    if <(level) = [5]> then\n                        wait (20) seconds\n                        show\n                    else\n                        if <(level) = [6]> then\n                            wait (20) seconds\n                            show\n                        else\n                            if <(level) = [7]> then\n                                wait (20) seconds\n                                show\n                            else\n                                if <(level) = [8]> then\n                                    wait (20) seconds\n                                    show\n                                else\n                                    if <(level) = [9]> then\n                                        wait (20) seconds\n                                        show\n                                    else\n                                        if <(level) = [10]> then\n                                            wait (20) seconds\n                                            show\n                                        else\n                                            if <(level) = [11]> then\n                                                wait (20) seconds\n                                                show\n                                            else\n                                                if <(level) = [12]> then\n                                                    hide\n                                                    wait (20) seconds\n                                                    show\n                                                else\n                                                    if <(level) = [13]> then\n                                                        wait (20) seconds\n                                                        show\n                                                    else\n                                                        if <(level) = [14]> then\n                                                            wait (20) seconds\n                                                            show\n                                                        else\n                                                            if <(level) = [15]> then\n                                                                wait (20) seconds\n                                                                show\n                                                            else\n                                                                if <(level) = [16]> then\n                                                                    wait (20) seconds\n                                                                    show\n                                                                else\n                                                                    if <(level) = [17]> then\n                                                                        wait (20) seconds\n                                                                        show\n                                                                    end\n                                                                end\n                                                            end\n                                                        end\n                                                    end\n                                                end\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen this sprite clicked\nhide\nchange [level v] by (1)\n\nwhen flag clicked\nwait (1) seconds\nforever\n    if <(level) = [18]> then\n        hide\n        stop [other scripts in sprite v]\n    end\nend\n\n@Sprite1\n\nwhen flag clicked\npoint in direction (30)\nforever\n    hide\n    set y to (269)\n    wait (20) seconds\n    show\n    repeat (9)\n        change y by (-10)\n    end\n    start sound [Low Whoosh v]\n    wait (5) seconds\n    start sound [Low Whoosh2 v]\n    repeat (9)\n        change y by (10)\n    end\nend\n\nwhen flag clicked\nforever\n    repeat (8)\n        turn right (2) degrees\n    end\n    repeat (8)\n        turn left (2) degrees\n    end\nend\n\n