int Crash_report_unrentables(struct char_data * ch, struct char_data * recep, struct obj_data * obj) { char buf[128]; int has_norents = 0; if (obj) { if (Crash_is_unrentable(obj)) { has_norents = 1; sprintf(buf, "%s You cannot store %s.", GET_NAME(ch), OBJS(obj, ch)); do_tell(recep, buf, 0, 0); } has_norents += Crash_report_unrentables(ch, recep, obj->contains); has_norents += Crash_report_unrentables(ch, recep, obj->next_content); } return (has_norents); }
int Crash_report_unrentables(struct char_data *ch, struct char_data *recep, struct obj_data *obj) { char buf[128]; int has_norents = 0; if (obj) { if (Crash_is_unrentable(obj)) { has_norents = 1; sprintf(buf, "$n tells you, 'You cannot store %s.'", OBJS(obj, ch)); act(buf, FALSE, recep, 0, ch, TO_VICT); } has_norents += Crash_report_unrentables(ch, recep, obj->contains); has_norents += Crash_report_unrentables(ch, recep, obj->next_content); } return (has_norents); }
void Crash_report_rent(struct char_data * ch, struct char_data * recep, struct obj_data * obj, long *cost, long *nitems, int display, int factor) { static char buf[256]; if (obj) { if (!Crash_is_unrentable(obj)) { (*nitems)++; *cost += MAX(0, (int)(GET_OBJ_RENT(obj) * factor)); if (display) { sprintf(buf, "%s %5d coins for %s..", GET_NAME(ch), (GET_OBJ_RENT(obj) * factor), OBJS(obj, ch)); do_tell(recep, buf, 0, 0); } } Crash_report_rent(ch, recep, obj->contains, cost, nitems, display, factor); Crash_report_rent(ch, recep, obj->next_content, cost, nitems, display, factor); } }
void Crash_report_rent(struct char_data *ch, struct char_data *recep, struct obj_data *obj, long *cost, long *nitems, int display, int factor) { static char buf[256]; if (obj) { if (!Crash_is_unrentable(obj)) { (*nitems)++; *cost += MAX(0, (GET_OBJ_RENT(obj) * factor)); if (display) { sprintf(buf, "$n tells you, '%5d coins for %s..'", (GET_OBJ_RENT(obj) * factor), OBJS(obj, ch)); act(buf, FALSE, recep, 0, ch, TO_VICT); } } Crash_report_rent(ch, recep, obj->contains, cost, nitems, display, factor); Crash_report_rent(ch, recep, obj->next_content, cost, nitems, display, factor); } }
void sub_write_to_char(char_data *ch, char *tokens[], void *otokens[], char type[]) { char sb[MAX_STRING_LENGTH]; int i; strcpy(sb,""); for (i = 0; tokens[i + 1]; i++) { strcat(sb,tokens[i]); switch (type[i]) { case '~': if (!otokens[i]) strcat(sb,"someone"); else if ((char_data *)otokens[i] == ch) strcat(sb,"you"); else { GET_PERS((char_data*) otokens[i], ch, chname); strcat(sb, chname); FREE_NAME(chname); } break; case '@': if (!otokens[i]) strcat(sb,"someone's"); else if ((char_data *)otokens[i] == ch) strcat(sb,"your"); else { GET_PERS((char_data*) otokens[i], ch, chname); strcat(sb, chname); FREE_NAME(chname); strcat(sb,"'s"); } break; case '^': if (!otokens[i] || !CAN_SEE(ch, (char_data *) otokens[i])) strcat(sb,"its"); else if (otokens[i] == ch) strcat(sb,"your"); else strcat(sb,HSHR((char_data *) otokens[i])); break; case '&': if (!otokens[i] || !CAN_SEE(ch, (char_data *) otokens[i])) strcat(sb,"it"); else if (otokens[i] == ch) strcat(sb,"you"); else strcat(sb,HSSH((char_data *) otokens[i])); break; case '*': if (!otokens[i] || !CAN_SEE(ch, (char_data *) otokens[i])) strcat(sb,"it"); else if (otokens[i] == ch) strcat(sb,"you"); else strcat(sb,HMHR((char_data *) otokens[i])); break; case '`': if (!otokens[i]) strcat(sb,"something"); else strcat(sb,OBJS(((obj_data *) otokens[i]), ch)); break; } } strcat(sb,tokens[i]); strcat(sb,"\n\r"); sb[0] = toupper(sb[0]); send_to_char(sb,ch); }