Neutron - A Pen Platformer
@Stage\n\nwhen [u v] key pressed\nwait until <not <key (u v) pressed?>>\nshow variable [mouse v]\nset [mouse v] to (join [Position X:] (join (round ((((mouse x) * (10)) / (10)) + (((SCROLL X) * (10)) / (10)))) (join [, Y: ] (round ((((mouse y) * (10)) / (10)) + (((SCROLL Y) * (10)) / (10)))))))\nwait until <key (u v) pressed?>\nwait until <not <key (u v) pressed?>>\nhide variable [mouse v]\n\nwhen flag clicked\nset [volume v] to [100]\nforever\n    if <(Go?) = [yes]> then\n        set volume to (Volume) %\n    else\n        set volume to (0) %\n    end\nend\n\nwhen [m v] key pressed\nwait until <not <key (m v) pressed?>>\nset [volume v] to [0]\nwait until <key (m v) pressed?>\nwait until <not <key (m v) pressed?>>\nset [volume v] to [100]\n\nwhen I receive [scripts v]\nforever\n    play sound [Moose - Bensound Royalty Free Music - No Copyright Music Bensound Music v] until done\nend\n\nwhen [q v] key pressed\nif <(Go?) = [no]> then\n    if <(Color Changer Open?) = [no]> then\n        wait until <not <key (q v) pressed?>>\n        set [help open? v] to [yes]\n        wait until <key (q v) pressed?>\n        wait until <not <key (q v) pressed?>>\n        set [help open? v] to [no]\n    end\nend\n\nwhen flag clicked\nset [help open? v] to [no]\n\nwhen flag clicked\nforever\n    if <(Go?) = [yes]> then\n        set [help open? v] to [no]\n        set [color changer open? v] to [no]\n    end\nend\n\n@Blank\n\n@Pen\n\ndefine Find Distance To Mouse\nset [distance to mouse v] to ([sqrt v] of ((((Thumbstick X) - (mouse x)) * ((Thumbstick X) - (mouse x))) + (((Thumbstick Y) - (mouse y)) * ((Thumbstick Y) - (mouse y)))) )\n\ndefine Point Towards Mouse\nset [direction of mouse v] to (([atan v] of (((Thumbstick X) - (mouse x)) / ((Thumbstick Y) - (mouse y))) ) + ((<((Thumbstick Y) - (mouse y)) > [0]> * (180)) + (<((Thumbstick Y) - (mouse y)) = [0]> * (180))))\n\nwhen I receive [scripts v]\nforever\n    change [pen tick v] by (1)\n    if <(pen tick) > [20]> then\n        repeat until <(pen tick) < [1]>\n            change [pen tick v] by (-1)\n        end\n    end\nend\n\nwhen flag clicked\nerase all\nset [checkpoints found v] to [1]\nset [player x v] to [0]\nset [player y v] to [0]\nset [xv v] to [0]\nset [win? v] to [0]\nset [go? v] to [yes]\nbroadcast (Intro v) and wait\nbroadcast (Scripts v)\nbroadcast (Reset v) and wait\nforever\n    if <(Win?) = [0]> then\n        Game Loop\n        if <(Dead) = [1]> then\n            Reset\n        end\n    else\n        Win\n    end\nend\n\nwhen I receive [reset v]\nReset\n\ndefine Reset\ndelete all of [platform type v]\ndelete all of [platform height v]\ndelete all of [platform length v]\ndelete all of [platform x v]\ndelete all of [platform y v]\ndelete all of [collision v]\ndelete all of [checkpoint x v]\ndelete all of [checkpoint y v]\nadd [0] to [checkpoint x v]\nadd [0] to [checkpoint y v]\nadd [2800] to [checkpoint x v]\nadd [200] to [checkpoint y v]\nadd [5265] to [checkpoint x v]\nadd [550] to [checkpoint y v]\nadd [7500] to [checkpoint x v]\nadd [1720] to [checkpoint y v]\nset [dead v] to [0]\nset [collision width v] to [23]\nset [grid length v] to [40]\nset [player x v] to (item (Checkpoints Found) of [checkpoint x v])\nset [player y v] to (item (Checkpoints Found) of [checkpoint y v])\nset [scroll x v] to (Player X)\nset [scroll y v] to (Player Y)\nset [xv v] to [0]\nset [yv v] to [0]\nset [player width v] to [15]\nset [switch v] to [0]\nset [in air v] to [0]\n\ndefine Game Loop\nerase all\nbroadcast (Tick v)\n\ndefine Render Game\ndelete all of [platform type v]\ndelete all of [platform x v]\ndelete all of [platform y v]\ndelete all of [platform height v]\ndelete all of [platform length v]\ndelete all of [checkpoint x v]\ndelete all of [checkpoint y v]\nadd [0] to [checkpoint x v]\nadd [0] to [checkpoint y v]\nDraw Level\nDraw Player\n\ndefine Do Physics With Speed: (speed) And Jump Height: (jump height)\nset size to (100) %\ngo to x: ((Player X) - (SCROLL X)) y: ((Player Y) - (SCROLL Y))\nif <<<key (right arrow v) pressed?> or <key (d v) pressed?>> or <<(mouse x) > (Thumbstick Button X)> and <<(Thumbstick Button X) > (Thumbstick X)> and <mouse down?>>>> then\n    change [xv v] by (speed)\nend\nif <<<key (left arrow v) pressed?> or <key (a v) pressed?>> or <<(mouse x) < (Thumbstick Button X)> and <<(Thumbstick Button X) < (Thumbstick X)> and <mouse down?>>>> then\n    change [xv v] by ((speed) * (-1))\nend\nset [xv v] to ((Xv) * (0.8))\nif <([abs v] of (Xv) ) > [0.9]> then\n    Change Player X By: (round (Xv))\nend\nchange [yv v] by (-2)\nif <(In Air) < [6]> then\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<(mouse y) > (Thumbstick Button Y)> and <<(Thumbstick Button Y) > (Thumbstick Y)> and <mouse down?>>>> then\n        set [yv v] to (jump height)\n    end\nend\nif <[collision v] contains [bounce]?> then\n    set [yv v] to [30]\nend\nChange Player Y By: (Yv)\nif <<[collision v] contains [lava]?> or <<(Player Y) < [-300]> or <(Yv) < [-100]>>> then\n    set [dead v] to [1]\nend\nchange [scroll x v] by (((Player X) - (SCROLL X)) / (5))\nchange [scroll y v] by (((Player Y) - (SCROLL Y)) / (5))\nCollision (Collision Width)\n\ndefine Change Player X By: (xv)\nchange [player x v] by (xv)\nCollision (Collision Width)\nif <[collision v] contains [platform]?> then\n    repeat (8)\n        change [player y v] by (1)\n        Collision (Collision Width)\n        if <not <[collision v] contains [platform]?>> then\n            stop [this script v]\n        end\n    end\n    change [player y v] by (-8)\n    if <<<key (up arrow v) pressed?> or <key (w v) pressed?>> or <<(mouse y) > (Thumbstick Button Y)> and <<(Thumbstick Button Y) > (Thumbstick Y)> and <mouse down?>>>> then\n        set [yv v] to [25]\n        if <(Xv) > [0]> then\n            set [xv v] to [-25]\n        else\n            set [xv v] to [25]\n        end\n    else\n        set [xv v] to [0]\n    end\n    repeat until <not <[collision v] contains [platform]?>>\n        Collision (Collision Width)\n        if <(xv) > [0]> then\n            change [player x v] by (-1)\n        else\n            change [player x v] by (1)\n        end\n    end\nend\n\ndefine Collision (width)\ndelete all of [collision v]\nset [i v] to [0]\nrepeat (length of [platform y v])\n    change [i v] by (1)\n    if <not <(Player X) > (((item (i) of [platform x v]) + (item (i) of [platform length v])) + (width))>> then\n        if <not <(Player Y) > (((item (i) of [platform y v]) + (item (i) of [platform height v])) + (width))>> then\n            if <not <(Player X) < (((item (i) of [platform x v]) - (item (i) of [platform length v])) - (width))>> then\n                if <not <(Player Y) < (((item (i) of [platform y v]) - (item (i) of [platform height v])) - (width))>> then\n                    add (item (i) of [platform type v]) to [collision v]\n                end\n            end\n        end\n    end\nend\n\ndefine Change Player Y By: (yv)\nif <(Switch) = [0]> then\n    change [player y v] by (yv)\nelse\n    change [player y v] by ((yv) * (-1))\nend\nchange [in air v] by (1)\nCollision (Collision Width)\nrepeat until <not <[collision v] contains [Platform]?>>\n    Collision (Collision Width)\n    set [yv v] to [0]\n    if <(Switch) = [0]> then\n        if <(yv) > [0]> then\n            change [player y v] by (-1)\n        else\n            change [player y v] by (1)\n            set [in air v] to [0]\n        end\n    else\n        if <((yv) * (-1)) > [0]> then\n            change [player y v] by (-1)\n            set [in air v] to [0]\n        else\n            change [player y v] by (1)\n        end\n    end\nend\n\ndefine Draw Platform At (x) (y) With Length And Height: (length) (height) And Color: (color)\nadd (x) to [platform x v]\nadd (y) to [platform y v]\nadd ([abs v] of (length) ) to [platform length v]\nadd ([abs v] of (height) ) to [platform height v]\nadd [platform] to [platform type v]\nif <(color) = [999]> then\n    set pen (color v) to (color)\n    set pen (saturation v) to (0)\n    set pen (brightness v) to (2)\n    Draw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [16]\n    Draw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [16]\n    Draw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [16]\n    Draw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [16]\n    set pen (brightness v) to (5)\n    Draw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [10]\n    Draw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [10]\n    Draw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [10]\n    Draw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [10]\nelse\n    set pen (color v) to (color)\n    set pen (saturation v) to (100)\n    set pen (brightness v) to (60)\n    Draw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [16]\n    Draw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [16]\n    Draw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [16]\n    Draw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [16]\n    set pen (brightness v) to (100)\n    Draw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [10]\n    Draw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [10]\n    Draw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [10]\n    Draw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [10]\nend\n\ndefine Draw Line From (x1) (y1) To (x2) (y2) Size: (size)\nset pen size to (size)\npen up\ngo to x: ((x1) - (SCROLL X)) y: ((y1) - (SCROLL Y))\npen down\ngo to x: ((x2) - (SCROLL X)) y: ((y2) - (SCROLL Y))\npen up\n\ndefine Draw Level\nif <(Checkpoints Found) < [5]> then\n    Draw Platform At [100] [-100] With Length And Height: [200] [50] And Color: [60]\n    Draw Lava At [415] [-100] With Length And Height [100] [50] And Color [0]\n    Draw Platform At [630] [-100] With Length And Height: [100] [50] And Color: [60]\n    Draw Gravity Shift At [795] [-100] With Length And Height [50] [50] And Color [30]\n    Draw Platform At [1000] [200] With Length And Height: [200] [50] And Color: [60]\n    Draw Bounce At [1265] [200] With Length And Height [50] [50] And Color [15]\n    Draw Platform At [1530] [200] With Length And Height: [200] [50] And Color: [60]\n    Draw Gravity Shift At [1795] [200] With Length And Height [50] [50] And Color [30]\n    Draw Platform At [2100] [-100] With Length And Height: [300] [50] And Color: [60]\n    Draw Lava At [2000] [-48] With Length And Height [50] [0] And Color [0]\n    Draw Lava At [2200] [-48] With Length And Height [50] [0] And Color [0]\n    Draw Bounce At [2465] [-100] With Length And Height [50] [50] And Color [15]\n    Draw Platform At [2750] [100] With Length And Height: [150] [50] And Color: [60]\n    Draw Checkpoint At: [2800] [200] With Length And Height: [20] [20] And Color: [90]\n    Draw Platform At ((3165) + ((200) * ([sin v] of ((Timer) * (1.3)) ))) [100] With Length And Height: [50] [50] And Color: [60]\n    Draw Lava At [3480] [100] With Length And Height [50] [50] And Color [0]\n    Draw Platform At [3695] [100] With Length And Height: [150] [50] And Color: [60]\n    Draw Platform At [3795] [315] With Length And Height: [50] [150] And Color: [60]\n    Draw Lava At [3960] [100] With Length And Height [100] [50] And Color [0]\n    Draw Platform At [4225] [100] With Length And Height: [150] [50] And Color: [60]\n    Draw Gravity Shift At [4440] [100] With Length And Height [50] [50] And Color [30]\n    Draw Platform At [4440] [450] With Length And Height: [20] [20] And Color: [60]\n    Draw Platform At [4640] [450] With Length And Height: [20] [20] And Color: [60]\n    Draw Platform At [4840] [450] With Length And Height: [20] [20] And Color: [60]\n    Draw Platform At [5000] [700] With Length And Height: [200] [50] And Color: [60]\n    Draw Spike At: [5050] [615] With Length And Height: [25] [-20] And Color: [0]\n    Draw Gravity Shift At [5265] [700] With Length And Height [50] [50] And Color [30]\n    Draw Platform At [5415] [425] With Length And Height: [200] [50] And Color: [60]\n    Draw Checkpoint At: [5265] [550] With Length And Height: [20] [20] And Color: [90]\n    Draw Speed Boost At: [5500] [540] With Length And Height: [25] [25] And Color: [50]\n    Draw Platform At [6000] [425] With Length And Height: [100] [50] And Color: [60]\n    Draw Platform At [6166] ((625) + ((200) * ([sin v] of ((Timer) * (0.5)) ))) With Length And Height: [50] [50] And Color: [60]\n    Draw Platform At [6166] [960] With Length And Height: [50] [20] And Color: [60]\n    Draw Spike At: [6166] [910] With Length And Height: [20] [-15] And Color: [0]\n    Draw Bounce At [6285] [750] With Length And Height [50] [50] And Color [15]\n    Draw Platform At [6000] [1100] With Length And Height: [50] [20] And Color: [60]\n    Draw Spike At: [5975] [1150] With Length And Height: [20] [15] And Color: [0]\n    Draw Platform At [6200] [1290] With Length And Height: [50] [20] And Color: [60]\n    Draw Spike At: [6230] [1340] With Length And Height: [20] [15] And Color: [0]\n    Draw Bounce At [6000] [1480] With Length And Height [50] [20] And Color [15]\n    Draw Platform At [6480] [1580] With Length And Height: [200] [50] And Color: [60]\n    Draw Platform At [6440] [1880] With Length And Height: [30] [200] And Color: [60]\n    Draw Lava At [6400] [1880] With Length And Height [] [200] And Color [0]\n    Draw Platform At [6650] [1865] With Length And Height: [30] [215] And Color: [60]\n    Draw Lava At [6610] [1745] With Length And Height [0] [30] And Color []\n    Draw Lava At [6480] [1845] With Length And Height [0] [30] And Color []\n    Draw Lava At [6610] [1945] With Length And Height [0] [30] And Color []\n    Draw Platform At [7000] [2200] With Length And Height: [200] [50] And Color: [60]\n    Draw Spike At: [6920] [2285] With Length And Height: [25] [20] And Color: [0]\n    Draw Spike At: [7060] [2285] With Length And Height: [25] [20] And Color: [0]\n    set pen (brightness v) to (60)\n    set pen (color v) to (50)\n    Draw Line From [7300] [2310] To [7300] [2370] Size: [16]\n    Draw Line From [7270] [2330] To [7300] [2300] Size: [16]\n    Draw Line From [7300] [2300] To [7330] [2330] Size: [16]\n    set pen (brightness v) to (100)\n    set pen (color v) to (50)\n    Draw Line From [7300] [2300] To [7300] [2370] Size: [10]\n    Draw Line From [7270] [2330] To [7300] [2300] Size: [10]\n    Draw Line From [7300] [2300] To [7330] [2330] Size: [10]\n    Draw Platform At [7460] [1600] With Length And Height: [200] [50] And Color: [60]\n    Draw Spike At: [7330] [1685] With Length And Height: [25] [20] And Color: [0]\n    Draw Checkpoint At: [7500] [1720] With Length And Height: [20] [20] And Color: [90]\n    Draw Gravity Shift At [7725] [1600] With Length And Height [50] [50] And Color [30]\n    Draw Platform At [7825] [2300] With Length And Height: [150] [50] And Color: [60]\n    Draw Spike At: [7730] [2215] With Length And Height: [23] [-20] And Color: [0]\n    Draw Gravity Shift At [8040] [2300] With Length And Height [50] [50] And Color [30]\n    Draw Platform At [8100] [1600] With Length And Height: [100] [50] And Color: [60]\n    Draw Lava At [8295] [1600] With Length And Height [80] [50] And Color [0]\n    Draw Platform At [8500] [1400] With Length And Height: [20] [20] And Color: [60]\n    Draw Platform At [8500] [1200] With Length And Height: [20] [20] And Color: [60]\n    Draw Platform At [8600] [1000] With Length And Height: [20] [20] And Color: [60]\n    Draw Speed Boost At: [8750] [1100] With Length And Height: [25] [25] And Color: [50]\n    Draw Platform At [9200] [1000] With Length And Height: [100] [50] And Color: [60]\n    Draw Spike At: [9200] [1085] With Length And Height: [25] [20] And Color: [0]\n    Draw Bounce At [9365] [1000] With Length And Height [50] [50] And Color [15]\n    Draw Platform At [9565] [1200] With Length And Height: [100] [50] And Color: [999]\n    Draw Platform At [9765] [1390] With Length And Height: [] [] And Color: [60]\n    Draw Platform At [9965] [1390] With Length And Height: [] [] And Color: [60]\nelse\n    Draw Platform At [0] [-130] With Length And Height: [120] [50] And Color: [60]\nend\n\ndefine Draw Player\nset pen (color v) to (82)\nset pen (saturation v) to (100)\nset pen (brightness v) to (60)\nDraw Square At ((Player X) - (SCROLL X)) ((Player Y) - (SCROLL Y)) And Size [25] And Pen Size: [12]\nset pen (brightness v) to (100)\nDraw Square At ((Player X) - (SCROLL X)) ((Player Y) - (SCROLL Y)) And Size [25] And Pen Size: [8]\n\ndefine Draw Square At (center x) (center y) And Size (side length) And Pen Size: (size)\nset pen size to (size)\npen up\ngo to x: ((center x) + ((side length) / (2))) y: ((center y) + ((side length) / (2)))\npen down\ngo to x: ((center x) + ((side length) / (-2))) y: ((center y) + ((side length) / (2)))\ngo to x: ((center x) + ((side length) / (-2))) y: ((center y) + ((side length) / (-2)))\ngo to x: ((center x) + ((side length) / (2))) y: ((center y) + ((side length) / (-2)))\ngo to x: ((center x) + ((side length) / (2))) y: ((center y) + ((side length) / (2)))\npen up\n\ndefine Draw Lava At (x) (y) With Length And Height (length) (height) And Color (color)\nadd (x) to [platform x v]\nadd (y) to [platform y v]\nadd ([abs v] of (length) ) to [platform length v]\nadd ([abs v] of (height) ) to [platform height v]\nadd [lava] to [platform type v]\nset pen (color v) to (color)\nset pen (saturation v) to (100)\nset pen (brightness v) to (60)\nif <<(length) > [0]> and <(height) > [0]>> then\n    Draw Line From ((x) - (length)) ((y) + ((height) + ((0) - (pen tick)))) To ((x) + (length)) ((y) + ((height) + ((0) - (pen tick)))) Size: [16]\n    Draw Line From ((x) + (length)) ((y) + ((height) + ((0) - (pen tick)))) To ((x) + (length)) ((y) - (height)) Size: [16]\n    Draw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [16]\n    Draw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + ((height) + ((0) - (pen tick)))) Size: [16]\n    set pen (brightness v) to (100)\n    Draw Line From ((x) - (length)) ((y) + ((height) + ((0) - (pen tick)))) To ((x) + (length)) ((y) + ((height) + ((0) - (pen tick)))) Size: [10]\n    Draw Line From ((x) + (length)) ((y) + ((height) + ((0) - (pen tick)))) To ((x) + (length)) ((y) - (height)) Size: [10]\n    Draw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [10]\n    Draw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + ((height) + ((0) - (pen tick)))) Size: [10]\nelse\n    Draw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [16]\n    Draw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [16]\n    Draw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [16]\n    Draw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [16]\n    set pen (brightness v) to (100)\n    Draw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [10]\n    Draw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [10]\n    Draw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [10]\n    Draw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [10]\nend\n\ndefine Draw Gravity Shift At (x) (y) With Length And Height (length) (height) And Color (color)\nadd (x) to [platform x v]\nadd (y) to [platform y v]\nadd ([abs v] of (length) ) to [platform length v]\nadd ([abs v] of (height) ) to [platform height v]\nadd [shift] to [platform type v]\nset pen (color v) to (color)\nset pen (saturation v) to (100)\nset pen (brightness v) to (60)\nDraw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [16]\nDraw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [16]\nDraw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [16]\nDraw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [16]\nset pen (brightness v) to (100)\nDraw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [10]\nDraw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [10]\nDraw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [10]\nDraw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [10]\n\nwhen flag clicked\nset [switch v] to [0]\nforever\n    if <[collision v] contains [shift]?> then\n        if <(Switch) = [0]> then\n            set [switch v] to [1]\n        else\n            set [switch v] to [0]\n        end\n        wait until <not <[collision v] contains [shift]?>>\n    end\nend\n\nwhen flag clicked\nset [mode v] to [0]\n\nwhen [o v] key pressed\nif <<(username) = [oofania]> or <<(username) = [___Ninja__Codes___]> or <<(username) = [oofania_is_awesome]> or <<(username) = [key1011]> or <(username) = [Star_Wars_Animator]>>>>> then\n    wait until <not <key (o v) pressed?>>\n    if <(Mode) = [0]> then\n        set [mode v] to [1]\n    else\n        set [mode v] to [0]\n    end\nend\n\ndefine God Mode\nchange [xv v] by ((<<key (right arrow v) pressed?> or <key (d v) pressed?>> - <<key (left arrow v) pressed?> or <key (a v) pressed?>>) * (5))\nset [xv v] to ((Xv) * (0.8))\nif <([abs v] of (Xv) ) > [0.9]> then\n    change [player x v] by (round (Xv))\nend\nchange [yv v] by ((<<key (up arrow v) pressed?> or <key (w v) pressed?>> - <<key (down arrow v) pressed?> or <key (s v) pressed?>>) * (5))\nset [yv v] to ((Yv) * (0.8))\nif <([abs v] of (Yv) ) > [0.9]> then\n    change [player y v] by (round (Yv))\nend\nchange [scroll x v] by (((Player X) - (SCROLL X)) / (5))\nchange [scroll y v] by (((Player Y) - (SCROLL Y)) / (5))\n\ndefine Draw Thumbstick\nif <not <mouse down?>> then\n    set [thumbstick button x v] to []\n    set [thumbstick button y v] to []\n    set [thumbstick x v] to []\n    set [thumbstick y v] to []\nend\nif <mouse down?> then\n    if <<(Go?) = [yes]> and <not <<<(mouse x) > [184]> and <(mouse x) < [223]>> and <<(mouse y) > [125]> and <(mouse y) < [165]>>>>> then\n        set [thumbstick radius v] to [50]\n        pen up\n        go to x: (Thumbstick X) y: (Thumbstick Y)\n        set pen size to ((Thumbstick Radius) * (2))\n        set pen color to (#2b2b2b)\n        pen down\n        pen up\n        go to x: (Thumbstick X) y: (Thumbstick Y)\n        set pen size to ((Thumbstick Radius) * (1.8))\n        set pen color to (#3c3c3c)\n        pen down\n        pen up\n        Find Distance To Mouse\n        Point Towards Mouse\n        go to x: ((([sin v] of (Direction Of Mouse) ) * ((((Thumbstick Radius) + (Distance To Mouse)) - ([abs v] of ((Thumbstick Radius) - (Distance To Mouse)) )) / (2))) + (Thumbstick X)) y: ((([cos v] of (Direction Of Mouse) ) * ((((Thumbstick Radius) + (Distance To Mouse)) - ([abs v] of ((Thumbstick Radius) - (Distance To Mouse)) )) / (2))) + (Thumbstick Y))\n        set pen color to (#767676)\n        set pen size to ((Thumbstick Radius) * (1.2))\n        pen down\n        pen up\n        go to x: ((([sin v] of (Direction Of Mouse) ) * ((((Thumbstick Radius) + (Distance To Mouse)) - ([abs v] of ((Thumbstick Radius) - (Distance To Mouse)) )) / (2))) + (Thumbstick X)) y: ((([cos v] of (Direction Of Mouse) ) * ((((Thumbstick Radius) + (Distance To Mouse)) - ([abs v] of ((Thumbstick Radius) - (Distance To Mouse)) )) / (2))) + (Thumbstick Y))\n        set pen color to (#565656)\n        set pen size to ((Thumbstick Radius) * (1))\n        pen down\n        pen up\n        set [thumbstick button x v] to (x position)\n        set [thumbstick button y v] to (y position)\n    end\nend\n\nwhen flag clicked\nforever\n    if <mouse down?> then\n        set [thumbstick x v] to (mouse x)\n        set [thumbstick y v] to (mouse y)\n        wait until <not <mouse down?>>\n    end\nend\n\nwhen flag clicked\nset [thumbstick button x v] to []\nset [thumbstick button y v] to []\nset [thumbstick x v] to []\nset [thumbstick y v] to []\n\ndefine Draw Bounce At (x) (y) With Length And Height (length) (height) And Color (color)\nadd (x) to [platform x v]\nadd (y) to [platform y v]\nadd ([abs v] of (length) ) to [platform length v]\nadd ([abs v] of (height) ) to [platform height v]\nadd [bounce] to [platform type v]\nset pen (color v) to (color)\nset pen (saturation v) to (100)\nset pen (brightness v) to (60)\nDraw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [16]\nDraw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [16]\nDraw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [16]\nDraw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [16]\nset pen (brightness v) to (100)\nDraw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [10]\nDraw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [10]\nDraw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [10]\nDraw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [10]\n\nwhen [r v] key pressed\nReset\n\nwhen I receive [tick v]\nset size to (999999999) %\nRender Game\nif <(Mode) = [0]> then\n    if <(Go?) = [yes]> then\n        set size to (100) %\n        Do Physics With Speed: [2.5] And Jump Height: [13]\n    end\nelse\n    God Mode\nend\nDraw Thumbstick\nif <(Go?) = [no]> then\n    broadcast (Text v)\nend\nDraw Pause\n\ndefine Draw Rectangle At (x) (y) With Length And Height (length) (height) And Color (color)\nset pen (color v) to (color)\nif <<<(x) = [0]> and <(y) = [15]>> and <<<(mouse x) > [-80]> and <[80] > (mouse x)>> and <<(mouse y) > [0]> and <[60] > (mouse y)>>>> then\n    set pen (brightness v) to (40)\n    Draw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [16]\n    Draw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [16]\n    Draw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [16]\n    Draw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [16]\n    set pen (brightness v) to (80)\n    Draw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [10]\n    Draw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [10]\n    Draw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [10]\n    Draw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [10]\nelse\n    set pen (brightness v) to (60)\n    Draw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [16]\n    Draw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [16]\n    Draw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [16]\n    Draw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [16]\n    set pen (brightness v) to (100)\n    Draw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [10]\n    Draw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [10]\n    Draw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [10]\n    Draw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [10]\nend\n\nwhen [p v] key pressed\nwait until <not <key (p v) pressed?>>\nif <(Go?) = [yes]> then\n    set [go? v] to [no]\nelse\n    set [go? v] to [yes]\nend\n\ndefine Draw Checkpoint At: (x) (y) With Length And Height: (length) (height) And Color: (color)\nadd (x) to [platform x v]\nadd (y) to [platform y v]\nadd ([abs v] of (length) ) to [platform length v]\nadd ([abs v] of (height) ) to [platform height v]\nadd [checkpoint] to [platform type v]\nset pen (color v) to (color)\nset pen (saturation v) to (100)\nset pen (brightness v) to (60)\nDraw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [16]\nDraw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [16]\nDraw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [16]\nDraw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [16]\nset pen (brightness v) to (100)\nDraw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) ((y) + (height)) Size: [10]\nDraw Line From ((x) + (length)) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [10]\nDraw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [10]\nDraw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: [10]\n\nwhen flag clicked\nwait until <not <<(Player X) > [2799]> and <(Player Y) > [170]>>>\nwait until <<(Player X) > [2799]> and <(Player Y) > [170]>>\nstart sound [arcade_game_tone_001 v]\nchange [checkpoints found v] by (1)\nwait until <not <<(Player X) > [5250]> and <(Player Y) > [499]>>>\nwait until <<(Player X) > [5250]> and <(Player Y) > [499]>>\nstart sound [arcade_game_tone_001 v]\nchange [checkpoints found v] by (1)\nwait until <not <<(Player X) > [7499]> and <(Player Y) < [1719]>>>\nwait until <<(Player X) > [7499]> and <(Player Y) < [1719]>>\nstart sound [arcade_game_tone_001 v]\nchange [checkpoints found v] by (1)\nwait until <not <<(Player X) > [1000]> and <(Player Y) < [1719]>>>\nwait until <<(Player X) > [1000]> and <(Player Y) < [1719]>>\nset [win? v] to [1]\n\nwhen flag clicked\nset [timer v] to [0]\nforever\n    if <(Go?) = [yes]> then\n        change [timer v] by (2)\n    end\nend\n\nwhen flag clicked\ndelete all of [checkpoint x v]\ndelete all of [checkpoint y v]\nadd [0] to [checkpoint x v]\nadd [20] to [checkpoint y v]\n\nif <(Checkpoints Found) = [1]> then\n\ndefine Draw Pause\nif <(Go?) = [yes]> then\n    pen up\n    set pen color to (#6e6e6e)\n    set pen size to (16)\n    go to x: (190) y: (160)\n    pen down\n    go to x: (190) y: (130)\n    pen up\n    set pen color to (#a2a2a2)\n    set pen size to (8)\n    go to x: (190) y: (160)\n    pen down\n    go to x: (190) y: (130)\n    pen up\n    set pen color to (#6e6e6e)\n    set pen size to (16)\n    go to x: (215) y: (160)\n    pen down\n    go to x: (215) y: (130)\n    pen up\n    set pen color to (#a2a2a2)\n    set pen size to (8)\n    go to x: (215) y: (160)\n    pen down\n    go to x: (215) y: (130)\n    pen up\nend\n\ndefine Draw Spike At: (x) (y) With Length And Height: (length) (height) And Color: (color)\nadd (x) to [platform x v]\nadd (y) to [platform y v]\nadd ([abs v] of (length) ) to [platform length v]\nadd ([abs v] of (height) ) to [platform height v]\nadd [lava] to [platform type v]\nset pen (color v) to (color)\nset pen (saturation v) to (100)\nset pen (brightness v) to (60)\nDraw Line From (x) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [16]\nDraw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [16]\nDraw Line From ((x) - (length)) ((y) - (height)) To (x) ((y) + (height)) Size: [16]\nset pen (brightness v) to (100)\nDraw Line From (x) ((y) + (height)) To ((x) + (length)) ((y) - (height)) Size: [10]\nDraw Line From ((x) + (length)) ((y) - (height)) To ((x) - (length)) ((y) - (height)) Size: [10]\nDraw Line From ((x) - (length)) ((y) - (height)) To (x) ((y) + (height)) Size: [10]\n\ndefine Draw Speed Boost At: (x) (y) With Length And Height: (length) (height) And Color: (color)\nadd (x) to [platform x v]\nadd (y) to [platform y v]\nadd ([abs v] of (length) ) to [platform length v]\nadd ([abs v] of (height) ) to [platform height v]\nadd [speed boost] to [platform type v]\nset pen (saturation v) to (100)\nset pen (color v) to (color)\nset pen (brightness v) to (60)\nDraw Line From ((x) - (length)) ((y) + (height)) To ((x) - ((length) / (2))) (y) Size: [16]\nDraw Line From ((x) - ((length) / (2))) (y) To ((x) - (length)) ((y) - (height)) Size: [16]\nDraw Line From ((x) + ((length) / (2))) ((y) + (height)) To ((x) + (length)) (y) Size: [16]\nDraw Line From ((x) + (length)) (y) To ((x) + ((length) / (2))) ((y) - (height)) Size: [16]\nset pen (brightness v) to (100)\nDraw Line From ((x) - (length)) ((y) + (height)) To ((x) - ((length) / (2))) (y) Size: [10]\nDraw Line From ((x) - ((length) / (2))) (y) To ((x) - (length)) ((y) - (height)) Size: [10]\nDraw Line From ((x) + ((length) / (2))) ((y) + (height)) To ((x) + (length)) (y) Size: [10]\nDraw Line From ((x) + (length)) (y) To ((x) + ((length) / (2))) ((y) - (height)) Size: [10]\n\nwhen flag clicked\nforever\n    if <[collision v] contains [speed boost]?> then\n        set [xv v] to [85]\n        set [yv v] to [15]\n        wait until <not <[collision v] contains [speed boost]?>>\n    end\nend\n\nDraw Platform At ((335) + ((200) * ([sin v] of ((Timer) * (0.5)) ))) ((230) + ((200) * ([sin v] of ((Timer) * (0.5)) ))) With Length And Height: [20] [20] And Color: [60]\n\ndefine Win\nerase all\nbroadcast (Draw The Win v)\n\ndefine Draw Win Screen\nset pen (color v) to ((0) + ((100) * ([sin v] of ((timer) * (250)) )))\nset pen (saturation v) to ((20) + ((20) * ([sin v] of ((timer) * (250)) )))\nset pen (brightness v) to ((40) + ((20) * ([cos v] of ((timer) * (250)) )))\ngo to x: (0) y: (0)\nset pen size to (50000)\npen down\npen up\nbroadcast (Win Text v)\n\nwhen I receive [draw the win v]\nDraw Win Screen\n\nwhen flag clicked\nforever\n    set [tiiimer v] to ((timer) + (0.01))\nend\n\nwhen [timer v] > (Tiiimer)\nforever\n    erase all\n    broadcast (Draw Thumbnail v)\nend\n\ndefine Draw Thumbnail\nset [scroll x v] to [0]\nset [scroll y v] to [0]\nset [player x v] to [0]\nset [player y v] to [-25]\nDraw Platform At [0] [-100] With Length And Height: [150] [50] And Color: [60]\nDraw Player\nbroadcast (Make Logo v)\n\nwhen I receive [draw thumbnail v]\nDraw Thumbnail\n\n@Border\n\n@PTE Ultra+\n\ndefine INTERNAL | calcWW (text) (cspace) (width) (space) (x) (offset)\ndelete all of [_temp0 v]\ndelete all of [_temp1 v]\ndelete all of [_temp2 v]\nset [_i3 v] to [1]\nset [_i4 v] to (space)\nset [_i5 v] to [0]\nset [_i8 v] to [0]\nset [_i9 v] to [0]\nrepeat (length of (text))\n    set [_i6 v] to (letter (_i3) of (text))\n    if <(_i6) = [ ]> then\n        add [1] to [_temp2 v]\n        if <((_i5) + (_i4)) > (width)> then\n            add ((_i9) - (1)) to [_temp0 v]\n            add ((x) + ((offset) * (_i5))) to [_temp1 v]\n            set [_i5 v] to (_i4)\n            set [_i4 v] to (space)\n            set [_i9 v] to ((_i8) + (1))\n        else\n            change [_i5 v] by (_i4)\n            set [_i4 v] to (space)\n            change [_i9 v] by ((_i8) + (1))\n        end\n        set [_i8 v] to [0]\n    else\n        if < [abcdefghijklmnopqrstuvwxyz] contains (_i6)?> then\n            switch costume to (_i6)\n            set [_i7 v] to (costume [number v])\n        else\n            set [_i7 v] to (item # of (_i6) in [_chars v])\n        end\n        if <not <(_i7) = [0]>> then\n            add (_i7) to [_temp2 v]\n            set [_i7 v] to ((item (_i7) of [_charwidths v]) + (cspace))\n            if <((_i4) + (_i7)) > (width)> then\n                add ((_i9) - (1)) to [_temp0 v]\n                add ((x) + ((offset) * (_i5))) to [_temp1 v]\n                set [_i5 v] to (_i4)\n                set [_i4 v] to ((space) + (_i7))\n                set [_i9 v] to ((_i8) + (1))\n                set [_i8 v] to [1]\n                add (item (last) of [_temp2 v]) to [_temp2 v]\n            else\n                change [_i4 v] by (_i7)\n                change [_i8 v] by (1)\n            end\n        end\n    end\n    change [_i3 v] by (1)\nend\nif <(_i8) = [0]> then\n    if <not <(_i9) = [0]>> then\n        add ((_i9) - (1)) to [_temp0 v]\n        add ((x) + ((offset) * (_i5))) to [_temp1 v]\n    end\nelse\n    if <((_i5) + (_i4)) > (width)> then\n        add ((_i9) - (1)) to [_temp0 v]\n        add ((x) + ((offset) * (_i5))) to [_temp1 v]\n        add (_i8) to [_temp0 v]\n        add ((x) + ((offset) * (_i4))) to [_temp1 v]\n    else\n        add ((_i9) + (_i8)) to [_temp0 v]\n        add ((x) + ((offset) * ((_i5) + (_i4)))) to [_temp1 v]\n    end\nend\nrepeat until <<not <(item (1) of [_temp0 v]) < [1]>> or <(length of [_temp0 v]) < [1]>>\n    delete (1) of [_temp0 v]\n    delete (1) of [_temp1 v]\nend\nrepeat until <<not <(item (last) of [_temp0 v]) < [1]>> or <(length of [_temp0 v]) < [1]>>\n    delete (last) of [_temp0 v]\n    delete (last) of [_temp1 v]\nend\n\ndefine Print | Pos (x) (y) Size (size) Width (width) RGB (r) (g) (b) WSU (w) (s) (u) CSpace (cspace) Align (align) Text (text)\nSlow Print | Pos (x) (y) Size (size) Width (width) RGB (r) (g) (b) WSU (w) (s) (u) CSpace (cspace) Align (align) Text (text)\n\ndefine Slow Print | Pos (x) (y) Size (size) Width (width) RGB (r) (g) (b) WSU (w) (s) (u) CSpace (cspace) Align (align) Text (text)\npen up\nset pen color to ((((65536) * (round (r))) + ((256) * (round (g)))) + (round (b)))\nset [_x v] to (x)\nset [_i0 v] to ((0.01) * (size))\nset [_i1 v] to ([abs v] of ((0.125) * ((w) * (size))) )\nif <<(size) = (round (size))> and <not <(w) < [0]>>> then\n    if <<((round (_i1)) mod (2)) = [0]> and <not <(_i1) < [0.5]>>> then\n        set [_y v] to (round (y))\n    else\n        set [_y v] to (([floor v] of (y) ) + (0.5))\n    end\nelse\n    set [_y v] to (y)\nend\nif <(w) < [0]> then\n    set [_i2 v] to ((0.125) * (size))\nelse\n    set [_i2 v] to (_i1)\nend\nINTERNAL | printText (text) (_y) (_i0) ((width) * (_i0)) ([tan v] of (s) ) ((_i0) * (u)) (((cspace) * ((0.475) * ((size) / ([log v] of (((size) + (1.01)) * ((size) + (1.01))) )))) + (_i2)) (align) ([ceiling v] of ((0.15) * ([sqrt v] of ((width) * ((size) * (size))) )) ) ((1) / (([ceiling v] of ((0.15) * ([sqrt v] of ((width) * ((size) * (size))) )) ) + (1))) (_i1) ((_i1) + (1)) (((0.6) + ((0.4) * <([floor v] of ((u) / (100)) ) = [0]>)) * (_i1)) ((0.09375) * (size))\n\ndefine WW Print | Pos (x) (y) Size (size) Width (width) RGB (r) (g) (b) WW Width (ww width) WSU (w) (s) (u) CSpace (cspace) LSpace (lspace) Align (align) Text (text)\nWW Slow Print | Pos (x) (y) Size (size) Width (width) RGB (r) (g) (b) WW Width (ww width) WSU (w) (s) (u) CSpace (cspace) LSpace (lspace) Align (align) Text (text)\n\ndefine WW Slow Print | Pos (x) (y) Size (size) Width (width) RGB (r) (g) (b) WW Width (ww width) WSU (w) (s) (u) CSpace (cspace) LSpace (lspace) Align (align) Text (text)\npen up\nset pen color to ((((65536) * (round (r))) + ((256) * (round (g)))) + (round (b)))\nset [_i0 v] to ((0.01) * (size))\nset [_i1 v] to ([abs v] of ((0.125) * ((w) * (size))) )\nif <<(size) = (round (size))> and <not <(w) < [0]>>> then\n    if <<((round (_i1)) mod (2)) = [0]> and <not <(_i1) < [0.5]>>> then\n        set [_y v] to (round (y))\n    else\n        set [_y v] to (([floor v] of (y) ) + (0.5))\n    end\nelse\n    set [_y v] to (y)\nend\nif <(w) < [0]> then\n    set [_i2 v] to ((0.125) * (size))\nelse\n    set [_i2 v] to (_i1)\nend\nset [_i3 v] to (((100) / (size)) / (width))\nset [_i4 v] to ((_i3) * (((cspace) * ((0.475) * ((size) / ([log v] of (((size) + (1.01)) * ((size) + (1.01))) )))) + (_i2)))\nif <(align) = [r]> then\n    set [_i5 v] to ((-1) * (_i0))\nelse\n    if <(align) = [c]> then\n        set [_i5 v] to ((-0.5) * (_i0))\n    else\n        set [_i5 v] to [0]\n    end\nend\nset [_i5 v] to ((width) * (_i5))\nset [_i6 v] to ((item (1) of [_charwidths v]) + (_i4))\nINTERNAL | calcWW (text) (_i4) (((_i3) * (ww width)) + ((_i6) + (_i4))) (_i6) ((x) - ((_i5) * ((_i6) + (_i4)))) (_i5)\nINTERNAL | printWW (_i0) ((width) * (_i0)) ([tan v] of (s) ) ((_i0) * (u)) <not <(u) = [0]>> (((cspace) * ((0.475) * ((size) / ([log v] of (((size) + (1.01)) * ((size) + (1.01))) )))) + (_i2)) (round ((((-0.65) * ((lspace) * (size))) - (size)) - (_i2))) ([ceiling v] of ((0.15) * ([sqrt v] of ((width) * ((size) * (size))) )) ) ((1) / (([ceiling v] of ((0.15) * ([sqrt v] of ((width) * ((size) * (size))) )) ) + (1))) (_i1) ((_i1) + (1)) (((0.6) + ((0.4) * <([floor v] of ((u) / (100)) ) = [0]>)) * (_i1)) ((0.09375) * (size))\n\ndefine INTERNAL | drawBezier (x2) (y2) (x3) (y3) (qual) (dt)\nINTERNAL | bezier (((x3) - ((2) * (x2))) + (x position)) ((2) * ((x2) - (x position))) (x position) (((y3) - ((2) * (y2))) + (y position)) ((2) * ((y2) - (y position))) (y position) (qual) (dt)\ngo to x: (x3) y: (y3)\n\ndefine INTERNAL | bezier (cx1) (cx2) (x1) (cy1) (cy2) (y1) (qual) (dt)\nset [_i4 v] to [0]\nrepeat (qual)\n    change [_i4 v] by (dt)\n    go to x: (((_i4) * (((_i4) * (cx1)) + (cx2))) + (x1)) y: (((_i4) * (((_i4) * (cy1)) + (cy2))) + (y1))\nend\n\ndefine Newlines | # of Lines (lines) Size (size) Weight (w) LSpace (lspace)\nif <(w) < [0]> then\n    change [_y v] by ((lines) * (round ((((-0.65) * ((lspace) * (size))) - (size)) - ((0.125) * (size)))))\nelse\n    change [_y v] by ((lines) * (round ((((-0.65) * ((lspace) * (size))) - (size)) - ((0.125) * ((w) * (size))))))\nend\nif <<(size) = (round (size))> and <not <(w) < [0]>>> then\n    if <<((round ((0.125) * ((w) * (size)))) mod (2)) = [0]> and <not <((0.125) * ((w) * (size))) < [0.5]>>> then\n        set [_y v] to (round (_y))\n    else\n        set [_y v] to (([floor v] of (_y) ) + (0.5))\n    end\nend\n\ndefine INTERNAL | printWW (height) (width) (slant) (underline) <hasundr> (cspace) (lspace) (bezqual) (bezdt) (weight) (dotweight) (underlwt) (underloffset)\nset [_i0 v] to [1]\nset [_i1 v] to [1]\nrepeat (length of [_temp0 v])\n    set [_x v] to (item (_i0) of [_temp1 v])\n    repeat (item (_i0) of [_temp0 v])\n        INTERNAL | printChar (item (_i1) of [_temp2 v]) (height) (width) (_x) (_y) (slant) (bezqual) (bezdt) (weight) (dotweight)\n        change [_x v] by (cspace)\n        change [_i1 v] by (1)\n    end\n    change [_i1 v] by (1)\n    if <hasundr> then\n        set pen size to (underlwt)\n        go to x: ((((_x) - (cspace)) + ((slant) * (underline))) + (underloffset)) y: ((_y) + (underline))\n        pen down\n        set x to (((item (_i0) of [_temp1 v]) + ((slant) * (underline))) - (underloffset))\n        pen up\n    end\n    change [_y v] by (lspace)\n    change [_i0 v] by (1)\nend\nchange [_y v] by ((-1) * (lspace))\ndelete all of [_temp2 v]\n\ndefine INTERNAL | printText (text) (y) (height) (width) (slant) (underline) (space) (align) (bezqual) (bezdt) (weight) (dotweight) (underlwt) (underloffset)\nif <<(align) = [c]> or <(align) = [r]>> then\n    delete all of [_temp0 v]\n    set [_i0 v] to [1]\n    set [_i1 v] to [0]\n    repeat (length of (text))\n        set [_i2 v] to (letter (_i0) of (text))\n        if < [abcdefghijklmnopqrstuvwxyz] contains (_i2)?> then\n            switch costume to (_i2)\n            change [_i1 v] by (((width) * (item (costume [number v]) of [_charwidths v])) + (space))\n            add (costume [number v]) to [_temp0 v]\n        else\n            set [_i2 v] to (item # of (_i2) in [_chars v])\n            if <not <(_i2) = [0]>> then\n                change [_i1 v] by (((width) * (item (_i2) of [_charwidths v])) + (space))\n                add (_i2) to [_temp0 v]\n            end\n        end\n        change [_i0 v] by (1)\n    end\n    if <(align) = [c]> then\n        change [_x v] by ((-0.5) * ((_i1) - (space)))\n    else\n        change [_x v] by ((-1) * ((_i1) - (space)))\n    end\n    set [_i6 v] to (_x)\n    set [_i0 v] to [1]\n    repeat (length of [_temp0 v])\n        INTERNAL | printChar (item (_i0) of [_temp0 v]) (height) (width) (_x) (y) (slant) (bezqual) (bezdt) (weight) (dotweight)\n        change [_x v] by (space)\n        change [_i0 v] by (1)\n    end\nelse\n    set [_i6 v] to (_x)\n    set [_i0 v] to [1]\n    repeat (length of (text))\n        set [_i7 v] to (letter (_i0) of (text))\n        if < [abcdefghijklmnopqrstuvwxyz] contains (_i7)?> then\n            switch costume to (_i7)\n            INTERNAL | printChar (costume [number v]) (height) (width) (_x) (y) (slant) (bezqual) (bezdt) (weight) (dotweight)\n            change [_x v] by (space)\n        else\n            set [_i7 v] to (item # of (_i7) in [_chars v])\n            if <not <(_i7) = [0]>> then\n                INTERNAL | printChar (_i7) (height) (width) (_x) (y) (slant) (bezqual) (bezdt) (weight) (dotweight)\n                change [_x v] by (space)\n            end\n        end\n        change [_i0 v] by (1)\n    end\nend\nif <not <(underline) = [0]>> then\n    set pen size to (underlwt)\n    go to x: ((((_x) - (space)) + ((slant) * (underline))) + (underloffset)) y: ((y) + (underline))\n    pen down\n    set x to (((_i6) + ((slant) * (underline))) - (underloffset))\n    pen up\nend\n\nwhen flag clicked\ngo to x: (0) y: (0)\nhide\nswitch costume to (sizebypass v)\nset size to (50000) %\nswitch costume to (pte ultra+ v)\n\ndefine INTERNAL | loadFont (font)\nset [_i0 v] to [1]\nrepeat until <(_i0) > (length of (font))>\n    set [_i1 v] to (letter (_i0) of (font))\n    if <[_chars v] contains (_i1)?> then\n        if < [abcdefghijklmnopqrstuvwxyz] contains (_i1)?> then\n            switch costume to (_i1)\n            set [_i4 v] to (costume [number v])\n        else\n            set [_i4 v] to (item # of (_i1) in [_chars v])\n        end\n        if < [abcdefghijklmnopqrstuvwxyz] contains (_i1)?> then\n            switch costume to (_i1)\n            if <(costume [number v]) > [27]> then\n                set [_i2 v] to (item # of (join [_] (_i1)) in [_chardata v])\n                set [_i5 v] to (item (_i2) of [_chardata v])\n                replace item (_i2) of [_chardata v] with []\n                set [_i3 v] to ((item # of (join [_] (_i1)) in [_chardata v]) + (1))\n                replace item (_i2) of [_chardata v] with (_i5)\n            else\n                set [_i3 v] to ((item # of (join [_] (_i1)) in [_chardata v]) + (1))\n            end\n        else\n            set [_i3 v] to ((item # of (join [_] (_i1)) in [_chardata v]) + (1))\n        end\n    else\n        add (_i1) to [_chars v]\n        add [0] to [_charids v]\n        add [0] to [_charwidths v]\n        add (join [_] (_i1)) to [_chardata v]\n        set [_i3 v] to ((length of [_chardata v]) + (1))\n        set [_i4 v] to (length of [_chars v])\n    end\n    add [_] to [_chardata v]\n    change [_i0 v] by (2)\n    set [_i2 v] to []\n    repeat until <(letter (_i0) of (font)) = [ ]>\n        set [_i2 v] to (join (_i2) (letter (_i0) of (font)))\n        change [_i0 v] by (1)\n    end\n    change [_i0 v] by (1)\n    replace item (_i4) of [_charwidths v] with ((1) * (_i2))\n    set [_i2 v] to []\n    repeat until <(letter (_i0) of (font)) = [ ]>\n        set [_i2 v] to (join (_i2) (letter (_i0) of (font)))\n        change [_i0 v] by (1)\n    end\n    change [_i0 v] by (1)\n    if <(letter (1) of (item (_i3) of [_chardata v])) = [_]> then\n        insert (round (_i2)) at (_i3) of [_chardata v] \n    else\n        replace item (_i3) of [_chardata v] with (round (_i2))\n    end\n    change [_i3 v] by (1)\n    repeat (round (_i2))\n        repeat (2)\n            set [_i2 v] to []\n            repeat until <(letter (_i0) of (font)) = [ ]>\n                set [_i2 v] to (join (_i2) (letter (_i0) of (font)))\n                change [_i0 v] by (1)\n            end\n            change [_i0 v] by (1)\n            if <(letter (1) of (item (_i3) of [_chardata v])) = [_]> then\n                insert ((1) * (_i2)) at (_i3) of [_chardata v] \n            else\n                replace item (_i3) of [_chardata v] with ((1) * (_i2))\n            end\n            change [_i3 v] by (1)\n        end\n        set [_i2 v] to []\n        repeat until <(letter (_i0) of (font)) = [ ]>\n            set [_i2 v] to (join (_i2) (letter (_i0) of (font)))\n            change [_i0 v] by (1)\n        end\n        change [_i0 v] by (1)\n        if <(letter (1) of (item (_i3) of [_chardata v])) = [_]> then\n            insert (round (_i2)) at (_i3) of [_chardata v] \n        else\n            replace item (_i3) of [_chardata v] with (round (_i2))\n        end\n        change [_i3 v] by (1)\n        repeat (round (_i2))\n            if <(letter (_i0) of (font)) = [b]> then\n                if <(letter (1) of (item (_i3) of [_chardata v])) = [_]> then\n                    insert [b] at (_i3) of [_chardata v] \n                else\n                    replace item (_i3) of [_chardata v] with [b]\n                end\n                change [_i3 v] by (1)\n                change [_i0 v] by (2)\n                repeat (4)\n                    set [_i2 v] to []\n                    repeat until <(letter (_i0) of (font)) = [ ]>\n                        set [_i2 v] to (join (_i2) (letter (_i0) of (font)))\n                        change [_i0 v] by (1)\n                    end\n                    change [_i0 v] by (1)\n                    if <(letter (1) of (item (_i3) of [_chardata v])) = [_]> then\n                        insert ((1) * (_i2)) at (_i3) of [_chardata v] \n                    else\n                        replace item (_i3) of [_chardata v] with ((1) * (_i2))\n                    end\n                    change [_i3 v] by (1)\n                end\n            else\n                repeat (2)\n                    set [_i2 v] to []\n                    repeat until <(letter (_i0) of (font)) = [ ]>\n                        set [_i2 v] to (join (_i2) (letter (_i0) of (font)))\n                        change [_i0 v] by (1)\n                    end\n                    change [_i0 v] by (1)\n                    if <(letter (1) of (item (_i3) of [_chardata v])) = [_]> then\n                        insert ((1) * (_i2)) at (_i3) of [_chardata v] \n                    else\n                        replace item (_i3) of [_chardata v] with ((1) * (_i2))\n                    end\n                    change [_i3 v] by (1)\n                end\n            end\n        end\n    end\n    set [_i2 v] to []\n    repeat until <(letter (_i0) of (font)) = [ ]>\n        set [_i2 v] to (join (_i2) (letter (_i0) of (font)))\n        change [_i0 v] by (1)\n    end\n    change [_i0 v] by (1)\n    if <(letter (1) of (item (_i3) of [_chardata v])) = [_]> then\n        insert (round (_i2)) at (_i3) of [_chardata v] \n    else\n        replace item (_i3) of [_chardata v] with (round (_i2))\n    end\n    change [_i3 v] by (1)\n    repeat (round (_i2))\n        repeat (2)\n            set [_i2 v] to []\n            repeat until <(letter (_i0) of (font)) = [ ]>\n                set [_i2 v] to (join (_i2) (letter (_i0) of (font)))\n                change [_i0 v] by (1)\n            end\n            change [_i0 v] by (1)\n            if <(letter (1) of (item (_i3) of [_chardata v])) = [_]> then\n                insert ((1) * (_i2)) at (_i3) of [_chardata v] \n            else\n                replace item (_i3) of [_chardata v] with ((1) * (_i2))\n            end\n            change [_i3 v] by (1)\n        end\n    end\n    delete (last) of [_chardata v]\nend\nset [_i0 v] to [1]\nrepeat (length of [_chars v])\n    set [_i1 v] to (item (_i0) of [_chars v])\n    if < [abcdefghijklmnopqrstuvwxyz] contains (_i1)?> then\n        switch costume to (_i1)\n        if <(costume [number v]) > [27]> then\n            set [_i2 v] to (item # of (join [_] (_i1)) in [_chardata v])\n            set [_i3 v] to (item (_i2) of [_chardata v])\n            replace item (_i2) of [_chardata v] with []\n            replace item (_i0) of [_charids v] with ((item # of (join [_] (_i1)) in [_chardata v]) + (2))\n            replace item (_i2) of [_chardata v] with (_i3)\n        else\n            replace item (_i0) of [_charids v] with ((item # of (join [_] (_i1)) in [_chardata v]) + (2))\n        end\n    else\n        replace item (_i0) of [_charids v] with ((item # of (join [_] (_i1)) in [_chardata v]) + (2))\n    end\n    change [_i0 v] by (1)\nend\n\ndefine Import Font | Data (font data)\nset [_i0 v] to [1]\nrepeat until <(letter (_i0) of (font data)) = [{]>\n    change [_i0 v] by (1)\nend\nchange [_i0 v] by (1)\nrepeat until <(letter (_i0) of (font data)) = [\[]>\n    change [_i0 v] by (1)\nend\nchange [_i0 v] by (1)\nset [_i1 v] to []\nrepeat until <(letter (_i0) of (font data)) = [\]]>\n    set [_i1 v] to (join (_i1) (letter (_i0) of (font data)))\n    change [_i0 v] by (1)\nend\nchange [_i0 v] by (1)\nset [_i6 v] to (_i1)\ndelete all of [_temp0 v]\nchange [_i0 v] by (1)\nrepeat until <<(letter (_i0) of (font data)) = [\[]> or <(letter (_i0) of (font data)) = [}]>>\n    change [_i0 v] by (1)\nend\nrepeat until <(letter (_i0) of (font data)) = [}]>\n    change [_i0 v] by (1)\n    delete all of [_temp1 v]\n    add (letter (_i0) of (font data)) to [_temp0 v]\n    change [_i0 v] by (2)\n    set [_i1 v] to []\n    repeat until <<<(letter (_i0) of (font data)) = [,]> or <(letter (_i0) of (font data)) = [;]>> or <(letter (_i0) of (font data)) = [\]]>>\n        set [_i1 v] to (join (_i1) (letter (_i0) of (font data)))\n        change [_i0 v] by (1)\n    end\n    add (_i1) to [_temp0 v]\n    set [_i2 v] to ((length of [_temp0 v]) + (1))\n    set [_i3 v] to [0]\n    repeat until <<(letter (_i0) of (font data)) = [\(]> or <(letter (_i0) of (font data)) = [\]]>>\n        change [_i0 v] by (1)\n    end\n    repeat until <(letter (_i0) of (font data)) = [\]]>\n        set [_i4 v] to ((length of [_temp0 v]) + (3))\n        set [_i5 v] to [0]\n        repeat until <(letter (_i0) of (font data)) = [\)]>\n            change [_i0 v] by (1)\n            if <(letter (_i0) of (font data)) = [b]> then\n                add [b] to [_temp0 v]\n                change [_i0 v] by (1)\n                repeat (4)\n                    change [_i0 v] by (1)\n                    set [_i1 v] to []\n                    repeat until <<<(letter (_i0) of (font data)) = [,]> or <(letter (_i0) of (font data)) = [;]>> or <(letter (_i0) of (font data)) = [\)]>>\n                        set [_i1 v] to (join (_i1) (letter (_i0) of (font data)))\n                        change [_i0 v] by (1)\n                    end\n                    add (_i1) to [_temp0 v]\n                end\n            else\n                change [_i0 v] by (-1)\n                repeat (2)\n                    change [_i0 v] by (1)\n                    set [_i1 v] to []\n                    repeat until <<<(letter (_i0) of (font data)) = [,]> or <(letter (_i0) of (font data)) = [;]>> or <(letter (_i0) of (font data)) = [\)]>>\n                        set [_i1 v] to (join (_i1) (letter (_i0) of (font data)))\n                        change [_i0 v] by (1)\n                    end\n                    add (_i1) to [_temp0 v]\n                end\n            end\n            change [_i5 v] by (1)\n        end\n        if <(_i5) = [1]> then\n            add (item ((length of [_temp0 v]) - (1)) of [_temp0 v]) to [_temp1 v]\n            add (item (last) of [_temp0 v]) to [_temp1 v]\n            delete (last) of [_temp0 v]\n            delete (last) of [_temp0 v]\n        else\n            insert ((_i5) - (1)) at (_i4) of [_temp0 v] \n            change [_i3 v] by (1)\n        end\n        repeat until <<(letter (_i0) of (font data)) = [\(]> or <(letter (_i0) of (font data)) = [\]]>>\n            change [_i0 v] by (1)\n        end\n    end\n    insert (_i3) at (_i2) of [_temp0 v] \n    insert (round ((length of [_temp1 v]) / (2))) at (1) of [_temp1 v] \n    repeat (length of [_temp1 v])\n        add (item (1) of [_temp1 v]) to [_temp0 v]\n        delete (1) of [_temp1 v]\n    end\n    repeat until <<(letter (_i0) of (font data)) = [\[]> or <(letter (_i0) of (font data)) = [}]>>\n        change [_i0 v] by (1)\n    end\nend\nadd [] to [_temp0 v]\nset [_i0 v] to (item # of (_i6) in [_fonts v])\nif <((_i0) mod (2)) = [1]> then\n    replace item ((_i0) + (1)) of [_fonts v] with (_temp0)\nelse\n    add (_i6) to [_fonts v]\n    add (_temp0) to [_fonts v]\nend\ndelete all of [_temp0 v]\n\ndefine Load Font | Name (font)\nset [_i0 v] to (item # of (font) in [_fonts v])\nif <((_i0) mod (2)) = [1]> then\n    INTERNAL | loadFont (item ((_i0) + (1)) of [_fonts v])\nend\n\ndefine Reset Character Data\ndelete all of [_chars v]\ndelete all of [_charids v]\ndelete all of [_charwidths v]\ndelete all of [_chardata v]\nset [_i0 v] to [1]\nrepeat (53)\n    set [_i1 v] to (letter (_i0) of [ abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ])\n    add (_i1) to [_chars v]\n    add ((length of [_chardata v]) + (3)) to [_charids v]\n    add [0] to [_charwidths v]\n    add (join [_] (_i1)) to [_chardata v]\n    add [0] to [_chardata v]\n    change [_i0 v] by (1)\nend\n\ndefine INTERNAL | printChar (num) (height) (width) (x) (y) (slant) (bezqual) (bezdt) (weight) (dotweight)\nchange [_x v] by ((width) * (item (num) of [_charwidths v]))\nset [_i3 v] to (item (num) of [_charids v])\nset pen size to (weight)\nrepeat (item ((_i3) - (1)) of [_chardata v])\n    set [_i4 v] to ((height) * (item ((_i3) + (1)) of [_chardata v]))\n    go to x: ((x) + (((width) * (item (_i3) of [_chardata v])) + ((slant) * (_i4)))) y: ((y) + (_i4))\n    pen down\n    change [_i3 v] by (3)\n    repeat (item ((_i3) - (1)) of [_chardata v])\n        if <(item (_i3) of [_chardata v]) = [b]> then\n            set [_i4 v] to ((height) * (item ((_i3) + (2)) of [_chardata v]))\n            set [_i5 v] to ((height) * (item ((_i3) + (4)) of [_chardata v]))\n            INTERNAL | drawBezier ((x) + (((width) * (item ((_i3) + (1)) of [_chardata v])) + ((slant) * (_i4)))) ((y) + (_i4)) ((x) + (((width) * (item ((_i3) + (3)) of [_chardata v])) + ((slant) * (_i5)))) ((y) + (_i5)) (bezqual) (bezdt)\n            change [_i3 v] by (5)\n        else\n            set [_i4 v] to ((height) * (item ((_i3) + (1)) of [_chardata v]))\n            go to x: ((x) + (((width) * (item (_i3) of [_chardata v])) + ((slant) * (_i4)))) y: ((y) + (_i4))\n            change [_i3 v] by (2)\n        end\n    end\n    pen up\nend\nset pen size to (dotweight)\nchange [_i3 v] by (1)\nrepeat (item ((_i3) - (1)) of [_chardata v])\n    set [_i4 v] to ((height) * (item ((_i3) + (1)) of [_chardata v]))\n    go to x: ((x) + (((width) * (item (_i3) of [_chardata v])) + ((slant) * (_i4)))) y: ((y) + (_i4))\n    pen down\n    pen up\n    change [_i3 v] by (2)\nend\n\nwhen I receive [tick v]\nsdjkf\n\ndefine sdjkf\nset pen (transparency v) to (80)\nif <(Checkpoints Found) < [5]> then\n    WW Print | Pos ((-120) - (SCROLL X)) (((50) - (SCROLL Y)) * (1)) Size (50) Width (1) RGB (150) (50) (204) WW Width (500) WSU (2.3) (0) (0) CSpace (0.5) LSpace (0) Align [99999999999999999] Text [Welcome To     Neutron]\n    WW Print | Pos ((-120) - (SCROLL X)) (((50) - (SCROLL Y)) * (1)) Size (50) Width (1) RGB (150) (100) (204) WW Width (500) WSU (0.8) (0) (0) CSpace (1.85) LSpace (0.25) Align [99999999999999999] Text [Welcome To     Neutron]\n    WW Print | Pos ((325) - (SCROLL X)) (((-0) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (250) (0) (0) WW Width (300) WSU (2) (0) (0) CSpace (0.5) LSpace (0) Align [99999999999999999] Text [Watch Out For Lava!]\n    WW Print | Pos ((700) - (SCROLL X)) (((-0) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (0) (250) (0) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0) Align [99999999999999999] Text [These Switch Your Gravity!]\n    WW Print | Pos ((1210) - (SCROLL X)) (((100) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (255) (255) (0) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0) Align [99999999999999999] Text [Bounce!]\n    WW Print | Pos ((1730) - (SCROLL X)) (((100) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (0) (250) (0) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0) Align [99999999999999999] Text [And Back Again!]\n    WW Print | Pos ((2030) - (SCROLL X)) (((100) - (SCROLL Y)) * (1)) Size (30) Width (1) RGB (255) (255) (0) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0) Align [99999999999999999] Text [Jump!]\n    WW Print | Pos ((2620) - (SCROLL X)) (((250) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (255) (0) (153) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0) Align [99999999999999999] Text [These Save Your Progress!]\n    WW Print | Pos ((3550) - (SCROLL X)) (((225) - (SCROLL Y)) * (1)) Size (23) Width (1) RGB (0) (100) (255) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0) Align [99999999999999999] Text [Wall Jump!]\n    WW Print | Pos ((3870) - (SCROLL X)) (((200) - (SCROLL Y)) * (1)) Size (23) Width (1) RGB (255) (0) (0) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0) Align [99999999999999999] Text [More Lava!]\n    WW Print | Pos ((4970) - (SCROLL X)) (((550) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (255) (0) (0) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0.5) Align [99999999999999999] Text [Spikes Are      Bad Too!]\n    WW Print | Pos ((5390) - (SCROLL X)) (((630) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (0) (255) (255) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0.5) Align [99999999999999999] Text [  This Is A Speed Boost!]\n    WW Print | Pos ((5935) - (SCROLL X)) (((550) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (0) (100) (255) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0.5) Align [99999999999999999] Text [Elevator!]\n    WW Print | Pos ((6010) - (SCROLL X)) (((900) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (0) (100) (255) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0.5) Align [99999999999999999] Text [Careful!]\n    WW Print | Pos ((6250) - (SCROLL X)) (((1725) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (0) (100) (255) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0.5) Align [99999999999999999] Text [Tight Fit!]\n    WW Print | Pos ((6908) - (SCROLL X)) (((2377) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (255) (0) (0) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0.5) Align [99999999999999999] Text [Watch Out!]\n    WW Print | Pos ((7225) - (SCROLL X)) (((2390) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (0) (255) (255) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0.5) Align [99999999999999999] Text [Trust Fall!]\n    WW Print | Pos ((7280) - (SCROLL X)) (((1760) - (SCROLL Y)) * (1)) Size (25) Width (1) RGB (255) (0) (0) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0.5) Align [99999999999999999] Text [Oops...]\n    WW Print | Pos ((7439) - (SCROLL X)) (((1780) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (255) (0) (100) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0.5) Align [99999999999999999] Text [ ~w_w~ ]\n    WW Print | Pos ((7650) - (SCROLL X)) (((2143) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (255) (0) (0) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0.5) Align [99999999999999999] Text [Oops Again]\n    WW Print | Pos ((8550) - (SCROLL X)) (((1290) - (SCROLL Y)) * (1)) Size (20) Width (1) RGB (0) (100) (255) WW Width (200) WSU (2) (0) (0) CSpace (0.5) LSpace (0.5) Align [99999999999999999] Text [Watch Your       Step!]\nelse\n    WW Print | Pos ((-120) - (SCROLL X)) (((40) - (SCROLL Y)) * (1)) Size (50) Width (1) RGB (100) (100) (100) WW Width (250) WSU (3) (0) (0) CSpace (0.5) LSpace (0.5) Align [99999999999999999] Text [Part 2]\n    WW Print | Pos ((-120) - (SCROLL X)) (((40) - (SCROLL Y)) * (1)) Size (50) Width (1) RGB (200) (200) (200) WW Width (250) WSU (1.5) (0) (0) CSpace (1.85) LSpace (0.5) Align [99999999999999999] Text [Part 2]\nend\n\nwhen I receive [text v]\nset pen color to (#000000)\nset pen (transparency v) to (30)\nset pen size to (8888888888)\npen down\npen up\nset pen color to (#6e6e6e)\nDraw Pause At [202.5] [145] With Length And Height [13] [15] And Size [16]\nset pen color to (#a2a2a2)\nDraw Pause At [202.5] [145] With Length And Height [13] [15] And Size [8]\nhide variable [color v]\nif <<(Help Open?) = [no]> and <(Color Changer Open?) = [no]>> then\n    WW Print | Pos (-120) (0) Size (50) Width (1) RGB (250) (250) (250) WW Width (500) WSU (1.5) (0) (0) CSpace (1) LSpace (1) Align [] Text [Paused]\n    WW Print | Pos (-145) (-50) Size (15) Width (1) RGB (255) (128) (0) WW Width (5000) WSU (1.5) (0) (0) CSpace (1) LSpace (1) Align [] Text [Press 'Q' For How To Play]\nelse\n    if <(Help Open?) = [yes]> then\n        WW Print | Pos (-160) (120) Size (35) Width (1) RGB (250) (250) (250) WW Width (500) WSU (2) (5) (0) CSpace (1) LSpace (1) Align [0] Text [How To Play]\n        WW Print | Pos (-220) (100) Size (10) Width (1) RGB (255) (128) (0) WW Width (500) WSU (2) (0) (0) CSpace (1) LSpace (1) Align [] Text [R Key To Reset \(respawn at last saved checkpoint\)]\n        WW Print | Pos (-190) (80) Size (10) Width (1) RGB (255) (128) (0) WW Width (500) WSU (2) (0) (0) CSpace (1) LSpace (1) Align [0] Text [Arrow Keys OR WASD OR Thumbstick To Move]\n        WW Print | Pos (-150) (60) Size (10) Width (1) RGB (255) (128) (0) WW Width (500) WSU (2) (0) (0) CSpace (1) LSpace (1) Align [0] Text [Mouse Down To Activate Thumbstick]\n        WW Print | Pos (-70) (40) Size (12) Width (1) RGB (0) (0) (255) WW Width (500) WSU (2) (0) (0) CSpace (1) LSpace (1) Align [0] Text [Blue = Platform]\n        WW Print | Pos (-100) (20) Size (12) Width (1) RGB (255) (0) (0) WW Width (500) WSU (2) (0) (0) CSpace (1) LSpace (1) Align [0] Text [Red = Lava \(kills you\)]\n        WW Print | Pos (-205) (0) Size (12) Width (1) RGB (0) (255) (0) WW Width (500) WSU (2) (0) (0) CSpace (1) LSpace (1) Align [0] Text [Green = Gravity Shift \(reverses gravity\)]\n        WW Print | Pos (-180) (-20) Size (12) Width (1) RGB (255) (255) (0) WW Width (500) WSU (2) (0) (0) CSpace (1) LSpace (1) Align [0] Text [Yellow = Trampoline \(bounces you\)]\n        WW Print | Pos (-205) (-40) Size (12) Width (1) RGB (255) (0) (150) WW Width (500) WSU (2) (0) (0) CSpace (1) LSpace (1) Align [0] Text [Pink = Checkpoint \(saves your progress\)]\n        WW Print | Pos (-215) (-60) Size (12) Width (1) RGB (0) (200) (255) WW Width (500) WSU (2) (0) (0) CSpace (1) LSpace (1) Align [0] Text [Cyan = Speed Boost \(boosts you forward\)]\n        WW Print | Pos (-225) (-80) Size (12) Width (1) RGB (40) (40) (40) WW Width (500) WSU (2) (0) (0) CSpace (1) LSpace (1) Align [0] Text [Dark Grey = Grey Platform \(just a platform\)]\n    else\n        show variable [color v]\n    end\nend\n\ndefine Show Color Picker\nrepeat (100)\n    set pen (color v) to (0)\n    repeat (100)\n        move (1) steps\n        change pen (color v) by (1)\n    end\n    pen up\n    set x to (0)\n    change pen (brightness v) by (1)\n    change y by (1)\n    pen down\nend\n\ndefine Draw Pause At (x) (y) With Length And Height (length) (height) And Size (size)\nDraw Line From ((x) - (length)) ((y) + (height)) To ((x) + (length)) (y) Size: (size)\nDraw Line From ((x) + (length)) (y) To ((x) - (length)) ((y) - (height)) Size: (size)\nDraw Line From ((x) - (length)) ((y) - (height)) To ((x) - (length)) ((y) + (height)) Size: (size)\n\ndefine Draw Line From (x1) (y1) To (x2) (y2) Size: (size)\nset pen size to (size)\npen up\ngo to x: (x1) y: (y1)\npen down\ngo to x: (x2) y: (y2)\npen up\n\nwhen flag clicked\nforever\n    if <<mouse down?> and <<<(mouse x) > [184]> and <(mouse x) < [223]>> and <<(mouse y) > [125]> and <(mouse y) < [165]>>>> then\n        wait until <not <mouse down?>>\n        if <(Go?) = [yes]> then\n            set [go? v] to [no]\n        else\n            set [go? v] to [yes]\n        end\n    end\nend\n\nwhen I receive [win text v]\nWW Print | Pos (-165) (-15) Size (50) Width (1) RGB ((250) + ((100) * ([sin v] of ((timer) * (250)) ))) ((0) + ((0) * ([cos v] of ((timer) * (250)) ))) ((0) + ((0) * ([sin v] of ((timer) * (250)) ))) WW Width (99999999999) WSU (4) (0) (0) CSpace (-0.7) LSpace (1) Align [] Text [You Win!]\nWW Print | Pos (-165) (-15) Size (50) Width (1) RGB ((0) + ((50) * ([cos v] of ((timer) * (250)) ))) ((0) + ((10) * ([sin v] of ((timer) * (250)) ))) ((0) + ((0) * ([cos v] of ((timer) * (250)) ))) WW Width (99999999999) WSU (3) (0) (0) CSpace (0.2) LSpace (1) Align [] Text [You Win!]\nWW Print | Pos (-165) (-15) Size (50) Width (1) RGB ((0) + ((0) * ([sin v] of ((timer) * (250)) ))) ((0) + ((10) * ([cos v] of ((timer) * (250)) ))) ((0) + ((100) * ([sin v] of ((timer) * (250)) ))) WW Width (99999999999) WSU (1.55) (0) (0) CSpace (1.5) LSpace (1) Align [] Text [You Win!]\n\nwhen I receive [make logo v]\nWW Print | Pos (-165) (100) Size (50) Width (1) RGB (150) (50) (204) WW Width (99999999999) WSU (3) (0) (0) CSpace (1) LSpace (1) Align [] Text [Neutron]\nWW Print | Pos (-165) (100) Size (50) Width (1) RGB (150) (100) (204) WW Width (99999999999) WSU (1.5) (0) (0) CSpace (2.35) LSpace (1) Align [] Text [Neutron]\nWW Print | Pos (-152) (50) Size (15) Width (1) RGB (250) (250) (250) WW Width (99999999999) WSU (3) (0) (0) CSpace (0.68) LSpace (1) Align [15] Text [A 100% Pen Platformer]\nWW Print | Pos (-152) (50) Size (15) Width (1) RGB (200) (200) (200) WW Width (99999999999) WSU (1) (0) (0) CSpace (1.95) LSpace (1) Align [0] Text [A 100% Pen Platformer]\nWW Print | Pos (-65) (10) Size (20) Width (1) RGB (200) (0) (0) WW Width (99999999999) WSU (3.2) (0) (0) CSpace (0.55) LSpace (1) Align [0] Text [oofania]\nWW Print | Pos (-65) (10) Size (20) Width (1) RGB (255) (0) (0) WW Width (99999999999) WSU (1.5) (0) (0) CSpace (1.7) LSpace (1) Align [0] Text [oofania]\n\n
After months of work, I present to you... Neutron!!!! My best pen platformer yet! It is a little short, but it is super fun to play, and there are a bunch of features! \n\nI would recommend playing here for much better quality: \nhttps://turbowarp.org/535207771?hqpen&stuck\n\nIf you want to see how to make a game like this, I made a tutorial: https://www.youtube.com/watch?v=CMdw0ktTyN0\n\n _____________________________________________\n---------------------------------------------------------------------------------\nPress p to pause the game, and there are most of the instructions there. Enjoy!\n\n\nCredits: \n- @zerx for original method, modified by me\n-@-Rex- For pen text engine, adapted by me to scroll with the game\n-@oofania for all codes (excluding pen text engine, although, many codes in that sprite are by me) and other stuff. \n=============================================\nFeel free to use this game as an engine for other games, as long as you give credit. And if you have any questions, please just comment below and I will answer them. Have fun, and please follow!\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n:)