mirror of
https://github.com/Anuken/Mindustry.git
synced 2025-07-10 07:47:25 +07:00
Minor power tweaks
This commit is contained in:
@ -58,8 +58,8 @@ public class PowerDiode extends Block{
|
|||||||
public void setBars(){
|
public void setBars(){
|
||||||
super.setBars();
|
super.setBars();
|
||||||
|
|
||||||
bars.add("back", entity -> new Bar("bar.input", Pal.lighterOrange, () -> bar(entity.tile.back())) );
|
bars.add("back", entity -> new Bar("bar.input", Pal.powerBar, () -> bar(entity.tile.back())));
|
||||||
bars.add("front", entity -> new Bar("bar.output", Pal.lighterOrange, () -> bar(entity.tile.front())) );
|
bars.add("front", entity -> new Bar("bar.output", Pal.powerBar, () -> bar(entity.tile.front())));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -1,11 +1,10 @@
|
|||||||
package io.anuke.mindustry.world.blocks.power;
|
package io.anuke.mindustry.world.blocks.power;
|
||||||
|
|
||||||
import io.anuke.arc.Core;
|
import io.anuke.arc.*;
|
||||||
import io.anuke.arc.collection.*;
|
import io.anuke.arc.collection.*;
|
||||||
import io.anuke.arc.math.Mathf;
|
import io.anuke.arc.math.*;
|
||||||
import io.anuke.arc.math.WindowedMean;
|
import io.anuke.arc.util.*;
|
||||||
import io.anuke.arc.util.Time;
|
import io.anuke.mindustry.world.*;
|
||||||
import io.anuke.mindustry.world.Tile;
|
|
||||||
import io.anuke.mindustry.world.consumers.*;
|
import io.anuke.mindustry.world.consumers.*;
|
||||||
|
|
||||||
public class PowerGraph{
|
public class PowerGraph{
|
||||||
@ -181,6 +180,7 @@ public class PowerGraph{
|
|||||||
tile.entity.power.status = 1f;
|
tile.entity.power.status = 1f;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
lastPowerNeeded = lastPowerProduced = 1f;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -192,21 +192,22 @@ public class PowerGraph{
|
|||||||
lastPowerNeeded = powerNeeded;
|
lastPowerNeeded = powerNeeded;
|
||||||
lastPowerProduced = powerProduced;
|
lastPowerProduced = powerProduced;
|
||||||
|
|
||||||
powerBalance.addValue((powerProduced - powerNeeded) / Time.delta());
|
if(!(consumers.size == 0 && producers.size == 0 && batteries.size == 0)){
|
||||||
|
|
||||||
if(consumers.size == 0 && producers.size == 0 && batteries.size == 0){
|
if(!Mathf.equal(powerNeeded, powerProduced)){
|
||||||
return;
|
if(powerNeeded > powerProduced){
|
||||||
}
|
float powerBatteryUsed = useBatteries(powerNeeded - powerProduced);
|
||||||
|
powerProduced += powerBatteryUsed;
|
||||||
if(!Mathf.equal(powerNeeded, powerProduced)){
|
lastPowerProduced += powerBatteryUsed;
|
||||||
if(powerNeeded > powerProduced){
|
}else if(powerProduced > powerNeeded){
|
||||||
powerProduced += useBatteries(powerNeeded - powerProduced);
|
powerProduced -= chargeBatteries(powerProduced - powerNeeded);
|
||||||
}else if(powerProduced > powerNeeded){
|
}
|
||||||
powerProduced -= chargeBatteries(powerProduced - powerNeeded);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
distributePower(powerNeeded, powerProduced);
|
||||||
}
|
}
|
||||||
|
|
||||||
distributePower(powerNeeded, powerProduced);
|
powerBalance.addValue((lastPowerProduced - lastPowerNeeded) / Time.delta());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void add(PowerGraph graph){
|
public void add(PowerGraph graph){
|
||||||
|
@ -91,7 +91,7 @@ public class PowerNode extends PowerBlock{
|
|||||||
Core.bundle.format("bar.powerbalance",
|
Core.bundle.format("bar.powerbalance",
|
||||||
((entity.power.graph.getPowerBalance() >= 0 ? "+" : "") + Strings.fixed(entity.power.graph.getPowerBalance() * 60, 1))),
|
((entity.power.graph.getPowerBalance() >= 0 ? "+" : "") + Strings.fixed(entity.power.graph.getPowerBalance() * 60, 1))),
|
||||||
() -> Pal.powerBar,
|
() -> Pal.powerBar,
|
||||||
() -> Mathf.clamp(entity.power.graph.getPowerProduced() / entity.power.graph.getPowerNeeded())));
|
() -> Mathf.clamp(entity.power.graph.getLastPowerProduced() / entity.power.graph.getLastPowerNeeded())));
|
||||||
|
|
||||||
bars.add("batteries", entity -> new Bar(() ->
|
bars.add("batteries", entity -> new Bar(() ->
|
||||||
Core.bundle.format("bar.powerstored",
|
Core.bundle.format("bar.powerstored",
|
||||||
|
Reference in New Issue
Block a user