Abolish setup check, there's no possibility of restart.
authorEric S. Raymond <esr@thyrsus.com>
Tue, 13 Jun 2017 14:20:15 +0000 (10:20 -0400)
committerEric S. Raymond <esr@thyrsus.com>
Tue, 13 Jun 2017 14:20:15 +0000 (10:20 -0400)
Note, this silently breaks old saves.

advent.h
adventure.text
init.c
main.c

index 9c07cf390c18a62d7b58b589f6bf6407db725a6a..ae9ecbae3fecfd641ca8453a18084c1b1690c5e6 100644 (file)
--- a/advent.h
+++ b/advent.h
@@ -52,7 +52,6 @@ struct game_t {
     long oldobj;
     long panic;
     long saved;
-    long setup;
     long tally;
     long thresh;
     long trndex;
index 35468f989f0753674341ed3091964c97b55100eb..290a0d0a262407ac9352543074b81159b8635a0d 100644 (file)
 199    You prod the nearest dwarf, who wakes up grumpily, takes one look at
 199    you, curses, and grabs for his axe.
 200    Is this acceptable?
-201    This adventure is already over.  To start a new adventure, or to
-201    resume an earlier adventure, please run a fresh copy of the program.
+# 201 used to be an error on restart attempt.
 202    The ogre doesn't appear to be hungry.
 203    The ogre, who despite his bulk is quite agile, easily dodges your
 203    attack.  He seems almost amused by your puny effort.
diff --git a/init.c b/init.c
index cabe574a588b4557ffd329ad16cab91e6369dea8..1752553b0f93c747be489779a09680aab892b904 100644 (file)
--- a/init.c
+++ b/init.c
@@ -383,6 +383,5 @@ void initialise(void)
     game.closed=false;
     game.clshnt=false;
     game.novice=false;
-    game.setup=1;
     game.blklin=true;
 }
diff --git a/main.c b/main.c
index 374df37c49c38d57dd8e9a7e4a61ce0e6f51cdba..10fce6503f348e9673b9e70add4fa4eaf3d1e61c 100644 (file)
--- a/main.c
+++ b/main.c
@@ -122,20 +122,9 @@ int main(int argc, char *argv[])
     set_seed(seedval);
 
     /*  Initialize game variables */
-    if (!game.setup)
-       initialise();
-
-    /*  Unlike earlier versions, adventure is no longer restartable.  (This
-     *  lets us get away with modifying things such as OBJSND(BIRD) without
-     *  having to be able to undo the changes later.)  If a "used" copy is
-     *  rerun, we come here and tell the player to run a fresh copy. */
-    if (game.setup <= 0) {
-       RSPEAK(201);
-       exit(0);
-    }
+    initialise();
 
     /*  Start-up, dwarf stuff */
-    game.setup= -1;
     game.zzword=RNDVOC(3,0);
     game.novice=YES(stdin, 65,1,0);
     game.newloc=1;
@@ -146,7 +135,7 @@ int main(int argc, char *argv[])
     if (logfp)
        fprintf(logfp, "seed %ld\n", seedval);
 
-    /* interpret commands ubtil EOF or interrupt */
+    /* interpret commands until EOF or interrupt */
     for (;;) {
        if (!do_command(stdin))
            break;