Skip to content

Commit

Permalink
Mining Hammers and Drills Overhaul (#23)
Browse files Browse the repository at this point in the history
* Refactor jackhammers into a Large Drill

* Implement EV and IV drills

* Implement EV and IV drills

* Continue removing Jackhammer things, and begin on the Mining Hammer

* Complete Mining Hammer, change up ToolRecipeHandler, and add all textures

* Add config for high-tier drills and mining hammers
  • Loading branch information
bruberu authored Jul 8, 2021
1 parent 1ef5746 commit 62cafa7
Show file tree
Hide file tree
Showing 30 changed files with 733 additions and 459 deletions.
4 changes: 2 additions & 2 deletions src/main/java/gregtech/api/GregTechAPI.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ public class GregTechAPI {
public static final BaseCreativeTab TAB_GREGTECH_MATERIALS =
new BaseCreativeTab(GTValues.MODID + ".materials", () -> OreDictUnifier.get(OrePrefix.ingot, Materials.Aluminium), true);
public static final BaseCreativeTab TAB_GREGTECH_ORES =
new BaseCreativeTab(GTValues.MODID + ".ores", () -> MetaItems.JACKHAMMER.getStackForm(), true);
new BaseCreativeTab(GTValues.MODID + ".ores", () -> MetaItems.DRILL_MV.getStackForm(), true);

public static final GTControlledRegistry<ResourceLocation, MetaTileEntity> META_TILE_ENTITY_REGISTRY = new GTControlledRegistry<>(Short.MAX_VALUE);

Expand All @@ -35,4 +35,4 @@ public static <T extends MetaTileEntity> T registerMetaTileEntity(int id, T samp
return sampleMetaTileEntity;
}

}
}
Original file line number Diff line number Diff line change
Expand Up @@ -573,7 +573,7 @@ public static void register() {
public static IngotMaterial VanadiumSteel = new IngotMaterial(348, "vanadium_steel", 0xc0c0c0, METALLIC, 3, of(new MaterialStack(Vanadium, 1), new MaterialStack(Chrome, 1), new MaterialStack(Steel, 7)), EXT2_METAL, null, 7.0F, 3.0f, 1920, 1453);
public static IngotMaterial HSSG = new IngotMaterial(349, "hssg", 0x999900, METALLIC, 3, of(new MaterialStack(TungstenSteel, 5), new MaterialStack(Chrome, 1), new MaterialStack(Molybdenum, 2), new MaterialStack(Vanadium, 1)), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_LONG_ROD | GENERATE_FRAME | GENERATE_SPRING, null, 10.0F, 5.5f, 4000, 4200);
public static IngotMaterial HSSE = new IngotMaterial(350, "hsse", 0x336600, METALLIC, 4, of(new MaterialStack(HSSG, 6), new MaterialStack(Cobalt, 1), new MaterialStack(Manganese, 1), new MaterialStack(Silicon, 1)), EXT2_METAL | GENERATE_RING | GENERATE_ROTOR | GENERATE_SMALL_GEAR | GENERATE_LONG_ROD | GENERATE_FRAME, null, 10.0F, 8.0f, 5120, 5000);
public static IngotMaterial HSSS = new IngotMaterial(351, "hsss", 0x660033, METALLIC, 4, of(new MaterialStack(HSSG, 6), new MaterialStack(Iridium, 2), new MaterialStack(Osmium, 1)), EXT2_METAL | GENERATE_GEAR, null, 15.0F, 7.0f, 3000, 5000);
public static IngotMaterial HSSS = new IngotMaterial(351, "hsss", 0x660033, METALLIC, 4, of(new MaterialStack(HSSG, 6), new MaterialStack(Iridium, 2), new MaterialStack(Osmium, 1)), EXT2_METAL | GENERATE_GEAR | GENERATE_SMALL_GEAR, null, 15.0F, 7.0f, 3000, 5000);
public static IngotMaterial DiamericiumTitanium = new IngotMaterial(352, "diamericium_titanium", 0x755280, METALLIC, 4, of(new MaterialStack(Americium, 2), new MaterialStack(Titanium, 1)), EXT2_METAL, null, 6.0F, 6.0F, 2200, 10400);

/*
Expand Down
8 changes: 8 additions & 0 deletions src/main/java/gregtech/common/ConfigHolder.java
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,14 @@ public static class UnofficialOptions {
@Config.RequiresMcRestart
public boolean registerCrates = true;

@Config.Comment("Should recipes for EV and IV Drills be enabled, which may cause large amounts of lag when used on some low-end devices? Default: true")
@Config.RequiresMcRestart
public boolean registerRecipesForHighTierDrills = true;

@Config.Comment("Should recipes for Mining Hammers be enabled? Default: true")
@Config.RequiresMcRestart
public boolean registerRecipesForMiningHammers = true;

public static class GT5U {

@Config.Comment("Enable an extra ZPM and UV Battery (this also makes the Ultimate Battery harder to make). Default: false")
Expand Down
10 changes: 6 additions & 4 deletions src/main/java/gregtech/common/items/MetaItem2.java
Original file line number Diff line number Diff line change
Expand Up @@ -96,11 +96,13 @@ public void registerSubItems() {
POWER_UNIT_LV = addItem(573, "power_unit.lv").addComponents(ElectricStats.createElectricItem(100000L, GTValues.LV)).setMaxStackSize(8);
POWER_UNIT_MV = addItem(574, "power_unit.mv").addComponents(ElectricStats.createElectricItem(400000L, GTValues.MV)).setMaxStackSize(8);
POWER_UNIT_HV = addItem(575, "power_unit.hv") .addComponents(ElectricStats.createElectricItem(1600000L, GTValues.HV)).setMaxStackSize(8);
JACKHAMMER_BASE = addItem(576, "jackhammer_base").addComponents(ElectricStats.createElectricItem(1600000L, GTValues.HV)).setMaxStackSize(4);
POWER_UNIT_EV = addItem(576, "power_unit.ev") .addComponents(ElectricStats.createElectricItem(6400000L, GTValues.EV)).setMaxStackSize(8);
POWER_UNIT_IV = addItem(577, "power_unit.iv") .addComponents(ElectricStats.createElectricItem(25600000L, GTValues.IV)).setMaxStackSize(8);

NANO_SABER = addItem(577, "nano_saber").addComponents(ElectricStats.createElectricItem(4000000L, GTValues.HV)).addComponents(new NanoSaberBehavior()).setMaxStackSize(1);
ENERGY_FIELD_PROJECTOR = addItem(578, "energy_field_projector").addComponents(ElectricStats.createElectricItem(16000000L, GTValues.EV)).setMaxStackSize(1);
SCANNER = addItem(579, "scanner").addComponents(ElectricStats.createElectricItem(200_000L, GTValues.LV), new ScannerBehavior(50));

NANO_SABER = addItem(578, "nano_saber").addComponents(ElectricStats.createElectricItem(4000000L, GTValues.HV)).addComponents(new NanoSaberBehavior()).setMaxStackSize(1);
ENERGY_FIELD_PROJECTOR = addItem(579, "energy_field_projector").addComponents(ElectricStats.createElectricItem(16000000L, GTValues.EV)).setMaxStackSize(1);
SCANNER = addItem(580, "scanner").addComponents(ElectricStats.createElectricItem(200_000L, GTValues.LV), new ScannerBehavior(50));


INGOT_MIXED_METAL = addItem(432, "ingot.mixed_metal");
Expand Down
7 changes: 5 additions & 2 deletions src/main/java/gregtech/common/items/MetaItems.java
Original file line number Diff line number Diff line change
Expand Up @@ -411,7 +411,8 @@ private MetaItems() {
public static MetaItem<?>.MetaValueItem POWER_UNIT_LV;
public static MetaItem<?>.MetaValueItem POWER_UNIT_MV;
public static MetaItem<?>.MetaValueItem POWER_UNIT_HV;
public static MetaItem<?>.MetaValueItem JACKHAMMER_BASE;
public static MetaItem<?>.MetaValueItem POWER_UNIT_EV;
public static MetaItem<?>.MetaValueItem POWER_UNIT_IV;

public static MetaItem<?>.MetaValueItem NANO_SABER;
public static MetaItem<?>.MetaValueItem ENERGY_FIELD_PROJECTOR;
Expand Down Expand Up @@ -446,13 +447,15 @@ private MetaItems() {
public static ToolMetaItem<?>.MetaToolValueItem DRILL_LV;
public static ToolMetaItem<?>.MetaToolValueItem DRILL_MV;
public static ToolMetaItem<?>.MetaToolValueItem DRILL_HV;
public static ToolMetaItem<?>.MetaToolValueItem DRILL_EV;
public static ToolMetaItem<?>.MetaToolValueItem DRILL_IV;
public static ToolMetaItem<?>.MetaToolValueItem MINING_HAMMER;
public static ToolMetaItem<?>.MetaToolValueItem CHAINSAW_LV;
public static ToolMetaItem<?>.MetaToolValueItem CHAINSAW_MV;
public static ToolMetaItem<?>.MetaToolValueItem CHAINSAW_HV;
public static ToolMetaItem<?>.MetaToolValueItem WRENCH_LV;
public static ToolMetaItem<?>.MetaToolValueItem WRENCH_MV;
public static ToolMetaItem<?>.MetaToolValueItem WRENCH_HV;
public static ToolMetaItem<?>.MetaToolValueItem JACKHAMMER;
public static ToolMetaItem<?>.MetaToolValueItem BUZZSAW;
public static ToolMetaItem<?>.MetaToolValueItem SCREWDRIVER_LV;

Expand Down
28 changes: 18 additions & 10 deletions src/main/java/gregtech/common/items/MetaTool.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package gregtech.common.items;

import gregtech.api.GTValues;
import gregtech.api.items.ToolDictNames;
import gregtech.api.items.metaitem.ElectricStats;
import gregtech.api.items.toolitem.*;
Expand All @@ -11,6 +10,7 @@
import gregtech.api.unification.ore.OrePrefix;
import gregtech.api.unification.stack.UnificationEntry;
import gregtech.common.tools.*;
import gregtech.common.tools.largedrills.ToolDrills;
import net.minecraft.init.Enchantments;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
Expand Down Expand Up @@ -110,21 +110,34 @@ public void registerSubItems() {
.setFullRepairCost(3)
.addOreDict(ToolDictNames.craftingToolBlade);

DRILL_LV = addItem(23, "tool.drill.lv").setToolStats(new ToolDrillLV())
DRILL_LV = addItem(23, "tool.drill.lv").setToolStats(new ToolDrills.ToolDrillLV())
.setFullRepairCost(4)
.addOreDict(ToolDictNames.craftingToolMiningDrill)
.addComponents(ElectricStats.createElectricItem(100000L, 1L));

DRILL_MV = addItem(24, "tool.drill.mv").setToolStats(new ToolDrillMV())
DRILL_MV = addItem(24, "tool.drill.mv").setToolStats(new ToolDrills.ToolDrillMV())
.setFullRepairCost(4)
.addOreDict(ToolDictNames.craftingToolMiningDrill)
.addComponents(ElectricStats.createElectricItem(400000L, 2L));

DRILL_HV = addItem(25, "tool.drill.hv").setToolStats(new ToolDrillHV())
DRILL_HV = addItem(25, "tool.drill.hv").setToolStats(new ToolDrills.ToolDrillHV())
.setFullRepairCost(4)
.addOreDict(ToolDictNames.craftingToolMiningDrill)
.addComponents(ElectricStats.createElectricItem(1600000L, 3L));

DRILL_EV = addItem(38, "tool.drill.ev").setToolStats(new ToolDrills.ToolDrillEV())
.setFullRepairCost(4)
.addOreDict(ToolDictNames.craftingToolMiningDrill)
.addComponents(ElectricStats.createElectricItem(6400000L, 4L));

DRILL_IV = addItem(39, "tool.drill.iv").setToolStats(new ToolDrills.ToolDrillIV())
.setFullRepairCost(4)
.addOreDict(ToolDictNames.craftingToolMiningDrill)
.addComponents(ElectricStats.createElectricItem(25600000L, 5L));

MINING_HAMMER = addItem(35, "tool.mining_hammer").setToolStats(new ToolMiningHammer())
.setFullRepairCost(14);

CHAINSAW_LV = addItem(26, "tool.chainsaw.lv").setToolStats(new ToolChainsawLV())
.setFullRepairCost(4)
.addOreDict(ToolDictNames.craftingToolSaw)
Expand Down Expand Up @@ -164,11 +177,6 @@ public void registerSubItems() {
.addComponents(new ScrewdriverItemStat())
.addComponents(ElectricStats.createElectricItem(100000L, 1L));

JACKHAMMER = addItem(32, "tool.jackhammer").setToolStats(new ToolJackHammer())
.setFullRepairCost(5)
.addOreDict(ToolDictNames.craftingToolJackHammer)
.addComponents(ElectricStats.createElectricItem(1600000L, GTValues.HV));

BUZZSAW = addItem(33, "tool.buzzsaw").setToolStats(new ToolBuzzSaw())
.setFullRepairCost(4)
.addOreDict(ToolDictNames.craftingToolSaw)
Expand Down Expand Up @@ -204,7 +212,7 @@ public void registerRecipes() {
'S', new UnificationEntry(OrePrefix.stick, Materials.Wood));
}

// for future use: in-game durabilty is 3 per use, maxDurability shown in game is multiplied by 8
// for future use: in-game durability is 3 per use, maxDurability shown in game is multiplied by 8
Function<ToolMetaItem.MetaToolValueItem, ItemStack> woodenToolDataApplier = item ->
item.setToolData(item.getStackForm(), Materials.Wood, 48, 1, 4.0f, 1.0f);

Expand Down
53 changes: 0 additions & 53 deletions src/main/java/gregtech/common/tools/ToolDrillHV.java

This file was deleted.

65 changes: 0 additions & 65 deletions src/main/java/gregtech/common/tools/ToolDrillLV.java

This file was deleted.

55 changes: 0 additions & 55 deletions src/main/java/gregtech/common/tools/ToolDrillMV.java

This file was deleted.

Loading

0 comments on commit 62cafa7

Please sign in to comment.