mirror of
https://github.com/StarWishsama/Slimefun4.git
synced 2024-09-19 19:25:48 +00:00
Fixes #893
This commit is contained in:
parent
a6a061588c
commit
16e2376604
@ -75,6 +75,7 @@
|
|||||||
* Even more performance improvements
|
* Even more performance improvements
|
||||||
* Changed Ignition Chamber Recipe
|
* Changed Ignition Chamber Recipe
|
||||||
* GEO Miner is now 2 seconds faster
|
* GEO Miner is now 2 seconds faster
|
||||||
|
* All Generators will now stop consuming fuel if no energy is needed
|
||||||
|
|
||||||
#### Fixes
|
#### Fixes
|
||||||
* Fixed error message when clicking empty slots in the Slimefun Guide
|
* Fixed error message when clicking empty slots in the Slimefun Guide
|
||||||
@ -93,6 +94,7 @@
|
|||||||
* Fixed #1813
|
* Fixed #1813
|
||||||
* Fixed #1814
|
* Fixed #1814
|
||||||
* Fixed GEO Scanner being unable to deal with more than 28 different resources
|
* Fixed GEO Scanner being unable to deal with more than 28 different resources
|
||||||
|
* Fixed #893
|
||||||
|
|
||||||
## Release Candidate 10 (28 Mar 2020)
|
## Release Candidate 10 (28 Mar 2020)
|
||||||
|
|
||||||
|
@ -142,6 +142,8 @@ public abstract class AGenerator extends AbstractEnergyGenerator {
|
|||||||
@Override
|
@Override
|
||||||
public double generateEnergy(Location l, SlimefunItem sf, Config data) {
|
public double generateEnergy(Location l, SlimefunItem sf, Config data) {
|
||||||
BlockMenu inv = BlockStorage.getInventory(l);
|
BlockMenu inv = BlockStorage.getInventory(l);
|
||||||
|
boolean chargeable = ChargableBlock.isChargable(l);
|
||||||
|
int charge = chargeable ? ChargableBlock.getCharge(l) : 0;
|
||||||
|
|
||||||
if (isProcessing(l)) {
|
if (isProcessing(l)) {
|
||||||
int timeleft = progress.get(l);
|
int timeleft = progress.get(l);
|
||||||
@ -149,13 +151,14 @@ public abstract class AGenerator extends AbstractEnergyGenerator {
|
|||||||
if (timeleft > 0) {
|
if (timeleft > 0) {
|
||||||
ChestMenuUtils.updateProgressbar(inv, 22, timeleft, processing.get(l).getTicks(), getProgressBar());
|
ChestMenuUtils.updateProgressbar(inv, 22, timeleft, processing.get(l).getTicks(), getProgressBar());
|
||||||
|
|
||||||
if (ChargableBlock.isChargable(l)) {
|
if (chargeable) {
|
||||||
if (ChargableBlock.getMaxCharge(l) - ChargableBlock.getCharge(l) >= getEnergyProduction()) {
|
if (ChargableBlock.getMaxCharge(l) - charge >= getEnergyProduction()) {
|
||||||
ChargableBlock.addCharge(l, getEnergyProduction());
|
ChargableBlock.addCharge(l, getEnergyProduction());
|
||||||
progress.put(l, timeleft - 1);
|
progress.put(l, timeleft - 1);
|
||||||
return ChargableBlock.getCharge(l);
|
return charge + getEnergyProduction();
|
||||||
}
|
}
|
||||||
return 0;
|
|
||||||
|
return charge;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
progress.put(l, timeleft - 1);
|
progress.put(l, timeleft - 1);
|
||||||
@ -173,7 +176,7 @@ public abstract class AGenerator extends AbstractEnergyGenerator {
|
|||||||
|
|
||||||
progress.remove(l);
|
progress.remove(l);
|
||||||
processing.remove(l);
|
processing.remove(l);
|
||||||
return 0;
|
return charge;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@ -188,7 +191,8 @@ public abstract class AGenerator extends AbstractEnergyGenerator {
|
|||||||
processing.put(l, fuel);
|
processing.put(l, fuel);
|
||||||
progress.put(l, fuel.getTicks());
|
progress.put(l, fuel.getTicks());
|
||||||
}
|
}
|
||||||
return 0;
|
|
||||||
|
return charge;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -263,6 +263,7 @@ public abstract class AReactor extends AbstractEnergyGenerator {
|
|||||||
public double generateEnergy(Location l, SlimefunItem sf, Config data) {
|
public double generateEnergy(Location l, SlimefunItem sf, Config data) {
|
||||||
BlockMenu menu = BlockStorage.getInventory(l);
|
BlockMenu menu = BlockStorage.getInventory(l);
|
||||||
BlockMenu port = getAccessPort(l);
|
BlockMenu port = getAccessPort(l);
|
||||||
|
int charge = ChargableBlock.getCharge(l);
|
||||||
|
|
||||||
if (isProcessing(l)) {
|
if (isProcessing(l)) {
|
||||||
extraTick(l);
|
extraTick(l);
|
||||||
@ -270,12 +271,8 @@ public abstract class AReactor extends AbstractEnergyGenerator {
|
|||||||
|
|
||||||
if (timeleft > 0) {
|
if (timeleft > 0) {
|
||||||
int produced = getEnergyProduction();
|
int produced = getEnergyProduction();
|
||||||
int space = ChargableBlock.getMaxCharge(l) - ChargableBlock.getCharge(l);
|
int space = ChargableBlock.getMaxCharge(l) - charge;
|
||||||
|
|
||||||
if (space >= produced) {
|
|
||||||
ChargableBlock.addCharge(l, getEnergyProduction());
|
|
||||||
space -= produced;
|
|
||||||
}
|
|
||||||
if (space >= produced || !"generator".equals(BlockStorage.getLocationInfo(l, "reactor-mode"))) {
|
if (space >= produced || !"generator".equals(BlockStorage.getLocationInfo(l, "reactor-mode"))) {
|
||||||
progress.put(l, timeleft - 1);
|
progress.put(l, timeleft - 1);
|
||||||
|
|
||||||
@ -319,10 +316,15 @@ public abstract class AReactor extends AbstractEnergyGenerator {
|
|||||||
ReactorHologram.update(l, "&b\u2744 &7" + getPercentage(timeleft, processing.get(l).getTicks()) + "%");
|
ReactorHologram.update(l, "&b\u2744 &7" + getPercentage(timeleft, processing.get(l).getTicks()) + "%");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return ChargableBlock.getCharge(l);
|
|
||||||
}
|
}
|
||||||
return 0;
|
|
||||||
|
if (space >= produced) {
|
||||||
|
ChargableBlock.addCharge(l, getEnergyProduction());
|
||||||
|
return charge + getEnergyProduction();
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return charge;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
menu.replaceExistingItem(22, new CustomItem(new ItemStack(Material.BLACK_STAINED_GLASS_PANE), " "));
|
menu.replaceExistingItem(22, new CustomItem(new ItemStack(Material.BLACK_STAINED_GLASS_PANE), " "));
|
||||||
@ -341,7 +343,7 @@ public abstract class AReactor extends AbstractEnergyGenerator {
|
|||||||
|
|
||||||
progress.remove(l);
|
progress.remove(l);
|
||||||
processing.remove(l);
|
processing.remove(l);
|
||||||
return 0;
|
return charge;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
@ -360,7 +362,8 @@ public abstract class AReactor extends AbstractEnergyGenerator {
|
|||||||
processing.put(l, fuel);
|
processing.put(l, fuel);
|
||||||
progress.put(l, fuel.getTicks());
|
progress.put(l, fuel.getTicks());
|
||||||
}
|
}
|
||||||
return 0;
|
|
||||||
|
return charge;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user