area/
/***************************************
 * Changlings. Designed by Porthos     *
 * Coded By Corey Olney (Kip) and Lobo *
 ***************************************/

#if defined(macintosh)
#include <types.h>
#else
#include <sys/types.h>
#endif
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include "merc.h"
#include "warlock.h"

void do_assimilate( CHAR_DATA *ch, char *argument)
{
   CHAR_DATA *victim;
   char arg[MAX_INPUT_LENGTH];

   one_argument(argument, arg);
   
   if( !IS_CLASS(ch, CLASS_CHANGLING))
   {
	stc( "Huh?\n\r",ch);
	return;
   }
    if( ch->original_class != CLASS_CHANGLING )       
    {
        stc( "Huh?\n\r",ch);
        return;
    }

   if ( arg[0] == '\0' )
    {
        send_to_char( "Teach whom?\n\r", ch );
        return;
    }

   if( (victim = get_char_room(ch, argument)) == NULL )
   {
	stc( "They aren't here.\n\r",ch);
	return;
   }
   if( victim->class != 0 )
   {
	stc( "You can't assimilate a person who is in a class.\n\r",ch);
	return;
   }
   if( IS_IMMORTAL(victim) || victim->level < LEVEL_AVATAR )
   {
	stc( "You can only class avatar.\n\r",ch);
	return;
   }
   if( victim->exp < 100000 )
   {
	stc( "They can't afford the 100,000 exp cost.\n\r",ch);
	return;
   }
   if( ch->exp < 100000 )
   {
	stc( "You can't afford the 100,000 exp cost.\n\r",ch);
	return;
   }
   ch->exp -= 100000;
   victim->exp -= 100000;
   victim->class = CLASS_CHANGLING;
   act( "You assimilate $N into the self.",ch,NULL,victim,TO_CHAR);
   act( "$n assimilates you into the self.",ch,NULL,victim,TO_VICT);
   act( "$n assimilates $N into the self.",ch,NULL,victim,TO_NOTVICT);
   stc( "Your skin crawls and ripples as your mind expands with the knowledge you are now changling.\n\r",victim);
   return;
}

void do_shiftpowers(CHAR_DATA *ch, char *argument)
{
   return;
}