ᴅᴀʀᴋ ɴɪɢʜᴛ 4 || A platformer || #games #all #trending #music #art #animations #stories 

Instructions:                               Parts\nPart 1: https://scratch.mit.edu/projects/588685230/\nPart 2: https://scratch.mit.edu/projects/594311391/\nPart 3: https://scratch.mit.edu/projects/604491171/\nPart 5: https://scratch.mit.edu/projects/615294016/\nPart 6: https://scratch.mit.edu/projects/619802021/\nPart 7: https://scratch.mit.edu/projects/619763005/\nPart 8: https://scratch.mit.edu/projects/621854444/\n                      \n                         ~ᴅᴀʀᴋ ɴɪɢʜᴛ 4~\nWelcome to ᴅᴀʀᴋ ɴɪɢʜᴛ 4! \nLove, Star and Remix!\nFollow me @hern1 for more amazing platformer!\n                               ~How to play~\nSpam the Green Flag!!! :D\nUse WAD , arrow keys or drag to move.\nAvoid red spikes, saw, lava and enemy!\nPress the button to open the door.\nALL level is possible.\n\nPart 1: https://scratch.mit.edu/projects/588685230/\nPart 2: https://scratch.mit.edu/projects/594311391/\nPart 3: https://scratch.mit.edu/projects/604491171/\n\nCredits:\nThanks to @Capt_Boanerges for the background music.\nThanks to @holybird3 for the button and the door idea.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nLove and star and follow me if you see this. :DDDD\n\n\n\n\n\n\n\n\n\n\n\n\n\n#All #Games #Trending #All #Games #Trending\n#All #Games #Trending #All #Games #Trending\n#All #Games #Trending #All #Games #Trending\n#All #Games #Trending #All #Games #Trending\n#games #all #fun #platformer #spikes #saw #lava #like #fav #art #follow #hern1 #enjoy #lol #good #enemy #ground #hope #you #enjoy #thumbnail #music #door

@Stage\n\n@RED\n\nwhen flag clicked\nforever\n    if <<<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<((mouse y) + (-20)) > (y position)> and <mouse down?>>> and <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<((mouse x) + (15)) > (x position)> and <mouse down?>>>> then\n        switch costume to (---> v)\n    else\n        if <<<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<((mouse y) + (-20)) > (y position)> and <mouse down?>>> and <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<((mouse x) - (15)) < (x position)> and <mouse down?>>>> then\n            switch costume to (<--- v)\n        else\n            if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<((mouse y) + (-20)) > (y position)> and <mouse down?>>> then\n                switch costume to (upppp v)\n            else\n                if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<((mouse x) - (-20)) > (x position)> and <mouse down?>>> then\n                    switch costume to (---> v)\n                else\n                    if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<((mouse x) + (-20)) < (x position)> and <mouse down?>>> then\n                        switch costume to (<--- v)\n                    else\n                        switch costume to (stand v)\n                    end\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\nrepeat (7)\n    switch costume to (costume1 v)\n    change size by (-4)\n    change [ghost v] effect by (10)\nend\ndelete this clone\n\nwhen flag clicked\nset [level v] to [1]\ngo to [front v] layer\ngo [backward v] (3) layers\nshow\nset size to (45) %\nswitch costume to (stand v)\ngo to x: (-190) y: (-60)\nset drag mode [not draggable v]\npoint in direction (90)\nforever\n    create clone of (_myself_ v)\n    set rotation style [left-right v]\n    if <<<mouse down?> and <(x position) > (mouse x)>> or <<key (left arrow v) pressed?> or <key (a v) pressed?>>> then\n        create clone of (_myself_ v)\n        change [x v] by (-1)\n    end\n    if <<<mouse down?> and <(x position) < (mouse x)>> or <<key (right arrow v) pressed?> or <key (d v) pressed?>>> then\n        create clone of (_myself_ v)\n        change [x v] by (1)\n    end\n    if <<<<(y position) < (mouse y)> and <mouse down?>> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>> and <<<(x position) < (mouse x)> and <mouse down?>> or <<key (right arrow v) pressed?> or <key (d v) pressed?>>>> then\n        create clone of (_myself_ v)\n    end\n    if <<<<(y position) < (mouse y)> and <mouse down?>> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>> and <<<(mouse x) < (x position)> and <mouse down?>> or <<key (left arrow v) pressed?> or <key (a v) pressed?>>>> then\n        create clone of (_myself_ v)\n    end\n    set [x v] to ((X) * (0.9))\n    change x by (X)\n    if <<<touching (level v)?> or <<touching (invisible v)?> or <touching (button v)?>>> or <touching (door v)?>> then\n        change y by (1)\n        if <<touching (door v)?> or <<touching (level v)?> or <<touching (invisible v)?> or <touching (button v)?>>>> then\n            change y by (1)\n            if <<touching (door v)?> or <<touching (level v)?> or <<touching (invisible v)?> or <touching (button v)?>>>> then\n                change y by (1)\n                if <<touching (door v)?> or <<touching (level v)?> or <<touching (invisible v)?> or <touching (button v)?>>>> then\n                    change y by (1)\n                    if <<touching (door v)?> or <<touching (level v)?> or <<touching (invisible v)?> or <touching (button v)?>>>> then\n                        change y by (1)\n                        if <<touching (door v)?> or <<touching (level v)?> or <<touching (invisible v)?> or <touching (button v)?>>>> then\n                            change x by ((X) * (-1))\n                            change y by (-5)\n                            if <<<mouse down?> and <(y position) < (mouse y)>> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>> then\n                                if <(X) > [0]> then\n                                    set [x v] to [-7]\n                                else\n                                    set [x v] to [7]\n                                end\n                                set [y v] to [14]\n                            else\n                                set [x v] to [0]\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (-1)\n    if <<<touching (level v)?> or <<touching (invisible v)?> or <touching (button v)?>>> or <touching (door v)?>> then\n        if <<<mouse down?> and <(y position) < (mouse y)>> or <<key (up arrow v) pressed?> or <key (w v) pressed?>>> then\n            set [y v] to [13]\n            point in direction ((Y) * (0.5))\n        end\n    end\n    change y by (1)\n    change [y v] by (-1)\n    change y by (Y)\n    if <<<touching (level v)?> or <<touching (invisible v)?> or <touching (button v)?>>> or <touching (door v)?>> then\n        change y by ((Y) * (-1))\n        set [y v] to [0]\n    end\n    hide variable [x v]\n    if <<(x position) > [230]> and <not <(level) = [11]>>> then\n        broadcast (next level v)\n        change [level v] by (1)\n        set [y v] to [0]\n        set [x v] to [0]\n        go to x: (-190) y: (-60)\n    end\n    if <(y position) < [-170]> then\n        set [x v] to [0]\n        set [y v] to [0]\n        go to x: (-190) y: (-60)\n    end\nend\n\nwhen flag clicked\nforever\n    set [x v] to (x position)\n    set [y v] to (y position)\nend\n\ngo to x: (-190) y: (-24)\ngo to x: (-201) y: (14)\n\nwhen flag clicked\nforever\n    if <<touching (enemy v)?> or <<<touching (spikey v)?> or <touching (lava v)?>> or <touching (saw v)?>>> then\n        broadcast (Mati v)\n    end\nend\n\nwhen I receive [mati v]\nhide\nwait (0) seconds\nshow\nset [x v] to [0]\nset [y v] to [0]\nset [x v] to [-210]\nset [y v] to [-60]\nset x to (-210)\nset y to (-60)\nstop [this script v]\n\nhide\n\n@level\n\nwhen I receive [next level v]\nswitch costume to (join [Level] (level))\n\nwhen flag clicked\ngo to x: (0) y: (0)\nswitch costume to (level1 v)\n\n@SPIKEY\n\nwhen flag clicked\nforever\n    if <(level) = [1]> then\n        show\n        switch costume to (costume2 v)\n        go to [back v] layer\n    else\n        if <(level) = [2]> then\n            switch costume to (costume1 v)\n            show\n            go to [back v] layer\n        else\n            if <(level) = [3]> then\n                switch costume to (costume5 v)\n                show\n                go to [back v] layer\n            else\n                if <(level) = [4]> then\n                    switch costume to (costume3 v)\n                    show\n                    go to [back v] layer\n                else\n                    if <(level) = [6]> then\n                        switch costume to (costume6 v)\n                        go to [back v] layer\n                    else\n                        if <(level) = [7]> then\n                            switch costume to (costume4 v)\n                            show\n                            go to [back v] layer\n                        else\n                            if <(level) = [10]> then\n                                switch costume to (costume7 v)\n                                show\n                                go to [back v] layer\n                            else\n                                hide\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\nend\n\nhide\n\nshow\n\n@Lava\n\nwhen flag clicked\nhide\n\nforever\n\nwhen I receive [next level v]\nif <(level) = [2]> then\n    switch costume to (costume2 v)\n    show\n    go to [back v] layer\n    forever\n        set y to ((3) * ([sin v] of ((timer) * (180)) ))\n    end\nelse\n    if <(level) = [6]> then\n        switch costume to (costume2 v)\n        show\n        go to [back v] layer\n        forever\n            set y to ((3) * ([sin v] of ((timer) * (180)) ))\n        end\n    else\n        if <(level) = [6]> then\n            switch costume to (costume2 v)\n            show\n            go to [back v] layer\n            forever\n                set y to ((3) * ([sin v] of ((timer) * (180)) ))\n            end\n        else\n            if <(level) = [8]> then\n                forever\n                    hide\n                    go to x: (0) y: (-200)\n                    wait (1) seconds\n                    switch costume to (costume2 v)\n                    show\n                    go to [back v] layer\n                    glide (3) secs to x: (0) y: (170)\n                    wait (1) seconds\n                    glide (3) secs to x: (0) y: (-200)\n                    set y to ((3) * ([sin v] of ((timer) * (180)) ))\n                end\n            else\n                if <(level) = [10]> then\n                    switch costume to (costume2 v)\n                    show\n                    go to [back v] layer\n                    forever\n                        set y to ((3) * ([sin v] of ((timer) * (180)) ))\n                    end\n                else\n                    hide\n                end\n            end\n        end\n    end\nend\n\n@Saw\n\nwhen flag clicked\nforever\n    if <(level) = [1]> then\n        set size to (100) %\n        go to x: (7) y: (-103)\n        turn right (15) degrees\n        switch costume to (sharpy2 v)\n        go to [back v] layer\n        show\n    else\n        if <(level) = [6]> then\n            go to x: (0) y: (0)\n            set size to (90) %\n            switch costume to (sharpy v)\n            turn right (5) degrees\n            go to [back v] layer\n            show\n        else\n            if <(level) = [4]> then\n                go to x: (-233) y: (56)\n                set size to (90) %\n                switch costume to (sharpy2 v)\n                turn right (15) degrees\n                go to [back v] layer\n                show\n            else\n                hide\n            end\n        end\n    end\nend\n\n@Invisible\n\nwhen flag clicked\nforever\n    if <(level) = [5]> then\n        switch costume to (level7 v)\n        set [ghost v] effect to (100)\n        show\n    else\n        if <(level) = [7]> then\n            switch costume to (level2 v)\n            set [color v] effect to (1)\n            show\n        else\n            if <(level) = [11]> then\n                hide\n            else\n                hide\n            end\n        end\n    end\nend\n\nswitch costume to (level3 v)\nshow\n\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\n@Invisible2\n\nwhen flag clicked\nforever\n    if <(level) = [5]> then\n        show\n        go to x: (0) y: (0)\n        switch costume to (level7 v)\n    else\n        hide\n    end\nend\n\nset [ghost v] effect to (100)\n\nswitch costume to (level3 v)\nshow\n\n@Enemy\n\nwhen I receive [next level v]\nforever\n    if <(level) = [4]> then\n        show\n        go to x: (-143) y: (-92)\n        repeat until <(level) = [6]>\n            glide (0.8) secs to x: (7) y: (-92)\n            wait (0.5) seconds\n            glide (0.8) secs to x: (-143) y: (-92)\n            wait (0.5) seconds\n        end\n    else\n        if <(level) = [10]> then\n            show\n            go to x: (133) y: (-62)\n            repeat until <(level) = [6]>\n                glide (0.5) secs to x: (205) y: (-62)\n                wait (0.5) seconds\n                glide (0.5) secs to x: (133) y: (-62)\n                wait (0.5) seconds\n            end\n        else\n            hide\n        end\n    end\nend\n\nwhen flag clicked\nhide\n\n@Text\n\nwhen I receive [next level v]\nif <(level) = [2]> then\n    show\n    switch costume to (costume1 v)\nelse\n    if <(level) = [6]> then\n        show\n        switch costume to (costume2 v)\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nhide\n\nset [ghost v] effect to (0)\n\n@Button\n\nwhen flag clicked\nhide\n\nforever\n\nwhen I receive [on  \(⊙o⊙\)？ v]\nswitch costume to (on v)\n\nwhen I receive [next level v]\nif <(level) = [2]> then\n    show\n    go to [back v] layer\n    go to x: (-75) y: (83)\n    switch costume to (off v)\nelse\n    if <(level) = [4]> then\n        show\n        go to [back v] layer\n        go to x: (-139) y: (29)\n        switch costume to (off v)\n    else\n        if <(level) = [7]> then\n            show\n            go to [back v] layer\n            go to x: (-19) y: (123)\n            switch costume to (off v)\n        else\n            if <(level) = [9]> then\n                show\n                go to [back v] layer\n                go to x: (-61) y: (77)\n                switch costume to (off v)\n            else\n                if <(level) = [11]> then\n                    show\n                    go to [back v] layer\n                    go to x: (126) y: (126)\n                    switch costume to (off v)\n                else\n                    hide\n                end\n            end\n        end\n    end\nend\n\n@Door\n\nwhen I receive [on  \(⊙o⊙\)？ v]\nif <(level) = [9]> then\n    show\n    glide (1.5) secs to x: (131) y: (180)\n    hide\nelse\n    show\n    glide (1.5) secs to x: (216) y: (180)\n    hide\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [next level v]\nif <(level) = [2]> then\n    go to x: (216) y: (126)\n    show\nelse\n    if <(level) = [4]> then\n        go to x: (216) y: (126)\n        show\n    else\n        if <(level) = [7]> then\n            go to x: (214) y: (-49)\n            show\n        else\n            if <(level) = [9]> then\n                go to x: (131) y: (-49)\n                show\n            else\n                if <(level) = [11]> then\n                    go to x: (195) y: (-64)\n                    show\n                else\n                    hide\n                end\n            end\n        end\n    end\nend\n\n@Button2\n\nwhen flag clicked\nforever\n    if <(level) = [2]> then\n        show\n        go to (button v)\n        set [ghost v] effect to (100)\n        if <touching (red v)?> then\n            broadcast (On  \(⊙o⊙\)？ v)\n            stop [this script v]\n        end\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [4]> then\n        show\n        go to (button v)\n        set [ghost v] effect to (100)\n        if <touching (red v)?> then\n            broadcast (On  \(⊙o⊙\)？ v)\n            stop [this script v]\n        end\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [7]> then\n        show\n        go to (button v)\n        set [ghost v] effect to (100)\n        if <touching (red v)?> then\n            broadcast (On  \(⊙o⊙\)？ v)\n            stop [this script v]\n        end\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    if <(level) = [9]> then\n        show\n        go to (button v)\n        set [ghost v] effect to (100)\n        if <touching (red v)?> then\n            broadcast (On  \(⊙o⊙\)？ v)\n            stop [this script v]\n        end\n    else\n        hide\n    end\nend\n\n@Thumbnail\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nforever\n    play sound [A_Bit_Puzzled v] until done\nend\n\nshow\ngo to [front v] layer\n\n