On Sat, 13 Jul 1996, Nick B wrote:
> Now, I am a novice programmer, but I don't see what is wrong with this
> little bit of code in my act.informative.c:
>
> ACMD(do_score)
>
> {
> struct time_info_data playing_time;
> struct time_info_data real_time_passed(time_t t2, time_t t1);
>
>
> sprintf(buf, "%s Info for %s\r\n", buf, GET_NAME(ch));
> sprinttype(GET_RACE(ch), pc_race_types, buf2);
> sprintf(buf, "%sRace: %s", buf, buf2);
> sprinttype(GET_CLASS(ch), pc_class_types, buf2);
> sprintf(buf, "%s Class: %s\r\n", buf, buf2);
> sprintf(buf,"--------------------------------------------------\r\n");
>
> sprintf(buf, "You are %d years old.", GET_AGE(ch));
>
>
> When I execute the score command within the mud, it starts printing info on
> the screen starting at the GET_AGE line. Why won't it print anything above it?
sprintf doesn't actually print the information to the screen. You need to
use send_to_char(buf, ch) after every instance of sprintf.
Why? sprintf changes the text and then puts it in the variable 'buf'.
For more information, see 'man sprintf' or your C documentation.
--
Kenneth G. Cavness | http://www.mids.org/~stargoat
Assistant Editor | http://ccwf.cc.utexas.edu/~cavness
Matrix Information and | ph#: 1-512-451-7602 fax: 452-0127
Directory Services | Austin, TX
This archive was generated by hypermail 2b30 : 12/07/00 PST