/*
* 'cheat' is a tool for generating save game files to test states that ought
* not happen. It leverages chunks of advent, mostly initialize() and
- * savefile(), so we know we're always outputing save files that advent
+ * savefile(), so we know we're always outputting save files that advent
* can import.
+ *
+ * SPDX-FileCopyrightText: (C) 1977, 2005 by Will Crowther and Don Woods
+ * SPDX-License-Identifier: BSD-2-Clause
*/
#include <getopt.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdbool.h>
+#include <editline/readline.h>
#include "advent.h"
int main(int argc, char *argv[])
{
int ch;
char *savefilename = NULL;
- long version = 0;
FILE *fp = NULL;
// Initialize game variables
initialise();
-
- /* we're generating a saved game, so saved once by default,
+
+ /* we're generating a saved game, so saved once by default,
* unless overridden with command-line options below.
*/
game.saved = 1;
while ((ch = getopt(argc, argv, opts)) != EOF) {
switch (ch) {
case 'd':
- game.numdie = (long)atoi(optarg);
- printf("cheat: game.numdie = %ld\n", game.numdie);
+ game.numdie = (turn_t)atoi(optarg);
+ printf("cheat: game.numdie = %d\n", game.numdie);
break;
case 'l':
- game.limit = (long)atoi(optarg);
- printf("cheat: game.limit = %ld\n", game.limit);
+ game.limit = (turn_t)atoi(optarg);
+ printf("cheat: game.limit = %d\n", game.limit);
break;
case 's':
- game.saved = (long)atoi(optarg);
- printf("cheat: game.saved = %ld\n", game.saved);
+ game.saved = (int)atoi(optarg);
+ printf("cheat: game.saved = %d\n", game.saved);
break;
case 't':
- game.turns = (long)atoi(optarg);
- printf("cheat: game.turns = %ld\n", game.turns);
+ game.turns = (turn_t)atoi(optarg);
+ printf("cheat: game.turns = %d\n", game.turns);
break;
case 'v':
- version = (long)atoi(optarg);
- printf("cheat: version = %ld\n", version);
+ save.version = atoi(optarg);
+ printf("cheat: version = %d\n", save.version);
break;
case 'o':
savefilename = optarg;
exit(EXIT_FAILURE);
}
- savefile(fp, version);
+ savefile(fp);
fclose(fp);
return EXIT_SUCCESS;
}
+
+// LCOV_EXCL_START
+/*
+ * Ugh...unused, but required for linkage.
+ * See the actually useful version of this in main.c
+ */
+
+char *myreadline(const char *prompt)
+{
+ return readline(prompt);
+}
+// LCOV_EXCL_STOP
+
+/* end */
+
+