/******************************************************
*******************************************************
** This Must Remain Intact **
** **
** Description Checks and Approvals **
** By Jeff **
** **
** Please Inform me if you Use my Code **
** cyberpatrol_735@hotmail.com **
*******************************************************
******************************************************/
First In Merc.h
--------------------------
Find the PLR_ flags
add in #DEFINE PLR_DESCRIPTION
----------------------------
In comm.c
Find
write_to_buffer(d,"\n\r",2);
write_to_buffer(d,"[Hit Return to Continue]",0);
d->connected = CON_NEW_CHAR;
Add SET_BIT(ch->act, PLR_DESCRIPTION );
----------------------------
If you wish for their desc to be rejected if they modify their
description, add this in act_info.c
Find do_description
Then Find
string_append( ch, &ch->description );
And Add
SET_BIT(ch->act, PLR_DESCRIPTION);
--------------------------------------------------------------
In act_wiz.c
Add the following
void do_dapprove( CHAR_DATA *ch, char *argument )
{
char arg[MAX_INPUT_LENGTH];
CHAR_DATA *victim;
argument = one_argument( argument, arg );
if ( arg[0] == '\0' )
{
send_to_char( "Approve who's description?\n\r", ch );
return;
}
if ( ( victim = get_char_world( ch, arg ) ) == NULL )
{
send_to_char( "They aren't here.\n\r", ch );
return;
}
if ( IS_NPC(victim) )
{
send_to_char( "Not on NPC's.\n\r", ch );
return;
}
if ( IS_SET(victim->act, PLR_DESCRIPTION) )
{
act("You approve of $N's description.",ch,argument,victim,TO_CHAR );
act("{GYour description has been approved, Thank you.",ch,argument,victim,TO_VICT);
REMOVE_BIT(victim->act, PLR_DESCRIPTION );
return;
}
send_to_char("They have already been approved, use the reject command to reject their description.\n\r",ch );
}
void do_check ( CHAR_DATA *ch, char *argument )
{
char arg[MAX_INPUT_LENGTH];
CHAR_DATA *victim;
argument = one_argument( argument, arg );
if ( arg[0] == '\0' )
{
send_to_char( "Check Who's Description??\n\r", ch );
return;
}
if ( ( victim = get_char_world( ch, arg ) ) == NULL )
{
send_to_char( "They aren't here.\n\r", ch );
return;
}
if ( IS_NPC(victim) )
{
send_to_char( "Not on NPC's.\n\r", ch );
return;
}
if (IS_SET(victim->act, PLR_DESCRIPTION ) )
{
act("$N's description is",ch,argument,victim,TO_CHAR );
act("{B-----------------------------------`w",ch,NULL,victim,TO_CHAR);
send_to_char( victim->description ? victim->description : "(None).\n\r", ch );
act("{B-----------------------------------`w",ch, NULL,victim, TO_CHAR);
act("{R$N's description has not been approved.",ch,argument,victim,TO_CHAR );
return;
}
act("$N's description is",ch,argument,victim,TO_CHAR );
send_to_char("-----------------------------------\n\r",ch);
send_to_char( victim->description ? victim->description : "(None).\n\r", ch );
send_to_char("-----------------------------------\n\r",ch);
act("{G$N's description has been approved.",ch,argument,victim,TO_CHAR );
return;
}
void do_dreject( CHAR_DATA *ch, char *argument )
{
char arg[MAX_INPUT_LENGTH];
CHAR_DATA *victim;
argument = one_argument( argument, arg );
if ( arg[0] == '\0' )
{
send_to_char( "Reject who's description?\n\r", ch );
return;
}
if ( ( victim = get_char_world( ch, arg ) ) == NULL )
{
send_to_char( "They aren't here.\n\r", ch );
return;
}
if ( IS_NPC(victim) )
{
send_to_char( "Not on NPC's.\n\r", ch );
return;
}
if (IS_SET(victim->act, PLR_DESCRIPTION) )
{
send_to_char("Their description still needs revising, you cannot reject it!\n\r",ch );
return;
}
SET_BIT(victim->act, PLR_DESCRIPTION );
act("You have revoked $N's description.",ch,argument,victim,TO_CHAR);
act("{RYour description has been revoked, please read HELP DESCRIPTION.",ch,argument,victim,TO_VICT );
}
---------------------------------------------------
Next find in act_info.c
IS_SET(wch->act, PLR_CRIMINAL) ? "({RCRIMINAL{x) " : "",
IS_SET(wch->act, PLR_THIEF) ? "({RTHIEF{x) " : "",
(wch->original_name) ? wch->original_name : wch->name,
IS_NPC(wch) ? "" : wch->pcdata->title ,
IS_NPC(wch) ? "" :
Yours may vary
Add IS_SET(wch->act, PLR_DESCRIPTION) ? "{W[{rD{W] " : "",
Modify to your color code as needed.
-------------------------------------------------------
Add to interp.h
DECLARE_DO_FUN( do_dapprove );
DECLARE_DO_FUN( do_dreject );
DECLARE_DO_FUN( do_Check );
--------------------------------------------------------
Finally add to interp.c
{ "approve", do_dapprove, POS_DEAD, IM, LOG_NORMAL, 1, 0 },
{ "check", do_check, POS_DEAD, IM, LOG_NORMAL, 1, 0 },
{ "reject", do_dreject, POS_DEAD, IM, LOG_NORMAL, 1, 0 },
Modify levels as needed.
-------------------------------------------------------------
Remember, EMAIL ME if you use this code!!!
cyberpatrol_735@hotmail.com
Enjoy!