X-Git-Url: https://jxself.org/git/?p=open-adventure.git;a=blobdiff_plain;f=misc.c;h=ae5048d9a92825b948f770c4b218f9f83559abc8;hp=f3b0f3dcf33675cf166e45d50689d42064bade2a;hb=08c40bc9993ce5684077b9ceac492e4fb642a722;hpb=2fca59d9fd6a6c2240ce715d010995c614836999 diff --git a/misc.c b/misc.c index f3b0f3d..ae5048d 100644 --- a/misc.c +++ b/misc.c @@ -462,7 +462,7 @@ int get_motion_vocab_id(const char* word) { for (int i = 0; i < NMOTIONS; ++i) { for (int j = 0; j < motions[i].words.n; ++j) { - if (strcasecmp(word, motions[i].words.strs[j]) == 0 && (strlen(word) > 1 || + if (strncasecmp(word, motions[i].words.strs[j], TOKLEN) == 0 && (strlen(word) > 1 || strchr(ignore, word[0]) == NULL || !settings.oldstyle)) return (i); @@ -477,7 +477,7 @@ int get_object_vocab_id(const char* word) { for (int i = 0; i < NOBJECTS + 1; ++i) { // FIXME: the + 1 should go when 1-indexing for objects is removed for (int j = 0; j < objects[i].words.n; ++j) { - if (strcasecmp(word, objects[i].words.strs[j]) == 0) + if (strncasecmp(word, objects[i].words.strs[j], TOKLEN) == 0) return (i); } } @@ -490,7 +490,7 @@ int get_action_vocab_id(const char* word) { for (int i = 0; i < NACTIONS; ++i) { for (int j = 0; j < actions[i].words.n; ++j) { - if (strcasecmp(word, actions[i].words.strs[j]) == 0 && (strlen(word) > 1 || + if (strncasecmp(word, actions[i].words.strs[j], TOKLEN) == 0 && (strlen(word) > 1 || strchr(ignore, word[0]) == NULL || !settings.oldstyle)) return (i); @@ -505,7 +505,7 @@ int get_special_vocab_id(const char* word) { for (int i = 0; i < NSPECIALS; ++i) { for (int j = 0; j < specials[i].words.n; ++j) { - if (strcasecmp(word, specials[i].words.strs[j]) == 0) + if (strncasecmp(word, specials[i].words.strs[j], TOKLEN) == 0) return (i); } }