Moved thorium into the 'next tier' on Erekir
This commit is contained in:
Binary file not shown.
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 3.5 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 643 B After Width: | Height: | Size: 628 B |
Binary file not shown.
|
Before Width: | Height: | Size: 3.2 KiB After Width: | Height: | Size: 3.0 KiB |
@@ -2298,11 +2298,12 @@ public class Blocks{
|
|||||||
//TODO requirements
|
//TODO requirements
|
||||||
requirements(Category.production, with(Items.graphite, 30, Items.oxide, 30, Items.beryllium, 20, Items.carbide, 30));
|
requirements(Category.production, with(Items.graphite, 30, Items.oxide, 30, Items.beryllium, 20, Items.carbide, 30));
|
||||||
consumes.power(0.8f);
|
consumes.power(0.8f);
|
||||||
drillTime = 100f;
|
drillTime = 120f;
|
||||||
tier = 5;
|
tier = 5;
|
||||||
size = 3;
|
size = 3;
|
||||||
range = 6;
|
range = 6;
|
||||||
laserWidth = 0.7f;
|
laserWidth = 0.7f;
|
||||||
|
itemCapacity = 20;
|
||||||
|
|
||||||
consumes.liquid(Liquids.hydrogen, 0.5f / 60f).boost();
|
consumes.liquid(Liquids.hydrogen, 0.5f / 60f).boost();
|
||||||
}};
|
}};
|
||||||
@@ -2317,6 +2318,8 @@ public class Blocks{
|
|||||||
drillEffect = new MultiEffect(Fx.mineImpact, Fx.drillSteam, Fx.mineImpactWave.wrap(Pal.redLight, 40f));
|
drillEffect = new MultiEffect(Fx.mineImpact, Fx.drillSteam, Fx.mineImpactWave.wrap(Pal.redLight, 40f));
|
||||||
shake = 4f;
|
shake = 4f;
|
||||||
itemCapacity = 40;
|
itemCapacity = 40;
|
||||||
|
//can't mine thorium for balance reasons, needs better drill
|
||||||
|
blockedItem = Items.thorium;
|
||||||
|
|
||||||
consumes.power(3f);
|
consumes.power(3f);
|
||||||
consumes.liquid(Liquids.water, 0.2f);
|
consumes.liquid(Liquids.water, 0.2f);
|
||||||
|
|||||||
@@ -103,10 +103,8 @@ public class Planets{
|
|||||||
});
|
});
|
||||||
|
|
||||||
//define launch candidates after all planets initialize
|
//define launch candidates after all planets initialize
|
||||||
serpulo.launchCandidates.add(gier);
|
//TODO how will it use the nucleus???
|
||||||
|
serpulo.launchCandidates.add(erekir);
|
||||||
//TODO WHAT IF THERE'S NO TRANSITION??
|
|
||||||
gier.launchCandidates.add(erekir);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private static Planet makeAsteroid(String name, Planet parent, Block base, Block tint, float tintThresh, int pieces, float scale, Cons<AsteroidGenerator> cgen){
|
private static Planet makeAsteroid(String name, Planet parent, Block base, Block tint, float tintThresh, int pieces, float scale, Cons<AsteroidGenerator> cgen){
|
||||||
|
|||||||
@@ -147,6 +147,9 @@ public class AsteroidGenerator extends BlankPlanetGenerator{
|
|||||||
state.rules.borderDarkness = false;
|
state.rules.borderDarkness = false;
|
||||||
state.rules.environment = Env.space;
|
state.rules.environment = Env.space;
|
||||||
state.rules.waves = true;
|
state.rules.waves = true;
|
||||||
|
|
||||||
|
//TODO ???
|
||||||
|
//state.rules.hiddenBuildItems.addAll(Items.plastanium, Items.surgeAlloy);
|
||||||
//TODO maybe make this on by default everywhere
|
//TODO maybe make this on by default everywhere
|
||||||
state.rules.showSpawns = true;
|
state.rules.showSpawns = true;
|
||||||
//TODO better wavegen, do it by hand even
|
//TODO better wavegen, do it by hand even
|
||||||
|
|||||||
@@ -37,6 +37,8 @@ public class Drill extends Block{
|
|||||||
public float liquidBoostIntensity = 1.6f;
|
public float liquidBoostIntensity = 1.6f;
|
||||||
/** Speed at which the drill speeds up. */
|
/** Speed at which the drill speeds up. */
|
||||||
public float warmupSpeed = 0.015f;
|
public float warmupSpeed = 0.015f;
|
||||||
|
/** Special exemption item that this drill can't mine. */
|
||||||
|
public @Nullable Item blockedItem;
|
||||||
|
|
||||||
//return variables for countOre
|
//return variables for countOre
|
||||||
protected @Nullable Item returnItem;
|
protected @Nullable Item returnItem;
|
||||||
@@ -146,7 +148,7 @@ public class Drill extends Block{
|
|||||||
Draw.color();
|
Draw.color();
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
Tile to = tile.getLinkedTilesAs(this, tempTiles).find(t -> t.drop() != null && t.drop().hardness > tier);
|
Tile to = tile.getLinkedTilesAs(this, tempTiles).find(t -> t.drop() != null && t.drop().hardness > tier && t.drop() != blockedItem);
|
||||||
Item item = to == null ? null : to.drop();
|
Item item = to == null ? null : to.drop();
|
||||||
if(item != null){
|
if(item != null){
|
||||||
drawPlaceText(Core.bundle.get("bar.drilltierreq"), x, y, valid);
|
drawPlaceText(Core.bundle.get("bar.drilltierreq"), x, y, valid);
|
||||||
@@ -158,7 +160,7 @@ public class Drill extends Block{
|
|||||||
public void setStats(){
|
public void setStats(){
|
||||||
super.setStats();
|
super.setStats();
|
||||||
|
|
||||||
stats.add(Stat.drillTier, StatValues.blocks(b -> b instanceof Floor f && f.itemDrop != null && f.itemDrop.hardness <= tier));
|
stats.add(Stat.drillTier, StatValues.blocks(b -> b instanceof Floor f && f.itemDrop != null && f.itemDrop.hardness <= tier && f.itemDrop != blockedItem));
|
||||||
|
|
||||||
stats.add(Stat.drillSpeed, 60f / drillTime * size * size, StatUnit.itemsSecond);
|
stats.add(Stat.drillSpeed, 60f / drillTime * size * size, StatUnit.itemsSecond);
|
||||||
if(liquidBoostIntensity != 1){
|
if(liquidBoostIntensity != 1){
|
||||||
@@ -207,7 +209,7 @@ public class Drill extends Block{
|
|||||||
public boolean canMine(Tile tile){
|
public boolean canMine(Tile tile){
|
||||||
if(tile == null || tile.block().isStatic()) return false;
|
if(tile == null || tile.block().isStatic()) return false;
|
||||||
Item drops = tile.drop();
|
Item drops = tile.drop();
|
||||||
return drops != null && drops.hardness <= tier;
|
return drops != null && drops.hardness <= tier && drops != blockedItem;
|
||||||
}
|
}
|
||||||
|
|
||||||
public class DrillBuild extends Building{
|
public class DrillBuild extends Building{
|
||||||
|
|||||||
Reference in New Issue
Block a user