Patrick Dughi wrote: > > > Hello there > > > > I want to implement a abbreviation system on my mud, can anyone publish > > a source-code here? I''ve already tried to do this by myself, but I've > > can't. > > ftp://ftp.circlemud.org/pub/CircleMUD/contrib/snippets/utils/abbrevs.txt > > PjD Hi Elminster, Hi Patrick. <PERSONAL-OPINION> Ugh!! This code is nasty and unecessary... </PERSONAL-OPINION> Changing only 2 lines in the current bpl17 isname() function is enough to support abbreviations. int isname(const char *str, const char *namelist) { const char *curname, *curstr; curname = namelist; for (;;) { for (curstr = str;; curstr++, curname++) { - if (!*curstr) + if (!*curstr && !isalpha(*curname)) return (1); if (!*curname) return (0); - if (*curname == ' ') + if (!*curstr || *curname == ' ') break; if (LOWER(*curstr) != LOWER(*curname)) break; } /* skip to next name */ for (; isalpha(*curname); curname++); if (!*curname) return (0); curname++; /* first char of new name */ } } Hugs. -- ----=[ Juliano Ravasi Ferraz ]=----=[ jferraz@linkway.com.br ]=---- Rayon Eletrônica e Informática Ltda. - Linkway Descalvado Chaste makes waste. +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 04/11/01 PDT