Talking Ben a platformer! #GAMES #ALL #TRENDING

Instructions: ♥⭐ and follow if you want :) ! i would really appreciate it\n\nWelcome to Ben a platformer! \n\ncontrols\nDown Arrow / S / up arrow (TO CROUCH!!!)\ndefault keys to move :P\n(mobile friendly)\n\n\n\n\n\n\n\n\ntags.\n#talkingben #ben #ishowspeed #game #all #trending #platformer #talking #energy #energycodes #-energycodes-

@Stage\n\nwhen flag clicked\nset [@level v] to [1]\nbroadcast (init v) and wait\nbroadcast (@game v)\nforever\n    play sound [SMG2 - Battle Belt Galaxy v] until done\nend\n\nwhen I receive [@game v]\nforever\n    erase all\n    broadcast (tick v)\nend\n\nwhen flag clicked\nset [timer v] to [0]\nforever\n    change [timer v] by (timer)\n    change [time v] by (timer)\n    reset timer\nend\n\nwhen [t v] key pressed\nif <(username) = [-energycodes-]> then\n    ask [] and wait\n    set [@level v] to (answer)\n    broadcast (reset v)\nend\n\nwhen I receive [@game v]\nset [time v] to [0]\nrepeat until <([abs v] of (round (xvel)) ) > [.01]>\n    set [time v] to [0]\nend\n\n@blank\n\n@Numbers\n\ndefine d\ndelete this clone\n\ndefine fast print number (s) position x: (x) y: (y)\nset [i v] to [1]\nswitch costume to (blank v)\ngo to x: (x) y: (y)\nrepeat (length of (s))\n    switch costume to (join [n] (letter (i) of (s)))\n    change [i v] by (1)\n    change x by ((31) - ((size) - (61)))\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nclear graphic effects\ngo to [front v] layer\nset [brightness v] effect to ((([sin v] of ((timer) * (1000)) ) * (3)) + ())\nif <touching (baen v)?> then\n    set [ghost v] effect to (90)\nend\nwait () seconds\ndelete this clone\n\nwhen flag clicked\nforever\n    if <(@Level) < [10]> then\n        fast print number (join [~0] (@Level)) position x: (((length of (@Level)) - (1)) * (10)) y: ((([sin v] of ((timer) * (300)) ) * (3)) + (-125))\n    else\n        fast print number (join [~] (@Level)) position x: (((length of (@Level)) - (1)) * (10)) y: ((([sin v] of ((timer) * (300)) ) * (3)) + (-125))\n    end\n    fast print number (join (join (join (letter (1) of (TIME)) (letter (2) of (TIME))) (letter (3) of (TIME))) (join (letter (4) of (TIME)) (letter (5) of (TIME)))) position x: (((length of (join (join (join (letter (1) of (TIME)) (letter (2) of (TIME))) (letter (3) of (TIME))) (join (letter (4) of (TIME)) (letter (5) of (TIME))))) - (0)) * (-15)) y: [155]\nend\n\n@baen\n\ndefine say (s)\nset [say? v] to [1]\nplay sound (s) until done\nset [say? v] to [0]\n\nwhen I receive [@game v]\nforever\n    go to [front v] layer\n    if <(crouch?) = [1]> then\n        switch costume to (crouch-hitbox v)\n    else\n        switch costume to (hitbox v)\n    end\n    change [frame v] by (.3)\n    if <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(mouse x) < (x position)>>>> then\n        point in direction (-90)\n        if <(crouch?) = [1]> then\n            change [xvel v] by (-.25)\n        else\n            change [xvel v] by (-1)\n        end\n        change [frame v] by (.7)\n    end\n    if <<key (d v) pressed?> or <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > (x position)>>>> then\n        point in direction (90)\n        if <(crouch?) = [1]> then\n            change [xvel v] by (.25)\n        else\n            change [xvel v] by (1)\n        end\n        change [frame v] by (.7)\n    end\n    set [xvel v] to ((xvel) * (.87))\n    change x by (xvel)\n    if <<touching (ground v)?> or <touching (door v)?>> then\n        change y by (1)\n    end\n    if <<touching (ground v)?> or <touching (door v)?>> then\n        change y by (1)\n    end\n    if <<touching (ground v)?> or <touching (door v)?>> then\n        change y by (1)\n    end\n    if <<touching (ground v)?> or <touching (door v)?>> then\n        change y by (1)\n    end\n    if <<touching (ground v)?> or <touching (door v)?>> then\n        change y by (-4)\n        change x by ((xvel) * (-1))\n        if <<key (up arrow v) pressed?> or <<key (space v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>>>> then\n            if <(xvel) > [0]> then\n                set [xvel v] to [-10]\n            else\n                set [xvel v] to [10]\n            end\n            set [yvel v] to [15]\n            set [in air v] to [1]\n        else\n            set [xvel v] to [0]\n        end\n    end\n    change [yvel v] by (-1)\n    change y by (yvel)\n    if <<touching (ground v)?> or <touching (door v)?>> then\n        change y by ((yvel) * (-1))\n        set [in air v] to [0]\n        set [yvel v] to [0]\n    end\n    change y by (-1)\n    if <<key (up arrow v) pressed?> or <<key (space v) pressed?> or <<key (w v) pressed?> or <<mouse down?> and <(mouse y) > (y position)>>>>> then\n        if <touching (ground v)?> then\n            if <(crouch?) = [0]> then\n                set [yvel v] to [15]\n                set [in air v] to [1]\n            end\n        end\n    end\n    change y by (1)\n    switch costume to (join [i] ((1) + (([floor v] of (frame) ) mod (2))))\n    if <(in air) > [0]> then\n        if <(yvel) > [0]> then\n            switch costume to (jump v)\n            if <(say?) = [1]> then\n                switch costume to (jump-s v)\n            end\n        else\n            switch costume to (fall v)\n            if <(say?) = [1]> then\n                switch costume to (fall-s v)\n            end\n        end\n    else\n        if <(round ([abs v] of (xvel) )) > [2]> then\n            switch costume to (join [a] ((([floor v] of (frame) ) mod (9)) + (1)))\n        end\n    end\n    if <(x position) > [230]> then\n        start sound [Magic Spell v]\n        change [@level v] by (1)\n        broadcast (reset v)\n    end\n    if <touching (danger lol v)?> then\n        start sound [TalkingBenfoot1 v]\n        broadcast (reset v)\n    end\n    if <(y position) < [-200]> then\n        start sound [TalkingBenfoot1 v]\n        broadcast (reset v)\n    end\n    if <<key (down arrow v) pressed?> or <<key (s v) pressed?> or <<mouse down?> and <(mouse y) < (y position)>>>> then\n        if <(in air) = [0]> then\n            set [crouch? v] to [1]\n        end\n    else\n        set [crouch? v] to [0]\n    end\n    if <(crouch?) = [1]> then\n        switch costume to (crouch v)\n    end\nend\n\nwhen I receive [init v]\ngo to [front v] layer\nset size to (37) %\nbroadcast (reset v)\nset y to (50)\n\nwhen I receive [@game v]\nset volume to (100) %\nsay [Ben]\n\nwhen I receive [reset v]\nset [ready? v] to [0]\nset [xvel v] to [0]\nset [yvel v] to [0]\npoint in direction (90)\nset [in air v] to [1]\nset x to (-190)\ngo to x: (-190) y: (-15)\nset [xvel v] to [0]\nset [yvel v] to [0]\nset rotation style [left-right v]\nrepeat (2)\n    touch ground\nend\nset [ready? v] to [1]\n\nwhen [r v] key pressed\nbroadcast (reset v) and wait\n\ndefine touch ground\ngo to x: (-190) y: (-15)\nswitch costume to (hitbox v)\nif <touching (ground v)?> then\n    repeat until <not <touching (ground v)?>>\n        change y by (-1)\n        if <touching (_edge_ v)?> then\n            repeat until <not <touching (ground v)?>>\n                change y by (1)\n            end\n        end\n    end\nend\nswitch costume to (i1 v)\n\n@ground\n\nwhen I receive [init v]\ngo to x: (0) y: (0)\ngo to [front v] layer\n\nwhen I receive [tick v]\nswitch costume to (join [l] (@Level))\noutline by griffy\n\ndefine outline by griffy\nclear graphic effects\nset [brightness v] effect to (-17)\nset rotation style [don't rotate v]\nrepeat (8)\n    move (-5) steps\n    create clone of (_myself_ v)\n    move (5) steps\n    turn right (45) degrees\nend\nclear graphic effects\n\nwhen I start as a clone\nwait () seconds\ndelete this clone\n\n@details\n\ndefine d\ndelete this clone\n\nwhen I start as a clone\ntick\nforever\n    go to [back v] layer\nend\n\nwhen I receive [next level v]\nd\nhide\nrepeat (3)\n    create clone of (_myself_ v)\nend\n\nwhen I receive [@game v]\nd\nhide\nrepeat (3)\n    create clone of (_myself_ v)\nend\n\ndefine tick\nshow\nrepeat until <not <touching (details v)?>>\n    switch costume to (frame v)\n    set size to (pick random (40) to (60)) %\n    go to (random position v)\n    set y to (pick random (115) to (50))\nend\nswitch costume to (pick random (1) to (3))\n\n@shadow\n\nwhen I receive [tick v]\nswitch costume to (hb v)\ngo to (baen v)\ntouch ground\nswitch costume to (costume1 v)\nset [ghost v] effect to (((distance to [baen v]) / (2)) + (30))\n\ndefine touch ground\nrepeat until <touching (ground v)?>\n    change y by (-1)\n    if <(y position) < [-180]> then\n        stop [this script v]\n    end\nend\nchange y by (1)\n\nwhen I receive [@game v]\ngo to [front v] layer\n\n@art.\n\n@Danger lol\n\nwhen I receive [tick v]\nswitch costume to (blank v)\nswitch costume to (join [l] (@Level))\n\nwhen I receive [init v]\ngo to x: (0) y: (0)\n\nwhen I receive [init v]\ngo to x: (0) y: (0)\ngo to [front v] layer\n\nwhen I receive [@game v]\nrepeat (10)\n    go to [front v] layer\nend\n\n@lever\n\ndefine d\ndelete this clone\n\nwhen I start as a clone\ngo to x: (-202) y: ((-1) / (0))\nwait until <not <touching (baen v)?>>\npoint in direction (90)\ngo to [back v] layer\n\n    if <(ready?) = [1]> then\n        go to x: (clone x) y: (clone y)\n        if <(@Level) = (onLevel)> then\n            show\n        else\n            hide\n            if <(@Level) > (onLevel)> then\n                delete this clone\n            end\n        end\n    end\nend\n\ndefine create clone (x) (y) onLevel (onlevel)\nchange [id v] by (1)\nset [clone x v] to (x)\nset [clone y v] to (y)\nset [onlevel v] to (onlevel)\ncreate clone of (_myself_ v)\n\nwhen I receive [@game v]\nreset\n\nwhen I receive [reset v]\nreset\n\nwhen I receive [next level v]\nreset\n\ndefine reset\nd\nset [lever v] to [0]\nhide\nset [id v] to [0]\ncreate clone [-200] [115] onLevel [8]\ncreate clone [100] [-165] onLevel [9]\ncreate clone [195] [77] onLevel [10]\ncreate clone [185] [-80] onLevel [11]\ncreate clone [-200] [125] onLevel [11]\n\nwhen I receive [init v]\nreset\n\nwhen I start as a clone\nrepeat until <touching (baen v)?>\n    turn right (((90) - (direction)) / (10)) degrees\nend\nchange [lever v] by (1)\nrepeat until <not <touching (baen v)?>>\n    turn right (((180) - (direction)) / (10)) degrees\nend\n\nwait (.1) seconds\n\n@door\n\ndefine d\ndelete this clone\n\nwhen I start as a clone\npoint in direction (90)\ngo to [back v] layer\ngo to x: (clone x) y: (clone y)\n\n    if <(@Level) = (onLevel)> then\n        show\n        if <(aol) = (lever)> then\n            change y by ((([abs v] of ((clone y) + (1)) ) / ((clone y) + (1))) * (10))\n        else\n            change y by (((clone y) - (y position)) / (5))\n        end\n    else\n        hide\n        change y by (((clone y) - (y position)) / (5))\n        if <(@Level) > (onLevel)> then\n            delete this clone\n        end\n    end\nend\n\nwhen I receive [reset v]\nreset\n\nwhen I receive [next level v]\nreset\n\nwhen I receive [@game v]\nreset\n\ndefine create clone (x) (y) onLevel (onlevel) amount of levers (l)\nchange [id v] by (1)\nset [clone x v] to (x)\nset [clone y v] to (y)\nset [onlevel v] to (onlevel)\nset [aol v] to (l)\ncreate clone of (_myself_ v)\n\nwhen I receive [init v]\nreset\n\ndefine reset\nd\nhide\nset [id v] to [0]\ncreate clone [210] [0] onLevel [8] amount of levers [1]\ncreate clone [210] [100] onLevel [9] amount of levers [1]\ncreate clone [210] [-100] onLevel [10] amount of levers [1]\ncreate clone [210] [100] onLevel [11] amount of levers [2]\n\n@Words\n\nwhen I receive [tick v]\nswitch costume to (blank v)\nswitch costume to (join [l] (@Level))\n\nwhen I receive [init v]\ngo to x: (0) y: (0)\n\nwhen I receive [init v]\ngo to x: (0) y: (0)\ngo to [front v] layer\n\nwhen I receive [@game v]\nrepeat (10)\n    go to [front v] layer\nend\n\n@Thumbnail\n\nwhen [timer v] > ()\ngo to x: (0) y: (0)\ngo to [front v] layer\n\nwhen flag clicked\nforever\n    set [ghost v] effect to (100)\n    go to [front v] layer\nend\n\n@thing\n\nwhen I receive [@game v]\n\n    hide\n    go to x: (170) y: (-198)\n    go to [front v] layer\n    wait (10) seconds\n    show\n    start sound [pop v]\n    glide (.2) secs to x: (170) y: (-148)\n    wait (3) seconds\n    glide (1) secs to x: (170) y: (-198)\n    hide\nend\n\n