2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
|
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
|
+
+
+
-
-
-
-
-
-
|
is repeated until it no longer matches. If the first word is begin,
then it must match at least once; if it is if, then it can match zero
or more times. The match is greedy; it will match as much as possible.
begin
Begin a block.
Bishop
Try four directions (NE, NW, SW, and SE).
Climb
Fail the match if the origin object cannot climb here.
(Climb <number>)
Fail the match if the height here is greater than this number.
cut
Discards the most recent choice point.
else
Delimits alternatives within a block.
Four
Try four directions (E, N, W, and S).
Eight
Try all eight directions.
Height
Fail the match if the origin object can climb here.
(Height <number>)
Fail the match if the height here isn't greater than this number.
if
|
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
|
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
|
+
+
+
+
+
+
|
ObjBottomAt
Match the object at the bottom of this location.
ObjTopAt
Match the object at the top of this location.
Queen
Try all eight directions.
Rook
Try four directions (E, N, W, and S).
then
Ends a block started with begin or if.
Trace
Used for debugging.
|