mirror of
https://github.com/Anuken/Mindustry.git
synced 2025-07-13 09:17:28 +07:00
Erekir tech sector requirements
This commit is contained in:
@ -552,6 +552,7 @@ requirement.core = Destroy Enemy Core in {0}
|
||||
requirement.research = Research {0}
|
||||
requirement.produce = Produce {0}
|
||||
requirement.capture = Capture {0}
|
||||
requirement.onplanet = Control Sector On {0}
|
||||
launch.text = Launch
|
||||
research.multiplayer = Only the host can research items.
|
||||
map.multiplayer = Only the host can view sectors.
|
||||
|
@ -23,7 +23,7 @@ public class FlyingAI extends AIController{
|
||||
}
|
||||
|
||||
if(target == null && command() == UnitCommand.attack && state.rules.waves && unit.team == state.rules.defaultTeam){
|
||||
moveTo(getClosestSpawner(), state.rules.dropZoneRadius + 120f);
|
||||
moveTo(getClosestSpawner(), state.rules.dropZoneRadius + 130f);
|
||||
}
|
||||
|
||||
if(command() == UnitCommand.rally){
|
||||
|
@ -2377,7 +2377,7 @@ public class Blocks{
|
||||
|
||||
coreCitadel = new CoreBlock("core-citadel"){{
|
||||
//TODO cost
|
||||
requirements(Category.effect, with(Items.beryllium, 7000, Items.graphite, 7000, Items.tungsten, 5000, Items.carbide, 5000));
|
||||
requirements(Category.effect, with(Items.silicon, 5000, Items.beryllium, 7000, Items.tungsten, 5000, Items.carbide, 5000));
|
||||
|
||||
unitType = UnitTypes.incite;
|
||||
health = 18000;
|
||||
@ -2391,7 +2391,7 @@ public class Blocks{
|
||||
|
||||
coreAcropolis = new CoreBlock("core-acropolis"){{
|
||||
//TODO cost
|
||||
requirements(Category.effect, with(Items.beryllium, 11000, Items.graphite, 11000, Items.tungsten, 9000, Items.carbide, 10000));
|
||||
requirements(Category.effect, with(Items.beryllium, 11000, Items.silicon, 11000, Items.tungsten, 9000, Items.carbide, 10000, Items.oxide, 8000));
|
||||
|
||||
unitType = UnitTypes.emanate;
|
||||
health = 30000;
|
||||
|
@ -103,7 +103,7 @@ public class Bullets{
|
||||
width = height = 13f;
|
||||
collidesTiles = false;
|
||||
splashDamageRadius = 25f * 0.75f;
|
||||
splashDamage = 35f;
|
||||
splashDamage = 40f;
|
||||
status = StatusEffects.burning;
|
||||
statusDuration = 60f * 12f;
|
||||
frontColor = Pal.lightishOrange;
|
||||
@ -268,7 +268,7 @@ public class Bullets{
|
||||
shrinkY = 0f;
|
||||
homingPower = 0.08f;
|
||||
splashDamageRadius = 20f;
|
||||
splashDamage = 20f * 1.5f;
|
||||
splashDamage = 30f * 1.5f;
|
||||
makeFire = true;
|
||||
ammoMultiplier = 5f;
|
||||
hitEffect = Fx.blastExplosion;
|
||||
@ -334,7 +334,7 @@ public class Bullets{
|
||||
|
||||
ammoMultiplier = 5;
|
||||
|
||||
splashDamage = 10f;
|
||||
splashDamage = 12f;
|
||||
splashDamageRadius = 22f;
|
||||
|
||||
makeFire = true;
|
||||
@ -375,8 +375,8 @@ public class Bullets{
|
||||
pierceBuilding = true;
|
||||
knockback = 0.6f;
|
||||
ammoMultiplier = 3;
|
||||
splashDamage = 15f;
|
||||
splashDamageRadius = 24f;
|
||||
splashDamage = 20f;
|
||||
splashDamageRadius = 25f;
|
||||
}};
|
||||
|
||||
fireball = new FireBulletType(1f, 4);
|
||||
|
@ -1,11 +1,16 @@
|
||||
package mindustry.content;
|
||||
|
||||
import arc.struct.*;
|
||||
import mindustry.game.Objectives.*;
|
||||
|
||||
import static mindustry.content.Blocks.*;
|
||||
import static mindustry.content.TechTree.*;
|
||||
|
||||
public class ErekirTechTree{
|
||||
|
||||
public static void load(){
|
||||
Seq<Objective> erekirSector = Seq.with(new OnPlanet(Planets.erekir));
|
||||
|
||||
Planets.erekir.techTree = nodeRoot("erekir", coreBastion, true, () -> {
|
||||
node(duct, () -> {
|
||||
node(ductRouter, () -> {
|
||||
@ -34,7 +39,7 @@ public class ErekirTechTree{
|
||||
});
|
||||
});
|
||||
|
||||
node(constructor, () -> {
|
||||
node(constructor, erekirSector, () -> {
|
||||
node(payloadLoader, () -> {
|
||||
node(payloadUnloader, () -> {
|
||||
node(payloadPropulsionTower, () -> {
|
||||
@ -57,7 +62,7 @@ public class ErekirTechTree{
|
||||
|
||||
node(turbineCondenser, () -> {
|
||||
node(beamNode, () -> {
|
||||
node(ventCondenser, () -> {
|
||||
node(ventCondenser, erekirSector, () -> {
|
||||
node(chemicalCombustionChamber, () -> {
|
||||
node(pyrolysisGenerator, () -> {
|
||||
|
||||
@ -81,7 +86,7 @@ public class ErekirTechTree{
|
||||
|
||||
node(siliconArcFurnace, () -> {
|
||||
node(cliffCrusher, () -> {
|
||||
node(electrolyzer, () -> {
|
||||
node(electrolyzer, erekirSector, () -> {
|
||||
node(oxidationChamber, () -> {
|
||||
node(electricHeater, () -> {
|
||||
node(heatRedirector, () -> {
|
||||
@ -123,16 +128,14 @@ public class ErekirTechTree{
|
||||
//TODO move into turbine condenser?
|
||||
node(plasmaBore, () -> {
|
||||
|
||||
node(largePlasmaBore, () -> {
|
||||
|
||||
});
|
||||
|
||||
node(impactDrill, () -> {
|
||||
node(impactDrill, erekirSector, () -> {
|
||||
node(largePlasmaBore, () -> {
|
||||
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
node(reinforcedConduit, () -> {
|
||||
node(reinforcedConduit, erekirSector, () -> {
|
||||
node(reinforcedPump, () -> {
|
||||
//TODO T2 pump
|
||||
});
|
||||
@ -174,7 +177,6 @@ public class ErekirTechTree{
|
||||
});
|
||||
});
|
||||
|
||||
//TODO requirements for these
|
||||
node(coreCitadel, () -> {
|
||||
node(coreAcropolis, () -> {
|
||||
|
||||
|
@ -68,6 +68,26 @@ public class Objectives{
|
||||
}
|
||||
}
|
||||
|
||||
public static class OnPlanet implements Objective{
|
||||
public Planet planet;
|
||||
|
||||
public OnPlanet(Planet planet){
|
||||
this.planet = planet;
|
||||
}
|
||||
|
||||
protected OnPlanet(){}
|
||||
|
||||
@Override
|
||||
public boolean complete(){
|
||||
return planet.sectors.contains(Sector::hasBase);
|
||||
}
|
||||
|
||||
@Override
|
||||
public String display(){
|
||||
return Core.bundle.format("requirement.onplanet", planet.localizedName);
|
||||
}
|
||||
}
|
||||
|
||||
/** Defines a specific objective for a game. */
|
||||
public interface Objective{
|
||||
|
||||
|
@ -26,7 +26,7 @@ public class PayloadBlock extends Block{
|
||||
update = true;
|
||||
sync = true;
|
||||
group = BlockGroup.payloads;
|
||||
envEnabled |= Env.space;
|
||||
envEnabled |= Env.space | Env.underwater;
|
||||
}
|
||||
|
||||
public static boolean blends(Building build, int direction){
|
||||
|
@ -29,7 +29,7 @@ public class PayloadConveyor extends Block{
|
||||
update = true;
|
||||
outputsPayload = true;
|
||||
noUpdateDisabled = true;
|
||||
envEnabled |= Env.space;
|
||||
envEnabled |= Env.space | Env.underwater;
|
||||
sync = true;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user