package com.amadornes.framez.modifier.motor; import java.util.Collection; import com.amadornes.framez.api.modifier.IMotorModifier; import com.amadornes.framez.api.modifier.IMotorModifierPower; import com.amadornes.framez.api.movement.IMotor; import com.amadornes.jtraits.ITrait; import com.amadornes.jtraits.JTrait; public class MotorModifierDC implements IMotorModifierPower { @Override public String getType() { return "dc"; } @Override public boolean isCompatibleWith(IMotorModifier mod) { return !(mod instanceof IMotorModifierPower); } @Override public boolean isValidCombination(Collection<IMotorModifier> combination) { return true; } @Override public Class<? extends ITrait> getTraitClass() { return TMotorDC.class; } public static abstract class TMotorDC extends JTrait<IMotor> implements IMotor { @Override public double drainPower(double amount, boolean simulated) { return amount; } } }