/*
Just a tiny extension of string to let it strip an extended from an object.
It should be easy to generalize this (as I generalized it from oedit) to any
command you need.  The extra_descr_data struct is a linked list, which means
you've just gotta be careful about assigning the ->next member when you chop a desc
out of the list.  No credit necessary, pretty much c&p from olc_act.c.
*/


// Add the stuff between the comments to do_string in act_wiz.c.

	    	send_to_char( "Syntax: oset <object> ed <keyword> <string>\n\r",
		    ch );
	    	return;
	    }

	/*
	 * string obj <name> 'keyword' erase : removes an extended with string.
	 * 
	 * Same thing as oedit's ed delete, but handy to have with string.
	 *
	 * -SainosAU@yahoo.com
	 */
		else if ( !strcmp( argument, "erase" ) )
		{
			EXTRA_DESCR_DATA *ped = NULL;

			for ( ed = obj->extra_descr; ed; ed = ed->next )
			{
				if ( is_name( arg3, ed->keyword ) )
				break;
				ped = ed;
			}

			if ( !ed )
			{
				send_to_char( "There is no such extended on this object.\n\r", ch );
				return;
			}

			if ( !ped )
				obj->extra_descr = ed->next;
			else
				ped->next = ed->next;

			free_extra_descr( ed );

			send_to_char( "Extra description removed.\n\r", ch );
			return;
		}

	/* end: string obj <name> 'keyword' erase */

 	    strcat(argument,"\n\r");

	    ed = new_extra_descr();