scottkit 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e80e01217ac415c8a5f61c8f76e79b143bb9634c
4
- data.tar.gz: bd464ca8f5bd0f4db93aae2e85c2405b87d78efe
3
+ metadata.gz: 6dbab5b1732fb1083bc1bde984fc949d4448221d
4
+ data.tar.gz: 2eefd8bcac336e7b36381047aab7bf958cfa341c
5
5
  SHA512:
6
- metadata.gz: 8a2c8559a16971027c380eb6f8ebf0b013bc6e74192bef684cac5fbe6d80cea2a7dbec2e763d8065ff9a2d9b8dcc0dbeedb07aeb98beeb093518253f976500cf
7
- data.tar.gz: df62ce26c9a33c8d22b8db3617b1802f02a0bb60f31410ee717380949cd828ddf3f3403a2c1eb6f685c39c38675b159bbe7920616501454f4998937e9f2fc838
6
+ metadata.gz: d41f64b9025f7825bcfbcc8fdd8e660e0e5a3777a4c855e2041b758efeb67790e430993eba9e9dc8c14da31a6293725c1b6906ac0f90a7843309d9a460a761c9
7
+ data.tar.gz: 5b70bf92bcbe3ec32c32b08efb60ed67fb6dfa9db6373f25a2414e85c0a91ddec52516eb8595a90dc8486aea32908612c60aade279f6772b015c78bb337a032b
data/ChangeLog.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # Revision history for Ruby gem ScottKit
2
2
 
3
+ ## 1.4.0 (Tue Oct 17 00:52:09 BST 2017)
4
+
5
+ * Fix v1.3.0 bug: hasty implementation of lint meant compilation would fail if no lint option was provided. Now works correctly again.
6
+ * Play mode no longer crashes on an empty line of input
7
+ * Add support for opcode 84 `print_noun` (without newline).
8
+ * Remove ScottKit version number from startup message in play mode, as it messes up regression tests. It's in the usage message now.
9
+ * New file, `bin/md5ruby`: needed for regenerating regresssion expectations, since the `md5` program on MacOS produces different results from Ruby's MD5 digest when given non-ASCII input. Use this for regenerating `data/test/adams/*.md5`
10
+ * The reimplementation of _Nosferatu_ is now complete in that it is possible to play the game through to a successful completion. However, it's not ready for release, as many incorrect actions still need to be handled gracefully.
11
+
3
12
  ## 1.3.0 (Mon Oct 16 20:27:43 BST 2017)
4
13
 
5
14
  * Support `--lint` (`-L`) command-line option. Fixes issue 1.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.3.0
1
+ 1.4.0
data/bin/md5ruby ADDED
@@ -0,0 +1,10 @@
1
+ #!/usr/local/bin/ruby -w
2
+
3
+ # It seems we need this because the md5 program on MacOS produces
4
+ # different results from Ruby's MD5 digest when given non-ASCII input.
5
+
6
+ require 'digest/md5'
7
+
8
+ file = File.open(ARGV[0], "rb")
9
+ contents = file.read
10
+ puts Digest::MD5.hexdigest(contents)
data/bin/scottkit CHANGED
@@ -34,7 +34,8 @@ options = {}
34
34
  sleep_at_end = false
35
35
 
36
36
  opts = OptionParser.new do |x|
37
- x.banner = "Usage: #$0 [options] [<data-file>]"
37
+ x.banner = "Usage: #$0 [options] [<data-file>]
38
+ (ScottKit version 1.4.0)"
38
39
  x.on("-c", "--compile", "Compile <data-file> instead of loading") {
39
40
  mode = :compile
40
41
  }
@@ -1,14 +1,14 @@
1
1
  19540
2
2
  55
3
- 67
4
- 44
3
+ 72
4
+ 45
5
5
  33
6
6
  5
7
7
  2
8
8
  1
9
9
  3
10
10
  999
11
- 44
11
+ 49
12
12
  1
13
13
 
14
14
  750 0 0 0 0 0 9900 0
@@ -33,52 +33,57 @@
33
33
  2111 203 302 300 320 0 10812 9600
34
34
  161 322 300 0 0 0 8100 0
35
35
  162 382 260 0 0 0 8100 0
36
- 2400 425 420 0 0 0 7966 0
36
+ 2400 425 420 0 0 0 2488 2603
37
37
  163 422 280 0 0 0 8100 0
38
38
  2714 442 921 920 980 0 8303 10950
39
- 0 440 480 0 0 0 10817 9600
40
- 2565 522 0 0 0 0 2788 2913
41
- 1200 484 680 700 0 0 10820 9600
39
+ 0 440 480 0 0 0 10818 9600
40
+ 2565 522 100 0 0 0 2908 0
41
+ 100 108 1101 0 0 0 3021 3363
42
+ 100 108 1106 0 0 0 3513 0
43
+ 1200 484 680 700 0 0 10824 9600
42
44
  166 702 620 0 0 0 8100 0
43
- 1967 562 500 0 0 0 8100 0
45
+ 1967 562 624 500 560 0 8153 0
46
+ 1967 562 524 500 560 0 8153 0
44
47
  3000 544 580 0 0 0 8100 0
45
48
  3000 584 540 0 0 0 8100 0
46
- 1518 283 942 280 980 920 3222 11100
47
- 3168 921 920 980 280 0 3205 10800
48
- 3319 552 0 0 0 0 3300 0
49
- 3319 40 0 0 0 0 3508 0
49
+ 1518 283 942 280 980 920 3822 11100
50
+ 3168 921 920 980 280 0 3805 10800
51
+ 3319 552 0 0 0 0 3900 0
52
+ 3319 40 0 0 0 0 4108 0
50
53
  3461 48 602 40 540 0 9053 10950
51
- 0 600 620 0 0 0 10824 9600
54
+ 0 600 620 0 0 0 10828 9600
52
55
  161 622 440 0 0 0 8100 0
53
56
  3471 48 1022 40 540 0 9053 10950
54
- 0 1020 1040 0 0 0 10824 9600
55
- 3450 48 40 540 0 0 9053 1825
57
+ 0 1020 1040 0 0 0 10828 9600
58
+ 3450 48 40 540 0 0 9053 1829
56
59
  172 1042 660 0 0 0 8100 0
57
- 3623 1062 0 20 0 0 1826 4112
58
- 3774 40 0 0 0 0 4254 0
59
- 3925 0 0 0 0 0 4350 0
60
- 3926 104 0 0 0 0 4586 13231
61
- 3927 103 0 0 0 0 4800 0
62
- 3928 123 0 0 0 0 4950 0
63
- 3908 143 0 0 0 0 5100 0
64
- 4079 263 0 0 0 0 1835 5473
60
+ 3623 1062 0 20 0 0 1830 4712
61
+ 3774 40 0 0 0 0 4854 0
62
+ 3925 0 0 0 0 0 4950 0
63
+ 3926 104 0 0 0 0 5186 13235
64
+ 3927 103 0 0 0 0 5400 0
65
+ 3928 123 0 0 0 0 5550 0
66
+ 3908 143 0 0 0 0 5700 0
67
+ 4079 263 0 0 0 0 1839 6073
65
68
  0 260 280 80 0 0 10858 0
66
- 2130 22 88 40 80 0 5603 8014
67
- 2130 22 0 0 0 0 5700 0
68
- 1531 42 40 60 0 0 5905 7950
69
- 1532 62 0 0 0 0 6000 0
69
+ 2130 22 88 40 80 0 6203 8014
70
+ 2130 22 0 0 0 0 6300 0
71
+ 1531 42 40 60 0 0 6505 7950
72
+ 1532 62 0 0 0 0 6600 0
70
73
  4233 541 802 800 820 0 10873 0
71
- 0 840 860 0 0 0 10821 0
74
+ 0 840 860 0 0 0 10825 0
72
75
  183 822 600 0 0 0 8100 0
73
76
  184 462 220 0 0 0 8100 0
74
77
  185 1002 640 0 0 0 8100 0
75
- 4386 483 480 180 0 0 10821 9600
76
- 4500 0 0 0 0 0 6150 0
77
- 4650 0 0 0 0 0 6385 0
78
- 2400 0 0 0 0 0 3750 0
79
- 3000 0 0 0 0 0 6450 0
80
- 1200 0 0 0 0 0 6600 0
81
- 4800 0 0 0 0 0 9600 0
78
+ 4386 483 480 180 0 0 10825 9600
79
+ 4537 1062 0 0 0 0 1885 12973
80
+ 0 0 0 0 0 0 6814 0
81
+ 4650 0 0 0 0 0 6900 0
82
+ 4800 0 0 0 0 0 7135 0
83
+ 2400 0 0 0 0 0 4350 0
84
+ 3000 0 0 0 0 0 7200 0
85
+ 1200 0 0 0 0 0 7350 0
86
+ 4950 0 0 0 0 0 9600 0
82
87
 
83
88
  "AUT" "ANY"
84
89
  "WAL" "NOR"
@@ -110,13 +115,14 @@
110
115
  "DRI" "ATL"
111
116
  "CHO" "MAG"
112
117
  "LIG" "WHI"
113
- "HEL" "SAR"
114
- "EXA" "BOD"
115
- "LOO" "DUS"
116
- "*L" "THI"
117
- "" "HOL"
118
+ "SAY" "SAR"
119
+ "HEL" "BOD"
120
+ "EXA" "DUS"
121
+ "LOO" "THI"
122
+ "*L" "HOL"
118
123
  "" "TUN"
119
124
  "" "LAM"
125
+ "" "OVY"
120
126
  "" "CRO"
121
127
  "" "KEY"
122
128
  "" "KIP"
@@ -168,7 +174,7 @@
168
174
  " Translation to ScottKit starting Saturday 14 October 2017"
169
175
  "This is a demo for the `ScottKit` adventure system --"
170
176
  "See https://github.com/MikeTaylor/scottkit/"
171
- "Your task is to kill the evil count Nosferatu and get back home."
177
+ "Your task: kill the evil count Nosferatu and return home with his bloodstone."
172
178
  "I'll need a spade."
173
179
  "Nosferatu rises from his altar, and bites my neck!"
174
180
  "Huh? What rope?"
@@ -178,10 +184,14 @@
178
184
  "Huh?"
179
185
  "I'm too heavy:
180
186
  I fall!"
181
- "The bus arrives."
187
+ "Time passes..."
188
+ "A bus arrives!"
182
189
  "The witch drinks the water, rejuvenates, drops something, and disappears!"
183
- "He takes them and rings a bell. The bus starts."
184
- "You arrive home."
190
+ "He takes them, the bus starts, and I'm home"
191
+ "with Nosferatu's Bloodstone."
192
+ "* Congratulations *"
193
+ "You win!"
194
+ "without Nosferatu's Bloodstone."
185
195
  "I break through to an underground chamber!"
186
196
  "OK"
187
197
  "Huh? What axe?"
@@ -209,6 +219,7 @@ Bored with this game already, huh?"
209
219
  "The lid's too heavy!"
210
220
  "It turns to dust!"
211
221
  "It slips through my fingers"
222
+ "Nosferatu vanishes in a cloud of smoke!"
212
223
  "You'll have to figure it out for yourself."
213
224
  "It looks like a pretty average"
214
225
  "Wheee!"
@@ -322,6 +333,9 @@ Bored with this game already, huh?"
322
333
  ""
323
334
  ""
324
335
  ""
336
+ ""
337
+ ""
338
+ ""
325
339
  "cont"
326
340
  ""
327
341
  ""
@@ -334,6 +348,8 @@ Bored with this game already, huh?"
334
348
  ""
335
349
  "We only really want to look if it was previously dark. Can do this with flags."
336
350
  ""
351
+ "cont"
352
+ ""
337
353
  ""
338
354
  ""
339
355
  ""
@@ -6,6 +6,7 @@
6
6
  # 2: THROW AXE has been issued: awaiting AT THING
7
7
  # 3: TIE ROPE has been issued: awaiting TO THING
8
8
  # 4: Whisky has been drunk
9
+ # 5: On the bus-journey home
9
10
 
10
11
  ident 18401
11
12
  version 1
@@ -229,7 +230,7 @@ occur when !flag 1
229
230
  print "This is a demo for the `ScottKit` adventure system --"
230
231
  print "See https://github.com/MikeTaylor/scottkit/"
231
232
  println
232
- print "Your task is to kill the evil count Nosferatu and get back home."
233
+ print "Your task: kill the evil count Nosferatu and return home with his bloodstone."
233
234
 
234
235
  action DIG when !present spade
235
236
  print "I'll need a spade."
@@ -292,8 +293,10 @@ action GO GRAVE when here grave
292
293
  goto cave
293
294
 
294
295
  action WAIT when !here bus
296
+ print "Time passes..."
297
+ pause
298
+ print "A bus arrives!"
295
299
  drop bus
296
- print "The bus arrives."
297
300
 
298
301
  action GO BUS when here bus
299
302
  goto bus
@@ -307,9 +310,17 @@ action DROP BOTTLE when here witch and carried water
307
310
  look
308
311
 
309
312
  action GIVE COINS when here conductor
310
- print "He takes them and rings a bell. The bus starts."
311
- pause
312
- print "You arrive home."
313
+ print "He takes them, the bus starts, and I'm home"
314
+ set_flag 5
315
+
316
+ occur when flag 5 and carried bloodstone
317
+ print "with Nosferatu's Bloodstone."
318
+ print "* Congratulations *"
319
+ print "You win!"
320
+ game_over
321
+
322
+ occur when flag 5 and !carried bloodstone
323
+ print "without Nosferatu's Bloodstone."
313
324
  game_over
314
325
 
315
326
  action DIG when at field
@@ -320,8 +331,13 @@ action DIG when at field
320
331
  action GO PIT when here pit
321
332
  goto bottom
322
333
 
323
- action CLIMB LADDER when here ladder
334
+ action CLIMB LADDER when here ladder and at bottom
335
+ goto forest
336
+ drop ladder
337
+
338
+ action CLIMB LADDER when here ladder and at inpit
324
339
  goto forest
340
+ drop ladder
325
341
 
326
342
  action JUMP when at bythicket
327
343
  goto chasm
@@ -448,6 +464,13 @@ action LIGHT LAMP when present lamp
448
464
  look
449
465
  comment "We only really want to look if it was previously dark. Can do this with flags."
450
466
 
467
+ action SAY OVYEZ when here count
468
+ print "OK."
469
+ println_noun
470
+ println
471
+ print "Nosferatu vanishes in a cloud of smoke!"
472
+ look
473
+
451
474
  action HELP:
452
475
  print "You'll have to figure it out for yourself."
453
476
 
@@ -1,6 +1,6 @@
1
1
  ScottKit, a Scott Adams game toolkit in Ruby.
2
- Release 1.2, (C) 2010-2017 Mike Taylor <mike@miketaylor.org.uk>
3
- Distributed under the GNU software license
2
+ (C) 2010-2017 Mike Taylor <mike@miketaylor.org.uk>
3
+ Distributed under the GNU GPL version 2 license,
4
4
 
5
5
  I'm in a tall, satin-lined wooden box.
6
6
  Obvious exits: East.
@@ -449,4 +449,105 @@ Obvious exits: South.
449
449
  I can also see: sharp Axe, safety Match, entrance to cave
450
450
 
451
451
  Tell me what to do ? go entrance (Just "n" in the original, where a new exit opens)
452
- Tell me what to do ?
452
+ Tell me what to do ? say ovyez
453
+ OK.
454
+ ovyez
455
+
456
+ Nosferatu vanishes in a cloud of smoke!
457
+
458
+ I'm in a cavern where the count sleeps.
459
+ Obvious exits: South.
460
+ I can also see: the count Nosferatu, stone Altar, giant *BLOODSTONE*
461
+
462
+ Tell me what to do ? get bloodstone
463
+ O.K.
464
+ Tell me what to do ? s
465
+
466
+ I'm in a subterranean cavern.
467
+ Obvious exits: South.
468
+ I can also see: sharp Axe, safety Match, entrance to cave
469
+
470
+ Tell me what to do ? s
471
+
472
+ I'm at the bottom of a deep hole.
473
+ I can also see: tall Ladder, secret Tunnel
474
+
475
+
476
+ I'm at the bottom of a deep hole.
477
+ I can also see: tall Ladder, secret Tunnel
478
+
479
+ Tell me what to do ? climb ladder
480
+ Tell me what to do ? get ladder
481
+ O.K.
482
+ Tell me what to do ? w
483
+
484
+ I'm at the bottom of a disused cesspit.
485
+ I can also see: golden Coins
486
+
487
+ Tell me what to do ? drop ladder
488
+ O.K.
489
+ Tell me what to do ? drop lamp
490
+ O.K.
491
+ Tell me what to do ? get coins
492
+ O.K.
493
+ Tell me what to do ? climb ladder
494
+ Tell me what to do ? n
495
+
496
+ I'm in a sunny field.
497
+ Obvious exits: North, South, East, West.
498
+ I can also see: garden Spade, Pit in the ground
499
+
500
+ Tell me what to do ? e
501
+
502
+ I'm on a track. To my North is a bridge over a pond.
503
+ Obvious exits: North, East, West.
504
+
505
+ Tell me what to do ? e
506
+
507
+ I'm in a damp swamp.
508
+ Obvious exits: North, West.
509
+
510
+ Tell me what to do ? n
511
+
512
+ I'm by a fishpond ...
513
+ Obvious exits: South, East.
514
+ I can also see: maneating Shark!
515
+
516
+ Tell me what to do ? e
517
+
518
+ I'm in a rather dark yard.
519
+ Obvious exits: North, East, West.
520
+
521
+ Tell me what to do ? e
522
+
523
+ I'm in the washroom.
524
+ Obvious exits: South, East.
525
+ I can also see: brass Key, wide open Door
526
+
527
+ Tell me what to do ? e
528
+
529
+ I'm in the mortuary.
530
+ Obvious exits: North, West.
531
+ I can also see: 7-pound Mallet
532
+
533
+ Tell me what to do ? n
534
+
535
+ I'm in a desolate windswept graveyard.
536
+ Obvious exits: North, South.
537
+ I can also see: newely dug open Grave, tombstone engraved: BEWARE THE WITCH
538
+
539
+ Tell me what to do ? n
540
+
541
+ I'm by a bus-stop.
542
+ Obvious exits: South.
543
+
544
+ Tell me what to do ? wait
545
+ Time passes...
546
+ A bus arrives!
547
+ Tell me what to do ? go bus
548
+ Tell me what to do ? give coins
549
+ He takes them, the bus starts, and I'm home
550
+ with Nosferatu's Bloodstone.
551
+ * Congratulations *
552
+ You win!
553
+ The game is now over.
@@ -102,3 +102,26 @@ drop match
102
102
  throw axe
103
103
  at stalactite
104
104
  go entrance (Just "n" in the original, where a new exit opens)
105
+ say ovyez
106
+ get bloodstone
107
+ s
108
+ s
109
+ climb ladder
110
+ get ladder
111
+ w
112
+ drop ladder
113
+ drop lamp
114
+ get coins
115
+ climb ladder
116
+ n
117
+ e
118
+ e
119
+ n
120
+ e
121
+ e
122
+ e
123
+ n
124
+ n
125
+ wait
126
+ go bus
127
+ give coins
data/data/test/Makefile CHANGED
@@ -6,13 +6,8 @@ RUN = ruby -I ../../lib ../../bin/scottkit
6
6
  **default**:
7
7
  @echo "Use 'make rebuild' if you are SURE that the software is correct"
8
8
 
9
- rebuild: rebuild-decompile rebuild-play
10
-
11
- rebuild-decompile:
12
- $(RUN) -d ../adams/adv01.dat > adv01.decompile
13
-
14
- rebuild-play:
15
- ### Rebuild crystal, etc.
16
-
17
- .PHONY: rebuild rebuild-decompile rebuild-play
9
+ rebuild:
10
+ $(RUN) -e -s 12368 -W -f crystal.solution crystal.sao > crystal.transcript
11
+ $(RUN) -e -s 12368 -W -f t7.solution t7.sao > t7.transcript
18
12
 
13
+ .PHONY: rebuild
@@ -9,5 +9,5 @@ RUN = ruby -I ../../../lib ../../../bin/scottkit
9
9
  rebuild:
10
10
  for i in 01 02 04; do \
11
11
  $(RUN) -e -s 12368 -W ../../adams/adv$$i.dat < adv$$i.solution > adv$$i.transcript; \
12
- md5sum adv$$i.transcript | sed 's/ .*//' > adv$$i.transcript.md5; \
12
+ ruby ../../../bin/md5ruby adv$$i.transcript > adv$$i.transcript.md5; \
13
13
  done
@@ -1,6 +1,6 @@
1
1
  ScottKit, a Scott Adams game toolkit in Ruby.
2
- Release 1.2, (C) 2010-2017 Mike Taylor <mike@miketaylor.org.uk>
3
- Distributed under the GNU software license
2
+ (C) 2010-2017 Mike Taylor <mike@miketaylor.org.uk>
3
+ Distributed under the GNU GPL version 2 license,
4
4
  Setting random seed 12368
5
5
 
6
6
  I'm in a forest
@@ -1 +1 @@
1
- 576e575853afb08544be86a894c2eeb3
1
+ 5da0e1d1edd6e3528e3fdec3d2ac5fb5
@@ -1,6 +1,6 @@
1
1
  ScottKit, a Scott Adams game toolkit in Ruby.
2
- Release 1.2, (C) 2010-2017 Mike Taylor <mike@miketaylor.org.uk>
3
- Distributed under the GNU software license
2
+ (C) 2010-2017 Mike Taylor <mike@miketaylor.org.uk>
3
+ Distributed under the GNU GPL version 2 license,
4
4
  Setting random seed 12368
5
5
 
6
6
  I'm in a Flat in london
@@ -1 +1 @@
1
- 3bb5e7f4c0f04269c257611284916a09
1
+ d2518916f6fee28cf82a5f17f0cde49e
@@ -1,6 +1,6 @@
1
1
  ScottKit, a Scott Adams game toolkit in Ruby.
2
- Release 1.2, (C) 2010-2017 Mike Taylor <mike@miketaylor.org.uk>
3
- Distributed under the GNU software license
2
+ (C) 2010-2017 Mike Taylor <mike@miketaylor.org.uk>
3
+ Distributed under the GNU GPL version 2 license,
4
4
  Setting random seed 12368
5
5
 
6
6
  I'm in a chapel
@@ -1 +1 @@
1
- 82ecf3d6b958ae54bb947ccbf40c55e4
1
+ 981b24607d46cdaea4b696d43439319f
@@ -1,6 +1,6 @@
1
1
  ScottKit, a Scott Adams game toolkit in Ruby.
2
- Release 1.2, (C) 2010-2017 Mike Taylor <mike@miketaylor.org.uk>
3
- Distributed under the GNU software license
2
+ (C) 2010-2017 Mike Taylor <mike@miketaylor.org.uk>
3
+ Distributed under the GNU GPL version 2 license,
4
4
  Setting random seed 12368
5
5
 
6
6
  I'm in a small wooden hut.
@@ -1,6 +1,6 @@
1
1
  ScottKit, a Scott Adams game toolkit in Ruby.
2
- Release 1.2, (C) 2010-2017 Mike Taylor <mike@miketaylor.org.uk>
3
- Distributed under the GNU software license
2
+ (C) 2010-2017 Mike Taylor <mike@miketaylor.org.uk>
3
+ Distributed under the GNU GPL version 2 license,
4
4
  Setting random seed 12368
5
5
 
6
6
  I'm in a cave mouth
@@ -209,7 +209,7 @@ module ScottKit
209
209
 
210
210
 
211
211
  def generate_code(tree)
212
- lintOptions = @game.options[:lint]
212
+ lintOptions = @game.options[:lint] || ''
213
213
  @had_errors = false
214
214
  rooms = tree.rooms
215
215
  items = tree.items
data/lib/scottkit/play.rb CHANGED
@@ -15,8 +15,8 @@ module ScottKit
15
15
  @lampleft = defined?(@lamptime) ? @lamptime : 0
16
16
 
17
17
  puts "ScottKit, a Scott Adams game toolkit in Ruby."
18
- puts "Release 1.2, (C) 2010-2017 Mike Taylor <mike@miketaylor.org.uk>"
19
- puts "Distributed under the GNU software license"
18
+ puts "(C) 2010-2017 Mike Taylor <mike@miketaylor.org.uk>"
19
+ puts "Distributed under the GNU GPL version 2 license,"
20
20
 
21
21
  if file = options[:restore_file]
22
22
  restore(file)
@@ -44,6 +44,10 @@ module ScottKit
44
44
  break
45
45
  end
46
46
  words = line.chomp.split
47
+ if words.length == 0
48
+ puts "I don't understand your command."
49
+ next
50
+ end
47
51
  execute_command(words[0], words[1])
48
52
  if items.size > ITEM_LAMP &&
49
53
  items[ITEM_LAMP].loc != ROOM_NOWHERE && @lampleft > 0
@@ -429,7 +433,7 @@ module ScottKit
429
433
  @game.counters[which], @game.counter
430
434
  when 82 then @game.counter += args.shift
431
435
  when 83 then @game.counter -= args.shift
432
- #84 print_noun unused in Adventureland/Pirate
436
+ when 84 then print @game.noun
433
437
  when 85 then puts @game.noun
434
438
  when 86 then puts
435
439
  when 87 then which = args.shift
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: scottkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Taylor
@@ -14,6 +14,7 @@ description: ScottKit is a toolkit for compiling, decompiling and playing advent
14
14
  games in the Scott Adams format.
15
15
  email: mike@miketaylor.org.uk
16
16
  executables:
17
+ - md5ruby
17
18
  - scottkit
18
19
  extensions: []
19
20
  extra_rdoc_files:
@@ -26,6 +27,7 @@ files:
26
27
  - README.md
27
28
  - Rakefile
28
29
  - VERSION
30
+ - bin/md5ruby
29
31
  - bin/scottkit
30
32
  - data/.gitignore
31
33
  - data/adams/.gitignore