@Override
	public void eatIfAble(MOB mob)
	{
		final List<Ability> spells=getSpells();
		if((mob.isMine(this))&&(spells.size()>0))
		{
			final MOB caster=CMLib.map().getFactoryMOB(mob.location());
			boolean destroyCaster = true;
			for(int i=0;i<spells.size();i++)
			{
				final Ability thisOneA=(Ability)spells.get(i).copyOf();
				int level=phyStats().level();
				final int lowest=CMLib.ableMapper().lowestQualifyingLevel(thisOneA.ID());
				if(level<lowest)
					level=lowest;
				caster.basePhyStats().setLevel(level);
				caster.phyStats().setLevel(level);
				thisOneA.invoke(caster,mob,true,level);
				Ability effectA=mob.fetchEffect(thisOneA.ID());
				if((effectA!=null) && (effectA.invoker() == caster))
					destroyCaster =  false; 
			}
			if(destroyCaster)
				caster.destroy();
		}
	}