Platformer 100%Pen

Instructions: Arrow keys or WASD to move.\nHAVE FUN!!\nLag? Try this link! https://phosphorus.github.io/#178703076\n\n矢印キーまたはW,A,Dで操作。\n重い場合は、こちらのリンクでプレイしてみて下さい。\nhttps://phosphorus.github.io/#178703076

@Stage\n\nwhen flag clicked\nset [save on/off v] to [on]\nbroadcast (Start Game v)\n\nwhen I receive [@save on/off v]\nif <(Save on/off) = [on]> then\n    set [save on/off v] to [off]\nelse\n    set [save on/off v] to [on]\nend\n\nwhen I receive [died v]\nplay sound [explode_11.mp3 v] until done\n\nwhen I receive [save v]\nplay sound [decision1.mp3 v] until done\n\nwhen I receive [start game v]\nforever\n    play sound [ParagonX9 - Chaoz Airflow.mp3 v] until done\nend\n\n@Player\n\nwhen flag clicked\nset [r x v] to [0]\nset [r y v] to [100]\nset [p x v] to (R X)\nset [p y v] to (R Y)\nset [p x speed v] to [0]\nset [p y speed v] to [0]\nset [view p x v] to [0]\nset [view p y v] to [0]\nset [visibility v] to [2.5]\n\nwhen I receive [start game v]\nforever\n    if <<key (right arrow v) pressed?> or <key (d v) pressed?>> then\n        change [p x speed v] by (3)\n    end\n    if <<key (left arrow v) pressed?> or <key (a v) pressed?>> then\n        change [p x speed v] by (-3)\n    end\n    change [p x v] by (P X Speed)\n    is Touching to Wall\n    if <(Result) = [1]> then\n        change [p x v] by ((P X Speed) * (-1))\n        set [p x speed v] to [0]\n    end\n    change [p y v] by (P Y Speed)\n    is Touching to Wall\n    if <<(Result) = [1]> and <(P Y Speed) < [0]>> then\n        change [p y v] by ((P Y Speed) * (-1))\n        if <(Big jump) = [1]> then\n            set [p y speed v] to [40]\n        else\n            set [p y speed v] to [0]\n            if <<key (up arrow v) pressed?> or <key (w v) pressed?>> then\n                set [p y speed v] to [20]\n            end\n        end\n    else\n        if <(Result) = [1]> then\n            change [p y v] by ((P Y Speed) * (-1))\n            set [p y speed v] to [0]\n        else\n            change [p y speed v] by (-1)\n        end\n    end\n    set [p x speed v] to ((P X Speed) * (0.8))\n    change [view p x v] by (((P X) - (View P X)) * (0.15))\n    change [view p y v] by (((P Y) - (View P Y)) * (0.15))\n    if <(P Y) < [-2000]> then\n        set [p x v] to (R X)\n        set [p y v] to (R Y)\n        set [p x speed v] to [0]\n        set [p y speed v] to [0]\n    end\nend\n\ndefine is Touching to Wall\nset [result v] to [0]\nset [big jump v] to [0]\nset [cnt1 v] to [1]\nrepeat ((length of [wall x v]) / (2))\n    if <(item (Cnt1) of [wall x v]) = (item ((Cnt1) + (1)) of [wall x v])> then\n        if <<<((item (Cnt1) of [wall y v]) + ((25) * (-1.2))) < (P Y)> and <(P Y) < ((item ((Cnt1) + (1)) of [wall y v]) + ((25) * (1.2)))>> and <([abs v] of ((item (Cnt1) of [wall x v]) - (P X)) ) < ((10) + (25))>> then\n            set [result v] to [1]\n            if <(item (Cnt1) of [wall type v]) = [Red]> then\n                broadcast (died v)\n                set [p x v] to (R X)\n                set [p y v] to (R Y)\n                set [p x speed v] to [0]\n                set [p y speed v] to [0]\n            end\n            if <(item (Cnt1) of [wall type v]) = [Bounce]> then\n                set [big jump v] to [1]\n            end\n        end\n    else\n        if <<<((item (Cnt1) of [wall x v]) + (((25) + (0)) * (-1))) < (P X)> and <(P X) < ((item ((Cnt1) + (1)) of [wall x v]) + ((25) + (0)))>> and <([abs v] of ((item (Cnt1) of [wall y v]) - (P Y)) ) < ((10) + (25))>> then\n            set [result v] to [1]\n            if <<<(item (Cnt1) of [wall type v]) = [CP]> and <(item (Cnt1) of [wall flag v]) = [0]>> and <(Save on/off) = [on]>> then\n                broadcast (save v)\n                replace item (Cnt1) of [wall flag v] with [1]\n                set [r x v] to (((item (Cnt1) of [wall x v]) + (item ((Cnt1) + (1)) of [wall x v])) / (2))\n                set [r y v] to ((item (Cnt1) of [wall y v]) + (100))\n            end\n            if <(item (Cnt1) of [wall type v]) = [Red]> then\n                broadcast (died v)\n                set [p x v] to (R X)\n                set [p y v] to (R Y)\n                set [p x speed v] to [0]\n                set [p y speed v] to [0]\n            end\n            if <(item (Cnt1) of [wall type v]) = [Bounce]> then\n                set [big jump v] to [1]\n            end\n        end\n    end\n    if <(Result) = [1]> then\n        stop [this script v]\n    end\n    change [cnt1 v] by (2)\nend\n\n@Drawer\n\nwhen flag clicked\nerase all\n\nwhen I receive [start game v]\nforever\n    Draw Wall\n    Draw Player\nend\n\ndefine None\nset pen color to (((((number1) * (16777216)) + ((number2) * (65536))) + ((number3) * (256))) + (number4))\n\ndefine Draw Player\npen up\nARGB Alpha (256) Red (100) Green (100) Blue (100)\nSet X to (P X) Y to (P Y)\nset pen size to ((50) / (Visibility))\npen down\npen up\n\ndefine None\ngo to x: (((x) - (View P X)) / (Visibility)) y: (((y) - (View P Y)) / (Visibility))\n\ndefine Draw Wall\nset [cnt v] to [1]\nset pen size to ((20) / (Visibility))\nrepeat ((length of [wall x v]) / (2))\n    if <<([abs v] of ((item (Cnt) of [wall x v]) - (P X)) ) < ((250) * (Visibility))> or <<([abs v] of ((item ((Cnt) + (1)) of [wall x v]) - (P X)) ) < ((250) * (Visibility))> or <<([abs v] of ((item (Cnt) of [wall y v]) - (P Y)) ) < ((190) * (Visibility))> or <([abs v] of ((item ((Cnt) + (1)) of [wall y v]) - (P Y)) ) < ((190) * (Visibility))>>>> then\n        if <(item (Cnt) of [wall type v]) = [Normal]> then\n            ARGB Alpha (256) Red (100) Green (100) Blue (100)\n        end\n        if <(item (Cnt) of [wall type v]) = [CP]> then\n            if <(item (Cnt) of [wall flag v]) = [0]> then\n                ARGB Alpha (256) Red (100) Green (255) Blue (100)\n            else\n                ARGB Alpha (256) Red (100) Green (100) Blue (255)\n            end\n        end\n        if <(item (Cnt) of [wall type v]) = [Red]> then\n            ARGB Alpha (256) Red (255) Green (100) Blue (100)\n        end\n        if <(item (Cnt) of [wall type v]) = [Bounce]> then\n            ARGB Alpha (256) Red (255) Green (200) Blue (100)\n        end\n        pen up\n        Set X to (item (Cnt) of [wall x v]) Y to (item (Cnt) of [wall y v])\n        pen down\n        Set X to (item ((Cnt) + (1)) of [wall x v]) Y to (item ((Cnt) + (1)) of [wall y v])\n        pen up\n    end\n    change [cnt v] by (2)\nend\n\n@Maker\n\ndefine None\nadd (x) to [wall x v]\nadd (y) to [wall y v]\nadd (x) to [wall x v]\nadd (y) to [wall y v]\nrepeat (2)\n    add (type) to [wall type v]\n    add (flag) to [wall flag v]\nend\n\nwhen I receive [start game v]\ndelete (all) of [wall x v]\ndelete (all) of [wall y v]\ndelete (all) of [wall type v]\ndelete (all) of [wall flag v]\nMake a Wall From (-200) (-100) to (200) (-100) Type [Normal] Flag (0)\nMake a Wall From (400) (-100) to (600) (-100) Type [Normal] Flag (0)\nMake a Wall From (800) (50) to (900) (50) Type [Normal] Flag (0)\nMake a Wall From (1200) (50) to (1300) (50) Type [Normal] Flag (0)\nMake a Wall From (1500) (50) to (1800) (50) Type [CP] Flag (0)\nMake a Wall From (2100) (-100) to (3780) (-100) Type [Normal] Flag (0)\nMake a Wall From (2400) (-100) to (2400) (60) Type [Red] Flag (0)\nMake a Wall From (2600) (-100) to (2600) (60) Type [Red] Flag (0)\nMake a Wall From (2800) (-100) to (2800) (60) Type [Red] Flag (0)\nMake a Wall From (3000) (-100) to (3000) (60) Type [Red] Flag (0)\nMake a Wall From (3800) (-100) to (4000) (-100) Type [Bounce] Flag (0)\nMake a Wall From (4100) (600) to (4400) (600) Type [Normal] Flag (0)\nMake a Wall From (4700) (600) to (4900) (600) Type [CP] Flag (0)\nMake a Wall From (5200) (800) to (5500) (800) Type [Normal] Flag (0)\nMake a Wall From (5700) (400) to (5900) (400) Type [Normal] Flag (0)\nMake a Wall From (6200) (400) to (6400) (400) Type [Normal] Flag (0)\nMake a Wall From (6700) (400) to (6900) (400) Type [Normal] Flag (0)\nMake a Wall From (6900) (400) to (6900) (1600) Type [Normal] Flag (0)\nMake a Wall From (6750) (600) to (6900) (600) Type [Normal] Flag (0)\nMake a Wall From (6750) (800) to (6900) (800) Type [Normal] Flag (0)\nMake a Wall From (6750) (1000) to (6900) (1000) Type [Normal] Flag (0)\nMake a Wall From (6750) (1200) to (6900) (1200) Type [Normal] Flag (0)\nMake a Wall From (6750) (1400) to (6900) (1400) Type [Normal] Flag (0)\nMake a Wall From (6900) (1600) to (7200) (1600) Type [CP] Flag (0)\nMake a Wall From (7200) (400) to (7600) (400) Type [Normal] Flag (0)\nMake a Wall From (8000) (400) to (8180) (400) Type [Normal] Flag (0)\nMake a Wall From (8200) (400) to (8380) (400) Type [Red] Flag (0)\nMake a Wall From (8400) (400) to (8580) (400) Type [Normal] Flag (0)\nMake a Wall From (8600) (400) to (8780) (400) Type [Red] Flag (0)\nMake a Wall From (8800) (400) to (8980) (400) Type [Normal] Flag (0)\nMake a Wall From (9000) (400) to (9180) (400) Type [Red] Flag (0)\nMake a Wall From (9180) (400) to (9180) (600) Type [Red] Flag (0)\nMake a Wall From (9400) (400) to (9600) (400) Type [Normal] Flag (0)\nMake a Wall From (9700) (0) to (10000) (0) Type [CP] Flag (0)\nMake a Wall From (10300) (400) to (11680) (400) Type [Red] Flag (0)\nMake a Wall From (10300) (0) to (10480) (0) Type [Normal] Flag (0)\nMake a Wall From (10500) (0) to (10680) (0) Type [Bounce] Flag (0)\nMake a Wall From (10700) (0) to (10880) (0) Type [Normal] Flag (0)\nMake a Wall From (10900) (0) to (11080) (0) Type [Bounce] Flag (0)\nMake a Wall From (11100) (0) to (11280) (0) Type [Normal] Flag (0)\nMake a Wall From (11300) (0) to (11480) (0) Type [Bounce] Flag (0)\nMake a Wall From (11500) (0) to (11680) (0) Type [Normal] Flag (0)\nMake a Wall From (11900) (100) to (12000) (100) Type [Normal] Flag (0)\nMake a Wall From (12200) (250) to (12300) (250) Type [Normal] Flag (0)\nMake a Wall From (12500) (400) to (12600) (400) Type [Normal] Flag (0)\nMake a Wall From (12800) (550) to (12900) (550) Type [Normal] Flag (0)\nMake a Wall From (13100) (550) to (13400) (550) Type [CP] Flag (0)\nMake a Wall From (13400) (-500) to (13400) (550) Type [Normal] Flag (0)\nMake a Wall From (13500) (-400) to (13500) (1000) Type [Normal] Flag (0)\nMake a Wall From (13400) (-500) to (15000) (-500) Type [Normal] Flag (0)\nMake a Wall From (15000) (-500) to (15000) (400) Type [Normal] Flag (0)\nMake a Wall From (13500) (550) to (15000) (550) Type [Normal] Flag (0)\nMake a Wall From (13500) (-300) to (13600) (-300) Type [Normal] Flag (0)\nMake a Wall From (13800) (-90) to (13900) (-90) Type [Normal] Flag (0)\nMake a Wall From (14300) (0) to (14400) (0) Type [Normal] Flag (0)\nMake a Wall From (14300) (200) to (14400) (200) Type [Normal] Flag (0)\nMake a Wall From (14900) (200) to (15000) (200) Type [Normal] Flag (0)\nMake a Wall From (15000) (400) to (15200) (400) Type [CP] Flag (0)\nMake a Wall From (13500) (650) to (13600) (650) Type [Normal] Flag (0)\nMake a Wall From (13700) (800) to (13800) (800) Type [Bounce] Flag (0)\nMake a Wall From (13900) (1600) to (14000) (1600) Type [Bounce] Flag (0)\nMake a Wall From (14100) (2400) to (14200) (2400) Type [Bounce] Flag (0)\nMake a Wall From (14300) (3200) to (14400) (3200) Type [Bounce] Flag (0)\nMake a Wall From (14500) (4000) to (14700) (4000) Type [CP] Flag (0)\nMake a Wall From (14700) (900) to (14700) (4000) Type [Normal] Flag (0)\nMake a Wall From (15200) (1200) to (15200) (4200) Type [Normal] Flag (0)\nMake a Wall From (14700) (900) to (15200) (900) Type [Normal] Flag (0)\nMake a Wall From (14700) (3600) to (15000) (3600) Type [Red] Flag (0)\nMake a Wall From (14900) (3000) to (15200) (3000) Type [Red] Flag (0)\nMake a Wall From (14900) (1200) to (15000) (1200) Type [Red] Flag (0)\nMake a Wall From (15220) (900) to (15500) (900) Type [CP] Flag (0)\nMake a Wall From (15700) (1000) to (15800) (1000) Type [Normal] Flag (0)\nMake a Wall From (16200) (1150) to (16300) (1150) Type [Normal] Flag (0)\nMake a Wall From (16700) (1300) to (16800) (1300) Type [Normal] Flag (0)\nMake a Wall From (17200) (1450) to (17300) (1450) Type [Normal] Flag (0)\nMake a Wall From (17700) (1600) to (17800) (1600) Type [Normal] Flag (0)\nMake a Wall From (18200) (1750) to (18300) (1750) Type [Normal] Flag (0)\nMake a Wall From (18700) (1900) to (19000) (1900) Type [CP] Flag (0)\nMake a Wall From (19020) (1900) to (21000) (1900) Type [Normal] Flag (0)\n\nset [visibility v] to [2.5]\n\nset [visibility v] to [70]\n\nset [p x v] to [15380]\nset [p y v] to [950]\n\nset [p x v] to [14600]\nset [p y v] to [4100]\n\n@Digital 2[For backpack]\n\nwhen flag clicked\nset [scene v] to [1]\nforever\n    erase all\n    Write (join [FPS:] ([fps v] of [fps v])) X (-235) Y (-170) Size (10) Thickness (2) Type (1) ARGB [] UI [] Link [] ARGB Mouse on []\n    Write [platformer] X (((-450) - (View P X)) / (Visibility)) Y (((200) - (View P Y)) / (Visibility)) Size ((100) / (Visibility)) Thickness ((15) / (Visibility)) Type (1) ARGB [] UI [y] Link [] ARGB Mouse on [ff]\n    Write [100%pen] X (((450) - (View P X)) / (Visibility)) Y (((100) - (View P Y)) / (Visibility)) Size ((50) / (Visibility)) Thickness ((10) / (Visibility)) Type (3) ARGB [] UI [] Link [] ARGB Mouse on []\n    Write (join [save:] (Save on/off)) X (((-450) - (View P X)) / (Visibility)) Y (((-250) - (View P Y)) / (Visibility)) Size ((50) / (Visibility)) Thickness ((10) / (Visibility)) Type (1) ARGB [000000] UI [y] Link [@save on/off] ARGB Mouse on [888888]\n    Write [created by daidaidai1] X (((-450) - (View P X)) / (Visibility)) Y (((-350) - (View P Y)) / (Visibility)) Size ((30) / (Visibility)) Thickness ((5) / (Visibility)) Type (1) ARGB [] UI [] Link [] ARGB Mouse on []\n    Write [ver.1.1] X (((450) - (View P X)) / (Visibility)) Y (((-350) - (View P Y)) / (Visibility)) Size ((30) / (Visibility)) Thickness ((5) / (Visibility)) Type (3) ARGB [] UI [] Link [] ARGB Mouse on []\n    Write [Green is a save point] X (((1650) - (View P X)) / (Visibility)) Y (((300) - (View P Y)) / (Visibility)) Size ((50) / (Visibility)) Thickness ((10) / (Visibility)) Type (2) ARGB [0000ff00] UI [] Link [] ARGB Mouse on []\n    Write [Don't touch] X (((2500) - (View P X)) / (Visibility)) Y (((200) - (View P Y)) / (Visibility)) Size ((50) / (Visibility)) Thickness ((10) / (Visibility)) Type (2) ARGB [00ff0000] UI [] Link [] ARGB Mouse on []\n    Write [the red] X (((2500) - (View P X)) / (Visibility)) Y (((130) - (View P Y)) / (Visibility)) Size ((50) / (Visibility)) Thickness ((10) / (Visibility)) Type (2) ARGB [00ff0000] UI [] Link [] ARGB Mouse on []\n    Write [Orange is bouncy] X (((3800) - (View P X)) / (Visibility)) Y (((150) - (View P Y)) / (Visibility)) Size ((50) / (Visibility)) Thickness ((10) / (Visibility)) Type (2) ARGB [00ff9911] UI [] Link [] ARGB Mouse on []\n    Write [Good luck!] X (((4800) - (View P X)) / (Visibility)) Y (((800) - (View P Y)) / (Visibility)) Size ((80) / (Visibility)) Thickness ((10) / (Visibility)) Type (2) ARGB [00ff9911] UI [] Link [] ARGB Mouse on []\n    Write [Go down!] X (((7300) - (View P X)) / (Visibility)) Y (((1800) - (View P Y)) / (Visibility)) Size ((80) / (Visibility)) Thickness ((10) / (Visibility)) Type (2) ARGB [] UI [] Link [] ARGB Mouse on []\n    Write [Go to left side!] X (((15100) - (View P X)) / (Visibility)) Y (((800) - (View P Y)) / (Visibility)) Size ((80) / (Visibility)) Thickness ((10) / (Visibility)) Type (2) ARGB [] UI [] Link [] ARGB Mouse on []\n    Write [Thank you] X (((20000) - (View P X)) / (Visibility)) Y (((2300) - (View P Y)) / (Visibility)) Size ((80) / (Visibility)) Thickness ((10) / (Visibility)) Type (2) ARGB [] UI [] Link [] ARGB Mouse on []\n    Write [For playng!] X (((20050) - (View P X)) / (Visibility)) Y (((2200) - (View P Y)) / (Visibility)) Size ((80) / (Visibility)) Thickness ((10) / (Visibility)) Type (2) ARGB [] UI [] Link [] ARGB Mouse on []\n    Write [Love] X (((19700) - (View P X)) / (Visibility)) Y (((2000) - (View P Y)) / (Visibility)) Size ((130) / (Visibility)) Thickness ((30) / (Visibility)) Type (2) ARGB [FFD700] UI [] Link [] ARGB Mouse on []\n    Write [and] X (((20000) - (View P X)) / (Visibility)) Y (((2000) - (View P Y)) / (Visibility)) Size ((50) / (Visibility)) Thickness ((10) / (Visibility)) Type (2) ARGB [] UI [] Link [] ARGB Mouse on []\n    Write [Favo] X (((20320) - (View P X)) / (Visibility)) Y (((2000) - (View P Y)) / (Visibility)) Size ((130) / (Visibility)) Thickness ((30) / (Visibility)) Type (2) ARGB [FF69B4] UI [] Link [] ARGB Mouse on []\nend\n\nwhen flag clicked\ndelete (all) of [characters v]\nadd [1] to [characters v]\nadd [2] to [characters v]\nadd [3] to [characters v]\nadd [4] to [characters v]\nadd [5] to [characters v]\nadd [6] to [characters v]\nadd [7] to [characters v]\nadd [8] to [characters v]\nadd [9] to [characters v]\nadd [0] to [characters v]\nadd [a] to [characters v]\nadd [b] to [characters v]\nadd [c] to [characters v]\nadd [d] to [characters v]\nadd [e] to [characters v]\nadd [f] to [characters v]\nadd [g] to [characters v]\nadd [h] to [characters v]\nadd [i] to [characters v]\nadd [j] to [characters v]\nadd [k] to [characters v]\nadd [l] to [characters v]\nadd [m] to [characters v]\nadd [n] to [characters v]\nadd [o] to [characters v]\nadd [p] to [characters v]\nadd [q] to [characters v]\nadd [r] to [characters v]\nadd [s] to [characters v]\nadd [t] to [characters v]\nadd [u] to [characters v]\nadd [v] to [characters v]\nadd [w] to [characters v]\nadd [x] to [characters v]\nadd [y] to [characters v]\nadd [z] to [characters v]\nadd [ ] to [characters v]\nadd [.] to [characters v]\nadd [,] to [characters v]\nadd [\(] to [characters v]\nadd [\)] to [characters v]\nadd ['] to [characters v]\nadd ["] to [characters v]\nadd [!] to [characters v]\nadd [?] to [characters v]\nadd [+] to [characters v]\nadd [-] to [characters v]\nadd [*] to [characters v]\nadd [#] to [characters v]\nadd [%] to [characters v]\nadd [:] to [characters v]\nadd [□] to [characters v]\nadd [■] to [characters v]\nadd [Out] to [characters v]\n\nwhen flag clicked\ndelete (all) of [char data v]\nadd [26d3731u11d51] to [char data v]\nadd [16d274756551151] to [char data v]\nadd [16d274756554424u44d5352412112] to [char data v]\nadd [41d47141353] to [char data v]\nadd [57d1715455452412112] to [char data v]\nadd [56d47271612214152534414] to [char data v]\nadd [17d57563431] to [char data v]\nadd [27d4756554424151627u24d13122141525344] to [char data v]\nadd [12d21415256472716152454] to [char data v]\nadd [27d4756524121121627] to [char data v]\nadd [16d27475651u16d11u14d54] to [char data v]\nadd [17d114152534414u17d47565544] to [char data v]\nadd [57d2716122151] to [char data v]\nadd [17d475652411117] to [char data v]\nadd [57d171151u44d14] to [char data v]\nadd [57d1711u44d14] to [char data v]\nadd [57d2716122141525434] to [char data v]\nadd [17d11u57d51u54d14] to [char data v]\nadd [17d57u11d51u37d31] to [char data v]\nadd [47d4231211213] to [char data v]\nadd [17d11u57d1451] to [char data v]\nadd [17d1151] to [char data v]\nadd [11d17345751] to [char data v]\nadd [11d175157] to [char data v]\nadd [27d4756524121121627] to [char data v]\nadd [11d174756554414] to [char data v]\nadd [27d4756524121121627u51d33] to [char data v]\nadd [11d17475655441451] to [char data v]\nadd [57d2716144453524111] to [char data v]\nadd [17d57u37d31] to [char data v]\nadd [17d1221415257] to [char data v]\nadd [17d3157] to [char data v]\nadd [17d11345157] to [char data v]\nadd [17d51u57d11] to [char data v]\nadd [17d3431u57d34] to [char data v]\nadd [17d5756121151] to [char data v]\nadd [] to [char data v]\nadd [21d21] to [char data v]\nadd [32d21] to [char data v]\nadd [47d3726223141] to [char data v]\nadd [27d3746423121] to [char data v]\nadd [37d36] to [char data v]\nadd [27d26u37d36] to [char data v]\nadd [37d32u31d31] to [char data v]\nadd [16d274756553432u31d31] to [char data v]\nadd [14d54u36d32] to [char data v]\nadd [14d54] to [char data v]\nadd [27d45u47d25u37d35] to [char data v]\nadd [25d45u23d43u36d22u46d32] to [char data v]\nadd [45d11u14d24251514u41d42323141] to [char data v]\nadd [37d35u33d31] to [char data v]\nadd [25d45432325] to [char data v]\nadd [25d45432325u35d33u24d44] to [char data v]\nadd [17d11515717u36d33u32d32] to [char data v]\n\ndefine None\nset [start v] to (((x) + ((size) / (3))) - (((type) - (1)) * ((((length of (sentence)) * (((4) * (size)) / (6))) + (((length of (sentence)) - (1)) * (((size) * (0.9)) - (((4) * (size)) / (6))))) / (2))))\nif <<<<[-250] < ((Start) - ((2) * ((size) / (6))))> and <((Start) - ((2) * ((size) / (6)))) < [250]>> or <<[-250] < (((Start) + (((length of (sentence)) * (((4) * (size)) / (6))) + (((length of (sentence)) - (1)) * (((size) * (0.9)) - (((4) * (size)) / (6)))))) - ((2) * ((size) / (6))))> and <(((Start) + (((length of (sentence)) * (((4) * (size)) / (6))) + (((length of (sentence)) - (1)) * (((size) * (0.9)) - (((4) * (size)) / (6)))))) - ((2) * ((size) / (6)))) < [250]>>> and <([abs v] of ((y) + ((size) / (2))) ) < [190]>> then\n    if <<(ui y/n) = [y]> and <<([abs v] of ((y) - (mouse y)) ) < ((size) / (2))> and <<(mouse x) > ((Start) - ((2) * ((size) / (7))))> and <(mouse x) < (((Start) + (((length of (sentence)) * (((4) * (size)) / (6))) + (((length of (sentence)) - (1)) * (((size) * (0.9)) - (((4) * (size)) / (6)))))) - ((2) * ((size) / (6))))>>>> then\n        set pen color to (join [0x] (argb mouse))\n        if <<mouse down?> and <(Clicked) = [0]>> then\n            if <(letter (1) of (link)) = [@]> then\n                broadcast (link)\n            else\n                set [scene v] to (link)\n            end\n            set [clicked v] to [1]\n        end\n        if <not <mouse down?>> then\n            set [clicked v] to [0]\n        end\n    else\n        set pen color to (join [0x] (argb))\n    end\n    set pen size to (t)\n    pen up\n    set [count1 v] to [1]\n    repeat (length of (sentence))\n        set [count2 v] to [1]\n        repeat until <<(item (Count2) of [characters v]) = (letter (Count1) of (sentence))> or <(Count2) = (length of [characters v])>>\n            change [count2 v] by (1)\n        end\n        set [count3 v] to [1]\n        repeat until <<(Count3) = (length of (item (Count2) of [char data v]))> or <(Count3) > (length of (item (Count2) of [char data v]))>>\n            if <(letter (Count3) of (item (Count2) of [char data v])) = [u]> then\n                pen up\n                change [count3 v] by (1)\n            else\n                if <(letter (Count3) of (item (Count2) of [char data v])) = [d]> then\n                    pen down\n                    change [count3 v] by (1)\n                else\n                    go to x: (((Start) + (((Count1) - (1)) * ((size) * (0.9)))) + ((((letter (Count3) of (item (Count2) of [char data v])) - (3)) * (size)) / (6))) y: ((y) + ((((letter ((Count3) + (1)) of (item (Count2) of [char data v])) - (4)) * (size)) / (6)))\n                    change [count3 v] by (2)\n                end\n            end\n        end\n        pen up\n        change [count1 v] by (1)\n    end\nend\n\n@FPS\n\ndefine FPS\nif <[1] < (timer)> then\n    set [fps v] to (Count)\n    set [count v] to [0]\n    reset timer\n    wait (0) seconds\nend\n\nwhen flag clicked\nset [count v] to [0]\nreset timer\nforever\n    change [count v] by (1)\n    FPS\nend\n\n