mirror of
https://github.com/Anuken/Mindustry.git
synced 2025-07-09 23:37:51 +07:00
Added most things to tech tree
This commit is contained in:
Binary file not shown.
Before Width: | Height: | Size: 516 B |
Binary file not shown.
Before Width: | Height: | Size: 1.3 KiB |
@ -31,7 +31,7 @@ public class Items implements ContentList{
|
|||||||
}};
|
}};
|
||||||
|
|
||||||
sand = new Item("sand", Color.valueOf("f7cba4")){{
|
sand = new Item("sand", Color.valueOf("f7cba4")){{
|
||||||
|
alwaysUnlocked = true;
|
||||||
}};
|
}};
|
||||||
|
|
||||||
coal = new Item("coal", Color.valueOf("272727")){{
|
coal = new Item("coal", Color.valueOf("272727")){{
|
||||||
|
@ -13,6 +13,7 @@ public class Liquids implements ContentList{
|
|||||||
water = new Liquid("water", Color.valueOf("596ab8")){{
|
water = new Liquid("water", Color.valueOf("596ab8")){{
|
||||||
heatCapacity = 0.4f;
|
heatCapacity = 0.4f;
|
||||||
effect = StatusEffects.wet;
|
effect = StatusEffects.wet;
|
||||||
|
alwaysUnlocked = true;
|
||||||
}};
|
}};
|
||||||
|
|
||||||
slag = new Liquid("slag", Color.valueOf("ffa166")){{
|
slag = new Liquid("slag", Color.valueOf("ffa166")){{
|
||||||
|
@ -10,6 +10,7 @@ import mindustry.type.*;
|
|||||||
import mindustry.world.*;
|
import mindustry.world.*;
|
||||||
|
|
||||||
import static mindustry.content.Blocks.*;
|
import static mindustry.content.Blocks.*;
|
||||||
|
import static mindustry.content.UnitTypes.*;
|
||||||
|
|
||||||
public class TechTree implements ContentList{
|
public class TechTree implements ContentList{
|
||||||
private static ObjectMap<UnlockableContent, TechNode> map = new ObjectMap<>();
|
private static ObjectMap<UnlockableContent, TechNode> map = new ObjectMap<>();
|
||||||
@ -72,6 +73,260 @@ public class TechTree implements ContentList{
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
node(mechanicalDrill, () -> {
|
||||||
|
|
||||||
|
node(mechanicalPump, () -> {
|
||||||
|
node(conduit, () -> {
|
||||||
|
node(liquidJunction, () -> {
|
||||||
|
node(liquidRouter, () -> {
|
||||||
|
node(liquidTank);
|
||||||
|
|
||||||
|
node(bridgeConduit);
|
||||||
|
|
||||||
|
node(pulseConduit, () -> {
|
||||||
|
node(phaseConduit, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
node(platedConduit, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(rotaryPump, () -> {
|
||||||
|
node(thermalPump, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(Items.coal, () -> {
|
||||||
|
node(Items.graphite, () -> {
|
||||||
|
node(graphitePress, () -> {
|
||||||
|
node(Items.titanium, () -> {
|
||||||
|
node(pneumaticDrill, () -> {
|
||||||
|
node(Items.sporePod, () -> {
|
||||||
|
node(cultivator, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(Items.thorium, () -> {
|
||||||
|
node(laserDrill, () -> {
|
||||||
|
node(blastDrill, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
node(waterExtractor, () -> {
|
||||||
|
node(oilExtractor, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(Items.pyratite, () -> {
|
||||||
|
node(pyratiteMixer, () -> {
|
||||||
|
node(Items.blastCompound, () -> {
|
||||||
|
node(blastMixer, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(Items.silicon, () -> {
|
||||||
|
node(siliconSmelter, () -> {
|
||||||
|
|
||||||
|
node(Liquids.oil, () -> {
|
||||||
|
node(sporePress, () -> {
|
||||||
|
node(coalCentrifuge, () -> {
|
||||||
|
node(multiPress, () -> {
|
||||||
|
node(siliconCrucible, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(Items.plastanium, () -> {
|
||||||
|
node(plastaniumCompressor, () -> {
|
||||||
|
node(Items.phasefabric, () -> {
|
||||||
|
node(phaseWeaver, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(Items.metaglass, () -> {
|
||||||
|
node(kiln, () -> {
|
||||||
|
node(incinerator, () -> {
|
||||||
|
node(Items.scrap, () -> {
|
||||||
|
node(Liquids.slag, () -> {
|
||||||
|
node(melter, () -> {
|
||||||
|
node(Items.surgealloy, () -> {
|
||||||
|
node(surgeSmelter, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(separator, () -> {
|
||||||
|
node(pulverizer, () -> {
|
||||||
|
node(disassembler, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(Liquids.cryofluid, () -> {
|
||||||
|
node(cryofluidMixer, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
node(combustionGenerator, () -> {
|
||||||
|
node(powerNode, () -> {
|
||||||
|
node(powerNodeLarge, () -> {
|
||||||
|
node(diode, () -> {
|
||||||
|
node(surgeTower, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(battery, () -> {
|
||||||
|
node(batteryLarge, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(mender, () -> {
|
||||||
|
node(mendProjector, () -> {
|
||||||
|
node(forceProjector, () -> {
|
||||||
|
node(overdriveProjector, () -> {
|
||||||
|
node(overdriveDome, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(repairPoint, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(turbineGenerator, () -> {
|
||||||
|
node(thermalGenerator, () -> {
|
||||||
|
node(differentialGenerator, () -> {
|
||||||
|
node(thoriumReactor, () -> {
|
||||||
|
node(impactReactor, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
node(rtgGenerator, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(solarPanel, () -> {
|
||||||
|
node(largeSolarPanel, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(groundFactory, () -> {
|
||||||
|
node(dagger, () -> {
|
||||||
|
node(mace, () -> {
|
||||||
|
node(fortress, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(nova, () -> {
|
||||||
|
node(pulsar, () -> {
|
||||||
|
node(quasar, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(crawler, () -> {
|
||||||
|
node(atrax, () -> {
|
||||||
|
node(spiroct, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(airFactory, () -> {
|
||||||
|
node(flare, () -> {
|
||||||
|
node(horizon, () -> {
|
||||||
|
node(zenith, () -> {
|
||||||
|
node(antumbra, () -> {
|
||||||
|
node(eclipse, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(mono, () -> {
|
||||||
|
node(poly, () -> {
|
||||||
|
node(mega, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(navalFactory, () -> {
|
||||||
|
node(risso, () -> {
|
||||||
|
node(minke, () -> {
|
||||||
|
node(bryde, () -> {
|
||||||
|
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
node(additiveReconstructor, () -> {
|
||||||
|
node(multiplicativeReconstructor, () -> {
|
||||||
|
node(exponentialReconstructor, () -> {
|
||||||
|
node(tetrativeReconstructor, () -> {
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
node(coreFoundation, () -> {
|
node(coreFoundation, () -> {
|
||||||
node(coreNucleus, () -> {
|
node(coreNucleus, () -> {
|
||||||
|
|
||||||
@ -149,182 +404,6 @@ public class TechTree implements ContentList{
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
node(mechanicalDrill, () -> {
|
|
||||||
|
|
||||||
node(Liquids.water, () -> {
|
|
||||||
node(mechanicalPump, () -> {
|
|
||||||
node(conduit, () -> {
|
|
||||||
node(liquidJunction, () -> {
|
|
||||||
node(liquidRouter, () -> {
|
|
||||||
node(liquidTank);
|
|
||||||
|
|
||||||
node(bridgeConduit);
|
|
||||||
|
|
||||||
node(pulseConduit, () -> {
|
|
||||||
node(phaseConduit, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
node(platedConduit, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
node(rotaryPump, () -> {
|
|
||||||
node(thermalPump, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
node(Items.coal, () -> {
|
|
||||||
node(graphitePress, () -> {
|
|
||||||
node(pneumaticDrill, () -> {
|
|
||||||
node(cultivator, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
node(laserDrill, () -> {
|
|
||||||
node(blastDrill, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
node(waterExtractor, () -> {
|
|
||||||
node(oilExtractor, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
node(pyratiteMixer, () -> {
|
|
||||||
node(blastMixer, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
node(siliconSmelter, () -> {
|
|
||||||
|
|
||||||
node(sporePress, () -> {
|
|
||||||
node(coalCentrifuge, () -> {
|
|
||||||
node(multiPress, () -> {
|
|
||||||
node(siliconCrucible, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
node(plastaniumCompressor, () -> {
|
|
||||||
node(phaseWeaver, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
node(kiln, () -> {
|
|
||||||
node(incinerator, () -> {
|
|
||||||
node(melter, () -> {
|
|
||||||
node(surgeSmelter, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
node(separator, () -> {
|
|
||||||
node(pulverizer, () -> {
|
|
||||||
node(disassembler, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
node(cryofluidMixer, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
node(combustionGenerator, () -> {
|
|
||||||
node(powerNode, () -> {
|
|
||||||
node(powerNodeLarge, () -> {
|
|
||||||
node(diode, () -> {
|
|
||||||
node(surgeTower, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
node(battery, () -> {
|
|
||||||
node(batteryLarge, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
node(mender, () -> {
|
|
||||||
node(mendProjector, () -> {
|
|
||||||
node(forceProjector, () -> {
|
|
||||||
node(overdriveProjector, () -> {
|
|
||||||
node(overdriveDome, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
node(repairPoint, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
node(turbineGenerator, () -> {
|
|
||||||
node(thermalGenerator, () -> {
|
|
||||||
node(differentialGenerator, () -> {
|
|
||||||
node(thoriumReactor, () -> {
|
|
||||||
node(impactReactor, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
node(rtgGenerator, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
node(solarPanel, () -> {
|
|
||||||
node(largeSolarPanel, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
node(groundFactory, () -> {
|
|
||||||
node(airFactory, () -> {
|
|
||||||
node(navalFactory, () -> {
|
|
||||||
|
|
||||||
});
|
|
||||||
|
|
||||||
node(additiveReconstructor, () -> {
|
|
||||||
node(multiplicativeReconstructor, () -> {
|
|
||||||
node(exponentialReconstructor, () -> {
|
|
||||||
node(tetrativeReconstructor, () -> {
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -127,9 +127,13 @@ public class UnitFactory extends UnitBlock{
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void buildConfiguration(Table table){
|
public void buildConfiguration(Table table){
|
||||||
Seq<UnitType> units = Seq.with(plans).map(u -> u.unit);
|
Seq<UnitType> units = Seq.with(plans).map(u -> u.unit).filter(u -> u.unlockedNow());
|
||||||
|
|
||||||
ItemSelection.buildTable(table, units, () -> currentPlan == -1 ? null : plans[currentPlan].unit, unit -> configure(units.indexOf(unit)));
|
if(units.any()){
|
||||||
|
ItemSelection.buildTable(table, units, () -> currentPlan == -1 ? null : plans[currentPlan].unit, unit -> configure(units.indexOf(unit)));
|
||||||
|
}else{
|
||||||
|
table.table(Styles.black3, t -> t.add("$none").color(Color.lightGray));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -1,3 +1,3 @@
|
|||||||
org.gradle.daemon=true
|
org.gradle.daemon=true
|
||||||
org.gradle.jvmargs=-Xms256m -Xmx1024m
|
org.gradle.jvmargs=-Xms256m -Xmx1024m
|
||||||
archash=e3078d7782509f39e5b0ee6989c5f7eeea0ad1b7
|
archash=7cc77789e24f6c78fc61922ab2025d1f2d0df7bf
|
||||||
|
Reference in New Issue
Block a user