/*
 *Illusionists ala Smoo
 *
 */


#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 "player.h"


void do_morph(CHAR_DATA *ch, char *argument)
{
    char arg [MAX_INPUT_LENGTH];
    char buf [MAX_STRING_LENGTH];
    char buf2 [MAX_STRING_LENGTH];
    char buf3 [MAX_STRING_LENGTH];
    argument = one_argument( argument, arg );
 {
    if (!IS_CLASS(ch, CLASS_ILLUSIONIST)) {
     send_to_char("Huh?\n\r", ch);
     return;
    }
   if (arg[0] == '\0' && IS_POLYAFF(ch, POLY_ILLUSION)) {
     free_string(ch->morph);
     ch->max_mana -= 1500;
     ch->max_hit -= 1000;
     ch->morph = str_dup("");       REMOVE_BIT(ch->polyaff, POLY_ILLUSION);
     send_to_char ("#LThe illusion fades..#n\n\r", ch);
     return;
     }
   if (arg[0] != '\0' && !IS_POLYAFF(ch, POLY_ILLUSION)) {
     sprintf(buf, "%s%ls", ch->name, arg);
        SET_BIT(ch->polyaff, POLY_ILLUSION);
     sprintf(buf2, "$n breaths in and when he blows out, he distorts into %ls", buf);
     act(buf2, ch, NULL, NULL, TO_ROOM);
     sprintf(buf3, "You breath imagine being %ls", buf);
     act(buf3, ch, NULL, NULL, TO_CHAR);
     ch->morph = str_dup(buf);
     ch->max_mana += 1500;
     ch->max_hit += 1000;
     return;
     }
    {
    send_to_char("BUG: Infrom Smoo. (ref 1101)", ch);
    return;
    }
}
}