- Platformer Tutorial -

Instructions: ✦ ʜᴇʟʟᴏ!    ✦Look at this too!\nhttps://scratch.mit.edu/projects/817598084\nhttps://scratch.mit.edu/projects/817598084 https://scratch.mit.edu/projects/817598084\n\n\n✢ How-to-use ✢\n【English】\n\nTap or use the arrow keys or WASD keys.\nDo not touch the red pen.\nAll the stages and buttons in this piece are made of pens!\nEnjoy!\n\n▶︎Following recommended!\n@Donguri_sg \n\n▶︎ studio\nhttps://scratch.mit.edu/studios/32852947\n\n\n【日本語】\nタップ又は矢印キー又はWASDキーで操作します。\n赤いペンに触れてはいけません。\nこの作品のステージやボタンは全てペンでできています！\nお楽しみください！\n\n▶︎僕は宣伝を許可しています。\n\n\n▶︎スタジオ\nhttps://scratch.mit.edu/studios/328529

@Stage\n\nwhen flag clicked\nforever\n    play sound [Vexento - Pixel Party v] until done\nend\n\n@Death Particles\n\nwhen flag clicked\nhide\n\nwhen I receive [reset v]\nrepeat (8)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nshow\ngo to (player v)\nset [px v] to (pick random (-5) to (5))\nset size to (pick random (80) to (120)) %\nset [ghost v] effect to (pick random (20) to (60))\nset [py2 v] to (pick random (4) to (8))\nrepeat until <touching (_edge_ v)?>\n    change size by (([cos v] of ((timer) * (100)) ) * (0.5))\n    change [ghost v] effect by (([cos v] of ((timer) * (100)) ) * (0.5))\n    change x by (Px)\n    change y by (Py2)\n    change [py2 v] by (-1)\nend\ndelete this clone\n\n@Lava\n\nwhen flag clicked\nswitch costume to (costume1 v)\n\nwhen I receive [dyeet v]\nnext costume\n\nwhen I receive [back v]\nswitch costume to ((costume [number v]) - (1))\n\nwhen flag clicked\nset size to (100) %\nforever\n    go to [back v] layer\n    go to x: (0) y: (0)\n    repeat (10)\n        change size by (1)\n    end\n    repeat (10)\n        change size by (-1)\n    end\nend\n\n@Thumbnail\n\nwhen flag clicked\ngo to [front v] layer\nshow\nset [ghost v] effect to (100)\n\n@Danger\n\nwhen flag clicked\nswitch costume to (costume1 v)\n\nwhen I receive [dyeet v]\nnext costume\n\n@Player\n\ndefine Newton\nset rotation style [left-right v]\nset [xv v] to [0]\nset [yv v] to [0]\ngo to x: (-226) y: (7)\nforever\n    change [yv v] by (1)\n    if <<key (left arrow v) pressed?> or <<mouse down?> and <(mouse x) > (x position)>>> then\n        set [xv v] to [5]\n    end\n    if <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) < (x position)>>> then\n        set [xv v] to [-5]\n    end\n    set [xv v] to ((Xv) * (0.9))\n    change x by (Xv)\n    if <touching color (#000000)?> then\n        change y by (-1)\n        if <touching color (#000000)?> then\n            change y by (-1)\n            if <touching color (#000000)?> then\n                change y by (-1)\n                if <touching color (#000000)?> then\n                    change y by (-1)\n                    if <touching color (#000000)?> then\n                        change y by (-1)\n                        change x by ((Xv) * (-1))\n                        change y by (5)\n                    end\n                end\n            end\n        end\n    end\n    change y by (Yv)\n    if <touching color (#000000)?> then\n        change y by ((Yv) * (-1))\n        set [yv v] to [0]\n    end\n    change y by (1)\n    if <touching color (#000000)?> then\n        if <<key (up arrow v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>> then\n            set [yv v] to [-15]\n        end\n    end\n    change y by (-1)\n    if <(x position) > [235]> then\n        broadcast (DYEET v)\n        change [my variable v] by (1)\n        go to x: (-226) y: (-129)\n    end\n    if <<<touching (danger v)?> or <touching (lava v)?>> or <<(my variable) = [3]> and <(y position) < [-167]>>> then\n        broadcast (Reset v)\n        hide\n        wait (1) seconds\n        show\n    end\n    \n        broadcast (Reset v)\n    end\nend\n\nwhen I receive [reset v]\nwait (1) seconds\ngo to x: (-226) y: (7)\n\nwhen flag clicked\nforever\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nrepeat (10)\n    change size by (-5)\n    change [ghost v] effect by (7)\nend\ndelete this clone\n\nwhen I receive [start v]\nNewton\n\nwhen flag clicked\nbroadcast (Start v)\n\nwhen flag clicked\nforever\n    if <touching (trampolines v)?> then\n        set [yv v] to [-23]\n    end\nend\n\nwhen I receive [retry level v]\ngo to x: (-226) y: (7)\n\n@Ground\n\nwhen flag clicked\nswitch costume to (costume1 v)\n\nwhen I receive [dyeet v]\nnext costume\n\n@Trampolines\n\nwhen flag clicked\nswitch costume to (costume1 v)\n\nwhen I receive [dyeet v]\nnext costume\n\nchange [color v] effect by (25)\n\n@Clouds\n\ngo to (random position v)\n\nwhen I receive [start v]\nhide\nforever\n    go to [back v] layer\n    go to x: (-230) y: (pick random (-83) to (-156))\n    create clone of (_myself_ v)\n    wait (1.4) seconds\nend\n\nwhen I start as a clone\nshow\nset [ghost v] effect to (pick random (20) to (50))\nrepeat until <(x position) > [300]>\n    change x by (5)\nend\ndelete this clone\n\n@Sun\n\nwhen flag clicked\nforever\n    show\n    go to [back v] layer\n    turn right (1.5) degrees\nend\n\n@Sprite1\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to x: (-189) y: (-153)\n\nwhen this sprite clicked\nbroadcast (DYEET v)\n\nwhen I receive [dyeet v]\nnext costume\n\n@Sprite2\n\nwhen flag clicked\nswitch costume to (costume2 v)\ngo to x: (192) y: (-154)\n\nwhen this sprite clicked\nbroadcast (retry level v)\n\nwhen I receive [dyeet v]\nnext costume\n\n@Moving Platform\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to x: (-132) y: (78)\nforever\n    glide (3) secs to x: (178) y: (78)\n    glide (3) secs to x: (-132) y: (78)\nend\n\nwhen I receive [dyeet v]\nnext costume\n\n