One Day in Japan - A platformer (#games)
@Stage\n\nwhen flag clicked\nforever\n    if <(LEVEL) = [8]> then\n        switch backdrop to (backdrop4 v)\n    else\n        switch backdrop to (rays v)\n    end\nend\n\nwhen flag clicked\nforever\n    play sound [ninja music v] until done\nend\n\n@water particles \n\nwhen flag clicked\nhide\ngo to x: (217) y: (113)\nset [id# v] to [1]\nforever\n    if <(LEVEL) = [7]> then\n        repeat until <not <(LEVEL) = [7]>>\n            create clone of (_myself_ v)\n        end\n    end\nend\n\nwhen I start as a clone\nif <(id#) = [1]> then\n    go to [back v] layer\n    show\n    set size to (pick random (30) to (50)) %\n    set [ghost v] effect to (pick random (0) to (80))\n    set [brightness v] effect to (pick random (-50) to (10))\n    set [y v] to (pick random (0) to (-1))\n    set [x v] to (pick random (-1) to (-2))\n    repeat (55)\n        change x by (x)\n        change y by (y)\n        change [y v] by (-0.2)\n    end\n    delete this clone\nend\n\ncreate clone of (_myself_ v)\n\n@fire particles\n\nwhen flag clicked\nhide\ngo to x: (0) y: (-180)\nforever\n    if <(LEVEL) = [2]> then\n        create clone of (_myself_ v)\n    end\nend\n\nwhen I start as a clone\nswitch costume to (pick random (1) to (2))\ngo to x: (pick random (-100) to (100)) y: (-150)\nshow\nset size to (pick random (50) to (60)) %\nset [ghost v] effect to (pick random (20) to (80))\nset [brightness v] effect to (pick random (-50) to (10))\nset [y v] to (pick random (3) to (0))\nset [x v] to (pick random (-1) to (1))\nrepeat (25)\n    change x by (x)\n    change y by (y)\n    change [y v] by (0.1)\n    change size by (-2)\nend\ndelete this clone\n\n@ninja\n\ndefine Platformer physics\nset drag mode [not draggable v]\nif <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n    point in direction (90)\nend\nif <<key (left arrow v) pressed?> or <<key (a v) pressed?> or <<mouse down?> and <(x position) > (mouse x)>>>> then\n    point in direction (-90)\nend\nif <not <touching (water v)?>> then\n    change [yv v] by (-1)\n    if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(x position) > (mouse x)>>> then\n        change [xv v] by (-1)\n    end\n    if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n        change [xv v] by (1)\n    end\n    set [xv v] to ((Xv) * (0.9))\n    change x by (Xv)\nelse\n    change [yv v] by (-0.3)\n    if <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(x position) > (mouse x)>>> then\n        change [xv v] by (-0.7)\n    end\n    if <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> then\n        change [xv v] by (0.7)\n    end\n    set [xv v] to ((Xv) * (0.9))\n    change x by (Xv)\nend\nif <<<<<touching (ground v)?> or <touching (stones v)?>> or <<touching (stones2 v)?> or <touching (stones3 v)?>>> or <touching (block v)?>> or <touching (moving platforms v)?>> then\n    change y by (1)\nend\nif <<<<<touching (ground v)?> or <touching (stones v)?>> or <<touching (stones2 v)?> or <touching (stones3 v)?>>> or <touching (block v)?>> or <touching (moving platforms v)?>> then\n    change y by (1)\nend\nif <<<<<touching (ground v)?> or <touching (stones v)?>> or <<touching (stones2 v)?> or <touching (stones3 v)?>>> or <touching (block v)?>> or <touching (moving platforms v)?>> then\n    change y by (1)\nend\nif <<<<<touching (ground v)?> or <touching (stones v)?>> or <<touching (stones2 v)?> or <touching (stones3 v)?>>> or <touching (block v)?>> or <touching (moving platforms v)?>> then\n    change y by (1)\nend\nif <<<<<touching (ground v)?> or <touching (stones v)?>> or <<touching (stones2 v)?> or <touching (stones3 v)?>>> or <touching (block v)?>> or <touching (moving platforms v)?>> then\n    change y by (-4)\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) + (20))>>> then\n        set [yv v] to [15]\n        if <(Xv) > [0]> then\n            set [xv v] to [-10]\n        else\n            set [xv v] to [10]\n        end\n    end\nend\nchange y by (Yv)\nif <touching (moving platforms v)?> then\n    if <(y position) > [-50]> then\n        set x to (round ([x position v] of [moving platforms v]))\n    end\nend\nif <touching (stones v)?> then\n    if <(Yv) > [0]> then\n        broadcast (destroy_stone v)\n    end\nend\nif <touching (stones2 v)?> then\n    if <(Yv) > [0]> then\n        broadcast (destroy_stone2 v)\n    end\nend\nif <touching (stones3 v)?> then\n    if <(Yv) > [0]> then\n        broadcast (destroy_stone3 v)\n    end\nend\nif <touching (?-bock v)?> then\n    if <(Yv) > [0]> then\n        if <([costume # v] of [?-bock v]) = [1]> then\n            broadcast (destroy_?block v)\n        end\n    end\nend\nif <touching (water v)?> then\n    set [yv v] to [-1]\nend\nif <<<<<touching (ground v)?> or <touching (stones v)?>> or <<touching (stones2 v)?> or <touching (stones3 v)?>>> or <touching (block v)?>> or <touching (moving platforms v)?>> then\n    change y by ((Yv) * (-1))\n    set [yv v] to [0]\nend\nchange y by (-1)\nif <<<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > ((y position) + (20))>>> and <<<<<touching (ground v)?> or <touching (stones v)?>> or <<touching (stones2 v)?> or <touching (stones3 v)?>>> or <touching (block v)?>> or <touching (moving platforms v)?>>> then\n    set [yv v] to [15]\nend\nif <<<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > ((y position) + (20))>>> and <touching (water v)?>> then\n    set [yv v] to [8]\nend\nchange y by (1)\nif <<<touching (spikes v)?> or <<touching (enemy v)?> or <touching (another_danger v)?>>> or <touching (lava v)?>> then\n    if <touching (spikes v)?> then\n        set [deadx v] to (x position)\n        broadcast (bloodanimation v)\n        wait (0.1) seconds\n    end\n    if <not <touching (enemy v)?>> then\n        broadcast (oof v)\n        go to x: (-200) y: (0)\n        set [xv v] to [0]\n        set [yv v] to [0]\n    else\n        if <[-3] > (Yv)> then\n            broadcast (enemy_killed v)\n            wait (0.2) seconds\n        else\n            broadcast (oof v)\n            go to x: (-200) y: (0)\n            set [xv v] to [0]\n            set [yv v] to [0]\n        end\n    end\nend\nif <(y position) < [-180]> then\n    go to x: (-200) y: (0)\n    set [xv v] to [0]\n    set [yv v] to [0]\nend\nif <not <(LEVEL) = [11]>> then\n    if <(x position) > [215]> then\n        broadcast (LEVEL UP! v)\n        hide\n        go to x: (-200) y: (0)\n        wait (2) seconds\n        change [level v] by (1)\n        go to x: (-200) y: (0)\n        show\n    end\nend\nif <touching (trampolins v)?> then\n    set [yv v] to [25]\nend\n\nwhen flag clicked\nset [deadx v] to [0]\nset [master_talking v] to [0]\nset [event v] to [0]\nhide\nset size to (40) %\nset [level v] to [3]\nswitch costume to (costume1 v)\n\nwhen I receive [start v]\ngo to x: (-200) y: (-46)\nshow\nset [level v] to [1]\ngo to x: (-180) y: (0)\nforever\n    if <(master_talking) = [0]> then\n        Platformer physics\n        if <key (r v) pressed?> then\n            go to x: (-200) y: (0)\n        end\n    end\nend\n\ndefine movingplatformscript\n\ndefine Direction\n\nrepeat until \n\nwhen I receive [level_check v]\ngo to x: (-200) y: (0)\n\nwhen I receive [restart v]\ngo to x: (-200) y: (0)\n\nwhen flag clicked\nforever\n    if <(event) = [0]> then\n        if <(master_talking) = [0]> then\n            if <<<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<mouse down?> and <(mouse x) > (x position)>>> or <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<mouse down?> and <(x position) > (mouse x)>>>> then\n                if <<<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > ((y position) + (20))>>> and <(Yv) > [1]>> then\n                    switch costume to (costume9 v)\n                else\n                    switch costume to (costume2 v)\n                    repeat (7)\n                        if <<<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > ((y position) + (20))>>> and <(Yv) > [1]>> then\n                            switch costume to (costume9 v)\n                        else\n                            next costume\n                        end\n                    end\n                end\n            else\n                if <<<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<mouse down?> and <(mouse y) > ((y position) + (20))>>> and <(Yv) > [1]>> then\n                    switch costume to (costume9 v)\n                else\n                    switch costume to (standing v)\n                end\n            end\n        else\n            switch costume to (standing v)\n        end\n    end\nend\n\nwhen I start as a clone\nswitch costume to (hitframe v)\n\nwhen I receive [sushievent v]\nwait (1) seconds\nset [master_talking v] to [1]\nset [event v] to [1]\npoint in direction (90)\nswitch costume to (costume9 v)\nwait (0.1) seconds\nswitch costume to (sushiwasbad2 v)\nwait (0.1) seconds\nswitch costume to (sushiwasbad2 v)\n\nwhen I receive [wrongdecision v]\nwait (1) seconds\ngo to x: (-214) y: (0)\nset [master_talking v] to [0]\nset [event v] to [0]\n\nwhen I receive [rightdecision v]\nwait (0.3) seconds\nset [master_talking v] to [0]\nset [event v] to [0]\n\nwhen flag clicked\nforever\n    if <touching (water v)?> then\n        go [backward v] (4) layers\n    else\n        go to [front v] layer\n        go [backward v] (5) layers\n    end\nend\n\nif <touching (spikes v)?> then\n\nbroadcast (bloodanimation v)\n\nwait until <not <touching (spikes v)?>>\n\nwhen I receive [outro v]\nstop [other scripts in sprite v]\n\n@ground\n\nwhen flag clicked\nbroadcast (Level_check v)\ngo to [front v] layer\nforever\n    switch costume to (LEVEL)\nend\n\nwhen I receive [level up! v]\n\nwhen I receive [start v]\nswitch costume to (costume4 v)\nset [level v] to [1]\nbroadcast (Level_check v)\n\n@Spikes\n\nset [pixelate v] effect to (0)\n\nwhen flag clicked\nforever\n    switch costume to (LEVEL)\nend\n\n@trampolins\n\nwhen flag clicked\nforever\n    if <touching (ninja v)?> then\n        switch costume to (kostüm2 v)\n        wait (0.15) seconds\n    else\n        switch costume to (kostüm1 v)\n    end\nend\n\nwhen flag clicked\ncreate clone of (_myself_ v)\nforever\n    if <(LEVEL) = [9]> then\n        go to x: (-100) y: (-90)\n        show\n    else\n        hide\n    end\nend\n\nwhen I start as a clone\nforever\n    if <touching (sprite2 v)?> then\n        switch costume to (kostüm2 v)\n        wait (0.1) seconds\n    else\n        switch costume to (kostüm1 v)\n    end\nend\n\nwhen flag clicked\n\nforever\n    \n        point in direction (90)\n        show\n        set y to ()\n        set x to (40)\n    else\n        hide\n    end\nend\n\nhide\n\nwhen I start as a clone\nforever\n    if <(LEVEL) = [9]> then\n        go to x: (60) y: (-90)\n        show\n    else\n        hide\n    end\nend\n\n@Water\n\nwhen flag clicked\ncreate clone of (_myself_ v)\nswitch costume to (costume1 v)\ngo to [back v] layer\ngo to x: (10) y: (25)\nset [ghost v] effect to (50)\ngo to [front v] layer\nhide\nforever\n    if <(LEVEL) = [7]> then\n        go to [back v] layer\n        show\n        forever\n            if <<(LEVEL) = [7]> or <(LEVEL) = [8]>> then\n                change y by ([sin v] of ((variable_sin) * (7)) )\n                change [variable_sin v] by (1)\n            else\n                hide\n            end\n        end\n    else\n        hide\n    end\nend\n\nwhen I start as a clone\nswitch costume to (costume2 v)\ngo to [back v] layer\ngo to x: (10) y: (15)\nset [ghost v] effect to (50)\ngo to [front v] layer\nhide\nforever\n    if <(LEVEL) = [7]> then\n        go to [back v] layer\n        show\n        forever\n            if <<(LEVEL) = [7]> or <(LEVEL) = [8]>> then\n                change y by ([sin v] of ((variable_sin) * (4)) )\n                change [variable_sin v] by (1)\n            else\n                hide\n            end\n        end\n    else\n        hide\n    end\nend\n\nchange [level v] by (1)\n\n@Lava\n\nchange [ghost v] effect by (10)\n\nchange [ghost v] effect by (-10)\n\nwhen flag clicked\nforever\n    next costume\n    wait (0.2) seconds\n    set [ghost v] effect to (20)\n    if <(LEVEL) = [2]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    change y by ([sin v] of ((variable) * (7)) )\n    change [variable v] by (1)\nend\n\n@Sprite15\n\nwhen this sprite clicked\nhide\nbroadcast (start v)\n\nwhen flag clicked\nforever\n    go to [front v] layer\nend\n\nwhen I receive [info v]\nhide\n\nwhen I receive [info_closed v]\nset size to (0) %\nshow\nrepeat (5)\n    change size by (10)\nend\n\nwhen flag clicked\nshow\nwait (0.2) seconds\nforever\n    go to [front v] layer\n    if <touching (mouse-pointer v)?> then\n        broadcast (start_idk v)\n        repeat until <(size) = [40]>\n            change size by (2)\n            switch costume to (costume1 v)\n        end\n    else\n        repeat until <(size) = [30]>\n            change size by (-2)\n            switch costume to (polygon 25 v)\n        end\n    end\nend\n\nset size to (60) %\n\nset size to (70) %\n\nswitch costume to (costume1 v)\n\nforever\n    go to [front v] layer\n    if <touching (mouse-pointer v)?> then\n        broadcast (start_idk v)\n        repeat until <(size) = [40]>\n            change size by (2)\n            switch costume to (costume1 v)\n        end\n    else\n        repeat until <(size) = [30]>\n            change size by (-2)\n            switch costume to (polygon 25 v)\n        end\n    end\nend\n\n@Component 12 (1)\n\nwhen flag clicked\ncreate clone of (_myself_ v)\nset size to (140) %\nshow\nswitch costume to (component 12 \(1\) v)\nforever\n    point in direction ((([sin v] of ((timer) * (100)) ) * (3)) + (90))\n    if <touching (mouse-pointer v)?> then\n        repeat until <(size) = [160]>\n            change size by (2)\n            switch costume to (costume1 v)\n        end\n    else\n        repeat until <(size) = [140]>\n            change size by (-2)\n            switch costume to (polygon 25 v)\n        end\n    end\nend\n\nwhen I receive [start v]\nhide\n\nwhen I start as a clone\nset size to (80) %\nchange y by (-50)\nchange x by (80)\nswitch costume to (component 13 \(2\) v)\nforever\n    point in direction ((([sin v] of ((timer) * (100)) ) * (3)) + (90))\nend\n\n@NinjaMaster\n\nwhen flag clicked\nhide\n\nwhen I receive [start v]\ngo to [front v] layer\nshow\nswitch costume to (costume1 v)\nwait (0.5) seconds\nset [master_talking v] to [1]\nswitch costume to (costume2 v)\nwait until <key (z v) pressed?>\nswitch costume to (costume3 v)\nwait until <not <key (z v) pressed?>>\nwait until <key (z v) pressed?>\nswitch costume to (costume4 v)\nwait until <not <key (z v) pressed?>>\nwait until <key (z v) pressed?>\nswitch costume to (costume5 v)\nwait () seconds\nwait until <not <key (z v) pressed?>>\nwait until <key (z v) pressed?>\nhide\nset [master_talking v] to [0]\nwait until <(LEVEL) = [2]>\nwait (1) seconds\nshow\nset [master_talking v] to [1]\nswitch costume to (costume6 v)\nwait until <key (z v) pressed?>\nset [master_talking v] to [0]\nwait until <not <key (z v) pressed?>>\nhide\nwait until <(LEVEL) = [3]>\nshow\nset [master_talking v] to [1]\nswitch costume to (costume7 v)\nwait until <key (z v) pressed?>\nset [master_talking v] to [0]\nwait until <not <key (z v) pressed?>>\nhide\nwait until <(LEVEL) = [6]>\nshow\nset [master_talking v] to [1]\nswitch costume to (costume8 v)\nwait until <key (z v) pressed?>\nset [master_talking v] to [0]\nwait until <not <key (z v) pressed?>>\nhide\nwait until <(LEVEL) = [7]>\nshow\nset [master_talking v] to [1]\nswitch costume to (costume9 v)\nwait until <key (z v) pressed?>\nset [master_talking v] to [0]\nwait until <not <key (z v) pressed?>>\nhide\nwait until <(LEVEL) = [9]>\nshow\nset [master_talking v] to [1]\nswitch costume to (costume10 v)\nwait until <key (z v) pressed?>\nset [master_talking v] to [0]\nwait until <not <key (z v) pressed?>>\nhide\n\nswitch costume to (costume2 v)\n\nhide\n\nset [master_talking v] to [1]\nswitch costume to (costume5 v)\nwait until <key (z v) pressed?>\n\nhide\n\nwait until <(LEVEL) = [3]>\n\n@Next-Level animation\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\nset [skip_nextlevel v] to []\nif <(clone id#) = [1]> then\n    point in direction (90)\n    switch costume to (costume2 v)\n    go to [front v] layer\n    show\n    go to x: (0) y: (400)\n    set [speed_nextlevelanimation3 v] to [0]\n    set [ghost v] effect to (80)\n    repeat (20)\n        change y by (speed_nextlevelanimation3)\n        change [speed_nextlevelanimation3 v] by (-2)\n        change [ghost v] effect by (-10)\n    end\n    set [ghost v] effect to (0)\n    wait (1) seconds\n    set [speed_nextlevelanimation3 v] to [0]\n    repeat (28)\n        change y by (speed_nextlevelanimation3)\n        change [speed_nextlevelanimation3 v] by (1)\n        change [ghost v] effect by (2)\n    end\n    set [ghost v] effect to (100)\n    delete this clone\nend\nif <(clone id#) = [2]> then\n    set size to (250) %\n    wait (0) seconds\n    go to [front v] layer\n    show\n    switch costume to (component 27 v)\n    point in direction (90)\n    go to x: (0) y: (-180)\n    set [speed_nextlevelanimation v] to [0]\n    repeat (19)\n        change y by (speed_nextlevelanimation)\n        change [speed_nextlevelanimation v] by (1)\n    end\n    wait (1) seconds\n    set [speed_nextlevelanimation v] to [0]\n    repeat (19)\n        change y by (speed_nextlevelanimation)\n        change [speed_nextlevelanimation v] by (-2)\n        change [ghost v] effect by (10)\n    end\n    delete this clone\nend\n\nif <(clone id#) = [3]> then\n    set size to (170) %\n    wait (2.4) seconds\n    go to [front v] layer\n    show\n    switch costume to (component 26 \(1\) v)\n    point in direction (90)\n    go to x: (0) y: (-180)\n    set [speed_nextlevelanimation2 v] to [0]\n    repeat (13)\n        change y by (speed_nextlevelanimation2)\n        change [speed_nextlevelanimation2 v] by (1)\n    end\n    wait (0.8) seconds\n    set [speed_nextlevelanimation2 v] to [0]\n    repeat (13)\n        change y by (speed_nextlevelanimation2)\n        change [speed_nextlevelanimation2 v] by (-2)\n    end\n    delete this clone\nend\n\nmove (10) steps\n\nwhen I start as a clone\nif <(clone id#) = [5]> then\n\nforever\n    if <touching (mouse-pointer v)?> then\n        if <mouse down?> then\n            set [skip_nextlevel v] to [skip]\n        end\n    end\nend\n\nwhen I start as a clone\nforever\n\nstop [other scripts in sprite v]\n\n\n\nif <(clone id#) = [1]> then\nif <(clone id#) = [2]> then\n    hide\nend\nif <(clone id#) = [3]> then\n    hide\nend\nif <(clone id#) = [4]> then\nif <(clone id#) = [5]> then\n\nwhen I receive [level up! v]\nset [clone id# v] to [0]\nrepeat (2)\n    change [clone id# v] by (1)\n    create clone of (_myself_ v)\nend\n\n@Sushi\n\nwhen flag clicked\nhide\nset x to (0)\nset y to (-55)\nset size to (25) %\nset [variable v] to [0]\nforever\n    change y by ([sin v] of ((variable) * (7)) )\n    change [variable v] by (1)\nend\n\nwhen flag clicked\nset [eaten v] to [0]\nforever\n    if <(LEVEL) = [6]> then\n        if <(eaten) = [0]> then\n            show\n        else\n            hide\n        end\n        if <touching (ninja v)?> then\n            repeat (2)\n                set [eaten v] to [1]\n                change size by (-10)\n            end\n            hide\n            broadcast (sushievent v)\n        end\n    else\n        hide\n    end\nend\n\n@Component 28\n\nwhen flag clicked\nset [decisioninevent v] to [0]\nhide\n\nwhen I receive [sushievent v]\nwait (0.5) seconds\nset [id#sushi v] to [0]\nrepeat (3)\n    change [id#sushi v] by (1)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nif <(id#sushi) = [1]> then\n    go to x: (0) y: (0)\n    show\n    go to [front v] layer\n    go [forward v] (0) layers\n    switch costume to (component 28 \(3\) v)\n    forever\n        wait until <(decisioninevent) > [0]>\n        delete this clone\n    end\nend\nif <(id#sushi) = [2]> then\n    show\n    go to x: (-10) y: (0)\n    go to [front v] layer\n    go [forward v] (0) layers\n    switch costume to (component 29 v)\n    forever\n        if <touching (mouse-pointer v)?> then\n            repeat until <(size) = [90]>\n                change size by (2)\n            end\n            if <mouse down?> then\n                set [decisioninevent v] to [1]\n                broadcast (rightdecision v)\n                delete this clone\n            end\n        else\n            repeat until <(size) = [80]>\n                change size by (-2)\n            end\n        end\n    end\nend\nif <(id#sushi) = [3]> then\n    go to x: (-10) y: (-70)\n    show\n    go to [front v] layer\n    go [forward v] (0) layers\n    switch costume to (component 30 v)\n    forever\n        if <touching (mouse-pointer v)?> then\n            repeat until <(size) = [90]>\n                change size by (2)\n            end\n            if <mouse down?> then\n                set [decisioninevent v] to [2]\n                broadcast (wrongdecision v)\n                delete this clone\n            end\n        else\n            repeat until <(size) = [80]>\n                change size by (-2)\n            end\n        end\n    end\nend\n\nwhen I receive [rightdecision v]\ngo to x: (0) y: (0)\nshow\nswitch costume to (component 34 v)\nwait (1) seconds\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nwhen I receive [wrongdecision v]\ngo to x: (0) y: (0)\nshow\nswitch costume to (component 33 v)\nwait (1) seconds\nset [level v] to [4]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\nchange [level v] by (3)\n\nwhen I start as a clone\nforever\n    wait until <(decisioninevent) > [0]>\n    delete this clone\nend\n\n@Sprite3\n\nwhen flag clicked\nhide\ngo [backward v] (6) layers\nset [ghost v] effect to (50)\nswitch costume to (costume1 v)\nwait until <(LEVEL) = [5]>\nshow\nwait until <(LEVEL) = [6]>\nhide\nswitch costume to (costume2 v)\nwait until <(LEVEL) = [10]>\nshow\nwait until <(LEVEL) = [11]>\nhide\n\n@kEtChUp particles\n\nwhen flag clicked\nhide\n\nwhen I start as a clone\nhide\nset [ghost v] effect to (0)\nset x to (deadx)\nwait (pick random (0) to (0.1)) seconds\nchange x by (pick random (-25) to (25))\ngo to [back v] layer\ngo [forward v] (9) layers\nset y to (-40)\nshow\nset [velocity v] to [0]\nrepeat until <touching (ground v)?>\n    change [velocity v] by (-0.5)\n    change y by (velocity)\nend\nchange y by (3)\nset [velocity v] to [3]\nrepeat (5)\n    change [velocity v] by (-0.5)\n    change y by (velocity)\nend\nset [velocity v] to [0]\nrepeat (5)\n    change [velocity v] by (-0.5)\n    change y by (velocity)\nend\nset [velocity v] to [2]\nrepeat (4)\n    change [velocity v] by (-0.5)\n    change y by (velocity)\nend\nset [velocity v] to [0]\nrepeat (4)\n    change [velocity v] by (-0.5)\n    change y by (velocity)\nend\nset [velocity v] to [1]\nrepeat (2)\n    change [velocity v] by (-0.5)\n    change y by (velocity)\nend\nset [velocity v] to [0]\nrepeat (2)\n    change [velocity v] by (-0.5)\n    change y by (velocity)\nend\nrepeat (10)\n    change [ghost v] effect by (10)\nend\ndelete this clone\n\nwhen I receive [bloodanimation v]\nrepeat (4)\n    create clone of (_myself_ v)\nend\n\n@block\n\nwhen flag clicked\ngo to x: (-90) y: (-81)\nforever\n    if <(LEVEL) = [9]> then\n        show\n        if <touching (ninja v)?> then\n            if <not <touching (spikes v)?>> then\n                if <([y position v] of [ninja v]) < [60]> then\n                    if <([x position v] of [ninja v]) > (x position)> then\n                        repeat until <not <touching (ninja v)?>>\n                            change x by (-10)\n                        end\n                    else\n                        repeat until <not <touching (ninja v)?>>\n                            change x by (10)\n                        end\n                    end\n                end\n            end\n        end\n    else\n        hide\n    end\nend\n\nset [level v] to [9]\n\n@golden sword\n\nwhen flag clicked\nhide\nwait until <(LEVEL) = [11]>\nset [iddd# v] to [0]\nrepeat (2)\n    change [iddd# v] by (1)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nif <(iddd#) = [1]> then\n    set size to (85) %\n    set [ghost v] effect to (50)\n    show\n    forever\n        turn right (2) degrees\n    end\nend\nif <(iddd#) = [2]> then\n    set size to (85) %\n    set [ghost v] effect to (50)\n    show\n    forever\n        turn left (2) degrees\n    end\nend\n\nset [level v] to [11]\n\nwhen I start as a clone\nforever\n    if <touching (ninja v)?> then\n        broadcast (outro v)\n        delete this clone\n    end\nend\n\n@Sprite1\n\nwhen I receive [outro v]\nhide list [. v]\nset [outro_id# v] to [0]\nrepeat (3)\n    change [outro_id# v] by (1)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nif <(outro_id#) = [1]> then\n    go to x: (0) y: (0)\n    switch costume to (costume1 v)\n    go to [front v] layer\n    go [forward v] (1) layers\n    show\n    set size to (100) %\nend\nif <(outro_id#) = [2]> then\n    go to x: (100) y: (-80)\n    switch costume to (costume2 v)\n    go to [front v] layer\n    go [forward v] (1) layers\n    show\n    set size to (100) %\n    forever\n        go to [front v] layer\n        point in direction ((([cos v] of ((timer) * (75)) ) * (5)) + (90))\n    end\nend\nif <(outro_id#) = [3]> then\n    switch costume to (component 1 \(11\) v)\n    go to x: (-100) y: (-120)\n    go to [front v] layer\n    go [forward v] (1) layers\n    show\n    set size to (50) %\n    forever\n        if <touching (mouse-pointer v)?> then\n            hide list [. v]\n        else\n            show list [. v]\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    show list [. v]\nend\n\n@Sprite5\n\nwhen flag clicked\nforever\n    show\n    go to [front v] layer\n    set [ghost v] effect to (100)\nend\n\n
Hello everybody!\nAfter quite some time beeing inactive, I have finally made a new game! \n\n\n 【 Double Click the green flag or you will have MASSIVE lag and bugs 】\n\nDISCLAIMER: One Day in Japan, didnt mean to offend japanese People or Japan or smth like this, I am sorry if someone feel offened because of this. The name comes because the real Ninjas are from Japan (according to Wikipedia) and so I taught that would be a good name. :) \n\nbtw I am going to love and maybe fave every creative remix, so start remixing :)\n\n        『             CONTROLS                        』\n\n♦   WAD or arrows to move\n♦   R to restart\n♦   Z to proceed in Masters Talking\n♦   Avoid Spikes, Lava, etc. \n♦   Enjoy!\n\n\n       If you enjoyed maybe leave a  ❤  and a ⭐\n\n            『              CREDITS                       』\n\n♦   A lot of Scratch Projects, Google Images for inspiration\n♦   @alphabetica for ground art\n♦   @will_wam for the music :D\n\n♦   figma, the tool with which I designed the graphics\n\n\n\n\n