Hexed - A Pen Platformer (YellowOS-X)
@Stage\n\n@Blank\n\n@Pen\n\nwhen flag clicked\nbroadcast (start pen platformer v)\n\nwhen I receive [start pen platformer v]\nswitch backdrop to (normal v)\nset [level v] to [1]\nbroadcast (start pen plat v)\nforever\n    play sound [Xylo1 v] until done\nend\n\nwhen I receive [start pen plat v]\nset [colour v] to [16]\nset [size v] to [40]\nset [transparency v] to [0]\nset [direction v] to [90]\nset [x velocity v] to [0]\nset [y velocity v] to [0]\nset [die v] to []\nset [scroll x v] to [0]\nset [scroll y v] to [0]\nset [player x v] to [0]\nset [effect v] to []\nset [player y v] to [0]\ndelete all of [platforms v]\nset [layers v] to [10]\nset [player realm v] to [1]\nif <(Level) = [1]> then\n    build [1] at x: [10] y: [-60] to x: [200] y: [-30] moving at [0] for [0] times while changing y by [0] at realm [2]\n    build [2] at x: [-200] y: [-150] to x: [-110] y: [100] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [1] at x: [210] y: [-150] to x: [400] y: [-50] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [3] at x: [210] y: [-40] to x: [250] y: [0] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [400] y: [300] to x: [800] y: [350] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [400] y: [360] to x: [410] y: [370] moving at [10] for [39] times while changing y by [1] at realm [1]\n    build [2] at x: [400] y: [380] to x: [410] y: [390] moving at [5] for [78] times while changing y by [1] at realm [1]\n    build [1] at x: [1000] y: [350] to x: [1400] y: [400] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [-100] y: [-150] to x: [0] y: [-50] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [-100] y: [30] to x: [-90] y: [40] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [10] y: [-150] to x: [200] y: [-75] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [4] at x: [1430] y: [484] to x: [1460] y: [514] moving at [0] for [0] times while changing y by [0] at realm [1]\nend\nif <(Level) = [2]> then\n    set [effect v] to [blindness]\n    build [1] at x: [10] y: [-150] to x: [200] y: [-75] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [210] y: [-150] to x: [470] y: [-90] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [1] at x: [480] y: [-150] to x: [630] y: [-60] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [640] y: [-140] to x: [720] y: [-10] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [1] at x: [680] y: [15] to x: [840] y: [40] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [720] y: [-170] to x: [1100] y: [-145] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [830] y: [-80] to x: [1000] y: [-55] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [980] y: [-40] to x: [1050] y: [200] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [1] at x: [1185] y: [-125] to x: [1320] y: [-100] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [1385] y: [-80] to x: [1600] y: [-55] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [3] at x: [1560] y: [-45] to x: [1600] y: [-5] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [1400] y: [270] to x: [1475] y: [295] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [1600] y: [120] to x: [1650] y: [365] moving at [0] for [10] times while changing y by [0] at realm [1]\n    build [1] at x: [1700] y: [270] to x: [1800] y: [300] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [4] at x: [1830] y: [325] to x: [1860] y: [355] moving at [0] for [0] times while changing y by [0] at realm [1]\nend\nif <(Level) = [3]> then\n    set [effect v] to [colourblind]\n    build [1] at x: [-50] y: [-140] to x: [50] y: [-120] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [80] y: [-60] to x: [200] y: [-25] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [200] y: [-25] to x: [655] y: [-60] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [-50] y: [50] to x: [50] y: [70] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [270] y: [10] to x: [550] y: [30] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [1] at x: [150] y: [150] to x: [250] y: [170] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [270] y: [50] to x: [290] y: [350] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [1] at x: [700] y: [15] to x: [810] y: [35] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [475] y: [105] to x: [575] y: [125] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [315] y: [180] to x: [415] y: [200] moving at [0] for [1] times while changing y by [0] at realm [1]\n    build [1] at x: [485] y: [265] to x: [585] y: [285] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [-50] y: [250] to x: [50] y: [270] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [3] at x: [555] y: [300] to x: [585] y: [330] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [650] y: [400] to x: [670] y: [650] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [1] at x: [600] y: [700] to x: [700] y: [720] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [900] y: [-100] to x: [1300] y: [150] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [4] at x: [1400] y: [200] to x: [1430] y: [230] moving at [0] for [0] times while changing y by [0] at realm [1]\nend\nif <(Level) = [4]> then\n    set [effect v] to [mad]\n    build [1] at x: [-50] y: [-150] to x: [50] y: [-50] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [65] y: [-80] to x: [230] y: [-50] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [250] y: [15] to x: [400] y: [150] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [3] at x: [250] y: [-50] to x: [500] y: [0] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [3] at x: [255] y: [165] to x: [285] y: [195] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [325] y: [415] to x: [345] y: [475] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [1] at x: [325] y: [350] to x: [740] y: [400] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [325] y: [500] to x: [425] y: [550] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [440] y: [505] to x: [540] y: [525] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [2] at x: [555] y: [475] to x: [580] y: [630] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [1] at x: [755] y: [100] to x: [900] y: [150] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [920] y: [250] to x: [1000] y: [275] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [920] y: [100] to x: [940] y: [235] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [1020] y: [225] to x: [1120] y: [245] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [1] at x: [955] y: [100] to x: [1250] y: [120] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [1135] y: [200] to x: [1155] y: [500] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [1] at x: [1320] y: [100] to x: [1385] y: [120] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [1410] y: [100] to x: [1430] y: [300] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [1200] y: [-50] to x: [1375] y: [-30] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [1200] y: [50] to x: [1500] y: [70] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [2] at x: [1350] y: [-15] to x: [1365] y: [0] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [1] at x: [1440] y: [-50] to x: [1550] y: [-30] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [1565] y: [-25] to x: [1580] y: [125] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [1350] y: [-150] to x: [1700] y: [-130] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [1800] y: [1425] to x: [2250] y: [1475] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [1850] y: [1515] to x: [2000] y: [1550] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [1] at x: [1900] y: [1560] to x: [2000] y: [1595] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [1] at x: [1950] y: [1605] to x: [2000] y: [1640] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [1] at x: [2260] y: [1510] to x: [2280] y: [1680] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [3] at x: [1725] y: [-120] to x: [1775] y: [50] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [700] y: [100] to x: [730] y: [330] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [1] at x: [910] y: [340] to x: [960] y: [600] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [4] at x: [2300] y: [1700] to x: [2330] y: [1730] moving at [0] for [0] times while changing y by [0] at realm [1]\nend\nif <(Level) = [5]> then\n    set [effect v] to [player gone]\n    Spawn player at x [-50] y [0]\n    build [1] at x: [-100] y: [-150] to x: [0] y: [-100] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [20] y: [-140] to x: [120] y: [-90] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [1] at x: [140] y: [-150] to x: [240] y: [-100] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [260] y: [-140] to x: [360] y: [-90] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [1] at x: [380] y: [-150] to x: [480] y: [-100] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [500] y: [-140] to x: [600] y: [-90] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [620] y: [-150] to x: [720] y: [-100] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [1] at x: [740] y: [-140] to x: [840] y: [-90] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [860] y: [-150] to x: [960] y: [-100] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [1] at x: [980] y: [-140] to x: [1080] y: [-90] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [-100] y: [75] to x: [0] y: [125] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [2] at x: [20] y: [75] to x: [120] y: [125] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [2] at x: [140] y: [75] to x: [240] y: [125] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [2] at x: [260] y: [75] to x: [360] y: [125] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [2] at x: [380] y: [75] to x: [480] y: [125] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [2] at x: [500] y: [75] to x: [600] y: [125] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [2] at x: [620] y: [75] to x: [720] y: [125] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [2] at x: [740] y: [75] to x: [840] y: [125] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [2] at x: [860] y: [75] to x: [960] y: [125] moving at [0] for [10] times while changing y by [1] at realm [1]\n    build [3] at x: [1050] y: [-70] to x: [1080] y: [-40] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [1120] y: [-50] to x: [1170] y: [0] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [870] y: [150] to x: [960] y: [200] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [845] y: [140] to x: [855] y: [185] moving at [0] for [20] times while changing y by [5] at realm [1]\n    build [1] at x: [750] y: [200] to x: [830] y: [250] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [725] y: [140] to x: [735] y: [185] moving at [0] for [20] times while changing y by [5] at realm [1]\n    build [1] at x: [630] y: [150] to x: [710] y: [200] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [605] y: [240] to x: [615] y: [285] moving at [0] for [20] times while changing y by [-5] at realm [1]\n    build [1] at x: [510] y: [200] to x: [590] y: [250] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [485] y: [140] to x: [495] y: [185] moving at [0] for [20] times while changing y by [5] at realm [1]\n    build [1] at x: [390] y: [150] to x: [470] y: [200] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [365] y: [240] to x: [375] y: [285] moving at [0] for [20] times while changing y by [-5] at realm [1]\n    build [1] at x: [260] y: [200] to x: [350] y: [250] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [235] y: [240] to x: [245] y: [285] moving at [0] for [20] times while changing y by [-5] at realm [1]\n    build [1] at x: [130] y: [150] to x: [220] y: [200] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [105] y: [140] to x: [115] y: [185] moving at [0] for [20] times while changing y by [5] at realm [1]\n    build [1] at x: [0] y: [200] to x: [90] y: [250] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [-25] y: [140] to x: [-15] y: [185] moving at [0] for [20] times while changing y by [5] at realm [1]\n    build [1] at x: [-130] y: [200] to x: [-40] y: [250] moving at [0] for [35] times while changing y by [6] at realm [1]\n    build [1] at x: [35] y: [620] to x: [125] y: [670] moving at [-1] for [35] times while changing y by [-6] at realm [1]\n    build [1] at x: [140] y: [570] to x: [240] y: [670] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [260] y: [640] to x: [360] y: [665] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [1] at x: [335] y: [570] to x: [435] y: [595] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [1] at x: [410] y: [500] to x: [610] y: [525] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [1] at x: [800] y: [425] to x: [900] y: [525] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [920] y: [475] to x: [1120] y: [525] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [920] y: [880] to x: [1020] y: [900] moving at [0] for [22] times while changing y by [-15] at realm [1]\n    build [2] at x: [880] y: [600] to x: [900] y: [800] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [3] at x: [1090] y: [545] to x: [1120] y: [575] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [920] y: [920] to x: [1020] y: [970] moving at [0] for [22] times while changing y by [-15] at realm [1]\n    build [1] at x: [1050] y: [900] to x: [1120] y: [950] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [800] y: [950] to x: [900] y: [1000] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [575] y: [950] to x: [775] y: [1000] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [2] at x: [400] y: [1020] to x: [675] y: [1050] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [1] at x: [400] y: [1020] to x: [675] y: [1050] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [3] at x: [700] y: [1010] to x: [740] y: [1050] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [2] at x: [400] y: [1550] to x: [675] y: [1600] moving at [] for [interactive] times while changing y by [] at realm [1]\n    build [1] at x: [200] y: [1100] to x: [350] y: [1150] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [1] at x: [200] y: [1200] to x: [250] y: [1250] moving at [0] for [0] times while changing y by [0] at realm [1]\n    build [4] at x: [200] y: [1350] to x: [250] y: [1400] moving at [0] for [0] times while changing y by [0] at realm [1]\nend\nrepeat until <not <(Die) = []>>\n    if <(Platforms) = []> then\n        erase all\n        switch backdrop to (thumb v)\n        stop [all v]\n    else\n        draw screen\n        player movements\n        hide variable [level v]\n        if <<<(mouse x) < [-110]> and <(mouse y) > [100]>> and <<[-240] < (mouse x)> and <[180] > (mouse y)>>> then\n            show variable [level v]\n        end\n    end\nend\nif <<(Die) = [fall]> or <(Die) = [impale]>> then\n    start sound [Glass Breaking v]\n    set [transparency v] to [100]\n    repeat (30)\n        build [player] at x: (Player X) y: (Player Y) to x: (Player X) y: (Player Y) moving at (pick random (-20) to (20)) for (pick random (0) to (20)) times while changing y by (pick random (0) to (20)) at realm [ispark]\n    end\n    set [player x v] to [9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999]\n    set [player y v] to [999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999]\n    repeat (25)\n        draw screen\n    end\nend\nif <(Die) = [burn]> then\n    start sound [burn v]\n    repeat (8)\n        change [colour v] by (-2)\n        change [player y v] by (2)\n        change [transparency v] by (14)\n        draw screen\n    end\nend\nif <(Die) = [crush]> then\n    start sound [Crunch v]\n    repeat (3)\n        change [size v] by (-8)\n        change [player y v] by (-8)\n        draw screen\n    end\n    repeat (5)\n        change [direction v] by (180)\n        change [transparency v] by (20)\n        change [size v] by (50)\n        draw screen\n    end\nend\nif <(Die) = [Win]> then\n    check collision\n    set [frozen times v] to (over times)\n    repeat (60)\n        Point towards item (frozen times)\n        change [direction v] by (75)\n        change [player x v] by ((round (((((item x) - (Player X)) * ((item x) - (Player X))) + (((item y) - (Player Y)) * ((item y) - (Player Y)))) / (60))) * ([sin v] of (direction) ))\n        change [player y v] by ((round (((((item x) - (Player X)) * ((item x) - (Player X))) + (((item y) - (Player Y)) * ((item y) - (Player Y)))) / (60))) * ([cos v] of (direction) ))\n        change [transparency v] by (1)\n        draw screen\n    end\n    change [level v] by (1)\nend\nbroadcast (start pen plat v)\n\ndefine draw screen\nerase all\nset pen size to (10)\nset [over times v] to [0]\nrepeat until <(over times) > ((length of [platforms v]) / (layers))>\n    if <(item (((over times) * (layers)) + (7)) of [platforms v]) = [interactive]> then\n        if <<<((Player X) + (24)) > ((item (((over times) * (layers)) + (2)) of [platforms v]) - (5))> and <((Player X) - (24)) < ((item (((over times) * (layers)) + (4)) of [platforms v]) + (5))>> and <<((Player Y) + (24)) > ((item (((over times) * (layers)) + (3)) of [platforms v]) - (5))> and <((Player Y) - (24)) < ((item (((over times) * (layers)) + (5)) of [platforms v]) + (7))>>> then\n            if <(item (((over times) * (layers)) + (10)) of [platforms v]) = (player realm)> then\n                if <((Player Y) - (24)) < ((item (((over times) * (layers)) + (5)) of [platforms v]) + (5))> then\n                    if <(x velocity) > [0]> then\n                        replace item (((over times) * (layers)) + (6)) of [platforms v] with ((x velocity) + (1))\n                    else\n                        replace item (((over times) * (layers)) + (6)) of [platforms v] with ((x velocity) - (1))\n                    end\n                end\n                if <<<((Player Y) + ((24) + (y velocity))) < ((item (((over times) * (layers)) + (3)) of [platforms v]) + (10))> and <(y velocity) > [0]>> or <<((Player Y) - (24)) > ((item (((over times) * (layers)) + (5)) of [platforms v]) - (10))> and <(y velocity) < [1]>>> then\n                    replace item (((over times) * (layers)) + (9)) of [platforms v] with (y velocity)\n                end\n            end\n        end\n        if <not <<(item (((over times) * (layers)) + (9)) of [platforms v]) = []> and <(item (((over times) * (layers)) + (6)) of [platforms v]) = []>>> then\n            replace item (((over times) * (layers)) + (9)) of [platforms v] with ((item (((over times) * (layers)) + (9)) of [platforms v]) - (1))\n            replace item (((over times) * (layers)) + (3)) of [platforms v] with ((item (((over times) * (layers)) + (3)) of [platforms v]) + (item (((over times) * (layers)) + (9)) of [platforms v]))\n            replace item (((over times) * (layers)) + (5)) of [platforms v] with ((item (((over times) * (layers)) + (5)) of [platforms v]) + (item (((over times) * (layers)) + (9)) of [platforms v]))\n            item collision\n            if <(block collision) = [1]> then\n                repeat until <not <(block collision) = [1]>>\n                    if <(item (((over times) * (layers)) + (9)) of [platforms v]) > [0]> then\n                        replace item (((over times) * (layers)) + (3)) of [platforms v] with ((item (((over times) * (layers)) + (3)) of [platforms v]) - (1))\n                        replace item (((over times) * (layers)) + (5)) of [platforms v] with ((item (((over times) * (layers)) + (5)) of [platforms v]) - (1))\n                    else\n                        replace item (((over times) * (layers)) + (3)) of [platforms v] with ((item (((over times) * (layers)) + (3)) of [platforms v]) + (1))\n                        replace item (((over times) * (layers)) + (5)) of [platforms v] with ((item (((over times) * (layers)) + (5)) of [platforms v]) + (1))\n                    end\n                    item collision\n                end\n                if <(item (((over times) * (layers)) + (9)) of [platforms v]) > [7]> then\n                    start sound [soft thud v]\n                end\n                replace item (((over times) * (layers)) + (9)) of [platforms v] with [0]\n            end\n            if <(item (((over times) * (layers)) + (6)) of [platforms v]) > [0]> then\n                replace item (((over times) * (layers)) + (6)) of [platforms v] with ((item (((over times) * (layers)) + (6)) of [platforms v]) - (1))\n            else\n                if <(item (((over times) * (layers)) + (6)) of [platforms v]) < [0]> then\n                    replace item (((over times) * (layers)) + (6)) of [platforms v] with ((item (((over times) * (layers)) + (6)) of [platforms v]) + (1))\n                end\n            end\n            replace item (((over times) * (layers)) + (2)) of [platforms v] with ((item (((over times) * (layers)) + (2)) of [platforms v]) + (item (((over times) * (layers)) + (6)) of [platforms v]))\n            replace item (((over times) * (layers)) + (4)) of [platforms v] with ((item (((over times) * (layers)) + (4)) of [platforms v]) + (item (((over times) * (layers)) + (6)) of [platforms v]))\n            item collision\n            if <(block collision) = [1]> then\n                repeat until <not <(block collision) = [1]>>\n                    if <(item (((over times) * (layers)) + (6)) of [platforms v]) > [0]> then\n                        replace item (((over times) * (layers)) + (2)) of [platforms v] with ((item (((over times) * (layers)) + (2)) of [platforms v]) - (1))\n                        replace item (((over times) * (layers)) + (4)) of [platforms v] with ((item (((over times) * (layers)) + (4)) of [platforms v]) - (1))\n                    else\n                        replace item (((over times) * (layers)) + (2)) of [platforms v] with ((item (((over times) * (layers)) + (2)) of [platforms v]) + (1))\n                        replace item (((over times) * (layers)) + (4)) of [platforms v] with ((item (((over times) * (layers)) + (4)) of [platforms v]) + (1))\n                    end\n                    item collision\n                end\n                replace item (((over times) * (layers)) + (6)) of [platforms v] with [0]\n            end\n            if <(block collision) = [2]> then\n                start sound [burn v]\n                if <not <((item (((over times) * (layers)) + (2)) of [platforms v]) + (1)) > (item (((item collision counter) * (layers)) + (2)) of [platforms v])>> then\n                    build (item (((over times) * (layers)) + (1)) of [platforms v]) at x: (item (((over times) * (layers)) + (2)) of [platforms v]) y: (item (((over times) * (layers)) + (3)) of [platforms v]) to x: ((item (((item collision counter) * (layers)) + (2)) of [platforms v]) - (11)) y: (item (((over times) * (layers)) + (5)) of [platforms v]) moving at (item (((over times) * (layers)) + (6)) of [platforms v]) for (item (((over times) * (layers)) + (7)) of [platforms v]) times while changing y by (item (((over times) * (layers)) + (9)) of [platforms v]) at realm (item (((over times) * (layers)) + (10)) of [platforms v])\n                    repeat (10)\n                        build [2] at x: (item (((item collision counter) * (layers)) + (2)) of [platforms v]) y: (((item (((over times) * (layers)) + (3)) of [platforms v]) + (item (((over times) * (layers)) + (5)) of [platforms v])) / (2)) to x: (item (((item collision counter) * (layers)) + (2)) of [platforms v]) y: (((item (((over times) * (layers)) + (3)) of [platforms v]) + (item (((over times) * (layers)) + (5)) of [platforms v])) / (2)) moving at (pick random (-20) to (20)) for (pick random (-20) to (20)) times while changing y by (pick random (-20) to (20)) at realm [spark]\n                    end\n                end\n                if <not <((item (((item collision counter) * (layers)) + (4)) of [platforms v]) + (1)) > (item (((over times) * (layers)) + (4)) of [platforms v])>> then\n                    build (item (((over times) * (layers)) + (1)) of [platforms v]) at x: ((item (((item collision counter) * (layers)) + (4)) of [platforms v]) + (11)) y: (item (((over times) * (layers)) + (3)) of [platforms v]) to x: (item (((over times) * (layers)) + (4)) of [platforms v]) y: (item (((over times) * (layers)) + (5)) of [platforms v]) moving at (item (((over times) * (layers)) + (6)) of [platforms v]) for (item (((over times) * (layers)) + (7)) of [platforms v]) times while changing y by (item (((over times) * (layers)) + (9)) of [platforms v]) at realm (item (((over times) * (layers)) + (10)) of [platforms v])\n                    repeat (10)\n                        build [2] at x: (item (((item collision counter) * (layers)) + (4)) of [platforms v]) y: (((item (((over times) * (layers)) + (3)) of [platforms v]) + (item (((over times) * (layers)) + (5)) of [platforms v])) / (2)) to x: (item (((item collision counter) * (layers)) + (4)) of [platforms v]) y: (((item (((over times) * (layers)) + (3)) of [platforms v]) + (item (((over times) * (layers)) + (5)) of [platforms v])) / (2)) moving at (pick random (-20) to (20)) for (pick random (-20) to (20)) times while changing y by (pick random (-20) to (20)) at realm [spark]\n                    end\n                end\n                repeat (10)\n                    delete (((over times) * (layers)) + (1)) of [platforms v]\n                end\n            end\n        end\n        if <<<((Player X) + (24)) > ((item (((over times) * (layers)) + (2)) of [platforms v]) - (5))> and <((Player X) - (24)) < ((item (((over times) * (layers)) + (4)) of [platforms v]) + (5))>> and <<((Player Y) + (24)) > ((item (((over times) * (layers)) + (3)) of [platforms v]) - (5))> and <((Player Y) - (24)) < ((item (((over times) * (layers)) + (5)) of [platforms v]) + (5))>>> then\n            if <(player realm) = (item (((over times) * (layers)) + (10)) of [platforms v])> then\n                check stuck\n                if <(block collision) = [1]> then\n                    set [die v] to [crush]\n                else\n                    if <<(item (((over times) * (layers)) + (9)) of [platforms v]) > [0]> and <(item (((over times) * (layers)) + (3)) of [platforms v]) > ((Player Y) - (item (((over times) * (layers)) + (9)) of [platforms v]))>> then\n                        set [die v] to [impale]\n                    else\n                        if <<(item (((over times) * (layers)) + (9)) of [platforms v]) < [0]> and <(item (((over times) * (layers)) + (5)) of [platforms v]) < ((Player Y) + (item (((over times) * (layers)) + (9)) of [platforms v]))>> then\n                            set [die v] to [impale]\n                        end\n                    end\n                end\n            end\n        end\n        item collision\n        if <(block collision) = [3]> then\n            replace item (((over times) * (layers)) + (9)) of [platforms v] with ((item (((over times) * (layers)) + (9)) of [platforms v]) + (5))\n        end\n    else\n        if <<(item (((over times) * (layers)) + (10)) of [platforms v]) = [spark]> or <(item (((over times) * (layers)) + (10)) of [platforms v]) = [ispark]>> then\n            replace item (((over times) * (layers)) + (9)) of [platforms v] with ((item (((over times) * (layers)) + (9)) of [platforms v]) - (1))\n            if <(item (((over times) * (layers)) + (6)) of [platforms v]) > [0]> then\n                replace item (((over times) * (layers)) + (6)) of [platforms v] with ((item (((over times) * (layers)) + (6)) of [platforms v]) - (1))\n            else\n                if <(item (((over times) * (layers)) + (6)) of [platforms v]) < [0]> then\n                    replace item (((over times) * (layers)) + (6)) of [platforms v] with ((item (((over times) * (layers)) + (6)) of [platforms v]) + (1))\n                end\n            end\n            replace item (((over times) * (layers)) + (2)) of [platforms v] with ((item (((over times) * (layers)) + (2)) of [platforms v]) + (item (((over times) * (layers)) + (6)) of [platforms v]))\n            replace item (((over times) * (layers)) + (4)) of [platforms v] with ((item (((over times) * (layers)) + (4)) of [platforms v]) + (item (((over times) * (layers)) + (6)) of [platforms v]))\n            replace item (((over times) * (layers)) + (3)) of [platforms v] with ((item (((over times) * (layers)) + (3)) of [platforms v]) + (item (((over times) * (layers)) + (9)) of [platforms v]))\n            replace item (((over times) * (layers)) + (5)) of [platforms v] with ((item (((over times) * (layers)) + (5)) of [platforms v]) + (item (((over times) * (layers)) + (9)) of [platforms v]))\n            replace item (((over times) * (layers)) + (8)) of [platforms v] with ((item (((over times) * (layers)) + (8)) of [platforms v]) + (5))\n        else\n            if <not <<(item (((over times) * (layers)) + (9)) of [platforms v]) = [0]> and <(item (((over times) * (9)) + (6)) of [platforms v]) = [0]>>> then\n                if <(item (((over times) * (layers)) + (7)) of [platforms v]) > [0]> then\n                    if <<<((Player X) + (24)) > ((item (((over times) * (layers)) + (2)) of [platforms v]) - (5))> and <((Player X) - (24)) < ((item (((over times) * (layers)) + (4)) of [platforms v]) + (5))>> and <<((Player Y) + (24)) > ((item (((over times) * (layers)) + (3)) of [platforms v]) - (5))> and <((Player Y) - (26)) < ((item (((over times) * (layers)) + (5)) of [platforms v]) + (5))>>> then\n                        change [player x v] by (item (((over times) * (9)) + (6)) of [platforms v])\n                    end\n                    replace item (((over times) * (layers)) + (2)) of [platforms v] with ((item (((over times) * (layers)) + (2)) of [platforms v]) + (item (((over times) * (layers)) + (6)) of [platforms v]))\n                    replace item (((over times) * (layers)) + (4)) of [platforms v] with ((item (((over times) * (layers)) + (4)) of [platforms v]) + (item (((over times) * (layers)) + (6)) of [platforms v]))\n                    replace item (((over times) * (layers)) + (3)) of [platforms v] with ((item (((over times) * (layers)) + (3)) of [platforms v]) + (item (((over times) * (layers)) + (9)) of [platforms v]))\n                    replace item (((over times) * (layers)) + (5)) of [platforms v] with ((item (((over times) * (layers)) + (5)) of [platforms v]) + (item (((over times) * (layers)) + (9)) of [platforms v]))\n                end\n                if <(item (((over times) * (layers)) + (7)) of [platforms v]) < [0]> then\n                    if <<<((Player X) + (24)) > ((item (((over times) * (layers)) + (2)) of [platforms v]) - (5))> and <((Player X) - (24)) < ((item (((over times) * (layers)) + (4)) of [platforms v]) + (5))>> and <<((Player Y) + (24)) > ((item (((over times) * (9)) + (3)) of [platforms v]) - (5))> and <((Player Y) - (26)) < ((item (((over times) * (9)) + (5)) of [platforms v]) + (5))>>> then\n                        change [player x v] by (() - (item (((over times) * (layers)) + (6)) of [platforms v]))\n                    end\n                    replace item (((over times) * (layers)) + (2)) of [platforms v] with ((item (((over times) * (layers)) + (2)) of [platforms v]) - (item (((over times) * (layers)) + (6)) of [platforms v]))\n                    replace item (((over times) * (layers)) + (4)) of [platforms v] with ((item (((over times) * (layers)) + (4)) of [platforms v]) - (item (((over times) * (layers)) + (6)) of [platforms v]))\n                    replace item (((over times) * (layers)) + (3)) of [platforms v] with ((item (((over times) * (layers)) + (3)) of [platforms v]) - (item (((over times) * (layers)) + (9)) of [platforms v]))\n                    replace item (((over times) * (layers)) + (5)) of [platforms v] with ((item (((over times) * (layers)) + (5)) of [platforms v]) - (item (((over times) * (layers)) + (9)) of [platforms v]))\n                    if <([abs v] of (item (((over times) * (layers)) + (7)) of [platforms v]) ) > ((item (((over times) * (layers)) + (8)) of [platforms v]) - (1))> then\n                        replace item (((over times) * (layers)) + (7)) of [platforms v] with ((item (((over times) * (layers)) + (8)) of [platforms v]) + (1))\n                    end\n                end\n                replace item (((over times) * (layers)) + (7)) of [platforms v] with ((item (((over times) * (layers)) + (7)) of [platforms v]) - (1))\n            end\n        end\n    end\n    if <<<(item (((over times) * (layers)) + (10)) of [platforms v]) = (player realm)> or <(item (((over times) * (layers)) + (10)) of [platforms v]) > (player realm)>> or < (item (((over times) * (layers)) + (10)) of [platforms v]) contains [spark]?>> then\n        set pen size to ((10) - ((2) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm))))\n        set pen (transparency v) to (0)\n        pen up\n        if <(effect) = [colourblind]> then\n            set pen color to (#ffffff)\n        else\n            if <(effect) = [mad]> then\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [1]> then\n                    set pen color to (#ff00f6)\n                end\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [2]> then\n                    set pen color to (#00ff21)\n                end\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [3]> then\n                    set pen color to (#ff0000)\n                end\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [4]> then\n                    set pen color to (#0041ff)\n                end\n                if <(item (((over times) * (layers)) + (10)) of [platforms v]) = [ispark]> then\n                    set pen color to (#ffe900)\n                end\n            else\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [1]> then\n                    set pen color to (#0041ff)\n                end\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [2]> then\n                    set pen color to (#ff0000)\n                end\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [3]> then\n                    set pen color to (#ff00f6)\n                end\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [4]> then\n                    set pen color to (#00ff21)\n                end\n                if <(item (((over times) * (layers)) + (10)) of [platforms v]) = [ispark]> then\n                    set pen color to (#ffe900)\n                end\n            end\n        end\n        if <<(item (((over times) * (layers)) + (10)) of [platforms v]) = [ispark]> or <(item (((over times) * (layers)) + (10)) of [platforms v]) = [spark]>> then\n            set pen (transparency v) to (item (((over times) * (layers)) + (8)) of [platforms v])\n        end\n        change pen (transparency v) by (((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)) * (20))\n        go to x: (((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) y: (((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm))))\n        if <<<([abs v] of (((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [241]> or <([abs v] of (((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [241]>> and <([abs v] of (((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [181]>> then\n            pen down\n            if <(effect) = [blindness]> then\n                pen up\n            end\n        end\n        set x to (((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm))))\n        pen up\n        if <<<([abs v] of (((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [180]> or <([abs v] of (((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [180]>> and <([abs v] of (((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [241]>> then\n            pen down\n            if <(effect) = [blindness]> then\n                pen up\n            end\n        end\n        set y to (((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm))))\n        pen up\n        if <<<([abs v] of (((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [241]> or <([abs v] of (((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [241]>> and <([abs v] of (((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [181]>> then\n            pen down\n            if <(effect) = [blindness]> then\n                pen up\n            end\n        end\n        set x to (((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm))))\n        pen up\n        if <<<([abs v] of (((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [180]> or <([abs v] of (((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [180]>> and <([abs v] of (((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [241]>> then\n            pen down\n            if <(effect) = [blindness]> then\n                pen up\n            end\n        end\n        set y to (((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm))))\n        pen up\n    end\n    if <<<(item (((over times) * (layers)) + (10)) of [platforms v]) = [ispark]> or <(item (((over times) * (layers)) + (10)) of [platforms v]) = [spark]>> and <(item (((over times) * (layers)) + (8)) of [platforms v]) > [100]>> then\n        repeat (layers)\n            delete (((over times) * (layers)) + (1)) of [platforms v]\n        end\n    else\n        if <<(item (((over times) * (layers)) + (7)) of [platforms v]) = [interactive]> and <(item (((over times) * (layers)) + (4)) of [platforms v]) < ((item (((over times) * (layers)) + (2)) of [platforms v]) + (1))>> then\n            repeat (layers)\n                delete (((over times) * (layers)) + (1)) of [platforms v]\n            end\n        else\n            change [over times v] by (1)\n        end\n    end\nend\nif <not <(effect) = [player gone]>> then\n    set pen color to (#fff600)\n    set pen (color v) to (colour)\n    set pen (transparency v) to (transparency)\n    set pen size to ((size) / (5))\n    point in direction (direction)\n    go to x: ((Player X) - (scroll X)) y: ((Player Y) - (scroll Y))\n    move (() - ((size) / (2))) steps\n    turn right (90) degrees\n    move ((size) / (2)) steps\n    pen down\n    repeat (4)\n        turn left (90) degrees\n        move (size) steps\n    end\nelse\n    if <(pick random (1) to (5)) = [2]> then\n        set pen color to (#fff600)\n        set pen (color v) to (colour)\n        set pen (transparency v) to (transparency)\n        set pen size to ((size) / (5))\n        point in direction (direction)\n        go to x: ((Player X) - (scroll X)) y: ((Player Y) - (scroll Y))\n        move (() - ((size) / (2))) steps\n        turn right (90) degrees\n        move ((size) / (2)) steps\n        pen down\n        repeat (4)\n            turn left (90) degrees\n            move (size) steps\n        end\n    end\nend\nset [over times v] to [0]\nrepeat ((length of [platforms v]) / (layers))\n    if <(item (((over times) * (layers)) + (10)) of [platforms v]) < (player realm)> then\n        set pen size to ((10) - ((2) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm))))\n        set pen (transparency v) to (0)\n        pen up\n        if <(effect) = [colourblind]> then\n            set pen color to (#ffffff)\n        else\n            if <(effect) = [mad]> then\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [1]> then\n                    set pen color to (#00ff21)\n                end\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [2]> then\n                    set pen color to (#ff00f6)\n                end\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [3]> then\n                    set pen color to (#ff0000)\n                end\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [4]> then\n                    set pen color to (#0041ff)\n                end\n                if <(item (((over times) * (layers)) + (10)) of [platforms v]) = [ispark]> then\n                    set pen color to (#ffe900)\n                end\n            else\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [1]> then\n                    set pen color to (#0041ff)\n                end\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [2]> then\n                    set pen color to (#ff0000)\n                end\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [3]> then\n                    set pen color to (#ff00f6)\n                end\n                if <(item (((over times) * (layers)) + (1)) of [platforms v]) = [4]> then\n                    set pen color to (#00ff21)\n                end\n                if <(item (((over times) * (layers)) + (10)) of [platforms v]) = [ispark]> then\n                    set pen color to (#ffe900)\n                end\n            end\n        end\n        if <<(item (((over times) * (layers)) + (10)) of [platforms v]) = [ispark]> or <(item (((over times) * (layers)) + (10)) of [platforms v]) = [spark]>> then\n            set pen (transparency v) to (item (((over times) * (layers)) + (8)) of [platforms v])\n        end\n        change pen (transparency v) by (((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)) * (20))\n        go to x: (((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) y: (((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm))))\n        if <<<([abs v] of (((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [241]> or <([abs v] of (((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [241]>> and <([abs v] of (((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [181]>> then\n            pen down\n            if <(effect) = [blindness]> then\n                pen up\n            end\n        end\n        set x to (((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm))))\n        pen up\n        if <<<([abs v] of (((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [180]> or <([abs v] of (((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [180]>> and <([abs v] of (((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [241]>> then\n            pen down\n            if <(effect) = [blindness]> then\n                pen up\n            end\n        end\n        set y to (((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm))))\n        pen up\n        if <<<([abs v] of (((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [241]> or <([abs v] of (((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (4)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [241]>> and <([abs v] of (((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [181]>> then\n            pen down\n            if <(effect) = [blindness]> then\n                pen up\n            end\n        end\n        set x to (((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm))))\n        pen up\n        if <<<([abs v] of (((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [180]> or <([abs v] of (((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (5)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [180]>> and <([abs v] of (((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) - ((((item (((over times) * (layers)) + (2)) of [platforms v]) - (scroll X)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm)))) ) < [241]>> then\n            pen down\n            if <(effect) = [blindness]> then\n                pen up\n            end\n        end\n        set y to (((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) - ((((item (((over times) * (layers)) + (3)) of [platforms v]) - (scroll Y)) / (5)) * ((item (((over times) * (layers)) + (10)) of [platforms v]) - (player realm))))\n        pen up\n    end\n    change [over times v] by (1)\nend\n\ndefine build (item) at x: (x) y: (y) to x: (x2) y: (y2) moving at (dist per s) for (tick) times while changing y by (y dist) at realm (realm)\nadd (item) to [platforms v]\nadd (x) to [platforms v]\nadd (y) to [platforms v]\nadd (x2) to [platforms v]\nadd (y2) to [platforms v]\nadd (dist per s) to [platforms v]\nadd (tick) to [platforms v]\nadd (tick) to [platforms v]\nadd (y dist) to [platforms v]\nadd (realm) to [platforms v]\n\ndefine check collision\nset [collision v] to []\nset [over times v] to [0]\nrepeat ((length of [platforms v]) / (layers))\n    if <<<((Player X) + (24)) > ((item (((over times) * (layers)) + (2)) of [platforms v]) - (5))> and <((Player X) - (24)) < ((item (((over times) * (layers)) + (4)) of [platforms v]) + (5))>> and <<((Player Y) + (24)) > ((item (((over times) * (layers)) + (3)) of [platforms v]) - (5))> and <((Player Y) - (24)) < ((item (((over times) * (layers)) + (5)) of [platforms v]) + (5))>>> then\n        if <(player realm) = (item (((over times) * (layers)) + (10)) of [platforms v])> then\n            set [collision v] to (item (((over times) * (layers)) + (1)) of [platforms v])\n            stop [this script v]\n        end\n    end\n    change [over times v] by (1)\nend\n\ndefine player movements\nchange [y velocity v] by (-1)\nchange [player y v] by (y velocity)\nchange [in air v] by (1)\ncheck collision\nif <(collision) = [1]> then\n    repeat until <not <(collision) = [1]>>\n        if <(y velocity) < [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        check collision\n    end\n    if <(y velocity) < [-9]> then\n        start sound [soft thud v]\n    end\n    set [y velocity v] to [0]\nend\nif <<key (right arrow v) pressed?> or <<(mouse x) > ((Player X) - (scroll X))> and <mouse down?>>> then\n    if <(x velocity) < [10]> then\n        change [x velocity v] by (1)\n    end\nend\nif <<key (left arrow v) pressed?> or <<(mouse x) < ((Player X) - (scroll X))> and <mouse down?>>> then\n    if <(x velocity) > [-10]> then\n        change [x velocity v] by (-1)\n    end\nend\nif <not <<<key (left arrow v) pressed?> or <key (right arrow v) pressed?>> or <<mouse down?> and <not <(mouse x) = ((Player X) - (scroll X))>>>>> then\n    if <(x velocity) > [0]> then\n        change [x velocity v] by (-1)\n    end\n    if <(x velocity) < [0]> then\n        change [x velocity v] by (1)\n    end\nend\nchange [player x v] by (x velocity)\ncheck collision\nif <not <(item (((over times) * (layers)) + (7)) of [platforms v]) = [interactive]>> then\n    if <(collision) = [1]> then\n        repeat until <not <(collision) = [1]>>\n            if <(x velocity) > [0]> then\n                change [player x v] by (-1)\n            else\n                change [player x v] by (1)\n            end\n            check collision\n        end\n        set [x velocity v] to [0]\n    end\nelse\n    replace item (((over times) * (layers)) + (4)) of [platforms v] with ((item (((over times) * (layers)) + (4)) of [platforms v]) + (x velocity))\n    replace item (((over times) * (layers)) + (2)) of [platforms v] with ((item (((over times) * (layers)) + (2)) of [platforms v]) + (x velocity))\n    item collision\n    replace item (((over times) * (layers)) + (4)) of [platforms v] with ((item (((over times) * (layers)) + (4)) of [platforms v]) - (x velocity))\n    replace item (((over times) * (layers)) + (2)) of [platforms v] with ((item (((over times) * (layers)) + (2)) of [platforms v]) - (x velocity))\n    if <(block collision) = [1]> then\n        repeat until <not <(collision) = [1]>>\n            if <(x velocity) > [0]> then\n                change [player x v] by (-1)\n            else\n                change [player x v] by (1)\n            end\n            check collision\n        end\n        set [x velocity v] to [0]\n    end\nend\nif <<<key (up arrow v) pressed?> or <<(mouse y) > ((Player Y) - (scroll Y))> and <mouse down?>>> and <(in air) = [0]>> then\n    set [y velocity v] to [15]\nend\ncheck collision\nif <(Player Y) < [-179]> then\n    set [die v] to [fall]\nend\nif <(collision) = [2]> then\n    set [die v] to [burn]\nend\nif <(collision) = [3]> then\n    change [y velocity v] by (10)\nend\nif <(collision) = [4]> then\n    set [die v] to [Win]\nend\nchange [scroll x v] by (round (((Player X) - (scroll X)) / (10)))\nchange [scroll y v] by (round (((Player Y) - (scroll Y)) / (10)))\nif <(scroll Y) < [0]> then\n    set [scroll y v] to [0]\nend\nif <(scroll X) < [0]> then\n    set [scroll x v] to [0]\nend\n\ndefine item collision\nset [block collision v] to []\nset [item collision counter v] to [0]\nrepeat ((length of [platforms v]) / (layers))\n    if <not <(item collision counter) = (over times)>> then\n        if <<<((item (((over times) * (layers)) + (4)) of [platforms v]) + (5)) > ((item (((item collision counter) * (layers)) + (2)) of [platforms v]) - (5))> and <((item (((over times) * (layers)) + (2)) of [platforms v]) - (5)) < ((item (((item collision counter) * (layers)) + (4)) of [platforms v]) + (5))>> and <<((item (((over times) * (layers)) + (5)) of [platforms v]) + (5)) > ((item (((item collision counter) * (layers)) + (3)) of [platforms v]) - (5))> and <((item (((over times) * (layers)) + (3)) of [platforms v]) - (5)) < ((item (((item collision counter) * (layers)) + (5)) of [platforms v]) + (5))>>> then\n            if <(item (((item collision counter) * (layers)) + (10)) of [platforms v]) = (item (((over times) * (layers)) + (10)) of [platforms v])> then\n                set [block collision v] to (item (((item collision counter) * (layers)) + (1)) of [platforms v])\n                stop [this script v]\n            end\n        end\n    end\n    change [item collision counter v] by (1)\nend\n\ndefine check stuck\nset [block collision v] to []\nset [item collision counter v] to [0]\nrepeat ((length of [platforms v]) / (layers))\n    if <not <(item collision counter) = (over times)>> then\n        if <<<((Player X) + (24)) > ((item (((item collision counter) * (layers)) + (2)) of [platforms v]) - (5))> and <((Player X) - (24)) < ((item (((item collision counter) * (layers)) + (4)) of [platforms v]) + (5))>> and <<((Player Y) + ((24) + (y velocity))) > ((item (((item collision counter) * (layers)) + (3)) of [platforms v]) - (5))> and <((Player Y) - ((24) + (() - (y velocity)))) < ((item (((item collision counter) * (layers)) + (5)) of [platforms v]) + (5))>>> then\n            if <(player realm) = (item (((item collision counter) * (layers)) + (10)) of [platforms v])> then\n                set [block collision v] to (item (((item collision counter) * (layers)) + (1)) of [platforms v])\n            end\n        end\n    end\n    change [item collision counter v] by (1)\nend\n\nwhen [w v] key pressed\nchange [player realm v] by (1)\ncheck collision\nif <(collision) = [1]> then\n    change [player realm v] by (-1)\nend\n\nwhen [s v] key pressed\nchange [player realm v] by (-1)\ncheck collision\nif <(collision) = [1]> then\n    change [player realm v] by (1)\nend\n\ndefine Point towards item (over times)\nset [item x v] to ((item (((over times) * (layers)) + (2)) of [platforms v]) + (((item (((over times) * (layers)) + (4)) of [platforms v]) - (item (((over times) * (layers)) + (2)) of [platforms v])) / (2)))\nset [item y v] to ((item (((over times) * (layers)) + (3)) of [platforms v]) + (((item (((over times) * (layers)) + (5)) of [platforms v]) - (item (((over times) * (layers)) + (3)) of [platforms v])) / (2)))\nif <(item y) > (Player Y)> then\n    set [direction v] to ([atan v] of (((item x) - (Player X)) / ((item y) - (Player Y))) )\nelse\n    set [direction v] to (([atan v] of (((item x) - (Player X)) / ((item y) - (Player Y))) ) + (180))\nend\n\ndefine Spawn player at x (x) y (y)\nset [player x v] to (x)\nset [player y v] to (y)\nset [scroll x v] to (x)\nset [scroll y v] to (y)\n\nrepeat until <not <(block collision) = [2]>>\n    if <(item (((over times) * (layers)) + (6)) of [platforms v]) > [0]> then\n        replace item (((over times) * (layers)) + (4)) of [platforms v] with ((item (((over times) * (layers)) + (4)) of [platforms v]) - (1))\n    else\n        replace item (((over times) * (layers)) + (2)) of [platforms v] with ((item (((over times) * (layers)) + (2)) of [platforms v]) + (1))\n    end\n    item collision\nend\nstart sound [burn v]\nrepeat (pick random (3) to (10))\n    if <(item (((over times) * (layers)) + (6)) of [platforms v]) > [0]> then\n        build [2] at x: (item (((over times) * (layers)) + (4)) of [platforms v]) y: ((item (((over times) * (layers)) + (3)) of [platforms v]) + (((item (((over times) * (layers)) + (5)) of [platforms v]) - (item (((over times) * (layers)) + (3)) of [platforms v])) / (2))) to x: (item (((over times) * (layers)) + (4)) of [platforms v]) y: ((item (((over times) * (layers)) + (3)) of [platforms v]) + (((item (((over times) * (layers)) + (5)) of [platforms v]) - (item (((over times) * (layers)) + (3)) of [platforms v])) / (2))) moving at (pick random (-20) to (20)) for (pick random (1) to (20)) times while changing y by (pick random (0) to (20)) at realm [spark]\n    else\n        build [2] at x: (item (((over times) * (layers)) + (2)) of [platforms v]) y: ((item (((over times) * (layers)) + (3)) of [platforms v]) + (((item (((over times) * (layers)) + (5)) of [platforms v]) - (item (((over times) * (layers)) + (3)) of [platforms v])) / (2))) to x: (item (((over times) * (layers)) + (2)) of [platforms v]) y: ((item (((over times) * (layers)) + (3)) of [platforms v]) + (((item (((over times) * (layers)) + (5)) of [platforms v]) - (item (((over times) * (layers)) + (3)) of [platforms v])) / (2))) moving at (pick random (-20) to (20)) for (pick random (1) to (20)) times while changing y by (pick random (0) to (20)) at realm [spark]\n    end\nend\n\n
HEALTH WARNING - THIS GAME CONTAINS FLASHING GRAPHICS. IT IS NOT SUITABLE FOR PEOPLE SUFFERING FROM PHOTOPHOBIA EPILEPSY