Skip to content

Commit

Permalink
Add Geiger Unit Module for the Meka Suit (#7150)
Browse files Browse the repository at this point in the history
  • Loading branch information
beholderface committed May 1, 2021
1 parent 747d861 commit 883c121
Show file tree
Hide file tree
Showing 13 changed files with 79 additions and 3 deletions.
6 changes: 4 additions & 2 deletions src/datagen/generated/mekanism/.cache/cache
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ d5bd6c407c9250a90e22e1f2c8805738b3830abf assets/mekanism/blockstates/lithium.jso
c1be0ed56a542f711719367cf1e508f10063c695 assets/mekanism/blockstates/sulfuric_acid.json
f5e3eb6799a15d0b72969547614dfc51dac53419 assets/mekanism/blockstates/tin_ore.json
246c1904e7699b01a3a20f2a2b79b35b5d99aec9 assets/mekanism/blockstates/uranium_ore.json
c54db2c07a4c96924eb1794b98eabfde09309f60 assets/mekanism/lang/en_ud.json
1b9839f0d14bc1d1ad9db7997f5359dd4864997e assets/mekanism/lang/en_us.json
a3272d5e36d04b3bb97020403d5f82f6b91efcaf assets/mekanism/lang/en_ud.json
669241a4eb4f38b355a230bff94b6cdb3047157e assets/mekanism/lang/en_us.json
beea3be5a8af802be66d456a7a648678bede0f02 assets/mekanism/models/block/brine.json
beea3be5a8af802be66d456a7a648678bede0f02 assets/mekanism/models/block/chlorine.json
beea3be5a8af802be66d456a7a648678bede0f02 assets/mekanism/models/block/ethene.json
Expand Down Expand Up @@ -106,6 +106,7 @@ b5b9a689ecf04fcc1b28e02f82e2d38fc5499da6 assets/mekanism/models/item/module_dosi
f4b051379d68d6b7d4998f21ecf8b311d9c91b3a assets/mekanism/models/item/module_energy_unit.json
19d43d726df4600be44ceb3bb5ba5a8456d07fd9 assets/mekanism/models/item/module_excavation_escalation_unit.json
e9577c89d42121bae7911605af43a62b9329521d assets/mekanism/models/item/module_farming_unit.json
a9080b61443caecc37570f218c5447de3e5c4937 assets/mekanism/models/item/module_geiger_unit.json
711ec5feb5afa25489a53f20e761737a4e1377ff assets/mekanism/models/item/module_gravitational_modulating_unit.json
3af7de6b9219e376be64eb0ec5947258371d98a3 assets/mekanism/models/item/module_hydraulic_propulsion_unit.json
150649028f2838bb3343fa986282b1ac83aca8df assets/mekanism/models/item/module_inhalation_purification_unit.json
Expand Down Expand Up @@ -1795,6 +1796,7 @@ f89b32332f949f742b43cd34b9f316f4e895c056 data/mekanism/recipes/module_dosimeter_
83221bff9f0a46603c1d8a324c247250aa6642a1 data/mekanism/recipes/module_energy_unit.json
7749e654c7d5394075b3815a5d3788770d8b77b0 data/mekanism/recipes/module_excavation_escalation_unit.json
db6e7187e1338af1ebc3dc1daca6b8cfbb5b88ad data/mekanism/recipes/module_farming_unit.json
320b00b37ae53a2880ad41ea25bb8ae6a30e4fc7 data/mekanism/recipes/module_geiger_unit.json
e2cb7d251791cb5011f8b2f604000d294a0ce931 data/mekanism/recipes/module_gravitational_modulating_unit.json
73fc495aa6e08483075a888c2de1a93ce9fb49c2 data/mekanism/recipes/module_hydraulic_propulsion_unit.json
2e096568b835bf29266c99def6cf7d24da5296bd data/mekanism/recipes/module_inhalation_purification_unit.json
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -482,6 +482,7 @@
"description.mekanism.fluorite_ore": "\u02D9\u1D77u\u1D09ss\u01DD\u0254o\u0279d \u026Fn\u1D09u\u0250\u0279\u2229 \u0279o\u025F \uA781\u0250\u0254\u1D09\u026F\u01DD\u0265\u0254 \uA781\u0250\u1D09\u0287u\u01DDss\u01DD u\u0250 'p\u1D09\u0254\u2C6F \u0254\u1D09\u0279on\uA781\u025Fo\u0279p\u028EH o\u0287u\u1D09 p\u01DDss\u01DD\u0254o\u0279d \u01DDq u\u0250\u0254 s\uA781\u0250\u0287s\u028E\u0279\u0254 \u01DD\u0265\u27D8 \u02D9\u01DD\u0254\u0250\u025F\u0279ns s,p\uA781\u0279o\u028D \u01DD\u0265\u0287 \u0279\u01DDpun d\u01DD\u01DDp \u028E\uA781\u01DD\u028C\u1D09\u0287\u0250\uA781\u01DD\u0279 puno\u025F \uA781\u0250\u0279\u01DDu\u1D09\u026F \u2C6F",
"description.mekanism.formulaic_assemblicator": "\u02D9\u0265\u0254u\u01DDq \u1D77u\u1D09\u0287\u025F\u0250\u0279\u0254 p\u01DD\u0254u\u0250\u028Cp\u0250 u\u0250 s\u0250 s\u01DD\uA781qno\u15E1 \u02D9s\u0250\uA781n\u026F\u0279o\u2132 \u1D77u\u1D09\u0287\u025F\u0250\u0279\u0186 \u026Fo\u0279\u025F s\u029E\u0254o\uA781q pu\u0250 s\u026F\u01DD\u0287\u1D09 \u0287\u025F\u0250\u0279\u0254 \u028E\uA781p\u1D09d\u0250\u0279 o\u0287 \u028E\u1D77\u0279\u01DDu\u01DD s\u01DDsn \u0287\u0250\u0265\u0287 \u01DDu\u1D09\u0265\u0254\u0250\u026F \u2C6F",
"description.mekanism.fuelwood_heater": "\u02D9s\u026F\u01DD\u0287\u1D09 \u01DD\uA781q\u1D09\u0287snq\u026Fo\u0254 \u1D77u\u1D09u\u0279nq \u028Eq \u028E\u1D77\u0279\u01DDu\u01DD \u0287\u0250\u01DD\u0265 \u025Fo s\u01DD\u1D09\u0287\u1D09\u0287u\u0250nb \u01DD\u1D77\u0279\u0250\uA781 \u1D77u\u1D09\u0254npo\u0279d \u025Fo \u01DD\uA781q\u0250d\u0250\u0254 s\u1D09 \u0287\u0250\u0265\u0287 \u01DDu\u1D09\u0265\u0254\u0250\u026F \u2C6F",
"description.mekanism.geiger_unit": "\u02D9\u15E1\u2229H \u01DD\u0265\u0287 u\u1D09 \uA781\u01DD\u028C\u01DD\uA781 uo\u1D09\u0287\u0250\u1D09p\u0250\u0279 \u0287u\u01DD\u1D09q\u026F\u0250 \u01DD\u0265\u0287 s\u028E\u0250\uA781ds\u1D09\u15E1",
"description.mekanism.gravitational_modulating_unit": "\u02D9\u028E\u0287\u1D09\u028C\u0250\u0279\u1D77 \u028E\u025F\u01DDp o\u0287 \u0279\u01DDsn \u01DD\u0265\u0287 s\u028Do\uA781\uA781\u0250 '\u0279\u01DD\u0287\u0287\u0250\u026F\u1D09\u0287u\u0250 \u025Fo \u028E\u1D77\u0279\u01DDu\u01DD snopu\u01DD\u026F\u01DD\u0279\u0287 \u01DD\u0265\u0287 pu\u0250 s\u01DD\u1D09\u1D77o\uA781ou\u0265\u0254\u01DD\u0287 \uA781\u0250\u0287u\u01DD\u026F\u1D09\u0279\u01DDdx\u01DD \u1D77u\u1D09s\u2229",
"description.mekanism.hydraulic_propulsion_unit": "\u02D9\u0279\u01DD\u0265\u1D77\u1D09\u0265 d\u026Fn\u027E pu\u0250 d\u01DD\u0287s \u0265\u0287oq o\u0287 \u0279\u01DDsn \u01DD\u0265\u0287 s\u028Do\uA781\uA781\u2C6F",
"description.mekanism.induction_casing": "\u02D9\u029E\u0254o\uA781q\u1D09\u0287\uA781n\u026F x\u1D09\u0279\u0287\u0250W uo\u1D09\u0287\u0254npuI p\u01DDz\u1D09\u1D77\u0279\u01DDu\u018E u\u0250 \u025Fo uo\u1D09\u0287\u0250\u01DD\u0279\u0254 \u01DD\u0265\u0287 u\u1D09 p\u01DDsn \u1D77u\u1D09s\u0250\u0254 \u0287u\u0250\u0287s\u1D09s\u01DD\u0279-\u028E\u1D77\u0279\u01DDu\u01DD \u025Fo \u01DDd\u028E\u0287 \u2C6F",
Expand Down Expand Up @@ -1064,6 +1065,7 @@
"module.mekanism.extended_mode": "\u01DDpoW p\u01DDpu\u01DD\u0287x\u018E",
"module.mekanism.farming_radius": "sn\u1D09p\u0250\u1D1A \u1D77u\u1D09\u026F\u0279\u0250\u2132",
"module.mekanism.farming_unit": "\u0287\u1D09u\u2229 \u1D77u\u1D09\u026F\u0279\u0250\u2132",
"module.mekanism.geiger_unit": "\u0287\u1D09u\u2229 \u0279\u01DD\u1D77\u1D09\u01DD\u2141",
"module.mekanism.gravitational_modulating_unit": "\u0287\u1D09u\u2229 \u1D77u\u1D09\u0287\u0250\uA781npoW \uA781\u0250uo\u1D09\u0287\u0250\u0287\u1D09\u028C\u0250\u0279\u2141",
"module.mekanism.gravitational_modulation": "uo\u1D09\u0287\u0250\uA781npoW \uA781\u0250uo\u1D09\u0287\u0250\u0287\u1D09\u028C\u0250\u0279\u2141",
"module.mekanism.handle_mode_change": "\u028E\u01DD\uA7B0 \u01DDpoW \u01DD\uA781pu\u0250H",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -482,6 +482,7 @@
"description.mekanism.fluorite_ore": "A mineral found relatively deep under the world's surface. The crystals can be processed into Hydrofluoric Acid, an essential chemical for Uranium processing.",
"description.mekanism.formulaic_assemblicator": "A machine that uses energy to rapidly craft items and blocks from Crafting Formulas. Doubles as an advanced crafting bench.",
"description.mekanism.fuelwood_heater": "A machine that is capable of producing large quantities of heat energy by burning combustible items.",
"description.mekanism.geiger_unit": "Displays the ambient radiation level in the HUD.",
"description.mekanism.gravitational_modulating_unit": "Using experimental technologies and the tremendous energy of antimatter, allows the user to defy gravity.",
"description.mekanism.hydraulic_propulsion_unit": "Allows the user to both step and jump higher.",
"description.mekanism.induction_casing": "A type of energy-resistant casing used in the creation of an Energized Induction Matrix multiblock.",
Expand Down Expand Up @@ -1064,6 +1065,7 @@
"module.mekanism.extended_mode": "Extended Mode",
"module.mekanism.farming_radius": "Farming Radius",
"module.mekanism.farming_unit": "Farming Unit",
"module.mekanism.geiger_unit": "Geiger Unit",
"module.mekanism.gravitational_modulating_unit": "Gravitational Modulating Unit",
"module.mekanism.gravitational_modulation": "Gravitational Modulation",
"module.mekanism.handle_mode_change": "Handle Mode Key",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"parent": "minecraft:item/generated",
"textures": {
"layer0": "mekanism:item/module_geiger_unit"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{
"type": "minecraft:crafting_shaped",
"result": {
"item": "mekanism:module_geiger_unit"
},
"pattern": [
"I#I",
"IAI",
"PPP"
],
"key": {
"I": {
"tag": "forge:alloys/advanced"
},
"A": {
"item": "mekanism:module_base"
},
"#": {
"item": "mekanism:geiger_counter"
},
"P": {
"item": "mekanism:hdpe_sheet"
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -1253,6 +1253,7 @@ private void addMisc() {
add(MekanismLang.MODULE_GRAVITATIONAL_MODULATING_UNIT, "Gravitational Modulating Unit");
add(MekanismLang.MODULE_CHARGE_DISTRIBUTION_UNIT, "Charge Distribution Unit");
add(MekanismLang.MODULE_DOSIMETER_UNIT, "Dosimeter Unit");
add(MekanismLang.MODULE_GEIGER_UNIT, "Geiger Unit");
add(MekanismLang.MODULE_LOCOMOTIVE_BOOSTING_UNIT, "Locomotive Boosting Unit");
add(MekanismLang.MODULE_HYDRAULIC_PROPULSION_UNIT, "Hydraulic Propulsion Unit");
add(MekanismLang.MODULE_MAGNETIC_ATTRACTION_UNIT, "Magnetic Attraction Unit");
Expand All @@ -1276,6 +1277,7 @@ private void addMisc() {
add(MekanismLang.DESCRIPTION_GRAVITATIONAL_MODULATING_UNIT, "Using experimental technologies and the tremendous energy of antimatter, allows the user to defy gravity.");
add(MekanismLang.DESCRIPTION_CHARGE_DISTRIBUTION_UNIT, "Evenly distributes charge throughout all worn MekaSuit armor.");
add(MekanismLang.DESCRIPTION_DOSIMETER_UNIT, "Displays the user's current radiation dose in the HUD.");
add(MekanismLang.DESCRIPTION_GEIGER_UNIT, "Displays the ambient radiation level in the HUD.");
add(MekanismLang.DESCRIPTION_LOCOMOTIVE_BOOSTING_UNIT, "Increases the user's sprinting speed (and jumping distance).");
add(MekanismLang.DESCRIPTION_HYDRAULIC_PROPULSION_UNIT, "Allows the user to both step and jump higher.");
add(MekanismLang.DESCRIPTION_MAGNETIC_ATTRACTION_UNIT, "Uses powerful magnets to draw distant items towards the player. Install multiple for a greater range.");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1214,6 +1214,17 @@ private void addGearModuleRecipes(Consumer<IFinishedRecipe> consumer) {
.key(Pattern.CONSTANT, MekanismItems.DOSIMETER)
.key(Pattern.PREVIOUS, MekanismItems.HDPE_SHEET)
.build(consumer);
//Geiger Module
ExtendedShapedRecipeBuilder.shapedRecipe(MekanismItems.MODULES.get(Modules.GEIGER_UNIT))
.pattern(RecipePattern.createPattern(
TripleLine.of(Pattern.INGOT, Pattern.CONSTANT, Pattern.INGOT),
TripleLine.of(Pattern.INGOT, Pattern.ALLOY, Pattern.INGOT),
TripleLine.of(Pattern.PREVIOUS, Pattern.PREVIOUS, Pattern.PREVIOUS))
).key(Pattern.INGOT, MekanismTags.Items.ALLOYS_ADVANCED)
.key(Pattern.ALLOY, MekanismItems.MODULE_BASE)
.key(Pattern.CONSTANT, MekanismItems.GEIGER_COUNTER)
.key(Pattern.PREVIOUS, MekanismItems.HDPE_SHEET)
.build(consumer);
//Energy Module
ExtendedShapedRecipeBuilder.shapedRecipe(MekanismItems.MODULES.get(Modules.ENERGY_UNIT))
.pattern(RecipePattern.createPattern(
Expand Down
2 changes: 2 additions & 0 deletions src/main/java/mekanism/common/MekanismLang.java
Original file line number Diff line number Diff line change
Expand Up @@ -779,6 +779,7 @@ public enum MekanismLang implements ILangEntry {
MODULE_GRAVITATIONAL_MODULATING_UNIT("module", "gravitational_modulating_unit"),
MODULE_CHARGE_DISTRIBUTION_UNIT("module", "charge_distribution_unit"),
MODULE_DOSIMETER_UNIT("module", "dosimeter_unit"),
MODULE_GEIGER_UNIT("module", "geiger_unit"),
MODULE_LOCOMOTIVE_BOOSTING_UNIT("module", "locomotive_boosting_unit"),
MODULE_HYDRAULIC_PROPULSION_UNIT("module", "hydraulic_propulsion_unit"),
MODULE_MAGNETIC_ATTRACTION_UNIT("module", "magnetic_attraction_unit"),
Expand All @@ -800,6 +801,7 @@ public enum MekanismLang implements ILangEntry {
DESCRIPTION_GRAVITATIONAL_MODULATING_UNIT("description", "gravitational_modulating_unit"),
DESCRIPTION_CHARGE_DISTRIBUTION_UNIT("description", "charge_distribution_unit"),
DESCRIPTION_DOSIMETER_UNIT("description", "dosimeter_unit"),
DESCRIPTION_GEIGER_UNIT("description", "geiger_unit"),
DESCRIPTION_LOCOMOTIVE_BOOSTING_UNIT("description", "locomotive_boosting_unit"),
DESCRIPTION_HYDRAULIC_PROPULSION_UNIT("description", "hydraulic_propulsion_unit"),
DESCRIPTION_MAGNETIC_ATTRACTION_UNIT("description", "magnetic_attraction_unit");
Expand Down
4 changes: 4 additions & 0 deletions src/main/java/mekanism/common/content/gear/Modules.java
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
import mekanism.common.content.gear.mekasuit.ModuleLocomotiveBoostingUnit;
import mekanism.common.content.gear.mekasuit.ModuleMagneticAttractionUnit;
import mekanism.common.content.gear.mekasuit.ModuleMekaSuit.ModuleDosimeterUnit;
import mekanism.common.content.gear.mekasuit.ModuleMekaSuit.ModuleGeigerUnit;
import mekanism.common.content.gear.mekasuit.ModuleMekaSuit.ModuleElectrolyticBreathingUnit;
import mekanism.common.content.gear.mekasuit.ModuleMekaSuit.ModuleGravitationalModulatingUnit;
import mekanism.common.content.gear.mekasuit.ModuleMekaSuit.ModuleHydraulicPropulsionUnit;
Expand Down Expand Up @@ -100,6 +101,9 @@ private Modules() {
public static final ModuleData<ModuleDosimeterUnit> DOSIMETER_UNIT = register("dosimeter_unit",
MekanismLang.MODULE_DOSIMETER_UNIT, MekanismLang.DESCRIPTION_DOSIMETER_UNIT, ModuleDosimeterUnit::new)
.rarity(Rarity.UNCOMMON).setRendersHUD();
public static final ModuleData<ModuleGeigerUnit> GEIGER_UNIT = register("geiger_unit",
MekanismLang.MODULE_GEIGER_UNIT, MekanismLang.DESCRIPTION_GEIGER_UNIT, ModuleGeigerUnit::new)
.rarity(Rarity.UNCOMMON).setRendersHUD();
public static final ModuleData<ModuleJetpackUnit> JETPACK_UNIT = register("jetpack_unit",
MekanismLang.MODULE_JETPACK_UNIT, MekanismLang.DESCRIPTION_JETPACK_UNIT, ModuleJetpackUnit::new)
.rarity(Rarity.RARE).setHandlesModeChange().setRendersHUD().setExclusive();
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,10 @@
import mekanism.api.inventory.AutomationType;
import mekanism.api.math.FloatingLong;
import mekanism.api.text.IHasTextComponent;
import mekanism.api.text.EnumColor;
import mekanism.api.MekanismAPI;
import mekanism.common.MekanismLang;
import mekanism.common.Mekanism;
import mekanism.common.capabilities.Capabilities;
import mekanism.common.config.MekanismConfig;
import mekanism.common.content.gear.HUDElement;
Expand All @@ -24,6 +27,7 @@
import mekanism.common.content.gear.mekasuit.ModuleLocomotiveBoostingUnit.SprintBoost;
import mekanism.common.item.gear.ItemMekaSuitArmor;
import mekanism.common.lib.radiation.RadiationManager;
import mekanism.common.lib.radiation.RadiationManager.RadiationScale;
import mekanism.api.radiation.capability.IRadiationEntity;
import mekanism.common.registries.MekanismGases;
import mekanism.common.registries.MekanismItems;
Expand All @@ -45,6 +49,8 @@
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.text.ITextComponent;
import net.minecraft.util.text.StringTextComponent;
import net.minecraft.util.Util;
import net.minecraft.world.World;

public abstract class ModuleMekaSuit extends Module {

Expand Down Expand Up @@ -398,4 +404,18 @@ public void addHUDElements(List<HUDElement> list) {
}
}
}

public static class ModuleGeigerUnit extends ModuleMekaSuit {
private static final ResourceLocation icon = MekanismUtils.getResource(ResourceType.GUI_HUD, "geiger_counter.png");
@Override
public void addHUDElements(List<HUDElement> list) {
if (!isEnabled()) {
return;
}
double magnitude = MekanismAPI.getRadiationManager().getRadiationLevel(Minecraft.getInstance().player);
HUDElement e = HUDElement.of(icon, UnitDisplayUtils.getDisplayShort(magnitude, RadiationUnit.SV, 2));
HUDColor color = magnitude < RadiationManager.MIN_MAGNITUDE ? HUDColor.REGULAR : (magnitude < 0.1 ? HUDColor.WARNING : HUDColor.DANGER);
list.add(e.color(color));
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ public ItemMekaSuitArmor(EquipmentSlotType slot, Properties properties) {
gas -> gas == MekanismGases.NUTRITIONAL_PASTE.get()));
absorption = 0.15F;
} else if (slot == EquipmentSlotType.CHEST) {
Modules.setSupported(this, Modules.JETPACK_UNIT, Modules.GRAVITATIONAL_MODULATING_UNIT, Modules.CHARGE_DISTRIBUTION_UNIT, Modules.DOSIMETER_UNIT);
Modules.setSupported(this, Modules.JETPACK_UNIT, Modules.GRAVITATIONAL_MODULATING_UNIT, Modules.CHARGE_DISTRIBUTION_UNIT, Modules.DOSIMETER_UNIT, Modules.GEIGER_UNIT);
gasTankSpecs.add(GasTankSpec.createFillOnly(MekanismConfig.gear.mekaSuitJetpackTransferRate, MekanismConfig.gear.mekaSuitJetpackMaxStorage,
gas -> gas == MekanismGases.HYDROGEN.get()));
absorption = 0.4F;
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 883c121

Please sign in to comment.