~Seaside night~  / platformer 

Instructions: -MINI PLATFORMER-\n> Arrow keys to move, up to jump\n> Hold down the down key to crouch if equipped\n> Hold down on walls and quickly change direction to wall jump\n> Z to discard powerup\n> R to restart level\n\nMini, full name Survival Mini, is a character I use for some of my projects, go check the other ones out!\n\nADDED RAINBOW EFFECT AT THE END AND SPEEDRUN TIMER!\nCROUCHING HITBOX NOW LOWER!\n\nCAN YOU BEAT ALL 18 LEVELS?\nIn this platformer, you can collect many powerups to help you on your journey!

@Stage\n\nwhen flag clicked\nswitch backdrop to (backdrop1 v)\nplay sound [monodyL v] until done\n\nwhen I receive [lol v]\nforever\n    play sound [Tobu & Itro - Sunburst \[NCS Release\].mp3 v] until done\nend\n\n@Player\n\nwhen I start as a clone\nclear graphic effects\nrepeat (1)\n    change [ghost v] effect by (10)\nend\ndelete this clone\n\nwhen I receive [next level v]\nbroadcast (Restart v)\n\nwhen I receive [restart v]\nset [x vel v] to [0]\nset [y vel v] to [0]\ngo to x: (-214) y: (125)\n\nwhen I receive [lol v]\nset drag mode [draggable v]\nshow\nbroadcast (Restart v)\nset [level v] to [1]\nforever\n    if <key (left arrow v) pressed?> then\n        change [x vel v] by (-1)\n    end\n    if <key (right arrow v) pressed?> then\n        change [x vel v] by (1)\n    end\n    set [x vel v] to ((x vel) * (0.9))\n    change x by (x vel)\n    if <touching (level v)?> then\n        change y by (1)\n    end\n    if <touching (level v)?> then\n        change y by (1)\n    end\n    if <touching (level v)?> then\n        change y by (1)\n    end\n    if <touching (level v)?> then\n        change y by (1)\n    end\n    if <touching (level v)?> then\n        change y by (-4)\n        change x by ((x vel) * (-1))\n        if <key (up arrow v) pressed?> then\n            if <(x vel) > [0]> then\n                set [x vel v] to [-10]\n            else\n                set [x vel v] to [10]\n            end\n            set [y vel v] to [15]\n        else\n            set [x vel v] to [0]\n        end\n    end\n    change [y vel v] by (-1)\n    change y by (y vel)\n    if <touching (level v)?> then\n        change y by ((y vel) - ((y vel) * (2)))\n        set [y vel v] to [0]\n    end\n    change y by (-1)\n    if <<touching (level v)?> and <key (up arrow v) pressed?>> then\n        set [y vel v] to [15]\n    end\n    change y by (1)\n    create clone of (_myself_ v)\n    if <(x position) > [239]> then\n        broadcast (Next Level v) and wait\n        change [level v] by (1)\n    end\n    if <touching (spikes v)?> then\n        broadcast (Restart v)\n    end\nend\n\nif <key (a v) pressed?> then\n    next costume\n    wait (0.07) seconds\nend\n\nwhen flag clicked\nhide\n\nif <<(costume [number v]) = [1]> and <touching (sprite1 v)?>> then\n    broadcast (Restart v)\nend\nif <key (a v) pressed?> then\n    next costume\n    wait (0.1) seconds\nend\n\n@Spikes\n\nwhen flag clicked\nhide\n\nwhen I receive [lol v]\nshow\nforever\n    switch costume to (Level)\nend\n\nwhen I receive [lol v]\nshow\nforever\n    switch costume to (Level)\nend\n\nwhen flag clicked\nhide\n\n@Level\n\nwhen flag clicked\nhide\n\nwhen I receive [lol v]\nshow\nforever\n    switch costume to (Level)\nend\n\n@download\n\nwhen flag clicked\nshow\npoint in direction (90)\nset size to (100) %\ngo to x: (0) y: (0)\nrepeat (5)\n    change size by (-10)\n    wait (0.05) seconds\nend\nrepeat (5)\n    change size by (10)\n    wait (0.05) seconds\nend\nrepeat (5)\n    change size by (10)\n    wait (0.05) seconds\nend\nrepeat (5)\n    change size by (-10)\n    wait (0.05) seconds\nend\nrepeat (10)\n    turn right (15) degrees\n    change size by (-10)\n    wait (0.05) seconds\nend\nbroadcast (message1 v)\nhide\n\n@Sprite1\n\nwhen flag clicked\nset [color v] effect to (0)\npoint in direction (90)\ngo to x: (0) y: (0)\nhide\n\nwhen I receive [message1 v]\nset size to (10) %\nshow\nrepeat (10)\n    change size by (10)\nend\nwait (7) seconds\nrepeat (10)\n    change [ghost v] effect by (25)\n    wait (0.05) seconds\nend\nbroadcast (lol v)\nhide\n\n@notif\n\nwhen flag clicked\ngo to x: (0) y: (50)\nhide\n\nwhen I receive [alert v]\nstop [other scripts in sprite v]\nrepeat (5)\n    change [ghost v] effect by (20)\nend\nhide\n\nwhen I receive [tick v]\ngo to [front v] layer\n\nwhen I receive [lol v]\nwait (pick random (2) to (3)) seconds\nshow\nrepeat until <(y position) < [6]>\n    change y by (((5) - (y position)) / (6))\nend\nwait (3.5) seconds\nrepeat until <(y position) > [49.5]>\n    change y by (((y position) + (5)) / (5))\nend\nhide\nforever\n    wait (pick random (14) to (26)) seconds\n    show\n    repeat until <(y position) < [6]>\n        change y by (((5) - (y position)) / (6))\n    end\n    wait (3.5) seconds\n    repeat until <(y position) > [49.5]>\n        change y by (((y position) + (5)) / (5))\n    end\n    hide\nend\n\n@Sprite2\n\nwhen I receive [lol v]\nshow variable [time v]\nshow\nforever\n    switch costume to (Level)\nend\n\nwhen flag clicked\nhide variable [time v]\nset [time v] to [0]\ngo to [back v] layer\nhide\n\nwhen I receive [lol v]\nforever\n    wait (1) seconds\n    change [time v] by (1)\nend\n\n