Spring | Platformer


@Stage\n\nwhen I receive [start v]\nforever\n    play sound [Deadlocked - Geometry Dash.mp3 v] until done\nend\n\n@intro\n\nwhen flag clicked\nshow\ngo to [front v] layer\nswitch costume to (costume1 v)\ngo to x: (0) y: (0)\nstart sound [Low Whoosh v]\nrepeat (14)\n    next costume\nend\nstart sound [jump1 v]\nrepeat (16)\n    next costume\nend\nstart sound [Pickup_Coin3 v]\nnext costume\nrepeat (11)\n    next costume\nend\nplay sound [dading v] until done\nrepeat (4)\n    next costume\nend\nplay sound [Ding v] until done\nhide\nbroadcast (start v)\n\nwhen [space v] key pressed\nif <(username) = [sharkyshar]> then\n    stop all sounds\n    hide\n    broadcast (start v)\n    stop [other scripts in sprite v]\n    stop [this script v]\nend\n\nwhen flag clicked\nforever\n    go to [front v] layer\nend\n\n@logo\n\nwhen flag clicked\ngo to x: (9) y: (107)\nforever\n    repeat (10)\n        change y by (1)\n    end\n    repeat (10)\n        change y by (-1)\n    end\nend\n\nwhen I receive [start v]\nbroadcast (home v)\n\nwhen flag clicked\nset size to (100) %\nforever\n    repeat (10)\n        change size by (1)\n    end\n    repeat (10)\n        change size by (-1)\n    end\nend\n\nwhen flag clicked\ngo to [front v] layer\npoint in direction (90)\nforever\n    repeat (10)\n        turn right (.5) degrees\n    end\n    repeat (20)\n        turn left (.5) degrees\n    end\n    repeat (10)\n        turn right (.5) degrees\n    end\nend\n\nwhen I receive [home v]\nshow\n\nwhen I receive [not home v]\nhide\n\n@Particle effect\n\nwhen flag clicked\nhide\nforever\n    go to (random position v)\n    set x to (300)\n    create clone of (_myself_ v)\nend\n\nwhen I start as a clone\nshow\nset [ghost v] effect to (80)\nset size to (pick random (50) to (100)) %\nrepeat (50)\n    change x by (-10)\n    change y by (pick random (-1) to (1))\nend\ndelete this clone\n\nwhen I receive [home v]\nswitch backdrop to (home v)\n\n@create\n\nwhen I receive [home v]\nswitch costume to (costume1 v)\nshow\n\nwhen flag clicked\ngo to x: (13) y: (7)\nforever\n    repeat (10)\n        change y by (1)\n    end\n    repeat (10)\n        change y by (-1)\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (10)\n    else\n        clear graphic effects\n    end\nend\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [1]> then\n        if <touching (mouse-pointer v)?> then\n            play sound [Pickup_Coin3 v] until done\n            wait until <not <touching (mouse-pointer v)?>>\n        end\n    end\nend\n\nwhen this sprite clicked\nbroadcast (not home v)\nbroadcast (create v)\nstart sound [Select v]\n\nwhen I receive [not home v]\nswitch costume to (costume2 v)\nhide\n\n@load\n\nwhen I receive [home v]\nswitch costume to (costume1 v)\nshow\n\nwhen flag clicked\ngo to x: (13) y: (-82)\nforever\n    repeat (10)\n        change y by (1)\n    end\n    repeat (10)\n        change y by (-1)\n    end\nend\n\nwhen flag clicked\nforever\n    if <touching (mouse-pointer v)?> then\n        set [brightness v] effect to (10)\n    else\n        clear graphic effects\n    end\nend\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [1]> then\n        if <touching (mouse-pointer v)?> then\n            play sound [Pickup_Coin3 v] until done\n            wait until <not <touching (mouse-pointer v)?>>\n        end\n    end\nend\n\nwhen this sprite clicked\nstart sound [Select v]\nask [Insert code: \(leave blank to cancel\)] and wait\nif <(answer) = []> then\n\nwhen I receive [not home v]\nswitch costume to (costume2 v)\nhide\n\n@Grid\n\nwhen I receive [create v]\nshow\nswitch costume to (sky v)\ngo to x: (-221) y: (162)\ncreate clone of (_myself_ v)\nrepeat (5)\n    repeat (15)\n        change x by (31)\n        create clone of (_myself_ v)\n    end\n    change y by (-32)\n    create clone of (_myself_ v)\n    repeat (15)\n        change x by (-31)\n        create clone of (_myself_ v)\n    end\n    change y by (-32)\n    create clone of (_myself_ v)\nend\nrepeat (15)\n    change x by (31)\n    create clone of (_myself_ v)\nend\ncreate clone of (_myself_ v)\nhide\n\nwhen flag clicked\nset [tool v] to [2]\nhide\n\nwhen I receive [home v]\nhide\n\nwhen I start as a clone\nshow\nforever\n    if <(don't grid) = [0]> then\n        if <(saving?) = [0]> then\n            if <(tool bar?) = [0]> then\n                if <<mouse down?> and <touching (mouse-pointer v)?>> then\n                    switch costume to (tool)\n                end\n            end\n        end\n    end\nend\n\nwhen I receive [home v]\ndelete this clone\n\n@tool bar\n\nwhen flag clicked\nforever\n    if <touching (mouse-pointer v)?> then\n        if <(costume [number v]) = [1]> then\n            set [tool bar? v] to [1]\n            go to x: (0) y: (0)\n        end\n    else\n        set [tool bar? v] to [0]\n        go to x: (0) y: (144)\n    end\nend\n\nwhen I receive [create v]\nswitch costume to (costume1 v)\nshow\n\nwhen I receive [home v]\nswitch costume to (costume2 v)\nhide\n\nwhen I receive [save v]\nswitch costume to (costume2 v)\nhide\n\n@blocks\n\nwhen flag clicked\nforever\n    if <(tool bar?) = [1]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen flag clicked\nforever\n    switch costume to (tool)\nend\n\n@arrow (block) right\n\nwhen flag clicked\nforever\n    if <(tool bar?) = [1]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen flag clicked\ngo to x: (-39) y: (116)\nforever\n    repeat (3)\n        change x by (1)\n    end\n    repeat (3)\n        change x by (-1)\n    end\nend\n\nwhen this sprite clicked\nstart sound [Select v]\nchange [tool v] by (1)\nif <(tool) = [5]> then\n    set [tool v] to [1]\nend\n\n@arrow (block) left\n\nwhen flag clicked\nforever\n    if <(tool bar?) = [1]> then\n        show\n    else\n        hide\n    end\nend\n\nwhen flag clicked\ngo to x: (-180) y: (116)\nforever\n    repeat (3)\n        change x by (-1)\n    end\n    repeat (3)\n        change x by (1)\n    end\nend\n\nwhen this sprite clicked\nstart sound [Select v]\nchange [tool v] by (-1)\nif <(tool) = [-1]> then\n    set [tool v] to [3]\nend\n\n@Home Button\n\nwhen I receive [home v]\nhide\n\nwhen I receive [create v]\nwait (6) seconds\nshow\n\nwhen this sprite clicked\nbroadcast (home v)\n\nwhen I receive [save v]\nhide\n\nwhen I receive [load v]\nwait (6) seconds\nshow\n\n@save\n\nwhen I receive [home v]\nset [saving? v] to [0]\nswitch costume to (costume1 v)\nhide\n\nwhen flag clicked\ngo to x: (213) y: (-166)\n\nwhen flag clicked\nforever\n    if <touching (mouse-pointer v)?> then\n        set [don't grid v] to [1]\n        set [brightness v] effect to (10)\n    else\n        set [don't grid v] to [0]\n        clear graphic effects\n    end\nend\n\nwhen flag clicked\nforever\n    if <(costume [number v]) = [2]> then\n        if <touching (mouse-pointer v)?> then\n            play sound [Pickup_Coin3 v] until done\n            wait until <not <touching (mouse-pointer v)?>>\n        end\n    end\nend\n\nwhen this sprite clicked\nset [saving? v] to [1]\nbroadcast (not home v)\nbroadcast (save v)\nstart sound [Select v]\n\nwhen I receive [create v]\nset [saving? v] to [0]\nwait (6) seconds\nswitch costume to (costume2 v)\nshow\n\nwhen I receive [save v]\nhide\n\n@scan\n\nwhen I receive [save v]\ndelete all of [save v]\nshow\ngo to x: (-221) y: (162)\nscan\nrepeat (5)\n    repeat (15)\n        change x by (31)\n        scan\n    end\n    change y by (-32)\n    scan\n    repeat (15)\n        change x by (-31)\n        scan\n    end\n    change y by (-32)\n    scan\nend\nrepeat (15)\n    change x by (31)\n    scan\nend\nhide\nset [save help v] to (save)\ndelete all of [save v]\nadd (save help) to [save v]\nhide list [save v]\nadd [Triple click Ctrl + C to copy.] to [save v]\nadd [Press space when you are done.] to [save v]\nwait until <key (space v) pressed?>\nbroadcast (home v)\n\ndefine scan\nif <touching color (#b3fffc)?> then\n    add [a] to [save v]\nend\nif <touching color (#4eff55)?> then\n    add [b] to [save v]\nend\nif <touching color (#ff1f1f)?> then\n    add [c] to [save v]\nend\nif <touching color (#e31fff)?> then\n    add [d] to [save v]\nend\n\nwhen I receive [home v]\nshow list [save v]\nhide\n\n@Grid (load)\n\nwhen I receive [load v]\nset [# v] to [1]\nshow\nswitch costume to (a v)\ngo to x: (-221) y: (162)\ncostume?\ncreate clone of (_myself_ v)\nrepeat (5)\n    repeat (15)\n        change x by (31)\n        costume?\n        create clone of (_myself_ v)\n    end\n    change y by (-32)\n    costume?\n    create clone of (_myself_ v)\n    repeat (15)\n        change x by (-31)\n        costume?\n        create clone of (_myself_ v)\n    end\n    change y by (-32)\n    costume?\n    create clone of (_myself_ v)\nend\nrepeat (15)\n    change x by (31)\n    costume?\n    create clone of (_myself_ v)\nend\ncostume?\ncreate clone of (_myself_ v)\nhide\nbroadcast (play v)\n\nwhen flag clicked\nset [tool v] to [2]\nhide\n\nwhen I receive [home v]\nhide\n\nwhen I receive [home v]\ndelete this clone\n\ndefine costume?\nswitch costume to (letter (#) of (loading number))\nchange [# v] by (1)\n\n@player\n\nwhen flag clicked\nhide variable [y v]\nhide variable [x v]\n\nwhen I receive [home v]\nset [playing? v] to [0]\nhide\n\nwhen I receive [load v]\nwait (6) seconds\nset [playing? v] to [1]\ngo to x: (-229) y: (150)\nshow\nset [y v] to [0]\nset [x v] to [0]\nforever\n    if <(playing?) = [1]> then\n        change [y v] by (-1)\n        if <key (left arrow v) pressed?> then\n            change [x v] by (-1)\n        end\n        if <key (right arrow v) pressed?> then\n            change [x v] by (1)\n        end\n        set [x v] to ((x) * (0.9))\n        change x by (x)\n        if <touching color (#4eff55)?> then\n            change y by (1)\n        end\n        if <touching color (#4eff55)?> then\n            change y by (1)\n        end\n        if <touching color (#4eff55)?> then\n            change y by (1)\n        end\n        if <touching color (#4eff55)?> then\n            change y by (1)\n        end\n        if <touching color (#4eff55)?> then\n            change y by (-4)\n            change x by ((x) * (-1))\n            if <key (up arrow v) pressed?> then\n                set [y v] to [10]\n                if <(x) > [0]> then\n                    set [x v] to [-10]\n                else\n                    set [x v] to [10]\n                end\n            else\n                set [x v] to [0]\n            end\n        end\n        change y by (y)\n        if <touching color (#4eff55)?> then\n            change y by ((y) - ((y) * (2)))\n            set [y v] to [0]\n        end\n        change y by (-1)\n        if <<key (up arrow v) pressed?> and <touching color (#4eff55)?>> then\n            set [y v] to [15]\n        end\n        change y by (1)\n        if <touching color (#ff1f1f)?> then\n            go to x: (-229) y: (150)\n        end\n        if <(x position) > [222]> then\n            broadcast (home v)\n            set [playing? v] to [0]\n        end\n    end\nend\n\nwhen I receive [load v]\nforever\n    if <touching color (#e31fff)?> then\n        set [y v] to [18]\n    end\nend\n\n@thumbnail\n\nwhen flag clicked\nhide\n\n