Added missing tech tree blocks
@ -1073,7 +1073,7 @@ block.mass-conveyor.name = Mass Conveyor
|
||||
block.payload-router.name = Payload Router
|
||||
block.disassembler.name = Disassembler
|
||||
block.silicon-crucible.name = Silicon Crucible
|
||||
block.large-overdrive-projector.name = Large Overdrive Projector
|
||||
block.overdrive-dome.name = Overdrive Dome
|
||||
team.blue.name = blue
|
||||
team.crux.name = red
|
||||
team.sharded.name = orange
|
||||
|
@ -279,3 +279,4 @@
|
||||
63465=gamma|unit-gamma-medium
|
||||
63464=block|unit-block-medium
|
||||
63463=risso|unit-risso-medium
|
||||
63462=overdrive-dome|block-overdrive-dome-medium
|
||||
|
Before Width: | Height: | Size: 1.1 MiB After Width: | Height: | Size: 1.1 MiB |
Before Width: | Height: | Size: 185 KiB After Width: | Height: | Size: 186 KiB |
Before Width: | Height: | Size: 386 KiB After Width: | Height: | Size: 385 KiB |
Before Width: | Height: | Size: 1.2 MiB After Width: | Height: | Size: 1.2 MiB |
Before Width: | Height: | Size: 1.8 MiB After Width: | Height: | Size: 1.8 MiB |
Before Width: | Height: | Size: 186 KiB After Width: | Height: | Size: 188 KiB |
Before Width: | Height: | Size: 391 KiB After Width: | Height: | Size: 391 KiB |
Before Width: | Height: | Size: 1.3 MiB After Width: | Height: | Size: 1.3 MiB |
@ -52,7 +52,7 @@ public class Blocks implements ContentList{
|
||||
|
||||
//defense
|
||||
copperWall, copperWallLarge, titaniumWall, titaniumWallLarge, plastaniumWall, plastaniumWallLarge, thoriumWall, thoriumWallLarge, door, doorLarge,
|
||||
phaseWall, phaseWallLarge, surgeWall, surgeWallLarge, mender, mendProjector, overdriveProjector, largeOverdriveProjector, forceProjector, shockMine,
|
||||
phaseWall, phaseWallLarge, surgeWall, surgeWallLarge, mender, mendProjector, overdriveProjector, overdriveDome, forceProjector, shockMine,
|
||||
scrapWall, scrapWallLarge, scrapWallHuge, scrapWallGigantic, thruster, //ok, these names are getting ridiculous, but at least I don't have humongous walls yet
|
||||
|
||||
//transport
|
||||
@ -855,8 +855,7 @@ public class Blocks implements ContentList{
|
||||
consumes.item(Items.phasefabric).boost();
|
||||
}};
|
||||
|
||||
//TODO better name
|
||||
largeOverdriveProjector = new OverdriveProjector("large-overdrive-projector"){{
|
||||
overdriveDome = new OverdriveProjector("overdrive-dome"){{
|
||||
requirements(Category.effect, with(Items.lead, 200, Items.titanium, 130, Items.silicon, 130, Items.plastanium, 80, Items.surgealloy, 120));
|
||||
consumes.power(10f);
|
||||
size = 3;
|
||||
@ -913,7 +912,6 @@ public class Blocks implements ContentList{
|
||||
health = 75;
|
||||
speed = 3f / 60f;
|
||||
itemCapacity = 10;
|
||||
displayedSpeed = 30f;
|
||||
}};
|
||||
|
||||
armoredConveyor = new ArmoredConveyor("armored-conveyor"){{
|
||||
@ -1485,6 +1483,21 @@ public class Blocks implements ContentList{
|
||||
shootSound = Sounds.spark;
|
||||
}};
|
||||
|
||||
parallax = new TractorBeamTurret("parallax"){{
|
||||
requirements(Category.turret, with(Items.silicon, 120, Items.titanium, 90, Items.graphite, 30));
|
||||
|
||||
hasPower = true;
|
||||
size = 2;
|
||||
force = 2.5f;
|
||||
scaledForce = 5f;
|
||||
range = 170f;
|
||||
damage = 0.08f;
|
||||
health = 160 * size * size;
|
||||
rotateSpeed = 10;
|
||||
|
||||
consumes.power(3f);
|
||||
}};
|
||||
|
||||
swarmer = new ItemTurret("swarmer"){{
|
||||
requirements(Category.turret, with(Items.graphite, 35, Items.titanium, 35, Items.plastanium, 45, Items.silicon, 30));
|
||||
ammo(
|
||||
@ -1528,6 +1541,18 @@ public class Blocks implements ContentList{
|
||||
shootSound = Sounds.shootBig;
|
||||
}};
|
||||
|
||||
segment = new PointDefenseTurret("segment"){{
|
||||
requirements(Category.turret, with(Items.silicon, 130, Items.thorium, 80, Items.phasefabric, 50));
|
||||
|
||||
hasPower = true;
|
||||
consumes.power(3f);
|
||||
size = 2;
|
||||
shootLength = 5f;
|
||||
bulletDamage = 12f;
|
||||
reloadTime = 25f;
|
||||
health = 190 * size * size;
|
||||
}};
|
||||
|
||||
fuse = new ItemTurret("fuse"){{
|
||||
requirements(Category.turret, with(Items.copper, 225, Items.graphite, 225, Items.thorium, 100));
|
||||
|
||||
@ -1657,33 +1682,6 @@ public class Blocks implements ContentList{
|
||||
consumes.add(new ConsumeLiquidFilter(liquid -> liquid.temperature <= 0.5f && liquid.flammability < 0.1f, 0.5f)).update(false);
|
||||
}};
|
||||
|
||||
segment = new PointDefenseTurret("segment"){{
|
||||
requirements(Category.turret, with(Items.silicon, 80, Items.thorium, 80, Items.surgealloy, 50));
|
||||
|
||||
hasPower = true;
|
||||
consumes.power(3f);
|
||||
size = 2;
|
||||
shootLength = 5f;
|
||||
bulletDamage = 12f;
|
||||
reloadTime = 25f;
|
||||
health = 190 * size * size;
|
||||
}};
|
||||
|
||||
parallax = new TractorBeamTurret("parallax"){{
|
||||
requirements(Category.turret, with(Items.silicon, 120, Items.titanium, 90));
|
||||
|
||||
hasPower = true;
|
||||
size = 2;
|
||||
force = 2.5f;
|
||||
scaledForce = 5f;
|
||||
range = 170f;
|
||||
damage = 0.08f;
|
||||
health = 160 * size * size;
|
||||
rotateSpeed = 10;
|
||||
|
||||
consumes.power(3f);
|
||||
}};
|
||||
|
||||
//endregion
|
||||
//region units
|
||||
|
||||
@ -1728,7 +1726,7 @@ public class Blocks implements ContentList{
|
||||
constructTime = 60f * 10f;
|
||||
|
||||
upgrades = new UnitType[][]{
|
||||
{UnitTypes.nova, UnitTypes.quasar},
|
||||
{UnitTypes.nova, UnitTypes.pulsar},
|
||||
{UnitTypes.dagger, UnitTypes.mace},
|
||||
{UnitTypes.crawler, UnitTypes.atrax},
|
||||
{UnitTypes.flare, UnitTypes.horizon},
|
||||
@ -1751,7 +1749,7 @@ public class Blocks implements ContentList{
|
||||
{UnitTypes.mace, UnitTypes.fortress},
|
||||
{UnitTypes.poly, UnitTypes.mega},
|
||||
{UnitTypes.minke, UnitTypes.bryde},
|
||||
{UnitTypes.quasar, UnitTypes.pulsar},
|
||||
{UnitTypes.pulsar, UnitTypes.quasar},
|
||||
{UnitTypes.atrax, UnitTypes.spiroct},
|
||||
};
|
||||
}};
|
||||
|
@ -30,9 +30,6 @@ public class TechTree implements ContentList{
|
||||
node(junction, () -> {
|
||||
node(router, () -> {
|
||||
node(launchPad, () -> {
|
||||
node(launchPadLarge, () -> {
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
node(distributor);
|
||||
@ -58,12 +55,16 @@ public class TechTree implements ContentList{
|
||||
});
|
||||
});
|
||||
|
||||
node(plastaniumConveyor, () -> {
|
||||
node(payloadConveyor, () -> {
|
||||
node(payloadRouter, () -> {
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
node(armoredConveyor, () -> {
|
||||
node(plastaniumConveyor, () -> {
|
||||
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
@ -102,7 +103,11 @@ public class TechTree implements ContentList{
|
||||
node(scorch, () -> {
|
||||
node(arc, () -> {
|
||||
node(wave, () -> {
|
||||
node(parallax, () -> {
|
||||
node(segment, () -> {
|
||||
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
node(lancer, () -> {
|
||||
@ -207,11 +212,13 @@ public class TechTree implements ContentList{
|
||||
|
||||
node(sporePress, () -> {
|
||||
node(coalCentrifuge, () -> {
|
||||
node(multiPress, () -> {
|
||||
node(siliconCrucible, () -> {
|
||||
|
||||
});
|
||||
});
|
||||
});
|
||||
node(multiPress, () -> {
|
||||
|
||||
});
|
||||
|
||||
node(plastaniumCompressor, () -> {
|
||||
node(phaseWeaver, () -> {
|
||||
@ -229,7 +236,9 @@ public class TechTree implements ContentList{
|
||||
|
||||
node(separator, () -> {
|
||||
node(pulverizer, () -> {
|
||||
node(disassembler, () -> {
|
||||
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@ -262,7 +271,9 @@ public class TechTree implements ContentList{
|
||||
node(mendProjector, () -> {
|
||||
node(forceProjector, () -> {
|
||||
node(overdriveProjector, () -> {
|
||||
node(overdriveDome, () -> {
|
||||
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
@ -293,6 +304,23 @@ public class TechTree implements ContentList{
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
node(groundFactory, () -> {
|
||||
node(airFactory, () -> {
|
||||
node(navalFactory, () -> {
|
||||
|
||||
});
|
||||
|
||||
node(additiveReconstructor, () -> {
|
||||
node(multiplicativeReconstructor, () -> {
|
||||
node(exponentialReconstructor, () -> {
|
||||
node(tetrativeReconstructor, () -> {
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
});
|
||||
|
@ -33,7 +33,7 @@ public class ForceProjector extends Block{
|
||||
|
||||
private static ForceProjectorEntity paramEntity;
|
||||
private static final Cons<Shielderc> shieldConsumer = trait -> {
|
||||
if(trait.team() != paramEntity.team() && Intersector.isInsideHexagon(paramEntity.x, paramEntity.y, paramEntity.realRadius() * 2f, trait.x(), trait.y())){
|
||||
if(trait.team() != paramEntity.team && Intersector.isInsideHexagon(paramEntity.x, paramEntity.y, paramEntity.realRadius() * 2f, trait.x(), trait.y())){
|
||||
trait.absorb();
|
||||
Fx.absorb.at(trait);
|
||||
paramEntity.hit = 1f;
|
||||
|
@ -26,7 +26,6 @@ public class StackConveyor extends Block implements Autotiler{
|
||||
|
||||
public float speed = 0f;
|
||||
public boolean splitOut = true;
|
||||
public float displayedSpeed = 30f;
|
||||
public float recharge = 2f;
|
||||
|
||||
public StackConveyor(String name){
|
||||
|