AHHHHHHHHHHHHH- A platformer                             #hard #games

Instructions: IDK Why I made this oh yeah its for my schoolmate Travis\nYO 147 VIEWS IN 6 DAYS?! AWESOME!\n#1 on trending\nDOUBLE-CLICK FLAG!\n\nMY LATEST PLATFORMER!

@Stage\n\nwhen I receive [start v]\nforever\n    play sound (pick random (1) to (4)) until done\nend\n\nwhen flag clicked\nswitch backdrop to (blank v)\n\nwhen I receive [start v]\nswitch backdrop to (skies v)\n\n@Blank\n\n@Intro\n\nwhen flag clicked\nshow\nstart sound [Jim Josef & Alex Skrindo - Ruby \[NCS Release\] v]\nset volume to (100) %\nset size to (100) %\npoint in direction (90)\nclear graphic effects\nset [ghost v] effect to (100)\nswitch costume to (bar v)\ngo to x: (0) y: (-150)\nrepeat (6)\n    create clone of (_myself_ v)\n    change y by (60)\n    wait (0) seconds\nend\nwait (0.2) seconds\ngo to x: (0) y: (-150)\nset [brightness v] effect to (100)\nrepeat (6)\n    create clone of (_myself_ v)\n    change y by (60)\n    wait (0) seconds\nend\ngo to x: (0) y: (0)\nswitch costume to (circle v)\nwait (0.5) seconds\nset [brightness v] effect to (20)\nrepeat (3)\n    create clone of (_myself_ v)\n    change [brightness v] effect by (-10)\n    wait (0.05) seconds\nend\nswitch costume to (square v)\nset [brightness v] effect to (20)\nrepeat (3)\n    create clone of (_myself_ v)\n    change [brightness v] effect by (-10)\n    wait (0.05) seconds\nend\nwait (0.4) seconds\nset [brightness v] effect to (100)\nset [i1 v] to [0]\nswitch costume to (name v)\ncreate clone of (_myself_ v)\nParticles [40]\nset size to (100) %\nwait (2) seconds\nswitch costume to (slide v)\nset [brightness v] effect to (100)\ngo to x: (0) y: (-300)\ncreate clone of (_myself_ v)\nset [i1 v] to [1]\ngo to x: (0) y: (0)\nwait (0.5) seconds\nset [brightness v] effect to (0)\nswitch costume to (name v)\ncreate clone of (_myself_ v)\nwait (0.5) seconds\nswitch costume to (bar v)\ngo to x: (0) y: (-150)\nrepeat (6)\n    create clone of (_myself_ v)\n    change y by (60)\n    wait (0) seconds\nend\nwait (0.5) seconds\nswitch costume to (slide v)\nset [brightness v] effect to (100)\npoint in direction (-90)\ngo to x: (0) y: (300)\ncreate clone of (_myself_ v)\nrepeat (10)\n    change volume by (-10)\nend\npoint in direction (90)\nset [brightness v] effect to (0)\nset [ghost v] effect to (100)\nswitch costume to (cheese presents v)\ngo to x: (0) y: (0)\nwait (0.7) seconds\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nwait (1) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\nbroadcast (Start v)\n\nwhen I start as a clone\nif <(costume [number v]) = [1]> then\n    set size to (0) %\n    repeat (18)\n        change size by (((100) - (size)) / (4))\n        change [ghost v] effect by (-10)\n    end\nend\nif <(costume [number v]) = [2]> then\n    set [ghost v] effect to (0)\n    repeat (18)\n        switch costume to (blank v)\n        change size by ((size) / (4))\n        switch costume to (circle v)\n    end\nend\nif <(costume [number v]) = [4]> then\n    if <(i1) = [0]> then\n        set size to (0) %\n        set [ghost v] effect to (0)\n        repeat (37)\n            change size by (((100) - (size)) / (4))\n            point in direction ((90) + (([tan v] of (i1) ) * (7)))\n            change [i1 v] by (5)\n        end\n        set [i1 v] to [0]\n        repeat (30)\n            change [i1 v] by (1)\n            change x by ((i1) / (0.8))\n            change y by (i1)\n            turn right ((i1) / (1.5)) degrees\n            change [ghost v] effect by ((i1) / (5))\n        end\n    else\n        clear graphic effects\n        set size to (100) %\n        repeat (20)\n            change [ghost v] effect by (5)\n            change size by (-1)\n        end\n    end\nend\nif < (costume [name v]) contains [Particle]?> then\n    set [ghost v] effect to (0)\n    repeat until <(i3) > [100]>\n        change x by (i1)\n        change y by (i2)\n        change [i2 v] by (-1)\n        if <(i2) < [0]> then\n            change [i3 v] by ((i2) / (-2))\n            set [ghost v] effect to (i3)\n        end\n    end\n    delete this clone\nend\nif <(costume [number v]) = [7]> then\n    set [ghost v] effect to (0)\n    repeat (15)\n        change x by ((x position) / (-4))\n        change y by ((y position) / (-4))\n    end\nend\nif <(costume [number v]) = [8]> then\n    set [ghost v] effect to (0)\n    set size to (0) %\n    point in direction (45)\n    repeat (15)\n        turn right (((90) - (direction)) / (4)) degrees\n        switch costume to (blank v)\n        change size by (((600) - (size)) / (4))\n        switch costume to (square v)\n    end\nend\n\ndefine Particles (p)\nrepeat (p)\n    set size to (pick random (20) to (30)) %\n    switch costume to (pick random (5) to (6))\n    set [i1 v] to (pick random (-5) to (5))\n    set x to ((i1) * (5))\n    set [i2 v] to (pick random (10) to (15))\n    set [i3 v] to [0]\n    create clone of (_myself_ v)\nend\n\nwhen I receive [start v]\ndelete this clone\n\n@Player\n\ndefine AHHHHHHHHH\npoint in direction (90)\ngo to [front v] layer\nset size to (50) %\nshow\nset rotation style [left-right v]\nchange [y v] by (-0.5)\nif <key (left arrow v) pressed?> then\n    change [x v] by (-0.7)\n    switch costume to (cube-left v)\nend\nif <key (right arrow v) pressed?> then\n    change [x v] by (0.7)\n    switch costume to (cube-right v)\nend\nset [x v] to ((X) * (0.9))\nchange x by (X)\nif <touching (levels v)?> then\n    change y by (1)\n    if <touching (levels v)?> then\n        change y by (1)\n        if <touching (levels v)?> then\n            change y by (1)\n            if <touching (levels v)?> then\n                change y by (1)\n                if <touching (levels v)?> then\n                    change y by (1)\n                    if <touching (levels v)?> then\n                        change y by (1)\n                        if <touching (levels v)?> then\n                            change y by (-6)\n                            change x by ((X) * (-1))\n                            if <<(C) = [false]> and <key (up arrow v) pressed?>> then\n                                set [y v] to [13]\n                                if <(X) > [0]> then\n                                    set [x v] to [-8]\n                                else\n                                    set [x v] to [8]\n                                end\n                            else\n                                set [x v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nchange y by (Y)\nif <touching (levels v)?> then\n    change y by ((Y) * (-1))\n    set [y v] to [0]\nend\nchange y by (-0.5)\nif <<touching (levels v)?> and <key (up arrow v) pressed?>> then\n    set [y v] to [13]\nend\nchange y by (0.5)\nif <<<not <(L) = [7]>> or <not <(L) = [8]>>> and <(x position) > [239]>> then\n    if <(L) = [9]> then\n        change [l v] by (1)\n        go to x: (-240) y: (-42)\n        set [x v] to [0]\n        set [y v] to [0]\n    else\n        change [l v] by (1)\n        go to x: (-200) y: (80)\n        set [x v] to [0]\n        set [y v] to [0]\n    end\nend\nif <<<<(L) = [7]> or <(L) = [8]>> and <(y position) < [-188]>> and <not <touching (gaps and stuff v)?>>> then\n    change [l v] by (1)\n    go to x: (-200) y: (80)\n    set [x v] to [0]\n    set [y v] to [0]\nend\nif <touching (gaps and stuff v)?> then\n    switch costume to (die v)\n    set rotation style [all around v]\n    repeat (16)\n        turn right (3.7) degrees\n        change [ghost v] effect by ((100) / (16))\n    end\n    set [x v] to [0]\n    set [y v] to [0]\n    set [ghost v] effect to (0)\n    go to x: (-200) y: (80)\n    set rotation style [left-right v]\n    switch costume to (cube-right v)\nend\nif <<<not <(L) = [7]>> or <not <(L) = [8]>>> and <(y position) < [-188]>> then\n    switch costume to (die v)\n    set rotation style [all around v]\n    repeat (16)\n        turn right (3.7) degrees\n        change [ghost v] effect by ((100) / (16))\n    end\n    set [x v] to [0]\n    set [y v] to [0]\n    set [ghost v] effect to (0)\n    go to x: (-200) y: (80)\n    set rotation style [left-right v]\n    switch costume to (cube-right v)\nend\nif <touching (cart v)?> then\n    set [c v] to [true]\nend\n\nwhen flag clicked\ngo to x: (-200) y: (70)\nhide\n\nwhen I receive [start v]\nshow\nset [x v] to [0]\nset [y v] to [0]\nforever\n    AHHHHHHHHH\nend\n\nwhen flag clicked\nforever\n    if <(C) = [true]> then\n        repeat until <<(L) > [12]> and <([x position v] of [cart v]) > [-29]>>\n            show\n            go to [back v] layer\n            go to (cart v)\n            set y to (([y position v] of [cart v]) + (33))\n            stop [other scripts in sprite v]\n        end\n        set x to (([x position v] of [cart v]) - (145))\n        set y to (-96)\n        forever\n            AHHHHHHHHH\n        end\n    end\nend\n\nwhen flag clicked\nswitch costume to (cube-right v)\nhide\nrepeat until <(timer) > [8.537]>\n    switch costume to (cube-right v)\n    hide\nend\n\nwhen [timer v] > ([t v] of [tb v])\nhide\n\n@Levels\n\nwhen I receive [start v]\nshow\nset [l v] to [1]\ngo to [back v] layer\nforever\n    switch costume to (L)\n    if <(L) = [1]> then\n        show variable [u v]\n    else\n        hide variable [u v]\n    end\n    if <(L) = [4]> then\n        switch backdrop to (no-visor v)\n    else\n        if  then\n            switch backdrop to (mines v)\n        else\n            switch backdrop to (skies v)\n        end\n    end\nend\n\nwhen flag clicked\nset [l v] to [1]\nhide variable [u v]\nset [u v] to (join (username) [!])\ngo to x: (0) y: (0)\nhide\n\n@Gaps and stuff\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\ngo to x: (0) y: (0)\nswitch costume to (blank v)\nhide\ngo to [back v] layer\ngo [forward v] (1) layers\nforever\n    if <(L) = [3]> then\n        go to [front v] layer\n        go to x: (-10) y: (-55)\n        switch costume to (spike v)\n        show\n    else\n        if <(L) = [4]> then\n            go to [front v] layer\n            go to x: (0) y: (-55)\n            switch costume to (spike v)\n            show\n        else\n            if <(L) = [6]> then\n                go to [front v] layer\n                go to x: (0) y: (0)\n                show\n                switch costume to (lava1 v)\n            else\n                if <(L) = [7]> then\n                    go to [front v] layer\n                    go to x: (0) y: (0)\n                    show\n                    switch costume to (lava2 v)\n                else\n                    if <(L) = [9]> then\n                        go to [back v] layer\n                        go to x: (148) y: (34)\n                        show\n                        switch costume to (lava2 v)\n                    else\n                        hide\n                    end\n                end\n            end\n        end\n    end\nend\n\n@Cart\n\nwhen flag clicked\ngo to x: (81) y: (-90)\nhide\nset [c v] to [false]\nset [1 v] to [0]\nset [2 v] to [0]\nforever\n    if <(L) > [9]> then\n        point in direction (90)\n        show\n        if <(C) = [true]> then\n            repeat until <(C) = [false]>\n                move (6) steps\n                if <(L) > [12]> then\n                    if <(x position) > [-29]> then\n                        hide\n                        stop [this script v]\n                    end\n                end\n                if <(x position) > [250]> then\n                    go to x: (-272) y: (-90)\n                    change [l v] by (1)\n                end\n            end\n        end\n    else\n        hide\n    end\nend\n\n@TB\n\nwhen flag clicked\ngo to x: (0) y: (0)\nset [ghost v] effect to (100)\nforever\n    set [t v] to (timer)\nend\n\nwhen [timer v] > (T)\nhide variable [u v]\n\n