MOBILE FRIENDLY! The Mouseformer | Platformer #games #all

Instructions: Use the arrow keys and WASD to move the player. Move the platform with the mouse. Some levels are possible with the mouseform, but it is needed to complete the game. \nPress the GF twice!\nYou may advertise if you love, fave, and follow. If you don't your comment will be reported or deleted.\nNo way - In 24 hours, this project gained ~500 loves, ~450 faves, over 9000 views, and 24 remixes?! TYSM!!!\nThis one project SMASHED my previous account's (@CoderKid83) record of loves and faves! This is so cool!\n\n\n\n\n\n\n\n\n\n\n If your player can't move, just restart the project.\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\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\n\n\n\n\n\n\n\nFun Hacks:\nYou can use the mouse to move the player! On levels that you need an elevator, try using the mouse pointer for your player!\n\nMove your player between the ceiling and the mouseform, and the player will jump up to the ceiling!\n\nThe cube, when pressing a jump button while touching a ceiling, can "monkeybar" which can also be used with the mouseform!\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\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\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 "Imma follow you!" and do it!\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\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\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\n\n\nThanks for playing!

@Stage\n\nwhen flag clicked\nforever\n    play sound [Julius_-_3d_Demo_Tune.mp3 v] until done\n    wait (15) seconds\nend\n\n@Thumbnail\n\nwhen flag clicked\nswitch costume to (thumbnail v)\nset [ghost v] effect to (100)\nforever\n    go to [front v] layer\nend\n\nwhen I receive [done v]\nswitch costume to (won v)\nif <(timer) < ((☁ World Record) / (1000))> then\n    set [☁ world record v] to ((timer) * (1000))\n    show variable [☁ world record v]\n    switch costume to (record v)\nend\nstop [other scripts in sprite v]\nrepeat (25)\n    change [ghost v] effect by (-4)\nend\n\nwhen flag clicked\nif <[level data v] contains (username)?> then\n    broadcast (Update World Highscore v)\nelse\n    set [encoded cloud data v] to [0]\nend\n\n@Danger\n\nwhen flag clicked\nshow\nforever\n    go to [back v] layer\n    switch costume to (Level)\nend\n\nwhen I receive [done v]\nhide\n\n@Ground\n\nwhen flag clicked\nshow\nforever\n    switch costume to (Level)\nend\n\nwhen I receive [done v]\nhide\n\n@Player\n\nwhen I receive [start game v]\nset [pixelate v] effect to (-0.1)\nset [level v] to [1]\nforever\n    point in direction (90)\n    hide\n    set [vertical speed \(y velocity\) v] to [0]\n    set [horizontal speed \(x velocity\) v] to [0]\n    go to x: (-200) y: (-110)\n    show\n    Set On Ground (after death)\n    set [ghost v] effect to (0)\n    repeat until <<[237] < (x position)> or <<(y position) < [-178]> or <<touching (saw v)?> or <<touching (mouseformdanger v)?> or <<touching (danger2 v)?> or <touching (danger v)?>>>>>>\n        Loop\n    end\n    if <[237] < (x position)> then\n        change [level v] by (1)\n    else\n        Die\n    end\nend\n\ndefine Ground And Jump\nchange [vertical speed \(y velocity\) v] by (-1)\nchange y by (Vertical Speed \(Y Velocity\))\nif <<touching (ground v)?> or <touching (mouseform v)?>> then\n    if <(Vertical Speed \(Y Velocity\)) < [1]> then\n        repeat until <not <<touching (ground v)?> or <touching (mouseform v)?>>>\n            change y by (1)\n            set [vertical speed \(y velocity\) v] to [0]\n        end\n    else\n        if <[0] < (Vertical Speed \(Y Velocity\))> then\n            repeat until <not <<touching (ground v)?> or <touching (mouseform v)?>>>\n                change y by (-1)\n                set [vertical speed \(y velocity\) v] to [-1]\n            end\n        end\n    end\n    if <<<(y position) < (mouse y)> and <mouse down?>> or <<key (w v) pressed?> or <key (up arrow v) pressed?>>> then\n        set [vertical speed \(y velocity\) v] to [13]\n    end\nend\n\ndefine Loop\nif <(Encoded Cloud Data) = [1]> then\n    switch costume to (hitbox v)\nelse\n    switch costume to (player v)\nend\nif <<<(mouse y) < (y position)> and <mouse down?>> or <<key (s v) pressed?> or <key (down arrow v) pressed?>>> then\n    if <(Encoded Cloud Data) = [1]> then\n        switch costume to (hitbox2 v)\n    else\n        switch costume to (crouch v)\n    end\nend\nset rotation style [left-right v]\nGround And Jump\nif <<<(x position) < (mouse x)> and <mouse down?>> or <<key (d v) pressed?> or <key (right arrow v) pressed?>>> then\n    point in direction (90)\n    change [horizontal speed \(x velocity\) v] by (1)\nend\nif <<<(mouse x) < (x position)> and <mouse down?>> or <<key (a v) pressed?> or <key (left arrow v) pressed?>>> then\n    point in direction (-90)\n    change [horizontal speed \(x velocity\) v] by (-1)\nend\nset [horizontal speed \(x velocity\) v] to ((0.9) * (Horizontal Speed \(X Velocity\)))\nHorizontal Movement (Horizontal Speed \(X Velocity\))\n\ndefine Horizontal Movement (distance)\nset [ground slope v] to [0]\nchange x by (distance)\nrepeat until <not <<touching (ground v)?> or <touching (mouseform v)?>>>\n    change y by (1)\n    change [ground slope v] by (1)\nend\nif <[8] < (Ground Slope)> then\n    change x by ((0) - (distance))\n    change y by ((0) - (Ground Slope))\n    if <<<mouse down?> and <(y position) < (mouse y)>> or <<key (w v) pressed?> or <key (up arrow v) pressed?>>> then\n        if <[0] < (distance)> then\n            set [horizontal speed \(x velocity\) v] to [-12]\n        else\n            set [horizontal speed \(x velocity\) v] to [12]\n        end\n        set [vertical speed \(y velocity\) v] to [12]\n    end\nend\n\ndefine Die\nbroadcast (Die v)\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\ndefine Set On Ground (after death)\nrepeat until <not <<touching (ground v)?> or <touching (mouseform v)?>>>\n    change y by (1)\nend\n\nwhen flag clicked\nhide\nbroadcast (Start Game v)\n\nwhen I receive [skip v]\nset x to (240)\nSet On Ground (after death)\n\nwhen flag clicked\nforever\n    wait (0.05) seconds\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nrepeat (10)\n    change [ghost v] effect by (10)\n    change size by (-5)\nend\ndelete this clone\n\nwhen flag clicked\nwait until <(Level) = [16]>\nhide\nbroadcast (Done v)\n\nwhen I receive [done v]\nhide\n\nwhen flag clicked\nswitch costume to (player v)\n\nwhen I receive [update world highscore v]\nset [encoded cloud data v] to [1]\n\n@Mouseform\n\nwhen I receive [start game v]\nshow\nforever\n    go to (mouse-pointer v)\nend\n\nwhen I receive [done v]\nhide\n\n@MouseformDanger\n\nwhen I receive [start game v]\nshow\nforever\n    go to (mouse-pointer v)\nend\n\n@Saw\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\nset [ghost v] effect to (100)\ngo to [back v] layer\nwait until <(Level) = (Saw Level)>\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\nrepeat until <not <(Level) = (Saw Level)>>\n    turn left (10) degrees\n    Animate\nend\ndelete this clone\n\ndefine Clone Saw At (x) (y) (level) With Costume (#)\nswitch costume to (#)\ngo to x: (x) y: (y)\nset [saw level v] to (level)\ncreate clone of (_myself_ v)\n\nwhen I receive [start game v]\nClone Saw At [50] [15] [4] With Costume [1]\nClone Saw At [0] [0] [7] With Costume [2]\nClone Saw At [100] [-135] [8] With Costume [1]\nClone Saw At [-100] [-135] [8] With Costume [1]\nClone Saw At [0] [0] [8] With Costume [2]\nClone Saw At [0] [0] [15] With Costume [1]\nClone Saw At [100] [0] [15] With Costume [2]\n\ndefine Animate\nif < (costume [name v]) contains [mace]?> then\n    next costume\n    if <(costume [number v]) = [1]> then\n        switch costume to (mace v)\n    end\nend\n\n@Danger2\n\nwhen flag clicked\nforever\n    go to [back v] layer\n    switch costume to (Level)\nend\n\nwhen flag clicked\nshow\ngo to x: (0) y: (0)\nforever\n    wait (1) seconds\n    go to x: (0) y: (40)\n    wait (1) seconds\n    go to x: (0) y: (0)\nend\n\nwhen I receive [done v]\nhide\n\n@Deaths\n\nwhen flag clicked\nhide\nforever\n    go to [front v] layer\n    set [old level v] to (Level)\n    set [deaths v] to [0]\n    wait until <not <(Old Level) = (Level)>>\n    hide\nend\n\nwhen I receive [die v]\nchange [deaths v] by (1)\nif <(Deaths) = [5]> then\n    show\nend\n\nwhen this sprite clicked\nchange [level v] by (1)\nhide\n\n