Believe | Christmas Platformer


@Stage\n\nwhen flag clicked\nswitch backdrop to (backdrop2 v)\n\nwhen I receive [begin v]\nswitch backdrop to (backdrop1 v)\nforever\n    wait (pick random (3) to (33)) seconds\n    set [brightness v] effect to (65)\n    wait (0.001) seconds\n    set [brightness v] effect to (0)\n    wait (0.03) seconds\n    set [brightness v] effect to (52)\n    wait (0.05) seconds\n    set [brightness v] effect to (0)\n    wait (0.025) seconds\n    set [brightness v] effect to (78)\n    wait (0.001) seconds\n    set [brightness v] effect to (0)\nend\n\nwhen flag clicked\nforever\n    play sound [Despair and Triumph.mp3 v] until done\n    play sound [Disquiet.mp3 v] until done\nend\n\nwhen I receive [fin v]\nstop all sounds\nstop [other scripts in stage v]\nforever\n    play sound [Porch Swing Days - slower.mp3 v] until done\nend\n\n@Player\n\nwhen flag clicked\ngo to x: (-180) y: (10)\nhide\npoint in direction (90)\nset rotation style [left-right v]\nforever\n    if <not <key (up arrow v) pressed?>> then\n        if <<key (right arrow v) pressed?> or <key (left arrow v) pressed?>> then\n            switch costume to (costume1 v)\n            wait (0.05) seconds\n            switch costume to (costume2 v)\n            wait (0.05) seconds\n            switch costume to (costume3 v)\n            wait (0.05) seconds\n            switch costume to (standing2 v)\n            wait (0.05) seconds\n            switch costume to (costume4 v)\n            wait (0.05) seconds\n            switch costume to (costume5 v)\n            wait (0.05) seconds\n            switch costume to (costume6 v)\n            wait (0.05) seconds\n            switch costume to (standing3 v)\n            wait (0.05) seconds\n        else\n            switch costume to (standing v)\n        end\n    end\n    if <key (up arrow v) pressed?> then\n        switch costume to (standing4 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <key (right arrow v) pressed?> then\n        point in direction (90)\n    end\n    if <key (left arrow v) pressed?> then\n        point in direction (-90)\n    end\nend\n\nwhen I receive [begin v]\nshow\nset [xv v] to [0]\nset [yv v] to [0]\nforever\n    set [costume v] to (costume [number v])\n    switch costume to (hitbox v)\n    if <key (right arrow v) pressed?> then\n        change [xv v] by (0.8)\n    end\n    if <key (left arrow v) pressed?> then\n        change [xv v] by (-0.8)\n    end\n    set [xv v] to ((Xv) * (0.9))\n    change x by (Xv)\n    if <touching color (#112743)?> then\n        change y by (1)\n        if <touching color (#112743)?> then\n            change y by (1)\n            if <touching color (#112743)?> then\n                change y by (1)\n                if <touching color (#112743)?> then\n                    change y by (1)\n                    if <touching color (#112743)?> then\n                        change y by (1)\n                        if <touching color (#112743)?> then\n                            change x by ((Xv) * (-1))\n                            change y by (-5)\n                            if <key (up arrow v) pressed?> then\n                                if <(Xv) > [0]> then\n                                    set [xv v] to [-5]\n                                else\n                                    set [xv v] to [5]\n                                end\n                                set [yv v] to [10]\n                            else\n                                set [xv v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change [yv v] by (-1)\n    change y by (Yv)\n    if <touching color (#112743)?> then\n        change y by ((Yv) * (-1))\n        set [yv v] to [0]\n    end\n    change y by (-1)\n    if <touching color (#112743)?> then\n        if <key (up arrow v) pressed?> then\n            set [yv v] to [12]\n        end\n    end\n    change y by (1)\n    switch costume to (costume)\nend\n\nwhen I receive [begin v]\nforever\n    if <<(x position) = [240]> or <<(x position) > [240]> or <key (s v) pressed?>>> then\n        hide\n        broadcast (passed v)\n        set [xv v] to [0]\n        set [yv v] to [0]\n        go to x: (-180) y: (10)\n        point in direction (90)\n        show\n        wait (0.01) seconds\n    end\n    if <<touching color (#000000)?> or <key (r v) pressed?>> then\n        hide\n        go to x: (-180) y: (10)\n        point in direction (90)\n        set [xv v] to [0]\n        set [yv v] to [0]\n        show\n        wait (0.01) seconds\n    end\n    if <<touching color (#2b69a7)?> and <key (up arrow v) pressed?>> then\n        set [yv v] to [6]\n    end\nend\n\nwhen I receive [fin v]\nstop [other scripts in sprite v]\nswitch costume to (standing v)\nshow\ngo to x: (-180) y: (-90)\n\n@Intro\n\nwhen flag clicked\nshow\nswitch costume to (cover v)\nset [brightness v] effect to (-100)\n\nwhen I receive [glide v]\nrepeat (10)\n    change [brightness v] effect by (10)\nend\nwait (6) seconds\nrepeat (100)\n    change [brightness v] effect by (-1)\nend\nswitch costume to (begin v)\nclear graphic effects\nwait until <key (space v) pressed?>\nbroadcast (begin v)\nhide\n\n@Intro 2\n\nwhen flag clicked\nset size to (100) %\nshow\ngo to x: (0) y: (0)\nset [brightness v] effect to (-100)\nswitch costume to (costume3 v)\nbroadcast (dedicated v)\nrepeat (10)\n    change [brightness v] effect by (10)\nend\nwait (2) seconds\nrepeat (10)\n    change [brightness v] effect by (-10)\nend\nset size to (100) %\nwait (0.5) seconds\nswitch costume to (costume2 v)\nbroadcast (presents v)\nrepeat (10)\n    change [brightness v] effect by (10)\nend\nwait (2) seconds\nrepeat (10)\n    change [brightness v] effect by (-10)\nend\nset size to (100) %\nhide\nbroadcast (glide v)\nswitch costume to (costume1 v)\ngo to x: (0) y: (-120)\nshow\nrepeat (10)\n    change [brightness v] effect by (10)\nend\nglide (6) secs to x: (0) y: (0)\nrepeat (100)\n    change [brightness v] effect by (-1)\nend\nhide\n\nwhen I receive [dedicated v]\nrepeat (10)\n    change size by (2)\nend\n\nwhen I receive [presents v]\nrepeat (10)\n    change size by (2)\nend\n\nrepeat (10)\n    change [brightness v] effect by (-10)\nend\nwait (0.5) seconds\nset size to (100) %\n\n@Ground\n\nwhen flag clicked\nhide\n\nwhen I receive [begin v]\nshow\nswitch costume to (1 v)\n\nwhen I receive [passed v]\nnext costume\nif <(costume [number v]) = [12]> then\n    broadcast (fin v)\nend\n\n@Rain\n\nwhen flag clicked\nhide\n\nwhen I receive [begin v]\nforever\n    create clone of (_myself_ v)\n    set x to (pick random (240) to (-240))\n    set size to (pick random (50) to (100)) %\nend\n\ndefine simplifier\nchange y by (() - ((size) / (3)))\nchange x by ((size) / (10))\nset [ghost v] effect to (75)\n\nwhen I start as a clone\nset y to (190)\nshow\nif <(size) > [75]> then\n    go to [front v] layer\nend\nshow\nrepeat (10)\n    simplifier\nend\nrepeat until <touching (_edge_ v)?>\n    simplifier\nend\ndelete this clone\n\nrepeat (10)\n    simplifier\nend\n\nwhen I receive [fin v]\nstop [other scripts in sprite v]\n\n@Final\n\nwhen flag clicked\nhide\nset [brightness v] effect to (100)\n\nwhen I receive [fin v]\nwait (3) seconds\nshow\nrepeat (10)\n    change [brightness v] effect by (-10)\n    go to [front v] layer\nend\n\n@Thumbnail\n\nwhen flag clicked\ngo to x: (0) y: (0)\nforever\n    set [ghost v] effect to (100)\n    go to [front v] layer\n    show\nend\n\nshow\ngo to [front v] layer\n\n