package net.zomis.cardshifter.ecs.effects; import com.cardshifter.modapi.actions.TargetableCheckEvent; import com.cardshifter.modapi.base.Component; import com.cardshifter.modapi.base.CopyableComponent; import com.cardshifter.modapi.base.Entity; public class FilterComponent extends Component implements CopyableComponent { private final TargetFilter filter; public FilterComponent(TargetFilter filter) { this.filter = filter; } @Override public Component copy(Entity copyTo) { return new FilterComponent(filter); } public boolean check(TargetableCheckEvent event) { return filter.test(event.getAction().getOwner(), event.getTarget()); } }