projects
/
open-adventure.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add -d option
[open-adventure.git]
/
main.c
diff --git
a/main.c
b/main.c
index 94f2b45b9fe30d5c2251e9d9b431cee7af9c028e..ab23ad99ed223646471fb1dcc021d4ac9f8a5da5 100644
(file)
--- a/
main.c
+++ b/
main.c
@@
-55,8
+55,13
@@
char *myreadline(const char *prompt)
* logfiles for testing purposes.
*/
/* Normal case - no script arguments */
* logfiles for testing purposes.
*/
/* Normal case - no script arguments */
- if (settings.argc == 0)
- return readline(prompt);
+ if (settings.argc == 0) {
+ char *ln = readline(prompt);
+ if (ln == NULL) {
+ fputs(prompt, stdout);
+ }
+ return ln;
+ }
char *buf = malloc(LINESIZE + 1);
for (;;) {
char *buf = malloc(LINESIZE + 1);
for (;;) {
@@
-82,9
+87,9
@@
char *myreadline(const char *prompt)
} else {
char *ln = fgets(buf, LINESIZE, settings.scriptfp);
if (ln != NULL) {
} else {
char *ln = fgets(buf, LINESIZE, settings.scriptfp);
if (ln != NULL) {
-
fputs(PROMPT
, stdout);
+
fputs(prompt
, stdout);
fputs(ln, stdout);
fputs(ln, stdout);
-
return ln;
+ return ln;
}
}
}
}
}
}
@@
-1074,7
+1079,7
@@
static bool do_move(void)
return true;
}
return true;
}
-static bool do_command()
+static bool do_command(
void
)
/* Get and execute a command */
{
static command_t command;
/* Get and execute a command */
{
static command_t command;
@@
-1125,6
+1130,12
@@
static bool do_command()
if (!get_command_input(&command))
return false;
if (!get_command_input(&command))
return false;
+ /* Every input, check "foobar" flag. If zero, nothing's going
+ * on. If pos, make neg. If neg, he skipped a word, so make it
+ * zero.
+ */
+ game.foobar = (game.foobar > WORD_EMPTY) ? -game.foobar : WORD_EMPTY;
+
++game.turns;
preprocess_command(&command);
}
++game.turns;
preprocess_command(&command);
}
@@
-1250,20
+1261,23
@@
int main(int argc, char *argv[])
/* Options. */
#if defined ADVENT_AUTOSAVE
/* Options. */
#if defined ADVENT_AUTOSAVE
- const char* opts = "l:oa:";
+ const char* opts = "
d
l:oa:";
const char* usage = "Usage: %s [-l logfilename] [-o] [-a filename] [script...]\n";
FILE *rfp = NULL;
const char* autosave_filename = NULL;
#elif !defined ADVENT_NOSAVE
const char* usage = "Usage: %s [-l logfilename] [-o] [-a filename] [script...]\n";
FILE *rfp = NULL;
const char* autosave_filename = NULL;
#elif !defined ADVENT_NOSAVE
- const char* opts = "l:or:";
+ const char* opts = "
d
l:or:";
const char* usage = "Usage: %s [-l logfilename] [-o] [-r restorefilename] [script...]\n";
FILE *rfp = NULL;
#else
const char* usage = "Usage: %s [-l logfilename] [-o] [-r restorefilename] [script...]\n";
FILE *rfp = NULL;
#else
- const char* opts = "l:o";
+ const char* opts = "
d
l:o";
const char* usage = "Usage: %s [-l logfilename] [-o] [script...]\n";
#endif
while ((ch = getopt(argc, argv, opts)) != EOF) {
switch (ch) {
const char* usage = "Usage: %s [-l logfilename] [-o] [script...]\n";
#endif
while ((ch = getopt(argc, argv, opts)) != EOF) {
switch (ch) {
+ case 'd':
+ settings.debug +=1;
+ break;
case 'l':
settings.logfp = fopen(optarg, "w");
if (settings.logfp == NULL)
case 'l':
settings.logfp = fopen(optarg, "w");
if (settings.logfp == NULL)