Implemented alloy smelter, fixed place crashes for many of the blocks

This commit is contained in:
Anuken
2018-03-27 20:11:47 -04:00
parent 17bc8fd9ed
commit 18d81f6daa
29 changed files with 398 additions and 325 deletions

View File

@@ -56,7 +56,7 @@ public class Recipes {
new Recipe(crafting, CraftingBlocks.smelter, stack(Items.iron, 40)),
new Recipe(crafting, CraftingBlocks.alloysmelter, stack(Items.titanium, 50), stack(Items.steel, 50)),
new Recipe(crafting, CraftingBlocks.powersmelter, stack(Items.steel, 30), stack(Items.iron, 30)),
new Recipe(crafting, CraftingBlocks.extractor, stack(Items.steel, 10), stack(Items.iron, 10)),
new Recipe(crafting, CraftingBlocks.poweralloysmelter, stack(Items.steel, 30), stack(Items.iron, 30)),
new Recipe(crafting, CraftingBlocks.separator, stack(Items.steel, 30), stack(Items.iron, 30)),
new Recipe(crafting, CraftingBlocks.centrifuge, stack(Items.steel, 30), stack(Items.iron, 30)),
new Recipe(crafting, CraftingBlocks.oilRefinery, stack(Items.steel, 15), stack(Items.iron, 15)),
@@ -64,6 +64,7 @@ public class Recipes {
new Recipe(crafting, CraftingBlocks.stoneFormer, stack(Items.steel, 10), stack(Items.iron, 10)),
new Recipe(crafting, CraftingBlocks.plasticFormer, stack(Items.steel, 30), stack(Items.titanium, 15)),
new Recipe(crafting, CraftingBlocks.cryofluidmixer, stack(Items.steel, 30), stack(Items.titanium, 15)),
new Recipe(crafting, CraftingBlocks.melter, stack(Items.steel, 30), stack(Items.titanium, 15)),
new Recipe(crafting, CraftingBlocks.weaponFactory, stack(Items.steel, 60), stack(Items.iron, 60)).setDesktop(),
//new Recipe(production, ProductionBlocks.stonedrill, stack(Item.stone, 12)),
@@ -110,6 +111,7 @@ public class Recipes {
new Recipe(units, UnitBlocks.walkerFactory, stack(Items.steel, 10)),
new Recipe(units, DebugBlocks.itemSource, stack(Items.steel, 10)).setDebug(),
new Recipe(units, DebugBlocks.itemVoid, stack(Items.steel, 10)).setDebug(),
new Recipe(units, DebugBlocks.powerVoid, stack(Items.steel, 10)).setDebug(),
new Recipe(units, DebugBlocks.powerInfinite, stack(Items.steel, 10), stack(Items.densealloy, 5)).setDebug()
);

View File

@@ -28,15 +28,27 @@ public class CraftingBlocks {
craftTime = 25f;
}},
powersmelter = new PowerSmelter("powersmelter") {{
poweralloysmelter = new PowerSmelter("poweralloysmelter") {{
health = 90;
craftEffect = Fx.smeltsmoke;
inputs = new ItemStack[]{new ItemStack(Items.titanium, 4), new ItemStack(Items.thorium, 4)};
result = Items.densealloy;
powerUse = 0.3f;
burnDuration = 45f;
craftTime = 25f;
size = 2;
}},
powersmelter = new PowerSmelter("powersmelter") {{
health = 90;
inputs = new ItemStack[]{new ItemStack(Items.coal, 1), new ItemStack(Items.iron, 1)};
result = Items.densealloy;
burnDuration = 45f;
powerUse = 0.1f;
craftTime = 25f;
size = 2;
}},
cryofluidmixer = new LiquidMixer("cryofluidmixer") {{
health = 200;
inputLiquid = Liquids.water;
@@ -48,23 +60,22 @@ public class CraftingBlocks {
size = 2;
}},
//TODO implement melter
melter = new LiquidMixer("melter") {{
melter = new PowerCrafter("melter") {{
health = 200;
inputLiquid = Liquids.water;
outputLiquid = Liquids.cryofluid;
inputItem = Items.titanium;
liquidPerItem = 50f;
outputLiquid = Liquids.lava;
outputLiquidAmount = 0.05f;
input = new ItemStack(Items.stone, 1);
itemCapacity = 50;
craftTime = 10f;
powerUse = 0.1f;
size = 2;
hasLiquids = hasPower = true;
}},
separator = new Separator("separator") {{
liquid = Liquids.water;
item = Items.stone;
results = new Item[]{
null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null,
Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone, Items.stone,
Items.iron, Items.iron, Items.iron, Items.iron,
Items.lead, Items.lead,
@@ -79,16 +90,6 @@ public class CraftingBlocks {
health = 50;
}},
extractor = new GenericCrafter("extractor") {{
inputItem = new ItemStack(Items.stone, 6);
inputLiquid = Liquids.water;
liquidUse = 0.1f;
output = Items.coal;
health = 50;
craftTime = 50;
hasInventory = hasLiquids = true;
}},
centrifuge = new GenericCrafter("centrifuge") {{
inputItem = new ItemStack(Items.stone, 6);
inputLiquid = Liquids.water;

View File

@@ -40,5 +40,19 @@ public class DebugBlocks {
public boolean acceptItem(Item item, Tile tile, Tile source){
return false;
}
},
itemVoid = new Block("itemvoid"){
{
update = solid = true;
}
@Override
public void handleItem(Item item, Tile tile, Tile source) {}
@Override
public boolean acceptItem(Item item, Tile tile, Tile source){
return true;
}
};
}