in act_info.c search for
void show_char_to_char_0( CHAR_DATA *victim, CHAR_DATA *ch )
that is the function that shows characters in the room if you type look
there are alot of different statements that show people in the room.. about halfdway throught the function you'll see
Quote:
switch ( victim->position )
{
case POS_DEAD: strcat( buf, " is DEAD!!" ); break;
case POS_MORTAL: strcat( buf, " is mortally wounded." ); break;
case POS_INCAP: strcat( buf, " is incapacitated." ); break;
case POS_STUNNED: strcat( buf, " is lying here stunned." ); break;
case POS_SLEEPING:
if (ch->position == POS_SITTING
|| ch->position == POS_RESTING )
strcat( buf, " is sleeping nearby." );
else
strcat( buf, " is deep in slumber here." );
break;
case POS_RESTING:
if (ch->position == POS_RESTING)
strcat ( buf, " is sprawled out alongside you." );
else
if (ch->position == POS_MOUNTED)
strcat ( buf, " is sprawled out at the foot of your mount." );
else
strcat (buf, " is sprawled out here." );
break;
case POS_SITTING:
if (ch->position == POS_SITTING)
strcat( buf, " sits here with you." );
else
if (ch->position == POS_RESTING)
strcat( buf, " sits nearby as you lie around." );
else
strcat( buf, " sits upright here." );
break;
case POS_STANDING:
if ( IS_IMMORTAL(victim) )
strcat( buf, " is here before you." );
else
if ( ( victim->in_room->sector_type == SECT_UNDERWATER )
&& !IS_AFFECTED(victim, AFF_AQUA_BREATH) && !IS_NPC(victim) )
strcat( buf, " is drowning here." );
else
if ( victim->in_room->sector_type == SECT_UNDERWATER )
strcat( buf, " is here in the water." );
else
if ( ( victim->in_room->sector_type == SECT_OCEANFLOOR )
&& !IS_AFFECTED(victim, AFF_AQUA_BREATH) && !IS_NPC(victim) )
strcat( buf, " is drowning here." );
else
if ( victim->in_room->sector_type == SECT_OCEANFLOOR )
strcat( buf, " is standing here in the water." );
else
if ( IS_AFFECTED(victim, AFF_FLOATING)
|| IS_AFFECTED(victim, AFF_FLYING) )
strcat( buf, " is hovering here." );
else
strcat( buf, " is standing here." );
break;
case POS_SHOVE: strcat( buf, " is being shoved around." ); break;
case POS_DRAG: strcat( buf, " is being dragged around." ); break;
case POS_MOUNTED:
strcat( buf, " is here, upon " );
if ( !victim->mount )
strcat( buf, "thin air???" );
else
if ( victim->mount == ch )
strcat( buf, "your back." );
else
if ( victim->in_room == victim->mount->in_room )
{
strcat( buf, PERS( victim->mount, ch ) );
strcat( buf, "." );
}
else
strcat( buf, "someone who left??" );
break;
case POS_FIGHTING:
case POS_EVASIVE:
case POS_DEFENSIVE:
case POS_AGGRESSIVE:
case POS_BERSERK:
strcat( buf, " is here, fighting " );
if ( !victim->fighting )
{
strcat( buf, "thin air???" );
/* some bug somewhere.... kinda hackey fix -h */
if(! victim->mount)
victim->position = POS_STANDING;
else
victim->position = POS_MOUNTED;
}
else if ( who_fighting( victim ) == ch )
strcat( buf, "YOU!" );
else if ( victim->in_room == victim->fighting->who->in_room )
{
strcat( buf, PERS( victim->fighting->who, ch ) );
strcat( buf, "." );
}
else
strcat( buf, "someone who left??" );
break;
you'll have to change any of the cases that you want to display the name of the weapon. if you just want "standing here"
you'd change that strcat(buf, " is standing here." );
to
Quote:
{
wield = get_eq_char( ch, WEAR_WIELD );
if (wield)
sprintf(buf, " is standing here, wielding %s", weild->short_descr );
else
strcat(buf, " is standing here." );
}
and add
OBJ_DATA *wield;
to the top of the function.
this is just something to go by.. it doesnt including dual wielding or anything.. have fun :) |