UNPKG

puzzlescript

Version:

Play PuzzleScript games in your terminal!

773 lines (627 loc) 8.65 kB
title Self Alteration author Rosden Shadow [Mark Signorelli] homepage rosden.itch.io noaction run_rules_on_level_Start background_color #231F26 text_color #CCCCCC again_interval 0.1 ======== OBJECTS ======== Background #333333 #231F26 (#E57ED5 #CC5285) 11111 10001 11101 10101 11111 ( 00101 01110 11011 01111 10110) ( 11101 00101 11111 10100 10111) nomove #FFEED9 #536673 ..... .000. .010. .000. ..... Target white #423D39 ..... .000. .0.0. .000. ..... Wall #FFFFFF #CCCCCC #999999 #666666 21110 12110 21221 23232 32323 overwall #FFFFFF #CCCCCC #999999 #666666 ..... ..... ..... 10010 21101 Wall2 #FFD9E0 #C1A2A5 #845C5C #5B4846 21100 21110 22110 22221 23232 overwall2 #FFD9E0 #C1A2A5 #845C5C #5B4846 ..... ..... ..... ..... 10000 Wall3 #E5C17E #CC7A52 #B32D2D #73342E 21100 21110 22110 22221 23232 overwall3 #E5C17E #CC7A52 #B32D2D #73342E ..... ..... ..... ..... 10000 Playerright #FFD9E0 #C1A2A5 #666666 #333333 .000. 11202 11313 11110 .1.1. playerleft #FFD9E0 #C1A2A5 #666666 #333333 .000. 20211 31311 01111 .1.1. Playerright2 #D9FFDC #AAE0F2 #A87EE5 #705C84 .000. 11202 11313 11110 .1.1. playerleft2 #D9FFDC #AAE0F2 #A87EE5 #705C84 .000. 20211 31311 01111 .1.1. Crate #D9FFDC #AAE0F2 #7EA1E5 #5C6684 21100 21110 22110 32223 .333. overcrate #D9FFDC #AAE0F2 #7EA1E5 #5C6684 ..... ..... ..... ..... .000. crateside #46495B #7EA1E5 00000 01010 00000 01010 00000 Playerright3 #F2F2AA #E5C17E #CC7A52 #B32D2D .000. 11202 11313 11110 .1.1. playerleft3 #F2F2AA #E5C17E #CC7A52 #B32D2D .000. 20211 31311 01111 .1.1. Crate2 #F2F2AA #E5C17E #CC7A52 #736053 21100 21110 22110 32223 .333. overcrate2 #F2F2AA #E5C17E #CC7A52 #736053 ..... ..... ..... ..... .000. crateside2 #423D39 #CC7A52 00000 00010 00100 01000 00000 Playerright4 #D9FFDC #7EE58D #F2AACE #E57ED5 .000. 11202 11313 11110 .1.1. playerleft4 #D9FFDC #7EE58D #F2AACE #E57ED5 .000. 20211 31311 01111 .1.1. Crate3 #D9FFDC #7EE58D #5C8466 #4F5B46 21100 21110 22110 32223 .333. overcrate3 #D9FFDC #7EE58D #5C8466 #4F5B46 ..... ..... ..... ..... .000. crateside3 #423D39 #5C8466 00000 00110 00000 01100 00000 end #D9FFDC #AAE0F2 #7EA1E5 #5C6684 21100 21110 22110 32223 .333. endx #D9FFDC #AAE0F2 #7EA1E5 #5C6684 21100 21110 22110 32223 .333. cloner #E5C17E #DB7F55 #B32D2D #73342E .100. .210. .221. .332. ..... swapcrate Orange Yellow 00000 0...0 0...0 0...0 00000 swapwall black ..... ..... ..... ..... ..... thefloor #231F26 00000 00000 00000 00000 00000 thefloorx #231F26 00000 00000 00000 00000 00000 eend #231F26 00000 00000 00000 00000 00000 ( checkempty black ..... ..... ..... ..... ..... checkblock black ..... ..... ..... ..... ..... ) spa2 TRANSPARENT movr TRANSPARENT movl TRANSPARENT movu TRANSPARENT movd TRANSPARENT wall2make TRANSPARENT switcrate black ..... ..... ..... ..... ..... switcrate2 black ..... ..... ..... ..... ..... arrow black ..... ..... .0.0. .000. ..0.. arrow2 black ..... .0.0. .000. ..0.. ..... arrowx black ..... ..... ..... ..... ..... arrowx2 black ..... ..... ..... ..... ..... winend #F2F2AA #E5C17E #CC7A52 #736053 1000. 21100 21110 22110 .2221 ======= LEGEND ======= . = Background # = Wall P = Playerright * = Crate @ = crate2 $=crate3 O = Target n = nomove a = arrow2 and wall e=end t = end and target and eend w=end and winend c=cloner -=thefloor x=thefloorx feel=overwall or overcrate or overcrate2 or overcrate3 or overwall2 or overwall3 pushable=crate or cloner or swapcrate or switcrate or switcrate2 or Crate3 or crate2 win=crate or wall theemx= crate playerx=playerright or playerleft player2 = Playerright2 or playerleft2 player3 = Playerright3 or playerleft3 player4 = Playerright4 or playerleft4 player=playerright or playerleft or player2 or player3 or player4 plleft=playerleft or playerleft2 or playerleft3 or playerleft4 plright=playerright or playerright2 or playerright3 or playerright4 plno2=playerx or player3 or player4 plno3=playerx or player2 or player4 plno4=playerx or player3 or player2 blockerx = wall or pushable or nomove or arrow or wall2 or wall3 blocker=blockerx or player arrowk = arrow or arrow2 or arrowx or arrowx2 mov= movr or movl or movu or movd side=crateside or crateside2 or crateside3 ======= SOUNDS ======= pushable MOVE 36772507 EndLevel 74089700 player MOVE 68988304 sfx0 52836103 sfx1 45427502 sfx2 29503700 sfx3 81951902 sfx4 68515903 sfx5 90161503 sfx6 8517103 sfx7 71099507 ================ COLLISIONLAYERS ================ Background crateside crateside2 crateside3 Target nomove Player, Wall, pushable,swapwall,thefloor,thefloorx,wall2,wall3 wall2make spa2 movr movl movu movd arrow, arrow2, arrowx, arrowx2 winend eend end, endx feel ====== RULES ====== [feel]->[] [ left Playerright] -> [ left playerleft] [ right Playerleft] -> [ right playerright] [ left Playerright2] -> [ left playerleft2] [ right Playerleft2] -> [ right playerright2] [ left Playerright3] -> [ left playerleft3] [ right Playerleft3] -> [ right playerright3] [ left Playerright4] -> [ left playerleft4] [ right Playerleft4] -> [ right playerright4] [ > Player | pushable ] -> [ > Player | > pushable ] [> pushable|Target]->[> pushable|target] sfx2 [player2 movr]->[right player2] sfx7 [player2 movl]->[left player2 ] sfx7 [player2 movu]->[up player2 ] sfx7 [player2 movd]->[down player2 ] sfx7 [mov]->[] right[right player2|no blocker]->[right player2| movr] left[left player2|no blocker]->[left player2| movl] up[up player2|no blocker]->[up player2| movu] down[down player2|no blocker]->[down player2| movd] [endx] ->[thefloor] sfx2 [end | thefloor]-> [endx |thefloor] late[side]->[] late[wall2]->[] late [crate|no blockerx]-> [crate|crateside] late [crate2|no blockerx]-> [crate2|crateside2] late [crate3|no blockerx]-> [crate3|crateside3] late[crateside crateside2]->[wall2make] late[crateside2 crateside3]->[wall2make] late[crateside crateside3]->[wall2make] late[wall2make no blocker]->[wall2] late[plno2 crateside] ->[plno2 crateside] sfx5 late[plno3 crateside2] ->[plno3 crateside2] sfx4 late[plno4 crateside3] ->[plno4 crateside3] sfx6 late[plleft crateside]->[playerleft2 crateside] late[plright crateside]->[playerright2 crateside] late[plleft crateside2]->[playerleft3 crateside2] late[plright crateside2]->[playerright3 crateside2] late[plleft crateside3]->[playerleft4 crateside3] late[plright crateside3]->[playerright4 crateside3] late[player3 no spa2]->[player3 spa2] late[spa2 no blocker]->[wall3] late up [wall| ]-> [wall|overwall] late up [wall2| ]-> [wall2|overwall2] late up [wall3| ]-> [wall3|overwall3] late up [theemx| ]-> [theemx|overcrate] late up [crate2| ]-> [crate2|overcrate2] late up [crate3| ]-> [crate3|overcrate3] late up [end| ]-> [end|overcrate] late up [endx| ]-> [endx|overcrate] []-> again ( [arrow]->[arrowx2] [arrow2]->[arrowx] [arrowx]->[arrow] [arrowx2]->[arrow2]) ============== WINCONDITIONS ============== all Target on pushable ======= LEVELS ======= message Have a block on all targets message level 1 of 7 --------- ######### #...P...# #...O...# ###...### #...#...# #.......# #...@...# #.......# ##.....## -#######- message level 2 of 7 --------- ########- #......## #.......# #.O.....# #...#*..# #.......# #.......# #....P..# ##.....## -#######- message level 3 of 7 --------- -#######- -#.....## ##......# #.....@.# #O......# #O......# #.....@.# #.P.....# ##.....## -#######- message level 4 of 7 --------- ######### #.......# #.O..O..# #.......# #.*..*..# #.......# #.......# #...P...# ##.....## -#######- message level 5 of 7 --------- #######-- #.....##- #..OPO.## #.......# #...#...# #.*...@.# #.......# #.......# #......## ########- message level 6 of 7 --------- ######### #.......# #..OPO..# #...O...# #.......# #...*...# #.@...@.# #.......# ###...### --#####-- message level 7 of 7 --------- -#######- ##.....## #.*...*.# #.......# #...@...# #.......# #..OPO..# #...O...# #.......# ######### (--------- ######### #.......# #.O.O.O.# #...P...# #.*...*.# #.......# #...*...# #.......# ###...### --#####--) (--------- ######### #.......# #.O.O.O.# #.......# #.*...*.# #.......# #...@...# #.P.....# ##.....## -#######-) (--------- -#######- ##..P..## #.O.O.O.# #.......# #...#...# #.......# #.@.@.@.# #.......# ##.....## -#######-) (--------- ######### #.......# #.#.O.#.# #.......# #..@.@..# #.......# #...P...# #.#.O.#.# #.......# #########) (--------- -#######- ##.....## #...O...# #.......# #.@...$.# #...*...# #.......# #...P...# ##.....## -#######-) xxxxxxxxxxxxxx -eeeeeeeeeeee- eeeeeeeeeeeeee eeeeeeeeeeeeee wewewewwweweew wewewetweewwew weweweeweeweww eweweewwweweew eeeeeeeeeeeeee eeeeeeeeeeeeee -eeeeeeeeeeee-