Christmas a platformer || #game #games

Instructions: Hello guys ! Today i share a new project : Christmas  a platformer !\nMove with arrow kews or mobile controls and avoid spikes.\nGood luck !\n@CMlukian\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nComment « CMlukian is the best scratcher for make platformers »

@Stage\n\nwhen flag clicked\nswitch backdrop to (backdrop1 v)\nwait (11.47) seconds\nswitch backdrop to (cover v)\nplay sound [Disfigure - Blank.mp3 v] until done\n\n@ \n\ndefine Smooth Glide x: (x) y: (y) speed: (speed)\nrepeat until <<(round (x position)) = (round (x))> and <(round (y position)) = (round (y))>>\n    change x by (((round (x)) - (round (x position))) / (speed))\n    change y by (((round (y)) - (round (y position))) / (speed))\nend\ngo to x: (x) y: (y)\n\ndefine Frame Tween Size: (s) speed: (spd)\nchange size by (((round (s)) - (round (size))) / (spd))\n\ndefine Bounce, Size: (s) Speed: (spd)\nset size to (1000) %\nrepeat (30)\n    set [bounce v] to (((Bounce) * (0.7)) + (((s) - (size)) / (spd)))\n    change size by (Bounce)\nend\n\ndefine Smooth Size Change, Size: (s) Speed: (spd)\nif <(s) > (size)> then\n    repeat until <(size) > ((s) - (.1))>\n        Frame Tween Size: (s) speed: (spd)\n    end\nend\nif <(size) > (s)> then\n    Frame Tween Size: (s) speed: (spd)\nend\nset size to (s) %\n\nwhen flag clicked\nset [\[intro\] playing v] to [false]\nwait (.2) seconds\nrepeat until <(\[INTRO\] Playing) = [false]>\nerase all\npen up\nstop all sounds\nclear sound effects\nset volume to (100) %\nstart sound [Robin Hustin x TobiMorrow - Light It Up \(feat v]\nset size to (100) %\ngo to [front v] layer\nshow\nswitch costume to (blank v)\nswitch backdrop to (  v)\nclear graphic effects\ngo to x: (0) y: (0)\npoint in direction (90)\nset [i v] to [0]\nset [// v] to [-180]\nset [ypos v] to [-146]\nset [counter v] to [0]\nset [bounce v] to [0]\nset [bar id v] to [0]\nset [slide id v] to [0]\nset [clone id v] to [0]\ncreate clone of (_myself_ v)\nwait (1) seconds\nchange [clone id v] by (1)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nif <(Clone ID) = [0]> then\n    switch costume to (slide v)\n    set size to (5) %\n    go to x: (//) y: (0)\n    set [ghost v] effect to (100)\n    repeat until <(size) > [50]>\n        Frame Tween Size: [100] speed: [4]\n        change [ghost v] effect by (-7)\n    end\n    if <(Slide ID) < [3]> then\n        change [slide id v] by (1)\n        change [// v] by (120)\n        create clone of (_myself_ v)\n    end\n    repeat until <(size) > [99]>\n        Frame Tween Size: [100] speed: [4]\n        change [ghost v] effect by (-7)\n    end\n    repeat until <(size) < [16]>\n        Frame Tween Size: [15] speed: [4]\n        change [ghost v] effect by (7)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [1]> then\n    switch costume to (bar v)\n    set [ghost v] effect to (100)\n    set size to (0) %\n    go to x: (0) y: (YPos)\n    repeat (3)\n        change [ghost v] effect by (-5)\n        Frame Tween Size: [102] speed: [5]\n    end\n    if <(Bar ID) < [5]> then\n        change [bar id v] by (1)\n        change [ypos v] by (60)\n        create clone of (_myself_ v)\n    end\n    repeat until <(size) > [101]>\n        change [ghost v] effect by (-5)\n        Frame Tween Size: [102] speed: [5]\n    end\n    repeat until <(size) < [20]>\n        change [ghost v] effect by (5)\n        Frame Tween Size: [19] speed: [5]\n    end\n    stamp\n    delete this clone\nend\n\nwait (.2) seconds\n\nwhen flag clicked\nwait (.2) seconds\nrepeat until <(\[INTRO\] Playing) = [false]>\nwait (3.03) seconds\nchange [clone id v] by (1)\ncreate clone of (_myself_ v)\nwait (.1) seconds\nchange [clone id v] by (1)\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nif <(Clone ID) = [2]> then\n    set size to (40) %\n    switch costume to (logo v)\n    go to [front v] layer\n    Bounce, Size: [100] Speed: [5]\n    set [counter v] to [0]\n    reset timer\n    set [clone id v] to [FlashBang]\n    create clone of (_myself_ v)\n    repeat until <(timer) > [2]>\n        change [counter v] by (3)\n        point in direction ((([tan v] of (Counter) ) / (.1)) + (90))\n    end\n    set [clone id v] to [4]\n    create clone of (_myself_ v)\n    Smooth Glide x: [-50] y: [-] speed: [5]\n    stamp\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [3]> then\n    switch costume to (screen v)\n    go to x: (0) y: (500)\n    Smooth Glide x: [-] y: [-] speed: [5]\n    stamp\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [FlashBang]> then\n    switch costume to (flashbang v)\n    set size to (50) %\n    Smooth Size Change, Size: [130] Speed: [5]\n    repeat until <(size) > [404]>\n        switch costume to (blank v)\n        Frame Tween Size: [405] speed: [5]\n        switch costume to (flashbang v)\n    end\n    stamp\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [4]> then\n    switch costume to (username v)\n    go to [back v] layer\n    Smooth Glide x: [30] y: [-] speed: [5]\n    change [clone id v] by (1)\n    create clone of (_myself_ v)\n    stamp\n    delete this clone\nend\n\nwhen I start as a clone\nif <(Clone ID) = [5]> then\n    go to x: (0) y: (0)\n    switch costume to (flashbang2 v)\n    set size to (50) %\n    Smooth Size Change, Size: [130] Speed: [5]\n    repeat until <(size) > [404]>\n        switch costume to (blank v)\n        Frame Tween Size: [405] speed: [5]\n        switch costume to (flashbang2 v)\n    end\n    set [bar id v] to [0]\n    set [ypos v] to [-146]\n    change [clone id v] by (1)\n    create clone of (_myself_ v)\n    stamp\n    delete this clone\nend\n\nstamp\ndelete this clone\n\nwhen I start as a clone\nif <(Clone ID) = [6]> then\n    switch costume to (bar v)\n    set [brightness v] effect to (100)\n    set [ghost v] effect to (100)\n    set size to (0) %\n    go to x: (0) y: (YPos)\n    repeat (3)\n        change [ghost v] effect by (-5)\n        Frame Tween Size: [102] speed: [5]\n    end\n    if <(Bar ID) < [5]> then\n        change [bar id v] by (1)\n        change [ypos v] by (60)\n        create clone of (_myself_ v)\n    end\n    repeat until <(size) > [101]>\n        change [ghost v] effect by (-5)\n        Frame Tween Size: [102] speed: [5]\n    end\n    erase all\n    clear graphic effects\n    repeat until <(size) < [20]>\n        change [ghost v] effect by (5)\n        Frame Tween Size: [19] speed: [5]\n    end\n    delete this clone\nend\n\nwhen flag clicked\nwait (.2) seconds\nrepeat until <(\[INTRO\] Playing) = [false]>\nwait (11.47) seconds\nbroadcast (Intro done v)\n\n@Sprite3\n\nwhen flag clicked\nhide\nwait (11.47) seconds\nswitch costume to (costume2 v)\ngo to x: (-193) y: (161)\nset [ghost v] effect to (0)\nshow\nset [x v] to [0]\nset [y v] to [0]\nforever\n    if <<key (right arrow v) pressed?> or <<mouse down?> and <(x position) < (mouse x)>>> then\n        change [x v] by (1.5)\n    end\n    if <<key (left arrow v) pressed?> or <<mouse down?> and <(mouse x) < (x position)>>> then\n        change [x v] by (-1.5)\n    end\n    set [x v] to ((X) * (.9))\n    change x by (X)\n    if <touching (sprite1 v)?> then\n        change y by (1)\n        if <touching (sprite1 v)?> then\n            change y by (1)\n            if <touching (sprite1 v)?> then\n                change y by (1)\n                if <touching (sprite1 v)?> then\n                    change y by (1)\n                    if <touching (sprite1 v)?> then\n                        if <touching (sprite1 v)?> then\n                            change x by ((X) * (-1))\n                            change x by (-5)\n                            if <<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>> then\n                                if <(X) > [0]> then\n                                    set [x v] to [-7]\n                                else\n                                    set [x v] to [7]\n                                end\n                                set [y v] to [10]\n                            else\n                                set [x v] to [0]\n                            end\n                        end\n                        change y by (1)\n                    end\n                end\n            end\n        end\n    end\n    change [y v] by (-1)\n    change y by (Y)\n    if <touching (sprite1 v)?> then\n        change y by ((Y) * (-1))\n        set [y v] to [0]\n    end\n    change y by (-1)\n    if <touching (sprite1 v)?> then\n        if <<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>> then\n            change [y v] by (12)\n        end\n    end\n    change y by (1)\n    if <(x position) > [230]> then\n        set [y v] to [0]\n        set [x v] to [0]\n        go to x: (-193) y: (161)\n        broadcast (New costume v)\n    end\n    if <touching (sprite2 v)?> then\n        repeat (10)\n            change [ghost v] effect by (10)\n        end\n        set [ghost v] effect to (0)\n        set [x v] to [0]\n        set [y v] to [0]\n        go to x: (-193) y: (161)\n    end\nend\n\nwhen flag clicked\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nswitch costume to (costume1 v)\nrepeat (10)\n    change size by (-3)\n    change [ghost v] effect by (15)\nend\ndelete this clone\n\n@Sprite1\n\nwhen flag clicked\nhide\nwait (11.47) seconds\nshow\nswitch costume to (costume1 v)\n\nwhen I receive [new costume v]\nnext costume\n\n@Sprite2\n\nwhen flag clicked\nhide\nwait (11.47) seconds\nshow\nswitch costume to (costume1 v)\n\nwhen I receive [new costume v]\nnext costume\n\n@Sprite4\n\nwhen flag clicked\nwait (11.47) seconds\nhide\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\ngo to x: (pick random (-230) to (230)) y: (165)\nset size to (pick random (50) to (300)) %\nshow\nset [ghost v] effect to (pick random (40) to (50))\nrepeat until <touching (_edge_ v)?>\n    change y by (-5)\n    change [ghost v] effect by (.5)\nend\ndelete this clone\n\n@Sprite5\n\nwhen flag clicked\nshow\nforever\n    set size to (100) %\n    set [ghost v] effect to (100)\nend\n\n