43 lines
1.1 KiB
Java
43 lines
1.1 KiB
Java
package com.thebrokenrail.energonrelics.api.block.entity.helper;
|
|
|
|
import com.thebrokenrail.energonrelics.api.block.entity.core.EnergyProviderBlockEntity;
|
|
import com.thebrokenrail.energonrelics.api.energy.Action;
|
|
import net.minecraft.block.entity.BlockEntityType;
|
|
|
|
/**
|
|
* Simple Implementation Of A Energy Generator
|
|
*/
|
|
public abstract class EnergyGeneratorBlockEntity extends EnergyProviderBlockEntity implements EnergyGenerator {
|
|
public EnergyGeneratorBlockEntity(BlockEntityType<?> type) {
|
|
super(type);
|
|
}
|
|
|
|
private long energy = 0;
|
|
|
|
@Override
|
|
public boolean isEnergyProvider() {
|
|
return true;
|
|
}
|
|
|
|
@Override
|
|
public long getEnergy() {
|
|
return energy;
|
|
}
|
|
|
|
@Override
|
|
public void setEnergy(long value) {
|
|
if (value < 0) {
|
|
throw new UnsupportedOperationException();
|
|
}
|
|
energy = value;
|
|
}
|
|
|
|
@Override
|
|
protected void handlePropagatedAction(Action.PropagatedAction action) {
|
|
super.handlePropagatedAction(action);
|
|
handlePropagatedActionWithGenerator(action);
|
|
}
|
|
|
|
@Override
|
|
public abstract long getDisplayEnergy();
|
|
} |