Icey (#2) - A Platformer #Games #All #Platformer #Trending

Instructions: This is a platformer game. You can use the arrow keys or WASD keys to move. You can use the mouse to aim and shoot an arrow.\n\nOn most screens, you will need to hit all of the targets with an arrow to be able to move on. Some levels might be hard, so if you get stuck then you can press the X key to automatically break all of the targets.\n\nYou can press the Z key to turn on or off a guide, which will show you were the arrow will go.\n\nThere are some platforms that you can jump up through. And you can press the down arrow to drop down through them.

@Stage\n\nwhen flag clicked\nswitch backdrop to (sky blue v)\n\nwhen I receive [start v]\nstop all sounds\nforever\n    play sound [Plugged \(post mastering\) v] until done\nend\n\nwhen flag clicked\nforever\n    if <(Level) = [7]> then\n        broadcast (get away villager! v)\n    end\n    if <(Level) = [11]> then\nend\n\n@Blank\n\n@Platform\n\nwhen flag clicked\nset [level v] to [1]\nhide\nforever\n    switch costume to (Level)\nend\n\nwhen I receive [start v]\nshow\n\nchange [level v] by (1)\n\n@Spikes\n\nwhen flag clicked\nhide\ngo to [back v] layer\nforever\n    switch costume to (Level)\n    if <(Level) = [7]> then\n        go to [front v] layer\n    else\n        go to [back v] layer\n    end\nend\n\nwhen I receive [start v]\nshow\n\nchange [level v] by (1)\n\n@Portal\n\nwhen flag clicked\nhide\nforever\n    turn left (6) degrees\n    go to [back v] layer\nend\n\nwhen I receive [start v]\nhide\nwait (23) seconds\nshow\nforever\n    if <(Level) = [1]> then\n        go to x: (180) y: (-100)\n        switch costume to (costume1 v)\n    else\n        if <(Level) = [2]> then\n            show\n            go to x: (200) y: (-73)\n        else\n            if <(Level) = [4]> then\n                go to x: (200) y: (150)\n            else\n                if <(Level) = [5]> then\n                    go to x: (9) y: (97)\n                else\n                    if <(Level) = [6]> then\n                        go to x: (210) y: (-74)\n                    else\n                        if <(Level) = [7]> then\n                            go to x: (4) y: (-74)\n                            switch costume to (costume2 v)\n                            switch backdrop to (sky blue v)\n                        else\n                            if <(Level) = [8]> then\n                                go to x: (210) y: (-74)\n                                switch backdrop to (notebook v)\n                            else\n                                if <(Level) = [10]> then\n                                    go to x: (0) y: (-150)\n                                else\n                                    if <(Level) = [11]> then\n                                        go to x: (-210) y: (-150)\n                                    else\n                                        if <(Level) = [12]> then\n                                            go to x: (213) y: (40)\n                                        else\n                                            if <(Level) = [13]> then\n                                                go to x: (213) y: (40)\n                                                switch costume to (costume3 v)\n                                            else\n                                                if <(Level) = [14]> then\n                                                    go to x: (238) y: (-61)\n                                                    broadcast (Dark v)\n                                                    switch backdrop to (dark v)\n                                                else\n                                                    if <(Level) = [15]> then\n                                                        go to x: (210) y: (-50)\n                                                    else\n                                                        if <(Level) = [16]> then\n                                                            go to x: (210) y: (134)\n                                                        else\n                                                            if <(Level) = [16]> then\n                                                                go to x: (210) y: (100)\n                                                            else\n                                                                if <(Level) = [17]> then\n                                                                    go to x: (200) y: (30)\n                                                                else\n                                                                    if <(Level) = [18]> then\n                                                                        go to x: (210) y: (-50)\n                                                                    else\n                                                                        if <(Level) = [19]> then\n                                                                            go to x: (0) y: (100)\n                                                                            switch costume to (costume4 v)\n                                                                        else\n                                                                            if <(Level) = [20]> then\n                                                                                hide\n                                                                                broadcast (Light 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 I receive [start v]\nforever\n    if <(Move?) = [no]> then\n        hide\n    else\n        if <(Move?) = [yes]> then\n            show\n        end\n    end\nend\n\n@Spikes 2\n\nwhen flag clicked\ngo to [back v] layer\nhide\nforever\n    go to x: (2) y: (-58)\n    glide (0.3) secs to x: (2) y: (-100)\n    wait (0.8) seconds\n    glide (0.6) secs to x: (2) y: (-58)\nend\n\nwhen I receive [start v]\nshow\nforever\n    switch costume to (Level)\nend\n\n@decor\n\nwhen flag clicked\nhide\nforever\n    switch costume to (Level)\n    go to [back v] layer\nend\n\nwhen I receive [start v]\nshow\nforever\n    go to [back v] layer\nend\n\n@Clouds\n\nwhen flag clicked\nset [ghost v] effect to (50)\nhide\n\nwhen I start as a clone\ngo to [back v] layer\ngo to x: (200) y: (pick random (50) to (180))\nshow\nrepeat until <(x position) < [-200]>\n    change x by (-3)\n    if <<([costume name v] of [platform v]) > [6]> and <([costume name v] of [platform v]) < [11]>> then\n        hide\n        delete this clone\n    end\nend\nrepeat (10)\n    hide\n    delete this clone\nend\nif <(Level) = [8]> then\n    forever\n        hide\n    end\nelse\nend\n\nwhen I receive [dark v]\nhide\n\nwhen I receive [nonono v]\nshow\n\nwhen I receive [start v]\nforever\n    wait (2) seconds\n    create clone of (_myself_ v)\nend\n\n@tn\n\nwhen flag clicked\nforever\n    show\n    go to [front v] layer\n    go [forward v] (999999) layers\n    set [ghost v] effect to (100)\nend\n\nwhen I receive [menu v]\n\nhide\n\n@Trampoline\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\n\nwhen flag clicked\n\nwhen I receive [start v]\nhide\nforever\n    if <touching (player v)?> then\n        switch costume to (close flag2 v)\n    else\n        switch costume to (close flag v)\n    end\nend\n\nwhen I receive [start v]\nforever\n    if <(Level) = [1]> then\n        hide\n    else\n        if <(Level) = [2]> then\n            hide\n        else\n            if <(Level) = [3]> then\n                hide\n            else\n                if <(Level) = [8]> then\n                    go to x: (-180) y: (-112)\n                    show\n                else\n                    if <(Level) = [9]> then\n                        hide\n                    else\n                        if <(Level) = [10]> then\n                            hide\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\ngo to x: (10) y: (-110)\nshow\n\n@Player\n\ndefine Spin off screen\nset [dead? v] to [1]\nchange [player death v] by (1)\nset [y v v] to [10]\nrepeat until <(y position) < [-179]>\n    switch costume to (oof v)\n    go to [front v] layer\n    turn right (10) degrees\n    change y by (Y v)\n    change [y v v] by (-1)\nend\nhide\ngo to x: (-200) y: (-100)\nbroadcast (die v)\nreset\n\ndefine reset\nswitch costume to (center v)\nclear graphic effects\nset [dead? v] to [0]\nset [x v v] to [0]\nset [y v v] to [0]\ngo to x: (-200) y: (-10)\npoint in direction (90)\nset size to (120) %\nshow\n\nwhen I receive [start v]\nset [change? v] to [1]\nreset\nset [change? v] to [0]\n\nwhen [timer v] > (0.01)\n\nforever\n    go to [back v] layer\nend\n\nwhen I receive [start v]\nforever\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        switch costume to (over right v)\n    end\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        switch costume to (over left v)\n    end\nend\n\nwhen I receive [start v]\nforever\n    if <<not <key (up arrow v) pressed?>> and <<not <key (right arrow v) pressed?>> and <not >>> then\n        switch costume to (center v)\n    end\nend\n\nwhen I receive [start v]\ngo to [front v] layer\nswitch costume to (center v)\n\nwhen I receive [start v]\nset [level v] to [1]\nset [dead? v] to [0]\nset size to (120) %\nreset\nforever\n    if <<<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> and <(dead?) = [0]>> then\n        change [x v v] by (.9)\n    end\n    if <<<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(mouse x) < (x position)>>> and <(dead?) = [0]>> then\n        change [x v v] by (-.9)\n    end\n    set [x v v] to ((X v) * (0.9))\n    change x by (X v)\n    if <<touching (platform v)?> or <touching (moving platform v)?>> then\n        change y by (1)\n        if <<touching (platform v)?> or <touching (moving platform v)?>> then\n            change y by (1)\n            if <<touching (platform v)?> or <touching (moving platform v)?>> then\n                change y by (1)\n                if <<touching (platform v)?> or <touching (moving platform v)?>> then\n                    change y by <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<<mouse down?> and <((mouse y) - (y position)) > [50]>> and <touching (platform v)?>>>\n                    if <<touching (platform v)?> or <touching (moving platform v)?>> then\n                        change y by (1)\n                        if <<touching (platform v)?> or <touching (moving platform v)?>> then\n                            change x by ((X v) * (-1))\n                            change y by (-5)\n                            if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > ((y position) + (20))>>>> then\n                                if <(X v) > [0]> then\n                                    set [x v v] to [-5]\n                                else\n                                    set [x v v] to [5]\n                                end\n                                set [y v v] to [13]\n                            else\n                                set [x v v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change [y v v] by (-0.8)\n    change y by (Y v)\n    if <<touching (platform v)?> or <touching (moving platform v)?>> then\n        change y by ((Y v) * (-1))\n        set [y v v] to [0]\n    end\n    change y by (-1)\n    if <<touching (platform v)?> or <touching (moving platform v)?>> then\n        if <<key (up arrow v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > ((y position) + (20))>>>> then\n            set [y v v] to [12]\n        end\n    end\n    change y by (1)\n    if <<<<touching (spikes v)?> or <touching (big boi crush v)?>> or <<touching (saw v)?> or <<touching (spikes 2 v)?> or <touching (lava v)?>>>> and <(dead?) = [0]>> then\n        Spin off screen\n    end\n    if <touching (trampoline v)?> then\n        set [y v v] to [16]\n    end\nend\n\nwhen I receive [start v]\nswitch costume to (center v)\nforever\n    set [direction v] to (direction)\nend\n\nwhen I receive [start v]\nset [change? v] to [0]\nforever\n    if < and <(dead?) = [0]>> then\n        go to [back v] layer\n        reset\n        broadcast (NEXT LEVEL v)\n        broadcast (@cheekyscuola's Transition v)\n        change [level v] by (1)\n    end\nend\n\nwhen I receive [start v]\nforever\n    if <(y position) = [-179]> then\n        switch costume to (oof v)\n        Spin off screen\n        hide\n        wait (1) seconds\n        go to x: (-200) y: (0)\n        show\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nswitch costume to (effect v)\nrepeat (10)\n    change [ghost v] effect by (10)\n    change size by (-5)\nend\ndelete this clone\n\nwhen flag clicked\nset [timer v] to [.1]\nforever\n    set [timer v] to ((timer) + (.1))\nend\n\nwhen [timer v] > (timer)\nhide\n\nwhen I receive [next level v]\nreset\n\nbroadcast (cutscene boss v)\n\ngo to x: (-215) y: (-111)\n\n@moving platform\n\nwhen flag clicked\nhide\ngo to x: (35) y: (25)\nforever\n    if <(Level) = [8]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    repeat (35)\n        change x by (5)\n    end\n    repeat (35)\n        change x by (-5)\n    end\nend\n\nwait (.5) seconds\n\n@Saw\n\nwhen flag clicked\nset [direction saw v] to [15]\nforever\n    repeat until <(direction saw) = [-15]>\n        turn right (direction saw) degrees\n        change [direction saw v] by (-0.25)\n    end\n    repeat until <(direction saw) = [15]>\n        turn right (direction saw) degrees\n        change [direction saw v] by (0.25)\n    end\nend\n\nwhen flag clicked\nhide\nswitch costume to (close flag v)\nforever\n    go to [back v] layer\n    if <(Level) = [10]> then\n        show\n        go to x: (30) y: (-51)\n    else\n        if <(Level) = [11]> then\n            show\n            go to x: (30) y: (-42)\n        else\n            if <(Level) = [11]> then\n                hide\n            else\n                if <(Level) = [12]> then\n                    hide\n                else\n                    if <(Level) = [13]> then\n                        show\n                        go to x: (30) y: (-42)\n                    else\n                        if <(Level) = [14]> then\n                            show\n                            go to x: (80) y: (-105)\n                        else\n                            if <(Level) = [15]> then\n                                hide\n                            else\n                                if <(Level) = [17]> then\n                                    show\n                                    go to x: (100) y: (-25)\n                                    switch costume to (dark saw v)\n                                else\n                                    if <(Level) = [18]> then\n                                        hide\n                                    else\n                                        if <(Level) = [19]> then\n                                            hide\n                                        else\n                                            if <(Level) = [20]> then\n                                                hide\n                                            end\n                                        end\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\n@transition\n\nwhen flag clicked\nhide\n\nwhen I receive [next level v]\nset [trans on or off v] to [On]\ngo [forward v] (10000) layers\ngo to [front v] layer\nset x to (500)\nshow\nrepeat (6)\n    change x by (-80)\nend\nchange x by (-15)\nwait (0.6) seconds\nset [trans on or off v] to [Off]\nrepeat (5)\n    change x by (-80)\nend\nhide\n\n@Character\n\nwhen flag clicked\nset [clone? v] to [0]\nhide\ndelete (all) of [items: v]\ndelete (all) of [errands: v]\n\nwhen I receive [start v]\ngo [backward v] (2) layers\nswitch costume to (scientist v)\nclear graphic effects\npoint in direction (-90)\nshow\nset [move? v] to [no]\ngo to x: (150) y: (-100)\nwait (0.4) seconds\nglide (1) secs to x: (-70) y: (-100)\nsay [Welcome to the Forest!] for (3) seconds\nsay [We have recently discovered portals to different worlds!] for (4) seconds\nsay [You must explore these worlds so we can gather more knowledge on each area.] for (4) seconds\nsay [My friend will accompany you on the other side of this portal.] for (4) seconds\nsay [Use \[<\], \[>\], \[^\] to move and \[SPACE/TAP\] to talk or interact.] for (4) seconds\nsay [Best of luck to you!] for (2) seconds\npoint in direction (90)\nglide (1) secs to x: (150) y: (-100)\nset [move? v] to [yes]\nforever\n    hide\n    if <(Level) = [2]> then\n        switch costume to (guard v)\n        go [backward v] (2) layers\n        point in direction (-90)\n        go to x: (10) y: (-86)\n        show\n        if <touching (player v)?> then\n            if <<key (space v) pressed?> or <mouse down?>> then\n                set [move? v] to [no]\n                say [  Hello 𝘌𝘹𝘱𝘭𝘰𝘳𝘦𝘳...] for (2) seconds\n                say [Look lets get something straight. Don't trust anybody you find in these portals. ] for (5) seconds\n                say [Okay? Good. I will guide you and give you suggestions, as you explore. Go to the portal...] for (6) seconds\n                wait (0.7) seconds\n                set [move? v] to [yes]\n            end\n        end\n    end\n    if <(Level) = [6]> then\n        switch costume to (nice villager v)\n        go [backward v] (2) layers\n        point in direction (-90)\n        go to x: (20) y: (-87)\n        show\n        if <touching (player v)?> then\n            if <<key (space v) pressed?> or <mouse down?>> then\n                set [move? v] to [no]\n                say [  Hello! I haven't seen you around here before...  ] for (3) seconds\n                say [Oh you want to know about the portals? Well our boss named  Chr_Avila_07663 said to not go into them.] for (6) seconds\n                say [Well I can tell you this, this portal leads to another portal but with a different color...] for (5) seconds\n                say [Go to the portal! I hope Chr_Avila_07663. didn't hear me...] for (5) seconds\n                wait (0.5) seconds\n                set [move? v] to [yes]\n            end\n        end\n    end\n    if <(Level) = [12]> then\n        switch costume to (0014049 v)\n        go [backward v] (2) layers\n        point in direction (-90)\n        go to x: (20) y: (-87)\n        show\n        if <touching (player v)?> then\n            if <<key (space v) pressed?> or <mouse down?>> then\n                set [move? v] to [no]\n                say [Oh hello...] for (3) seconds\n                say [I was just talking to this player, and he says I shouldn't help you. But I will!] for (5) seconds\n                say [ I watched the Scratch News today, and they announced that every platformer has a secret portal that leads to another one...] for (7) seconds\n                say [There is a different portal up ahead...] for (4) seconds\n                wait (0.5) seconds\n                set [move? v] to [yes]\n            end\n        end\n    end\n    if <(Level) = [18]> then\n        switch costume to (yotacopaco1 v)\n        go [backward v] (2) layers\n        point in direction (-90)\n        go to x: (20) y: (-22)\n        show\n        if <touching (player v)?> then\n            if <<key (space v) pressed?> or <mouse down?>> then\n                set [move? v] to [no]\n                say [I have been waiting for you...] for (3) seconds\n                say [In the next entry you will find a different portal...] for (5.5) seconds\n                say [Go in it and find the diamond...] for (5) seconds\n                say [If you do not bring it to me, I will destroy all of scratch's platformers!] for (4) seconds\n                say [Now Go!] for (4) seconds\n                wait (0.5) seconds\n                set [move? v] to [yes]\n            end\n        end\n    end\nend\n\nwhen flag clicked\n\n@Lava\n\nwhen I start as a clone\nshow\ngo to x: (0) y: (0)\nset [ghost v] effect to (60)\ngo to [back v] layer\nrepeat until <(homecoming) = [1]>\n    set [time v] to [2]\n    switch costume to (Level)\n    repeat (10)\n        change y by (time)\n        switch costume to (Level)\n    end\n    repeat (10)\n        change y by ((time) * (-1))\n        switch costume to (Level)\n    end\nend\nhide\n\nwhen flag clicked\nrepeat (3)\n    create clone of (_myself_ v)\n    wait (0.5) seconds\nend\n\nwhen I receive [animate v]\nhide\nstop [other scripts in sprite v]\n\n@Dark\n\nwhen flag clicked\nhide\n\nwhen I receive [win2 v]\n\nwhen I receive [next v]\ngo to x: (-210) y: (y position)\ngo to (player v)\n\nwhen I receive [back v]\ngo to (player v)\n\nwhen flag clicked\nforever\n\nwhen I receive [start v]\n\ngo to x: (210) y: (y position)\n\n\n\nif <not <([costume # v] of [land v]) = (Level:)>> then\n\nwhen flag clicked\n\nbroadcast (next v)\nchange [level: v] by (1)\n\nset [brightness v] effect to (0)\n\nwait until <([costume # v] of [land v]) = (Level:)>\ngo to x: (-210) y: (y position)\nset [brightness v] effect to (0)\n\nwhen flag clicked\n\nswitch costume to (3 v)\ngo to [front v] layer\ngo to x: (0) y: (0)\n\nswitch costume to (3 v)\ngo to [front v] layer\ngo to x: (0) y: (0)\n\nforever\n    if <(x position) > [240]> then\nend\n\nforever\n    if <(x position) < [-241]> then\nend\n\ngo to (player v)\n\nwhen I receive [dark v]\nshow\nforever\n    go to (player v)\n    switch costume to (2 v)\n    if <<(costume [number v]) = [1]> and <(size) < [200]>> then\n        set size to (200) %\n        switch costume to (4 v)\n    end\nend\n\nstop [other scripts in sprite v]\nforever\n\nswitch costume to (3 v)\nset [ghost v] effect to (99)\ngo to x: (0) y: (0)\n\nwhen I receive [light v]\nhide\n\n@menutitle\n\nwhen flag clicked\nhide\n\nwhen I receive [menu v]\nshow\ngo to [front v] layer\n\nchange size by (10)\n\nwhen I receive [start v]\nhide\n\n@play button\n\nwhen flag clicked\nhide\nforever\n    if <touching (mouse-pointer v)?> then\n        set size to (110) %\n    else\n        set size to (100) %\n    end\nend\n\nset y to ((([sin v] of ((timer) * (500)) ) * (5)) + (-38))\n\nwhen I receive [menu v]\ngo to x: (-12) y: (-40)\nshow\n\nwhen this sprite clicked\nhide\nbroadcast (start v)\n\n@Menu\n\nwhen flag clicked\nhide\nset size to (100) %\n\nwhen I receive [menu v]\ngo to [back v] layer\nshow\n\nwhen I receive [start v]\nhide\n\n@intro2\n\nwhen flag clicked\nset volume to (100) %\nshow\nset [my variable v] to [0]\nclear graphic effects\nset size to (100) %\ngo to x: (0) y: (0)\npoint in direction (90)\nswitch costume to (background v)\nstamp\nswitch costume to (pmc v)\ngo to x: (-500) y: (0)\nrepeat (35)\n    change x by ((x position) / (-5))\nend\nstart sound [DJVI - Supercharge v]\nstamp\nswitch costume to (-pandamc- v)\ngo to x: (500) y: (0)\nrepeat (35)\n    change x by ((x position) / (-5))\nend\nstamp\nbroadcast (\(Intro\) reset v)\nbroadcast (\(Intro\) bubbles v)\nrepeat (150)\n    change [my variable v] by (10)\n    point in direction ((90) + (([sin v] of (my variable) ) * (10)))\nend\npoint in direction (90)\nerase all\nswitch costume to (full2 v)\nrepeat (20)\n    change volume by (-5)\n    change [ghost v] effect by (5)\nend\nstop all sounds\nhide\nbroadcast (MENU v)\n\nwhen I receive [\(intro\) reset v]\ngo to x: (0) y: (0)\nerase all\nswitch costume to (background v)\nstamp\nswitch costume to (full v)\n\nwhen I start as a clone\ngo to [back v] layer\nswitch costume to (bubblesssss v)\nset [ghost v] effect to (pick random (20) to (50))\nset size to (pick random (40) to (80)) %\npoint in direction (pick random (-60) to (-90))\ngo to [back v] layer\nset [intro v] to [20]\nset [ghost v] effect to (pick random (40) to (82))\ngo to x: (238) y: (pick random (18) to (-182))\nshow\nforever\n    repeat until <<(x position) = [-246]> or <(x position) < [-230]>>\n        move (Intro) steps\n    end\n    delete this clone\nend\n\nwhen I receive [\(intro\) bubbles v]\nrepeat (100)\n    create clone of (_myself_ v)\nend\n\n