Oops, sorry just realized the error said do_tell, i'm still asleep. Anyway use one_argument or half chop, or something like that on the variable argument, then locate the character via get_char_vis and make some sort of check. get_char_vis(struct char_data*, char *) I just put the type of argument it takes, but the char_data* argument, usually ch runs the checks of if that person can see you, char * is a string, usually the name of the character, so that is how you locate a player. It returns a char_data pointer, usually vict, and it returns NULL if nothing is found. Therefore int argLength = strlen(argument); char arg1[argLength] = '\0', arg2 [argLength] = '\0'; half_chop(argument, arg1, arg2); if (*arg1 = '\0' || *arg2 = '\0') { send_to_char("Who was that again? And what was that message?\r\n", ch ); return; } if ((vict = get_char_vis(ch, arg1)) == NULL) { send_to_char("Tell who?\r\n", ch ); return; } then after all of your afk checks and stuff you can perform_tell(ch, vict, arg2); because you type "tell cervo hello" argument will hold "cervo hello" half_chopping it will make arg1 hole "cervo" and arg2 hold "hello", even for "tell cervo bleh blah hmm this is boring!" after a half chop arg1 will hold "cervo", and arg2 will hold "bleh blah hmm this is boring!". Those are just a few of the checks that would have to be done. I remember that much being done by stock tell, but if it was ruined or destroyed somehow, this should look something like it. Wow am I tired :P Well hopefully something like it :P Hopefully this will also give you an idea about what you were doing wrong, and how do_tell works, and maybe even some C insight, if not, remember my quote from last message about confusing em :P Cervo the redoC retsaM +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://democracy.queensu.ca/~fletcher/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 12/15/00 PST