99% Pen Platformer  

Instructions: ▼ Usage\nTap or arrow keys to operate.\nDo not hit the blue thorns.\nOther than that, it's a simple pen-plat-former!\nIt is made of pens except for the snow!\nGood luck.\n

@Stage\n\nwhen flag clicked\nswitch backdrop to (294145a5-9a9c-49b5-b18d-dddd0209d9ff v)\nforever\n    set [color v] effect to (5)\n    if <(ステージ) = [12]> then\n        switch backdrop to (294145a5-9a9c-49b5-b18d-dddd0209d9ff2 v)\n    end\nend\n\n@サムネ\n\nwhen flag clicked\nhide\nforever\n    reset timer\nend\n\nwhen [timer v] > (0.01)\nshow\n\n@キャラ\n\nwhen flag clicked\ngo to x: (-193) y: (40)\nset size to (100) %\nhide variable [x v]\nhide variable [y v]\nset [x v] to [0]\nset [y v] to [0]\nset [ステージ v] to [1]\nset [動き v] to [はい]\nswitch costume to (黒2 v)\nset rotation style [left-right v]\nshow\nforever\n    プログラム\n    spike\nend\n\nwhen flag clicked\nhide variable [time v]\nset [time v] to [0]\nrepeat until <(ステージ) = [12]>\n    wait (1) seconds\n    change [time v] by (1)\nend\nif <(Time) < (☁ World Record)> then\n    set [☁ world record v] to (Time)\nend\nshow variable [time v]\nshow variable [☁ world record v]\n\ndefine プログラム\nchange [y v] by (-1)\nchange y by (Y)\nif <<[0] < (Y)> and <touching color (#ffffff)?>> then\n    change y by ((0) - (Y))\nend\nif <touching color (#ffffff)?> then\n    change y by ((Y) - ((Y) * (1.8)))\n    set [y v] to [0]\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<(y position) < (mouse y)> and <mouse down?>>> then\n        start sound [High Whoosh v]\n        set [y v] to [11]\n    end\nend\nif <(x position) < [-230]> then\n    change x by ((X) * (-1))\nend\nif <<<mouse down?> and <(mouse x) < (x position)>> or <<key (left arrow v) pressed?> or <key (a v) pressed?>>> then\n    change [x v] by (-0.7)\n    point in direction (-90)\nend\nif <<<mouse down?> and <(x position) < (mouse x)>> or <<key (right arrow v) pressed?> or <key (d v) pressed?>>> then\n    change [x v] by (0.7)\n    point in direction (90)\nend\nset [x v] to ((X) * (0.93))\nchange x by (X)\nif <touching color (#ffffff)?> then\n    change y by (1)\nend\nif <touching color (#ffffff)?> then\n    change y by (1)\nend\nif <touching color (#ffffff)?> then\n    change y by (1)\nend\nif <touching color (#ffffff)?> then\n    change y by (1)\nend\nif <touching color (#ffffff)?> then\n    change y by (1)\nend\nif <touching color (#ffffff)?> then\n    change y by (-4)\n    change x by ((X) * (-1))\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<(y position) < (mouse y)> and <mouse down?>>> then\n        start sound [High Whoosh v]\n        set [y v] to [13]\n        if <(X) > [0]> then\n            set [x v] to [-5]\n        else\n            set [x v] to [5]\n        end\n    else\n        set [x v] to [0]\n    end\nend\nif <<[239] < (x position)> and <not <(ステージ) = [12]>>> then\n    broadcast (次 v)\n    hide\n    if <(ステージ) = [8]> then\n        go to x: (-200) y: (-10)\n    else\n        go to x: (-200) y: (40)\n    end\n    change [ステージ v] by (1)\n    set [x v] to [0]\n    set [y v] to [0]\n    clear graphic effects\n    show\n    set [x v] to [0]\nend\n\nset y to (round (y position))\n\ndefine spike\nif <<touching color (#536aff)?> or <(y position) < [-178]>> then\n    set [y v] to [0]\n    set [x v] to [0]\n    hide\n    if <(ステージ) = [8]> then\n        go to x: (-200) y: (-10)\n    else\n        go to x: (-200) y: (40)\n    end\n    clear graphic effects\n    set pen (transparency v) to (0)\n    show\n    set [x v] to [0]\nend\n\nwhen I receive [keke v]\n (x position) (y position)\n\ndefine  (x) (y)\nset pen size to (23)\nset pen color to (#000000)\npen up\nchange x by (5)\nchange y by (5)\npen down\nchange y by (-10)\nchange x by (-10)\nchange y by (10)\nchange x by (10)\npen up\nchange x by (-5)\nchange y by (-5)\npen up\ngo to x: (round (x)) y: (round (y))\n\n@基本管理\n\nwhen flag clicked\nforever\n    erase all\n    go to x: (240) y: (165)\n    set pen color to (#ffdd71)\n    pen down\n    set pen size to (170)\n    pen up\n    broadcast (keke v)\nend\n\nwhen I receive [次 v]\nset pen color to (#ffdd71)\npen down\nset pen size to (170)\npen up\n\nwhen flag clicked\nwait (0) seconds\nset pen color to (#ffdd71)\npen down\nset pen size to (170)\npen up\n\n@ground\n\nwhen flag clicked\nerase all\nbroadcast (スタート v)\n\ndefine 地面 (x) (y) (ペンの上下)\nif <(ペンの上下) = [1]> then\n    pen up\nelse\n    pen down\nend\nset pen color to (#ffffff)\nset pen size to (10)\ngo to x: (x) y: (y)\n\nwhen I receive [次 v]\nerase all\nforever\n    if <(ステージ) = [2]> then\n        地面 [-241] [-100] [1]\n        地面 [241] [-100] [2]\n        spike maker [-110] [-100]\n        spike maker [70] [-100]\n    end\n    if <(ステージ) = [3]> then\n        地面 [-241] [-100] [1]\n        地面 [-110] [-100] [2]\n        地面 [-110] [20] [2]\n        地面 [-50] [20] [2]\n        地面 [-50] [-100] [2]\n        地面 [70] [-100] [2]\n        地面 [70] [90] [2]\n        地面 [130] [90] [2]\n        地面 [130] [-100] [2]\n        地面 [241] [-100] [2]\n        spike maker [-10] [-100]\n        spike maker [160] [-100]\n    end\n    if <(ステージ) = [4]> then\n        地面 [-241] [-50] [1]\n        地面 [-170] [-50] [2]\n        地面 [-170] [-135] [2]\n        地面 [170] [-135] [2]\n        地面 [170] [-50] [2]\n        地面 [241] [-50] [2]\n        spike maker ((-170) + ((260) / (3))) [-135]\n        spike maker ((-170) + ((((260) / (3)) * (2)) + (40))) [-135]\n    end\n    if <(ステージ) = [5]> then\n        地面 [-241] [-100] [1]\n        地面 [241] [-100] [2]\n        地面 [-130] [-10] [1]\n        地面 [130] [-10] [2]\n        spike maker [-105] [-100]\n        spike maker [-25] [-100]\n        spike maker [55] [-100]\n        spike maker [-75] [-10]\n        spike maker [35] [-10]\n    end\n    if <(ステージ) = [6]> then\n        地面 [-241] [-120] [1]\n        地面 [-110] [-120] [2]\n        地面 [-110] [-80] [2]\n        地面 [-50] [-80] [2]\n        地面 [-50] [-40] [2]\n        地面 [10] [-40] [2]\n        地面 [10] [0] [2]\n        地面 [70] [0] [2]\n        地面 [70] [40] [2]\n        地面 [241] [40] [2]\n        spike maker [145] [40]\n    end\n    if <(ステージ) = [7]> then\n        地面 [-241] [-100] [1]\n        地面 [-100] [-100] [2]\n        地面 [40] [-100] [1]\n        地面 [140] [-100] [2]\n        地面 [140] [10] [2]\n        地面 [241] [10] [2]\n        spike maker [170] [10]\n        spike maker [-170] [-100]\n    end\n    if <(ステージ) = [8]> then\n        地面 [-220] [-100] [1]\n        地面 [-220] [-160] [2]\n        地面 [-120] [-160] [2]\n        地面 [-120] [-100] [2]\n        地面 [-220] [-100] [2]\n        地面 [-50] [-10] [1]\n        地面 [-50] [-80] [2]\n        地面 [60] [-80] [2]\n        地面 [60] [-10] [2]\n        地面 [-50] [-10] [2]\n        地面 [130] [50] [1]\n        地面 [130] [-10] [2]\n        地面 [220] [-10] [2]\n        地面 [220] [50] [2]\n        地面 [130] [50] [2]\n    end\n    if <(ステージ) = [9]> then\n        地面 [-241] [-120] [1]\n        地面 [140] [-120] [2]\n        地面 [140] [30] [2]\n        地面 [241] [30] [2]\n        地面 [-120] [-120] [1]\n        地面 [-120] [-50] [2]\n        地面 [-10] [-120] [1]\n        地面 [-10] [-10] [2]\n        spike maker [40] [-120]\n        spike maker [160] [30]\n    end\n    if <(ステージ) = [10]> then\n        地面 [-241] [-120] [1]\n        地面 [-90] [-120] [2]\n        地面 [-90] [-30] [2]\n        地面 [241] [-30] [2]\n        spike maker [-20] [-30]\n        spike maker [120] [-30]\n    end\n    if <(ステージ) = [11]> then\n        地面 [-241] [-120] [1]\n        地面 [-150] [-120] [2]\n        地面 [-90] [-60] [1]\n        地面 [-20] [-60] [2]\n        地面 [40] [0] [1]\n        地面 [110] [0] [2]\n        地面 [180] [40] [1]\n        地面 [241] [40] [2]\n    end\n    if <(ステージ) = [12]> then\n        地面 [-241] [-120] [1]\n        地面 [241] [-120] [2]\n    end\nend\n\nwhen I receive [スタート v]\nforever\n    if <(ステージ) = [1]> then\n        地面 [-241] [-100] [1]\n        地面 [241] [-100] [2]\n        地面 [-30] [-100] [1]\n        地面 [-30] [-20] [2]\n        地面 [140] [-100] [1]\n        地面 [140] [20] [2]\n    end\nend\n\ndefine spike maker (first x) (y)\nset pen color to (#546aff)\nset pen size to (10)\npen up\ngo to x: (first x) y: (y)\npen down\ngo to x: ((20) + (first x)) y: ((40) + (y))\ngo to x: ((40) + (first x)) y: (y)\ngo to x: (first x) y: (y)\npen up\n\n@Snow\n\nwhen I start as a clone\nshow\nset [pixelate v] effect to (pick random (-5) to (5))\nset [ghost v] effect to (0)\nset size to (pick random (1.01) to (400)) %\nset [ghost v] effect to (pick random (0) to (100))\ngo to x: (500) y: (pick random (-180) to (180))\nglide (pick random (2) to (5)) secs to x: (-240) y: (pick random (-180.01) to (180))\ndelete this clone\n\nrepeat (10)\n    change [ghost v] effect by (10)\nend\n\nwhen flag clicked\nhide\nforever\n    wait (0) seconds\n    create clone of (_myself_ v)\nend\n\n