NewMagic->disturb( socket->player(), false, -1 );
socket->player()->setCasting( false );
	virtual bool responsed( cUOSocket *socket, cUORxTarget *target )	{		if( !socket->player() || !socket->player()->casting() )			return true;		// Target information:		socket->sysMessage( "Target information:" );		socket->sysMessage( QString( "SERIAL: %1" ).arg( target->serial() ) );		socket->sysMessage( QString( "Pos: %1,%2,%3" ).arg( target->x() ).arg( target->y() ).arg( target->z() ) );		socket->sysMessage( QString( "Model: %1" ).arg( target->model() ) );		stNewSpell *sInfo = NewMagic->findSpell( spell );		if( !sInfo || !NewMagic->checkTarget( socket->player(), sInfo, target ) )		{			NewMagic->disturb( socket->player(), false, -1 );			return true;		}		// The Target is correct, let us do our spellcheck now and consume mana + reagents.		if( !NewMagic->useMana( socket->player(), spell ) || !NewMagic->useReagents( socket->player(), spell ) )		{			NewMagic->disturb( socket->player(), false, -1 );			return true;		}		if( !NewMagic->checkSkill( socket->player(), spell, false ) )		{			NewMagic->disturb( socket->player(), true, -1 );			return true;		}		cUObject *pObject = 0;		if( isCharSerial( target->serial() ) )			pObject = FindCharBySerial( target->serial() );		else if( isItemSerial( target->serial() ) )			pObject = FindItemBySerial( target->serial() );		Coord_cl pos = socket->player()->pos;		pos.x = target->x();		pos.y = target->y();		pos.z = target->z();		// Call the Spell Effect for this Spell		if( sInfo->script )			sInfo->script->onSpellSuccess( socket->player(), spell, type, pObject, pos, target->model() );		return true;	}