More research tweaks / Balancing
This commit is contained in:
@@ -1717,7 +1717,7 @@ public class Blocks implements ContentList{
|
||||
}};
|
||||
|
||||
additiveReconstructor = new Reconstructor("additive-reconstructor"){{
|
||||
requirements(Category.units, with(Items.copper, 50, Items.lead, 120, Items.silicon, 230));
|
||||
requirements(Category.units, with(Items.copper, 200, Items.lead, 120, Items.silicon, 90));
|
||||
|
||||
size = 3;
|
||||
consumes.power(3f);
|
||||
@@ -1736,7 +1736,7 @@ public class Blocks implements ContentList{
|
||||
}};
|
||||
|
||||
multiplicativeReconstructor = new Reconstructor("multiplicative-reconstructor"){{
|
||||
requirements(Category.units, with(Items.copper, 50, Items.lead, 120, Items.silicon, 230));
|
||||
requirements(Category.units, with(Items.lead, 650, Items.silicon, 350, Items.titanium, 350, Items.thorium, 650));
|
||||
|
||||
size = 5;
|
||||
consumes.power(6f);
|
||||
@@ -1755,7 +1755,7 @@ public class Blocks implements ContentList{
|
||||
}};
|
||||
|
||||
exponentialReconstructor = new Reconstructor("exponential-reconstructor"){{
|
||||
requirements(Category.units, with(Items.copper, 50, Items.lead, 120, Items.silicon, 230));
|
||||
requirements(Category.units, with(Items.lead, 2000, Items.silicon, 750, Items.titanium, 950, Items.thorium, 450, Items.plastanium, 350, Items.phasefabric, 250));
|
||||
|
||||
size = 7;
|
||||
consumes.power(12f);
|
||||
@@ -1771,7 +1771,7 @@ public class Blocks implements ContentList{
|
||||
}};
|
||||
|
||||
tetrativeReconstructor = new Reconstructor("tetrative-reconstructor"){{
|
||||
requirements(Category.units, with(Items.copper, 50, Items.lead, 120, Items.silicon, 230));
|
||||
requirements(Category.units, with(Items.lead, 4000, Items.silicon, 1500, Items.thorium, 500, Items.plastanium, 50, Items.phasefabric, 600, Items.surgealloy, 500));
|
||||
|
||||
size = 9;
|
||||
consumes.power(25f);
|
||||
|
||||
@@ -20,9 +20,7 @@ public class TechTree implements ContentList{
|
||||
|
||||
@Override
|
||||
public void load(){
|
||||
TechNode.context = null;
|
||||
map = new ObjectMap<>();
|
||||
all = new Seq<>();
|
||||
setup();
|
||||
|
||||
root = node(coreShard, () -> {
|
||||
|
||||
@@ -406,6 +404,12 @@ public class TechTree implements ContentList{
|
||||
});
|
||||
}
|
||||
|
||||
private static void setup(){
|
||||
TechNode.context = null;
|
||||
map = new ObjectMap<>();
|
||||
all = new Seq<>();
|
||||
}
|
||||
|
||||
private static TechNode node(UnlockableContent content, Runnable children){
|
||||
ItemStack[] requirements;
|
||||
|
||||
@@ -452,7 +456,7 @@ public class TechTree implements ContentList{
|
||||
/** Item requirements for this content. */
|
||||
public ItemStack[] requirements;
|
||||
/** Extra objectives needed to research this. TODO implement */
|
||||
public Objective[] objectives = {};
|
||||
public Seq<Objective> objectives = new Seq<>();
|
||||
/** Time required to research this content, in seconds. */
|
||||
public float time = 60;
|
||||
/** Nodes that depend on this node. */
|
||||
@@ -471,7 +475,8 @@ public class TechTree implements ContentList{
|
||||
this.depth = parent == null ? 0 : parent.depth + 1;
|
||||
this.progress = Core.settings == null ? 0 : Core.settings.getFloat("research-" + content.name, 0f);
|
||||
|
||||
objectives = Seq.with(requirements).select(i -> !i.item.alwaysUnlocked).map(i -> new Research(i.item)).toArray(Objective.class);
|
||||
//add dependencies as objectives.
|
||||
content.getDependencies(d -> objectives.add(new Research(d)));
|
||||
|
||||
map.put(content, this);
|
||||
context = this;
|
||||
|
||||
Reference in New Issue
Block a user