Pixel Dragon Platformer! BETA

Instructions: <<THIS IS DISCONTINUED!>>\n\nWelcome to my new project - Pixel Dragon Platformer! \n\nThis is currently only in the beta so the platforms are not finished and glitches may occur. Comment below if you find any! \n\nShould I make the joystick bigger? Comment below!\n\nThis has music!\n\nControls:\nWASD / arrow keys to move.\nPress space to breathe fire. (This is not a useful feature yet.)\nTo hide mobile controls press H\n\n10 Hearts? <3 ❤️\n\nIf you enjoy comment below! \/ \/ tell me what you play on. PC or mobile?

@Stage\n\nwhen flag clicked\nforever\n    play sound [Song v] until done\nend\n\nwhen flag clicked\nforever\n    if <<<<(Movemobile?) = [L]> or <(Movemobile?) = [R]>> or <<<key (left arrow v) pressed?> or <key (right arrow v) pressed?>> or <<key (a v) pressed?> or <key (d v) pressed?>>>> and <<(Ground, touching?) = [1]> and <not <(Water, touching?) = [1]>>>> then\n        broadcast (Footsteps v)\n        wait until <not <<<<(Movemobile?) = [L]> or <(Movemobile?) = [R]>> or <<<key (left arrow v) pressed?> or <key (right arrow v) pressed?>> or <<key (a v) pressed?> or <key (d v) pressed?>>>> and <<(Ground, touching?) = [1]> and <not <(Water, touching?) = [1]>>>>>\n    end\nend\n\nwhen flag clicked\nhide variable [☁ devrunspeed v]\nforever\n    if <<(username) = [Orangepolarbear23]> and <<key (e v) pressed?> and <<key (v v) pressed?> and <key (d v) pressed?>>>> then\n        show variable [☁ devrunspeed v]\n    end\nend\n\n@Orangepolarbear23\n\nwhen flag clicked\nhide variable [coins v]\nhide\nwait (1) seconds\nshow\npoint in direction (90)\ngo to x: (0) y: (0)\nset size to (3) %\nrepeat until <(size) > [120]>\n    change size by (1)\nend\nwait (2) seconds\nrepeat until <(size) < [5]>\n    change size by (-4)\n    turn right (15) degrees\nend\nhide\nbroadcast (message1 v)\nshow variable [coins v]\n\n@Sprite1\n\nwhen I receive [message1 v]\nhide\nbroadcast (Green Flag v)\n\nwhen flag clicked\nshow\n\n@Sprite2\n\nwhen I receive [green flag v]\nforever\n    change [platform x v] by (RUN SPEED)\nend\n\nif <<(Ground, touching?) = [1]> and <<(Jumpmobile?) = [1]> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>>> then\n    set [ground, touching? v] to [0]\nend\n\nwhen flag clicked\npoint in direction (90)\nset [ground, touching? v] to [0]\nset [jump speed v] to [0]\nswitch backdrop to (backdrop1 v)\nswitch costume to (dragon v)\ngo to x: (0) y: (0)\nhide\nset size to (50) %\n\nwhen I receive [green flag v]\nshow\nforever\n    if <key (space v) pressed?> then\n        broadcast (Fire v)\n    end\n    wait until <not <key (space v) pressed?>>\nend\n\nwhen I receive [green flag v]\nforever\n    go to [front v] layer\n    if <touching color (#00a1ff)?> then\n        set [water, touching? v] to [1]\n        if <(JUMP SPEED) > [10]> then\n            set [jump speed v] to [8]\n        end\n    end\n    if <touching color (#a3a39e)?> then\n        set [top, touching? v] to [1]\n    end\n    if <not <touching color (#a3a39e)?>> then\n        set [top, touching? v] to [0]\n    end\n    if <not <touching color (#00a1ff)?>> then\n        set [water, touching? v] to [0]\n    end\n    if <touching color (#9ea3a1)?> then\n        set [left, touching? v] to [1]\n    end\n    if <not <touching color (#9ea3a1)?>> then\n        set [left, touching? v] to [0]\n    end\n    if <touching color (#a39ea0)?> then\n        set [right, toughing? v] to [1]\n    end\n    if <not <touching color (#a39ea0)?>> then\n        set [right, toughing? v] to [0]\n    end\n    if <touching color (#a39e9e)?> then\n        set [ground, touching? v] to [1]\n    end\n    if <not <touching color (#a39e9e)?>> then\n        set [ground, touching? v] to [0]\n    end\n    if <<(Movemobile?) = [R]> or <<key (right arrow v) pressed?> or <key (d v) pressed?>>> then\n        if <not <touching color (#00a3ff)?>> then\n            point in direction (90)\n            change [run speed v] by (☁ devrunspeed)\n        end\n        if <touching color (#00a1ff)?> then\n            point in direction (90)\n            change [run speed v] by (-1)\n        end\n    end\n    if <<(Movemobile?) = [L]> or <<key (left arrow v) pressed?> or <key (a v) pressed?>>> then\n        if <not <touching color (#00a3ff)?>> then\n            point in direction (-90)\n            change [run speed v] by ((☁ devrunspeed) / (-1))\n        end\n        if <touching color (#00a3ff)?> then\n            point in direction (-90)\n            change [run speed v] by (1)\n        end\n    end\n    if <not <touching color (#a39e9e)?>> then\n        if <not <touching color (#00a3ff)?>> then\n            change [jump speed v] by (1)\n        end\n        if <touching color (#00a3ff)?> then\n            change [jump speed v] by (0.125)\n        end\n    end\n    if <<(JUMP SPEED) > [0]> and <touching color (#a39e9e)?>> then\n        broadcast (GROUND v)\n    end\n    if <touching color (#ff7c00)?> then\n        broadcast (Green Flag v)\n    end\n    if <<(RUN SPEED) < [0]> and <touching color (#a39ea0)?>> then\n        set [right, toughing? v] to [1]\n        set [run speed v] to [0]\n        broadcast (RIGHT WALL v)\n    end\n    if <<(RUN SPEED) > [0]> and <touching color (#9ea3a1)?>> then\n        set [left, touching? v] to [1]\n        set [run speed v] to [0]\n        broadcast (LEFT WALL v)\n    end\n    if <touching color (#a3a39e)?> then\n        set [top, touching? v] to [1]\n        set [jump speed v] to [0]\n        broadcast (TOP v)\n    end\n    set [run speed v] to ((RUN SPEED) * (0.7))\nend\n\nif <touching color (#00a3ff)?> then\n\nwhen I receive [green flag v]\nforever\n    if <touching color (#17ff00)?> then\n        broadcast (CHECKPOINT v)\n    end\nend\n\nwhen I receive [fire v]\nswitch costume to (dragon2 v)\nwait (0.5) seconds\nswitch costume to (dragon v)\n\n@Platforms\n\nwhen I receive [green flag v]\nforever\n    if <key (w v) pressed?> then\n        if <(Water, touching?) = [0]> then\n            if <(Ground, touching?) = [1]> then\n                set [jump speed v] to [-15]\n            end\n        end\n        if <(Water, touching?) = [1]> then\n            set [jump speed v] to [-3]\n        end\n    end\nend\n\nwhen I receive [green flag v]\nforever\n    if <key (up arrow v) pressed?> then\n        if <(Water, touching?) = [0]> then\n            if <(Ground, touching?) = [1]> then\n                set [jump speed v] to [-15]\n            end\n        end\n    end\nend\n\nwhen I receive [left wall v]\nrepeat until <not <(lEFT, TOUCHING?) = [1]>>\n    change [platform x v] by (-1)\nend\nset [left, touching? v] to [1]\n\ndefine GROUND\nGROUND\n\nwhen I receive [green flag v]\nforever\n    if <(Jumpmobile?) = [1]> then\n        if <(Water, touching?) = [0]> then\n            if <(Ground, touching?) = [1]> then\n                set [jump speed v] to [-15]\n            end\n        end\n        if <(Water, touching?) = [1]> then\n            set [jump speed v] to [-3]\n        end\n    end\nend\n\nwhen flag clicked\nset [platform x v] to [2160]\nset [platform y v] to [0]\nset [check x v] to [2160]\nset [check y v] to [0]\ngo to [front v] layer\nhide\n\nwhen I receive [ground v]\nset [jump speed v] to [0]\nrepeat until <not <(Ground, touching?) = [1]>>\n    change y by (-1)\nend\nset [ground, touching? v] to [1]\n\nwhen I receive [right wall v]\nrepeat until <not <(rIGHT, TOUGHING?) = [1]>>\n    change [platform x v] by (1)\nend\nset [right, toughing? v] to [1]\n\nwhen I receive [green flag v]\nforever\n    if <(PLATFORM X) > ((2160) - (4.666667))> then\n        set [platform x v] to ((2160) - (4.666667))\n    end\n    if <(PLATFORM X) < ((-2160) + (4.666667))> then\n        set [platform x v] to ((-2160) + (4.666667))\n    end\nend\n\nwhen I receive [top v]\nrepeat until <not <(tOP, TOUCHING?) = [1]>>\n    change y by (3)\nend\nset [top, touching? v] to [1]\n\nwhen I receive [checkpoint v]\nset [check x v] to (x position)\nset [check y v] to (y position)\n\nwhen I receive [green flag v]\nshow\nswitch costume to (costume2 v)\nset size to (1000) %\nswitch costume to (costume1 v)\nset [ground, touching? v] to [0]\nset [platform x v] to (check x)\nset [platform y v] to (check y)\ngo to x: (check x) y: (check y)\nbroadcast (PLATFORM START v)\n\nwhen I receive [green flag v]\nforever\n    change y by (JUMP SPEED)\nend\n\nwhen I receive [green flag v]\nforever\n    set x to (PLATFORM X)\nend\n\nwhen I receive [green flag v]\nforever\n    if <key (up arrow v) pressed?> then\n        if <(Water, touching?) = [1]> then\n            set [jump speed v] to [-3]\n        end\n    end\nend\n\n@Sprite4\n\nwhen flag clicked\npoint in direction (90)\ngo to x: (0) y: (0)\nset size to (50) %\nhide\n\nwhen I receive [fire v]\nstart sound [music_594921426791_filec20ad4d76fe97759aa27a0c99bff6710 v]\nshow\nwait (0.5) seconds\nhide\n\nwhen [right arrow v] key pressed\npoint in direction (90)\n\nwhen [left arrow v] key pressed\npoint in direction (-90)\n\nwhen [d v] key pressed\npoint in direction (90)\n\nwhen [a v] key pressed\npoint in direction (-90)\n\nwhen flag clicked\nforever\n    if <(Movemobile?) = [L]> then\n        point in direction (-90)\n    end\n    if <(Movemobile?) = [R]> then\n        point in direction (90)\n    end\nend\n\nwhen I receive [green flag v]\nforever\n    if <(Movemobile?) = [L]> then\n        point in direction (-90)\n    end\n    if <(Movemobile?) = [R]> then\n        point in direction (90)\n    end\nend\n\n@reserve\n\n@Sprite3\n\nswitch costume to (costume2 v)\n\n\n\nwhen flag clicked\nhide\n\nwhen flag clicked\n\nshow\n\nwhen I receive [green flag v]\nswitch costume to (costume2 v)\ngo to x: (-179) y: (-109)\nset [movemobile? v] to [C]\npoint in direction (90)\nset size to (150) %\nforever\n    go to x: (-179) y: (-109)\n    if <<touching (mouse-pointer v)?> and <mouse down?>> then\n        switch costume to (costume3 v)\n        broadcast (jump v)\n        repeat until <<not <(distance to [mouse-pointer v]) > [15]>> or <not <mouse down?>>>\n            point towards (mouse-pointer v)\n            move (10) steps\n            go to x: (-179) y: (-109)\n            if <<(direction) > [-180]> and <(direction) < [-30]>> then\n                set [movemobile? v] to [L]\n            end\n            if <<(direction) > [30]> and <(direction) < [180]>> then\n                set [movemobile? v] to [R]\n            end\n        end\n        switch costume to (costume2 v)\n        set [movemobile? v] to [C]\n        point in direction (90)\n    end\nend\n\nswitch costume to (costume1 v)\n\nwhen I receive [jump v]\nrepeat until <not <mouse down?>>\n    if <<(direction) > [-55]> and <(direction) < [55]>> then\n        set [jumpmobile? v] to [1]\n    end\n    wait until <not <<(direction) > [-55]> and <(direction) < [55]>>>\n    set [jumpmobile? v] to [0]\nend\n\nwhen [h v] key pressed\nhide\n\nwhen I receive [message1 v]\ngo to [front v] layer\nshow\n\n@Sprite5\n\nwhen flag clicked\nhide\ngo to x: (179) y: (-109)\n\nwhen [h v] key pressed\nhide\n\nwhen flag clicked\nforever\n    go to [front v] layer\n    if <<mouse down?> and <touching (mouse-pointer v)?>> then\n        broadcast (Fire v)\n    end\nend\n\nwhen I receive [message1 v]\nshow\n\n@Sprite6\n\nwhen I receive [footsteps v]\nif <<<<(Movemobile?) = [L]> or <(Movemobile?) = [R]>> or <<<key (left arrow v) pressed?> or <key (right arrow v) pressed?>> or <<key (a v) pressed?> or <key (d v) pressed?>>>> and <<(Ground, touching?) = [1]> and <not <(Water, touching?) = [1]>>>> then\n    repeat until <not <<<<(Movemobile?) = [L]> or <(Movemobile?) = [R]>> or <<<key (left arrow v) pressed?> or <key (right arrow v) pressed?>> or <<key (a v) pressed?> or <key (d v) pressed?>>>> and <<(Ground, touching?) = [1]> and <not <(Water, touching?) = [1]>>>>>\n        play sound [Footsteps-SoundBible v] until done\n        wait (0.1) seconds\n    end\nend\n\n@Thumbnail\n\nwhen flag clicked\nshow\ngo to x: (0) y: (0)\nhide\ngo to [front v] layer\n\n@coin1\n\nwhen flag clicked\nhide\n\nwhen I receive [message1 v]\nset [coins v] to [0]\nset instrument to (13 v)\nshow\nswitch costume to (costume2 v)\nset size to (1000) %\nswitch costume to (costume1 v)\nforever\n    go to (platforms v)\n    go to [front v] layer\n    if <touching (sprite2 v)?> then\n        hide\n        play note (95) for (0.5) beats\n        change [coins v] by (1)\n    end\nend\n\n@Sprite7\n\nwhen I receive [message1 v]\ngo to x: (160) y: (160)\nshow\nforever\n    go to [front v] layer\nend\n\nwhen flag clicked\nhide\n\n