Scrolling Platformer Engine! #games #all #art #animations #scrolling #engine #platformer

Instructions: Check these projects out. NOW. https://scratch.mit.edu/projects/473000857/\nhttps://scratch.mit.edu/projects/468910949/\nhttps://scratch.mit.edu/projects/472872471/\n\nhttps://www.youtube.com/watch?v=rUxXWtnUFek\n\nHey guys! So I hear that many of you guys want to make scrolling platformers, but don't know the code to do it. Well here it is!! The platform engine! Feel free to remix and design your own levels, just make sure to give credit to me, @Ziyu3!!!!\nSong is Vexento - Syndrome\n\nNo ads pls\n\nFAQ answers : \n\nOn the last level, remove the big block on the right side to continue and add more levels\n\nIf you can't get past it, then make it easier by remixing it and making your own.\n\nYou can also change the sounds into other sounds, but I recommend you keeping them except for the music :D\n\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\n\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\n\nI had to do this because so many of you guys think this is a game and call it too short, or ez, or whatever mean thing you called it. I keep telling you that this is not a game and this is an engine, but you guys don't listen.\n\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\nTHIS IS NOT A GAME THIS IS AN ENGINE\n\n

@Stage\n\nwhen flag clicked\nset volume to (10) %\nforever\n    set volume to (10) %\n    play sound [Elektronomia - Summersong 2020 v] until done\nend\n\n@player\n\nwhen flag clicked\nforever\n    if <touching (wotar v)?> then\n        if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(x position) > (mouse x)>>> then\n            change [x vel v] by (-1.3)\n        end\n        if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n            change [x vel v] by (1.3)\n        end\n        if <<<key (down arrow v) pressed?> or <key (s v) pressed?>> or <<mouse down?> and <(y position) > (mouse y)>>> then\n            change [y vel v] by (-1.3)\n        end\n        if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n            change [y vel v] by (1.3)\n        end\n        set [x vel v] to ((X vel) * (0.81))\n        set [y vel v] to ((Y vel) * (0.81))\n        change [y vel v] by (((Y vel) / (14.9)) + (0.1))\n    end\n    set size to (125) %\nend\n\nwhen flag clicked\nhide\npoint in direction (90)\nset [x vel v] to [0]\nset [y vel v] to [0]\nforever\n    broadcast (Tick v)\nend\n\ndefine Tick & Physics (jump height) (friction) (gravity) (speed)\nif <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n    change [x vel v] by (speed)\n    switch costume to (costume1  v)\nend\nif <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(x position) > (mouse x)>>> then\n    change [x vel v] by ((speed) * (-1))\n    switch costume to (costume2 v)\nend\nchange x by (X vel)\nset [x vel v] to ((X vel) * (friction))\nif <touching (platforms v)?> then\n    change y by (1)\n    if <touching (platforms v)?> then\n        change y by (1)\n        if <touching (platforms v)?> then\n            change y by (1)\n            if <touching (platforms v)?> then\n                change y by (1)\n                if <touching (platforms v)?> then\n                    change y by (1)\n                    if <touching (platforms v)?> then\n                        change x by ((X vel) * (-2))\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)>>> then\n                            if <(X vel) > [0]> then\n                                set [x vel v] to [-10]\n                            else\n                                set [x vel v] to [10]\n                            end\n                            set [y vel v] to (jump height)\n                        else\n                            set [x vel v] to [0]\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\nchange [y vel v] by (gravity)\nchange y by (Y vel)\nif <touching (platforms v)?> then\n    change y by ((Y vel) * (-1))\n    set [y vel v] to [0]\nend\nchange y by (-1)\nif <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n    if <touching (platforms v)?> then\n        set [y vel v] to ((jump height) - (2))\n    end\nend\nchange y by (1)\nchange [scroll x v] by ((x position) * (-1))\nchange [scroll y v] by ((y position) * (-1))\ngo to x: (0) y: (0)\nif <[730] < (Scroll Y)> then\n    Position\nend\nif <touching (spikes v)?> then\n    Position\nend\nif <touching (bouncies v)?> then\n    set [y vel v] to [20]\nend\nif <touching (lava v)?> then\n    Position\nend\n\nwhen I receive [tick v]\nTick & Physics [15] [0.9] [-1] [1]\n\nwhen I receive [start v]\nshow\n\ndefine Position\nset [scroll x v] to [750]\nset [scroll y v] to [446]\nset [ghost v] effect to (0)\n\nwhen flag clicked\nforever\n    if <touching (portal v)?> then\n        repeat (3)\n            change size by (-20)\n            change [ghost v] effect by (33)\n        end\n        wait until <not <touching (portal v)?>>\n        clear graphic effects\n        point in direction (90)\n        broadcast (Next level v)\n        Position\n    end\nend\n\nwhen flag clicked\nforever\n    if <[729] < (Scroll Y)> then\n        play sound [Roblox Death Sound  OOF Sound Effect v] until done\n    end\n    if <touching (spikes v)?> then\n        play sound [Roblox Death Sound  OOF Sound Effect v] until done\n    end\n    if <touching (bouncies v)?> then\n        play sound [Mario_Jump_-_Gaming_Sound_Effect v] until done\n    end\n    if <touching (lava v)?> then\n        play sound [Roblox Death Sound  OOF Sound Effect v] until done\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (portal v)?> then\n        play sound [Ding Sound Effect v] until done\n        wait until <not <touching (portal v)?>>\n    end\nend\n\n@Platforms\n\nwhen flag clicked\nhide\nbroadcast (Start v)\n\nwhen I receive [next level v]\nPosition\nnext costume\n\ndefine Position\nset [scroll x v] to [750]\nset [scroll y v] to [446]\nclear graphic effects\n\nwhen I receive [start v]\nshow\nswitch costume to (blank, do not erase, this is crucial to the scrolling v)\nset size to (400) %\nswitch costume to (level 1 v)\nPosition\nforever\n    go to x: (Scroll X) y: (Scroll Y)\n    go to [front v] layer\n    go [backward v] (3) layers\nend\n\n@Words\n\nwhen flag clicked\nhide\nbroadcast (Start v)\n\nwhen I receive [next level v]\nPosition\nnext costume\n\ndefine Position\nset [scroll x v] to [750]\nset [scroll y v] to [446]\nclear graphic effects\n\nwhen I receive [start v]\nshow\nswitch costume to (blank, do not erase, this is crucial to the scrolling v)\nset size to (400) %\nswitch costume to (level 1 v)\nPosition\nforever\n    go to x: (Scroll X) y: (Scroll Y)\nend\n\n@Spikes\n\nwhen flag clicked\nhide\nbroadcast (Start v)\n\nwhen I receive [next level v]\nPosition\nnext costume\n\ndefine Position\nset [scroll x v] to [750]\nset [scroll y v] to [446]\nclear graphic effects\n\nwhen I receive [start v]\nshow\nswitch costume to (blank, do not erase, this is crucial to the scrolling v)\nset size to (400) %\nswitch costume to (level 1 v)\nPosition\nforever\n    go to x: (Scroll X) y: (Scroll Y)\n    go to [front v] layer\n    go [backward v] (5) layers\nend\n\n@Borders DO NOT DELETE\n\nwhen flag clicked\nforever\n    go to [front v] layer\n    go [backward v] (1) layers\nend\n\n@Lava\n\nwhen flag clicked\nhide\nbroadcast (Start v)\n\nwhen I receive [next level v]\nPosition\nnext costume\n\ndefine Position\nset [scroll x v] to [750]\nset [scroll y v] to [446]\nclear graphic effects\n\nwhen I receive [start v]\nshow\nswitch costume to (blank, do not erase, this is crucial to the scrolling v)\nset size to (400) %\nswitch costume to (level 1 v)\nPosition\nforever\n    go to x: (Scroll X) y: ((([sin v] of ((timer) * (100)) ) * (20)) + (Scroll Y))\n    go to [front v] layer\n    go [backward v] (5) layers\nend\n\n@Bouncies\n\nwhen flag clicked\nhide\nbroadcast (Start v)\n\nwhen I receive [next level v]\nPosition\nnext costume\n\ndefine Position\nset [scroll x v] to [750]\nset [scroll y v] to [446]\nclear graphic effects\n\nwhen I receive [start v]\nshow\nswitch costume to (costume1 v)\nset size to (400) %\nswitch costume to (blank, do not erase, this is crucial to the scrolling v)\nPosition\nforever\n    go to x: (Scroll X) y: (Scroll Y)\n    go to [front v] layer\n    go [backward v] (5) layers\nend\n\n@Wotar\n\nwhen flag clicked\nhide\nbroadcast (Start v)\n\nwhen I receive [next level v]\nPosition\nnext costume\n\ndefine Position\nset [scroll x v] to [750]\nset [scroll y v] to [446]\nclear graphic effects\n\nwhen I receive [start v]\nshow\nswitch costume to (blank v)\nset size to (400) %\nswitch costume to (level 1 v)\nPosition\nforever\n    go to x: (Scroll X) y: ((([sin v] of ((timer) * (100)) ) * (20)) + (Scroll Y))\n    go to [front v] layer\n    go [backward v] (5) layers\nend\n\n@Portal\n\nwhen flag clicked\nhide\nbroadcast (Start v)\n\nwhen I receive [next level v]\nPosition\nnext costume\n\ndefine Position\nset [scroll x v] to [750]\nset [scroll y v] to [446]\nclear graphic effects\n\nwhen I receive [start v]\nshow\nswitch costume to (blank, do not erase, this is crucial to the scrolling v)\nset size to (400) %\nswitch costume to (level 1 v)\nPosition\nforever\n    go to x: (Scroll X) y: (Scroll Y)\n    go to [front v] layer\n    go [backward v] (5) layers\nend\n\n@Tb\n\nwhen flag clicked\nhide variable [timer v]\ngo to [front v] layer\nhide\nset [ghost v] effect to (100)\nforever\n    set [timer v] to (timer)\nend\n\nwhen [timer v] > (Timer)\nset [ghost v] effect to (0)\nshow\nforever\n    go to [front v] layer\nend\n\n