今天折腾了一会儿,给这个 noise 主题换上了 prism 的 darcula 主题,然后又把某些地方魔改了一下。
总之香的不行,上一篇的 Groovy 代码高亮混乱的问题也解决了。
测试一下,
@Override
public <C extends CastingSkill<E>, E extends EntitySkill<?, C>> Optional<C> operate(Class<E> cl,
SkillOperation<? super C> operation) throws UnsupportedOperationException {
Optional<Entity> entity = getEntity();
if (entity.isPresent()) {
if (multimap.containsKey(cl)) {
Collection<C> castingSkills = getCastingSkills(cl);
if (castingSkills.size() > 0) {
C skill = castingSkills.iterator().next();
return Optional.of(operate(skill, operation));
}
}
ProfessionSubject subject = ProfessionService.instance().getOrCreate(entity.get());
SkillTree skillTree = subject.getMerged();
Optional<E> optional = skillTree.find(cl);
if (optional.isPresent()) {
E skill = optional.get();
C cast = skill.createCast(this);
return Optional.of(operate(cast, operation));
}
}
return Optional.empty();
}
没 IDEA 里面好看。