From: dennis@starlifter.reichel.net Hi, An imm wrote out a long penalty and addressed it to immortal, as well as a couple of players. He was disappointed it would not be seen by those players unless it were also posted to notes, since I was unwilling to give players access to the penalty spool :-) This will forward message from one spool to another. A suggested implemtation is shown to address the above situation. Insert wherever, but suggest right below count_spool. /* forward_spool, version 0 /* Released under Gnu FSF License terms, Dennis Reichel (c) 1997 */ /* Why Gnu? Least restrictive license that encourages free distribution */ /* Why a copyright and license at all? I don't want to get sued some day */ /* for using my own code :-) */ int forward_spool(CHAR_DATA *ch, NOTE_DATA *spoolfrom, NOTE_DATA *spoolto) { int count = 0; NOTE_DATA *pNoteFrom, *pNoteTo, *spoolto_last; for (pNoteFrom = spoolfrom; pNoteFrom != NULL; pNoteFrom = pNoteFrom->next) if ( is_name( ch->name, pNoteFrom->to_list ) && !hide_note(ch,pNoteFrom) ) { for ( spoolto_last = spoolto; spoolto_last->next ; ) { spoolto_last = spoolto_last->next; } spoolto_last->next = pNoteTo = new_note(); pNoteTo->next = NULL; pNoteTo->sender = str_dup( pNoteFrom->sender ); pNoteTo->date = str_dup( pNoteFrom->date ); pNoteTo->date_stamp = current_time; pNoteTo->to_list = str_dup( ch->name ); pNoteTo->subject = str_dup( pNoteFrom->subject ); pNoteTo->text = str_dup( pNoteFrom->text ); pNoteTo->type = spoolto->type; count++; } return count; } sprintf(buf,"%d %s been added.\n\r", count, count > 1 ? "penalties have" : "penalty has"); send_to_char(buf,ch); } ==== begin add to do_unread ===== if (!IS_TRUSTED(ch,ANGEL) && (count = forward_spool( ch, penalty_list, note_list )) > 0) { found = TRUE; sprintf(buf,"%d %s been forwarded to your note spool.\n\r", count, count > 1 ? "penalties have" : "penalty has"); send_to_char(buf,ch); } ==== end add to unread ==== if (!found) send_to_char("You have no unread notes.\n\r",ch); }