mirror of
https://github.com/Anuken/Mindustry.git
synced 2025-07-08 14:57:18 +07:00
All power blocks now produce power as stated in v63 tool tips
This commit is contained in:
@ -20,7 +20,7 @@ public class PowerBlocks extends BlockList implements ContentList{
|
|||||||
|
|
||||||
thermalGenerator = new LiquidHeatGenerator("thermal-generator"){{
|
thermalGenerator = new LiquidHeatGenerator("thermal-generator"){{
|
||||||
maxLiquidGenerate = 2f;
|
maxLiquidGenerate = 2f;
|
||||||
powerProduction = 4f;
|
powerProduction = 2f;
|
||||||
generateEffect = BlockFx.redgeneratespark;
|
generateEffect = BlockFx.redgeneratespark;
|
||||||
size = 2;
|
size = 2;
|
||||||
}};
|
}};
|
||||||
@ -42,14 +42,14 @@ public class PowerBlocks extends BlockList implements ContentList{
|
|||||||
powerProduction = 0.0045f;
|
powerProduction = 0.0045f;
|
||||||
}};
|
}};
|
||||||
|
|
||||||
largeSolarPanel = new PowerGenerator("solar-panel-large"){{
|
largeSolarPanel = new SolarGenerator("solar-panel-large"){{
|
||||||
powerProduction = 0.055f;
|
powerProduction = 0.055f;
|
||||||
}};
|
}};
|
||||||
|
|
||||||
thoriumReactor = new NuclearReactor("thorium-reactor"){{
|
thoriumReactor = new NuclearReactor("thorium-reactor"){{
|
||||||
size = 3;
|
size = 3;
|
||||||
health = 700;
|
health = 700;
|
||||||
powerMultiplier = 1.1f;
|
powerProduction = 1.1f;
|
||||||
}};
|
}};
|
||||||
|
|
||||||
fusionReactor = new FusionReactor("fusion-reactor"){{
|
fusionReactor = new FusionReactor("fusion-reactor"){{
|
||||||
|
@ -34,7 +34,6 @@ public class NuclearReactor extends PowerGenerator{
|
|||||||
protected Color coolColor = new Color(1, 1, 1, 0f);
|
protected Color coolColor = new Color(1, 1, 1, 0f);
|
||||||
protected Color hotColor = Color.valueOf("ff9575a3");
|
protected Color hotColor = Color.valueOf("ff9575a3");
|
||||||
protected int fuelUseTime = 120; //time to consume 1 fuel
|
protected int fuelUseTime = 120; //time to consume 1 fuel
|
||||||
protected float powerMultiplier = 0.45f; //power per frame, depends on full capacity
|
|
||||||
protected float heating = 0.013f; //heating per frame
|
protected float heating = 0.013f; //heating per frame
|
||||||
protected float coolantPower = 0.015f; //how much heat decreases per coolant unit
|
protected float coolantPower = 0.015f; //how much heat decreases per coolant unit
|
||||||
protected float smokeThreshold = 0.3f; //threshold at which block starts smoking
|
protected float smokeThreshold = 0.3f; //threshold at which block starts smoking
|
||||||
@ -49,8 +48,6 @@ public class NuclearReactor extends PowerGenerator{
|
|||||||
super(name);
|
super(name);
|
||||||
itemCapacity = 30;
|
itemCapacity = 30;
|
||||||
liquidCapacity = 50;
|
liquidCapacity = 50;
|
||||||
// TODO Adapt to new power system
|
|
||||||
//powerCapacity = 80f;
|
|
||||||
hasItems = true;
|
hasItems = true;
|
||||||
hasLiquids = true;
|
hasLiquids = true;
|
||||||
|
|
||||||
@ -77,9 +74,9 @@ public class NuclearReactor extends PowerGenerator{
|
|||||||
super.setStats();
|
super.setStats();
|
||||||
stats.add(BlockStat.inputLiquid, new LiquidFilterValue(liquid -> liquid.temperature <= 0.5f));
|
stats.add(BlockStat.inputLiquid, new LiquidFilterValue(liquid -> liquid.temperature <= 0.5f));
|
||||||
|
|
||||||
// TODO Verify for new power system
|
|
||||||
stats.remove(BlockStat.basePowerGeneration);
|
stats.remove(BlockStat.basePowerGeneration);
|
||||||
stats.add(BlockStat.basePowerGeneration, powerMultiplier * 60f * 0.5f, StatUnit.powerSecond);
|
// Display the power which will be produced at 50% efficiency
|
||||||
|
stats.add(BlockStat.basePowerGeneration, powerProduction * 60f * 0.5f, StatUnit.powerSecond);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -88,12 +85,11 @@ public class NuclearReactor extends PowerGenerator{
|
|||||||
|
|
||||||
int fuel = entity.items.get(consumes.item());
|
int fuel = entity.items.get(consumes.item());
|
||||||
float fullness = (float) fuel / itemCapacity;
|
float fullness = (float) fuel / itemCapacity;
|
||||||
|
entity.productionEfficiency = fullness / 2.0f; // Currently, efficiency of 0.5 = 100%
|
||||||
|
|
||||||
if(fuel > 0){
|
if(fuel > 0){
|
||||||
entity.heat += fullness * heating * Math.min(entity.delta(), 4f);
|
entity.heat += fullness * heating * Math.min(entity.delta(), 4f);
|
||||||
// TODO Adapt to new power system
|
|
||||||
//entity.power.amount += powerMultiplier * fullness * entity.delta();
|
|
||||||
//entity.power.amount = Mathf.clamp(entity.power.amount, 0f, powerCapacity);
|
|
||||||
if(entity.timer.get(timerFuel, fuelUseTime)){
|
if(entity.timer.get(timerFuel, fuelUseTime)){
|
||||||
entity.items.remove(consumes.item(), 1);
|
entity.items.remove(consumes.item(), 1);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user