Abduction (A Platformer) | #games #all

Instructions: WEAR HEADPHONES \n-INSTRUCTIONS- \nw,a,d or arrow keys to move, doge the spikes, lasers, rockets and guards! And don't forget, the boss! \n-BOSS INSTRUCTIONS- \nIn game, avoid the obstacles as much as you can while guiding the rockets towards the boss.

@Stage\n\n@ball\n\nwhen flag clicked\ngo to x: (-159) y: (-28)\nset [xv v] to [0]\nset [yv v] to [0]\nforever\n    if <<key (a v) pressed?> or <key (left arrow v) pressed?>> then\n        switch costume to (costume2 v)\n        change [xv v] by (-2)\n    end\n    if <<key (d v) pressed?> or <key (right arrow v) pressed?>> then\n        switch costume to (costume3 v)\n        change [xv v] by (2)\n    end\n    set [xv v] to ((xv) * (0.78))\n    change x by (xv)\n    if <touching color (#000008)?> then\n        change y by (1)\n        if <touching color (#000008)?> then\n            change y by (1)\n            if <touching color (#000008)?> then\n                change y by (1)\n                if <touching color (#000008)?> then\n                    change y by (1)\n                    if <touching color (#000008)?> then\n                        change y by (1)\n                        if <touching color (#000008)?> then\n                            change y by (1)\n                            if <touching color (#000008)?> then\n                                change y by (1)\n                                if <touching color (#000008)?> then\n                                    change x by ((-1) * (xv))\n                                    change y by (-7)\n                                    set [xv v] to [0]\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (-3)\n    if <<<key (w v) pressed?> or <key (up arrow v) pressed?>> and <touching color (#000008)?>> then\n        set [yv v] to [15]\n    end\n    change y by (3)\n    if <(yv) > [-15]> then\n        change [yv v] by (-1)\n    end\n    if <(yv) < [3]> then\n        if <not <touching color (#000008)?>> then\n            change y by (-1)\n            if <not <touching color (#000008)?>> then\n                change y by (-1)\n                if <not <touching color (#000008)?>> then\n                    change y by (-1)\n                    if <not <touching color (#000008)?>> then\n                        change y by (-1)\n                        if <not <touching color (#000008)?>> then\n                            change y by (-1)\n                            if <not <touching color (#000008)?>> then\n                                change y by (-1)\n                                if <not <touching color (#000008)?>> then\n                                    change y by (-1)\n                                    if <not <touching color (#000008)?>> then\n                                        change y by (7)\n                                    end\n                                end\n                            end\n                        end\n                    end\n                end\n            end\n        end\n    end\n    change y by (yv)\n    if <touching color (#000008)?> then\n        change y by (-2)\n        if <touching color (#000008)?> then\n            change y by ((-1) * (yv))\n            set [yv v] to [-3]\n        end\n        change y by (2)\n    end\n    if <([x position v] of [ball v]) > [235]> then\n        broadcast (Next Level v)\n    end\nend\n\nwhen I receive [next level v]\nset [boss v] to [0]\ngo to x: (-159) y: (-28)\n\nwhen flag clicked\nforever\n    if <touching (danger v)?> then\n        if <(Trans) = [0]> then\n            broadcast (death v)\n        end\n    end\nend\n\nwhen I receive [death v]\nchange [death count: v] by (.20)\ngo to x: (-159) y: (-28)\n\nwhen flag clicked\nshow\nset [stop song v] to [0]\nset volume to (100) %\nrepeat until <(Stop Song) = [1]>\n    play sound [Mr v] until done\nend\n\nwhen flag clicked\nforever\n    if <<touching (guard v)?> and <not <(Level) = [11]>>> then\n        broadcast (death v)\n    end\nend\n\nwhen flag clicked\ngo to [front v] layer\n\nwhen flag clicked\nset size to (100) %\nforever\n    if <touching (vent v)?> then\n        broadcast (Next Level v)\n    end\nend\n\nwhen I receive [next level v]\nwait until <touching color (#ff0000)?>\nbroadcast (Unlock v)\n\nwhen I receive [death v]\nwait until <touching color (#ff0000)?>\nbroadcast (Unlock v)\n\nwhen I receive [bosscutscene v]\nforever\n    repeat (10)\n        change volume by (-10)\n    end\n    set [stop song v] to [1]\nend\n\nwhen flag clicked\nset [boss v] to [1]\nforever\n    if <<(Level) = [11]> and <(Boss) = [0]>> then\n        broadcast (BossCutscene v)\n        set [boss v] to [1]\n    end\nend\n\nwhen I receive [boss level v]\ngo to x: (0) y: (0)\nset size to (50) %\n\nwhen I receive [boss level v]\ngo to x: (0) y: (-30)\n\nwhen flag clicked\nforever\n    if <touching (boss attack v)?> then\n        broadcast (BossLevelDead v)\n    end\nend\n\nwhen I receive [bossleveldead v]\ngo to x: (0) y: (-30)\n\nwhen flag clicked\nforever\n    if <<touching (guard v)?> and <(Level) = [11]>> then\n        broadcast (BossLevelDead v)\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (boss v)?> then\n        broadcast (BossLevelDead v)\n    end\nend\n\nwhen flag clicked\nwait until <touching (exit v)?>\nbroadcast (Ending v)\n\nwhen I receive [final cutscene v]\ngo to x: (0) y: (-30)\n\nwhen I receive [c2 v]\ngo to x: (0) y: (-30)\n\nwhen I receive [c3 v]\ngo to x: (0) y: (-30)\n\n@ Ground\n\nwhen flag clicked\ngo to x: (0) y: (0)\nshow variable [level v]\nforever\n    set [level v] to (costume [number v])\nend\n\nwhen I receive [next level v]\nnext costume\n\nwhen flag clicked\ngo to [back v] layer\nswitch costume to (level1 v)\n\nwhen I receive [boss level v]\nswitch costume to (level10 v)\n\nwhen flag clicked\nswitch costume to (level1 v)\n\nwhen flag clicked\nswitch costume to (level1 v)\n\n@Danger\n\nwhen flag clicked\nswitch costume to (costume1 v)\ngo to [front v] layer\n\nwhen I receive [next level v]\nshow\nnext costume\n\nwhen flag clicked\nforever\n    if <(Level) = [6]> then\n        repeat until <not <(Level) = [6]>>\n            set [ghost v] effect to (0)\n            set [trans v] to [0]\n            switch costume to (costume6 v)\n            wait (1) seconds\n            set [trans v] to [1]\n            switch costume to (lasers v)\n            set [ghost v] effect to (75)\n            wait (1) seconds\n        end\n    end\nend\n\nwhen I receive [boss level v]\nshow\n\nwhen I receive [bosscuscene2 v]\nhide\n\nhide\n\nwhen flag clicked\nset [trans v] to [0]\nforever\n    if <(Level) = [7]> then\n        repeat until <(Level) = [8]>\n            set [trans v] to [0]\n            clear graphic effects\n            switch costume to (costume7 v)\n        end\n        next costume\n    end\nend\n\n@Door\n\nwhen flag clicked\nset [unlock v] to [0]\nswitch costume to (costume1 v)\n\nwhen I receive [next level v]\nshow\nnext costume\ngo to [front v] layer\n\nwhen I receive [unlock v]\nhide\nstart sound [Machine v]\n\nwhen I receive [death v]\nshow\ngo to [front v] layer\n\n@Guard\n\nwhen flag clicked\nset size to (100) %\nhide\nset rotation style [left-right v]\n\nwhen flag clicked\nhide\n\nwhen flag clicked\nforever\n    if <not <<<(Level) = [5]> or <(Level) = [7]>> or <(Level) = [11]>>> then\n        hide\n    end\nend\n\nwhen I receive [next level v]\nforever\n    if <(Level) = [7]> then\n        go to x: (-178) y: (118)\n        show\n        go to [front v] layer\n        repeat until <not <(Level) = [7]>>\n            repeat (30)\n                point in direction (90)\n                change x by (2)\n            end\n            wait (0.5) seconds\n            repeat (30)\n                change x by (-2)\n                point in direction (-90)\n            end\n            wait (0.5) seconds\n        end\n    end\nend\n\nwhen I receive [next level v]\nforever\n    if <(Level) = [5]> then\n        go to x: (-100) y: (-82)\n        show\n        go to [front v] layer\n        repeat until <not <(Level) = [5]>>\n            repeat (60)\n                point in direction (90)\n                change x by (2)\n            end\n            wait (0.5) seconds\n            repeat (60)\n                change x by (-2)\n                point in direction (-90)\n            end\n            wait (0.5) seconds\n        end\n    end\nend\n\nwhen I receive [boss level v]\nhide\nwait (1) seconds\ncreate clone of (_myself_ v)\n\nwhen I start as a clone\nif <not <(Stop Clones) = [1]>> then\n    show\n    go to [front v] layer\n    set size to (50) %\n    go to x: (pick random (Left) to (Right)) y: (-93)\n    if <(x position) = (Left)> then\n        point in direction (90)\n        glide (2) secs to x: (198) y: (-93)\n    end\n    if <(x position) = (Right)> then\n        point in direction (-90)\n        glide (2) secs to x: (-201) y: (-93)\n    end\n    hide\n    create clone of (_myself_ v)\n    delete this clone\nelse\n    delete this clone\nend\n\nwhen flag clicked\nset [left v] to [-201]\nset [right v] to [198]\n\nwhen I start as a clone\n\nwhen I receive [boss2 v]\nhide\nwait (1) seconds\ncreate clone of (_myself_ v)\n\nwhen I receive [boss3 v]\nhide\nwait (1) seconds\ncreate clone of (_myself_ v)\n\n@Vent\n\nwhen flag clicked\nhide\n\nwhen I receive [next level v]\nforever\n    if <(Level) = [8]> then\n        repeat until <not <(Level) = [8]>>\n            show\n            go to [front v] layer\n        end\n    end\n    hide\nend\n\nwhen I receive [next level v]\nif <(Level) = [8]> then\n    wait until <touching (ball v)?>\n    start sound [Low Squeak v]\nend\n\nwhen I receive [death v]\nif <(Level) = [8]> then\n    wait until <touching (ball v)?>\n    start sound [Low Squeak v]\nend\n\n@Boss Cutscene\n\nwhen flag clicked\nset [level v] to [1]\nset [ghost v] effect to (0)\nshow variable [level v]\nhide\ngo to x: (0) y: (0)\npoint in direction (90)\n\nwhen I receive [bosscutscene v]\nif <(Level) = [11]> then\n    hide variable [level v]\n    set size to (100) %\n    show\n    go to [front v] layer\n    switch costume to (lysander v)\n    repeat (15)\n        next costume\n    end\n    wait (0.5) seconds\n    broadcast (BossCuscene2 v)\n    set volume to (100) %\n    play sound [Boss Enter v] until done\nend\n\nwhen I receive [bosscuscene2 v]\nwait (0.1) seconds\nnext costume\nwait (0.5) seconds\nnext costume\nrepeat (200)\n    change size by (0.03)\nend\n\nwhen I receive [bosscuscene2 v]\nwait (3) seconds\nrepeat (8)\n    next costume\n    wait (0.05) seconds\nend\nwait (1) seconds\nnext costume\nwait (0.5) seconds\nrepeat (10)\n    next costume\n    wait (0.05) seconds\nend\nwait (0.5) seconds\nrepeat (2)\n    next costume\n    wait (0.05) seconds\nend\nwait (0.5) seconds\nnext costume\nwait (1) seconds\nrepeat (7)\n    next costume\n    wait (0.05) seconds\nend\nwait (0.5) seconds\nbroadcast (Done v)\nrepeat until <key (z v) pressed?>\n    switch costume to (costume32 v)\n    wait (0.05) seconds\n    switch costume to (costume33 v)\n    wait (0.05) seconds\nend\n\nwhen I receive [done v]\nwait until <key (z v) pressed?>\nrepeat (10)\n    change volume by (-10)\nend\nbroadcast (Boss Level v)\n\nwhen I receive [done v]\nwait until <key (z v) pressed?>\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\nbroadcast (Boss Level v)\n\n@Sprite2\n\nwhen flag clicked\nhide\n\nwhen I receive [done v]\ngo to [front v] layer\nset [ghost v] effect to (100)\nshow\nrepeat (5)\n    change [ghost v] effect by (-20)\nend\nforever\n    if <key (z v) pressed?> then\n        repeat (5)\n            change [ghost v] effect by (20)\n        end\n        hide\n    end\nend\n\n@Boss\n\nwhen I receive [boss level v]\nshow\ngo to [front v] layer\nrepeat until <(Stop Clones) = [1]>\n    switch costume to (costume1 v)\n    repeat (5)\n        next costume\n    end\nend\n\nwhen flag clicked\nset volume to (100) %\nset [stop clones v] to [0]\nhide\ngo to x: (40) y: (-57)\n\nwhen I receive [boss level v]\nforever\n    play sound [Jazz Hands v] until done\nend\n\nwhen I receive [boss level v]\nwait until <(Boss Hp) < [45]>\nbroadcast (Hide text v)\nset [stop clones v] to [1]\nwait (1) seconds\nswitch costume to (costume7 v)\nrepeat (6)\n    next costume\nend\nwait (3) seconds\nrepeat (6)\n    next costume\n    wait (0.05) seconds\nend\nwait (3) seconds\nset [stop clones v] to [0]\nbroadcast (Boss2 v)\n\nwhen I receive [boss2 v]\nshow\ngo to [front v] layer\nrepeat until <(Stop Clones) = [1]>\n    switch costume to (costume1 v)\n    repeat (5)\n        next costume\n    end\nend\n\nwhen I receive [boss level v]\nwait until <(Boss Hp) < [20]>\nset [stop clones v] to [1]\nwait (1) seconds\nswitch costume to (costume20 v)\nrepeat (7)\n    next costume\nend\nwait (1) seconds\nrepeat (4)\n    next costume\nend\nwait (1) seconds\nrepeat (8)\n    next costume\nend\nwait (3) seconds\nset [stop clones v] to [0]\nbroadcast (Boss3 v)\n\nwhen I receive [boss3 v]\nshow\ngo to [front v] layer\nrepeat until <(Stop Clones) = [1]>\n    switch costume to (costume40 v)\n    wait (1) seconds\n    switch costume to (costume41 v)\n    wait (1) seconds\nend\n\nrepeat (5)\n    next costume\nend\n\nwhen I receive [boss level v]\nwait until <(Boss Hp) < [0]>\nset volume to (0) %\nset [stop clones v] to [1]\nwait (1) seconds\nswitch costume to (costume42 v)\nnext costume\nwait (2) seconds\nnext costume\nwait (2) seconds\nnext costume\nbroadcast (Final Cutscene v)\n\nwhen I receive [uh oh v]\nnext costume\nwait (1) seconds\nbroadcast (Fall v)\nwait (0.15) seconds\nhide\n\n@Skip\n\nwhen this sprite clicked\nbroadcast (Next Level v)\n\nwhen I receive [bosscutscene v]\nhide\n\nwhen flag clicked\ngo to x: (0) y: (0)\nshow\nforever\n    go to [front v] layer\nend\n\n@Boss attack\n\nwhen I start as a clone\nforever\n    if <not <(Stop Clones) = [1]>> then\n        set size to (80) %\n        if <(pick random (1) to (2)) = [1]> then\n            go to x: (-195) y: (157)\n        else\n            go to x: (195) y: (157)\n        end\n        show\n        go to [front v] layer\n        point in direction (180)\n        repeat until <<touching color (#000000)?> or <touching (boss v)?>>\n            point towards (ball v)\n            move (2) steps\n            change y by (-1)\n        end\n        wait until <<touching color (#000000)?> or <touching (boss v)?>>\n        if <touching (boss v)?> then\n            change [boss hp v] by (-10)\n            broadcast (Boss Damage v)\n        end\n        start sound [Crunch v]\n        hide\n        wait (1) seconds\n        create clone of (_myself_ v)\n        delete this clone\n    else\n        delete this clone\n    end\nend\n\nwhen flag clicked\nhide\n\nwhen I receive [attack v]\nrepeat (2)\n    create clone of (_myself_ v)\nend\n\nwhen I receive [boss level v]\nwait (2) seconds\nbroadcast (Attack v)\n\nwhen I start as a clone\n\nwhen I receive [boss2 v]\nwait (2) seconds\nbroadcast (Attack v)\n\nwhen I receive [boss3 v]\nwait (2) seconds\nbroadcast (Attack v)\n\n@Sprite1\n\nwhen flag clicked\nhide\n\nwhen I receive [boss level v]\nwait (10) seconds\nset [ghost v] effect to (100)\nshow\nrepeat (10)\n    change [ghost v] effect by (-10)\nend\n\nwhen I receive [hide text v]\nset [ghost v] effect to (0)\nrepeat (10)\n    change [ghost v] effect by (10)\nend\nhide\n\n@BossHealth\n\nwhen I receive [fusion v]\nhide\n\nwhen I receive [fusion end v]\nshow\n\nwhen flag clicked\nset [boss hp v] to [89]\nswitch costume to (costume v)\nhide\ngo to x: (-4) y: (174)\n\nwhen I receive [attack v]\nif <not <(attack) = [3]>> then\n    hide\nend\n\nwhen I receive [end attack v]\nwait (1) seconds\nshow\n\nwhen I receive [thunder end v]\nshow\n\nwhen I receive [thunder v]\nhide\n\nwhen I receive [boss damage v]\nif <not <(Boss Hp) < [0]>> then\n    repeat (10)\n        next costume\n    end\nend\n\nwhen I receive [boss level v]\ngo to x: (-4) y: (174)\ngo to [front v] layer\nshow\n\nwhen I receive [attack v]\ngo to x: (-4) y: (174)\ngo to [front v] layer\nshow\n\nwhen I receive [fall v]\nhide\n\n@Sprite3\n\nwhen flag clicked\nhide\ngo to x: (-55) y: (213)\n\nwhen I receive [final cutscene v]\nshow\nglide (0.15) secs to x: (-55) y: (58)\nplay sound [Clang v] until done\nbroadcast (C2 v)\n\n@Sprite4\n\nwhen flag clicked\nhide\ngo to x: (54) y: (213)\n\nwhen I receive [c2 v]\nwait (0.5) seconds\nshow\nglide (0.15) secs to x: (54) y: (58)\nplay sound [Clang v] until done\nbroadcast (c3 v)\n\n@Sprite5\n\nwhen flag clicked\nhide\ngo to x: (2) y: (195)\n\nwhen I receive [c3 v]\nwait (0.5) seconds\nshow\ngo to [front v] layer\nglide (0.2) secs to x: (2) y: (124)\nplay sound [Clang v] until done\nbroadcast (Uh oh v)\n\nwhen I receive [fall v]\nglide (0.2) secs to x: (2) y: (42)\nplay sound [Explosion v] until done\nbroadcast (Exit v)\n\n@Exit\n\nwhen flag clicked\nhide\n\nwhen I receive [exit v]\nwait (1) seconds\nshow\ngo to [front v] layer\nstart sound [Collect v]\n\n@Sprite7\n\nwhen flag clicked\nhide\n\nwhen I receive [ending v]\nwait (4.5) seconds\nshow\ngo to [front v] layer\nforever\n    repeat (10)\n        change [ghost v] effect by (10)\n    end\n    repeat (10)\n        change [ghost v] effect by (-10)\n    end\n    wait (1) seconds\nend\n\n@Cool Text - Abduction 368421491097067\n\nwhen flag clicked\nshow\nforever\n    go to [front v] layer\nend\n\nwhen flag clicked\nhide\n\n@Sprite6\n\nwhen flag clicked\nhide\n\nwhen I receive [ending v]\nshow\ngo to [front v] layer\nplay sound [Boom v] until done\nwait (1) seconds\nplay sound [Ending v] until done\n\n@Sprite8\n\nwhen flag clicked\nhide\nset [ghost v] effect to (75)\n\nwhen I receive [bosscutscene v]\nshow\nforever\n    go to [front v] layer\nend\n\nwhen I receive [boss level v]\nhide\n\n