Shadow - A Platformer | #Games #Trending #Platformer #All
@Stage\n\nwhen flag clicked\nset volume to (40) %\nplay sound [FEZ_-_Progress_-_OST v] until done\nforever\n    wait until <(Level:) = [10]>\n    stop all sounds\n    start sound [End v]\n    wait until <not <(Level:) = [10]>>\nend\n\nwhen I receive [select v]\nrepeat until <(volume) = [0]>\n    change volume by (-1)\nend\nstop all sounds\nset volume to (75) %\nwait (1) seconds\nrepeat until <(Level:) = [10]>\n    play sound [Puzzle - Fez OST v] until done\nend\n\nwhen flag clicked\nset [number v] to [0]\nforever\n    switch backdrop to (1 v)\n    wait until <([costume # v] of [level v]) = [11]>\n    switch backdrop to (5 v)\n    wait until <([costume # v] of [level v]) = [19]>\n    switch backdrop to (6 v)\n    wait (0) seconds\n    wait until <<([x position v] of [player v]) > [225]> or <([costume # v] of [level v]) = [1]>>\n    broadcast (Restart v)\n    repeat (2)\n        set [level: v] to [1]\n        switch backdrop to (2 v)\n        stop all sounds\n        wait (0) seconds\n        broadcast (Select v)\n        wait (0) seconds\n    end\nend\n\nIf Time Between [1.9] To [3.9] , then set costume to [2] .\nIf Time Between [4.9] To [6.9] , then set costume to [4] .\nIf Time Between [7.9] To [17.8] , then set costume to [2] .\nIf Time Between [17.9] To [19.9] , then set costume to [3] .\nIf Time Between [19.99] To [23.9] , then set costume to [1] .\n\ndefine If Time Between (a) To (b) , then set costume to (cn) .\nif <<(current [hour v]) > (a)> and <(current [hour v]) < (b)>> then\n    switch backdrop to (cn)\nend\n\nwhen I receive [continue v]\nplay sound [Fez - Original Game Soundtrack - Formations \[HD\] v] until done\n\n@Level\n\nwhen I receive [select v]\nwait (0) seconds\nforever\n    if <([x position v] of [player v]) > [225]> then\n        broadcast (Next v)\n    end\nend\n\nwhen flag clicked\nhide variable [time: v]\nhide variable [☁ world record: v]\nset [level: v] to [0]\nswitch costume to (level 1 v)\nwait until <(costume [number v]) = [10]>\nset [time: v] to ([output v] of [rounder engine v])\nif <([output v] of [rounder engine v]) < (☁ World Record:)> then\n    set [☁ world record: v] to (Time:)\nend\nshow variable [☁ world record: v]\nshow variable [time: v]\nwait until <(costume [number v]) = [11]>\nhide variable [time: v]\nhide variable [☁ world record: v]\n\nwhen I receive [next v]\nchange [level: v] by (1)\nnext costume\n\n@Player\n\nwhen flag clicked\nforever\n    switch costume to (orbby the blob v)\n    wait (pick random (2) to (4.0)) seconds\n    switch costume to (blink v)\n    wait (pick random (.2) to (.5)) seconds\nend\n\ndefine Move (step) Steps\nchange [falling v] by (1)\nrepeat (step)\n    set [last value v] to (x position)\n    change x by ((X Speed) / (step))\n    Touching Solid?\n    if <(Touching) > [0]> then\n        Slope Or Wall?\n    end\n    set [last value v] to (y position)\n    change y by ((Y Speed) / (step))\n    Touching Solid?\n    if <(Touching) > [0]> then\n        set y to (Last Value)\n        if <(Y Speed) < [0]> then\n            set [falling v] to [0]\n        end\n        set [y speed v] to [0]\n    end\nend\n\nwhen I receive [select v]\nreset timer\nset [ypos v] to [1]\ngo to x: (-175) y: (item (ypos) of [y position v])\nif <(Mobile?) = [0]> then\n    forever\n        Direction\n        Computer\n        Trail\n        Touching Spikes?\n    end\nelse\n    forever\n        Direction\n        Mobile\n        Trail\n        Touching Spikes?\n    end\nend\n\nwhen I receive [next v]\nchange [ypos v] by (1)\ngo to x: (-180) y: (item (ypos) of [y position v])\n\ndefine Slope Or Wall?\nchange y by (1)\nTouching Solid?\nif <(Touching) > [0]> then\n    change y by (1)\n    Touching Solid?\n    if <(Touching) > [0]> then\n        change y by (-2)\n        set x to (Last Value)\n        set [x speed v] to [0]\n        stop [this script v]\n    end\nend\n\nwhen I receive [start over v]\ngo to x: (-180) y: (item (ypos) of [y position v])\n\ndefine Mobile\nif <(Can Move?) = [1]> then\n    if <(Stick Y) > [.8]> then\n        if <(Falling) < [8]> then\n            set [y speed v] to (Jump Height)\n        end\n    end\n    change [x speed v] by ((Stick X) * (Mobile Speed))\n    set [x speed v] to ((X Speed) * (.85))\n    change [y speed v] by (Gravity)\n    Move (([abs v] of (X Speed) ) + ([abs v] of (Y Speed) )) Steps\nend\n\ndefine Computer\nif <(Can Move?) = [1]> then\n    if <(Can Move?) = [1]> then\n        if <<<key (space v) pressed?> or <key (w v) pressed?>> or <key (up arrow v) pressed?>> then\n            if <(Falling) < [8]> then\n                set [y speed v] to (Jump Height)\n            end\n        end\n        if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n            change [x speed v] by (() - (Speed))\n            point in direction (-90)\n        end\n        if <<key (d v) pressed?> or <key (right arrow v) pressed?>> then\n            point in direction (90)\n            change [x speed v] by (Speed)\n        end\n        set [x speed v] to ((X Speed) * (.85))\n        change [y speed v] by (-1)\n        Move (([abs v] of (X Speed) ) + ([abs v] of (Y Speed) )) Steps\n    end\nend\n\ndefine Touching Solid?\nif <touching (level v)?> then\n    set [touching v] to [1]\nelse\n    set [touching v] to [0]\nend\n\ndefine Direction\nif <<(Stick X) > [0]> or <(Stick X) = [0]>> then\n    point in direction (90)\nelse\n    point in direction (-90)\nend\n\nreplace item (ypos) of [y position v] with (([floor v] of (y position) ) + (4))\n\ngo to x: (-180) y: (item (ypos) of [y position v])\n\ndefine Touching Spikes?\nif  then\n    broadcast (Start Over v)\nend\n\ndefine Trail\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nclear graphic effects\nset [brightness v] effect to (-100)\nset size to (([size v] of (Myself)) - (25)) %\nrepeat until <(size) < [15]>\n    change size by (-5)\n    change [ghost v] effect by (5)\nend\ndelete this clone\n\nwhen flag clicked\nrepeat (10)\n    set size to (100) %\n    set [myself v] to [Player]\n    set [jump height v] to [10]\n    set [speed v] to [1.5]\n    set [mobile speed v] to [2]\n    set [ypos v] to [0]\n    set [can move? v] to [0]\n    set [gravity v] to [-1]\n    set [y speed v] to [0]\n    go to x: (-175) y: (-70)\n    set rotation style [left-right v]\nend\n\nwait until <([costume # v] of [level v]) = [15]>\n\nset size to (50) %\nset [jump height v] to [5]\nset [speed v] to ((1.5) / (2))\nset [mobile speed v] to [1]\nwait until <([costume # v] of [level v]) = [16]>\nset [jump height v] to [10]\nset [speed v] to [1.5]\nset [mobile speed v] to [2]\n\n@Thumbnail\n\nwhen flag clicked\nset [ghost v] effect to (100)\nforever\n    go to [front v] layer\nend\n\nwhen [timer v] > ((0) - (timer))\nforever\n    go to [front v] layer\nend\n\n@Title Screen\n\nwhen I receive [select v]\nrepeat (20)\n    change [ghost v] effect by (5)\nend\n\nwhen flag clicked\nclear graphic effects\nrepeat (2)\n    go to [front v] layer\nend\n\ndefine Front\n\n@Shadow Level\n\nwhen flag clicked\nswitch costume to (shadow level v)\nforever\n    go to (level v)\n    change y by (10)\n    change x by (-3)\n    if <(Test) > [.9]> then\n        hide\n    else\n        show\n    end\n    set [ghost v] effect to (25)\nend\n\nwhen I receive [next v]\nnext costume\n\n@Selection\n\nwhen flag clicked\nset [1 v] to [1]\nforever\n    set y to (([sin v] of ((timer) * (100)) ) * (5))\nend\n\nwhen flag clicked\ngo to x: (0) y: (0)\nswitch costume to (start v)\nshow\nrepeat (3)\n    go to [front v] layer\nend\nset [selected? v] to [0]\nset [mobile? v] to [0]\nwait until <<key (any v) pressed?> or <mouse down?>>\ngo to x: (-90) y: (-10)\nswitch costume to (uno card v)\nstart sound [Conflrm v]\ncreate clone of (_myself_ v)\nrepeat until <(Selected?) = [1]>\n    if <touching (mouse-pointer v)?> then\n        if <mouse down?> then\n            wait until <not <mouse down?>>\n            if <touching (mouse-pointer v)?> then\n                start sound [Begin v]\n                set [selected? v] to [1]\n                set [mobile? v] to [1]\n                reset timer\n                broadcast (Select v)\n                set [can move? v] to [1]\n                repeat (5)\n                    change [ghost v] effect by (20)\n                end\n                hide\n            end\n        end\n        change size by (((125) - (size)) / (5))\n    else\n        change size by (((100) - (size)) / (5))\n    end\nend\n\nwhen I start as a clone\ngo to x: (90) y: (0)\nswitch costume to (computer v)\nrepeat until <(Selected?) = [1]>\n    if <touching (mouse-pointer v)?> then\n        if <mouse down?> then\n            wait until <not <mouse down?>>\n            if <touching (mouse-pointer v)?> then\n                start sound [Begin v]\n                set [selected? v] to [1]\n                set [mobile? v] to [0]\n                set [can move? v] to [1]\n                reset timer\n                broadcast (Select v)\n            end\n        end\n        change size by (((125) - (size)) / (5))\n    else\n        change size by (((100) - (size)) / (5))\n    end\nend\n\nwhen I start as a clone\nrepeat until <(Selected?) = [1]>\n    set y to (([sin v] of ((timer) * (100)) ) * (-5))\nend\nrepeat (5)\n    change [ghost v] effect by (20)\nend\ndelete this clone\n\nwhen I receive [select v]\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\n@Control Stick\n\nwhen I start as a clone\nset size to (100) %\nrepeat (5)\n    go to [front v] layer\nend\nswitch costume to (stick v)\nset [ghost v] effect to (50)\nforever\n    set [stick power v] to []\n    set [stick x v] to [0]\n    set [stick y v] to [0]\n    repeat until <mouse down?>\n        go to (Base Sprite)\n    end\n    if <(distance to [mouse-pointer v]) < ((size) / (2))> then\n        Stick Drag\n    else\n        wait until <not <mouse down?>>\n    end\nend\n\ndefine Stick Drag\nrepeat until <not <mouse down?>>\n    go to (mouse-pointer v)\n    point towards (Base Sprite)\n    turn right (180) degrees\n    set [stick direction v] to (direction)\n    set [stick power v] to (distance to [(Base Sprite) v])\n    if <(Stick Power) > (Max Stick)> then\n        move ((Max Stick) - (Stick Power)) steps\n        set [stick power v] to (Max Stick)\n    end\n    set [stick power v] to ((Stick Power) / (Max Stick))\n    set [stick x v] to ((Stick Power) * ([sin v] of (Stick Direction) ))\n    set [stick y v] to ((Stick Power) * ([cos v] of (Stick Direction) ))\nend\n\nwhen I receive [select v]\nchange [number v] by (1)\nwait (0) seconds\nif <(Number) = [1]> then\n    if <(Mobile?) = [1]> then\n        show\n        set [base sprite v] to [Control Stick]\n        set [max stick v] to [27]\n        switch costume to (base v)\n        go to x: (-160) y: (-100)\n        set [ghost v] effect to (60)\n        create clone of (_myself_ v)\n    end\nend\n\nwhen flag clicked\nhide\nrepeat (4)\n    go to [front v] layer\nend\n\n@Shadow Player\n\nwhen flag clicked\nforever\n    set size to ([size v] of [player v]) %\n    create clone of (_myself_ v)\n    go to (player v)\n    change x by (-10)\n    change y by (10)\n    if <(Test) > [.9]> then\n        hide\n    else\n        show\n    end\n    if <<([costume # v] of [level v]) > [10]> and <([costume # v] of [level v]) < [19]>> then\n        hide\n    else\n        show\n    end\n    set [ghost v] effect to (25)\nend\n\nwhen I receive [start over v]\ngo to x: (-175) y: (-70)\n\nwhen I receive [hide v]\nchange [test v] by (1)\n\nwhen I start as a clone\nclear graphic effects\nset [ghost v] effect to (50)\nset size to (100) %\nwait (0) seconds\nset size to (([size v] of [player v]) - (25)) %\nrepeat until <(size) < [15]>\n    change size by (-5)\n    change [ghost v] effect by (5)\nend\ndelete this clone\n\n@Extra\n\n@Spikes\n\nwhen flag clicked\nforever\n    switch costume to (costume1 v)\n    go to [front v] layer\n    go [backward v] (3) layers\n    repeat (10)\n        hide\n    end\n    wait until <([costume # v] of [level v]) = [4]>\n    show\n    wait until <([costume # v] of [level v]) = [5]>\n    next costume\n    wait until <([costume # v] of [level v]) = [6]>\n    switch costume to (costume5 v)\n    wait until <([costume # v] of [level v]) = [7]>\n    show\n    switch costume to (costume8 v)\n    wait until <([costume # v] of [level v]) = [8]>\n    switch costume to (costume3 v)\n    show\n    wait until <([costume # v] of [level v]) = [9]>\n    hide\n    wait until <([costume # v] of [level v]) = [16]>\n    switch costume to (costume6 v)\n    show\n    wait until <([costume # v] of [level v]) = [17]>\n    switch costume to (costume4 v)\n    wait until <([costume # v] of [level v]) = [18]>\n    switch costume to (costume7 v)\n    wait until <([costume # v] of [level v]) = [19]>\n    hide\nend\n\n@score\n\nwhen flag clicked\ngo to [back v] layer\nset [test v] to [0]\nset [level: v] to [1]\nforever\n    cloneCostume // costume: (join [~] (Level:)) xPos: [-140] yPos: [155] lineSpace: [.3]\n    if <key (0 v) pressed?> then\n        set [test v] to [1]\n    end\nend\n\ndefine cloneCostume // costume: (costume) xPos: (xpos) yPos: (ypos) lineSpace: (linespace)\nbroadcast (deleteClones2 v)\ngo to x: (xpos) y: (ypos)\nset [# v] to [1]\nrepeat (length of (costume))\n    switch costume to (letter (#) of (costume))\n    create clone of (_myself_ v)\n    change x by ((size) * (linespace))\n    change [# v] by (1)\n    go to [back v] layer\nend\nhide\n\nwhen I start as a clone\nforever\n    look // color: ((Level:) * (5)) brighness: [0] size: [75]\n    go to [back v] layer\n    if <<([costume # v] of [level v]) > [10]> and <([costume # v] of [level v]) < [19]>> then\n        hide\n    else\n        show\n    end\nend\n\ndefine look // color: (color) brighness: (brighness) size: (size)\nif <<([costume # v] of [level v]) > [10]> and <([costume # v] of [level v]) < [19]>> then\n    set [ghost v] effect to (100)\nelse\n    set [ghost v] effect to (30)\nend\nset [color v] effect to (color)\nset [brightness v] effect to (brighness)\nset size to (size) %\n\nwhen I receive [deleteclones2 v]\ndelete this clone\n\n@Rounder Engine\n\ndefine Round (#) To (n)\ndelete all of [round list v]\nset [input v] to (#)\nset [# v] to [1]\nrepeat until <(letter (#) of (Input)) = [.]>\n    wait (0) seconds\n    add (letter (#) of (Input)) to [round list v]\n    change [# v] by (1)\n    if <(length of [round list v]) > [100]> then\n        delete all of [round list v]\n        broadcast (Reset v)\n        stop [this script v]\n    end\nend\nrepeat (n)\n    add (letter (#) of (Input)) to [round list v]\n    change [# v] by (1)\nend\nset [# v] to [1]\nset [output v] to []\nrepeat until <(item (#) of [round list v]) = []>\n    set [output v] to (join (Output) (item (#) of [round list v]))\n    change [# v] by (1)\n    if <(length of [round list v]) > [100]> then\n        delete all of [round list v]\n        broadcast (Reset v)\n        stop [this script v]\n    end\nend\n\nwhen flag clicked\nset [round v] to [2]\nforever\n    Round (timer) To (Round)\nend\n\nwhen flag clicked\nset [t/f v] to [T]\n\nwhen flag clicked\nforever\n    wait (0) seconds\n    delete all of [log v]\nend\n\n@Sprite1\n\n@Sprite2\n\nwhen flag clicked\nwait (.22) seconds\nset [ghost v] effect to (0)\nrepeat (40)\n    change [ghost v] effect by (2.5)\nend\n\nwhen flag clicked\nforever\n    Front\n    go to [front v] layer\nend\n\ndefine Front\ngo to [front v] layer\n\nwhen I receive [restart v]\nset [ghost v] effect to (0)\nrepeat (40)\n    change [ghost v] effect by (2.5)\n    wait (0) seconds\nend\n\n@Sprite4\n\nwhen flag clicked\nshow\nset [ghost v] effect to (50)\nswitch costume to (costume1 v)\nset [x v] to [0]\ncreate clone of (_myself_ v)\nnext costume\nchange [x v] by (480)\nbroadcast (begin v)\nforever\n    go to [back v] layer\n    change [camera x v] by ((X Speed) / (10))\nend\n\nwhen I receive [begin v]\ngo to x: (0) y: (0)\nforever\n    show\n    repeat until <([costume # v] of [level v]) = [11]>\n        set [screen x v] to ((x) - (Camera X))\n        set x to (((Screen X) mod ((400) * (2))) - (400))\n        go to [back v] layer\n    end\n    hide\n    wait until <([costume # v] of [level v]) = [1]>\n    wait (.3) seconds\nend\n\nwhen I start as a clone\nwait until <([costume # v] of [level v]) = [11]>\nhide\nwait until <([costume # v] of [level v]) = [1]>\nshow\n\n@Sprite5\n\nwhen flag clicked\nforever\n    repeat (2)\n        hide\n    end\n    if <<(current [hour v]) > [7.9]> and <(current [hour v]) < [17.8]>> then\n        set [brightness v] effect to (-10)\n    else\n        clear graphic effects\n    end\n    wait until <([costume # v] of [level v]) = [10]>\n    show\n    wait until <([costume # v] of [level v]) = [11]>\n    hide\n    broadcast (Continue v)\nend\n\n