/* Bound prefix on the %s would be needed to prevent buffer
* overflow. but we shortstop this more simply by making each
- * raw-input buffer as long as the entire input buffer. */
+ * raw-input buffer as int as the entire input buffer. */
sscanf(raw, "%s%s", cmd->word[0].raw, cmd->word[1].raw);
/* (ESR) In oldstyle mode, simulate the uppercasing and truncating
const char *types[] = {"NO_WORD_TYPE", "MOTION", "OBJECT", "ACTION", "NUMERIC"};
/* needs to stay synced with enum speechpart */
const char *roles[] = {"unknown", "intransitive", "transitive"};
- printf("Command: role = %s type1 = %s, id1 = %ld, type2 = %s, id2 = %ld\n",
+ printf("Command: role = %s type1 = %s, id1 = %d, type2 = %s, id2 = %d\n",
roles[command->part],
types[command->word[0].type],
command->word[0].id,
return true;
}
+void clear_command(command_t *cmd)
+/* Resets the state of the command to empty */
+{
+ cmd->verb = ACT_NULL;
+ cmd->part = unknown;
+ game.oldobj = cmd->obj;
+ cmd->obj = NO_OBJECT;
+ cmd->state = EMPTY;
+}
+
+
void juggle(obj_t object)
/* Juggle an object by picking it up and putting it down again, the purpose
* being to get the object to the front of the chain of things at its loc. */
drop(object, where);
}
-loc_t put(obj_t object, loc_t where, long pval)
+loc_t put(obj_t object, loc_t where, int pval)
/* put() is the same as move(), except it returns a value used to set up the
* negated game.prop values for the repository objects. */
{
* location. Incr holdng unless it was already being toted. If object>NOBJECTS
* (moving "fixed" second loc), don't change game.place or game.holdng. */
{
- long temp;
+ int temp;
if (object <= NOBJECTS) {
if (game.place[object] == CARRIED)
if (game.dflag < 2)
return at;
at = -1;
- for (long i = 1; i <= NDWARVES - 1; i++) {
+ for (int i = 1; i <= NDWARVES - 1; i++) {
if (game.dloc[i] == where)
return i;
if (game.dloc[i] != 0)
/* Utility routines (setbit, tstbit, set_seed, get_next_lcg_value,
* randrange) */
-long setbit(int bit)
+int setbit(int bit)
/* Returns 2**bit for use in constructing bit-masks. */
{
return (1L << bit);
}
-bool tstbit(long mask, int bit)
+bool tstbit(int mask, int bit)
/* Returns true if the specified bit is set in the mask. */
{
return (mask & (1 << bit)) != 0;