Last active
April 30, 2021 22:53
-
-
Save pancelor/1b0d05f20633871396b39588be24c168 to your computer and use it in GitHub Desktop.
firefighting (PuzzleScript Script)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Play this game by pasting the script in http://www.puzzlescript.net/editor.html |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
title firefighting | |
author pancelor | |
homepage https://pancelor.com/ | |
(Made to investigate problem 4 of https://cms.math.ca/Competitions/APMO/exam/apmo2005.pdf) | |
(verbose_logging) | |
======== | |
OBJECTS | |
======== | |
Background . | |
Green | |
House | |
Black Darkred Brown White | |
..... | |
..1.. | |
.121. | |
12221 | |
.232. | |
Fire | |
Red Orange Yellow | |
.2... | |
221.. | |
011.. | |
.00.. | |
..... | |
Shield | |
LightBlue | |
..... | |
..0.. | |
.0.0. | |
0...0 | |
..... | |
Player | |
LightBlue | |
00.00 | |
0...0 | |
..... | |
0...0 | |
00.00 | |
FireStarter | |
Red | |
00.00 | |
0...0 | |
..0.. | |
0...0 | |
00.00 | |
N0 0 | |
White | |
..00. | |
.0..0 | |
.0..0 | |
.0..0 | |
..00. | |
N1 1 | |
White | |
...0. | |
..00. | |
...0. | |
...0. | |
...0. | |
N2 2 | |
White | |
..00. | |
.0..0 | |
...0. | |
..0.. | |
.0000 | |
N3 3 | |
White | |
..00. | |
.0..0 | |
...0. | |
.0..0 | |
..00. | |
N4 4 | |
White | |
.0..0 | |
.0..0 | |
.0000 | |
....0 | |
....0 | |
N5 5 | |
White | |
.0000 | |
.0... | |
.000. | |
....0 | |
.000. | |
N6 6 | |
White | |
..00. | |
.0... | |
.000. | |
.0..0 | |
..00. | |
N7 7 | |
White | |
.0000 | |
....0 | |
...0. | |
..0.. | |
..0.. | |
N8 8 | |
White | |
..00. | |
.0..0 | |
..00. | |
.0..0 | |
..00. | |
N9 9 | |
White | |
..00. | |
.0..0 | |
..000 | |
....0 | |
..00. | |
Minus | |
transparent | |
Carry | |
transparent | |
Prefire | |
transparent | |
MaybeWin | |
transparent | |
NoWin | |
transparent | |
======= | |
LEGEND | |
======= | |
Number = N0 or N1 or N2 or N3 or N4 or N5 or N6 or N7 or N8 or N9 | |
H = House | |
F = House and Fire | |
P = House and Player and FireStarter | |
======= | |
SOUNDS | |
======= | |
(Crate MOVE 36772507) | |
================ | |
COLLISIONLAYERS | |
================ | |
Background | |
House | |
Shield Fire Prefire | |
Player | |
FireStarter | |
MaybeWin NoWin | |
Minus Carry | |
N0 N1 N2 N3 N4 N5 N6 N7 N8 N9 | |
====== | |
RULES | |
====== | |
[> Player | No House] -> [Player | ] | |
[> Player FireStarter | ] -> [ | Player FireStarter] | |
[Action Player FireStarter House] -> [Player House Prefire] | |
([Action Player][MaybeWin] -> [][] (if the maybewin from last turn is still around, win)) | |
[Action Player No House] -> cancel | |
[Action Player Fire] -> cancel | |
[Action Player Shield] -> cancel | |
[Action Player][No MaybeWin] -> [Action Player MaybeWin][] | |
[Action Player House No Shield] -> [Action Player House Shield] | |
[Action Player] [Fire | House No Fire No Shield] -> [Action Player] [Fire | House Prefire] | |
late [FireStarter] [MaybeWin] -> [FireStarter] [NoWin] (game isn't over if it hasn't started yet) | |
late [Prefire] [MaybeWin] -> [Prefire] [NoWin] (game isn't over if fire is still spreading) | |
late [Prefire] -> [Fire Minus] | |
late [NoWin] -> [] | |
late [Player][MaybeWin] -> [][] (if the maybewin is still here, kill the player (but leave the level visible for inspection)) | |
startloop | |
late right [Minus] [N9 | No Number] -> [] [N8 | ] | |
late right [Minus] [N8 | No Number] -> [] [N7 | ] | |
late right [Minus] [N7 | No Number] -> [] [N6 | ] | |
late right [Minus] [N6 | No Number] -> [] [N5 | ] | |
late right [Minus] [N5 | No Number] -> [] [N4 | ] | |
late right [Minus] [N4 | No Number] -> [] [N3 | ] | |
late right [Minus] [N3 | No Number] -> [] [N2 | ] | |
late right [Minus] [N2 | No Number] -> [] [N1 | ] | |
late right [Minus] [N1 | No Number] -> [] [N0 | ] | |
late right [Minus] [N0 | No Number] -> [Carry] [N9 | ] | |
late right [Carry] [N9 | Number] -> [] [N8 | Number] | |
late right [Carry] [N8 | Number] -> [] [N7 | Number] | |
late right [Carry] [N7 | Number] -> [] [N6 | Number] | |
late right [Carry] [N6 | Number] -> [] [N5 | Number] | |
late right [Carry] [N5 | Number] -> [] [N4 | Number] | |
late right [Carry] [N4 | Number] -> [] [N3 | Number] | |
late right [Carry] [N3 | Number] -> [] [N2 | Number] | |
late right [Carry] [N2 | Number] -> [] [N1 | Number] | |
late right [Carry] [N1 | Number] -> [] [N0 | Number] | |
late right [Carry] [N0 | Number] -> [] [N0 | N0] | |
endloop | |
============== | |
WINCONDITIONS | |
============== | |
======= | |
LEVELS | |
======= | |
64...... | |
HHHHHHHH | |
HPHHHHHH | |
HHHHHHHH | |
HHHHHHHH | |
HHHHHHHH | |
HHHHHHHH | |
HHHHHHHH | |
HHHHHHHH |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment