Campaign balance

This commit is contained in:
Anuken
2020-11-24 12:35:04 -05:00
parent 7d43856735
commit 61bec243dc
7 changed files with 11 additions and 5 deletions

Binary file not shown.

View File

@@ -24,6 +24,7 @@ public class SectorPresets implements ContentList{
saltFlats = new SectorPreset("saltFlats", serpulo, 101){{ saltFlats = new SectorPreset("saltFlats", serpulo, 101){{
difficulty = 5; difficulty = 5;
useAI = false;
}}; }};
frozenForest = new SectorPreset("frozenForest", serpulo, 86){{ frozenForest = new SectorPreset("frozenForest", serpulo, 86){{

View File

@@ -421,7 +421,7 @@ public class TechTree implements ContentList{
}); });
node(additiveReconstructor, Seq.with(new SectorComplete(biomassFacility)), () -> { node(additiveReconstructor, Seq.with(new SectorComplete(biomassFacility)), () -> {
node(multiplicativeReconstructor, Seq.with(new SectorComplete(overgrowth)), () -> { node(multiplicativeReconstructor, () -> {
node(exponentialReconstructor, () -> { node(exponentialReconstructor, () -> {
node(tetrativeReconstructor, () -> { node(tetrativeReconstructor, () -> {
@@ -508,6 +508,7 @@ public class TechTree implements ContentList{
node(saltFlats, Seq.with( node(saltFlats, Seq.with(
new SectorComplete(windsweptIslands), new SectorComplete(windsweptIslands),
new Research(commandCenter),
new Research(groundFactory), new Research(groundFactory),
new Research(airFactory), new Research(airFactory),
new Research(door), new Research(door),
@@ -646,7 +647,7 @@ public class TechTree implements ContentList{
static TechNode node(UnlockableContent content, ItemStack[] requirements, Seq<Objective> objectives, Runnable children){ static TechNode node(UnlockableContent content, ItemStack[] requirements, Seq<Objective> objectives, Runnable children){
TechNode node = new TechNode(context, content, requirements); TechNode node = new TechNode(context, content, requirements);
if(objectives != null){ if(objectives != null){
node.objectives = objectives; node.objectives.addAll(objectives);
} }
TechNode prev = context; TechNode prev = context;

View File

@@ -21,7 +21,7 @@ import mindustry.world.blocks.storage.*;
import static mindustry.Vars.*; import static mindustry.Vars.*;
public class SectorDamage{ public class SectorDamage{
public static final int maxRetWave = 30, maxWavesSimulated = 50; public static final int maxRetWave = 40, maxWavesSimulated = 50;
//direct damage is for testing only //direct damage is for testing only
private static final boolean direct = false, rubble = true; private static final boolean direct = false, rubble = true;

View File

@@ -60,6 +60,7 @@ public class MendProjector extends Block{
float heat; float heat;
float charge = Mathf.random(reload); float charge = Mathf.random(reload);
float phaseHeat; float phaseHeat;
float smoothEfficiency;
@Override @Override
public float range(){ public float range(){
@@ -68,6 +69,7 @@ public class MendProjector extends Block{
@Override @Override
public void updateTile(){ public void updateTile(){
smoothEfficiency = Mathf.lerpDelta(smoothEfficiency, efficiency(), 0.08f);
heat = Mathf.lerpDelta(heat, consValid() || cheating() ? 1f : 0f, 0.08f); heat = Mathf.lerpDelta(heat, consValid() || cheating() ? 1f : 0f, 0.08f);
charge += heat * delta(); charge += heat * delta();
@@ -115,7 +117,7 @@ public class MendProjector extends Block{
@Override @Override
public void drawLight(){ public void drawLight(){
Drawf.light(team, x, y, 50f * efficiency(), baseColor, 0.7f * efficiency()); Drawf.light(team, x, y, 50f * smoothEfficiency, baseColor, 0.7f * smoothEfficiency);
} }
@Override @Override

View File

@@ -65,6 +65,7 @@ public class OverdriveProjector extends Block{
float heat; float heat;
float charge = Mathf.random(reload); float charge = Mathf.random(reload);
float phaseHeat; float phaseHeat;
float smoothEfficiency;
@Override @Override
public float range(){ public float range(){
@@ -73,11 +74,12 @@ public class OverdriveProjector extends Block{
@Override @Override
public void drawLight(){ public void drawLight(){
Drawf.light(team, x, y, 50f * efficiency(), baseColor, 0.7f * efficiency()); Drawf.light(team, x, y, 50f * smoothEfficiency, baseColor, 0.7f * smoothEfficiency);
} }
@Override @Override
public void updateTile(){ public void updateTile(){
smoothEfficiency = Mathf.lerpDelta(smoothEfficiency, efficiency(), 0.08f);
heat = Mathf.lerpDelta(heat, consValid() ? 1f : 0f, 0.08f); heat = Mathf.lerpDelta(heat, consValid() ? 1f : 0f, 0.08f);
charge += heat * Time.delta; charge += heat * Time.delta;