This repository has been archived on 2023-11-26. You can view files and clone it, but cannot push or open issues or pull requests.
EnergonRelics/src/main/java/com/thebrokenrail/energonrelics/structure/researchcomplex/ResearchComplexState.java

45 lines
1.3 KiB
Java
Raw Normal View History

2020-07-19 19:12:39 +00:00
package com.thebrokenrail.energonrelics.structure.researchcomplex;
import com.thebrokenrail.energonrelics.component.NetworkComponent;
import com.thebrokenrail.energonrelics.config.HardcodedConfig;
import net.minecraft.server.world.ServerWorld;
2020-07-20 21:03:17 +00:00
import net.minecraft.util.math.BlockPos;
2020-07-19 19:12:39 +00:00
import net.minecraft.world.World;
2020-07-20 21:03:17 +00:00
import java.util.Random;
2020-07-19 19:12:39 +00:00
public class ResearchComplexState {
private final int baseID;
private long energyBudget = HardcodedConfig.REACTOR_ENERGY_OUTPUT;
2020-07-20 21:03:17 +00:00
final Random random;
public ResearchComplexState(World world, Random random) {
2020-07-19 19:12:39 +00:00
ServerWorld serverWorld = (ServerWorld) world;
NetworkComponent component = NetworkComponent.getInstance(serverWorld);
baseID = component.create();
2020-07-20 21:03:17 +00:00
this.random = random;
2020-07-19 19:12:39 +00:00
}
2020-07-22 01:23:33 +00:00
private int getID() {
return baseID;
2020-07-19 19:12:39 +00:00
}
int getMainNetwork() {
2020-07-22 01:23:33 +00:00
return getID();
2020-07-19 19:12:39 +00:00
}
2020-07-20 21:03:17 +00:00
boolean hasEnergy(long amount, BlockPos pos) {
if (pos.isWithinDistance(new BlockPos(0, 2, 0), HardcodedConfig.POWER_RANGE)) {
if (amount <= energyBudget) {
energyBudget = energyBudget - amount;
return true;
} else {
return false;
}
2020-07-19 19:12:39 +00:00
} else {
return false;
}
}
}