❄Frosty❄ - A Mobile Scrolling Platformer                             #Games #All

Instructions: ------------------->     Frosty\nuse WASD, arrow keys, or tap and drag to move. Don't fall into the void or you lose. Parkour to the right of the screen, there will be a check point in the middle of the level. Finally if you beat the game you unlock hard mode. \n                           *Click flag like 2 times*

@Stage\n\nwhen I receive [flag v]\nforever\n    set volume to (200) %\n    play sound [minecraft sinthwave v] until done\n    play sound [Minecraft pigstep v] until done\nend\n\nwhen I receive [flag v]\nforever\n    play sound [SNOW sound v] until done\nend\n\n@Player\n\nif <(X) > [0]> then\n    set [x v] to [5]\nelse\n    set [x v] to [-5]\nend\nset [y v] to [10]\n\nchange [playerx v] by \n\nchange [playerx v] by \n\nwhen I receive [flag v]\nset rotation style [left-right v]\nclear graphic effects\nset [playerx v] to (Checkpoint)\nset [x v] to [0]\npoint in direction (90)\nset size to (100) %\nshow\ngo to x: (0) y: (180)\nset [y v] to [0]\nset y to (180)\nforever\n    if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n        change [x v] by (.9)\n        point in direction (90)\n    end\n    if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(mouse x) < (x position)>>> then\n        change [x v] by (-.9)\n        point in direction (-90)\n    end\n    set [x v] to ((X) * (0.9))\n    change [playerx v] by (X)\n    if <touching (ground v)?> then\n        change y by (1)\n        if <touching (ground v)?> then\n            change y by (1)\n            if <touching (ground v)?> then\n                change y by (1)\n                if <touching (ground v)?> then\n                    change y by (1)\n                    if <touching (ground v)?> then\n                        change y by (1)\n                        if <touching (ground v)?> then\n                            change y by (-4)\n                            change [playerx v] by ((X) * (-2))\n                            if <<key (up arrow v) pressed?> or <key (w v) pressed?>> then\n                                if <(X) < [0]> then\n                                    set [x v] to [5]\n                                else\n                                    set [x v] to [-5]\n                                end\n                                set [y v] to [10]\n                            else\n                                set [x v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change [y v] by (-1)\n    change y by (Y)\n    set [player y v] to (Y)\n    if <touching (ground v)?> then\n        change y by ((Y) * (-1))\n        set [y v] to [0]\n    end\n    change y by (-1)\n    if <touching (ground v)?> then\n        if <<<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>> or <key (w v) pressed?>> then\n            set [y v] to [14]\n        end\n    end\n    if <<(y position) < [-179]> or <touching (knifes >:\) v)?>> then\n        broadcast (die v)\n        repeat (10)\n            change [ghost v] effect by (10)\n        end\n        repeat until <(round (PlayerX)) = (Checkpoint)>\n            change [playerx v] by (((Checkpoint) - (PlayerX)) / (7))\n        end\n        set [playerx v] to (Checkpoint)\n        point in direction (90)\n        set size to (100) %\n        show\n        go to x: (0) y: (180)\n        set [x v] to [0]\n        set [y v] to [0]\n        set y to (180)\n        repeat (10)\n            change [ghost v] effect by (-10)\n        end\n    end\n    if <[7300] < (PlayerX)> then\n        broadcast (end v)\n    end\nend\n\nwhen flag clicked\nset [first? v] to [0]\nset [checkpoint v] to [0]\nhide\n\nwhen I receive [end v]\nstop [other scripts in sprite v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\ndelete this clone\n\nwhen I receive [flag v]\nforever\n    set [direction v] to (direction)\nend\n\nwhen I receive [hide v]\nstop [other scripts in sprite v]\nhide\n\n@Ground\n\nwhen I receive [flag v]\nclear graphic effects\nswitch costume to (costume2 v)\nrepeat (16)\n    next costume\n    create clone of (_myself_ v)\nend\n\nwhen I receive [end v]\nstop [other scripts in sprite v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\ndelete this clone\n\nwhen flag clicked\nhide\n\ndefine set x to (number1) (number2)\nforever\n    if <<(PlayerX) > ((number1) - (960))> or <((number1) + (960)) > (PlayerX)>> then\n        switch costume to (costume2 v)\n        go to x: ((0) - ((PlayerX) + ((0) - (number1)))) y: (0)\n        switch costume to (number2)\n        show\n    else\n        hide\n    end\nend\n\nwhen I start as a clone\nshow\nset x to (((costume [number v]) - (2)) * (480)) (costume [number v])\n\n@Checkpoint\n\nwhen I start as a clone\nif <not <(First?) = [0]>> then\n    set [ghost v] effect to (100)\n    hide\nend\nforever\n    set y to (by)\n    if <touching (player v)?> then\n        change [first? v] by (1)\n        set [checkpoint v] to (bx)\n        repeat (10)\n            change [ghost v] effect by (10)\n            change y by (-1)\n        end\n        delete this clone\n    end\nend\n\nwhen I receive [flag v]\nswitch costume to (costume1 v)\nset [checkpointx v] to [3660]\nset [checkpointy v] to [30]\ncreate clone of (_myself_ v)\n\nwhen I receive [end v]\nset [checkpoint v] to [0]\nset [first? v] to [0]\nhide\ndelete this clone\n\nwhen flag clicked\nset [ghost v] effect to (0)\nhide\n\ndefine set x to (number1) (number2) set y to (number3)\ngo to [front v] layer\nforever\n    turn left (1) degrees\n    if <<(PlayerX) > ((number1) - (960))> or <((number1) + (960)) > (PlayerX)>> then\n        switch costume to (costume2 v)\n        set x to ((0) - ((PlayerX) + ((0) - (number1))))\n        switch costume to (number2)\n        show\n    else\n        hide\n    end\nend\n\nwhen I start as a clone\nset [bx v] to (CheckpointX)\nset [by v] to (CheckpointY)\nshow\nset x to (bx) (costume [number v]) set y to (by)\n\n@Tumbnaill\n\nwhen flag clicked\ngo to [back v] layer\nforever\n    reset timer\n    hide\nend\n\nwhen [timer v] > (0.002)\ngo to [front v] layer\nbroadcast (hide v)\ngo to x: (0) y: (200)\nset [brightness v] effect to (45)\nshow\nrepeat (45)\n    change y by (((0) - (y position)) / (7))\n    change [brightness v] effect by (-1)\nend\n\n@introduction \n\nwhen flag clicked\nwait (2.9) seconds\nforever\n    repeat (10)\n        change size by (3)\n    end\n    repeat (3)\n        change size by (-3)\n    end\nend\n\nwhen I receive [end v]\nbroadcast (love and fav  v)\ngo to x: (0) y: (100)\nswitch costume to (costume40 v)\npoint in direction (90)\nset size to (4) %\ngo to [front v] layer\nshow\nrepeat (25)\n    change size by (4)\n    turn right (14.4) degrees\nend\nset size to (100) %\n\nwhen I receive [menu v]\nswitch costume to (costume2 v)\ngo to [front v] layer\nhide\n\ndefine intro\ngo to [front v] layer\ngo to [front v] layer\nshow\nstart sound [intro song v]\nrepeat until <(costume [number v]) = [16]>\n    next costume\nend\nswitch costume to (costume17 v)\nrepeat until <(costume [number v]) = [32]>\n    wait (.0003) seconds\n    next costume\nend\nswitch costume to (costume33 v)\nrepeat until <(costume [number v]) = [38]>\n    wait (.0003) seconds\n    next costume\nend\nwait (6) seconds\nbroadcast (flag v)\nhide\nstop [other scripts in sprite v]\n\nwhen flag clicked\nswitch costume to (costume2 v)\ngo to x: (0) y: (0)\npoint in direction (90)\nset size to (100) %\nintro\n\nwhen flag clicked\nforever\n    if <key (space v) pressed?> then\n        stop all sounds\n        stop [other scripts in sprite v]\n        broadcast (flag v)\n        hide\n        stop [this script v]\n    end\nend\n\nwhen I receive [hide v]\nhide\n\nwhen I receive [kill check point v]\nhide\n\nwhen I receive [flag v]\nhide\n\n@loves, favs\n\nwhen I receive [end v]\nhide\nforever\n    wait (.3) seconds\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\ngo to [front v] layer\nshow\nswitch costume to (pick random (1) to (2))\nset size to (0) %\ngo to (random position v)\npoint in direction (pick random (-180) to (180))\nset [ghost v] effect to (50)\nrepeat (20)\n    change size by (2)\nend\nwait (2) seconds\nrepeat (15)\n    change size by (-2)\nend\ndelete this clone\n\nbroadcast (THE END :\) v)\n\nwhen I receive [love and fav  v]\nhide\nforever\n    wait (.3) seconds\n    create clone of (_myself_ v)\nend\n\nwhen I receive [flag v]\nstop [other scripts in sprite v]\ndelete this clone\n\n@Scrolling BG\n\nwhen I receive [flag v]\nclear graphic effects\nswitch costume to (costume2 v)\ngo to [back v] layer\nrepeat (16)\n    next costume\n    create clone of (_myself_ v)\nend\n\nwhen I receive [end v]\nstop [other scripts in sprite v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\ndelete this clone\n\nwhen flag clicked\nhide\n\ndefine set x to (number1) (number2)\nforever\n    if <<(PlayerX) > ((number1) - (960))> or <((number1) + (960)) > (PlayerX)>> then\n        switch costume to (costume2 v)\n        go to x: ((0) - ((PlayerX) + ((0) - (number1)))) y: (0)\n        switch costume to (number2)\n        show\n    else\n        hide\n    end\nend\n\nwhen I start as a clone\nshow\nset x to (((costume [number v]) - (2)) * (480)) (costume [number v])\n\n@snow\n\nwhen flag clicked\nset [snow speed v] to [15]\nset [amount of snow v] to [3]\nset [wind v] to [-1]\n\ndefine Rainspeed (string1)\nchange y by (join [-] (string1))\n\nwhen I start as a clone\nif <(Wind) = [-1]> then\n    repeat until <touching (barrier v)?>\n        move (-3) steps\n    end\nend\n\nwhen flag clicked\nset size to (150) %\nset [wind v] to [0]\nhide\nforever\n    if <(Amount Of snow) = [3]> then\n        create clone of (_myself_ v)\n    end\n    if <(Amount Of snow) = [4]> then\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n    end\n    if <(Amount Of snow) = [5]> then\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n    end\n    if <(Amount Of snow) = [6]> then\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n    end\n    if <(Amount Of snow) = [7]> then\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n    end\n    if <(Amount Of snow) = [8]> then\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n        create clone of (_myself_ v)\n    end\n    delete this clone\nend\n\nwhen flag clicked\nforever\n    if <(Wind) = [-1]> then\n        switch costume to (costume1 v)\n    end\n    if <(Wind) = [0]> then\n        switch costume to (costume3 v)\n    end\n    if <(Wind) = [1]> then\n        switch costume to (costume2 v)\n    end\nend\n\nwhen I start as a clone\nif <(Wind) = [1]> then\n    repeat until <touching (barrier v)?>\n        move (3) steps\n    end\nend\n\nwhen I start as a clone\nset y to (176)\nset x to (pick random (-240) to (240))\nrepeat until <touching (barrier v)?>\n    Rainspeed (snow Speed)\nend\ndelete this clone\n\nwhen I start as a clone\nforever\n    show\n    wait (0.1) seconds\nend\n\nwhen I receive [hide v]\nstop [other scripts in sprite v]\ndelete this clone\n\n@Barrier\n\nwhen flag clicked\nshow\ngo to x: (-2) y: (-5)\nset [ghost v] effect to (100)\n\nwhen I receive [hide v]\nhide\n\n@Effect\n\nwhen I start as a clone\nshow\ngo to [front v] layer\nset [ghost v] effect to (pick random (45) to (90))\nset size to (pick random (40) to (70)) %\ngo to x: (240) y: (pick random (180) to (-180))\nglide (pick random (1.0) to (3.0)) secs to x: (-240) y: (pick random (180) to (-180))\ndelete this clone\n\nwhen I receive [flag v]\nhide\nforever\n    create clone of (_myself_ v)\n    wait (0.2) seconds\nend\n\n@HARD\n\nwhen I receive [end v]\nswitch costume to (costume1 v)\ngo to x: (0) y: (200)\nset [brightness v] effect to (45)\nshow\nrepeat (45)\n    change y by (((0) - (y position)) / (7))\n    change [brightness v] effect by (-1)\nend\nwait (3) seconds\nbroadcast (flag v)\nbroadcast (timer v)\nset [hard mode? v] to [1]\nswitch costume to (costume2 v)\n\nwhen flag clicked\nhide\n\nbroadcast (end v)\n\nwhen I receive [flag v]\nif <(HARD MODE?) = [1]> then\n    switch costume to (costume2 v)\n    go to x: (0) y: (200)\n    set [brightness v] effect to (45)\n    show\n    repeat (45)\n        change y by (((0) - (y position)) / (7))\n        change [brightness v] effect by (-1)\n    end\n    wait (3) seconds\n    broadcast (timer v)\n    set [hard mode? v] to [1]\nend\n\nset [hard mode? v] to [0]\n\n@TIMER\n\nwhen I receive [hide v]\nhide\n\nwhen I receive [timer v]\nshow\nforever\n    go to [front v] layer\nend\n\nwhen I receive [end v]\nhide\n\nwhen I receive [timer v]\nforever\n    if <<(Time Left:) = [0]> or <[0] > (Time Left:)>> then\n        broadcast (hide v)\n        hide variable [time left: v]\n        repeat (45)\n            change y by (((0) - (y position)) / (7))\n        end\n        stop [all v]\n    end\nend\n\nwhen I receive [timer v]\nshow variable [time left: v]\nshow\nset [time left: v] to [50]\nforever\n    change [time left: v] by (-1)\n    wait (1) seconds\nend\n\nwhen I receive [end v]\nhide variable [time left: v]\nstop [other scripts in sprite v]\n\nwhen flag clicked\nhide variable [time left: v]\nhide\n\nwhen flag clicked\nset [time left: v] to [50]\nforever\n    set [time left:0 v] to (join [Time Left: ] (Time Left:))\nend\n\nwhen I receive [timer v]\nshow\n\n