public Caster getCorrespondingCaster(Ability ability) {
		Caster minMagicUnit = null;
		long minMagic = Integer.MAX_VALUE;
		for(ClickableObject object : selection) {
			// TODO: change this, we only want casters here
			Caster caster = (Caster)object;
			long casterMagic = caster.getMagicBar().getValue();
			if(caster.getAbilities().contains(ability) && casterMagic >= ability.getMagicCost() && casterMagic < minMagic) {
				minMagic = casterMagic;
				minMagicUnit = caster;
			}
		}
		return minMagicUnit;
	}