micros adventure (platformer)

Instructions: PLEASE COMMENT!!!\nI don't know if its just me, but its really laggy for me ever since scratch 3.0\nI WILL CHANGE INTRO!!! (it was really bad when I made it)\nMove with arrow keys\nYou can wall jump\nShoot ninja stars with space\nWARNING!!! the boss is REALLY hard!!! if you guys complain too much about it, I will change it.\nIF YOU WANT TO SEE FUTURE BOSSES, CHECK OUT MY BOSS RUSH PROJECT\nthx for 600 views

@Stage\n\n@portal\n\nwhen backdrop switches to [backdrop6 v]\ngo to x: (-13) y: (36)\n\nwhen backdrop switches to [backdrop7 v]\ngo to x: (212) y: (-145)\n\nwhen backdrop switches to [backdrop10 v]\ngo to x: (-22) y: (-71)\n\nwhen backdrop switches to [backdrop12 v]\ngo to x: (-1) y: (169)\n\nwhen backdrop switches to [backdrop13 v]\ngo to x: (147) y: (-126)\n\nwhen backdrop switches to [backdropbutt v]\ngo to x: (68) y: (-131)\n\nwhen backdrop switches to [backdrop16 v]\ngo to x: (222) y: (-151)\n\nwhen backdrop switches to [backdrop1 v]\nshow\ngo to x: (219) y: (-148)\n\nwhen backdrop switches to [backdrop20 v]\ngo to x: (16) y: (169)\n\nwhen backdrop switches to [backdrop22 v]\ngo to x: (-45) y: (90)\n\nwhen backdrop switches to [backdrop11 v]\ngo to x: (106) y: (95)\n\nwhen I receive [boss death v]\nshow\n\nwhen flag clicked\nforever\n    if <(backdrop [name v]) = [backdrop2]> then\n        hide\n    end\nend\n\nwhen backdrop switches to [backdrop19 v]\nhide\nwait until <(hearts) = [0]>\nshow\n\nwhen I receive [stop all v]\nhide\n\nwhen I receive [stop all v]\nhide\n\nset [☁ high score v] to [1000]\n\n@Player\n\nwhen backdrop switches to [backdrop5 v]\nforever\n    if <touching (lava v)?> then\n        go to x: (-185) y: (-143)\n    end\nend\n\nwhen backdrop switches to [backdrop1 v]\nshow\n\nwhen backdrop switches to [backdrop2 v]\nhide\n\nwhen backdrop switches to [backdrop10 v]\ngo to x: (-28) y: (-33)\n\nwhen backdrop switches to [backdrop11 v]\ngo to x: (-172) y: (-90)\n\nwhen [right arrow v] key pressed\npoint in direction (90)\n\nwhen [left arrow v] key pressed\npoint in direction (-90)\n\nwhen backdrop switches to [backdrop7 v]\nforever\n    if <touching (lava v)?> then\n        go to x: (-210) y: (-146)\n    end\nend\n\nwhen flag clicked\nswitch costume to (costume1 v)\nforever\n    wait (pick random (4) to (8)) seconds\n    switch costume to (costume2 v)\n    wait (0.1) seconds\n    switch costume to (costume1 v)\nend\n\nwhen flag clicked\nrepeat until <(backdrop [name v]) = [backdrop19]>\n    play sound [Vexento - Empty v] until done\nend\n\nwhen backdrop switches to [backdrop19 v]\nstop all sounds\nrepeat until <(backdrop [name v]) = [backdrop20]>\n    play sound [Megalovania.mp3 v] until done\nend\n\nwhen backdrop switches to [backdrop20 v]\nstop all sounds\nforever\n    play sound [thhefatrat jackpot ep v] until done\nend\n\ndefine None\nchange y by (y vel)\nif <<touching (terrain v)?> or <<touching (door v)?> or <touching (moving platform v)?>>> then\n    repeat ([abs v] of (y vel) )\n        if <<touching (terrain v)?> or <<touching (door v)?> or <touching (moving platform v)?>>> then\n            change y by (((y vel) / ([abs v] of (y vel) )) * (-1))\n        end\n    end\n    if <<touching (terrain v)?> or <<touching (door v)?> or <touching (moving platform v)?>>> then\n        change y by (y vel)\n    end\n    if <<<(y vel) < [0.01]> or <(ceiling cling?) = [1]>> and <key (up arrow v) pressed?>> then\n        set [y vel v] to (jump height)\n    else\n        set [y vel v] to [0]\n    end\nelse\n    change [y vel v] by (-1)\nend\nif <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n    change [x vel v] by (1)\nend\nif <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n    change [x vel v] by (-1)\nend\nchange x by (x vel)\nif <<touching (terrain v)?> or <<touching (door v)?> or <touching (moving platform v)?>>> then\n    if <(slopes?) = [1]> then\n        set [old_y v] to (y position)\n        repeat (([abs v] of (x vel) ) + (1))\n            if <touching (terrain v)?> then\n                change y by (1)\n            end\n        end\n        if <<touching (terrain v)?> or <<touching (door v)?> or <touching (moving platform v)?>>> then\n            set y to (old_y)\n            repeat ([ceiling v] of ([abs v] of (x vel) ) )\n                if <<touching (terrain v)?> or <<touching (door v)?> or <touching (moving platform v)?>>> then\n                    change x by (((x vel) / ([abs v] of (x vel) )) * (-1))\n                end\n            end\n            if <<touching (terrain v)?> or <<touching (door v)?> or <touching (moving platform v)?>>> then\n                change x by (([ceiling v] of ([abs v] of (x vel) ) ) * ((x vel) / ([abs v] of (x vel) )))\n            end\n            set [x vel v] to [0]\n        end\n    else\n        repeat ([ceiling v] of ([abs v] of (x vel) ) )\n            if <<touching (terrain v)?> or <<touching (door v)?> or <touching (moving platform v)?>>> then\n                change x by (((x vel) / ([abs v] of (x vel) )) * (-1))\n            end\n        end\n        if <<touching (terrain v)?> or <<touching (door v)?> or <touching (moving platform v)?>>> then\n            change x by (([ceiling v] of ([abs v] of (x vel) ) ) * ((x vel) / ([abs v] of (x vel) )))\n        end\n        set [x vel v] to [0]\n    end\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <<not <(wall jump horizontal power) = [0]>> and <not <(wall jump vertical power) = [0]>>>> then\n        change y by (-1)\n        if <<touching (terrain v)?> or <<touching (door v)?> or <touching (moving platform v)?>>> then\n            change y by (1)\n        else\n            change y by (1)\n            set [y vel v] to (wall jump vertical power)\n            change x by (1)\n            if <<touching (terrain v)?> or <<touching (door v)?> or <touching (moving platform v)?>>> then\n                set [x vel v] to (([abs v] of (wall jump horizontal power) ) * (-1))\n            end\n            change x by (-2)\n            if <<touching (terrain v)?> or <<touching (door v)?> or <touching (moving platform v)?>>> then\n                set [x vel v] to ([abs v] of (wall jump horizontal power) )\n            end\n            change x by (1)\n        end\n    end\nend\nset [x vel v] to ((x vel) * (friction))\n\nwhen backdrop switches to [backdrop23 v]\nswitch backdrop to (backdrop24 v)\nbroadcast (STOP ALL v)\n\nwhen I receive [stop all v]\nhide variable [time v]\nhide variable [☁ high score v]\nhide\nstop [all v]\n\nwhen I receive [start v]\nhide variable [☁ username v]\nset [time v] to [0]\nhide variable [☁ high score v]\nhide variable [time v]\nshow variable [time v]\nrepeat until <(backdrop [name v]) = [backdrop14]>\n    wait (0.1) seconds\n    change [time v] by (0.1)\nend\nshow variable [☁ high score v]\nforever\n    if <(☁ High Score) > (Time)> then\n        set [☁ high score v] to (round (Time))\n    end\nend\n\nwhen I receive [start v]\nforever\n    if <<touching (lava v)?> or <<touching (enemy v)?> or <<touching (enemy2 v)?> or <<touching (ninja star2 v)?> or <touching (dagger v)?>>>>> then\n        go to x: (-172) y: (-90)\n    end\nend\n\nwhen I receive [start v]\ngo to x: (-172) y: (-90)\nset [x vel v] to [0]\nset [y vel v] to [0]\nforever\n    physics (11) (0.8) (0) (1) (11) (8)\nend\n\nwhen flag clicked\nswitch backdrop to (backdrop2 v)\nforever\n    if <touching (portal v)?> then\n        switch backdrop to (next backdrop v)\n        go to x: (-172) y: (-90)\n    end\nend\n\nwhen flag clicked\nhide variable [time v]\n\n@Terrain\n\nwhen flag clicked\ngo to x: (-1) y: (-20)\n\nwhen backdrop switches to [backdrop3 v]\nswitch costume to (costume2 v)\n\nwhen backdrop switches to [backdrop7 v]\nswitch costume to (costume6 v)\n\nwhen backdrop switches to [backdrop8 v]\nswitch costume to (costume7 v)\n\nwhen backdrop switches to [backdrop9 v]\nswitch costume to (costume8 v)\n\nwhen backdrop switches to [backdrop5 v]\nswitch costume to (costume4 v)\n\nwhen backdrop switches to [backdrop4 v]\nswitch costume to (costume3 v)\n\nwhen backdrop switches to [backdrop1 v]\nswitch costume to (costume1 v)\nshow\n\nwhen backdrop switches to [backdrop6 v]\nswitch costume to (costume5 v)\nshow\n\nwhen backdrop switches to [backdrop12 v]\nswitch costume to (costume11 v)\n\nwhen backdrop switches to [backdrop11 v]\nswitch costume to (costume10 v)\n\nwhen backdrop switches to [backdrop13 v]\nswitch costume to (costume12 v)\n\nwhen backdrop switches to [backdrop2 v]\nhide\n\nwhen backdrop switches to [backdrop10 v]\nswitch costume to (costume9 v)\n\nwhen backdrop switches to [backdropbutt v]\nswitch costume to (costume13 v)\n\nwhen backdrop switches to [backdrop16 v]\nswitch costume to (costume14 v)\n\nwhen backdrop switches to [backdrop15 v]\nswitch costume to (costume14 v)\n\nwhen backdrop switches to [backdrop18 v]\nswitch costume to (costume15 v)\n\nwhen backdrop switches to [backdrop19 v]\nswitch costume to (costume1 v)\n\nwhen backdrop switches to [backdrop20 v]\nswitch costume to (costume17 v)\n\nwhen backdrop switches to [backdrop22 v]\nswitch costume to (costume18 v)\ngo to x: (-2) y: (0)\n\nwhen backdrop switches to [backdrop23 v]\ngo to x: (0) y: (0)\nswitch costume to (costume19 v)\n\nwhen I receive [stop all v]\nhide\n\n@intro\n\nwhen flag clicked\n\nswitch backdrop to (backdrop2 v)\ngo to x: (-199) y: (13)\nhide\nwait (1) seconds\nshow\nglide (2) secs to x: (210) y: (13)\ngo to x: (12) y: (173)\nglide (2) secs to x: (12) y: (-167)\ngo to x: (-202) y: (171)\nglide (2) secs to x: (208) y: (-164)\ngo to x: (12) y: (-167)\nglide (3) secs to x: (12) y: (0)\nwait (3) seconds\nswitch backdrop to (backdrop1 v)\nhide\n\nwhen flag clicked\nhide\nset [x v] to [-45]\npoint in direction (90)\ngo to x: (240) y: (62)\nwait (1) seconds\nshow\nrepeat (25)\n    change x by (x)\n    change [x v] by ((x) / (-5))\nend\ngo to x: (15) y: (62)\nwait (1) seconds\nswitch backdrop to (next backdrop v)\nhide\nbroadcast (start v)\n\nwhen I receive [stop all v]\nhide\n\n@Lava\n\nwhen backdrop switches to [backdrop2 v]\nhide\n\nwhen backdrop switches to [backdrop1 v]\nhide\n\nwhen backdrop switches to [backdrop3 v]\ngo to x: (0) y: (-187)\nswitch costume to (costume1 v)\nshow\n\nwhen backdrop switches to [backdrop4 v]\nswitch costume to (costume2 v)\ngo to x: (-47) y: (-110)\n\nwhen backdrop switches to [backdrop5 v]\nswitch costume to (costume3 v)\ngo to x: (28) y: (-37)\n\nwhen backdrop switches to [backdrop6 v]\nswitch costume to (costume4 v)\ngo to x: (-62) y: (19)\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to x: (-1) y: (-187)\n\nwhen backdrop switches to [backdrop7 v]\nswitch costume to (costume5 v)\n\nwhen backdrop switches to [backdrop8 v]\nswitch costume to (costume6 v)\ngo to x: (38) y: (25)\n\nwhen backdrop switches to [backdrop9 v]\nswitch costume to (costume5 v)\ngo to x: (-106) y: (21)\n\nwhen backdrop switches to [backdrop10 v]\nswitch costume to (costume7 v)\ngo to x: (-106) y: (21)\n\nwhen backdrop switches to [backdrop11 v]\nswitch costume to (costume8 v)\n\nwhen backdrop switches to [backdrop13 v]\nswitch costume to (costume10 v)\ngo to x: (-37) y: (-53)\n\nwhen backdrop switches to [backdropbutt v]\nswitch costume to (costume11 v)\ngo to x: (18) y: (-22)\n\nwhen backdrop switches to [backdrop12 v]\nswitch costume to (costume9 v)\n\nwhen backdrop switches to [backdrop16 v]\nhide\n\nwhen backdrop switches to [backdrop19 v]\n\nwhen backdrop switches to [backdrop23 v]\nswitch costume to (costume12 v)\ngo to x: (0) y: (0)\nshow\n\nwhen I receive [stop all v]\nhide\n\n@door\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop5 v]\nshow\ngo to x: (136) y: (-122)\n\nwhen I receive [message1 v]\nhide\ngo to x: (-220) y: (145)\n\nwhen I receive [stop all v]\nhide\n\n@key\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop5 v]\nshow\ngo to x: (-128) y: (142)\n\nwhen flag clicked\nforever\n    if <touching (player v)?> then\n        broadcast (message1 v)\n        hide\n    end\nend\n\nwhen I receive [stop all v]\nhide\n\n@ninja star\n\nwhen I start as a clone\nif <([direction v] of [player v]) = [90]> then\n    repeat until <<<touching (door v)?> or <<touching (terrain v)?> or <touching (_edge_ v)?>>> or <<touching (lava v)?> or <touching (moving platform v)?>>>\n        change x by (10)\n    end\n    delete this clone\nend\nif <([direction v] of [player v]) = [-90]> then\n    repeat until <<<touching (door v)?> or <<touching (terrain v)?> or <touching (_edge_ v)?>>> or <<touching (lava v)?> or <touching (moving platform v)?>>>\n        change x by (-10)\n    end\n    delete this clone\nend\n\nwhen I start as a clone\nforever\n    if <touching (boss v)?> then\n        wait (0.01) seconds\n        delete this clone\n    end\nend\n\nwhen I receive [stop all v]\nhide\n\nwhen flag clicked\nhide\nforever\n    if <key (space v) pressed?> then\n        show\n        create clone of (_myself_ v)\n        hide\n        wait (0.5) seconds\n    end\n    go to (player v)\nend\n\nwhen I receive [start v]\n\nwhen I start as a clone\nforever\n    turn right (-75) degrees\n    if <touching (dagger v)?> then\n        delete this clone\n    end\nend\n\n@moving platform\n\nwhen flag clicked\ngo to x: (-18) y: (174)\nhide\n\nwhen backdrop switches to [backdrop9 v]\nshow\ngo to x: (-141) y: (-131)\nforever\n    glide (3.75) secs to x: (116) y: (-131)\n    wait (2) seconds\n    glide (3.75) secs to x: (-141) y: (-131)\n    wait (2) seconds\nend\n\nwhen backdrop switches to [backdrop10 v]\nhide\ngo to x: (-35) y: (179)\n\nwhen flag clicked\n\nwhen backdrop switches to [backdrop23 v]\nshow\ngo to x: (-141) y: (-131)\nforever\n    glide (3.75) secs to x: (116) y: (-131)\n    wait (2) seconds\n    glide (3.75) secs to x: (-141) y: (-131)\n    wait (2) seconds\nend\n\nwhen backdrop switches to [backdrop23 v]\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nwait (3.75) seconds\nchange y by (50)\n\ndelete this clone\n\nwhen I receive [stop all v]\nhide\n\n@enemy\n\nwhen flag clicked\nhide\n\nwhen backdrop switches to [backdrop16 v]\nshow\ngo to x: (84) y: (-162)\nrepeat until <(backdrop [name v]) = [backdrop17]>\n    glide (0.75) secs to x: (-11) y: (-162)\n    glide (0.75) secs to x: (84) y: (-162)\nend\n\nwhen backdrop switches to [backdrop17 v]\nhide\n\nwhen flag clicked\nforever\n    if <touching (ninja star v)?> then\n        hide\n        go to x: (57) y: (166)\n    end\nend\n\nwhen backdrop switches to [backdrop20 v]\nhide\n\nwhen backdrop switches to [backdrop18 v]\nshow\nrepeat until <(backdrop [name v]) = [backdrop20   ]>\n    glide (0.75) secs to x: (-88) y: (-162)\n    glide (0.75) secs to x: (35) y: (-162)\nend\n\nwhen backdrop switches to [backdrop15 v]\nhide\n\nwhen I receive [stop all v]\nhide\n\n@enemy2\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nforever\n    if <touching (ninja star v)?> then\n        hide\n        switch backdrop to (next backdrop v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <<(backdrop [name v]) = [backdrop15]> or <(backdrop [name v]) = [backdrop18]>> then\n        show\n    else\n        hide\n    end\nend\n\nwhen flag clicked\n\nwhen backdrop switches to [backdrop15 v]\nshow\ngo to x: (84) y: (-162)\nrepeat until <(backdrop [name v]) = [backdrop18]>\n    go to x: (81) y: (-162)\n    glide (0.75) secs to x: (-3) y: (-162)\n    glide (0.75) secs to x: (81) y: (-162)\nend\n\nwhen backdrop switches to [backdrop18 v]\nrepeat until <(backdrop [name v]) = [backdrop19]>\n    go to x: (170) y: (-48)\n    glide (0.75) secs to x: (71) y: (-48)\n    glide (0.75) secs to x: (170) y: (-48)\nend\n\nwhen I receive [stop all v]\nhide\n\nwhen I receive [stop all v]\nhide\n\n@ninja star2\n\nwhen flag clicked\nhide\nwait (13.5) seconds\nforever\n    show\n    create clone of (_myself_ v)\n    hide\n    wait (pick random (0.5) to (1.5)) seconds\nend\n\nwhen flag clicked\nhide\nwait (13.5) seconds\nforever\n    go to (enemy2 v)\n    point in direction (-90)\nend\n\nwhen backdrop switches to [backdrop15 v]\nshow\n\nwhen I start as a clone\nforever\n    turn right (15) degrees\nend\n\nwhen I start as a clone\nforever\n    if <<(backdrop [name v]) = [backdrop15]> or <(backdrop [name v]) = [backdrop18]>> then\n    else\n        delete this clone\n    end\nend\n\nwhen I start as a clone\nif <([direction v] of [enemy2 v]) = [-90]> then\n    repeat until <<<touching (door v)?> or <<touching (terrain v)?> or <touching (_edge_ v)?>>> or <<touching (lava v)?> or <touching (moving platform v)?>>>\n        change x by (-10)\n    end\n    delete this clone\nend\n\nwhen backdrop switches to [backdrop20 v]\ndelete this clone\n\nwhen I receive [stop all v]\nhide\n\n@Boss\n\nwhen backdrop switches to [backdrop19 v]\ngo to x: (159) y: (-161)\nshow\nset [hearts v] to [5]\nrepeat until <(hearts) = [0]>\n    point in direction (90)\n    wait (2.5) seconds\n    glide (0.5) secs to x: (0) y: (0)\n    wait (4) seconds\n    if <(pick random (1) to (2)) = [1]> then\n        glide (0.5) secs to x: (-155) y: (-161)\n    else\n        glide (0.5) secs to x: (159) y: (-161)\n    end\nend\n\nwhen I receive [message1 v]\ngo to x: (159) y: (-161)\nwait (1) seconds\nglide (0.5) secs to x: (0) y: (0)\nwait (7.5) seconds\nglide (0.5) secs to x: (159) y: (-161)\nif <(pick random (1) to (2)) = [1]> then\n    glide (0.5) secs to x: (-155) y: (-161)\nelse\n    glide (0.5) secs to x: (159) y: (-161)\nend\n\nhide\n\nwhen backdrop switches to [backdrop19 v]\nswitch costume to (costume3 v)\nforever\n    if <touching (ninja star v)?> then\n        change [hearts v] by (-1)\n        wait (0.1) seconds\n    end\nend\n\nwhen backdrop switches to [backdrop19 v]\nforever\n    if <(hearts) = [0]> then\n        hide\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [stop all v]\nhide\n\n@Dagger\n\nwhen flag clicked\n\nwhen I start as a clone\nrepeat until <touching (terrain v)?>\n    move (15) steps\nend\nwait (10) seconds\ndelete this clone\n\nwhen I start as a clone\nforever\n    if <<<touching (player v)?> or <touching (terrain v)?>> or <touching (_edge_ v)?>> then\n        wait (0.05) seconds\n        delete this clone\n    end\nend\n\nwhen flag clicked\n\nwhen backdrop switches to [backdrop19 v]\nhide\nforever\n    go to (boss v)\n    point towards (player v)\nend\n\nwhen backdrop switches to [backdrop19 v]\nwait (2) seconds\nhide\nrepeat until <(hearts) = [0]>\n    wait (pick random (0.25) to (1)) seconds\n    show\n    create clone of (_myself_ v)\n    hide\nend\n\nwhen I receive [stop all v]\nhide\n\n@Hearts\n\nwhen flag clicked\nhide\ngo to x: (114) y: (169)\n\nwhen flag clicked\nforever\n    if <(hearts) = [1]> then\n        switch costume to (heart red v)\n    end\n    if <(hearts) = [2]> then\n        switch costume to (heart red2 v)\n    end\n    if <(hearts) = [3]> then\n        switch costume to (heart red3 v)\n    end\n    if <(hearts) = [4]> then\n        switch costume to (heart red4 v)\n    end\n    if <(hearts) = [5]> then\n        switch costume to (heart red5 v)\n    end\n    if <(hearts) = [0]> then\n        switch costume to (costume1 v)\n        broadcast (boss death v)\n    end\nend\n\nwhen backdrop switches to [backdrop19 v]\nshow\n\nwhen flag clicked\nset [hearts v] to [5]\n\nwhen I receive [stop all v]\nhide\n\n@Thumbnail\n\nwhen flag clicked\nhide\ngo to x: (0) y: (-1)\n\nwhen I receive [stop all v]\nhide\n\nshow\n\n