Refactored; added state property to command struct to notate where in the lifecycle...
[open-adventure.git] / advent.h
index 09f5ad99271d427f31f3b347ba5f6e9097799d80..48cb54e16fccf86980025e3313359172236eeb4c 100644 (file)
--- a/advent.h
+++ b/advent.h
@@ -196,11 +196,14 @@ typedef struct {
     word_type_t type;
 } command_word_t;
 
+typedef enum {EMPTY, RAW, TOKENIZED, GIVEN, PREPROCESSED, PROCESSING, EXECUTED} command_state_t;
+
 typedef struct {
     enum speechpart part;
     command_word_t word[2];
     verb_t verb;
-    obj_t   obj;
+    obj_t obj;
+    command_state_t state;
 } command_t;
 
 extern struct game_t game;
@@ -209,7 +212,7 @@ extern struct settings_t settings;
 extern bool get_command_input(command_t *);
 extern void speak(const char*, ...);
 extern void sspeak(int msg, ...);
-extern void pspeak(vocab_t, enum speaktype, int, bool, ...);
+extern void pspeak(vocab_t, enum speaktype, bool, int, ...);
 extern void rspeak(vocab_t, ...);
 extern void echo_input(FILE*, const char*, const char*);
 extern bool silent_yes(void);