private boolean hasDBT(IGenericCharacter character) {
   for (IMagic magic : character.getAllLearnedMagic()) {
     if (magic instanceof ICharm && magic.getId().equals("Lunar.DeadlyBeastmanTransformation")) {
       return true;
     }
   }
   return false;
 }
 public boolean[] hasExcellenciesLearned(ITraitType traitType) {
   IMagicStats[] excellencies = getExcellencies();
   List<IMagic> allLearnedMagic = character.getAllLearnedMagic();
   boolean[] excellencyLearned = new boolean[excellencies.length];
   for (int i = 0; i < excellencies.length; i++) {
     final String charmId =
         excellencies[i].getName().getId() + "." + traitType.getId(); // $NON-NLS-1$
     excellencyLearned[i] =
         CollectionUtilities.getFirst(
                 allLearnedMagic,
                 new IPredicate<IMagic>() {
                   @Override
                   public boolean evaluate(IMagic value) {
                     return charmId.equals(value.getId());
                   }
                 })
             != null;
   }
   return excellencyLearned;
 }