Not so Fair N Square | PLATFORMER | #Game #Platformer
@Stage\n\nwhen flag clicked\nset volume to (0) %\nwait (3) seconds\nset volume to (100) %\nforever\n    play sound [Good Vibes Only v] until done\nend\n\n@Player\n\ndefine |Platforming|  Acceleration: (acceleration) Jump Height: (jump height) Gravity: (gravity) Wall jump Strength: (wall jump) Slope: (slope)\nswitch costume to (hitbox v)\nchange [yv v] by ((gravity) * (-1))\nif <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n    change [xv v] by (acceleration)\nend\nif <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n    change [xv v] by ((acceleration) * (-1))\nend\nset [xv v] to ((xv) * (0.9))\nchange x by (xv)\nif <<touching (ground v)?> or <touching (fadeplatform v)?>> then\n    repeat (slope)\n        if <<touching (ground v)?> or <touching (fadeplatform v)?>> then\n            change y by (1)\n        end\n    end\n    if <<touching (ground v)?> or <touching (fadeplatform v)?>> then\n        change y by ((slope) * (-1))\n        repeat until <not <<touching (ground v)?> or <touching (fadeplatform v)?>>>\n            if <(xv) > [0]> then\n                change x by (-1)\n            else\n                change x by (1)\n            end\n        end\n        if <<key (up arrow v) pressed?> or <key (w v) pressed?>> then\n            set [yv v] to ((jump height) - (2))\n            if <([abs v] of (xv) ) = (xv)> then\n                set [xv v] to ((wall jump) * (-1))\n            else\n                set [xv v] to (wall jump)\n            end\n        else\n            set [xv v] to [0]\n        end\n    end\nend\nchange y by (yv)\nif <<touching (ground v)?> or <touching (fadeplatform v)?>> then\n    repeat until <not <<touching (ground v)?> or <touching (fadeplatform v)?>>>\n        if <(yv) > [0]> then\n            change y by (-1)\n        else\n            change y by (1)\n        end\n    end\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <(yv) < [0]>> then\n        set [yv v] to (jump height)\n    else\n        set [yv v] to [0]\n    end\nend\nswitch costume to (costume1 v)\nif <touching (trampoleneshit v)?> then\n    repeat until <not <touching (trampoleneshit v)?>>\n        set [yv v] to ((jump height) - (18))\n        if <(yv) > [0]> then\n            change y by (-0.1)\n        else\n            change y by (0.1)\n        end\n    end\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> and <(yv) < [0]>> then\n        broadcast (Jump v)\n        set [yv v] to ((jump height) * (1.65))\n    else\n        set [yv v] to [0]\n    end\nend\n\nwhen flag clicked\nshow\ngo to x: (-215) y: (50)\npoint in direction (90)\nset rotation style [left-right v]\nset [xv v] to [0]\nset [yv v] to [0]\nforever\n    |Platforming|  Acceleration: [1.2] Jump Height: [13] Gravity: [1] Wall jump Strength: [10] Slope: [5]\nend\n\nwhen flag clicked\nforever\n    if <key (space v) pressed?> then\n        broadcast (Trail v)\n        stop [this script v]\n    end\nend\n\nwhen I receive [trail v]\nset [ghost v] effect to (0)\nshow\nforever\n    create clone of (_myself_ v)\nend\n\nwhen flag clicked\nforever\n    if <(x position) > [230]> then\n        set size to (100) %\n        broadcast (Next Level v)\n        go to x: (-215) y: (-75)\n    end\nend\n\nwhen flag clicked\nforever\n    if <<touching (lava v)?> or <<touching (danger v)?> or <touching (saw v)?>>> then\n        broadcast (Death v)\n        set [ghost v] effect to (0)\n        set size to (150) %\n        go to x: (-210) y: (-80)\n        wait (0.01) seconds\n        set size to (100) %\n    end\nend\n\nwhen flag clicked\nforever\n    if <key (q v) pressed?> then\n        change [level v] by (1)\n        wait until <not <key (q v) pressed?>>\n    end\nend\n\nbroadcast (Death v)\n\nwhen I start as a clone\nforever\n    repeat (17)\n        change [ghost v] effect by (10)\n        change size by (-5)\n    end\n    delete this clone\nend\n\nswitch costume to (death v)\nrepeat (4)\n    next costume\nend\n\nswitch costume to (costume1 v)\nset [ghost v] effect to (50)\nglide (0.4) secs to x: (-210) y: (-90)\n\n@Danger\n\nwhen flag clicked\nforever\n    go to x: (0) y: (0)\n    show\n    switch costume to (LEVEL)\nend\n\n@Level\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\n\nwhen flag clicked\nset [ghost v] effect to (5)\nset size to (175) %\nset [brightness v] effect to (100)\nhide\nset [digits v] to [0]\nrepeat (10)\n    change [digits v] by (1)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\ngo to [front v] layer\nforever\n    go to x: ((-20) + ((digits) * (21))) y: ((([cos v] of ([direction v] of [spin1 v]) ) * (4)) + (155))\n    point in direction ((([sin v] of ([direction v] of [spin1 v]) ) * (6)) + (90))\n    if <(digits) > (length of (LEVEL))> then\n        hide\n    else\n        show\n        if <(length of (LEVEL)) > [9]> then\n            switch costume to (letter (digits) of (round (LEVEL)))\n        else\n            switch costume to (letter (digits) of (round (LEVEL)))\n        end\n    end\nend\n\n@Minutes2\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\n\nset [level v] to [12]\n\nwhen flag clicked\nset [ghost v] effect to (5)\nset size to (175) %\nset [brightness v] effect to (100)\nhide\nset [digits v] to [0]\nrepeat (10)\n    change [digits v] by (1)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\ngo to [front v] layer\nforever\n    go to [front v] layer\n    go to x: ((160) + ((digits) * (-21))) y: ((([cos v] of ([direction v] of [spin1 v]) ) * (4)) + (155))\n    point in direction ((([sin v] of ([direction v] of [spin1 v]) ) * (6)) + (90))\n    if <(digits) > (length of (Minutes))> then\n        hide\n    else\n        show\n        switch costume to (letter (digits) of (Minutes))\n    end\nend\n\nwhen I start as a clone\ngo to [front v] layer\nforever\n    go to x: ((160) + ((digits) * (-21))) y: ((([cos v] of ([direction v] of [spin1 v]) ) * (4)) + (155))\n    point in direction ((([sin v] of ([direction v] of [spin1 v]) ) * ()) + (90))\n    if <(digits) > (length of (Minutes))> then\n        hide\n    else\n        show\n        switch costume to (letter (digits) of (Minutes))\n    end\nend\n\n@Death\n\nwhen flag clicked\nhide\ngo to x: (0) y: (0)\n\nwhen I receive [death v]\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nshow\nrepeat (10)\n    change [ghost v] effect by (10)\nend\ndelete this clone\n\n@Seconds\n\nwhen I receive [game over v]\nstop [other scripts in sprite v]\n\nwhen flag clicked\nset [ghost v] effect to (5)\nset size to (175) %\nset [brightness v] effect to (100)\nhide\nset [digits v] to [0]\nrepeat (10)\n    change [digits v] by (1)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\ngo to [front v] layer\nforever\n    go to x: ((150) + ((digits) * (21))) y: ((([cos v] of ([direction v] of [spin1 v]) ) * (4)) + (155))\n    point in direction ((([sin v] of ([direction v] of [spin1 v]) ) * (6)) + (90))\n    if <(digits) > (length of (Seconds))> then\n        hide\n    else\n        show\n        if <(length of (Seconds)) > [9]> then\n            switch costume to (letter (digits) of (round (Seconds)))\n        else\n            switch costume to (letter (digits) of (round (Seconds)))\n        end\n    end\nend\n\nhide\n\nwhen flag clicked\nset [minutes v] to [0]\nforever\n    go to [front v] layer\n    set [seconds v] to (round (timer))\n    if <(Seconds) > [59]> then\n        change [minutes v] by (1)\n        reset timer\n    end\nend\n\nchange [seconds v] by (1)\n\n@Ground\n\nwhen flag clicked\nset [level v] to [1]\nforever\n    switch costume to (LEVEL)\nend\n\nwhen I receive [next level v]\nchange [level v] by (1)\n\n@Clouds\n\nwhen flag clicked\nhide\ngo to x: (36) y: (100)\nforever\n    create clone of (_myself_ v)\n    wait (4) seconds\nend\n\nwhen I start as a clone\ngo to [back v] layer\ngo [backward v] (5) layers\nshow\ngo to x: (-250) y: (pick random (120) to (190))\nset size to (pick random (50) to (75)) %\nrepeat (500)\n    move (1) steps\n    set [ghost v] effect to (45)\nend\ndelete this clone\n\n@Next Level Screen\n\nwhen I receive [next level v]\nshow\nset [ghost v] effect to (0)\ngo to [front v] layer\nrepeat (10)\n    change [ghost v] effect by (10)\n    wait (.01) seconds\nend\nhide\n\nwhen flag clicked\nhide\n\n@Thumbnail\n\nwhen flag clicked\nset [ghost v] effect to (100)\nset size to (150) %\nforever\n    go to [front v] layer\nend\n\n@TrampolenesHit\n\nwhen flag clicked\nclear graphic effects\ncreate clone of (_myself_ v)\nset [ghost v] effect to (100)\ngo to x: (0) y: (0)\nswitch costume to (1 v)\nset size to (125) %\nshow\n\nwhen I start as a clone\nforever\n    go to (trampolenes v)\n    show\n    switch costume to (hitbox v)\n    set [ghost v] effect to (100)\nend\n\nwhen flag clicked\nforever\n    if <(LEVEL) = [1]> then\n        go to x: (-10000) y: (150)\n        hide\n    end\n    if <(LEVEL) = [2]> then\n        go to x: (-10000) y: (150)\n        hide\n    end\n    if <(LEVEL) = [3]> then\n        go to x: (-10000) y: (150)\n        hide\n    end\n    if <(LEVEL) = [4]> then\n        go to x: (-10000) y: (150)\n        hide\n    end\n    if <(LEVEL) = [5]> then\n        go to x: (-75) y: (-20)\n        show\n    end\n    if <(LEVEL) = [6]> then\n        go to x: (-75) y: (-20)\n        show\n    end\n    if <(LEVEL) = [7]> then\n        go to x: (-10000) y: (150)\n        hide\n    end\n    if <(LEVEL) = [8]> then\n        go to x: (90) y: (-20)\n        show\n    end\n    if <(LEVEL) = [9]> then\n        go to x: (78) y: (-20)\n        show\n    end\n    if <(LEVEL) = [10]> then\n        go to x: (-10000) y: (150)\n        hide\n    end\n    if <(LEVEL) = [11]> then\n        go to x: (-50) y: (-20)\n        show\n    end\n    if <(LEVEL) = [12]> then\n        go to x: (-10000) y: (150)\n        hide\n    end\nend\n\n@Saw\n\nwhen flag clicked\ngo to x: (0) y: (200)\npoint in direction (90)\nhide\nset size to (125) %\n\nwhen I receive [next level v]\nrepeat until <(size) > [100]>\n    change size by (5)\nend\n\nwhen flag clicked\nforever\n    point in direction ((([cos v] of ([direction v] of [sawphysics v]) ) * (40)) + (90))\nend\n\nwhen flag clicked\nforever\n    if <(LEVEL) = [11]> then\n        go to x: (1000) y: (400)\n        hide\n    else\n        if <(LEVEL) = [17]> then\n            set size to (100) %\n            go to x: (-65) y: (225)\n            show\n            next costume\n        else\n            if <(LEVEL) = [8]> then\n                set size to (125) %\n                go to x: (-75) y: (225)\n                show\n                next costume\n            else\n                go to x: (1000) y: (400)\n                hide\n            end\n        end\n    end\nend\n\n@Level IndicSprite1\n\nwhen flag clicked\nforever\n    if <(LEVEL) < [12]> then\n        switch costume to (plains v)\n    else\n        switch costume to (forest v)\n    end\nend\n\nwhen flag clicked\nforever\n    set size to (100) %\n    set [ghost v] effect to (5)\n    show\n    go to x: ((-125) + ((digits) * (21))) y: ((([sin v] of ([direction v] of [spin1 v]) ) * (4)) + (155))\n    point in direction ((([cos v] of ([direction v] of [spin1 v]) ) * (6)) + (90))\nend\n\nshow\nrepeat (10)\n    change size by (15)\n    change [ghost v] effect by (-3)\nend\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nforever\n    go to x: (0) y: (60)\nend\n\n@Trampolenes\n\nwhen flag clicked\nset [brightness v] effect to (0)\nclear graphic effects\nswitch costume to (1 v)\nset size to (125) %\n\nwhen I receive [jump v]\nshow\nset [brightness v] effect to (0)\nclear graphic effects\nswitch costume to (1 v)\nset size to (125) %\nswitch costume to (1 v)\nwait (0.01) seconds\nswitch costume to (2 v)\ncreate clone of (_myself_ v)\nwait (0.01) seconds\nswitch costume to (3 v)\nwait (0.01) seconds\nswitch costume to (4 v)\nwait (0.7) seconds\nswitch costume to (3 v)\nwait (0.01) seconds\nswitch costume to (2 v)\nwait (0.01) seconds\nswitch costume to (1 v)\n\nwhen I start as a clone\nset [ghost v] effect to (10)\nshow\nswitch costume to (hitbox v)\nrepeat (10)\n    change [ghost v] effect by (7)\n    change y by (2)\nend\ndelete this clone\n\nwhen flag clicked\nforever\n    if <(LEVEL) = [1]> then\n        go to x: (-10000) y: (150)\n        hide\n    end\n    if <(LEVEL) = [2]> then\n        go to x: (-10000) y: (150)\n        hide\n    end\n    if <(LEVEL) = [3]> then\n        go to x: (-10000) y: (150)\n        hide\n    end\n    if <(LEVEL) = [4]> then\n        go to x: (-10000) y: (150)\n        hide\n    end\n    if <(LEVEL) = [5]> then\n        go to x: (-75) y: (-20)\n        show\n    end\n    if <(LEVEL) = [6]> then\n        go to x: (-75) y: (-20)\n        show\n    end\n    if <(LEVEL) = [7]> then\n        go to x: (-10000) y: (150)\n        hide\n    end\n    if <(LEVEL) = [8]> then\n        go to x: (90) y: (-20)\n        show\n    end\n    if <(LEVEL) = [9]> then\n        go to x: (78) y: (-20)\n        show\n    end\n    if <(LEVEL) = [10]> then\n        go to x: (-10000) y: (150)\n        hide\n    end\n    if <(LEVEL) = [11]> then\n        go to x: (-50) y: (-20)\n        show\n    end\n    if <(LEVEL) = [12]> then\n        go to x: (-10000) y: (150)\n        hide\n    end\nend\n\n@Props\n\nhide\n\n@spin1\n\nwhen flag clicked\nforever\n    turn right (5) degrees\nend\n\n@sawphysics\n\nwhen flag clicked\nforever\n    turn right (5) degrees\nend\n\n@Background\n\nwhen flag clicked\nset [ghost v] effect to (8)\ngo to x: (0) y: (0)\nforever\n    go to [back v] layer\n    go [backward v] (5) layers\n    point in direction ((([cos v] of ([direction v] of [sawphysics v]) ) * (0.5)) + (90))\nend\n\nwhen flag clicked\nforever\n    if <[13] < (LEVEL)> then\n        go to x: (0) y: (-25)\n        show\n        switch costume to (backdrop2 v)\n    else\n        if <(LEVEL) = [12]> then\n            go to x: (0) y: (-60)\n            show\n            switch costume to (backdrop2 v)\n        else\n            if <(LEVEL) = [13]> then\n                go to x: (0) y: (-50)\n                show\n                switch costume to (backdrop2 v)\n            else\n                if <(LEVEL) = [14]> then\n                    go to x: (0) y: (-80)\n                    show\n                    switch costume to (backdrop2 v)\n                else\n                    hide\n                end\n            end\n        end\n    end\nend\n\n@Lava\n\nwhen flag clicked\nset [ghost v] effect to (100)\nforever\n    show\n    go to x: (0) y: (0)\n    go [backward v] (23) layers\n    go to [back v] layer\n    set [ghost v] effect to (100)\nend\n\n@FadePlatform\n\nwhen flag clicked\nforever\n    if <(LEVEL) = [18]> then\n        point in direction (90)\n        set size to (100) %\n        set [ghost v] effect to (100)\n        wait (1) seconds\n        go to x: (110) y: (-165)\n        show\n        repeat (10)\n            change [brightness v] effect by (10)\n        end\n        repeat (5)\n            change [ghost v] effect by (-20)\n        end\n        repeat (10)\n            change [brightness v] effect by (-10)\n        end\n        wait (2) seconds\n        repeat (10)\n            change [brightness v] effect by (10)\n        end\n        repeat (5)\n            change [ghost v] effect by (20)\n        end\n        repeat (10)\n            change [brightness v] effect by (-10)\n        end\n        go to x: (-10000) y: (150)\n        wait (1) seconds\n        hide\n        set [ghost v] effect to (100)\n    else\n        if <(LEVEL) = [15]> then\n            point in direction (90)\n            set size to (100) %\n            set [ghost v] effect to (100)\n            wait (1) seconds\n            go to x: (0) y: (-113)\n            show\n            repeat (10)\n                change [brightness v] effect by (10)\n            end\n            repeat (5)\n                change [ghost v] effect by (-20)\n            end\n            repeat (10)\n                change [brightness v] effect by (-10)\n            end\n            wait (2) seconds\n            repeat (10)\n                change [brightness v] effect by (10)\n            end\n            repeat (5)\n                change [ghost v] effect by (20)\n            end\n            repeat (10)\n                change [brightness v] effect by (-10)\n            end\n            go to x: (-10000) y: (150)\n            wait (1) seconds\n            hide\n            set [ghost v] effect to (100)\n        else\n            if <(LEVEL) = [17]> then\n                point in direction (60)\n                set size to (100) %\n                set [ghost v] effect to (100)\n                wait (1) seconds\n                go to x: (40) y: (-35)\n                show\n                repeat (10)\n                    change [brightness v] effect by (10)\n                end\n                repeat (5)\n                    change [ghost v] effect by (-20)\n                end\n                repeat (10)\n                    change [brightness v] effect by (-10)\n                end\n                wait (5) seconds\n                repeat (10)\n                    change [brightness v] effect by (10)\n                end\n                repeat (5)\n                    change [ghost v] effect by (20)\n                end\n                repeat (10)\n                    change [brightness v] effect by (-10)\n                end\n                go to x: (-10000) y: (150)\n                wait (1) seconds\n                hide\n                set [ghost v] effect to (100)\n            else\n                if <(LEVEL) = [13]> then\n                    point in direction (90)\n                    set size to (100) %\n                    set [ghost v] effect to (100)\n                    wait (1) seconds\n                    go to x: (0) y: (-113)\n                    show\n                    repeat (10)\n                        change [brightness v] effect by (10)\n                    end\n                    repeat (10)\n                        change [ghost v] effect by (-10)\n                    end\n                    repeat (10)\n                        change [brightness v] effect by (-10)\n                    end\n                    wait (2) seconds\n                    repeat (10)\n                        change [brightness v] effect by (10)\n                    end\n                    repeat (5)\n                        change [ghost v] effect by (20)\n                    end\n                    repeat (10)\n                        change [brightness v] effect by (-10)\n                    end\n                    go to x: (-10000) y: (150)\n                    wait (1) seconds\n                    hide\n                    set [ghost v] effect to (100)\n                else\n                    hide\n                    go to x: (-10000) y: (150)\n                end\n            end\n        end\n    end\nend\n\nwhen flag clicked\nforever\n    repeat until <not <(LEVEL) = [15]>>\nend\n\nwhen flag clicked\nforever\n\nif <(LEVEL) = [13]> then\n    go to x: (0) y: (-113)\n    show\nelse\n    hide\n    go to x: (-10000) y: (150)\nend\n\nif <(LEVEL) = [15]> then\n    go to x: (0) y: (-113)\n    show\nend\n\n
Are you able to escape this infinite loop of stages? \n - Instructions in game