Rescue (A Platformer)

Instructions: ※リミックスです!\n左右キーで動きます.\nコラボ作品で素材を使わせていただこうかなーと思い、とりあえずリミックスさせていただきました!\n(流行目的だとか、評価数稼ぎなどではないです!!!)

@Stage\n\nwhen flag clicked\nforever\n    play sound [bensound-goinghigher v] until done\nend\n\n@Player\n\nwhen flag clicked\nset [frames v] to [4]\nset [frame v] to [0]\n\ndefine Costume\nswitch costume to (hitbox v)\nif <(Jump/Fall) < [3]> then\n    if <(Frame) = [0]> then\n        switch costume to (idle v)\n    else\n        switch costume to ([floor v] of ((2) + ((Frame) mod (6))) )\n    end\nelse\n    if <(Yv) > [0]> then\n        switch costume to (jump v)\n    else\n        switch costume to (fall v)\n    end\nend\n\nwhen flag clicked\nset [level v] to [1]\ngo to x: (-170) y: (-30)\nset [yv v] to [0]\nset [xv v] to [0]\nforever\n    if <<not <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > (x position)>>>> and <not <<key (left arrow v) pressed?> or <<(mouse x) < (x position)> and <mouse down?>>>>> then\n        set [frame v] to [0]\n    else\n        change [frame v] by ((2) / (Frames))\n    end\n    Costume\nend\n\ndefine Platforming Physics\nif <<key (right arrow v) pressed?> or <<mouse down?> and <(mouse x) > (x position)>>> then\n    change [xv v] by (1.5)\n    point in direction (90)\nend\nif <<key (left arrow v) pressed?> or <<mouse down?> and <(mouse x) < (x position)>>> then\n    change [xv v] by (-1.5)\n    point in direction (-90)\nend\nset [xv v] to ((Xv) * (0.8))\nchange x by (Xv)\nif <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 ((0) - (Xv))\n                    change y by (-4)\n                end\n            end\n        end\n    end\nend\nchange [jump/fall v] by (1)\nchange [yv v] by (-1)\nchange y by (Yv)\nif <touching (ground v)?> then\n    change y by ((0) - (Yv))\n    set [jump/fall v] to [0]\n    set [yv v] to [0]\nend\nchange y by (-1)\nif <<<not <touching color (#4d0000)?>> and <touching (ground v)?>> and <<key (up arrow v) pressed?> or <<mouse down?> and <((mouse y) - (y position)) > [50]>>>> then\n    set [yv v] to [12]\nend\nchange y by (1)\nif <touching (spikes v)?> then\n    Fade\nend\nif <touching (trampoline v)?> then\n    change y by ((0) - (Yv))\n    change x by ((0) - (Xv))\n    set [yv v] to [17]\n    if <<key (up arrow v) pressed?> or <<mouse down?> and <((mouse y) - (y position)) > [50]>>> then\n        set [yv v] to [12]\n    end\nend\nif <touching (flag v)?> then\n    broadcast (Slide v)\n    Fade\n    change [level v] by (1)\nend\nif <(y position) < [-150]> then\n    Fade\nend\nif <touching (portal v)?> then\n    Fade\n    broadcast (End v)\nend\n\nwhen flag clicked\nforever\n    Platforming Physics\nend\n\ndefine Fade\nrepeat (5)\n    change [ghost v] effect by (25)\nend\ngo to x: (-170) y: (-30)\nset [yv v] to [0]\nset [xv v] to [0]\nwait (0.05) seconds\nrepeat (5)\n    change [ghost v] effect by (-25)\nend\n\nwhen I receive [reset v]\nFade\n\n@Ground\n\nwhen flag clicked\ngo to x: (0) y: (25)\npoint in direction (90)\nset size to (100) %\nforever\n    switch costume to (Level)\nend\n\n@Flag\n\nwhen flag clicked\ngo to x: (200) y: (-135)\npoint in direction (90)\nshow\nforever\n    next costume\n    wait (0.03) seconds\nend\n\nwhen flag clicked\nforever\n    if <(Level) = [10]> then\n        hide\n    end\nend\n\n@Spikes\n\nwhen flag clicked\ngo to x: (0) y: (25)\npoint in direction (90)\ngo to [back v] layer\nforever\n    switch costume to (Level)\nend\n\n@Trampoline\n\nwhen flag clicked\ngo to x: (0) y: (25)\ngo to [back v] layer\nforever\n    switch costume to (Level)\nend\n\n@Portal\n\nwhen flag clicked\nswitch costume to (portal v)\ngo to [back v] layer\nhide\nforever\n    if <(Level) = [10]> then\n        go to x: (130) y: (-70)\n        set [size v] to [0]\n        set size to (0) %\n        show\n        repeat (25)\n            change size by (((100) - (size)) / (5))\n            set [size v] to [1]\n        end\n        if <(Size) = [1]> then\n            set size to (100) %\n            stop [this script v]\n        end\n    end\nend\n\n@End\n\nwhen flag clicked\nset [ghost v] effect to (100)\nhide\n\nwhen I receive [end v]\ngo to x: (0) y: (0)\ngo to [front v] layer\nset size to (0) %\nshow\nrepeat (25)\n    change size by (((100) - (size)) / (5))\n    change [ghost v] effect by (-5)\nend\nrepeat (10)\n    change [brightness v] effect by (10)\nend\nstop [all v]\n\n@Slides\n\nwhen flag clicked\nhide\n\nwhen I receive [slide v]\nset [ghost v] effect to (100)\ngo to x: (0) y: (500)\ngo to [front v] layer\nshow\nrepeat (35)\n    change y by (((0) - (y position)) / (5))\n    change [ghost v] effect by (-4)\nend\nwait (0.1) seconds\nrepeat (35)\n    change y by (((-500) - (y position)) / (5))\n    change [ghost v] effect by (4)\nend\nhide\n\n@TN\n\nwhen flag clicked\ngo to x: (0) y: (25)\nforever\n    set [ghost v] effect to (100)\n    go to [front v] layer\nend\n\ngo to x: (0) y: (0)\n\n@Reset Button\n\nwhen flag clicked\ngo to x: (205) y: (150)\nset size to (70) %\nshow\nforever\n    if <touching (mouse-pointer v)?> then\n        change size by (((85) - (size)) / (3))\n    else\n        change size by (((70) - (size)) / (3))\n    end\n    if <<touching (mouse-pointer v)?> and <mouse down?>> then\n        broadcast (Reset v)\n        wait until <not <mouse down?>>\n    end\nend\n\nwhen I receive [reset v]\nchange size by (((60) - (size)) * (0.5))\n\n