This commit is contained in:
Anuken 2022-01-20 23:06:04 -05:00
parent 8fc7aff7ef
commit b3d4dc06d4
6 changed files with 52 additions and 21 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.8 KiB

View File

@ -490,7 +490,7 @@ public class Blocks{
}}; }};
stoneWall = new StaticWall("stone-wall"){{ stoneWall = new StaticWall("stone-wall"){{
attributes.set(Attribute.silicate, 1f); attributes.set(Attribute.sand, 1f);
}}; }};
sporeWall = new StaticWall("spore-wall"){{ sporeWall = new StaticWall("spore-wall"){{
@ -510,37 +510,37 @@ public class Blocks{
duneWall = new StaticWall("dune-wall"){{ duneWall = new StaticWall("dune-wall"){{
basalt.asFloor().wall = darksandWater.asFloor().wall = darksandTaintedWater.asFloor().wall = this; basalt.asFloor().wall = darksandWater.asFloor().wall = darksandTaintedWater.asFloor().wall = this;
attributes.set(Attribute.silicate, 2f); attributes.set(Attribute.sand, 2f);
}}; }};
regolithWall = new StaticWall("regolith-wall"){{ regolithWall = new StaticWall("regolith-wall"){{
regolith.asFloor().wall = this; regolith.asFloor().wall = this;
attributes.set(Attribute.silicate, 1f); attributes.set(Attribute.sand, 1f);
}}; }};
yellowStoneWall = new StaticWall("yellow-stone-wall"){{ yellowStoneWall = new StaticWall("yellow-stone-wall"){{
yellowStone.asFloor().wall = slag.asFloor().wall = yellowStonePlates.asFloor().wall = this; yellowStone.asFloor().wall = slag.asFloor().wall = yellowStonePlates.asFloor().wall = this;
attributes.set(Attribute.silicate, 1.5f); attributes.set(Attribute.sand, 1.5f);
}}; }};
rhyoliteWall = new StaticWall("rhyolite-wall"){{ rhyoliteWall = new StaticWall("rhyolite-wall"){{
rhyolite.asFloor().wall = rhyoliteCrater.asFloor().wall = roughRhyolite.asFloor().wall = this; rhyolite.asFloor().wall = rhyoliteCrater.asFloor().wall = roughRhyolite.asFloor().wall = this;
attributes.set(Attribute.silicate, 1f); attributes.set(Attribute.sand, 1f);
}}; }};
carbonWall = new StaticWall("carbon-wall"){{ carbonWall = new StaticWall("carbon-wall"){{
carbonStone.asFloor().wall = this; carbonStone.asFloor().wall = this;
attributes.set(Attribute.silicate, 0.7f); attributes.set(Attribute.sand, 0.7f);
}}; }};
ferricStoneWall = new StaticWall("ferric-stone-wall"){{ ferricStoneWall = new StaticWall("ferric-stone-wall"){{
ferricStone.asFloor().wall = this; ferricStone.asFloor().wall = this;
attributes.set(Attribute.silicate, 0.5f); attributes.set(Attribute.sand, 0.5f);
}}; }};
beryllicStoneWall = new StaticWall("beryllic-stone-wall"){{ beryllicStoneWall = new StaticWall("beryllic-stone-wall"){{
beryllicStone.asFloor().wall = this; beryllicStone.asFloor().wall = this;
attributes.set(Attribute.silicate, 1.2f); attributes.set(Attribute.sand, 1.2f);
}}; }};
arkyicWall = new StaticWall("arkyic-wall"){{ arkyicWall = new StaticWall("arkyic-wall"){{
@ -559,7 +559,7 @@ public class Blocks{
sandWall = new StaticWall("sand-wall"){{ sandWall = new StaticWall("sand-wall"){{
sandWater.asFloor().wall = water.asFloor().wall = deepwater.asFloor().wall = this; sandWater.asFloor().wall = water.asFloor().wall = deepwater.asFloor().wall = this;
attributes.set(Attribute.silicate, 2f); attributes.set(Attribute.sand, 2f);
}}; }};
saltWall = new StaticWall("salt-wall"); saltWall = new StaticWall("salt-wall");
@ -2345,7 +2345,7 @@ public class Blocks{
drillTime = 110f; drillTime = 110f;
size = 2; size = 2;
attribute = Attribute.silicate; attribute = Attribute.sand;
output = Items.sand; output = Items.sand;
}}; }};
@ -2469,7 +2469,7 @@ public class Blocks{
size = 4; size = 4;
thrusterLength = 34/4f; thrusterLength = 34/4f;
unitCapModifier = 16; unitCapModifier = 8;
researchCostMultiplier = 0.07f; researchCostMultiplier = 0.07f;
}}; }};
@ -2483,7 +2483,7 @@ public class Blocks{
size = 5; size = 5;
thrusterLength = 40/4f; thrusterLength = 40/4f;
unitCapModifier = 24; unitCapModifier = 16;
researchCostMultiplier = 0.11f; researchCostMultiplier = 0.11f;
}}; }};
@ -2497,7 +2497,7 @@ public class Blocks{
size = 6; size = 6;
thrusterLength = 48/4f; thrusterLength = 48/4f;
unitCapModifier = 32; unitCapModifier = 24;
researchCostMultiplier = 0.11f; researchCostMultiplier = 0.11f;
}}; }};
@ -3206,6 +3206,34 @@ public class Blocks{
size = 4; size = 4;
}}; }};
/*
afflict = new ContinuousTurret("afflict"){{
requirements(Category.turret, with(Items.carbide, 250, Items.surgeAlloy, 160, Items.silicon, 300, Items.beryllium, 400));
//TODO bullet.
shootShake = 4f;
recoilAmount = 1f;
reloadTime = 60f * 3f;
shootLength = 7f;
rotateSpeed = 2.5f;
coolantUsage = 30f / 60f;
coolantOverride = Liquids.water;
draw = new DrawTurret("reinforced-");
restitution = 0.02f;
shootWarmupSpeed = 0.08f;
outlineColor = Pal.darkOutline;
acceptCoolant = false;
scaledHealth = 300;
range = 390f;
size = 4;
}};*/
//endregion //endregion
//region units //region units

View File

@ -13,9 +13,9 @@ public class ErekirTechTree{
Seq<Objective> erekirSector = Seq.with(new OnPlanet(Planets.erekir)); Seq<Objective> erekirSector = Seq.with(new OnPlanet(Planets.erekir));
var costMultipliers = new ObjectFloatMap<Item>(); var costMultipliers = new ObjectFloatMap<Item>();
costMultipliers.put(Items.silicon, 6); costMultipliers.put(Items.silicon, 7);
costMultipliers.put(Items.surgeAlloy, 4); costMultipliers.put(Items.surgeAlloy, 4);
costMultipliers.put(Items.thorium, 7); costMultipliers.put(Items.thorium, 8);
costMultipliers.put(Items.graphite, 6); costMultipliers.put(Items.graphite, 6);
Planets.erekir.techTree = nodeRoot("erekir", coreBastion, true, () -> { Planets.erekir.techTree = nodeRoot("erekir", coreBastion, true, () -> {

View File

@ -141,6 +141,9 @@ public class ErekirPlanetGenerator extends PlanetGenerator{
//arkycite //arkycite
//TODO arkycite biome //TODO arkycite biome
//TODO ice biome //TODO ice biome
//TODO arkycite is too disruptive to terrain, needs certain conditions and sub-biomes.
if(false)
pass((x, y) -> { pass((x, y) -> {
if(nearWall(x, y)) return; if(nearWall(x, y)) return;
@ -187,7 +190,7 @@ public class ErekirPlanetGenerator extends PlanetGenerator{
if(block == Blocks.air) block = Blocks.yellowStoneWall; if(block == Blocks.air) block = Blocks.yellowStoneWall;
} }
if(floor == Blocks.yellowStonePlates && noise(x + 78 + y, y, 3, 0.8f, 8f, 1f) > 0.38f){ if(floor == Blocks.yellowStonePlates && noise(x + 78 + y, y, 3, 0.8f, 7f, 1f) > 0.41f){
floor = Blocks.yellowStone; floor = Blocks.yellowStone;
} }
}); });
@ -249,7 +252,7 @@ public class ErekirPlanetGenerator extends PlanetGenerator{
//vents //vents
outer: outer:
for(Tile tile : tiles){ for(Tile tile : tiles){
if(floor == Blocks.rhyolite && rand.chance(0.0015)){ if(floor == Blocks.rhyolite && rand.chance(0.0016)){
int radius = 2; int radius = 2;
for(int x = -radius; x <= radius; x++){ for(int x = -radius; x <= radius; x++){
for(int y = -radius; y <= radius; y++){ for(int y = -radius; y <= radius; y++){

View File

@ -34,7 +34,7 @@ public class WallCrafter extends Block{
public float updateEffectChance = 0.02f; public float updateEffectChance = 0.02f;
public float rotateSpeed = 2f; public float rotateSpeed = 2f;
/** Attribute to check for wall output. */ /** Attribute to check for wall output. */
public Attribute attribute = Attribute.silicate; public Attribute attribute = Attribute.sand;
public Item output = Items.sand; public Item output = Items.sand;

View File

@ -7,8 +7,8 @@ public class Attribute{
public static Attribute[] all = {}; public static Attribute[] all = {};
public static ObjectMap<String, Attribute> map = new ObjectMap<>(); public static ObjectMap<String, Attribute> map = new ObjectMap<>();
public static final Attribute
/** Heat content. Used for thermal generator yield. */ /** Heat content. Used for thermal generator yield. */
public static final Attribute
heat = add("heat"), heat = add("heat"),
/** Spore content. Used for cultivator yield. */ /** Spore content. Used for cultivator yield. */
spores = add("spores"), spores = add("spores"),
@ -18,8 +18,8 @@ public class Attribute{
oil = add("oil"), oil = add("oil"),
/** Light coverage. Negative values decrease solar panel efficiency. */ /** Light coverage. Negative values decrease solar panel efficiency. */
light = add("light"), light = add("light"),
/** Silicate content. Used for sand extraction. */ /** Used for sand extraction. */
silicate = add("silicate"), sand = add("sand"),
/** Used for erekir vents only. */ /** Used for erekir vents only. */
vent = add("vent"); vent = add("vent");