escape! (a platformer)
@Stage\n\nwhen flag clicked\nswitch backdrop to (backdrop2 v)\n\nwhen I receive [\[intro\] over v]\nswitch backdrop to (backdrop1 v)\n\n@Player\n\ndefine reset\ngo to x: (-200) y: (-15)\n\nwhen flag clicked\ngo to x: (-200) y: (-15)\nset size to (80) %\nswitch costume to (costume1 v)\nshow\nset [level v] to [1]\nset [xv v] to [0]\nset [yv v] to [0]\nforever\n    if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > [10]>>> then\n        change [xv v] by (1)\n    end\n    if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(mouse x) < [-10]>>> then\n        change [xv v] by (-1)\n    end\n    set [xv v] to ((Xv) * (0.9))\n    change x by (Xv)\n    if <touching (ground v)?> then\n        change y by (1)\n        if <touching (ground v)?> then\n            change y by (1)\n            if <touching (ground v)?> then\n                change y by (1)\n                if <touching (ground v)?> then\n                    change y by (1)\n                    if <touching (ground v)?> then\n                        change y by (1)\n                        if <touching (ground v)?> then\n                            change x by ((Xv) * (-1))\n                            if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n                                if <(Xv) > [0]> then\n                                    set [xv v] to [-5]\n                                else\n                                    set [xv v] to [5]\n                                end\n                                set [yv v] to [12]\n                            else\n                                set [xv v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change [yv v] by (-1)\n    change y by (Yv)\n    if <touching (ground v)?> then\n        change y by ((Yv) * (-1))\n        set [yv v] to [0]\n    end\n    change y by (-1)\n    if <touching (ground v)?> then\n        if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > (y position)>>> then\n            set [yv v] to [12]\n        end\n    end\n    if <touching (trampoline variable v)?> then\n        set [yv v] to [20]\n    end\n    change y by (1)\n    if <key (r v) pressed?> then\n        reset\n    end\n    if <<<(y position) < [-177]> or <touching (glue v)?>> or <touching (scissors v)?>> then\n        reset\n    end\n    if <(x position) > [230]> then\n        change [level v] by (1)\n        broadcast (Next level! v)\n        reset\n    end\nend\n\nwhen flag clicked\nhide\ngo to [back v] layer\n\nwhen I receive [\[intro\] over v]\nshow\ngo to [front v] layer\nswitch costume to (coustume1 v)\n\nwhen I receive [\[intro\] over v]\nforever\n    play sound [Alan Walker - Spectre \[NCS Release\] v] until done\nend\n\nwhen flag clicked\nforever\n    if <(level) = [16]> then\n        broadcast (The end so ya v)\n    end\nend\n\n@Ground\n\nwhen I receive [next level! v]\nnext costume\n\nwhen flag clicked\nhide\ngo to [back v] layer\n\nwhen I receive [\[intro\] over v]\nshow\ngo to [front v] layer\nswitch costume to (costume1 v)\n\n@Words\n\nwhen I receive [next level! v]\nnext costume\n\nwhen flag clicked\nhide\ngo to [back v] layer\n\nwhen I receive [\[intro\] over v]\nshow\ngo to [front v] layer\nswitch costume to (costume1 v)\n\n@Glue\n\nwhen flag clicked\nhide\ngo to [back v] layer\n\nwhen flag clicked\nforever\n    if <(level) = [3]> then\n        show\n        go to [front v] layer\n        switch costume to (costume1 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [4]> then\n        hide\n        go to [back v] layer\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [8]> then\n        show\n        go to [front v] layer\n        switch costume to (costume2 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [9]> then\n        hide\n        go to [back v] layer\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [11]> then\n        hide\n        go to [back v] layer\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [12]> then\n        show\n        go to [back v] layer\n        switch costume to (costume3 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [13]> then\n        show\n        go to [back v] layer\n        switch costume to (costume4 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [14]> then\n        show\n        go to [back v] layer\n        switch costume to (costume5 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [15]> then\n        show\n        go to [back v] layer\n        switch costume to (costume6 v)\n    end\nend\n\n@Scissors\n\nwhen flag clicked\nhide\ngo to [back v] layer\n\nwhen flag clicked\nforever\n    if <(level) = [4]> then\n        show\n        go to [front v] layer\n        switch costume to (costume2 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [5]> then\n        show\n        go to [front v] layer\n        switch costume to (costume3 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [6]> then\n        show\n        go to [front v] layer\n        switch costume to (costume4 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [7]> then\n        show\n        go to [front v] layer\n        switch costume to (costume5 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [8]> then\n        hide\n        go to [back v] layer\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [11]> then\n        show\n        go to [front v] layer\n        switch costume to (costume6 v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [12]> then\n        hide\n        go to [back v] layer\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [15]> then\n        show\n        go to [front v] layer\n        switch costume to (costume7 v)\n    end\nend\n\n@Intro\n\nwhen I start as a clone\nif <(clone_id) = [0]> then\n    set [costume v] to [blank]\n    🎥 Disable from Cam Control? \n    set volume to (100) %\n    reset timer\n    Clone same sprite [controller] spec: [0] [0] [0]\n    Clone sprites [SF] [1]\n    ⏱ Frame [.3]\n    start sound [Raven  Kreyn - S2 v]\n    Clone same sprite [2] [080]\n    Clone sprites [1] [1]\n    set [_v3 v] to [0]\n    repeat (10)\n        🖼 Set effects c/b/g [24] ((100) * <(round ((_v3) / (2))) = ((_v3) / (2))>) [0]\n        Clone same sprite [3] [1]\n        wait (.05) seconds\n        change [_v3 v] by (1)\n    end\n    Text\n    set [direction v] to [22.5]\n    set [_v3 v] to [0]\n    set [_v4 v] to [0]\n    Clone same sprite [P2] [50]\n    Clone sprites [101] [2]\n    repeat (3)\n        🖼 Set effects c/b/g [0] (_v3) [0]\n        Clone sprites [4] [1]\n        change [direction v] by (180)\n        Clone sprites [4] [1]\n        change [direction v] by (-180)\n        wait (.2) seconds\n        change [direction v] by (40)\n        change [_v3 v] by (-10)\n        change [_v4 v] by (1)\n    end\n    Clone sprites [103] [1]\n    Clone sprites [5] [1]\n    Clone sprites [6] [6]\nend\n\ndefine 🎥 Disable from Cam Control? <disable?>\nif <disable?> then\n    set [enabled? v] to [0]\nelse\n    set [enabled? v] to [1]\nend\n\ndefine Play Intro\nSet size to [100] %\npoint in direction (90)\ngo to x: (0) y: (0)\nset rotation style [all around v]\nswitch costume to (logo v)\nhide\ndelete all of [cam x/y/z/r v]\nrepeat (4)\n    add [thing] to [cam x/y/z/r v]\nend\nClone same sprite [0] spec: [0] [0] [0]\n\ndefine ⏱ Frame (time)\nif <(timer) > (time)> then\n\ndefine Set pos zrot: (x) (y) rot: (r) trans: (tx) (ty) scalar: (c)\nset [x v] to ((tx) + ((c) * ((([cos v] of (r) ) * (x)) - (([sin v] of (r) ) * (y)))))\nset [y v] to ((ty) + ((c) * ((([sin v] of (r) ) * (x)) + (([cos v] of (r) ) * (y)))))\n\ndefine 🎥 Cam set x/y/z/r (item) to: (val)\nreplace item (item) of [cam x/y/z/r v] with (val)\n\ndefine ⏱ Keyframe (keyframe)\nif <(Keyframe) > (keyframe)> then\n\ndefine 🎥 Transition x/y/z/s/r (x) (y) (z) (s) (r) speed: (t)\nchange [x v] by (((round (x)) - (round (x))) / (t))\nchange [y v] by (((round (y)) - (round (y))) / (t))\nchange [z v] by (((round (z)) - (round (z))) / (t))\nchange [size v] by (((round (s)) - (round (size))) / (t))\nTransition direction (r) speed: (t)\n\nwhen I start as a clone\nif <(clone_id) = [controller]> then\n    🎥 Move cam to [0] [0] [0] [0]\n    ⏱ Keyframe [1]\n    repeat until <(Keyframe) > [9]>\n        🎥 Cam set x/y/z/r [1] to: ((_v1) * ([sin v] of (_v2) ))\n        🎥 Cam set x/y/z/r [2] to: ((_v1) * ([cos v] of (_v3) ))\n        🎥 Cam set x/y/z/r [3] to: ((item (3) of [cam x/y/z/r v]) * (.85))\n        set [_v1 v] to ((_v1) * (.85))\n        change [_v2 v] by (40)\n        change [_v3 v] by (30)\n    end\n    ⏱ Keyframe [9]\n    wait (.6) seconds\n    set [_v1 v] to [0]\n    set [_v2 v] to [1]\n    repeat (35)\n        🎥 Cam set x/y/z/r [1] to: (_v1)\n        change [_v1 v] by (_v2)\n        change [_v2 v] by (4)\n    end\nend\n\nwhen I receive [\[intro\] start v]\nPlay Intro\nset [keyframe v] to [1]\nrepeat until <(Keyframe) > (length of [keyframes v])>\n    wait until <(timer) > ((.2) + (item (Keyframe) of [keyframes v]))>\n    broadcast (\[Intro\] keyframe signal v)\n    change [keyframe v] by (1)\nend\n\ndefine Clone sprites (id) (count)\nset [clone_id v] to (id)\nrepeat (count)\n    create clone of (_myself_ v)\n    change [clone_id v] by (1)\nend\nset [clone_id v] to [0]\n\ndefine Clone same sprite (id) (count)\nset [clone_id v] to (id)\nrepeat (count)\n    create clone of (_myself_ v)\nend\nset [clone_id v] to [0]\n\nwhen I receive [\[intro\] keyframe signal v]\nif <(clone_id) = [controller]> then\n    if <[hot] = (item ((Keyframe) - (1)) of [keyframe type v])> then\n        set [_v1 v] to [5]\n        🎥 Cam set x/y/z/r [3] to: [.06]\n    end\nend\n\nwhen I receive [\[intro\] start v]\nwait (1) seconds\n⏱ Keyframe [1]\n🖼 Set effects c/b/g [24] [100] [0]\n💥 Sparkle explosion [240] [180] [100] [0] [0] [0] [10] [30] [0] [31]\n💥 Line explosion [0] [0] [40] [70] [0] [360] [5] [5] [0] [14]\n🖼 Set effects c/b/g [24] [0] [50]\n💥 Gradient shockwave\n⏱ Keyframe [5]\n🖼 Set effects c/b/g [24] [100] [0]\n💥 Shockwave [0] [0] [0] [200] [0] [360] [5] [6] [0] [1]\n⏱ Keyframe [6]\nParticles [30]\n💥 Line explosion [-120] [-70] [50] [50] [0] [360] [6] [6] [0] [10]\n⏱ Keyframe [7]\n💥 Line explosion [60] [0] [30] [40] [58] [90] [6] [6] [0] [3]\n💥 Line explosion [-60] [0] [30] [40] [-58] [-90] [6] [6] [0] [3]\n⏱ Keyframe [9]\n🖼 Set effects c/b/g [22] [0] [0]\n💥 Line explosion [0] [0] [80] [130] [54] [360] [5] [5] [0] [5]\n🖼 Set effects c/b/g [24] [100] [0]\n💥 Line explosion [0] [0] [80] [130] [18] [360] [5] [5] [0] [5]\n💥 Shockwave [0] [0] [400] [7]\nwait (.2) seconds\n💥 Spline explosion [240] [50] [240] [400] [-90] [0] [7] [7] [0] [1]\nwait (.1) seconds\n💥 Spline explosion [240] [0] [240] [400] [-90] [0] [7] [7] [0] [1]\nwait (.1) seconds\n💥 Spline explosion [240] [-60] [240] [400] [-90] [0] [7] [7] [0] [1]\n\ndefine 💥 Gradient shockwave\nClone same sprite [GS] [1]\n\ndefine 💥 Shockwave (x) (y) (s) (speed)\nset [_v1 v] to (s)\nset [_v3 v] to (speed)\nClone same sprite [S] spec: (x) (y) [0]\n\nwhen I start as a clone\nif <(clone_id) = [SF]> then\n    switch costume to (screen v)\n    set [_v1 v] to [0]\n    forever\n        🖼 Set effects c/b/g [0] [100] ((100) - (_v1))\n        set [_v1 v] to ((_v1) * (.85))\n    end\nend\n\nwhen I receive [\[intro\] keyframe signal v]\nif <(clone_id) = [SF]> then\n    Transition positions [0] [0] [100] speed: [1]\n    Transition direction [90] speed: [1]\n    go to [front v] layer\n    set [_v1 v] to [30]\nend\n\ndefine 🎥 Move cam to (x) (y) (z) (r)\nreplace item (1) of [cam x/y/z/r v] with (x)\nreplace item (2) of [cam x/y/z/r v] with (y)\nreplace item (3) of [cam x/y/z/r v] with (z)\nreplace item (4) of [cam x/y/z/r v] with (r)\n\n🖼 Set effects c/b/g [24] [100] [0]\n💥 Sparkle explosion [50] [50] [50] [0] [0] [0] [20] [30] [0] [19]\n💥 Rect explosion [0] [0] [40] [70] [0] [360] [9] [9] [5] [8]\n💥 Spline explosion [0] [0] [120] [120] [0] [360] [10] [10] [-2.5] [6]\n💥 Shockwave [0] [0] [400] [10]\n🖼 Set effects c/b/g [24] [0] [0]\n💥 Spline explosion [0] [0] [120] [120] [30] [360] [6] [6] [2.5] [6]\n💥 Shockwave [0] [0] [10] [200] [0] [45] [9] [9] [0] [1]\n💥 Shockwave [0] [0] [10] [200] [52] [45] [9] [9] [0] [1]\n💥 Shockwave [0] [0] [10] [200] [104] [45] [9] [9] [0] [1]\n💥 Shockwave [0] [0] [10] [200] [156] [45] [9] [9] [0] [1]\n💥 Shockwave [0] [0] [10] [200] [208] [45] [9] [9] [0] [1]\n💥 Shockwave [0] [0] [10] [200] [260] [45] [9] [9] [0] [1]\n💥 Shockwave [0] [0] [10] [200] [312] [45] [9] [9] [0] [1]\n\nwhen I start as a clone\nif <(clone_id) = [SW]> then\n    Transition direction (direction) speed: [1]\n    Set size to [0] %\n    switch costume to (join [shockwave1/] ((360) / (_v2)))\n    set [_v1 v] to [0]\n    repeat ((3.6) * (costume))\n        Transition positions (x) (y) (_v5) speed: (_v3)\n        Transition direction ((direction) + (_v4)) speed: (_v3)\n        set [fisheye v] effect to (([ceiling v] of (([tan v] of (_v1) ) * (68.6)) ) * (_v1))\n        change [_v1 v] by ((25) / (costume))\n    end\n    repeat ((.8) * (costume))\n        Transition positions (x) (y) (_v5) speed: (_v3)\n        Transition direction ((direction) + (_v4)) speed: (_v3)\n        change [ghost v] effect by ((5) * (costume))\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(clone_id) = [CE]> then\n    switch costume to (circle v)\n    set [_v2 v] to [0]\n    repeat ((3.6) * (costume))\n        Transition positions ((x) + ((_v2) * ([sin v] of (direction) ))) ((y) + ((_v2) * ([cos v] of (direction) ))) (size) speed: [1]\n        Transition direction ((_v4) + (direction)) speed: (_v3)\n        change [_v2 v] by (((_v5) - (_v2)) / (_v3))\n        change [size v] by (((0) - (size)) / ((1.7) * (_v3)))\n    end\n    repeat ((.8) * (costume))\n        Transition positions ((x) + ((_v2) * ([sin v] of (direction) ))) ((y) + ((_v2) * ([cos v] of (direction) ))) (size) speed: [1]\n        Transition direction ((_v4) + (direction)) speed: (_v3)\n        change [_v2 v] by (((_v5) - (_v2)) / (_v3))\n        change [size v] by (((0) - (size)) / (_v3))\n        change [ghost v] effect by ((125) / (_v3))\n    end\n    delete this clone\nend\n\ndefine Change size by: (s) costume ph: (ph)\nSet size to ((size) + (s)) %\nswitch costume to (ph)\n\nwhen I start as a clone\nhide\ngo to [front v] layer\nif <(clone_id) = ((clone_id) * (1))> then\n    forever\n        if <(enabled?) = [1]> then\n            Set size to [99999999999] %\n            set x to (((x) - (item (1) of [cam x/y/z/r v])) * (((item (3) of [cam x/y/z/r v]) / (z)) + (1)))\n            set y to (((y) - (item (2) of [cam x/y/z/r v])) * (((item (3) of [cam x/y/z/r v]) / (z)) + (1)))\n            Set size to ((size) * ((item (3) of [cam x/y/z/r v]) + (1))) %\n            switch costume to (costume)\n        else\n            Set size to [99999999999] %\n            set x to (x)\n            set y to (y)\n            Set size to (size) %\n            switch costume to (costume)\n        end\n        🖼 Set effects c/b/g (color) (brightness) (ghost)\n    end\nelse\n    Transition positions (x) (y) (size) speed: [1]\n    Transition direction (direction) speed: [1]\n    🖼 Set effects c/b/g (color) (brightness) (ghost)\n    🎥 Disable from Cam Control? \n    show\nend\n\ndefine Transition direction (r) speed: (t)\nturn right (((round (r)) - (round (direction))) / (t)) degrees\n\ndefine Set size to (size) %\nif <[100] > (size)> then\n    switch costume to (screen v)\nelse\n    switch costume to (blank v)\nend\nset size to (size) %\nswitch costume to (screen v)\n\ndefine Clone same sprite (id) spec: (x) (y) (s)\nset [clone_id v] to (id)\nset [x v] to (x)\nset [y v] to (y)\nset [size v] to (s)\ncreate clone of (_myself_ v)\nset [clone_id v] to [0]\n\ndefine 💥 Line explosion (x) (y) (s) (r) (zrot) (spread) (speed) (framespeed) (rot) (count)\nset [_v5 v] to (r)\nset [direction v] to (zrot)\nset [_v4 v] to (rot)\nset [_v3 v] to (speed)\nset [costume v] to (framespeed)\nrepeat (count)\n    Clone same sprite [LE] spec: (x) (y) (s)\n    change [direction v] by ((spread) / (count))\nend\n\nwhen I start as a clone\nif <(clone_id) = [LE]> then\n    set [_v1 v] to [1]\n    set [_v2 v] to [0]\n    repeat ((3.6) * (costume))\n        switch costume to (join [lineexplosion] (round (_v1)))\n        Transition positions ((x) + ((_v2) * ([sin v] of (direction) ))) ((y) + ((_v2) * ([cos v] of (direction) ))) (size) speed: [1]\n        Transition direction ((_v4) + (direction)) speed: (_v3)\n        change [_v2 v] by (((_v5) - (_v2)) / (_v3))\n        change [_v1 v] by ((2.5) / (costume))\n    end\n    repeat ((.8) * (costume))\n        switch costume to (join [lineexplosion] (round (_v1)))\n        Transition positions ((x) + ((_v2) * ([sin v] of (direction) ))) ((y) + ((_v2) * ([cos v] of (direction) ))) (size) speed: [1]\n        Transition direction ((_v4) + (direction)) speed: (_v3)\n        change [_v2 v] by (((_v5) - (_v2)) / (_v3))\n        change [_v1 v] by ((2.5) / (costume))\n        change [ghost v] effect by ((125) / (_v3))\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(clone_id) = [RE]> then\n    set [_v1 v] to [1]\n    set [_v2 v] to [0]\n    repeat until <(round (_v1)) = [23]>\n        switch costume to (join [rectexplosion] (round (_v1)))\n        Transition direction ((_v4) + (direction)) speed: (_v3)\n        Transition positions ((x) + ((_v2) * ([sin v] of (direction) ))) ((y) + ((_v2) * ([cos v] of (direction) ))) (size) speed: [1]\n        change [_v1 v] by ((2.5) / (costume))\n        change [_v2 v] by ((((_v5) - (_v2)) / (_v3)) + (1))\n    end\n    delete this clone\nend\n\ndefine 💥 Rect explosion (x) (y) (s) (r) (zrot) (spread) (speed) (framespeed) (rot) (count)\nset [_v5 v] to (r)\nset [direction v] to (zrot)\nset [_v4 v] to (rot)\nset [_v3 v] to (speed)\nset [costume v] to (framespeed)\nrepeat (count)\n    Clone same sprite [RE] spec: (x) (y) (s)\n    change [direction v] by ((spread) / (count))\nend\n\nwhen I start as a clone\nif <(clone_id) = [SE]> then\n    set [_v1 v] to [1]\n    set [_v2 v] to [0]\n    repeat until <(round (_v1)) = [22]>\n        switch costume to (join [splineexplosion] (round (_v1)))\n        Transition positions ((x) + ((_v2) * ([sin v] of (direction) ))) ((y) + ((_v2) * ([cos v] of (direction) ))) (size) speed: [1]\n        Transition direction ((_v4) + (direction)) speed: (_v3)\n        change [_v1 v] by ((5) / (costume))\n        change [_v2 v] by (((_v5) - (_v2)) / (_v3))\n    end\n    delete this clone\nend\n\ndefine 💥 Spline explosion (x) (y) (s) (r) (zrot) (spread) (speed) (framespeed) (rot) (count)\nset [_v5 v] to (r)\nset [direction v] to (zrot)\nset [_v4 v] to (rot)\nset [_v3 v] to (speed)\nset [costume v] to (framespeed)\nrepeat (count)\n    Clone same sprite [SE] spec: (x) (y) ((s) / (5))\n    change [direction v] by ((spread) / (count))\nend\n\ndefine 🖼 Set effects c/b/g (c) (b) (g)\nset [color v] to (c)\nset [brightness v] to (b)\nset [ghost v] to (g)\nset [color v] effect to (color)\nset [brightness v] effect to (brightness)\nset [ghost v] effect to (ghost)\n\ndefine 💥 Circle explosion (x) (y) (s) (r) (zrot) (spread) (speed) (framespeed) (rot) (count)\nset [_v5 v] to (r)\nset [direction v] to (zrot)\nset [_v4 v] to (rot)\nset [_v3 v] to (speed)\nset [costume v] to (framespeed)\nrepeat (count)\n    Clone same sprite [CE] spec: (x) (y) (s)\n    change [direction v] by ((spread) / (count))\nend\n\ndefine Transition positions (x) (y) (z) speed: (t)\nchange x by (((round (x)) - (round (x position))) / (t))\nchange y by (((round (y)) - (round (y position))) / (t))\nChange size by: (((round (z)) - (round (size))) / (t)) costume ph: (costume [name v])\n\ndefine 💥 Shockwave (x) (y) (s) (r) (zrot) (spread) (speed) (framespeed) (rot) (count)\nset [_v5 v] to (r)\nset [direction v] to (zrot)\nset [_v4 v] to (rot)\nset [_v3 v] to (speed)\nset [_v2 v] to (spread)\nset [costume v] to (framespeed)\nClone same sprite [SW] spec: (x) (y) (s)\n\nwhen I start as a clone\nif <(clone_id) = [GS]> then\n    🖼 Set effects c/b/g (color) [50] (ghost)\n    Transition positions [0] [0] [0] speed: [1]\n    switch costume to (gradientshock v)\n    repeat (25)\n        change [ghost v] effect by (4)\n        Transition positions [0] [0] [575] speed: [7]\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(clone_id) = [S]> then\n    switch costume to (shock v)\n    repeat until <(ghost) > [99]>\n        set [ghost v] effect to (ghost)\n        change [ghost v] by (((100) - (round (ghost))) / (_v3))\n        Transition positions (x) (y) (_v1) speed: (_v3)\n    end\n    delete this clone\nend\n\ndefine 💥 Sparkle explosion (x) (y) (s) (r) (zrot) (spread) (speed) (framespeed) (rot) (count)\nrepeat (count)\n    set [_v3 v] to (pick random (5) to (speed))\n    set [_v4 v] to (pick random (20) to (40))\n    set [costume v] to (pick random (10) to (30))\n    Clone same sprite [SP] spec: (pick random ((0) - (x)) to (x)) (pick random ((0) - (y)) to (y)) (pick random ((s) / (2.5)) to ((s) * (1.1)))\nend\n\nwhen I start as a clone\nif <(clone_id) = [SP]> then\n    Transition positions [0] [0] (size) speed: [1]\n    Transition direction [90] speed: [1]\n    switch costume to (sparkle v)\n    set [_v1 v] to [10]\n    set [_v2 v] to [0]\n    set [_v5 v] to [0]\n    set [z v] to [.9]\n    repeat until <[1] > (_v1)>\n        set [fisheye v] effect to ((5) * (round (((-45) + ((-45) * ([abs v] of ([sin v] of (_v2) ) ))) / (5))))\n        change [_v1 v] by (((0) - (round (_v1))) / (costume))\n        change [_v2 v] by (_v4)\n        Transition positions (x) (y) (((size) / (100)) * (((50) * ([sin v] of (_v2) )) + ([abs v] of (([sin v] of (_v2) ) * ((_v1) * (costume))) ))) speed: (_v3)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(clone_id) = [3]> then\n    🎥 Transition x/y/z/s/r [241] [-181] [1] [0] [90] speed: [1]\n    🎥 Disable from Cam Control? \n    🖼 Set effects c/b/g [24] (brightness) [0]\n    set [costume v] to [circle]\n    wait (1.6) seconds\n    show\n    set [_v1 v] to [0]\n    set [_v2 v] to [30]\n    repeat (45)\n        🎥 Transition x/y/z/s/r [241] [-181] [1] (_v1) [90] speed: [1]\n        change [_v1 v] by (_v2)\n        change [_v2 v] by (40)\n    end\n    ⏱ Keyframe [10]\n    delete this clone\nend\n\ndefine Text\nset [brightness v] to [0]\nrepeat (2)\n    set [_v1 v] to [1]\n    set [clone_id v] to [100]\n    repeat (15)\n        create clone of (_myself_ v)\n        change [_v1 v] by (1)\n    end\n    set [clone_id v] to [0]\n    set [brightness v] to [100]\nend\n\nwhen I start as a clone\nif <(clone_id) = [100]> then\n    🎥 Transition x/y/z/s/r [0] [0] [1] [0] [0] speed: [1]\n    🎥 Disable from Cam Control? <>\n    🖼 Set effects c/b/g [22] (brightness) [0]\n    ⏱ Frame ((.6) + (pick random (-.00000000001) to (.888999)))\n    set [costume v] to (join [name] (_v1))\n    set [_v4 v] to ((brightness) / (-20))\n    ⏱ Keyframe [1]\n    show\n    set [_v2 v] to [0]\n    set [_v3 v] to [50]\n    repeat until <(round (0)) = (round (_v3))>\n        🎥 Transition x/y/z/s/r ((_v4) + ((-177.5) + ((_v1) * (22)))) [0] [1] [80] [90] speed: [3]\n        set [y v] to (((_v3) * ([abs v] of ([sin v] of ((_v2) + ((10) * (_v1))) ) )) - (_v4))\n        change [_v2 v] by (15)\n        set [_v3 v] to ((_v3) * (.9))\n    end\n    set [y v] to (() - (_v4))\n    set [_v2 v] to [0]\n    ⏱ Keyframe [5]\n    delete this clone\nend\n\nwhen I start as a clone\nif <(clone_id) = [1]> then\n    🎥 Transition x/y/z/s/r [0] [0] [1] [0] [130] speed: [1]\n    🎥 Disable from Cam Control? \n    🖼 Set effects c/b/g [0] [0] [0]\n    set [costume v] to [logo]\n    show\n    set [_v1 v] to [0]\n    set [_v2 v] to [-50]\n    repeat (25)\n        Transition direction [90] speed: [5]\n        set [size v] to ((100) + ((_v2) * ([sin v] of (_v1) )))\n        change [_v1 v] by (35)\n        set [_v2 v] to ((.8) * (_v2))\n    end\n    repeat (10)\n        🎥 Move cam to (x) (y) [0] [0]\n        🎥 Transition x/y/z/s/r [50] [-45] [1] [98] [44] speed: [4]\n    end\n    set [_v1 v] to (x)\n    set [_v2 v] to (y)\n    set [_v3 v] to [2]\n    set [_v4 v] to [5]\n    repeat (50)\n        🎥 Move cam to (x) (y) [0] [0]\n        🎥 Transition x/y/z/s/r (_v1) (_v2) [1] [98] [44] speed: [1]\n        change [_v1 v] by (() - (_v3))\n        change [_v2 v] by (_v4)\n        change [_v3 v] by (3)\n        change [_v4 v] by (2.45)\n    end\nend\n\nwhen I start as a clone\nif <(clone_id) = [2]> then\n    🎥 Transition x/y/z/s/r [0] [0] [0] [0] [0] speed: [1]\n    🎥 Disable from Cam Control? \n    🖼 Set effects c/b/g [24] [100] (pick random (0) to (80))\n    set [costume v] to [circle]\n    wait ((1.1) + (pick random (0) to (1.111111))) seconds\n    🎥 Transition x/y/z/s/r ((pick random (-14.99999) to (14.99999)) + (item (1) of [cam x/y/z/r v])) ((pick random (-14.99999) to (14.99999)) + (item (2) of [cam x/y/z/r v])) [1] (pick random (50) to (100)) [90] speed: [1]\n    set [_v1 v] to (pick random (7.99999) to (12.99999))\n    show\n    repeat until <(Keyframe) > [1]>\n        change [x v] by (_v1)\n        change [y v] by ((0) - (_v1))\n        set [_v1 v] to ((_v1) * (.99))\n        change [size v] by ((0) - ((_v1) / (10)))\n        change [ghost v] by (.5)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(clone_id) = [101]> then\n    🎥 Transition x/y/z/s/r [0] [0] [1] [0] [90] speed: [1]\n    🎥 Disable from Cam Control? <>\n    🖼 Set effects c/b/g [24] [100] [0]\n    set [costume v] to [name_1]\n    ⏱ Keyframe [5]\n    show\n    repeat (10)\n        🎥 Transition x/y/z/s/r [0] [0] [1] [150] [90] speed: [4]\n    end\n    set [_v1 v] to [20]\n    repeat until <(Keyframe) > [6]>\n        turn right (_v1) degrees\n        change [_v1 v] by (20)\n    end\n    set [costume v] to [name_2]\n    repeat until <(Keyframe) > [7]>\n        🎥 Transition x/y/z/s/r [0] [0] [1] [150] [90] speed: [5]\n    end\n    repeat until <(Keyframe) > [9]>\n        🎥 Transition x/y/z/s/r [0] [40] [1] [150] [90] speed: [5]\n    end\n    delete this clone\nend\n\nwhen flag clicked\nLag reducer\n\ndefine Lag reducer\nreset timer\nset [clone_id v] to [LAG]\nrepeat (200)\n    create clone of (_myself_ v)\nend\nset [clone_id v] to [0]\n\nwhen I start as a clone\nif <(clone_id) = [LAG]> then\n    delete this clone\nend\n\nwhen I start as a clone\nif <(clone_id) = [103]> then\n    🎥 Transition x/y/z/s/r [0] [0] [1] [0] [90] speed: [1]\n    🎥 Disable from Cam Control? <>\n    🖼 Set effects c/b/g [0] [0] [0]\n    set [costume v] to [OC]\n    ⏱ Keyframe [9]\n    show\n    set [_v1 v] to [90]\n    set [_v2 v] to [0]\n    set [_v3 v] to [110]\n    repeat (10)\n        🎥 Transition x/y/z/s/r [0] [0] [1] [110] [90] speed: [6]\n    end\n    \n        🎥 Transition x/y/z/s/r [0] [0] [1] (_v3) (_v1) speed: [6]\n        change [_v1 v] by (_v2)\n        change [_v3 v] by (_v2)\n        change [_v2 v] by (-.5)\n    end\nend\n\nwhen I start as a clone\nif <(clone_id) = [102]> then\n    🎥 Transition x/y/z/s/r [0] [0] [1] [0] [90] speed: [1]\n    🎥 Disable from Cam Control? \n    🖼 Set effects c/b/g [24] [100] [0]\n    set [costume v] to [name_3]\n    ⏱ Keyframe [7]\n    show\n    repeat until <(Keyframe) > [9]>\n        🎥 Transition x/y/z/s/r [0] [-50] [1] [180] [90] speed: [5]\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nif <(clone_id) = [4]> then\n    🎥 Transition x/y/z/s/r [10000000] [0] [1] [200] ((0) - (direction)) speed: [1]\n    🎥 Disable from Cam Control? \n    🖼 Set effects c/b/g [0] (brightness) [0]\n    set [costume v] to [screen]\n    ⏱ Keyframe [8]\n    wait ((0) + ((_v4) / (5))) seconds\n    set [_v1 v] to [960]\n    show\n    repeat (24)\n        Set pos zrot: [0] (_v1) rot: (direction) trans: [0] [0] scalar: [1]\n        change [_v1 v] by (((round (480)) - (round (_v1))) / (4))\n    end\n    🎥 Transition x/y/z/s/r [-120] [0] [1] [300] [90] speed: [1]\n    set [costume v] to [screenangled]\n    \n        🎥 Transition x/y/z/s/r [-670] [0] [1] [200] [90] speed: [7]\n    end\nend\n\nwhen I start as a clone\nif <(clone_id) = [5]> then\n    🎥 Transition x/y/z/s/r [900] [0] [1] [200] [-90] speed: [1]\n    🎥 Disable from Cam Control? \n    🖼 Set effects c/b/g [22] [0] [0]\n    set [costume v] to [screenangled]\n    ⏱ Keyframe [9]\n    wait (.8) seconds\n    show\n    \n        🎥 Transition x/y/z/s/r [280] [0] [1] [200] [-90] speed: [7]\n    end\nend\n\ndefine Particles (count)\nset [clone_id v] to [P]\nrepeat (count)\n    create clone of (_myself_ v)\nend\nset [clone_id v] to [0]\n\nwhen I start as a clone\nif <(clone_id) = [P]> then\n    set [size v] to (pick random (10) to (40))\n    Transition positions [0] [0] (size) speed: [1]\n    Transition direction (pick random (1) to (360)) speed: [1]\n    🖼 Set effects c/b/g [0] [100] [50]\n    switch costume to (join [particle] [1])\n    set [x v] to (pick random (-15.5) to (15.5))\n    set [y v] to (pick random (0) to (20))\n    set [_v1 v] to (pick random (1.555555) to (2.3333333))\n    repeat until <[-220] > (y position)>\n        Set size to [9999] %\n        change x by (x)\n        change y by (y)\n        turn right ([abs v] of (x) ) degrees\n        change [y v] by (() - (_v1))\n        set [x v] to ((.9) * (x))\n        Set size to (size) %\n        switch costume to (join [particle] [1])\n    end\n    delete this clone\nend\n\nwhen I receive [\[intro\] over v]\nstop [other scripts in sprite v]\ndelete this clone\n\nwhen I start as a clone\nif <(clone_id) = [6]> then\n    🎥 Transition x/y/z/s/r [0] [0] [1] [0] [90] speed: [1]\n    🎥 Disable from Cam Control? \n    🖼 Set effects c/b/g [0] [100] [0]\n    set [costume v] to [text]\n    ⏱ Keyframe [9]\n    wait (.8) seconds\n    show\n    set [_v1 v] to [0]\n    \n        🎥 Transition x/y/z/s/r [0] [22] [1] ((80) + (_v1)) [90] speed: [12]\n        change [_v1 v] by (.4)\n    end\nend\n\nwhen I start as a clone\nif <(clone_id) = [7]> then\n    🎥 Transition x/y/z/s/r [-40] [0] [1] [0] [90] speed: [1]\n    🎥 Disable from Cam Control? \n    🖼 Set effects c/b/g [0] [100] [0]\n    set [costume v] to [star]\n    ⏱ Keyframe [9]\n    wait (.8) seconds\n    show\n    set [_v1 v] to [0]\n    \n        🎥 Transition x/y/z/s/r [-40] [-22] [1] ((80) + (_v1)) [90] speed: [12]\n        change [_v1 v] by (.4)\n    end\nend\n\nwhen I start as a clone\nif <(clone_id) = [8]> then\n    🎥 Transition x/y/z/s/r [40] [0] [1] [0] [90] speed: [1]\n    🎥 Disable from Cam Control? \n    🖼 Set effects c/b/g [0] [100] [0]\n    set [costume v] to [heart]\n    ⏱ Keyframe [9]\n    wait (.8) seconds\n    show\n    set [_v1 v] to [0]\n    \n        🎥 Transition x/y/z/s/r [40] [-22] [1] ((80) + (_v1)) [90] speed: [12]\n        change [_v1 v] by (.4)\n    end\nend\n\nwhen I start as a clone\nif <(clone_id) = [9]> then\n    🎥 Transition x/y/z/s/r [0] [0] [1] [0] [90] speed: [1]\n    🎥 Disable from Cam Control? \n    🖼 Set effects c/b/g [0] [100] [0]\n    set [costume v] to [follow]\n    ⏱ Keyframe [9]\n    wait (.8) seconds\n    show\n    set [_v1 v] to [0]\n    \n        🎥 Transition x/y/z/s/r [0] [-22] [1] ((80) + (_v1)) [90] speed: [12]\n        change [_v1 v] by (.4)\n    end\nend\n\nwhen I start as a clone\nif <(clone_id) = [10]> then\n    🎥 Transition x/y/z/s/r [0] [0] [1] [100] [90] speed: [1]\n    🎥 Disable from Cam Control? \n    🖼 Set effects c/b/g [0] [100] [100]\n    set [costume v] to [screen]\n    show\n    ⏱ Keyframe [9]\n    wait (2) seconds\n    repeat until <[2] > (ghost)>\n        change [ghost v] by (-5)\n    end\n    broadcast (\[Intro\] delete clones v)\n    repeat until <(ghost) > [99]>\n        change [ghost v] by (2.5)\n    end\nend\n\nwhen I start as a clone\nif <(clone_id) = [P2]> then\n    ⏱ Keyframe [1]\n    \n        if <(timer) > ((item (9) of [keyframes v]) + (.8))> then\n            go to [front v] layer\n        end\n        set [size v] to (pick random (10) to (25))\n        Transition positions (pick random (-240) to (240)) (pick random (-180) to (180)) (size) speed: [1]\n        Transition direction (pick random (1) to (360)) speed: [1]\n        🖼 Set effects c/b/g [0] [100] [100]\n        set [costume v] to (join [particle] (pick random (2) to (3)))\n        set [x v] to (pick random (-1.99999) to (1.99999))\n        set [y v] to (pick random (-1.99999) to (1.99999))\n        set [_v1 v] to (pick random (5) to (10))\n        repeat until <[52] > (ghost)>\n            Set size to [9999] %\n            change x by (x)\n            change y by (y)\n            turn right ([abs v] of (x) ) degrees\n            set [x v] to ((.99) * (x))\n            set [y v] to ((.99) * (y))\n            change [ghost v] by (((50) - (ghost)) / (_v1))\n            Set size to (size) %\n            switch costume to (costume)\n            set [ghost v] effect to (ghost)\n        end\n        set [_v1 v] to (pick random (.25) to (4))\n        repeat until <(ghost) > [98]>\n            Set size to [9999] %\n            change x by (x)\n            change y by (y)\n            turn right ([abs v] of (x) ) degrees\n            set [x v] to ((.99) * (x))\n            set [y v] to ((.99) * (y))\n            change [ghost v] by (_v1)\n            Set size to (size) %\n            switch costume to (costume)\n            set [ghost v] effect to (ghost)\n        end\n    end\nend\n\nwhen I receive [\[intro\] delete clones v]\nif <(clone_id) = [11]> then\n    show\n    repeat until <(ghost) > [99]>\n        change [ghost v] by (2)\n    end\n    broadcast (\[Intro\] over v)\nelse\n    if <not <(clone_id) = [10]>> then\n        stop [other scripts in sprite v]\n        delete this clone\n    end\nend\n\nwhen I start as a clone\nif <(clone_id) = [11]> then\n    🎥 Transition x/y/z/s/r [0] [0] [1] [100] [90] speed: [1]\n    🎥 Disable from Cam Control? \n    🖼 Set effects c/b/g [0] [100] [0]\n    set [costume v] to [shade-out]\nend\n\nwhen flag clicked\nbroadcast (\[Intro\] start v)\n\n@You win\n\ndefine Smooth glide to x: (x:) y: (y) size: (size) direction (direction) smoothness: (speed)\nrepeat until <<(round (x position)) = (x:)> and <<(round (y position)) = (y)> and <<(round (size)) = (size)> and <(round (direction)) = (direction)>>>>\n    change x by (((x:) - (x position)) / (speed))\n    change y by (((y) - (y position)) / (speed))\n    change size by (((size) - (size)) / (speed))\n    turn right (((direction) - (direction)) / (speed)) degrees\nend\n\nwhen flag clicked\nhide\ngo to [back v] layer\n\nwhen I receive [the end so ya v]\nshow\ngo to [front v] layer\nswitch costume to (costume1 v)\nSmooth glide to x: [89] y: [25] size: [100] direction [90] smoothness: [10]\n\nwhen flag clicked\ngo to x: (89) y: (-374)\n\n@Thumbnail\n\nwhen flag clicked\nhide\ngo to [back v] layer\n\n
★★ Platformer - Dino ★★ \nThe theme of this platformer is dino. I have tried my best to make it less generic lol. Every levels are possible, you can search me up on YT to see a demo on this game.\n\n★★ Instructions ★★\nUse arrow keys / WASD to control the dino. Remember to utilise the down / s key •ᴗ• Avoid spikes and saws. Try to collect as many oranges as possible if you want to challenge yourself heheheheh\n\n★★ Credits ★★\nTiles, dinos, spikes and saws downloaded from itch.io (Days Bygone)\n\nA basic platformer tutorial from @Outspire's website\n\nOriginal Music by @CauchySheep - \nUtopia / Happiness (You can use it if you want, just rmb to give credit ^^)\n\n★★ Tags ★★\n#games #platformers #dino #dinosaurs 