From b14dec750a4ef5976eb623d16476b9c5463806b7 Mon Sep 17 00:00:00 2001 From: skip999 Date: Sat, 18 Jan 2025 10:51:08 -0600 Subject: [PATCH 1/2] resource location cleanup --- .../tags/block/mineable/pickaxe.json | 486 ++++++++--------- .../tags/block/needs_stone_tool.json | 114 ++-- .../neoforge/tags/block/needs_wood_tool.json | 302 +++++------ .../java/electrodynamics/Electrodynamics.java | 46 +- .../multiblock/assemblybased/Multiblock.java | 5 +- .../assemblybased/MultiblockSlaveNode.java | 11 +- .../electrodynamics/api/screen/ITexture.java | 8 +- .../client/ClientRegister.java | 99 ++-- .../guidebook/ModuleElectrodynamics.java | 4 +- .../client/guidebook/ScreenGuidebook.java | 8 +- .../chapters/ChapterElectricity.java | 51 +- .../chapters/ChapterElectrolosisChamber.java | 25 +- .../guidebook/chapters/ChapterFluids.java | 21 +- .../guidebook/chapters/ChapterGases.java | 40 +- .../guidebook/chapters/ChapterMachines.java | 13 +- .../guidebook/chapters/ChapterMisc.java | 23 +- .../guidebook/chapters/ChapterQuarry.java | 31 +- .../guidebook/chapters/ChapterTips.java | 5 +- .../bakerytypes/CableModelLoader.java | 4 +- .../bakerytypes/MultiblockModelLoader.java | 4 +- .../bakerytypes/SlaveNodeModelLoader.java | 4 +- .../render/entity/RenderEnergyBlast.java | 3 +- .../model/armor/types/ModelCombatArmor.java | 490 ++++++++++++++---- .../armor/types/ModelCompositeArmor.java | 377 ++++++++++---- .../armor/types/ModelHydraulicBoots.java | 103 ++-- .../model/armor/types/ModelJetpack.java | 123 +++-- .../armor/types/ModelNightVisionGoggles.java | 89 ++-- .../model/armor/types/ModelServoLeggings.java | 91 ++-- .../render/shader/ElectrodynamicsShaders.java | 4 +- .../AtlasHolderElectrodynamicsCustom.java | 5 +- .../atlas/ElectrodynamicsTextureAtlases.java | 4 +- .../ElectrodynamicsAttributeModifiers.java | 7 +- .../eventbus/RegisterPropertiesEvent.java | 25 - .../gear/armor/types/ItemCombatArmor.java | 4 +- .../gear/armor/types/ItemCompositeArmor.java | 4 +- .../gear/armor/types/ItemHydraulicBoots.java | 4 +- .../item/gear/armor/types/ItemJetpack.java | 4 +- .../armor/types/ItemNightVisionGoggles.java | 6 +- .../gear/armor/types/ItemRubberArmor.java | 4 +- .../gear/armor/types/ItemServoLeggings.java | 4 +- .../common/item/subtype/SubtypeDrillHead.java | 3 +- .../common/packet/NetworkHandler.java | 3 +- .../ChemicalReactorRecipe.java | 4 +- .../ElectrolosisChamberRecipe.java | 4 +- .../ElectrolyticSeparatorRecipe.java | 4 +- .../ChemicalCrystalizerRecipe.java | 4 +- .../specificmachines/ChemicalMixerRecipe.java | 4 +- .../FermentationPlantRecipe.java | 4 +- .../specificmachines/MineralWasherRecipe.java | 4 +- .../EnergizedAlloyerRecipe.java | 4 +- .../specificmachines/LatheRecipe.java | 2 +- .../MineralCrusherRecipe.java | 4 +- .../MineralGrinderRecipe.java | 4 +- .../OxidationFurnaceRecipe.java | 4 +- .../ReinforcedAlloyerRecipe.java | 4 +- .../specificmachines/WireMillRecipe.java | 4 +- .../common/tags/ElectrodynamicsTags.java | 11 +- .../machines/TileElectrolosisChamber.java | 4 +- .../jei/ElectrodynamicsJEIPlugin.java | 5 +- .../jei/utils/gui/JeiTextures.java | 8 +- .../jei/utils/gui/ScreenObject.java | 12 +- .../types/gasgauge/JeiGasGaugeTextures.java | 6 +- .../mekanism/MekanismHandler.java | 7 +- .../ElectrodynamicsBlockStateProvider.java | 5 +- .../ElectrodynamicsAdvancementProvider.java | 3 +- .../ElectrodynamicsMultiblockProvider.java | 55 +- .../ElectrodynamicsSmeltingRecipes.java | 34 +- .../utils/AbstractLootTableProvider.java | 192 ++++--- .../datagen/utils/AdvancementBuilder.java | 11 +- .../prefab/properties/IPropertyType.java | 3 - .../prefab/properties/PropertyManager.java | 10 - .../prefab/properties/PropertyType.java | 18 +- .../prefab/properties/PropertyTypes.java | 72 +-- .../prefab/screen/GenericScreen.java | 4 +- .../button/ScreenComponentButton.java | 4 +- .../button/type/ButtonGuidebook.java | 4 +- .../button/type/ButtonModuleSelector.java | 4 +- .../button/type/ButtonTankSlider.java | 4 +- .../editbox/ScreenComponentEditBox.java | 4 +- .../types/ScreenComponentCountdown.java | 4 +- .../types/ScreenComponentGuidebookArrow.java | 4 +- .../types/ScreenComponentInventoryIO.java | 4 +- .../types/ScreenComponentProgress.java | 6 +- .../component/types/ScreenComponentSlot.java | 6 +- .../types/ScreenComponentVerticalSlider.java | 8 +- .../gauges/AbstractScreenComponentGauge.java | 4 +- .../types/gauges/ScreenComponentGasGauge.java | 4 +- .../types/guitab/ScreenComponentGuiTab.java | 6 +- .../prefab/utilities/RenderingUtils.java | 5 +- .../object/CombustionFuelSource.java | 3 +- .../ElectrodynamicsArmorMaterials.java | 15 +- .../registers/ElectrodynamicsBlocks.java | 16 +- .../ElectrodynamicsCapabilities.java | 13 +- .../registers/ElectrodynamicsDamageTypes.java | 5 +- .../registers/ElectrodynamicsFeatures.java | 9 +- .../registers/ElectrodynamicsGases.java | 3 +- .../ElectrodynamicsRuleTestTypes.java | 12 +- .../registers/ElectrodynamicsSounds.java | 4 +- 98 files changed, 1949 insertions(+), 1377 deletions(-) delete mode 100644 src/main/java/electrodynamics/common/eventbus/RegisterPropertiesEvent.java diff --git a/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json b/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json index d883f6e21..c6503f06a 100644 --- a/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json +++ b/src/generated/resources/data/minecraft/tags/block/mineable/pickaxe.json @@ -1,307 +1,307 @@ { "values": [ - "electrodynamics:oremolybdenum", - "electrodynamics:oresalt", - "electrodynamics:oreuranium", + "electrodynamics:orelithium", + "electrodynamics:oremonazite", "electrodynamics:orevanadium", - "electrodynamics:orechromium", - "electrodynamics:oresulfur", + "electrodynamics:oretin", "electrodynamics:oreniter", + "electrodynamics:oresylvite", + "electrodynamics:oremolybdenum", + "electrodynamics:oresilver", + "electrodynamics:oresulfur", "electrodynamics:orefluorite", - "electrodynamics:orelead", - "electrodynamics:oremonazite", - "electrodynamics:oretitanium", - "electrodynamics:oretin", - "electrodynamics:orethorium", + "electrodynamics:oreuranium", + "electrodynamics:oresalt", "electrodynamics:orealuminum", - "electrodynamics:oresilver", - "electrodynamics:orelithium", - "electrodynamics:oresylvite", - "electrodynamics:deepslateoreniter", + "electrodynamics:orethorium", + "electrodynamics:oretitanium", + "electrodynamics:orelead", + "electrodynamics:orechromium", + "electrodynamics:deepslateorealuminum", + "electrodynamics:deepslateorechromium", "electrodynamics:deepslateoretin", - "electrodynamics:deepslateoresalt", "electrodynamics:deepslateorelead", - "electrodynamics:deepslateoresulfur", - "electrodynamics:deepslateorechromium", - "electrodynamics:deepslateoresilver", - "electrodynamics:deepslateoremolybdenum", - "electrodynamics:deepslateorelithium", + "electrodynamics:deepslateorevanadium", "electrodynamics:deepslateoremonazite", - "electrodynamics:deepslateorealuminum", + "electrodynamics:deepslateoresilver", "electrodynamics:deepslateorethorium", - "electrodynamics:deepslateoresylvite", + "electrodynamics:deepslateorefluorite", "electrodynamics:deepslateoreuranium", - "electrodynamics:deepslateorevanadium", + "electrodynamics:deepslateorelithium", "electrodynamics:deepslateoretitanium", - "electrodynamics:deepslateorefluorite", - "electrodynamics:raworeblocktin", - "electrodynamics:raworeblockchromium", - "electrodynamics:raworeblockuranium", - "electrodynamics:raworeblocksilver", + "electrodynamics:deepslateoreniter", + "electrodynamics:deepslateoremolybdenum", + "electrodynamics:deepslateoresylvite", + "electrodynamics:deepslateoresalt", + "electrodynamics:deepslateoresulfur", "electrodynamics:raworeblocklead", "electrodynamics:raworeblocktitanium", + "electrodynamics:raworeblockchromium", + "electrodynamics:raworeblocksilver", + "electrodynamics:raworeblocktin", "electrodynamics:raworeblockthorium", + "electrodynamics:raworeblockuranium", + "electrodynamics:electricfurnacedouble", + "electrodynamics:quarry", "electrodynamics:creativepowersource", - "electrodynamics:electricarcfurnacedouble", - "electrodynamics:circuitmonitor", + "electrodynamics:electricarcfurnacetriple", + "electrodynamics:gastanksteel", + "electrodynamics:gascollector", + "electrodynamics:circuitbreaker", + "electrodynamics:oxidationfurnace", + "electrodynamics:advancedsolarpanel", + "electrodynamics:mineralgrinderdouble", + "electrodynamics:electricarcfurnace", + "electrodynamics:fermentationplant", + "electrodynamics:energizedalloyer", + "electrodynamics:combustionchamber", + "electrodynamics:multimeterblock", + "electrodynamics:electrolyticseparator", "electrodynamics:creativefluidsource", - "electrodynamics:coalgenerator", + "electrodynamics:chemicalcrystallizer", + "electrodynamics:wiremill", "electrodynamics:gastankreinforced", - "electrodynamics:circuitbreaker", - "electrodynamics:electricfurnace", - "electrodynamics:windmill", - "electrodynamics:mineralwasher", - "electrodynamics:tankhsla", - "electrodynamics:gaspipepump", - "electrodynamics:mineralcrusherdouble", + "electrodynamics:gasvalve", "electrodynamics:lithiumbatterybox", - "electrodynamics:combustionchamber", - "electrodynamics:gaspipefilter", + "electrodynamics:currentregulator", + "electrodynamics:mineralwasher", + "electrodynamics:chemicalmixer", + "electrodynamics:windmill", + "electrodynamics:fluidpipepump", + "electrodynamics:relay", "electrodynamics:chargerhv", - "electrodynamics:quarry", - "electrodynamics:advanceddowngradetransformer", - "electrodynamics:electricpump", - "electrodynamics:chargerlv", - "electrodynamics:gastanksteel", - "electrodynamics:lathe", - "electrodynamics:fluidpipefilter", - "electrodynamics:wiremilldouble", - "electrodynamics:downgradetransformer", - "electrodynamics:mineralgrindertriple", + "electrodynamics:potentiometer", + "electrodynamics:circuitmonitor", + "electrodynamics:mineralgrinder", "electrodynamics:thermoelectricgenerator", + "electrodynamics:downgradetransformer", + "electrodynamics:electricfurnacetriple", + "electrodynamics:mineralcrusherdouble", + "electrodynamics:upgradetransformer", + "electrodynamics:electrolosischamber", + "electrodynamics:hydroelectricgenerator", "electrodynamics:advancedupgradetransformer", - "electrodynamics:coolantresavoir", + "electrodynamics:electricfurnace", + "electrodynamics:wiremilldouble", + "electrodynamics:lathe", + "electrodynamics:chargerlv", + "electrodynamics:tanksteel", + "electrodynamics:gasvent", + "electrodynamics:fluidpipefilter", + "electrodynamics:reinforcedalloyer", + "electrodynamics:seismicrelay", "electrodynamics:mineralcrushertriple", + "electrodynamics:fluidvoid", + "electrodynamics:chargermv", + "electrodynamics:coolantresavoir", + "electrodynamics:fluidvalve", + "electrodynamics:mineralgrindertriple", + "electrodynamics:gastankhsla", + "electrodynamics:electricarcfurnacedouble", + "electrodynamics:gaspipepump", + "electrodynamics:wiremilltriple", "electrodynamics:batterybox", - "electrodynamics:electrolosischamber", - "electrodynamics:electricfurnacetriple", - "electrodynamics:fermentationplant", - "electrodynamics:energizedalloyer", - "electrodynamics:electricarcfurnacetriple", - "electrodynamics:seismicrelay", + "electrodynamics:tankhsla", + "electrodynamics:advanceddowngradetransformer", + "electrodynamics:gaspipefilter", + "electrodynamics:coalgenerator", "electrodynamics:tankreinforced", - "electrodynamics:solarpanel", - "electrodynamics:advancedsolarpanel", - "electrodynamics:chargermv", "electrodynamics:mineralcrusher", - "electrodynamics:reinforcedalloyer", "electrodynamics:carbynebatterybox", - "electrodynamics:currentregulator", - "electrodynamics:upgradetransformer", - "electrodynamics:tanksteel", - "electrodynamics:wiremill", "electrodynamics:creativegassource", - "electrodynamics:gascollector", - "electrodynamics:mineralgrinderdouble", - "electrodynamics:gasvalve", - "electrodynamics:oxidationfurnace", - "electrodynamics:fluidvalve", - "electrodynamics:fluidvoid", - "electrodynamics:gasvent", - "electrodynamics:gastankhsla", - "electrodynamics:electricarcfurnace", - "electrodynamics:relay", - "electrodynamics:chemicalcrystallizer", - "electrodynamics:multimeterblock", - "electrodynamics:mineralgrinder", - "electrodynamics:fluidpipepump", - "electrodynamics:electricfurnacedouble", - "electrodynamics:hydroelectricgenerator", - "electrodynamics:chemicalmixer", + "electrodynamics:solarpanel", + "electrodynamics:electricpump", "electrodynamics:motorcomplex", - "electrodynamics:wiremilltriple", - "electrodynamics:electrolyticseparator", - "electrodynamics:potentiometer", - "electrodynamics:wireinsulatedcopperwhite", - "electrodynamics:wireceramicinsulatedsilveryellow", - "electrodynamics:wirelogisticssilverwhite", - "electrodynamics:wireceramicinsulatedsuperconductiveblue", - "electrodynamics:wireceramicinsulatedirongreen", - "electrodynamics:wireinsulatedgoldblue", - "electrodynamics:wirehighlyinsulatedironbrown", + "electrodynamics:wirehighlyinsulatedsuperconductiveyellow", "electrodynamics:wirehighlyinsulatedsuperconductivegreen", - "electrodynamics:wirelogisticscoppergreen", - "electrodynamics:wirelogisticssuperconductivered", - "electrodynamics:wireceramicinsulatedcopperwhite", - "electrodynamics:wirehighlyinsulatedironblue", - "electrodynamics:wireceramicinsulatedironblue", - "electrodynamics:wireceramicinsulatedcopperbrown", - "electrodynamics:wireinsulatedcopperbrown", - "electrodynamics:wirehighlyinsulatedgoldbrown", - "electrodynamics:wireinsulatedsuperconductiveblack", - "electrodynamics:wireceramicinsulatedgoldblue", - "electrodynamics:wireinsulatedgoldyellow", - "electrodynamics:wirehighlyinsulatedgoldblue", - "electrodynamics:wirelogisticstinbrown", - "electrodynamics:wirehighlyinsulatedsuperconductivebrown", - "electrodynamics:wireceramicinsulatedsilverred", - "electrodynamics:wirelogisticssuperconductivegreen", + "electrodynamics:wirehighlyinsulatedironbrown", + "electrodynamics:wireinsulatedtinred", + "electrodynamics:wireceramicinsulatedsuperconductivered", "electrodynamics:wirelogisticscopperblack", - "electrodynamics:wireceramicinsulatedsilverblue", - "electrodynamics:wireinsulatedtinwhite", - "electrodynamics:wireinsulatedironblue", - "electrodynamics:wirehighlyinsulatedtinyellow", - "electrodynamics:wirelogisticsironwhite", - "electrodynamics:wirehighlyinsulatedtinbrown", - "electrodynamics:wireinsulatedcoppergreen", - "electrodynamics:wirelogisticssilveryellow", - "electrodynamics:wireinsulatedsilverblue", - "electrodynamics:wireinsulatedironbrown", - "electrodynamics:wireiron", - "electrodynamics:wireceramicinsulatedtingreen", - "electrodynamics:wirehighlyinsulatedsilverblack", - "electrodynamics:wireceramicinsulatedtinbrown", - "electrodynamics:wirelogisticsgoldwhite", - "electrodynamics:wirehighlyinsulatedironblack", - "electrodynamics:wirehighlyinsulatedironwhite", "electrodynamics:wireceramicinsulatedcopperred", - "electrodynamics:wirelogisticssilverbrown", + "electrodynamics:wireceramicinsulatedsuperconductivewhite", + "electrodynamics:wirehighlyinsulatedsilverblue", + "electrodynamics:wirelogisticsirongreen", + "electrodynamics:wirelogisticssuperconductiveyellow", + "electrodynamics:wireceramicinsulatedironblack", + "electrodynamics:wireinsulatedsilverblack", + "electrodynamics:wireinsulatedtinblue", + "electrodynamics:wireceramicinsulatedtinblue", + "electrodynamics:wirehighlyinsulatedgoldblue", + "electrodynamics:wireceramicinsulatedtinyellow", + "electrodynamics:wirehighlyinsulatedcopperwhite", + "electrodynamics:wirehighlyinsulatedcopperyellow", + "electrodynamics:wireinsulatedirongreen", + "electrodynamics:wireceramicinsulatedsuperconductivegreen", + "electrodynamics:wirehighlyinsulatedcopperred", + "electrodynamics:wirehighlyinsulatedironyellow", + "electrodynamics:wireceramicinsulatedtinwhite", + "electrodynamics:wirelogisticscopperred", + "electrodynamics:wirelogisticsgoldyellow", + "electrodynamics:wireceramicinsulatedironyellow", + "electrodynamics:wirelogisticsgoldblue", + "electrodynamics:wirelogisticstinyellow", + "electrodynamics:wirehighlyinsulatedsilverbrown", + "electrodynamics:wireceramicinsulatedgoldbrown", "electrodynamics:wireceramicinsulatedcopperblack", + "electrodynamics:wirelogisticsironblack", + "electrodynamics:wireinsulatedcopperblack", + "electrodynamics:wireinsulatedironwhite", + "electrodynamics:wireceramicinsulatedcopperblue", + "electrodynamics:wirelogisticscopperblue", + "electrodynamics:wireinsulatedironyellow", + "electrodynamics:wirehighlyinsulatedsilvergreen", + "electrodynamics:wirehighlyinsulatedsuperconductivebrown", "electrodynamics:wirehighlyinsulatedsuperconductiveblack", - "electrodynamics:wireinsulatedgoldwhite", - "electrodynamics:wirehighlyinsulatedsuperconductiveyellow", - "electrodynamics:wirehighlyinsulatedtingreen", - "electrodynamics:wirelogisticstinyellow", - "electrodynamics:wirehighlyinsulatedgoldyellow", + "electrodynamics:wireceramicinsulatedsilveryellow", + "electrodynamics:wireinsulatedironbrown", + "electrodynamics:wirehighlyinsulatedgoldblack", + "electrodynamics:wirehighlyinsulatedsuperconductivewhite", + "electrodynamics:wirehighlyinsulatedtinred", + "electrodynamics:wiresilver", + "electrodynamics:wireceramicinsulatedcopperwhite", + "electrodynamics:wireinsulatedsuperconductiveblue", + "electrodynamics:wirelogisticssilveryellow", + "electrodynamics:wirehighlyinsulatedsuperconductiveblue", + "electrodynamics:wirelogisticssuperconductivegreen", + "electrodynamics:wirehighlyinsulatedirongreen", + "electrodynamics:wireceramicinsulatedironred", + "electrodynamics:wirelogisticscopperbrown", + "electrodynamics:wireceramicinsulatedtinred", + "electrodynamics:wireceramicinsulatedironblue", + "electrodynamics:wireinsulatedsuperconductivered", "electrodynamics:wiregold", - "electrodynamics:wirehighlyinsulatedsilverred", + "electrodynamics:wireinsulatedcopperbrown", + "electrodynamics:wireinsulatedgoldred", "electrodynamics:wirelogisticsgoldgreen", - "electrodynamics:wirelogisticsgoldred", - "electrodynamics:wirehighlyinsulatedirongreen", - "electrodynamics:wireceramicinsulatedsuperconductiveblack", + "electrodynamics:wireinsulatedgoldgreen", + "electrodynamics:wireinsulatedsilverblue", + "electrodynamics:wireinsulatedgoldblack", + "electrodynamics:wirehighlyinsulatedsilverblack", + "electrodynamics:wireinsulatedgoldblue", + "electrodynamics:wirelogisticstinred", + "electrodynamics:wirehighlyinsulatedironblue", + "electrodynamics:wireceramicinsulatedsilverred", + "electrodynamics:wireceramicinsulatedirongreen", + "electrodynamics:wireceramicinsulatedsuperconductivebrown", + "electrodynamics:wireinsulatedsilveryellow", + "electrodynamics:wireinsulatedtinbrown", + "electrodynamics:wireinsulatedcopperred", + "electrodynamics:wirehighlyinsulatedironred", "electrodynamics:wireinsulatedsuperconductivewhite", + "electrodynamics:wirelogisticssilvergreen", + "electrodynamics:wireinsulatedsilverbrown", + "electrodynamics:wireceramicinsulatedironwhite", + "electrodynamics:wireceramicinsulatedtingreen", + "electrodynamics:wireinsulatedtinblack", + "electrodynamics:wireceramicinsulatedtinbrown", + "electrodynamics:wirelogisticscoppergreen", + "electrodynamics:wirehighlyinsulatedsuperconductivered", + "electrodynamics:wireinsulatedtinyellow", "electrodynamics:wirehighlyinsulatedgoldred", - "electrodynamics:wireceramicinsulatedtinwhite", + "electrodynamics:wirehighlyinsulatedtinblack", + "electrodynamics:wirehighlyinsulatedcopperbrown", + "electrodynamics:wirelogisticssilverblack", + "electrodynamics:wirehighlyinsulatedcopperblue", + "electrodynamics:wiresuperconductive", + "electrodynamics:wirehighlyinsulatedgoldbrown", + "electrodynamics:wirehighlyinsulatedironwhite", + "electrodynamics:wireinsulatedsuperconductivebrown", + "electrodynamics:wireceramicinsulatedsilverblue", + "electrodynamics:wireceramicinsulatedtinblack", "electrodynamics:wireceramicinsulatedsilverbrown", - "electrodynamics:wiresilver", - "electrodynamics:wirelogisticstinred", - "electrodynamics:wirelogisticsgoldblack", - "electrodynamics:wireceramicinsulatedironblack", - "electrodynamics:wireinsulatedironred", - "electrodynamics:wirelogisticssuperconductiveyellow", "electrodynamics:wireinsulatedcopperblue", - "electrodynamics:wireceramicinsulatedsilverwhite", - "electrodynamics:wireceramicinsulatedgoldbrown", - "electrodynamics:wirelogisticsironblack", - "electrodynamics:wirelogisticscopperred", - "electrodynamics:wirehighlyinsulatedsilverblue", - "electrodynamics:wireinsulatedsilvergreen", - "electrodynamics:wireceramicinsulatedtinyellow", - "electrodynamics:wireinsulatedsilveryellow", - "electrodynamics:wireceramicinsulatedtinblack", - "electrodynamics:wiretin", + "electrodynamics:wirelogisticssuperconductiveblack", + "electrodynamics:wireinsulatedironblack", + "electrodynamics:wirehighlyinsulatedcopperblack", + "electrodynamics:wireceramicinsulatedgoldblue", + "electrodynamics:wirelogisticssilverblue", + "electrodynamics:wireceramicinsulatedsilverblack", "electrodynamics:wirehighlyinsulatedsilverwhite", - "electrodynamics:wireceramicinsulatedcopperyellow", - "electrodynamics:wirelogisticssuperconductivebrown", - "electrodynamics:wirelogisticssilvergreen", - "electrodynamics:wireinsulatedsilverred", + "electrodynamics:wirehighlyinsulatedtinwhite", + "electrodynamics:wireinsulatedtingreen", "electrodynamics:wireinsulatedsuperconductivegreen", - "electrodynamics:wireinsulatedcopperblack", - "electrodynamics:wirehighlyinsulatedsuperconductivered", - "electrodynamics:wireinsulatedsilverblack", - "electrodynamics:wirelogisticssuperconductiveblue", - "electrodynamics:wireceramicinsulatedsuperconductivered", - "electrodynamics:wireinsulatedgoldred", - "electrodynamics:wirehighlyinsulatedgoldgreen", - "electrodynamics:wireceramicinsulatedironred", - "electrodynamics:wirelogisticsgoldbrown", - "electrodynamics:wireinsulatedirongreen", - "electrodynamics:wireinsulatedtinbrown", - "electrodynamics:wireinsulatedsuperconductivebrown", - "electrodynamics:wireinsulatedtinred", - "electrodynamics:wireinsulatedironyellow", - "electrodynamics:wirehighlyinsulatedcoppergreen", + "electrodynamics:wireceramicinsulatedgoldblack", + "electrodynamics:wireceramicinsulatedironbrown", + "electrodynamics:wireceramicinsulatedcopperbrown", + "electrodynamics:wirelogisticssuperconductivebrown", "electrodynamics:wireinsulatedcopperyellow", - "electrodynamics:wireceramicinsulatedironwhite", - "electrodynamics:wireinsulatedgoldbrown", - "electrodynamics:wirehighlyinsulatedsilvergreen", - "electrodynamics:wirelogisticscopperbrown", - "electrodynamics:wirehighlyinsulatedsilveryellow", - "electrodynamics:wirehighlyinsulatedcopperblack", - "electrodynamics:wireceramicinsulatedtinblue", - "electrodynamics:wirecopper", - "electrodynamics:wireceramicinsulatedgoldwhite", + "electrodynamics:wireinsulatedsuperconductiveblack", + "electrodynamics:wirehighlyinsulatedtinblue", + "electrodynamics:wireceramicinsulatedgoldgreen", + "electrodynamics:wirehighlyinsulatedgoldgreen", + "electrodynamics:wirehighlyinsulatedtingreen", + "electrodynamics:wirehighlyinsulatedgoldyellow", + "electrodynamics:wireinsulatedironblue", + "electrodynamics:wirehighlyinsulatedtinbrown", "electrodynamics:wireceramicinsulatedsilvergreen", - "electrodynamics:wireceramicinsulatedsuperconductivegreen", - "electrodynamics:wirehighlyinsulatedgoldblack", - "electrodynamics:wirelogisticssuperconductivewhite", - "electrodynamics:wirelogisticssilverblue", "electrodynamics:wirelogisticssilverred", - "electrodynamics:wirelogisticsgoldblue", - "electrodynamics:wireinsulatedgoldblack", - "electrodynamics:wirehighlyinsulatedgoldwhite", - "electrodynamics:wireceramicinsulatedcopperblue", - "electrodynamics:wirelogisticssilverblack", - "electrodynamics:wireinsulatedgoldgreen", - "electrodynamics:wirelogisticssuperconductiveblack", - "electrodynamics:wirehighlyinsulatedtinblue", - "electrodynamics:wireinsulatedsuperconductiveblue", - "electrodynamics:wirelogisticsironred", - "electrodynamics:wirelogisticsgoldyellow", + "electrodynamics:wireiron", + "electrodynamics:wireinsulatedsilverred", + "electrodynamics:wirelogisticssilverwhite", + "electrodynamics:wirelogisticsironyellow", + "electrodynamics:wireinsulatedsuperconductiveyellow", + "electrodynamics:wireceramicinsulatedgoldwhite", "electrodynamics:wireceramicinsulatedgoldyellow", + "electrodynamics:wirelogisticssuperconductivered", + "electrodynamics:wirelogisticssuperconductiveblue", + "electrodynamics:wirelogisticsironwhite", + "electrodynamics:wirehighlyinsulatedsilverred", + "electrodynamics:wirehighlyinsulatedgoldwhite", + "electrodynamics:wireinsulatedgoldbrown", + "electrodynamics:wireceramicinsulatedsuperconductiveblack", + "electrodynamics:wireinsulatedgoldyellow", "electrodynamics:wireceramicinsulatedsuperconductiveyellow", - "electrodynamics:wirelogisticstinblack", - "electrodynamics:wireinsulatedsilverbrown", - "electrodynamics:wireinsulatedsuperconductiveyellow", - "electrodynamics:wireinsulatedtinblack", - "electrodynamics:wirehighlyinsulatedtinred", - "electrodynamics:wireceramicinsulatedgoldgreen", - "electrodynamics:wireceramicinsulatedtinred", - "electrodynamics:wirehighlyinsulatedcopperblue", - "electrodynamics:wirelogisticstingreen", - "electrodynamics:wirelogisticsironblue", + "electrodynamics:wireceramicinsulatedcopperyellow", + "electrodynamics:wirelogisticstinwhite", + "electrodynamics:wirehighlyinsulatedtinyellow", + "electrodynamics:wirelogisticsgoldblack", "electrodynamics:wireceramicinsulatedgoldred", - "electrodynamics:wirehighlyinsulatedcopperbrown", - "electrodynamics:wireceramicinsulatedironyellow", + "electrodynamics:wireinsulatedtinwhite", + "electrodynamics:wirelogisticsgoldred", + "electrodynamics:wireceramicinsulatedcoppergreen", + "electrodynamics:wirelogisticstinblue", + "electrodynamics:wireinsulatedcoppergreen", + "electrodynamics:wireceramicinsulatedsilverwhite", + "electrodynamics:wirecopper", + "electrodynamics:wirelogisticstingreen", + "electrodynamics:wirehighlyinsulatedcoppergreen", + "electrodynamics:wiretin", + "electrodynamics:wirelogisticstinbrown", + "electrodynamics:wirehighlyinsulatedironblack", "electrodynamics:wirelogisticscopperwhite", - "electrodynamics:wireceramicinsulatedsuperconductivebrown", "electrodynamics:wireinsulatedsilverwhite", - "electrodynamics:wirehighlyinsulatedtinblack", - "electrodynamics:wirehighlyinsulatedsilverbrown", + "electrodynamics:wirelogisticsgoldbrown", + "electrodynamics:wireinsulatedgoldwhite", + "electrodynamics:wirelogisticssilverbrown", + "electrodynamics:wireinsulatedironred", + "electrodynamics:wireceramicinsulatedsuperconductiveblue", "electrodynamics:wirelogisticsironbrown", - "electrodynamics:wireinsulatedironblack", - "electrodynamics:wireceramicinsulatedcoppergreen", - "electrodynamics:wirehighlyinsulatedtinwhite", - "electrodynamics:wireinsulatedtingreen", - "electrodynamics:wirelogisticsirongreen", + "electrodynamics:wirelogisticsgoldwhite", + "electrodynamics:wireinsulatedsilvergreen", + "electrodynamics:wirelogisticstinblack", + "electrodynamics:wirelogisticsironblue", + "electrodynamics:wirehighlyinsulatedsilveryellow", "electrodynamics:wirelogisticscopperyellow", - "electrodynamics:wirehighlyinsulatedsuperconductivewhite", - "electrodynamics:wireceramicinsulatedgoldblack", - "electrodynamics:wirelogisticstinblue", - "electrodynamics:wirehighlyinsulatedironyellow", - "electrodynamics:wireinsulatedironwhite", - "electrodynamics:wireinsulatedtinyellow", - "electrodynamics:wireinsulatedtinblue", - "electrodynamics:wireinsulatedsuperconductivered", - "electrodynamics:wireceramicinsulatedironbrown", - "electrodynamics:wireinsulatedcopperred", - "electrodynamics:wirehighlyinsulatedcopperyellow", - "electrodynamics:wirehighlyinsulatedironred", - "electrodynamics:wirehighlyinsulatedsuperconductiveblue", - "electrodynamics:wirelogisticscopperblue", - "electrodynamics:wireceramicinsulatedsuperconductivewhite", - "electrodynamics:wireceramicinsulatedsilverblack", - "electrodynamics:wiresuperconductive", - "electrodynamics:wirehighlyinsulatedcopperwhite", - "electrodynamics:wirelogisticsironyellow", - "electrodynamics:wirehighlyinsulatedcopperred", - "electrodynamics:wirelogisticstinwhite", + "electrodynamics:wirelogisticsironred", + "electrodynamics:wirelogisticssuperconductivewhite", + "electrodynamics:wireinsulatedcopperwhite", "electrodynamics:pipesteel", "electrodynamics:pipecopper", "electrodynamics:glassclear", "electrodynamics:glassaluminum", - "electrodynamics:resourceblockaluminum", - "electrodynamics:resourceblocktitanium", "electrodynamics:resourceblockchromium", - "electrodynamics:resourceblocktitaniumcarbide", - "electrodynamics:resourceblocklead", - "electrodynamics:resourceblockhslasteel", "electrodynamics:resourceblockvanadiumsteel", - "electrodynamics:resourceblockstainlesssteel", "electrodynamics:resourceblocktin", - "electrodynamics:resourceblocksilver", + "electrodynamics:resourceblockaluminum", + "electrodynamics:resourceblockhslasteel", "electrodynamics:resourceblockbronze", + "electrodynamics:resourceblocklead", + "electrodynamics:resourceblockstainlesssteel", + "electrodynamics:resourceblocktitanium", "electrodynamics:resourceblocksteel", + "electrodynamics:resourceblocksilver", + "electrodynamics:resourceblocktitaniumcarbide", "electrodynamics:seismicmarker", "electrodynamics:logisticalmanager", "electrodynamics:logisticalmanager", diff --git a/src/generated/resources/data/minecraft/tags/block/needs_stone_tool.json b/src/generated/resources/data/minecraft/tags/block/needs_stone_tool.json index eba00fdcf..53e7cb341 100644 --- a/src/generated/resources/data/minecraft/tags/block/needs_stone_tool.json +++ b/src/generated/resources/data/minecraft/tags/block/needs_stone_tool.json @@ -1,76 +1,76 @@ { "values": [ + "electrodynamics:electricfurnacedouble", + "electrodynamics:quarry", "electrodynamics:creativepowersource", - "electrodynamics:electricarcfurnacedouble", - "electrodynamics:circuitmonitor", + "electrodynamics:electricarcfurnacetriple", + "electrodynamics:gastanksteel", + "electrodynamics:gascollector", + "electrodynamics:circuitbreaker", + "electrodynamics:oxidationfurnace", + "electrodynamics:advancedsolarpanel", + "electrodynamics:mineralgrinderdouble", + "electrodynamics:electricarcfurnace", + "electrodynamics:fermentationplant", + "electrodynamics:energizedalloyer", + "electrodynamics:combustionchamber", + "electrodynamics:multimeterblock", + "electrodynamics:electrolyticseparator", "electrodynamics:creativefluidsource", - "electrodynamics:coalgenerator", + "electrodynamics:chemicalcrystallizer", + "electrodynamics:wiremill", "electrodynamics:gastankreinforced", - "electrodynamics:circuitbreaker", - "electrodynamics:electricfurnace", - "electrodynamics:windmill", - "electrodynamics:mineralwasher", - "electrodynamics:tankhsla", - "electrodynamics:gaspipepump", - "electrodynamics:mineralcrusherdouble", + "electrodynamics:gasvalve", "electrodynamics:lithiumbatterybox", - "electrodynamics:combustionchamber", - "electrodynamics:gaspipefilter", + "electrodynamics:currentregulator", + "electrodynamics:mineralwasher", + "electrodynamics:chemicalmixer", + "electrodynamics:windmill", + "electrodynamics:fluidpipepump", + "electrodynamics:relay", "electrodynamics:chargerhv", - "electrodynamics:quarry", - "electrodynamics:advanceddowngradetransformer", - "electrodynamics:electricpump", - "electrodynamics:chargerlv", - "electrodynamics:gastanksteel", - "electrodynamics:lathe", - "electrodynamics:fluidpipefilter", - "electrodynamics:wiremilldouble", - "electrodynamics:downgradetransformer", - "electrodynamics:mineralgrindertriple", + "electrodynamics:potentiometer", + "electrodynamics:circuitmonitor", + "electrodynamics:mineralgrinder", "electrodynamics:thermoelectricgenerator", + "electrodynamics:downgradetransformer", + "electrodynamics:electricfurnacetriple", + "electrodynamics:mineralcrusherdouble", + "electrodynamics:upgradetransformer", + "electrodynamics:electrolosischamber", + "electrodynamics:hydroelectricgenerator", "electrodynamics:advancedupgradetransformer", - "electrodynamics:coolantresavoir", + "electrodynamics:electricfurnace", + "electrodynamics:wiremilldouble", + "electrodynamics:lathe", + "electrodynamics:chargerlv", + "electrodynamics:tanksteel", + "electrodynamics:gasvent", + "electrodynamics:fluidpipefilter", + "electrodynamics:reinforcedalloyer", + "electrodynamics:seismicrelay", "electrodynamics:mineralcrushertriple", + "electrodynamics:fluidvoid", + "electrodynamics:chargermv", + "electrodynamics:coolantresavoir", + "electrodynamics:fluidvalve", + "electrodynamics:mineralgrindertriple", + "electrodynamics:gastankhsla", + "electrodynamics:electricarcfurnacedouble", + "electrodynamics:gaspipepump", + "electrodynamics:wiremilltriple", "electrodynamics:batterybox", - "electrodynamics:electrolosischamber", - "electrodynamics:electricfurnacetriple", - "electrodynamics:fermentationplant", - "electrodynamics:energizedalloyer", - "electrodynamics:electricarcfurnacetriple", - "electrodynamics:seismicrelay", + "electrodynamics:tankhsla", + "electrodynamics:advanceddowngradetransformer", + "electrodynamics:gaspipefilter", + "electrodynamics:coalgenerator", "electrodynamics:tankreinforced", - "electrodynamics:solarpanel", - "electrodynamics:advancedsolarpanel", - "electrodynamics:chargermv", "electrodynamics:mineralcrusher", - "electrodynamics:reinforcedalloyer", "electrodynamics:carbynebatterybox", - "electrodynamics:currentregulator", - "electrodynamics:upgradetransformer", - "electrodynamics:tanksteel", - "electrodynamics:wiremill", "electrodynamics:creativegassource", - "electrodynamics:gascollector", - "electrodynamics:mineralgrinderdouble", - "electrodynamics:gasvalve", - "electrodynamics:oxidationfurnace", - "electrodynamics:fluidvalve", - "electrodynamics:fluidvoid", - "electrodynamics:gasvent", - "electrodynamics:gastankhsla", - "electrodynamics:electricarcfurnace", - "electrodynamics:relay", - "electrodynamics:chemicalcrystallizer", - "electrodynamics:multimeterblock", - "electrodynamics:mineralgrinder", - "electrodynamics:fluidpipepump", - "electrodynamics:electricfurnacedouble", - "electrodynamics:hydroelectricgenerator", - "electrodynamics:chemicalmixer", + "electrodynamics:solarpanel", + "electrodynamics:electricpump", "electrodynamics:motorcomplex", - "electrodynamics:wiremilltriple", - "electrodynamics:electrolyticseparator", - "electrodynamics:potentiometer", "electrodynamics:pipesteel", "electrodynamics:pipecopper", "electrodynamics:orefluorite", diff --git a/src/generated/resources/data/neoforge/tags/block/needs_wood_tool.json b/src/generated/resources/data/neoforge/tags/block/needs_wood_tool.json index d8a300d3c..6ac9f3974 100644 --- a/src/generated/resources/data/neoforge/tags/block/needs_wood_tool.json +++ b/src/generated/resources/data/neoforge/tags/block/needs_wood_tool.json @@ -2,180 +2,180 @@ "values": [ "electrodynamics:glassclear", "electrodynamics:glassaluminum", - "electrodynamics:wireinsulatedcopperwhite", - "electrodynamics:wireceramicinsulatedsilveryellow", - "electrodynamics:wirelogisticssilverwhite", - "electrodynamics:wireceramicinsulatedsuperconductiveblue", - "electrodynamics:wireceramicinsulatedirongreen", - "electrodynamics:wireinsulatedgoldblue", - "electrodynamics:wirehighlyinsulatedironbrown", + "electrodynamics:wirehighlyinsulatedsuperconductiveyellow", "electrodynamics:wirehighlyinsulatedsuperconductivegreen", - "electrodynamics:wirelogisticscoppergreen", - "electrodynamics:wirelogisticssuperconductivered", - "electrodynamics:wireceramicinsulatedcopperwhite", - "electrodynamics:wirehighlyinsulatedironblue", - "electrodynamics:wireceramicinsulatedironblue", - "electrodynamics:wireceramicinsulatedcopperbrown", - "electrodynamics:wireinsulatedcopperbrown", - "electrodynamics:wirehighlyinsulatedgoldbrown", - "electrodynamics:wireinsulatedsuperconductiveblack", - "electrodynamics:wireceramicinsulatedgoldblue", - "electrodynamics:wireinsulatedgoldyellow", - "electrodynamics:wirehighlyinsulatedgoldblue", - "electrodynamics:wirelogisticstinbrown", - "electrodynamics:wirehighlyinsulatedsuperconductivebrown", - "electrodynamics:wireceramicinsulatedsilverred", - "electrodynamics:wirelogisticssuperconductivegreen", + "electrodynamics:wirehighlyinsulatedironbrown", + "electrodynamics:wireinsulatedtinred", + "electrodynamics:wireceramicinsulatedsuperconductivered", "electrodynamics:wirelogisticscopperblack", - "electrodynamics:wireceramicinsulatedsilverblue", - "electrodynamics:wireinsulatedtinwhite", - "electrodynamics:wireinsulatedironblue", - "electrodynamics:wirehighlyinsulatedtinyellow", - "electrodynamics:wirelogisticsironwhite", - "electrodynamics:wirehighlyinsulatedtinbrown", - "electrodynamics:wireinsulatedcoppergreen", - "electrodynamics:wirelogisticssilveryellow", - "electrodynamics:wireinsulatedsilverblue", - "electrodynamics:wireinsulatedironbrown", - "electrodynamics:wireiron", - "electrodynamics:wireceramicinsulatedtingreen", - "electrodynamics:wirehighlyinsulatedsilverblack", - "electrodynamics:wireceramicinsulatedtinbrown", - "electrodynamics:wirelogisticsgoldwhite", - "electrodynamics:wirehighlyinsulatedironblack", - "electrodynamics:wirehighlyinsulatedironwhite", "electrodynamics:wireceramicinsulatedcopperred", - "electrodynamics:wirelogisticssilverbrown", + "electrodynamics:wireceramicinsulatedsuperconductivewhite", + "electrodynamics:wirehighlyinsulatedsilverblue", + "electrodynamics:wirelogisticsirongreen", + "electrodynamics:wirelogisticssuperconductiveyellow", + "electrodynamics:wireceramicinsulatedironblack", + "electrodynamics:wireinsulatedsilverblack", + "electrodynamics:wireinsulatedtinblue", + "electrodynamics:wireceramicinsulatedtinblue", + "electrodynamics:wirehighlyinsulatedgoldblue", + "electrodynamics:wireceramicinsulatedtinyellow", + "electrodynamics:wirehighlyinsulatedcopperwhite", + "electrodynamics:wirehighlyinsulatedcopperyellow", + "electrodynamics:wireinsulatedirongreen", + "electrodynamics:wireceramicinsulatedsuperconductivegreen", + "electrodynamics:wirehighlyinsulatedcopperred", + "electrodynamics:wirehighlyinsulatedironyellow", + "electrodynamics:wireceramicinsulatedtinwhite", + "electrodynamics:wirelogisticscopperred", + "electrodynamics:wirelogisticsgoldyellow", + "electrodynamics:wireceramicinsulatedironyellow", + "electrodynamics:wirelogisticsgoldblue", + "electrodynamics:wirelogisticstinyellow", + "electrodynamics:wirehighlyinsulatedsilverbrown", + "electrodynamics:wireceramicinsulatedgoldbrown", "electrodynamics:wireceramicinsulatedcopperblack", + "electrodynamics:wirelogisticsironblack", + "electrodynamics:wireinsulatedcopperblack", + "electrodynamics:wireinsulatedironwhite", + "electrodynamics:wireceramicinsulatedcopperblue", + "electrodynamics:wirelogisticscopperblue", + "electrodynamics:wireinsulatedironyellow", + "electrodynamics:wirehighlyinsulatedsilvergreen", + "electrodynamics:wirehighlyinsulatedsuperconductivebrown", "electrodynamics:wirehighlyinsulatedsuperconductiveblack", - "electrodynamics:wireinsulatedgoldwhite", - "electrodynamics:wirehighlyinsulatedsuperconductiveyellow", - "electrodynamics:wirehighlyinsulatedtingreen", - "electrodynamics:wirelogisticstinyellow", - "electrodynamics:wirehighlyinsulatedgoldyellow", + "electrodynamics:wireceramicinsulatedsilveryellow", + "electrodynamics:wireinsulatedironbrown", + "electrodynamics:wirehighlyinsulatedgoldblack", + "electrodynamics:wirehighlyinsulatedsuperconductivewhite", + "electrodynamics:wirehighlyinsulatedtinred", + "electrodynamics:wiresilver", + "electrodynamics:wireceramicinsulatedcopperwhite", + "electrodynamics:wireinsulatedsuperconductiveblue", + "electrodynamics:wirelogisticssilveryellow", + "electrodynamics:wirehighlyinsulatedsuperconductiveblue", + "electrodynamics:wirelogisticssuperconductivegreen", + "electrodynamics:wirehighlyinsulatedirongreen", + "electrodynamics:wireceramicinsulatedironred", + "electrodynamics:wirelogisticscopperbrown", + "electrodynamics:wireceramicinsulatedtinred", + "electrodynamics:wireceramicinsulatedironblue", + "electrodynamics:wireinsulatedsuperconductivered", "electrodynamics:wiregold", - "electrodynamics:wirehighlyinsulatedsilverred", + "electrodynamics:wireinsulatedcopperbrown", + "electrodynamics:wireinsulatedgoldred", "electrodynamics:wirelogisticsgoldgreen", - "electrodynamics:wirelogisticsgoldred", - "electrodynamics:wirehighlyinsulatedirongreen", - "electrodynamics:wireceramicinsulatedsuperconductiveblack", + "electrodynamics:wireinsulatedgoldgreen", + "electrodynamics:wireinsulatedsilverblue", + "electrodynamics:wireinsulatedgoldblack", + "electrodynamics:wirehighlyinsulatedsilverblack", + "electrodynamics:wireinsulatedgoldblue", + "electrodynamics:wirelogisticstinred", + "electrodynamics:wirehighlyinsulatedironblue", + "electrodynamics:wireceramicinsulatedsilverred", + "electrodynamics:wireceramicinsulatedirongreen", + "electrodynamics:wireceramicinsulatedsuperconductivebrown", + "electrodynamics:wireinsulatedsilveryellow", + "electrodynamics:wireinsulatedtinbrown", + "electrodynamics:wireinsulatedcopperred", + "electrodynamics:wirehighlyinsulatedironred", "electrodynamics:wireinsulatedsuperconductivewhite", + "electrodynamics:wirelogisticssilvergreen", + "electrodynamics:wireinsulatedsilverbrown", + "electrodynamics:wireceramicinsulatedironwhite", + "electrodynamics:wireceramicinsulatedtingreen", + "electrodynamics:wireinsulatedtinblack", + "electrodynamics:wireceramicinsulatedtinbrown", + "electrodynamics:wirelogisticscoppergreen", + "electrodynamics:wirehighlyinsulatedsuperconductivered", + "electrodynamics:wireinsulatedtinyellow", "electrodynamics:wirehighlyinsulatedgoldred", - "electrodynamics:wireceramicinsulatedtinwhite", + "electrodynamics:wirehighlyinsulatedtinblack", + "electrodynamics:wirehighlyinsulatedcopperbrown", + "electrodynamics:wirelogisticssilverblack", + "electrodynamics:wirehighlyinsulatedcopperblue", + "electrodynamics:wiresuperconductive", + "electrodynamics:wirehighlyinsulatedgoldbrown", + "electrodynamics:wirehighlyinsulatedironwhite", + "electrodynamics:wireinsulatedsuperconductivebrown", + "electrodynamics:wireceramicinsulatedsilverblue", + "electrodynamics:wireceramicinsulatedtinblack", "electrodynamics:wireceramicinsulatedsilverbrown", - "electrodynamics:wiresilver", - "electrodynamics:wirelogisticstinred", - "electrodynamics:wirelogisticsgoldblack", - "electrodynamics:wireceramicinsulatedironblack", - "electrodynamics:wireinsulatedironred", - "electrodynamics:wirelogisticssuperconductiveyellow", "electrodynamics:wireinsulatedcopperblue", - "electrodynamics:wireceramicinsulatedsilverwhite", - "electrodynamics:wireceramicinsulatedgoldbrown", - "electrodynamics:wirelogisticsironblack", - "electrodynamics:wirelogisticscopperred", - "electrodynamics:wirehighlyinsulatedsilverblue", - "electrodynamics:wireinsulatedsilvergreen", - "electrodynamics:wireceramicinsulatedtinyellow", - "electrodynamics:wireinsulatedsilveryellow", - "electrodynamics:wireceramicinsulatedtinblack", - "electrodynamics:wiretin", + "electrodynamics:wirelogisticssuperconductiveblack", + "electrodynamics:wireinsulatedironblack", + "electrodynamics:wirehighlyinsulatedcopperblack", + "electrodynamics:wireceramicinsulatedgoldblue", + "electrodynamics:wirelogisticssilverblue", + "electrodynamics:wireceramicinsulatedsilverblack", "electrodynamics:wirehighlyinsulatedsilverwhite", - "electrodynamics:wireceramicinsulatedcopperyellow", - "electrodynamics:wirelogisticssuperconductivebrown", - "electrodynamics:wirelogisticssilvergreen", - "electrodynamics:wireinsulatedsilverred", + "electrodynamics:wirehighlyinsulatedtinwhite", + "electrodynamics:wireinsulatedtingreen", "electrodynamics:wireinsulatedsuperconductivegreen", - "electrodynamics:wireinsulatedcopperblack", - "electrodynamics:wirehighlyinsulatedsuperconductivered", - "electrodynamics:wireinsulatedsilverblack", - "electrodynamics:wirelogisticssuperconductiveblue", - "electrodynamics:wireceramicinsulatedsuperconductivered", - "electrodynamics:wireinsulatedgoldred", - "electrodynamics:wirehighlyinsulatedgoldgreen", - "electrodynamics:wireceramicinsulatedironred", - "electrodynamics:wirelogisticsgoldbrown", - "electrodynamics:wireinsulatedirongreen", - "electrodynamics:wireinsulatedtinbrown", - "electrodynamics:wireinsulatedsuperconductivebrown", - "electrodynamics:wireinsulatedtinred", - "electrodynamics:wireinsulatedironyellow", - "electrodynamics:wirehighlyinsulatedcoppergreen", + "electrodynamics:wireceramicinsulatedgoldblack", + "electrodynamics:wireceramicinsulatedironbrown", + "electrodynamics:wireceramicinsulatedcopperbrown", + "electrodynamics:wirelogisticssuperconductivebrown", "electrodynamics:wireinsulatedcopperyellow", - "electrodynamics:wireceramicinsulatedironwhite", - "electrodynamics:wireinsulatedgoldbrown", - "electrodynamics:wirehighlyinsulatedsilvergreen", - "electrodynamics:wirelogisticscopperbrown", - "electrodynamics:wirehighlyinsulatedsilveryellow", - "electrodynamics:wirehighlyinsulatedcopperblack", - "electrodynamics:wireceramicinsulatedtinblue", - "electrodynamics:wirecopper", - "electrodynamics:wireceramicinsulatedgoldwhite", + "electrodynamics:wireinsulatedsuperconductiveblack", + "electrodynamics:wirehighlyinsulatedtinblue", + "electrodynamics:wireceramicinsulatedgoldgreen", + "electrodynamics:wirehighlyinsulatedgoldgreen", + "electrodynamics:wirehighlyinsulatedtingreen", + "electrodynamics:wirehighlyinsulatedgoldyellow", + "electrodynamics:wireinsulatedironblue", + "electrodynamics:wirehighlyinsulatedtinbrown", "electrodynamics:wireceramicinsulatedsilvergreen", - "electrodynamics:wireceramicinsulatedsuperconductivegreen", - "electrodynamics:wirehighlyinsulatedgoldblack", - "electrodynamics:wirelogisticssuperconductivewhite", - "electrodynamics:wirelogisticssilverblue", "electrodynamics:wirelogisticssilverred", - "electrodynamics:wirelogisticsgoldblue", - "electrodynamics:wireinsulatedgoldblack", - "electrodynamics:wirehighlyinsulatedgoldwhite", - "electrodynamics:wireceramicinsulatedcopperblue", - "electrodynamics:wirelogisticssilverblack", - "electrodynamics:wireinsulatedgoldgreen", - "electrodynamics:wirelogisticssuperconductiveblack", - "electrodynamics:wirehighlyinsulatedtinblue", - "electrodynamics:wireinsulatedsuperconductiveblue", - "electrodynamics:wirelogisticsironred", - "electrodynamics:wirelogisticsgoldyellow", + "electrodynamics:wireiron", + "electrodynamics:wireinsulatedsilverred", + "electrodynamics:wirelogisticssilverwhite", + "electrodynamics:wirelogisticsironyellow", + "electrodynamics:wireinsulatedsuperconductiveyellow", + "electrodynamics:wireceramicinsulatedgoldwhite", "electrodynamics:wireceramicinsulatedgoldyellow", + "electrodynamics:wirelogisticssuperconductivered", + "electrodynamics:wirelogisticssuperconductiveblue", + "electrodynamics:wirelogisticsironwhite", + "electrodynamics:wirehighlyinsulatedsilverred", + "electrodynamics:wirehighlyinsulatedgoldwhite", + "electrodynamics:wireinsulatedgoldbrown", + "electrodynamics:wireceramicinsulatedsuperconductiveblack", + "electrodynamics:wireinsulatedgoldyellow", "electrodynamics:wireceramicinsulatedsuperconductiveyellow", - "electrodynamics:wirelogisticstinblack", - "electrodynamics:wireinsulatedsilverbrown", - "electrodynamics:wireinsulatedsuperconductiveyellow", - "electrodynamics:wireinsulatedtinblack", - "electrodynamics:wirehighlyinsulatedtinred", - "electrodynamics:wireceramicinsulatedgoldgreen", - "electrodynamics:wireceramicinsulatedtinred", - "electrodynamics:wirehighlyinsulatedcopperblue", - "electrodynamics:wirelogisticstingreen", - "electrodynamics:wirelogisticsironblue", + "electrodynamics:wireceramicinsulatedcopperyellow", + "electrodynamics:wirelogisticstinwhite", + "electrodynamics:wirehighlyinsulatedtinyellow", + "electrodynamics:wirelogisticsgoldblack", "electrodynamics:wireceramicinsulatedgoldred", - "electrodynamics:wirehighlyinsulatedcopperbrown", - "electrodynamics:wireceramicinsulatedironyellow", + "electrodynamics:wireinsulatedtinwhite", + "electrodynamics:wirelogisticsgoldred", + "electrodynamics:wireceramicinsulatedcoppergreen", + "electrodynamics:wirelogisticstinblue", + "electrodynamics:wireinsulatedcoppergreen", + "electrodynamics:wireceramicinsulatedsilverwhite", + "electrodynamics:wirecopper", + "electrodynamics:wirelogisticstingreen", + "electrodynamics:wirehighlyinsulatedcoppergreen", + "electrodynamics:wiretin", + "electrodynamics:wirelogisticstinbrown", + "electrodynamics:wirehighlyinsulatedironblack", "electrodynamics:wirelogisticscopperwhite", - "electrodynamics:wireceramicinsulatedsuperconductivebrown", "electrodynamics:wireinsulatedsilverwhite", - "electrodynamics:wirehighlyinsulatedtinblack", - "electrodynamics:wirehighlyinsulatedsilverbrown", + "electrodynamics:wirelogisticsgoldbrown", + "electrodynamics:wireinsulatedgoldwhite", + "electrodynamics:wirelogisticssilverbrown", + "electrodynamics:wireinsulatedironred", + "electrodynamics:wireceramicinsulatedsuperconductiveblue", "electrodynamics:wirelogisticsironbrown", - "electrodynamics:wireinsulatedironblack", - "electrodynamics:wireceramicinsulatedcoppergreen", - "electrodynamics:wirehighlyinsulatedtinwhite", - "electrodynamics:wireinsulatedtingreen", - "electrodynamics:wirelogisticsirongreen", + "electrodynamics:wirelogisticsgoldwhite", + "electrodynamics:wireinsulatedsilvergreen", + "electrodynamics:wirelogisticstinblack", + "electrodynamics:wirelogisticsironblue", + "electrodynamics:wirehighlyinsulatedsilveryellow", "electrodynamics:wirelogisticscopperyellow", - "electrodynamics:wirehighlyinsulatedsuperconductivewhite", - "electrodynamics:wireceramicinsulatedgoldblack", - "electrodynamics:wirelogisticstinblue", - "electrodynamics:wirehighlyinsulatedironyellow", - "electrodynamics:wireinsulatedironwhite", - "electrodynamics:wireinsulatedtinyellow", - "electrodynamics:wireinsulatedtinblue", - "electrodynamics:wireinsulatedsuperconductivered", - "electrodynamics:wireceramicinsulatedironbrown", - "electrodynamics:wireinsulatedcopperred", - "electrodynamics:wirehighlyinsulatedcopperyellow", - "electrodynamics:wirehighlyinsulatedironred", - "electrodynamics:wirehighlyinsulatedsuperconductiveblue", - "electrodynamics:wirelogisticscopperblue", - "electrodynamics:wireceramicinsulatedsuperconductivewhite", - "electrodynamics:wireceramicinsulatedsilverblack", - "electrodynamics:wiresuperconductive", - "electrodynamics:wirehighlyinsulatedcopperwhite", - "electrodynamics:wirelogisticsironyellow", - "electrodynamics:wirehighlyinsulatedcopperred", - "electrodynamics:wirelogisticstinwhite", + "electrodynamics:wirelogisticsironred", + "electrodynamics:wirelogisticssuperconductivewhite", + "electrodynamics:wireinsulatedcopperwhite", "electrodynamics:frame", "electrodynamics:framecorner" ] diff --git a/src/main/java/electrodynamics/Electrodynamics.java b/src/main/java/electrodynamics/Electrodynamics.java index ec3f6202b..a5d0761ac 100644 --- a/src/main/java/electrodynamics/Electrodynamics.java +++ b/src/main/java/electrodynamics/Electrodynamics.java @@ -6,8 +6,8 @@ import electrodynamics.api.electricity.RegisterWiresEvent; import electrodynamics.common.block.connect.BlockWire; import electrodynamics.common.reloadlistener.GasCollectorChromoCardsRegister; -import electrodynamics.prefab.properties.PropertyTypes; import electrodynamics.registers.ElectrodynamicsBlocks; +import net.minecraft.resources.ResourceLocation; import net.neoforged.fml.common.EventBusSubscriber; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; @@ -18,7 +18,6 @@ import electrodynamics.common.block.voxelshapes.ElectrodynamicsVoxelShapes; import electrodynamics.common.entity.ElectrodynamicsAttributeModifiers; import electrodynamics.common.event.ServerEventHandler; -import electrodynamics.common.eventbus.RegisterPropertiesEvent; import electrodynamics.common.packet.types.client.PacketResetGuidebookPages; import electrodynamics.common.reloadlistener.CoalGeneratorFuelRegister; import electrodynamics.common.reloadlistener.CombustionFuelRegister; @@ -27,7 +26,6 @@ import electrodynamics.common.settings.OreConfig; import electrodynamics.common.tags.ElectrodynamicsTags; import electrodynamics.prefab.configuration.ConfigurationHandler; -import electrodynamics.prefab.properties.PropertyManager; import electrodynamics.registers.UnifiedElectrodynamicsRegister; import net.minecraft.server.level.ServerPlayer; import net.neoforged.api.distmarker.Dist; @@ -80,11 +78,6 @@ public static void onCommonSetup(FMLCommonSetupEvent event) { // ElectrodynamicsGases.MAPPED_GASSES.putAll(map.fluidToGasMap); event.enqueueWork(() -> { - RegisterPropertiesEvent properties = new RegisterPropertiesEvent(); - - ModLoader.postEvent(properties); - - PropertyManager.registerProperties(properties.getRegisteredProperties()); RegisterWiresEvent wiresEvent = new RegisterWiresEvent(); @@ -95,27 +88,6 @@ public static void onCommonSetup(FMLCommonSetupEvent event) { } - @SubscribeEvent - public static void registerProperties(RegisterPropertiesEvent event) { - event.registerProperty(PropertyTypes.BYTE); - event.registerProperty(PropertyTypes.BOOLEAN); - event.registerProperty(PropertyTypes.INTEGER); - event.registerProperty(PropertyTypes.LONG); - event.registerProperty(PropertyTypes.FLOAT); - event.registerProperty(PropertyTypes.DOUBLE); - event.registerProperty(PropertyTypes.UUID); - event.registerProperty(PropertyTypes.COMPOUND_TAG); - event.registerProperty(PropertyTypes.BLOCK_POS); - event.registerProperty(PropertyTypes.INVENTORY_ITEMS); - event.registerProperty(PropertyTypes.FLUID_STACK); - event.registerProperty(PropertyTypes.BLOCK_POS_LIST); - event.registerProperty(PropertyTypes.LOCATION); - event.registerProperty(PropertyTypes.GAS_STACK); - event.registerProperty(PropertyTypes.ITEM_STACK); - event.registerProperty(PropertyTypes.BLOCK_STATE); - event.registerProperty(PropertyTypes.TRANSFER_PACK); - } - // I wonder how long this bug has been there @SubscribeEvent @OnlyIn(Dist.CLIENT) @@ -146,4 +118,20 @@ public static void registerWires(RegisterWiresEvent event) { } } + public static final ResourceLocation rl(String path) { + return ResourceLocation.fromNamespaceAndPath(References.ID, path); + } + + public static final ResourceLocation vanillarl(String path) { + return ResourceLocation.withDefaultNamespace(path); + } + + public static final ResourceLocation forgerl(String path) { + return ResourceLocation.fromNamespaceAndPath("neoforge", path); + } + + public static final ResourceLocation commonrl(String path) { + return ResourceLocation.fromNamespaceAndPath("c", path); + } + } diff --git a/src/main/java/electrodynamics/api/multiblock/assemblybased/Multiblock.java b/src/main/java/electrodynamics/api/multiblock/assemblybased/Multiblock.java index 1449f8bc1..789c7bf5c 100644 --- a/src/main/java/electrodynamics/api/multiblock/assemblybased/Multiblock.java +++ b/src/main/java/electrodynamics/api/multiblock/assemblybased/Multiblock.java @@ -6,6 +6,7 @@ import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import net.minecraft.core.Direction; import net.minecraft.core.Registry; @@ -25,7 +26,7 @@ public record Multiblock(Map> nodes) { public static final String FOLDER = "multiblock"; - public static final ResourceKey> REGISTRY_KEY = ResourceKey.createRegistryKey(ResourceLocation.fromNamespaceAndPath(References.ID, FOLDER)); + public static final ResourceKey> REGISTRY_KEY = ResourceKey.createRegistryKey(Electrodynamics.rl(FOLDER)); public static final String MEMBER_FIELD = "members"; @@ -35,7 +36,7 @@ public record Multiblock(Map> nodes) { Codec.unboundedMap(Direction.CODEC, MultiblockSlaveNode.CODEC.listOf()).fieldOf(MEMBER_FIELD).forGetter(Multiblock::nodes) - ).apply(instance, nodes -> new Multiblock(nodes))); + ).apply(instance, Multiblock::new)); public static List getNodes(Level world, ResourceKey id, Direction facing) { return world.registryAccess().lookupOrThrow(Multiblock.REGISTRY_KEY).getOrThrow(id).value().nodes().get(facing); diff --git a/src/main/java/electrodynamics/api/multiblock/assemblybased/MultiblockSlaveNode.java b/src/main/java/electrodynamics/api/multiblock/assemblybased/MultiblockSlaveNode.java index c088beac4..b1f521ba6 100644 --- a/src/main/java/electrodynamics/api/multiblock/assemblybased/MultiblockSlaveNode.java +++ b/src/main/java/electrodynamics/api/multiblock/assemblybased/MultiblockSlaveNode.java @@ -3,6 +3,7 @@ import com.mojang.serialization.Codec; import com.mojang.serialization.codecs.RecordCodecBuilder; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import io.netty.buffer.ByteBuf; import net.minecraft.core.Vec3i; @@ -35,8 +36,8 @@ * */ public record MultiblockSlaveNode(BlockState placeState, BlockState replaceState, TagKey taggedBlocks, Vec3i offset, VoxelShape renderShape, ResourceLocation model) { - public static final TagKey NOTAG =BlockTags.create(ResourceLocation.fromNamespaceAndPath(References.ID, "notag")); - public static final ResourceLocation NOMODEL = ResourceLocation.fromNamespaceAndPath(References.ID, "nomodel"); + public static final TagKey NOTAG = BlockTags.create(Electrodynamics.rl("notag")); + public static final ResourceLocation NOMODEL = Electrodynamics.rl("nomodel"); public static final Codec AABB_CODEC = RecordCodecBuilder.create(instance -> instance.group( // @@ -53,11 +54,11 @@ public record MultiblockSlaveNode(BlockState placeState, BlockState replaceState Codec.DOUBLE.fieldOf("zMax").forGetter(aabb -> aabb.maxZ) // - ).apply(instance, (minX, minY, minZ, maxX, maxY, maxZ) -> new AABB(minX, minY, minZ, maxX, maxY, maxZ))); + ).apply(instance, AABB::new)); public static final Codec VOXELSHAPE_CODEC = RecordCodecBuilder.create(instance -> instance.group( // - AABB_CODEC.listOf().fieldOf("aabbs").forGetter(voxelShape -> voxelShape.toAabbs())).apply(instance, list -> { + AABB_CODEC.listOf().fieldOf("aabbs").forGetter(VoxelShape::toAabbs)).apply(instance, list -> { VoxelShape shape = Shapes.empty(); for (AABB aabb : list) { shape = Shapes.or(shape, Shapes.create(aabb)); @@ -92,7 +93,7 @@ public record MultiblockSlaveNode(BlockState placeState, BlockState replaceState ResourceLocation.CODEC.optionalFieldOf(MODEL_FIELD, NOMODEL).forGetter(MultiblockSlaveNode::model) // - ).apply(instance, (placeState, replaceState, blockTag, offset, shape, id) -> new MultiblockSlaveNode(placeState, replaceState, blockTag, offset, shape, id))); + ).apply(instance, MultiblockSlaveNode::new)); public static final MultiblockSlaveNode EMPTY = new MultiblockSlaveNode(Blocks.AIR.defaultBlockState(), Blocks.AIR.defaultBlockState(), NOTAG, Vec3i.ZERO, Shapes.empty(), NOMODEL); diff --git a/src/main/java/electrodynamics/api/screen/ITexture.java b/src/main/java/electrodynamics/api/screen/ITexture.java index bef0f65f3..eb5613d80 100644 --- a/src/main/java/electrodynamics/api/screen/ITexture.java +++ b/src/main/java/electrodynamics/api/screen/ITexture.java @@ -1,6 +1,6 @@ package electrodynamics.api.screen; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import net.minecraft.resources.ResourceLocation; /** @@ -27,9 +27,9 @@ public interface ITexture { enum Textures implements ITexture { NONE(0, 0, 0, 0, 0, 0, null), - CONDENSER_COLUMN(32, 47, 0, 0, 32, 47, ResourceLocation.parse(References.ID + ":textures/screen/component/condensercolumn.png")), - TRANSFORMER_SYMBOL(25, 33, 0, 0, 25, 33, ResourceLocation.parse(References.ID + ":textures/screen/component/transformercoil.png")), - WHITE(10, 10, 0, 0 ,10, 10, ResourceLocation.fromNamespaceAndPath("neoforge", "textures/white.png")); + CONDENSER_COLUMN(32, 47, 0, 0, 32, 47, Electrodynamics.rl("textures/screen/component/condensercolumn.png")), + TRANSFORMER_SYMBOL(25, 33, 0, 0, 25, 33, Electrodynamics.rl("textures/screen/component/transformercoil.png")), + WHITE(10, 10, 0, 0 ,10, 10, Electrodynamics.forgerl("textures/white.png")); private final int textureWidth; private final int textureHeight; diff --git a/src/main/java/electrodynamics/client/ClientRegister.java b/src/main/java/electrodynamics/client/ClientRegister.java index 701efe919..949899ad8 100644 --- a/src/main/java/electrodynamics/client/ClientRegister.java +++ b/src/main/java/electrodynamics/client/ClientRegister.java @@ -4,6 +4,7 @@ import java.util.HashMap; import java.util.List; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import electrodynamics.client.guidebook.ModuleElectrodynamics; import electrodynamics.client.guidebook.ScreenGuidebook; @@ -64,8 +65,6 @@ @EventBusSubscriber(modid = References.ID, bus = EventBusSubscriber.Bus.MOD, value = {Dist.CLIENT}) public class ClientRegister { - private static final String BLOCK_LOC = References.ID + ":block/"; - // sometimes I fucking hate this game public static final LayerDefinition COMPOSITE_ARMOR_LAYER_LEG_NOCHEST = ModelCompositeArmor.createBodyLayer(1, true); public static final LayerDefinition COMPOSITE_ARMOR_LAYER_BOOTS = ModelCompositeArmor.createBodyLayer(2, false); @@ -88,56 +87,56 @@ public class ClientRegister { public static final LayerDefinition COMBAT_ARMOR_LAYER_COMB_CHEST = ModelCombatArmor.createBodyLayer(3, false); - public static final ResourceLocation ON = ResourceLocation.withDefaultNamespace("on"); - - public static final ModelResourceLocation MODEL_ADVSOLARTOP = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "advancedsolarpaneltop")); - public static final ModelResourceLocation MODEL_BATTERYBOX = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "batterybox")); - public static final ModelResourceLocation MODEL_BATTERYBOX2 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "batterybox2")); - public static final ModelResourceLocation MODEL_BATTERYBOX3 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "batterybox3")); - public static final ModelResourceLocation MODEL_BATTERYBOX4 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "batterybox4")); - public static final ModelResourceLocation MODEL_BATTERYBOX5 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "batterybox5")); - public static final ModelResourceLocation MODEL_BATTERYBOX6 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "batterybox6")); - public static final ModelResourceLocation MODEL_BATTERYBOX7 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "batterybox7")); - public static final ModelResourceLocation MODEL_LITHIUMBATTERYBOX = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "lithiumbatterybox")); - public static final ModelResourceLocation MODEL_LITHIUMBATTERYBOX2 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "lithiumbatterybox2")); - public static final ModelResourceLocation MODEL_LITHIUMBATTERYBOX3 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "lithiumbatterybox3")); - public static final ModelResourceLocation MODEL_LITHIUMBATTERYBOX4 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "lithiumbatterybox4")); - public static final ModelResourceLocation MODEL_LITHIUMBATTERYBOX5 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "lithiumbatterybox5")); - public static final ModelResourceLocation MODEL_LITHIUMBATTERYBOX6 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "lithiumbatterybox6")); - public static final ModelResourceLocation MODEL_LITHIUMBATTERYBOX7 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "lithiumbatterybox7")); - public static final ModelResourceLocation MODEL_CARBYNEBATTERYBOX = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "carbynebatterybox")); - public static final ModelResourceLocation MODEL_CARBYNEBATTERYBOX2 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "carbynebatterybox2")); - public static final ModelResourceLocation MODEL_CARBYNEBATTERYBOX3 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "carbynebatterybox3")); - public static final ModelResourceLocation MODEL_CARBYNEBATTERYBOX4 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "carbynebatterybox4")); - public static final ModelResourceLocation MODEL_CARBYNEBATTERYBOX5 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "carbynebatterybox5")); - public static final ModelResourceLocation MODEL_CARBYNEBATTERYBOX6 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "carbynebatterybox6")); - public static final ModelResourceLocation MODEL_CARBYNEBATTERYBOX7 = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "carbynebatterybox7")); - public static final ModelResourceLocation MODEL_CHEMICALMIXERBASE = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "chemicalmixerbase")); - public static final ModelResourceLocation MODEL_HYDROELECTRICGENERATORBLADES = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "hydroelectricgeneratorblades")); - public static final ModelResourceLocation MODEL_WINDMILLBLADES = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "windmillblades")); - public static final ModelResourceLocation MODEL_MINERALCRUSHERHANDLE = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "mineralcrusherhandle")); - public static final ModelResourceLocation MODEL_MINERALCRUSHERDOUBLEHANDLE = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "mineralcrusherdoublehandle")); - public static final ModelResourceLocation MODEL_MINERALCRUSHERTRIPLEHANDLE = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "mineralcrushertriplehandle")); - public static final ModelResourceLocation MODEL_MINERALGRINDERWHEEL = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "mineralgrinderwheel")); - public static final ModelResourceLocation MODEL_CHEMICALMIXERBLADES = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "chemicalmixerblades")); - public static final ModelResourceLocation MODEL_LATHESHAFT = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "latheshaft")); - public static final ModelResourceLocation MODEL_MOTORCOMPLEXROTOR = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "motorcomplexrotor")); - public static final ModelResourceLocation MODEL_CHEMICALREACTOR_ROTOR = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "chemicalreactormodelrotor")); - - public static final ModelResourceLocation MODEL_RODSTEEL = ModelResourceLocation.standalone(ResourceLocation.parse(References.ID + ":entity/rodsteel")); - public static final ModelResourceLocation MODEL_RODSTAINLESSSTEEL = ModelResourceLocation.standalone(ResourceLocation.parse(References.ID + ":entity/rodstainlesssteel")); - public static final ModelResourceLocation MODEL_RODHSLASTEEL = ModelResourceLocation.standalone(ResourceLocation.parse(References.ID + ":entity/rodhslasteel")); - - public static final ModelResourceLocation MODEL_QUARRYWHEEL_STILL = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "quarrywheelstill")); - public static final ModelResourceLocation MODEL_QUARRYWHEEL_ROT = ModelResourceLocation.standalone(ResourceLocation.parse(BLOCK_LOC + "quarrywheelrot")); + public static final ResourceLocation ON = Electrodynamics.vanillarl("on"); + + public static final ModelResourceLocation MODEL_ADVSOLARTOP = ModelResourceLocation.standalone(Electrodynamics.rl("block/advancedsolarpaneltop")); + public static final ModelResourceLocation MODEL_BATTERYBOX = ModelResourceLocation.standalone(Electrodynamics.rl("block/batterybox")); + public static final ModelResourceLocation MODEL_BATTERYBOX2 = ModelResourceLocation.standalone(Electrodynamics.rl("block/batterybox2")); + public static final ModelResourceLocation MODEL_BATTERYBOX3 = ModelResourceLocation.standalone(Electrodynamics.rl("block/batterybox3")); + public static final ModelResourceLocation MODEL_BATTERYBOX4 = ModelResourceLocation.standalone(Electrodynamics.rl("block/batterybox4")); + public static final ModelResourceLocation MODEL_BATTERYBOX5 = ModelResourceLocation.standalone(Electrodynamics.rl("block/batterybox5")); + public static final ModelResourceLocation MODEL_BATTERYBOX6 = ModelResourceLocation.standalone(Electrodynamics.rl("block/batterybox6")); + public static final ModelResourceLocation MODEL_BATTERYBOX7 = ModelResourceLocation.standalone(Electrodynamics.rl("block/batterybox7")); + public static final ModelResourceLocation MODEL_LITHIUMBATTERYBOX = ModelResourceLocation.standalone(Electrodynamics.rl("block/lithiumbatterybox")); + public static final ModelResourceLocation MODEL_LITHIUMBATTERYBOX2 = ModelResourceLocation.standalone(Electrodynamics.rl("block/lithiumbatterybox2")); + public static final ModelResourceLocation MODEL_LITHIUMBATTERYBOX3 = ModelResourceLocation.standalone(Electrodynamics.rl("block/lithiumbatterybox3")); + public static final ModelResourceLocation MODEL_LITHIUMBATTERYBOX4 = ModelResourceLocation.standalone(Electrodynamics.rl("block/lithiumbatterybox4")); + public static final ModelResourceLocation MODEL_LITHIUMBATTERYBOX5 = ModelResourceLocation.standalone(Electrodynamics.rl("block/lithiumbatterybox5")); + public static final ModelResourceLocation MODEL_LITHIUMBATTERYBOX6 = ModelResourceLocation.standalone(Electrodynamics.rl("block/lithiumbatterybox6")); + public static final ModelResourceLocation MODEL_LITHIUMBATTERYBOX7 = ModelResourceLocation.standalone(Electrodynamics.rl("block/lithiumbatterybox7")); + public static final ModelResourceLocation MODEL_CARBYNEBATTERYBOX = ModelResourceLocation.standalone(Electrodynamics.rl("block/carbynebatterybox")); + public static final ModelResourceLocation MODEL_CARBYNEBATTERYBOX2 = ModelResourceLocation.standalone(Electrodynamics.rl("block/carbynebatterybox2")); + public static final ModelResourceLocation MODEL_CARBYNEBATTERYBOX3 = ModelResourceLocation.standalone(Electrodynamics.rl("block/carbynebatterybox3")); + public static final ModelResourceLocation MODEL_CARBYNEBATTERYBOX4 = ModelResourceLocation.standalone(Electrodynamics.rl("block/carbynebatterybox4")); + public static final ModelResourceLocation MODEL_CARBYNEBATTERYBOX5 = ModelResourceLocation.standalone(Electrodynamics.rl("block/carbynebatterybox5")); + public static final ModelResourceLocation MODEL_CARBYNEBATTERYBOX6 = ModelResourceLocation.standalone(Electrodynamics.rl("block/carbynebatterybox6")); + public static final ModelResourceLocation MODEL_CARBYNEBATTERYBOX7 = ModelResourceLocation.standalone(Electrodynamics.rl("block/carbynebatterybox7")); + public static final ModelResourceLocation MODEL_CHEMICALMIXERBASE = ModelResourceLocation.standalone(Electrodynamics.rl("block/chemicalmixerbase")); + public static final ModelResourceLocation MODEL_HYDROELECTRICGENERATORBLADES = ModelResourceLocation.standalone(Electrodynamics.rl("block/hydroelectricgeneratorblades")); + public static final ModelResourceLocation MODEL_WINDMILLBLADES = ModelResourceLocation.standalone(Electrodynamics.rl("block/windmillblades")); + public static final ModelResourceLocation MODEL_MINERALCRUSHERHANDLE = ModelResourceLocation.standalone(Electrodynamics.rl("block/mineralcrusherhandle")); + public static final ModelResourceLocation MODEL_MINERALCRUSHERDOUBLEHANDLE = ModelResourceLocation.standalone(Electrodynamics.rl("block/mineralcrusherdoublehandle")); + public static final ModelResourceLocation MODEL_MINERALCRUSHERTRIPLEHANDLE = ModelResourceLocation.standalone(Electrodynamics.rl("block/mineralcrushertriplehandle")); + public static final ModelResourceLocation MODEL_MINERALGRINDERWHEEL = ModelResourceLocation.standalone(Electrodynamics.rl("block/mineralgrinderwheel")); + public static final ModelResourceLocation MODEL_CHEMICALMIXERBLADES = ModelResourceLocation.standalone(Electrodynamics.rl("block/chemicalmixerblades")); + public static final ModelResourceLocation MODEL_LATHESHAFT = ModelResourceLocation.standalone(Electrodynamics.rl("block/latheshaft")); + public static final ModelResourceLocation MODEL_MOTORCOMPLEXROTOR = ModelResourceLocation.standalone(Electrodynamics.rl("block/motorcomplexrotor")); + public static final ModelResourceLocation MODEL_CHEMICALREACTOR_ROTOR = ModelResourceLocation.standalone(Electrodynamics.rl("block/chemicalreactormodelrotor")); + + public static final ModelResourceLocation MODEL_RODSTEEL = ModelResourceLocation.standalone(Electrodynamics.rl("entity/rodsteel")); + public static final ModelResourceLocation MODEL_RODSTAINLESSSTEEL = ModelResourceLocation.standalone(Electrodynamics.rl("entity/rodstainlesssteel")); + public static final ModelResourceLocation MODEL_RODHSLASTEEL = ModelResourceLocation.standalone(Electrodynamics.rl("entity/rodhslasteel")); + + public static final ModelResourceLocation MODEL_QUARRYWHEEL_STILL = ModelResourceLocation.standalone(Electrodynamics.rl("block/quarrywheelstill")); + public static final ModelResourceLocation MODEL_QUARRYWHEEL_ROT = ModelResourceLocation.standalone(Electrodynamics.rl("block/quarrywheelrot")); // Custom Textures - public static final ResourceLocation TEXTURE_WHITE = ResourceLocation.fromNamespaceAndPath("neoforge", "white"); - public static final ResourceLocation TEXTURE_QUARRYARM = ResourceLocation.fromNamespaceAndPath(References.ID, "block/custom/quarryarm"); - public static final ResourceLocation TEXTURE_QUARRYARM_DARK = ResourceLocation.fromNamespaceAndPath(References.ID, "block/custom/quarrydark"); - public static final ResourceLocation TEXTURE_MERCURY = ResourceLocation.fromNamespaceAndPath(References.ID, "block/custom/mercury"); - public static final ResourceLocation TEXTURE_GAS = ResourceLocation.fromNamespaceAndPath(References.ID, "block/custom/gastexture"); - public static final ResourceLocation TEXTURE_MULTISUBNODE = ResourceLocation.fromNamespaceAndPath(References.ID, "block/multisubnode"); + public static final ResourceLocation TEXTURE_WHITE = Electrodynamics.forgerl("white"); + public static final ResourceLocation TEXTURE_QUARRYARM = Electrodynamics.rl("block/custom/quarryarm"); + public static final ResourceLocation TEXTURE_QUARRYARM_DARK = Electrodynamics.rl("block/custom/quarrydark"); + public static final ResourceLocation TEXTURE_MERCURY = Electrodynamics.rl("block/custom/mercury"); + public static final ResourceLocation TEXTURE_GAS = Electrodynamics.rl("block/custom/gastexture"); + public static final ResourceLocation TEXTURE_MULTISUBNODE = Electrodynamics.rl("block/multisubnode"); private static final String MULTIBLOCK_API_MODEL_FOLDER = "multiblockmodels"; diff --git a/src/main/java/electrodynamics/client/guidebook/ModuleElectrodynamics.java b/src/main/java/electrodynamics/client/guidebook/ModuleElectrodynamics.java index 345060e22..4ea2aa982 100644 --- a/src/main/java/electrodynamics/client/guidebook/ModuleElectrodynamics.java +++ b/src/main/java/electrodynamics/client/guidebook/ModuleElectrodynamics.java @@ -1,16 +1,16 @@ package electrodynamics.client.guidebook; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import electrodynamics.client.guidebook.chapters.*; import electrodynamics.client.guidebook.utils.components.Module; import electrodynamics.client.guidebook.utils.pagedata.graphics.ImageWrapperObject; import electrodynamics.prefab.utilities.ElectroTextUtils; import net.minecraft.network.chat.MutableComponent; -import net.minecraft.resources.ResourceLocation; public final class ModuleElectrodynamics extends Module { - private static final ImageWrapperObject LOGO = new ImageWrapperObject(0, 0, 0, 0, 32, 32, 32, 32, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/electrodynamicslogo.png")); + private static final ImageWrapperObject LOGO = new ImageWrapperObject(0, 0, 0, 0, 32, 32, 32, 32, Electrodynamics.rl("textures/screen/guidebook/electrodynamicslogo.png")); @Override public ImageWrapperObject getLogo() { diff --git a/src/main/java/electrodynamics/client/guidebook/ScreenGuidebook.java b/src/main/java/electrodynamics/client/guidebook/ScreenGuidebook.java index 4b9c68be6..142b4d79f 100644 --- a/src/main/java/electrodynamics/client/guidebook/ScreenGuidebook.java +++ b/src/main/java/electrodynamics/client/guidebook/ScreenGuidebook.java @@ -7,7 +7,7 @@ import com.mojang.blaze3d.platform.InputConstants; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.client.guidebook.utils.components.Chapter; import electrodynamics.client.guidebook.utils.components.Module; import electrodynamics.client.guidebook.utils.components.Page; @@ -99,8 +99,8 @@ public class ScreenGuidebook extends GenericScreen { public static final HashSet JEI_INGREDIENTS = new HashSet<>(); - private static final ResourceLocation PAGE_TEXTURE_LEFT = ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/resources/guidebookpageleft.png"); - private static final ResourceLocation PAGE_TEXTURE_RIGHT = ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/resources/guidebookpageright.png"); + private static final ResourceLocation PAGE_TEXTURE_LEFT = Electrodynamics.rl("textures/screen/guidebook/resources/guidebookpageleft.png"); + private static final ResourceLocation PAGE_TEXTURE_RIGHT = Electrodynamics.rl("textures/screen/guidebook/resources/guidebookpageright.png"); private static ButtonGuidebook forward; private static ButtonGuidebook back; @@ -779,7 +779,7 @@ private CoverPage getCoverPage() { int xOffset = (TEXT_WIDTH - 74) / 2; - page.graphics.add(new GraphicWrapper(TEXT_START_X, y, new ImageWrapperObject(xOffset, 0, 0, 0, 74, 100, 74, 100, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/resources/guidebookcover.png")), null, null, null)); + page.graphics.add(new GraphicWrapper(TEXT_START_X, y, new ImageWrapperObject(xOffset, 0, 0, 0, 74, 100, 74, 100, Electrodynamics.rl("textures/screen/guidebook/resources/guidebookcover.png")), null, null, null)); y += 105; diff --git a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterElectricity.java b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterElectricity.java index 09f6ad19c..1e9d51686 100644 --- a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterElectricity.java +++ b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterElectricity.java @@ -3,7 +3,7 @@ import java.util.ArrayList; import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.client.guidebook.ScreenGuidebook; import electrodynamics.client.guidebook.utils.components.Chapter; import electrodynamics.client.guidebook.utils.components.Module; @@ -20,13 +20,12 @@ import net.minecraft.ChatFormatting; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.network.chat.MutableComponent; -import net.minecraft.resources.ResourceLocation; import net.minecraft.util.FormattedCharSequence; import net.minecraft.world.item.ItemStack; public class ChapterElectricity extends Chapter { - private static final ImageWrapperObject LOGO = new ImageWrapperObject(2, 2, 0, 0, 28, 28, 28, 28, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/item/wire/wiregold.png")); + private static final ImageWrapperObject LOGO = new ImageWrapperObject(2, 2, 0, 0, 28, 28, 28, 28, Electrodynamics.rl("textures/item/wire/wiregold.png")); public ChapterElectricity(Module module) { super(module); @@ -70,7 +69,7 @@ public void addData() { pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.topic.machinefundamentals").withStyle(ChatFormatting.BOLD, ChatFormatting.UNDERLINE)).setNewPage()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l3.1")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/voltagetooltipinventory.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/voltagetooltipinventory.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l3.2")).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l4")).setSeparateStart().setIndentions(1)); @@ -84,7 +83,7 @@ public void addData() { pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l5")).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.voltageexample", 120)).setCentered().setNewPage()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/120vmachines.png")).onTooltip(new OnTooltip() { + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/120vmachines.png")).onTooltip(new OnTooltip() { @Override public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuidebook screen) { @@ -100,7 +99,7 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.voltageexamplenote"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.voltageexample", 240)).setCentered().setNewPage()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/240vmachines.png")).onTooltip(new OnTooltip() { + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/240vmachines.png")).onTooltip(new OnTooltip() { @Override public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuidebook screen) { @@ -116,7 +115,7 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.voltageexample", 480)).setCentered().setNewPage()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/480vmachines.png")).onTooltip(new OnTooltip() { + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/480vmachines.png")).onTooltip(new OnTooltip() { @Override public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuidebook screen) { @@ -131,7 +130,7 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.voltageexample", 960)).setCentered().setNewPage()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/960vmachines.png")).onTooltip(new OnTooltip() { + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/960vmachines.png")).onTooltip(new OnTooltip() { @Override public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuidebook screen) { @@ -146,8 +145,8 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l6")).setNewPage().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 50, 150, 50, 55, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/voltagetooltip1.png")).setNewPage()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 55, 150, 55, 60, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/voltagetooltip2.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 50, 150, 50, 55, Electrodynamics.rl("textures/screen/guidebook/voltagetooltip1.png")).setNewPage()); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 55, 150, 55, 60, Electrodynamics.rl("textures/screen/guidebook/voltagetooltip2.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.guivoltagenote"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l7")).setNewPage().setIndentions(1)); @@ -156,7 +155,7 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.energyinput")).setSeparateStart().setIndentions(1)); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.energyoutput")).setSeparateStart().setIndentions(1)); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l9")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/energyio.png")).onTooltip(new OnTooltip() { + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/energyio.png")).onTooltip(new OnTooltip() { @Override public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuidebook screen) { @@ -175,7 +174,7 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.topic.wirebasics").withStyle(ChatFormatting.BOLD, ChatFormatting.UNDERLINE)).setNewPage()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l10", ElectroTextUtils.guidebook("chapter.electricity.wires").withStyle(ChatFormatting.BOLD))).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 72, 150, 72, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/wiretooltip1.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 72, 150, 72, 75, Electrodynamics.rl("textures/screen/guidebook/wiretooltip1.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l11.1", ElectroTextUtils.guidebook("chapter.electricity.resistance").withStyle(ChatFormatting.BOLD), ElectroTextUtils.guidebook("chapter.electricity.powerfromcurrent").withStyle(ChatFormatting.BOLD))).setSeparateStart().setIndentions(1)); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l11.2", ElectroTextUtils.guidebook("chapter.electricity.ampacity").withStyle(ChatFormatting.BOLD))).setSeparateStart().setIndentions(1)); @@ -190,17 +189,17 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l12.2", ElectrodynamicsItems.ITEM_RUBBERBOOTS.get().getDescription().copy().withStyle(ChatFormatting.BOLD))).setSeparateStart().setIndentions(1)); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l13.1")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/woolwire.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/woolwire.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l13.2")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/logisticalwire.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/logisticalwire.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l13.3")).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l13.4")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/ceramicwire.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/ceramicwire.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l13.5")).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l14.1")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/coloredwires.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/coloredwires.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l14.2")).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l15")).setSeparateStart().setIndentions(1)); @@ -227,11 +226,11 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l18.1", ElectroTextUtils.guidebook("chapter.electricity.grid").withStyle(ChatFormatting.BOLD))).setSeparateStart().setIndentions(1)); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l18.2")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/electrodynamicsmodel.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/electrodynamicsmodel.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l18.3")).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l18.4", ElectroTextUtils.guidebook("chapter.electricity.neutralcurrent").withStyle(ChatFormatting.BOLD))).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/neutralwire.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/neutralwire.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.neutralwirenote").withStyle(ChatFormatting.ITALIC))); blankLine(); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l18.5", ElectroTextUtils.guidebook("chapter.electricity.neutralloss").withStyle(ChatFormatting.BOLD))).setSeparateStart()); @@ -239,7 +238,7 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l18.6")).setSeparateStart().setIndentions(1)); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l18.7", ElectroTextUtils.guidebook("chapter.electricity.inrushcurrent").withStyle(ChatFormatting.BOLD))).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/inrushcurrent.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/inrushcurrent.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l18.8")).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l18.9", ElectricNetwork.MAXIMUM_OVERLOAD_PERIOD_TICKS)).setSeparateStart().setIndentions(1)); @@ -283,7 +282,7 @@ public Object getJeiLookup() { })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l19.handheldmultimeter.1")).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 40, 150, 40, 45, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/multimeterdisplay1.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 40, 150, 40, 45, Electrodynamics.rl("textures/screen/guidebook/multimeterdisplay1.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l19.handheldmultimeter.2")).setSeparateStart()); // block multimeter @@ -345,8 +344,8 @@ public Object getJeiLookup() { })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l19.relay.1")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/relayoff.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/relayon.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/relayoff.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/relayon.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l19.relay.2")).setSeparateStart()); // circuit breaker @@ -378,8 +377,8 @@ public Object getJeiLookup() { })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l19.circuitbreaker.1")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/breakeroff.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/breakeron.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/breakeroff.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/breakeron.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l19.circuitbreaker.2"))); // current regulator @@ -441,8 +440,8 @@ public Object getJeiLookup() { })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l19.circuitmonitor.1")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/circuitmonitor.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 150, 150, 150, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/circuitmonitorgui.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/circuitmonitor.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 150, 150, 150, Electrodynamics.rl("textures/screen/guidebook/circuitmonitorgui.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l19.circuitmonitor.2", ElectroTextUtils.gui("networkwattage").withStyle(ChatFormatting.BOLD), ElectroTextUtils.gui("networkvoltage").withStyle(ChatFormatting.BOLD), ElectroTextUtils.gui("networkampacity").withStyle(ChatFormatting.BOLD), ElectroTextUtils.gui("networkminimumvoltage").withStyle(ChatFormatting.BOLD), ElectroTextUtils.gui("networkresistance").withStyle(ChatFormatting.BOLD), ElectroTextUtils.gui("networkload").withStyle(ChatFormatting.BOLD), ElectroTextUtils.gui("networkwattage"))).setSeparateStart().setIndentions(1)); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electricity.l19.circuitmonitor.3")).setSeparateStart().setIndentions(1)); diff --git a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterElectrolosisChamber.java b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterElectrolosisChamber.java index 9059e64b0..0ac758d4e 100644 --- a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterElectrolosisChamber.java +++ b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterElectrolosisChamber.java @@ -1,6 +1,6 @@ package electrodynamics.client.guidebook.chapters; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.electricity.formatting.ChatFormatter; import electrodynamics.api.electricity.formatting.DisplayUnit; import electrodynamics.client.guidebook.ScreenGuidebook; @@ -21,7 +21,6 @@ import net.minecraft.client.gui.GuiGraphics; import net.minecraft.network.chat.Component; import net.minecraft.network.chat.MutableComponent; -import net.minecraft.resources.ResourceLocation; import net.minecraft.util.FormattedCharSequence; import net.minecraft.world.level.block.Blocks; @@ -59,7 +58,7 @@ public void addData() { ElectrodynamicsBlocks.BLOCKS_MACHINE.getValue(SubtypeMachine.electrolosischamber).getName() )).setIndentions(1).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electrolosischamber.step", 1).withStyle(ChatFormatting.BOLD)).setNewPage()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/electrolosischamber1.png")).onTooltip(new OnTooltip() { + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/electrolosischamber1.png")).onTooltip(new OnTooltip() { @Override public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuidebook screen) { @@ -69,7 +68,7 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electrolosischamber.step", 2).withStyle(ChatFormatting.BOLD)).setNewPage()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/electrolosischamber2.png")).onTooltip(new OnTooltip() { + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/electrolosischamber2.png")).onTooltip(new OnTooltip() { @Override public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuidebook screen) { @@ -82,7 +81,7 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electrolosischamber.step", 3).withStyle(ChatFormatting.BOLD)).setNewPage()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/electrolosischamber3.png")).onTooltip(new OnTooltip() { + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/electrolosischamber3.png")).onTooltip(new OnTooltip() { @Override public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuidebook screen) { @@ -92,7 +91,7 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electrolosischamber.step", 4).withStyle(ChatFormatting.BOLD)).setNewPage()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/electrolosischamber4.png")).onTooltip(new OnTooltip() { + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/electrolosischamber4.png")).onTooltip(new OnTooltip() { @Override public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuidebook screen) { @@ -106,7 +105,7 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electrolosischamber.seperatororient").withStyle(ChatFormatting.ITALIC))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electrolosischamber.step", 5).withStyle(ChatFormatting.BOLD)).setNewPage()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/electrolosischamber5.png")).onTooltip(new OnTooltip() { + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/electrolosischamber5.png")).onTooltip(new OnTooltip() { @Override public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuidebook screen) { @@ -116,7 +115,7 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electrolosischamber.step", 6).withStyle(ChatFormatting.BOLD)).setNewPage()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/electrolosischamber6.png")).onTooltip(new OnTooltip() { + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/electrolosischamber6.png")).onTooltip(new OnTooltip() { @Override public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuidebook screen) { @@ -126,14 +125,14 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electrolosischamber.l4")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/electrolosischamber7.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/electrolosischamber8.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, 75, Electrodynamics.rl("textures/screen/guidebook/electrolosischamber7.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, 75, Electrodynamics.rl("textures/screen/guidebook/electrolosischamber8.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electrolosischamber.l5")).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/electrolosischamber9.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/electrolosischamber10.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/electrolosischamber9.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/electrolosischamber10.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electrolosischamber.l6")).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electrolosischamber.l7")).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/electrolosischambergui1.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/electrolosischambergui1.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.electrolosischamber.l8")).setIndentions(1).setSeparateStart()); diff --git a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterFluids.java b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterFluids.java index 9f8df4103..a18b12573 100644 --- a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterFluids.java +++ b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterFluids.java @@ -3,6 +3,7 @@ import java.util.ArrayList; import java.util.List; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import electrodynamics.client.guidebook.ScreenGuidebook; import electrodynamics.client.guidebook.utils.components.Chapter; @@ -32,7 +33,7 @@ public class ChapterFluids extends Chapter { - private static final ImageWrapperObject LOGO = new ImageWrapperObject(0, 0, 0, 0, 32, 32, 32, 32, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/item/pipe/pipesteel.png")); + private static final ImageWrapperObject LOGO = new ImageWrapperObject(0, 0, 0, 0, 32, 32, 32, 32, Electrodynamics.rl("textures/item/pipe/pipesteel.png")); public ChapterFluids(Module module) { super(module); @@ -106,7 +107,7 @@ public Object getJeiLookup() { pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.fluids.fluidoutput")).setIndentions(1).setSeparateStart()); blankLine(); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.fluids.l3.2")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/fluidio.png")).onTooltip(new OnTooltip() { + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/fluidio.png")).onTooltip(new OnTooltip() { @Override public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuidebook screen) { @@ -194,8 +195,8 @@ public Object getJeiLookup() { })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.fluids.l5.fluidvalve.1")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/fluidvalveoff.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/fluidvalveon.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/fluidvalveoff.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/fluidvalveon.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.fluids.l5.fluidvalve.2")).setSeparateStart()); // Fluid Pipe Pump @@ -227,9 +228,9 @@ public Object getJeiLookup() { })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.fluids.l5.fluidpipepump.1")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/fluidpipepump.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/fluidpipepump.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.fluids.l5.fluidpipepump.2")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/fluidpipepumpgui.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/fluidpipepumpgui.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.fluids.l5.fluidpipepump.3")).setSeparateStart()); // Fluid Pipe Filter @@ -261,13 +262,13 @@ public Object getJeiLookup() { })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.fluids.l5.fluidfilterpipe.1")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/fluidfilterpipe.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/fluidfilterpipe.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.fluids.l5.fluidfilterpipe.2")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/fluidfilterpipegui1.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/fluidfilterpipegui1.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.fluids.l5.fluidfilterpipe.3", ElectroTextUtils.guidebook("chapter.fluids.blacklist").withStyle(ChatFormatting.BOLD), ElectroTextUtils.guidebook("chapter.fluids.whitelist").withStyle(ChatFormatting.BOLD))).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.fluids.l5.fluidfilterpipe.4")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/fluidfilterpipegui2.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/fluidfilterpipegui3.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/fluidfilterpipegui2.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/fluidfilterpipegui3.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.fluids.l5.fluidfilterpipe.5")).setSeparateStart()); // Fluid Void diff --git a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterGases.java b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterGases.java index e88f37970..1950c8976 100644 --- a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterGases.java +++ b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterGases.java @@ -3,7 +3,7 @@ import java.util.ArrayList; import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.electricity.formatting.ChatFormatter; import electrodynamics.api.electricity.formatting.DisplayUnit; import electrodynamics.api.gas.Gas; @@ -31,15 +31,13 @@ import net.minecraft.client.gui.GuiGraphics; import net.minecraft.core.Holder; import net.minecraft.network.chat.MutableComponent; -import net.minecraft.resources.ResourceLocation; import net.minecraft.util.FormattedCharSequence; import net.minecraft.world.item.ItemStack; -import net.minecraft.world.level.material.Fluids; import net.neoforged.neoforge.registries.DeferredHolder; public class ChapterGases extends Chapter { - private static final ImageWrapperObject LOGO = new ImageWrapperObject(0, 0, 0, 0, 32, 32, 32, 32, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/item/gaspipe/gaspipeuninsulatedsteel.png")); + private static final ImageWrapperObject LOGO = new ImageWrapperObject(0, 0, 0, 0, 32, 32, 32, 32, Electrodynamics.rl("textures/item/gaspipe/gaspipeuninsulatedsteel.png")); public ChapterGases(Module module) { super(module); @@ -118,9 +116,9 @@ public Object getJeiLookup() { pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l3", ElectroTextUtils.guidebook("chapter.gases.pressure").withStyle(ChatFormatting.BOLD))).setIndentions(1).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l4.1")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 50, 150, 50, 55, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/itemmaxgasvals.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 50, 150, 50, 55, Electrodynamics.rl("textures/screen/guidebook/itemmaxgasvals.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l4.2")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 50, 150, 50, 55, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/machinepressuretooltip.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 50, 150, 50, 55, Electrodynamics.rl("textures/screen/guidebook/machinepressuretooltip.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l4.3")).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l5")).setIndentions(1).setSeparateStart()); @@ -130,9 +128,9 @@ public Object getJeiLookup() { pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l6", ElectroTextUtils.guidebook("chapter.gases.temperature").withStyle(ChatFormatting.BOLD))).setIndentions(1).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l7.1")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 50, 150, 50, 55, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/itemmaxgasvals.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 50, 150, 50, 55, Electrodynamics.rl("textures/screen/guidebook/itemmaxgasvals.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l7.2")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 50, 150, 50, 55, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/machinetemperaturetooltip.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 50, 150, 50, 55, Electrodynamics.rl("textures/screen/guidebook/machinetemperaturetooltip.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l7.3")).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l8")).setIndentions(1).setSeparateStart()); // condensed gases @@ -149,7 +147,7 @@ public Object getJeiLookup() { blankLine(); // condensed gas machine handling pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l10.1")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 60, 150, 60, 65, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/gasmachinecondensedgui.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 60, 150, 60, 65, Electrodynamics.rl("textures/screen/guidebook/gasmachinecondensedgui.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l10.2")).setSeparateStart()); /* Gas IO */ @@ -162,7 +160,7 @@ public Object getJeiLookup() { pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.output")).setIndentions(1).setSeparateStart()); blankLine(); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l12")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/gasio.png")).setNewPage().onTooltip(new OnTooltip() { + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/gasio.png")).setNewPage().onTooltip(new OnTooltip() { @Override public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuidebook screen) { @@ -210,12 +208,12 @@ public void onTooltip(GuiGraphics graphics, int xAxis, int yAxis, ScreenGuideboo pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l14")).setIndentions(1).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l15", ElectrodynamicsItems.ITEM_COMPRESSOR.get().getDescription().copy().withStyle(ChatFormatting.BOLD), ElectrodynamicsItems.ITEM_DECOMPRESSOR.get().getDescription().copy().withStyle(ChatFormatting.BOLD), Constants.COMPRESSOR_CONVERSION_RATE, Constants.ADVACNED_COMPRESSOR_CONVERSION_RATE)).setIndentions(1).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l16.1", ElectrodynamicsItems.ITEM_COMPRESSOR_ADDONTANK.get().getDescription(), ElectrodynamicsItems.ITEM_COMPRESSOR_ADDONTANK.get().getDescription().copy().withStyle(ChatFormatting.BOLD))).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/pressurizedtankuse.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/pressurizedtankuse.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l16.2", Constants.GAS_TRANSFORMER_ADDON_TANK_LIMIT)).setSeparateStart()); // thermal manip pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l17.1", ElectrodynamicsItems.ITEM_THERMOELECTRIC_MANIPULATOR.get().getDescription().copy().withStyle(ChatFormatting.BOLD), Constants.THERMOELECTRIC_MANIPULATOR_CONVERSION_RATE, Constants.THERMOELECTRIC_MANIPULATOR_HEAT_TRANSFER, Constants.ADVANCED_THERMOELECTRIC_MANIPULATOR_CONVERSION_RATE, Constants.ADVANCED_THERMOELECTRIC_MANIPULATOR_HEAT_TRANSFER)).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/thermomanipgui.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 81, Electrodynamics.rl("textures/screen/guidebook/thermomanipgui.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l17.2", ElectrodynamicsItems.ITEM_THERMOELECTRIC_MANIPULATOR.get().getDescription(), ElectrodynamicsItems.ITEM_COMPRESSOR.get().getDescription(), ElectrodynamicsItems.ITEM_DECOMPRESSOR.get().getDescription(), ElectrodynamicsItems.ITEM_COMPRESSOR_ADDONTANK.get().getDescription())).setSeparateStart()); /* Gas Tools */ @@ -283,8 +281,8 @@ public Object getJeiLookup() { })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l18.gasvalve.1")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/gasvalveoff.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/gasvalveon.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/gasvalveoff.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/gasvalveon.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l18.gasvalve.2")).setSeparateStart()); // Gas Pipe Pump @@ -316,9 +314,9 @@ public Object getJeiLookup() { })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l18.gaspipepump.1")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 85, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/gaspipepump.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 85, Electrodynamics.rl("textures/screen/guidebook/gaspipepump.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l18.gaspipepump.2")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 85, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/gaspipepumpgui.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, 85, Electrodynamics.rl("textures/screen/guidebook/gaspipepumpgui.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l18.gaspipepump.3")).setSeparateStart()); // Gas Filter Pipe @@ -350,13 +348,13 @@ public Object getJeiLookup() { })); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l18.gasfilterpipe.1")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/gasfilterpipe.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/gasfilterpipe.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l18.gasfilterpipe.2")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/gasfilterpipegui1.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/gasfilterpipegui1.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l18.gasfilterpipe.3", ElectroTextUtils.guidebook("chapter.gases.blacklist").withStyle(ChatFormatting.BOLD), ElectroTextUtils.guidebook("chapter.gases.whitelist").withStyle(ChatFormatting.BOLD))).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l18.gasfilterpipe.4")).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/gasfilterpipegui2.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/gasfilterpipegui3.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/gasfilterpipegui2.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/gasfilterpipegui3.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l18.gasfilterpipe.5")).setSeparateStart()); // Gas Vent @@ -419,7 +417,7 @@ public Object getJeiLookup() { pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.gases.l18.gascylinder.1", ChatFormatter.getChatDisplayShort(GenericTileGasTank.HEAT_LOSS * 20, DisplayUnit.TEMPERATURE_KELVIN), ElectrodynamicsItems.ITEM_FIBERGLASSSHEET.get().getDescription().copy().withStyle(ChatFormatting.BOLD), ChatFormatter.getChatDisplayShort(GenericTileGasTank.INSULATION_EFFECTIVENESS * 100 - 100, DisplayUnit.PERCENTAGE), ChatFormatter.getChatDisplayShort(Math.pow(GenericTileGasTank.INSULATION_EFFECTIVENESS, 6) * 100 - 100, DisplayUnit.PERCENTAGE))).setSeparateStart().setIndentions(1)); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/fiberglasssheetuse.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/fiberglasssheetuse.png"))); /* Gas GUIs */ diff --git a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterMachines.java b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterMachines.java index 26391a442..cce7e562e 100644 --- a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterMachines.java +++ b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterMachines.java @@ -1,6 +1,6 @@ package electrodynamics.client.guidebook.chapters; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.client.guidebook.utils.components.Chapter; import electrodynamics.client.guidebook.utils.components.Module; import electrodynamics.client.guidebook.utils.pagedata.graphics.ImageWrapperObject; @@ -11,7 +11,6 @@ import electrodynamics.registers.ElectrodynamicsItems; import net.minecraft.ChatFormatting; import net.minecraft.network.chat.MutableComponent; -import net.minecraft.resources.ResourceLocation; public class ChapterMachines extends Chapter { @@ -38,13 +37,13 @@ public void addData() { pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.machines.inventoryio.header").withStyle(ChatFormatting.UNDERLINE, ChatFormatting.BOLD)).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.machines.inventoryio.1")).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/inventoryio1.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/inventoryio1.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.machines.inventoryio.2")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/inventoryio2.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/inventoryio2.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.machines.inventoryio.3")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 150, 150, 150, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/inventoryio3.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 150, 150, 150, Electrodynamics.rl("textures/screen/guidebook/inventoryio3.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.machines.inventoryio.4")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/inventoryio4.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/inventoryio4.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.machines.inventoryio.5")).setSeparateStart()); /* Charger Tutorial */ @@ -54,7 +53,7 @@ public void addData() { pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.machines.chargeformula")).setIndentions(1).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.machines.charger.2")).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.machines.charger.3")).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 70, 150, 70, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/chargerbatteryslots.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 70, 150, 70, Electrodynamics.rl("textures/screen/guidebook/chargerbatteryslots.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.machines.charger.4")).setSeparateStart()); } diff --git a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterMisc.java b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterMisc.java index e0f0ad8b5..1f9c40edc 100644 --- a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterMisc.java +++ b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterMisc.java @@ -1,5 +1,6 @@ package electrodynamics.client.guidebook.chapters; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import electrodynamics.client.guidebook.utils.components.Chapter; import electrodynamics.client.guidebook.utils.components.Module; @@ -11,7 +12,7 @@ public class ChapterMisc extends Chapter { - private static final ImageWrapperObject LOGO = new ImageWrapperObject(0, 0, 0, 0, 32, 32, 32, 32, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/item/coil.png")); + private static final ImageWrapperObject LOGO = new ImageWrapperObject(0, 0, 0, 0, 32, 32, 32, 32, Electrodynamics.rl("textures/item/coil.png")); public ChapterMisc(Module module) { super(module); @@ -30,21 +31,21 @@ public MutableComponent getTitle() { @Override public void addData() { pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.misc.l1")).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/cablecamo1.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/cablecamo2.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/cablecamo1.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/cablecamo2.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.misc.l2")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/cablecamo3.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/cablecamo4.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/cablecamo3.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/cablecamo4.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.misc.l3")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/cablecamo5.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/cablecamo5.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.misc.l4")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/cablecamo6.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/cablecamo7.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/cablecamo6.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/cablecamo7.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.misc.l5")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/cablecamo8.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/cablecamo9.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/cablecamo8.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/cablecamo9.png"))); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.misc.l6")).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/cablecamo10.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/cablecamo10.png"))); } } diff --git a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterQuarry.java b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterQuarry.java index ea5c8f09c..efe5b3c13 100644 --- a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterQuarry.java +++ b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterQuarry.java @@ -1,6 +1,6 @@ package electrodynamics.client.guidebook.chapters; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.client.guidebook.utils.components.Chapter; import electrodynamics.client.guidebook.utils.components.Module; import electrodynamics.client.guidebook.utils.pagedata.graphics.ImageWrapperObject; @@ -13,7 +13,6 @@ import electrodynamics.registers.ElectrodynamicsItems; import net.minecraft.ChatFormatting; import net.minecraft.network.chat.MutableComponent; -import net.minecraft.resources.ResourceLocation; public class ChapterQuarry extends Chapter { @@ -41,37 +40,37 @@ public void addData() { // Step 1 pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step", 1).withStyle(ChatFormatting.BOLD)).setSeparateStart().setNewPage()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step1l1")).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/markerring.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/markerring.png"))); // Step 2 pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step", 2).withStyle(ChatFormatting.BOLD)).setSeparateStart().setNewPage()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step2l1")).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/seismicrelay1.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/seismicrelay2.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/seismicrelay3.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, Electrodynamics.rl("textures/screen/guidebook/seismicrelay1.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, Electrodynamics.rl("textures/screen/guidebook/seismicrelay2.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, Electrodynamics.rl("textures/screen/guidebook/seismicrelay3.png"))); // Step 3 pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step", 3).withStyle(ChatFormatting.BOLD)).setSeparateStart().setNewPage()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step3l1")).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/quarryplacement.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/quarryplacement.png"))); // Step 4 pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step", 4).withStyle(ChatFormatting.BOLD)).setSeparateStart().setNewPage()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step4l1")).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/coolantresplacement.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/coolantresplacement.png"))); // Step 5 pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step", 5).withStyle(ChatFormatting.BOLD)).setSeparateStart().setNewPage()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step5l1")).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/motorcomplex1.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/motorcomplex2.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, Electrodynamics.rl("textures/screen/guidebook/motorcomplex1.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, Electrodynamics.rl("textures/screen/guidebook/motorcomplex2.png"))); // Step 6 pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step", 6).withStyle(ChatFormatting.BOLD)).setSeparateStart().setNewPage()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step6l1")).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/quarrypower1.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/quarrypower2.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/quarrypower3.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, Electrodynamics.rl("textures/screen/guidebook/quarrypower1.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, Electrodynamics.rl("textures/screen/guidebook/quarrypower2.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 79, Electrodynamics.rl("textures/screen/guidebook/quarrypower3.png"))); // Step 7 pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step", 7).withStyle(ChatFormatting.BOLD)).setSeparateStart().setNewPage()); @@ -91,13 +90,13 @@ public void addData() { pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step7fortune", ElectrodynamicsItems.ITEMS_UPGRADE.getValue(SubtypeItemUpgrade.fortune).getDescription().copy().withStyle(ChatFormatting.BOLD))).setIndentions(1).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step7silktouch", ElectrodynamicsItems.ITEMS_UPGRADE.getValue(SubtypeItemUpgrade.silktouch).getDescription().copy().withStyle(ChatFormatting.BOLD))).setIndentions(1).setSeparateStart()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step7void", ElectrodynamicsItems.ITEMS_UPGRADE.getValue(SubtypeItemUpgrade.itemvoid).getDescription().copy().withStyle(ChatFormatting.BOLD))).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/quarrygui1.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 79, 150, 79, Electrodynamics.rl("textures/screen/guidebook/quarrygui1.png"))); // Step 8 pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step", 8).withStyle(ChatFormatting.BOLD)).setSeparateStart().setNewPage()); pageData.add(new TextWrapperObject(ElectroTextUtils.guidebook("chapter.quarry.step8l1")).setIndentions(1).setSeparateStart()); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/logisticalmanager1.png"))); - pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/guidebook/logisticalmanager2.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/logisticalmanager1.png"))); + pageData.add(new ImageWrapperObject(0, 0, 0, 0, 150, 75, 150, 75, Electrodynamics.rl("textures/screen/guidebook/logisticalmanager2.png"))); } diff --git a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterTips.java b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterTips.java index e4ebe37c7..68c57b899 100644 --- a/src/main/java/electrodynamics/client/guidebook/chapters/ChapterTips.java +++ b/src/main/java/electrodynamics/client/guidebook/chapters/ChapterTips.java @@ -1,6 +1,6 @@ package electrodynamics.client.guidebook.chapters; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.client.guidebook.utils.components.Chapter; import electrodynamics.client.guidebook.utils.components.Module; import electrodynamics.client.guidebook.utils.pagedata.graphics.ImageWrapperObject; @@ -8,11 +8,10 @@ import electrodynamics.prefab.utilities.ElectroTextUtils; import net.minecraft.ChatFormatting; import net.minecraft.network.chat.MutableComponent; -import net.minecraft.resources.ResourceLocation; public class ChapterTips extends Chapter { - private static final ImageWrapperObject LOGO = new ImageWrapperObject(0, 0, 0, 0, 32, 32, 32, 32, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/item/nugget/nuggetsilver.png")); + private static final ImageWrapperObject LOGO = new ImageWrapperObject(0, 0, 0, 0, 32, 32, 32, 32, Electrodynamics.rl("textures/item/nugget/nuggetsilver.png")); public ChapterTips(Module module) { super(module); diff --git a/src/main/java/electrodynamics/client/modelbakers/bakerytypes/CableModelLoader.java b/src/main/java/electrodynamics/client/modelbakers/bakerytypes/CableModelLoader.java index 990039208..c6e658f6b 100644 --- a/src/main/java/electrodynamics/client/modelbakers/bakerytypes/CableModelLoader.java +++ b/src/main/java/electrodynamics/client/modelbakers/bakerytypes/CableModelLoader.java @@ -5,7 +5,7 @@ import java.util.Set; import java.util.function.Function; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import net.neoforged.neoforge.client.ChunkRenderTypeSet; import net.neoforged.neoforge.client.model.IDynamicBakedModel; import net.neoforged.neoforge.client.model.data.ModelData; @@ -44,7 +44,7 @@ public class CableModelLoader implements IGeometryLoader { - public static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath(References.ID, "electrodynamicscableloader"); + public static final ResourceLocation ID = Electrodynamics.rl("electrodynamicscableloader"); public static final CableModelLoader INSTANCE = new CableModelLoader(); diff --git a/src/main/java/electrodynamics/client/modelbakers/bakerytypes/MultiblockModelLoader.java b/src/main/java/electrodynamics/client/modelbakers/bakerytypes/MultiblockModelLoader.java index af17759e9..598482c83 100644 --- a/src/main/java/electrodynamics/client/modelbakers/bakerytypes/MultiblockModelLoader.java +++ b/src/main/java/electrodynamics/client/modelbakers/bakerytypes/MultiblockModelLoader.java @@ -4,7 +4,7 @@ import com.google.gson.JsonDeserializationContext; import com.google.gson.JsonObject; import com.google.gson.JsonParseException; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.multiblock.assemblybased.MultiblockSlaveNode; import electrodynamics.client.modelbakers.ModelStateRotation; import electrodynamics.client.modelbakers.modelproperties.ModelPropertySlaveNode; @@ -35,7 +35,7 @@ public class MultiblockModelLoader implements IGeometryLoader { - public static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath(References.ID, "electrodynamicsmultiblockmodelloader"); + public static final ResourceLocation ID = Electrodynamics.rl("electrodynamicsmultiblockmodelloader"); public static final MultiblockModelLoader INSTANCE = new MultiblockModelLoader(); diff --git a/src/main/java/electrodynamics/client/modelbakers/bakerytypes/SlaveNodeModelLoader.java b/src/main/java/electrodynamics/client/modelbakers/bakerytypes/SlaveNodeModelLoader.java index f12e5938f..0d8c13eb7 100644 --- a/src/main/java/electrodynamics/client/modelbakers/bakerytypes/SlaveNodeModelLoader.java +++ b/src/main/java/electrodynamics/client/modelbakers/bakerytypes/SlaveNodeModelLoader.java @@ -4,7 +4,7 @@ import com.google.gson.JsonDeserializationContext; import com.google.gson.JsonObject; import com.google.gson.JsonParseException; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.multiblock.assemblybased.MultiblockSlaveNode; import electrodynamics.api.multiblock.assemblybased.TileMultiblockSlave; import electrodynamics.client.ClientRegister; @@ -39,7 +39,7 @@ */ public class SlaveNodeModelLoader implements IGeometryLoader { - public static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath(References.ID, "electrodynamicsslavenodeloader"); + public static final ResourceLocation ID = Electrodynamics.rl("electrodynamicsslavenodeloader"); public static final SlaveNodeModelLoader INSTANCE = new SlaveNodeModelLoader(); diff --git a/src/main/java/electrodynamics/client/render/entity/RenderEnergyBlast.java b/src/main/java/electrodynamics/client/render/entity/RenderEnergyBlast.java index c6a90bc62..668424b01 100644 --- a/src/main/java/electrodynamics/client/render/entity/RenderEnergyBlast.java +++ b/src/main/java/electrodynamics/client/render/entity/RenderEnergyBlast.java @@ -5,7 +5,6 @@ import com.mojang.blaze3d.vertex.PoseStack; import electrodynamics.Electrodynamics; -import electrodynamics.api.References; import electrodynamics.common.entity.projectile.types.EntityEnergyBlast; import electrodynamics.prefab.utilities.RenderingUtils; import net.minecraft.client.renderer.MultiBufferSource; @@ -63,7 +62,7 @@ public void render(EntityEnergyBlast entity, float entityYaw, float partialTicks @Override public @NotNull ResourceLocation getTextureLocation(@NotNull EntityEnergyBlast entity) { - return ResourceLocation.fromNamespaceAndPath(References.ID, "custom/plasmaorb"); + return Electrodynamics.rl("custom/plasmaorb"); } } diff --git a/src/main/java/electrodynamics/client/render/model/armor/types/ModelCombatArmor.java b/src/main/java/electrodynamics/client/render/model/armor/types/ModelCombatArmor.java index d95395082..48a5e7dd5 100644 --- a/src/main/java/electrodynamics/client/render/model/armor/types/ModelCombatArmor.java +++ b/src/main/java/electrodynamics/client/render/model/armor/types/ModelCombatArmor.java @@ -15,103 +15,407 @@ import net.minecraft.client.model.geom.builders.MeshDefinition; import net.minecraft.client.model.geom.builders.PartDefinition; import net.minecraft.client.renderer.RenderType; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.entity.LivingEntity; public class ModelCombatArmor extends GenericArmorModel { - public ModelCombatArmor(ModelPart root, EquipmentSlot slot) { - super(root); - - parentHat.visible = false; - - switch (slot) { - case HEAD -> { - parentHead.visible = true; - parentChest.visible = false; - parentRightArm.visible = false; - parentLeftArm.visible = false; - parentRightLeg.visible = false; - parentLeftLeg.visible = false; - } - case CHEST -> { - parentHead.visible = false; - parentChest.visible = true; - parentRightArm.visible = true; - parentLeftArm.visible = true; - parentRightLeg.visible = false; - parentLeftLeg.visible = false; - } - case LEGS, FEET -> { - parentHead.visible = false; - parentChest.visible = false; - parentRightArm.visible = false; - parentLeftArm.visible = false; - parentRightLeg.visible = true; - parentLeftLeg.visible = true; - } - default -> { - } - } - - } - - public static LayerDefinition createBodyLayer(int modelType, boolean noChestplate) { - MeshDefinition mesh = new MeshDefinition(); - PartDefinition part = mesh.getRoot(); - - part.addOrReplaceChild(HAT, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - - part.addOrReplaceChild(HEAD, CubeListBuilder.create().texOffs(30, 28).addBox(-6.0F, -6.0F, -4.0F, 1.0F, 5.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(7, 92).addBox(-5.0F, -6.0F, 4.0F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(90, 91).addBox(4.0F, -6.0F, 4.0F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(30, 11).addBox(5.0F, -6.0F, -4.0F, 1.0F, 5.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(66, 87).addBox(-5.0F, -6.0F, -5.0F, 2.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(9, 66).addBox(3.0F, -6.0F, -5.0F, 2.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(55, 42).addBox(-4.0F, -6.0F, 5.0F, 8.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(25, 0).addBox(-3.0F, -8.0F, -3.0F, 6.0F, 1.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(0, 0).addBox(-4.0F, -9.0F, -4.0F, 8.0F, 1.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(19, 19).addBox(4.0F, -8.0F, -4.0F, 1.0F, 8.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(41, 25).addBox(-4.0F, -8.0F, 4.0F, 8.0F, 8.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 19).addBox(-5.0F, -8.0F, -4.0F, 1.0F, 8.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(44, 3).addBox(-4.0F, -1.0F, -5.0F, 8.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(44, 0).addBox(-5.0F, -2.0F, -5.0F, 10.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(75, 30).addBox(-4.0F, -8.0F, -5.0F, 8.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 10).addBox(-4.0F, 0.0F, -4.0F, 8.0F, 0.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(12, 93).addBox(2.0F, -3.0F, -5.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(62, 92).addBox(2.0F, -6.0F, -5.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(91, 17).addBox(-3.0F, -6.0F, -5.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(91, 27).addBox(-3.0F, -3.0F, -5.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 82).addBox(-3.0F, -5.0F, -8.5F, 1.0F, 2.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(71, 0).addBox(-2.0F, -6.0F, -8.5F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(69, 24).addBox(-2.0F, -3.0F, -8.5F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(25, 10).addBox(2.0F, -5.0F, -8.5F, 1.0F, 2.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(83, 34).addBox(-2.0F, -5.0F, -8.0F, 4.0F, 2.0F, 3.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 0.0F, 0.0F)); - - if (noChestplate) { - part.addOrReplaceChild(CHEST, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - } else { - part.addOrReplaceChild(CHEST, CubeListBuilder.create().texOffs(19, 42).addBox(-4.0F, 0.5F, -3.0F, 8.0F, 11.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 36).addBox(-4.0F, 0.5F, 2.0F, 8.0F, 11.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(82, 6).addBox(-4.0F, 0.5F, -4.0F, 8.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 19).addBox(-3.0F, 1.5F, -4.0F, 6.0F, 6.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 0).addBox(-1.0F, 1.5F, -5.0F, 2.0F, 6.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(91, 40).addBox(-1.0F, 7.5F, -4.0F, 2.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(64, 35).addBox(-4.0F, 0.5F, 3.0F, 8.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 49).addBox(-4.0F, 0.0F, -2.0F, 8.0F, 12.0F, 0.0F, new CubeDeformation(0.0F)).texOffs(62, 49).addBox(-4.0F, 0.0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 62).addBox(4.0F, 0.0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(38, 42).addBox(-4.0F, 0.0F, 2.0F, 8.0F, 12.0F, 0.0F, new CubeDeformation(0.0F)).texOffs(41, 13).addBox(-4.0F, 0.0F, -2.0F, 8.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(41, 8).addBox(-4.0F, 12.0F, -2.0F, 8.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(20, 72).addBox(2.0F, 8.0F, 3.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 86).addBox(1.5F, 5.0F, 4.0F, 2.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(77, 20).addBox(1.5F, 10.5F, 4.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(93, 2).addBox(2.0F, 10.5F, 3.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(86, 27).addBox(2.0F, 9.5F, 4.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(85, 91).addBox(2.0F, 5.0F, 4.5F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(86, 17).addBox(2.0F, 4.0F, 4.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(74, 46).addBox(0.5F, 3.0F, 4.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(49, 18).addBox(-0.5F, 1.0F, 4.0F, 1.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(80, 90).addBox(-0.5F, 4.0F, 4.5F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 19).addBox(-1.0F, 4.0F, 4.0F, 2.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(57, 80).addBox(-3.0F, 4.5F, 3.0F, 6.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(71, 63).addBox(-2.5F, 3.0F, 4.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 79).addBox(-3.0F, 4.0F, 4.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(46, 55).addBox(-3.0F, 5.0F, 4.5F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 10).addBox(-3.5F, 5.0F, 4.0F, 2.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(55, 92).addBox(-3.0F, 10.5F, 3.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(37, 8).addBox(-3.5F, 10.5F, 4.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(40, 75).addBox(-3.0F, 9.5F, 4.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(46, 62).addBox(-3.0F, 8.0F, 3.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(73, 40).addBox(-0.5F, 8.0F, 3.5F, 1.0F, 1.0F, 1.0F, - new CubeDeformation(0.0F)), PartPose.offset(5.0F, 24.0F, 0.0F)); - } - - part.addOrReplaceChild(RIGHT_ARM, CubeListBuilder.create().texOffs(17, 55).addBox(-4.0F, -2.0F, -2.0F, 1.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(37, 55).addBox(1.0F, -2.0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(9, 72).addBox(-3.0F, -2.0F, -3.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(71, 49).addBox(-3.0F, -2.0F, 2.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(78, 59).addBox(-3.0F, -3.0F, -2.0F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(-5.0F, 2.0F, 0.0F)); - - part.addOrReplaceChild(LEFT_ARM, CubeListBuilder.create().texOffs(28, 55).addBox(-1.0F, -2.0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(51, 51).addBox(3.0F, -2.0F, -2.0F, 1.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(69, 66).addBox(-1.0F, -2.0F, -3.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(46, 68).addBox(-1.0F, -2.0F, 2.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(74, 40).addBox(-1.0F, -3.0F, -2.0F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(5.0F, 2.0F, 0.0F)); - - switch (modelType) { - case 1 -> { - part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(85, 75).addBox(-2.1F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(82, 46).addBox(-2.1F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(58, 66).addBox(-3.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(77, 6).addBox(2.0F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(57, 87).addBox(-1.6F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(80, 70).addBox(-2.0F, 0.0F, -2.0F, 4.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(73, 90).addBox(-4.1F, 1.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(0, 89).addBox(-4.1F, 5.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(30, 92).addBox(-4.1F, 1.5F, 1.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(49, 35).addBox(-4.1F, 3.0F, -0.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(40, 72).addBox(-3.1F, 1.5F, 2.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(86, 13).addBox(-2.1F, 1.0F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); - part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(46, 82).addBox(-1.9F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(35, 82).addBox(-1.9F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(76, 76).addBox(-2F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(66, 10).addBox(2.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(85, 86).addBox(-1.4F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(80, 65).addBox(-2.0F, 0.0F, -2.0F, 4.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(25, 89).addBox(3.1F, 1.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(18, 89).addBox(3.1F, 5.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(91, 59).addBox(3.1F, 1.5F, 1.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(60, 25).addBox(3.1F, 3.0F, -0.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(63, 3).addBox(2.1F, 1.5F, 2.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(86, 9).addBox(-1.9F, 1.0F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 12.0F, 0.0F)); - } - case 2 -> { - part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(33, 72).addBox(2.1F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(62, 0).addBox(-3.0F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(25, 0).addBox(-4.0F, 9.0F, -0.5F, 1.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(27, 72).addBox(-2.0F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(5, 62).addBox(-2.0F, 9.5F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(82, 20).addBox(-2.0F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(91, 55).addBox(-3.0F, 10.0F, 2.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(58, 49).addBox(-4.0F, 10.0F, 0.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(49, 35).addBox(-2.0F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); - part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(60, 25).addBox(2.2F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(32, 9).addBox(3.2F, 9.0F, -0.5F, 1.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 72).addBox(-1.8F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(20, 82).addBox(-1.8F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(19, 36).addBox(-1.8F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(84, 0).addBox(-1.8F, 9.5F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(33, 55).addBox(2.2F, 10.0F, 2.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(24, 55).addBox(3.2F, 10.0F, 0.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(49, 18).addBox(-1.8F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 12.0F, 0.0F)); - } - case 3 -> { - part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(85, 75).addBox(-2.1F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(82, 46).addBox(-2.1F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(58, 66).addBox(-3.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(77, 6).addBox(2.0F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(57, 87).addBox(-1.6F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(80, 70).addBox(-2.0F, 0.0F, -2.0F, 4.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(73, 90).addBox(-4.1F, 1.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(0, 89).addBox(-4.1F, 5.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(30, 92).addBox(-4.1F, 1.5F, 1.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(49, 35).addBox(-4.1F, 3.0F, -0.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(40, 72).addBox(-3.1F, 1.5F, 2.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(86, 13).addBox(-2.1F, 1.0F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(33, 72).addBox(2.0F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(62, 0).addBox(-3.0F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(25, 0).addBox(-4.0F, 9.0F, -0.5F, 1.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(27, 72).addBox(-2.0F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(5, 62).addBox(-2.0F, 9.5F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(82, 20).addBox(-2.0F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(91, 55).addBox(-3.0F, 10.0F, 2.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(58, 49).addBox(-4.0F, 10.0F, 0.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(49, 35).addBox(-2.0F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); - part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(46, 82).addBox(-1.9F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(35, 82).addBox(-1.9F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(76, 76).addBox(-2F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(66, 10).addBox(2.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(85, 86).addBox(-1.4F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(80, 65).addBox(-2.0F, 0.0F, -2.0F, 4.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(25, 89).addBox(3.1F, 1.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(18, 89).addBox(3.1F, 5.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(91, 59).addBox(3.1F, 1.5F, 1.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(60, 25).addBox(3.1F, 3.0F, -0.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(63, 3).addBox(2.1F, 1.5F, 2.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(86, 9).addBox(-1.9F, 1.0F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(60, 25).addBox(2.2F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(32, 9).addBox(3.2F, 9.0F, -0.5F, 1.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 72).addBox(-1.8F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(20, 82).addBox(-1.8F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(19, 36).addBox(-1.8F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(84, 0).addBox(-1.8F, 9.5F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(33, 55).addBox(2.2F, 10.0F, 2.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(24, 55).addBox(3.2F, 10.0F, 0.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(49, 18).addBox(-1.8F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 12.0F, 0.0F)); - } - default -> { - part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - } - } - - return LayerDefinition.create(mesh, 128, 128); - } - - @Override - public void renderToBuffer(@NotNull PoseStack poseStack, @NotNull VertexConsumer buffer, int packedLight, int packedOverlay, int light) { - if (parentHead.visible) { - parentHead.render(poseStack, getCustomConsumer(RenderType.entityTranslucent(ItemCombatArmor.ARMOR_TEXTURE_LOCATION)), packedLight, packedOverlay); - } - if (parentChest.visible) { - parentChest.render(poseStack, buffer, packedLight, packedOverlay); - parentRightArm.render(poseStack, buffer, packedLight, packedOverlay); - parentLeftArm.render(poseStack, buffer, packedLight, packedOverlay); - } - if (parentRightLeg.visible) { - parentRightLeg.render(poseStack, buffer, packedLight, packedOverlay); - parentLeftLeg.render(poseStack, buffer, packedLight, packedOverlay); - } - } + public ModelCombatArmor(ModelPart root, EquipmentSlot slot) { + super(root); + + parentHat.visible = false; + + switch (slot) { + case HEAD -> { + parentHead.visible = true; + parentChest.visible = false; + parentRightArm.visible = false; + parentLeftArm.visible = false; + parentRightLeg.visible = false; + parentLeftLeg.visible = false; + } + case CHEST -> { + parentHead.visible = false; + parentChest.visible = true; + parentRightArm.visible = true; + parentLeftArm.visible = true; + parentRightLeg.visible = false; + parentLeftLeg.visible = false; + } + case LEGS, FEET -> { + parentHead.visible = false; + parentChest.visible = false; + parentRightArm.visible = false; + parentLeftArm.visible = false; + parentRightLeg.visible = true; + parentLeftLeg.visible = true; + } + default -> { + } + } + + } + + public static LayerDefinition createBodyLayer(int modelType, boolean noChestplate) { + MeshDefinition mesh = new MeshDefinition(); + PartDefinition part = mesh.getRoot(); + + part.addOrReplaceChild(HAT, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + + part.addOrReplaceChild(HEAD, CubeListBuilder.create().texOffs(30, 28) + // + .addBox(-6.0F, -6.0F, -4.0F, 1.0F, 5.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(7, 92) + // + .addBox(-5.0F, -6.0F, 4.0F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(90, 91) + // + .addBox(4.0F, -6.0F, 4.0F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(30, 11) + // + .addBox(5.0F, -6.0F, -4.0F, 1.0F, 5.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(66, 87) + // + .addBox(-5.0F, -6.0F, -5.0F, 2.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(9, 66) + // + .addBox(3.0F, -6.0F, -5.0F, 2.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(55, 42) + // + .addBox(-4.0F, -6.0F, 5.0F, 8.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(25, 0) + // + .addBox(-3.0F, -8.0F, -3.0F, 6.0F, 1.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(0, 0) + // + .addBox(-4.0F, -9.0F, -4.0F, 8.0F, 1.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(19, 19) + // + .addBox(4.0F, -8.0F, -4.0F, 1.0F, 8.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(41, 25) + // + .addBox(-4.0F, -8.0F, 4.0F, 8.0F, 8.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 19) + // + .addBox(-5.0F, -8.0F, -4.0F, 1.0F, 8.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(44, 3) + // + .addBox(-4.0F, -1.0F, -5.0F, 8.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(44, 0) + // + .addBox(-5.0F, -2.0F, -5.0F, 10.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(75, 30) + // + .addBox(-4.0F, -8.0F, -5.0F, 8.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 10) + // + .addBox(-4.0F, 0.0F, -4.0F, 8.0F, 0.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(12, 93) + // + .addBox(2.0F, -3.0F, -5.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(62, 92) + // + .addBox(2.0F, -6.0F, -5.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(91, 17) + // + .addBox(-3.0F, -6.0F, -5.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(91, 27) + // + .addBox(-3.0F, -3.0F, -5.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 82) + // + .addBox(-3.0F, -5.0F, -8.5F, 1.0F, 2.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(71, 0) + // + .addBox(-2.0F, -6.0F, -8.5F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(69, 24) + // + .addBox(-2.0F, -3.0F, -8.5F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(25, 10) + // + .addBox(2.0F, -5.0F, -8.5F, 1.0F, 2.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(83, 34) + // + .addBox(-2.0F, -5.0F, -8.0F, 4.0F, 2.0F, 3.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 0.0F, 0.0F)); + + if (noChestplate) { + part.addOrReplaceChild(CHEST, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + } else { + part.addOrReplaceChild(CHEST, CubeListBuilder.create().texOffs(19, 42) + // + .addBox(-4.0F, 0.5F, -3.0F, 8.0F, 11.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 36) + // + .addBox(-4.0F, 0.5F, 2.0F, 8.0F, 11.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(82, 6) + // + .addBox(-4.0F, 0.5F, -4.0F, 8.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 19) + // + .addBox(-3.0F, 1.5F, -4.0F, 6.0F, 6.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 0) + // + .addBox(-1.0F, 1.5F, -5.0F, 2.0F, 6.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(91, 40) + // + .addBox(-1.0F, 7.5F, -4.0F, 2.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(64, 35) + // + .addBox(-4.0F, 0.5F, 3.0F, 8.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 49) + // + .addBox(-4.0F, 0.0F, -2.0F, 8.0F, 12.0F, 0.0F, new CubeDeformation(0.0F)).texOffs(62, 49) + // + .addBox(-4.0F, 0.0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 62) + // + .addBox(4.0F, 0.0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(38, 42) + // + .addBox(-4.0F, 0.0F, 2.0F, 8.0F, 12.0F, 0.0F, new CubeDeformation(0.0F)).texOffs(41, 13) + // + .addBox(-4.0F, 0.0F, -2.0F, 8.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(41, 8) + // + .addBox(-4.0F, 12.0F, -2.0F, 8.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(20, 72) + // + .addBox(2.0F, 8.0F, 3.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 86) + // + .addBox(1.5F, 5.0F, 4.0F, 2.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(77, 20) + // + .addBox(1.5F, 10.5F, 4.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(93, 2) + // + .addBox(2.0F, 10.5F, 3.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(86, 27) + // + .addBox(2.0F, 9.5F, 4.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(85, 91) + // + .addBox(2.0F, 5.0F, 4.5F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(86, 17) + // + .addBox(2.0F, 4.0F, 4.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(74, 46) + // + .addBox(0.5F, 3.0F, 4.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(49, 18) + // + .addBox(-0.5F, 1.0F, 4.0F, 1.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(80, 90) + // + .addBox(-0.5F, 4.0F, 4.5F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 19) + // + .addBox(-1.0F, 4.0F, 4.0F, 2.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(57, 80) + // + .addBox(-3.0F, 4.5F, 3.0F, 6.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(71, 63) + // + .addBox(-2.5F, 3.0F, 4.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 79) + // + .addBox(-3.0F, 4.0F, 4.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(46, 55) + // + .addBox(-3.0F, 5.0F, 4.5F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 10) + // + .addBox(-3.5F, 5.0F, 4.0F, 2.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(55, 92) + // + .addBox(-3.0F, 10.5F, 3.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(37, 8) + // + .addBox(-3.5F, 10.5F, 4.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(40, 75) + // + .addBox(-3.0F, 9.5F, 4.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(46, 62) + // + .addBox(-3.0F, 8.0F, 3.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(73, 40) + // + .addBox(-0.5F, 8.0F, 3.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(5.0F, 24.0F, 0.0F)); + } + + part.addOrReplaceChild(RIGHT_ARM, CubeListBuilder.create().texOffs(17, 55) + // + .addBox(-4.0F, -2.0F, -2.0F, 1.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(37, 55) + // + .addBox(1.0F, -2.0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(9, 72) + // + .addBox(-3.0F, -2.0F, -3.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(71, 49) + // + .addBox(-3.0F, -2.0F, 2.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(78, 59) + // + .addBox(-3.0F, -3.0F, -2.0F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(-5.0F, 2.0F, 0.0F)); + + part.addOrReplaceChild(LEFT_ARM, CubeListBuilder.create().texOffs(28, 55) + // + .addBox(-1.0F, -2.0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(51, 51) + // + .addBox(3.0F, -2.0F, -2.0F, 1.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(69, 66) + // + .addBox(-1.0F, -2.0F, -3.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(46, 68) + // + .addBox(-1.0F, -2.0F, 2.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(74, 40) + // + .addBox(-1.0F, -3.0F, -2.0F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(5.0F, 2.0F, 0.0F)); + + switch (modelType) { + case 1 -> { + part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(85, 75) + // + .addBox(-2.1F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(82, 46) + // + .addBox(-2.1F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(58, 66) + // + .addBox(-3.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(77, 6) + // + .addBox(2.0F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(57, 87) + // + .addBox(-1.6F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(80, 70) + // + .addBox(-2.0F, 0.0F, -2.0F, 4.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(73, 90) + // + .addBox(-4.1F, 1.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(0, 89) + // + .addBox(-4.1F, 5.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(30, 92) + // + .addBox(-4.1F, 1.5F, 1.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(49, 35) + // + .addBox(-4.1F, 3.0F, -0.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(40, 72) + // + .addBox(-3.1F, 1.5F, 2.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(86, 13) + // + .addBox(-2.1F, 1.0F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); + part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(46, 82) + // + .addBox(-1.9F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(35, 82) + // + .addBox(-1.9F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(76, 76) + // + .addBox(-2F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(66, 10) + // + .addBox(2.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(85, 86) + // + .addBox(-1.4F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(80, 65) + // + .addBox(-2.0F, 0.0F, -2.0F, 4.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(25, 89) + // + .addBox(3.1F, 1.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(18, 89) + // + .addBox(3.1F, 5.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(91, 59) + // + .addBox(3.1F, 1.5F, 1.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(60, 25) + // + .addBox(3.1F, 3.0F, -0.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(63, 3) + // + .addBox(2.1F, 1.5F, 2.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(86, 9) + // + .addBox(-1.9F, 1.0F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 12.0F, 0.0F)); + } + case 2 -> { + part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(33, 72) + // + .addBox(2.1F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(62, 0) + // + .addBox(-3.0F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(25, 0) + // + .addBox(-4.0F, 9.0F, -0.5F, 1.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(27, 72) + // + .addBox(-2.0F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(5, 62) + // + .addBox(-2.0F, 9.5F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(82, 20) + // + .addBox(-2.0F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(91, 55) + // + .addBox(-3.0F, 10.0F, 2.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(58, 49) + // + .addBox(-4.0F, 10.0F, 0.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(49, 35) + // + .addBox(-2.0F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); + part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(60, 25) + // + .addBox(2.2F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(32, 9) + // + .addBox(3.2F, 9.0F, -0.5F, 1.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 72) + // + .addBox(-1.8F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(20, 82) + // + .addBox(-1.8F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(19, 36) + // + .addBox(-1.8F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(84, 0) + // + .addBox(-1.8F, 9.5F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(33, 55) + // + .addBox(2.2F, 10.0F, 2.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(24, 55) + // + .addBox(3.2F, 10.0F, 0.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(49, 18) + // + .addBox(-1.8F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 12.0F, 0.0F)); + } + case 3 -> { + part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(85, 75) + // + .addBox(-2.1F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(82, 46) + // + .addBox(-2.1F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(58, 66) + // + .addBox(-3.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(77, 6) + // + .addBox(2.0F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(57, 87) + // + .addBox(-1.6F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(80, 70) + // + .addBox(-2.0F, 0.0F, -2.0F, 4.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(73, 90) + // + .addBox(-4.1F, 1.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(0, 89) + // + .addBox(-4.1F, 5.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(30, 92) + // + .addBox(-4.1F, 1.5F, 1.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(49, 35) + // + .addBox(-4.1F, 3.0F, -0.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(40, 72) + // + .addBox(-3.1F, 1.5F, 2.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(86, 13) + // + .addBox(-2.1F, 1.0F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(33, 72) + // + .addBox(2.0F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(62, 0) + // + .addBox(-3.0F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(25, 0) + // + .addBox(-4.0F, 9.0F, -0.5F, 1.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(27, 72) + // + .addBox(-2.0F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(5, 62) + // + .addBox(-2.0F, 9.5F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(82, 20) + // + .addBox(-2.0F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(91, 55) + // + .addBox(-3.0F, 10.0F, 2.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(58, 49) + // + .addBox(-4.0F, 10.0F, 0.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(49, 35) + // + .addBox(-2.0F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); + part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(46, 82) + // + .addBox(-1.9F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(35, 82) + // + .addBox(-1.9F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(76, 76) + // + .addBox(-2F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(66, 10) + // + .addBox(2.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(85, 86) + // + .addBox(-1.4F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(80, 65) + // + .addBox(-2.0F, 0.0F, -2.0F, 4.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(25, 89) + // + .addBox(3.1F, 1.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(18, 89) + // + .addBox(3.1F, 5.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(91, 59) + // + .addBox(3.1F, 1.5F, 1.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(60, 25) + // + .addBox(3.1F, 3.0F, -0.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(63, 3) + // + .addBox(2.1F, 1.5F, 2.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(86, 9) + // + .addBox(-1.9F, 1.0F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(60, 25) + // + .addBox(2.2F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(32, 9) + // + .addBox(3.2F, 9.0F, -0.5F, 1.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 72) + // + .addBox(-1.8F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(20, 82) + // + .addBox(-1.8F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(19, 36) + // + .addBox(-1.8F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(84, 0) + // + .addBox(-1.8F, 9.5F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(33, 55) + // + .addBox(2.2F, 10.0F, 2.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(24, 55) + // + .addBox(3.2F, 10.0F, 0.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(49, 18) + // + .addBox(-1.8F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 12.0F, 0.0F)); + } + default -> { + part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + } + } + + return LayerDefinition.create(mesh, 128, 128); + } + + @Override + public void renderToBuffer(@NotNull PoseStack poseStack, @NotNull VertexConsumer buffer, int packedLight, int packedOverlay, int light) { + if (parentHead.visible) { + parentHead.render(poseStack, getCustomConsumer(RenderType.entityTranslucent(ItemCombatArmor.ARMOR_TEXTURE_LOCATION)), packedLight, packedOverlay); + } + if (parentChest.visible) { + parentChest.render(poseStack, buffer, packedLight, packedOverlay); + parentRightArm.render(poseStack, buffer, packedLight, packedOverlay); + parentLeftArm.render(poseStack, buffer, packedLight, packedOverlay); + } + if (parentRightLeg.visible) { + parentRightLeg.render(poseStack, buffer, packedLight, packedOverlay); + parentLeftLeg.render(poseStack, buffer, packedLight, packedOverlay); + } + } } diff --git a/src/main/java/electrodynamics/client/render/model/armor/types/ModelCompositeArmor.java b/src/main/java/electrodynamics/client/render/model/armor/types/ModelCompositeArmor.java index 6ac20f69d..05337175c 100644 --- a/src/main/java/electrodynamics/client/render/model/armor/types/ModelCompositeArmor.java +++ b/src/main/java/electrodynamics/client/render/model/armor/types/ModelCompositeArmor.java @@ -1,11 +1,11 @@ package electrodynamics.client.render.model.armor.types; +import electrodynamics.Electrodynamics; import org.jetbrains.annotations.NotNull; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; -import electrodynamics.api.References; import electrodynamics.client.render.model.armor.GenericArmorModel; import electrodynamics.common.item.gear.armor.types.ItemCompositeArmor; import net.minecraft.client.model.geom.ModelLayerLocation; @@ -17,113 +17,282 @@ import net.minecraft.client.model.geom.builders.MeshDefinition; import net.minecraft.client.model.geom.builders.PartDefinition; import net.minecraft.client.renderer.RenderType; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.EquipmentSlot; import net.minecraft.world.entity.LivingEntity; public class ModelCompositeArmor extends GenericArmorModel { - public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(ResourceLocation.fromNamespaceAndPath(References.ID, "composite_armor"), "main"); - - public ModelCompositeArmor(ModelPart root, EquipmentSlot slot) { - super(root); - - parentHat.visible = false; - - switch (slot) { - case HEAD -> { - parentHead.visible = true; - parentChest.visible = false; - parentRightArm.visible = false; - parentLeftArm.visible = false; - parentRightLeg.visible = false; - parentLeftLeg.visible = false; - } - case CHEST -> { - parentHead.visible = false; - parentChest.visible = true; - parentRightArm.visible = true; - parentLeftArm.visible = true; - parentRightLeg.visible = false; - parentLeftLeg.visible = false; - } - case LEGS, FEET -> { - parentHead.visible = false; - parentChest.visible = false; - parentRightArm.visible = false; - parentLeftArm.visible = false; - parentRightLeg.visible = true; - parentLeftLeg.visible = true; - } - default -> { - } - } - } - - public static LayerDefinition createBodyLayer(int modelType, boolean noChestplate) { - MeshDefinition mesh = new MeshDefinition(); - PartDefinition part = mesh.getRoot(); - - part.addOrReplaceChild(HAT, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - - // head - part.addOrReplaceChild(HEAD, CubeListBuilder.create().texOffs(19, 27).addBox(-6.0F, -6.0F, -4.0F, 1.0F, 5.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(30, 27).addBox(-5.0F, -6.0F, 4.0F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(30, 10).addBox(4.0F, -6.0F, 4.0F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 27).addBox(5.0F, -6.0F, -4.0F, 1.0F, 5.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(0, 27).addBox(-5.0F, -6.0F, -5.0F, 2.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 10).addBox(3.0F, -6.0F, -5.0F, 2.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(55, 34).addBox(-4.0F, -6.0F, 5.0F, 8.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(25, 0).addBox(-3.0F, -8.0F, -3.0F, 6.0F, 1.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(0, 0).addBox(-4.0F, -9.0F, -4.0F, 8.0F, 1.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(19, 10).addBox(4.0F, -8.0F, -4.0F, 1.0F, 8.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(17, 41).addBox(-4.0F, -8.0F, 4.0F, 8.0F, 8.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 10).addBox(-5.0F, -8.0F, -4.0F, 1.0F, 8.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(44, 3).addBox(-4.0F, -1.0F, -5.0F, 8.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(44, 0).addBox(-5.0F, -2.0F, -5.0F, 10.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(71, 69).addBox(-4.0F, -8.0F, -5.0F, 8.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 85).addBox(-4.0F, 0.05F, -4.0F, 8.0F, 0.1F, 8.0F, new CubeDeformation(0.0F)).texOffs(42, 84).addBox(-3.0F, -6.0F, -5.0F, 6.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 0.0F, 0.0F)); - - if (noChestplate) { - part.addOrReplaceChild(CHEST, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - } else { - // chest - part.addOrReplaceChild(CHEST, CubeListBuilder.create().texOffs(38, 21).addBox(-4.0F, 0.5F, -3.0F, 8.0F, 11.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(38, 8).addBox(-4.0F, 0.5F, 2.0F, 8.0F, 11.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(73, 6).addBox(-4.0F, 0.5F, -4.0F, 8.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 10).addBox(-3.0F, 1.5F, -4.0F, 6.0F, 6.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 0).addBox(-1.0F, 1.5F, -5.0F, 2.0F, 6.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(80, 59).addBox(-1.0F, 7.5F, -4.0F, 2.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(57, 23).addBox(-4.0F, 0.5F, 3.0F, 8.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(79, 9).addBox(-2.0F, 4F, 3.0F, 4.0F, 5.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(0, 41).addBox(-4.0F, 0F, -2.0F, 8.0F, 12.0F, 0.0F, new CubeDeformation(0.0F)).texOffs(51, 55).addBox(-4.0F, 0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(42, 55).addBox(4.0F, 0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(38, 34).addBox(-4.0F, 0F, 2.0F, 8.0F, 12.0F, 0.0F, new CubeDeformation(0.0F)).texOffs(0, 95).addBox(-4.0F, -0.05F, -2.0F, 8.0F, 0.1F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 101).addBox(-4.0F, 12.0F, -2.0F, 8.0F, 0.1F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 24.0F, 0.0F)); - } - // right arm - part.addOrReplaceChild(RIGHT_ARM, CubeListBuilder.create().texOffs(0, 54).addBox(-4.0F, -2.0F, -2.0F, 1.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(33, 54).addBox(1.0F, -2.0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 71).addBox(-3.0F, -2.0F, -3.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(60, 69).addBox(-3.0F, -2.0F, 2.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(66, 0).addBox(-3.0F, -3.0F, -2.0F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(-5.0F, 2.0F, 0.0F)); - - // left arm - part.addOrReplaceChild(LEFT_ARM, CubeListBuilder.create().texOffs(24, 51).addBox(-1.0F, -2.0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(13, 51).addBox(3.0F, -2.0F, -2.0F, 1.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(22, 68).addBox(-1.0F, -2.0F, -3.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 68).addBox(-1.0F, -2.0F, 2.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(57, 28).addBox(-1.0F, -3.0F, -2.0F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(5.0F, 2.0F, 0.0F)); - - switch (modelType) { - case 1 -> { - // right leg only - part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(77, 43).addBox(-2.1F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(77, 17).addBox(-2.1F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(66, 41).addBox(-3.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(71, 55).addBox(2.0F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(51, 79).addBox(-1.6F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 107).addBox(-2.0F, -0.05F, -2.0F, 4.0F, 0.1F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); - // left leg only - part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(74, 32).addBox(-1.9F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(71, 73).addBox(-1.9F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(33, 71).addBox(-2F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(60, 55).addBox(2.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(42, 79).addBox(-1.4F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 113).addBox(-2.0F, -0.05F, -2.0F, 4.0F, 0.1F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 12.0F, 0.0F)); - } - case 2 -> { - // right shoe only - part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(70, 22).addBox(2.0F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(57, 13).addBox(-3.0F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(76, 54).addBox(-2.0F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(42, 72).addBox(-2.0F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(45, 48).addBox(-2.0F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 17.0F, 0.0F)); - // left shoe only - part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(57, 3).addBox(2.2F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(66, 7).addBox(-2F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(11, 27).addBox(-1.8F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(55, 41).addBox(-1.8F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(30, 47).addBox(-1.8F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 17.0F, 0.0F)); - } - case 3 -> { - // right leg combined - part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(77, 43).addBox(-2.1F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(77, 17).addBox(-2.1F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(66, 41).addBox(-3.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(71, 55).addBox(2.0F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(51, 79).addBox(-1.6F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 107).addBox(-2.0F, -0.05F, -2.0F, 4.0F, 0.1F, 4.0F, new CubeDeformation(0.0F)).texOffs(70, 22).addBox(2.0F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(57, 13).addBox(-3.0F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(76, 54).addBox(-2.0F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(42, 72).addBox(-2.0F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(45, 48).addBox(-2.0F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); - // left leg combined - part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(74, 32).addBox(-1.9F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(71, 73).addBox(-1.9F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(33, 71).addBox(-2F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(60, 55).addBox(2.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(42, 79).addBox(-1.4F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 113).addBox(-2.0F, -0.05F, -2.0F, 4.0F, 0.1F, 4.0F, new CubeDeformation(0.0F)).texOffs(30, 47).addBox(-1.8F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(55, 41).addBox(-1.8F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 27).addBox(-1.8F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(66, 7).addBox(-2F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(57, 3).addBox(2.2F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 12.0F, 0.0F)); - } - default -> { - part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - } - } - - return LayerDefinition.create(mesh, 128, 128); - } - - @Override - // Call me a butcher, because I am hacking this game - public void renderToBuffer(@NotNull PoseStack poseStack, @NotNull VertexConsumer buffer, int packedLight, int packedOverlay, int light) { - if (parentHead.visible) { - parentHead.render(poseStack, getCustomConsumer(RenderType.entityTranslucent(ItemCompositeArmor.ARMOR_TEXTURE_LOCATION)), packedLight, packedOverlay); - } - if (parentChest.visible) { - parentChest.render(poseStack, buffer, packedLight, packedOverlay); - parentRightArm.render(poseStack, buffer, packedLight, packedOverlay); - parentLeftArm.render(poseStack, buffer, packedLight, packedOverlay); - } - if (parentRightLeg.visible) { - parentRightLeg.render(poseStack, buffer, packedLight, packedOverlay); - parentLeftLeg.render(poseStack, buffer, packedLight, packedOverlay); - } - } + public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(Electrodynamics.rl("composite_armor"), "main"); + + public ModelCompositeArmor(ModelPart root, EquipmentSlot slot) { + super(root); + + parentHat.visible = false; + + switch (slot) { + case HEAD -> { + parentHead.visible = true; + parentChest.visible = false; + parentRightArm.visible = false; + parentLeftArm.visible = false; + parentRightLeg.visible = false; + parentLeftLeg.visible = false; + } + case CHEST -> { + parentHead.visible = false; + parentChest.visible = true; + parentRightArm.visible = true; + parentLeftArm.visible = true; + parentRightLeg.visible = false; + parentLeftLeg.visible = false; + } + case LEGS, FEET -> { + parentHead.visible = false; + parentChest.visible = false; + parentRightArm.visible = false; + parentLeftArm.visible = false; + parentRightLeg.visible = true; + parentLeftLeg.visible = true; + } + default -> { + } + } + } + + public static LayerDefinition createBodyLayer(int modelType, boolean noChestplate) { + MeshDefinition mesh = new MeshDefinition(); + PartDefinition part = mesh.getRoot(); + + part.addOrReplaceChild(HAT, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + + // head + part.addOrReplaceChild(HEAD, CubeListBuilder.create().texOffs(19, 27) + // + .addBox(-6.0F, -6.0F, -4.0F, 1.0F, 5.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(30, 27) + // + .addBox(-5.0F, -6.0F, 4.0F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(30, 10) + // + .addBox(4.0F, -6.0F, 4.0F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 27) + // + .addBox(5.0F, -6.0F, -4.0F, 1.0F, 5.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(0, 27) + // + .addBox(-5.0F, -6.0F, -5.0F, 2.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 10) + // + .addBox(3.0F, -6.0F, -5.0F, 2.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(55, 34) + // + .addBox(-4.0F, -6.0F, 5.0F, 8.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(25, 0) + // + .addBox(-3.0F, -8.0F, -3.0F, 6.0F, 1.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(0, 0) + // + .addBox(-4.0F, -9.0F, -4.0F, 8.0F, 1.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(19, 10) + // + .addBox(4.0F, -8.0F, -4.0F, 1.0F, 8.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(17, 41) + // + .addBox(-4.0F, -8.0F, 4.0F, 8.0F, 8.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 10) + // + .addBox(-5.0F, -8.0F, -4.0F, 1.0F, 8.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(44, 3) + // + .addBox(-4.0F, -1.0F, -5.0F, 8.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(44, 0) + // + .addBox(-5.0F, -2.0F, -5.0F, 10.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(71, 69) + // + .addBox(-4.0F, -8.0F, -5.0F, 8.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 85) + // + .addBox(-4.0F, 0.05F, -4.0F, 8.0F, 0.1F, 8.0F, new CubeDeformation(0.0F)).texOffs(42, 84) + // + .addBox(-3.0F, -6.0F, -5.0F, 6.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 0.0F, 0.0F)); + + if (noChestplate) { + part.addOrReplaceChild(CHEST, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + } else { + // chest + part.addOrReplaceChild(CHEST, CubeListBuilder.create().texOffs(38, 21) + // + .addBox(-4.0F, 0.5F, -3.0F, 8.0F, 11.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(38, 8) + // + .addBox(-4.0F, 0.5F, 2.0F, 8.0F, 11.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(73, 6) + // + .addBox(-4.0F, 0.5F, -4.0F, 8.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 10) + // + .addBox(-3.0F, 1.5F, -4.0F, 6.0F, 6.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 0) + // + .addBox(-1.0F, 1.5F, -5.0F, 2.0F, 6.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(80, 59) + // + .addBox(-1.0F, 7.5F, -4.0F, 2.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(57, 23) + // + .addBox(-4.0F, 0.5F, 3.0F, 8.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(79, 9) + // + .addBox(-2.0F, 4F, 3.0F, 4.0F, 5.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(0, 41) + // + .addBox(-4.0F, 0F, -2.0F, 8.0F, 12.0F, 0.0F, new CubeDeformation(0.0F)).texOffs(51, 55) + // + .addBox(-4.0F, 0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(42, 55) + // + .addBox(4.0F, 0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(38, 34) + // + .addBox(-4.0F, 0F, 2.0F, 8.0F, 12.0F, 0.0F, new CubeDeformation(0.0F)).texOffs(0, 95) + // + .addBox(-4.0F, -0.05F, -2.0F, 8.0F, 0.1F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 101) + // + .addBox(-4.0F, 12.0F, -2.0F, 8.0F, 0.1F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 24.0F, 0.0F)); + } + // right arm + part.addOrReplaceChild(RIGHT_ARM, CubeListBuilder.create().texOffs(0, 54) + // + .addBox(-4.0F, -2.0F, -2.0F, 1.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(33, 54) + // + .addBox(1.0F, -2.0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 71) + // + .addBox(-3.0F, -2.0F, -3.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(60, 69) + // + .addBox(-3.0F, -2.0F, 2.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(66, 0) + // + .addBox(-3.0F, -3.0F, -2.0F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(-5.0F, 2.0F, 0.0F)); + + // left arm + part.addOrReplaceChild(LEFT_ARM, CubeListBuilder.create().texOffs(24, 51) + // + .addBox(-1.0F, -2.0F, -2.0F, 0.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(13, 51) + // + .addBox(3.0F, -2.0F, -2.0F, 1.0F, 12.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(22, 68) + // + .addBox(-1.0F, -2.0F, -3.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 68) + // + .addBox(-1.0F, -2.0F, 2.0F, 4.0F, 12.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(57, 28) + // + .addBox(-1.0F, -3.0F, -2.0F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(5.0F, 2.0F, 0.0F)); + + switch (modelType) { + case 1 -> { + // right leg only + part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(77, 43) + // + .addBox(-2.1F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(77, 17) + // + .addBox(-2.1F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(66, 41) + // + .addBox(-3.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(71, 55) + // + .addBox(2.0F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(51, 79) + // + .addBox(-1.6F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 107) + // + .addBox(-2.0F, -0.05F, -2.0F, 4.0F, 0.1F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); + // left leg only + part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(74, 32) + // + .addBox(-1.9F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(71, 73) + // + .addBox(-1.9F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(33, 71) + // + .addBox(-2F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(60, 55) + // + .addBox(2.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(42, 79) + // + .addBox(-1.4F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 113) + // + .addBox(-2.0F, -0.05F, -2.0F, 4.0F, 0.1F, 4.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 12.0F, 0.0F)); + } + case 2 -> { + // right shoe only + part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(70, 22) + // + .addBox(2.0F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(57, 13) + // + .addBox(-3.0F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(76, 54) + // + .addBox(-2.0F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(42, 72) + // + .addBox(-2.0F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(45, 48) + // + .addBox(-2.0F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 17.0F, 0.0F)); + // left shoe only + part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(57, 3) + // + .addBox(2.2F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(66, 7) + // + .addBox(-2F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(11, 27) + // + .addBox(-1.8F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(55, 41) + // + .addBox(-1.8F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(30, 47) + // + .addBox(-1.8F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 17.0F, 0.0F)); + } + case 3 -> { + // right leg combined + part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(77, 43) + // + .addBox(-2.1F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(77, 17) + // + .addBox(-2.1F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(66, 41) + // + .addBox(-3.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(71, 55) + // + .addBox(2.0F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(51, 79) + // + .addBox(-1.6F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 107) + // + .addBox(-2.0F, -0.05F, -2.0F, 4.0F, 0.1F, 4.0F, new CubeDeformation(0.0F)).texOffs(70, 22) + // + .addBox(2.0F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(57, 13) + // + .addBox(-3.0F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(76, 54) + // + .addBox(-2.0F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(42, 72) + // + .addBox(-2.0F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(45, 48) + // + .addBox(-2.0F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); + // left leg combined + part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(74, 32) + // + .addBox(-1.9F, 0.0F, -3.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(71, 73) + // + .addBox(-1.9F, 0.0F, 2.0F, 4.0F, 9.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(33, 71) + // + .addBox(-2F, 0.0F, -2.0F, 0.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(60, 55) + // + .addBox(2.1F, 0.0F, -2.0F, 1.0F, 9.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(42, 79) + // + .addBox(-1.4F, 3.0F, -4.0F, 3.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 113) + // + .addBox(-2.0F, -0.05F, -2.0F, 4.0F, 0.1F, 4.0F, new CubeDeformation(0.0F)).texOffs(30, 47) + // + .addBox(-1.8F, 12.1F, -4.0F, 4.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(55, 41) + // + .addBox(-1.8F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 27) + // + .addBox(-1.8F, 9.0F, -4.0F, 4.0F, 3.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(66, 7) + // + .addBox(-2F, 9.0F, -4.0F, 0.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(57, 3) + // + .addBox(2.2F, 9.0F, -4.0F, 1.0F, 3.0F, 6.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 12.0F, 0.0F)); + } + default -> { + part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + } + } + + return LayerDefinition.create(mesh, 128, 128); + } + + @Override + // Call me a butcher, because I am hacking this game + public void renderToBuffer(@NotNull PoseStack poseStack, @NotNull VertexConsumer buffer, int packedLight, int packedOverlay, int light) { + if (parentHead.visible) { + parentHead.render(poseStack, getCustomConsumer(RenderType.entityTranslucent(ItemCompositeArmor.ARMOR_TEXTURE_LOCATION)), packedLight, packedOverlay); + } + if (parentChest.visible) { + parentChest.render(poseStack, buffer, packedLight, packedOverlay); + parentRightArm.render(poseStack, buffer, packedLight, packedOverlay); + parentLeftArm.render(poseStack, buffer, packedLight, packedOverlay); + } + if (parentRightLeg.visible) { + parentRightLeg.render(poseStack, buffer, packedLight, packedOverlay); + parentLeftLeg.render(poseStack, buffer, packedLight, packedOverlay); + } + } } \ No newline at end of file diff --git a/src/main/java/electrodynamics/client/render/model/armor/types/ModelHydraulicBoots.java b/src/main/java/electrodynamics/client/render/model/armor/types/ModelHydraulicBoots.java index 1ca74a6f5..0d700da65 100644 --- a/src/main/java/electrodynamics/client/render/model/armor/types/ModelHydraulicBoots.java +++ b/src/main/java/electrodynamics/client/render/model/armor/types/ModelHydraulicBoots.java @@ -1,11 +1,11 @@ package electrodynamics.client.render.model.armor.types; +import electrodynamics.Electrodynamics; import org.jetbrains.annotations.NotNull; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; -import electrodynamics.api.References; import electrodynamics.client.render.model.armor.GenericArmorModel; import net.minecraft.client.model.geom.ModelLayerLocation; import net.minecraft.client.model.geom.ModelPart; @@ -15,46 +15,89 @@ import net.minecraft.client.model.geom.builders.LayerDefinition; import net.minecraft.client.model.geom.builders.MeshDefinition; import net.minecraft.client.model.geom.builders.PartDefinition; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.LivingEntity; public class ModelHydraulicBoots extends GenericArmorModel { - public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(ResourceLocation.fromNamespaceAndPath(References.ID, "hydraulic_boots"), "main"); + public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(Electrodynamics.rl("hydraulic_boots"), "main"); - public ModelHydraulicBoots(ModelPart root) { - super(root); + public ModelHydraulicBoots(ModelPart root) { + super(root); - parentHat.visible = false; - parentHead.visible = false; - parentChest.visible = false; - parentRightArm.visible = false; - parentLeftArm.visible = false; - parentRightLeg.visible = true; - parentLeftLeg.visible = true; + parentHat.visible = false; + parentHead.visible = false; + parentChest.visible = false; + parentRightArm.visible = false; + parentLeftArm.visible = false; + parentRightLeg.visible = true; + parentLeftLeg.visible = true; - } + } - public static LayerDefinition createBodyLayer() { - MeshDefinition mesh = new MeshDefinition(); - PartDefinition part = mesh.getRoot(); + public static LayerDefinition createBodyLayer() { + MeshDefinition mesh = new MeshDefinition(); + PartDefinition part = mesh.getRoot(); - part.addOrReplaceChild(HAT, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(HEAD, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(CHEST, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(LEFT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(RIGHT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(HAT, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(HEAD, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(CHEST, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(LEFT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(RIGHT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(18, 14).addBox(2.0F, 9.0F, -2.0F, 0.0F, 3.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(5, 26).addBox(2.0F, 4.0F, -2.0F, 0.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(11, 10).addBox(-3.0F, 9.0F, -2.0F, 1.0F, 3.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 18).addBox(-3.0F, 4.0F, -2.0F, 1.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(23, 12).addBox(-2.0F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(28, 5).addBox(-2.0F, 4.0F, 2.0F, 4.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 22).addBox(-2.0F, 9.0F, -3.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(21, 27).addBox(-2.0F, 4.0F, -3.0F, 4.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 5).addBox(-2.0F, 12.1F, -2.0F, 4.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(24, 30).addBox(-3.6F, 5.0F, -0.5F, 1.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 30).addBox(-0.5F, 5.0F, 2.5F, 1.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); + part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(18, 14) + // + .addBox(2.0F, 9.0F, -2.0F, 0.0F, 3.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(5, 26) + // + .addBox(2.0F, 4.0F, -2.0F, 0.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(11, 10) + // + .addBox(-3.0F, 9.0F, -2.0F, 1.0F, 3.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 18) + // + .addBox(-3.0F, 4.0F, -2.0F, 1.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(23, 12) + // + .addBox(-2.0F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(28, 5) + // + .addBox(-2.0F, 4.0F, 2.0F, 4.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 22) + // + .addBox(-2.0F, 9.0F, -3.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(21, 27) + // + .addBox(-2.0F, 4.0F, -3.0F, 4.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 5) + // + .addBox(-2.0F, 12.1F, -2.0F, 4.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(24, 30) + // + .addBox(-3.6F, 5.0F, -0.5F, 1.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 30) + // + .addBox(-0.5F, 5.0F, 2.5F, 1.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); - part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(0, 0).addBox(-1.8F, 12.1F, -2.0F, 4.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(18, 7).addBox(-1.8F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(10, 26).addBox(-1.8F, 4.0F, 2.0F, 4.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 0).addBox(-1.8F, 9.0F, -3.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(27, 17).addBox(-1.8F, 4.0F, -3.0F, 4.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 18).addBox(-1.8F, 9.0F, -2.0F, 0.0F, 3.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 24).addBox(-1.8F, 4.0F, -2.0F, 0.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 10).addBox(2.2F, 9.0F, -2.0F, 1.0F, 3.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(13, 1).addBox(2.2F, 4.0F, -2.0F, 1.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(19, 30).addBox(2.7F, 5.0F, -0.5F, 1.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(14, 29).addBox(-0.5F, 5.0F, 2.5F, 1.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 12.0F, 0.0F)); + part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(0, 0) + // + .addBox(-1.8F, 12.1F, -2.0F, 4.0F, 0.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(18, 7) + // + .addBox(-1.8F, 9.0F, 2.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(10, 26) + // + .addBox(-1.8F, 4.0F, 2.0F, 4.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 0) + // + .addBox(-1.8F, 9.0F, -3.0F, 4.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(27, 17) + // + .addBox(-1.8F, 4.0F, -3.0F, 4.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 18) + // + .addBox(-1.8F, 9.0F, -2.0F, 0.0F, 3.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 24) + // + .addBox(-1.8F, 4.0F, -2.0F, 0.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 10) + // + .addBox(2.2F, 9.0F, -2.0F, 1.0F, 3.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(13, 1) + // + .addBox(2.2F, 4.0F, -2.0F, 1.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(19, 30) + // + .addBox(2.7F, 5.0F, -0.5F, 1.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(14, 29) + // + .addBox(-0.5F, 5.0F, 2.5F, 1.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 12.0F, 0.0F)); - return LayerDefinition.create(mesh, 64, 64); - } + return LayerDefinition.create(mesh, 64, 64); + } - @Override - public void renderToBuffer(@NotNull PoseStack poseStack, @NotNull VertexConsumer buffer, int packedLight, int packedOverlay, int light) { - parentRightLeg.render(poseStack, buffer, packedLight, packedOverlay); - parentLeftLeg.render(poseStack, buffer, packedLight, packedOverlay); - } + @Override + public void renderToBuffer(@NotNull PoseStack poseStack, @NotNull VertexConsumer buffer, int packedLight, int packedOverlay, int light) { + parentRightLeg.render(poseStack, buffer, packedLight, packedOverlay); + parentLeftLeg.render(poseStack, buffer, packedLight, packedOverlay); + } } \ No newline at end of file diff --git a/src/main/java/electrodynamics/client/render/model/armor/types/ModelJetpack.java b/src/main/java/electrodynamics/client/render/model/armor/types/ModelJetpack.java index 2e8e4c0ee..2da7b2091 100644 --- a/src/main/java/electrodynamics/client/render/model/armor/types/ModelJetpack.java +++ b/src/main/java/electrodynamics/client/render/model/armor/types/ModelJetpack.java @@ -1,11 +1,11 @@ package electrodynamics.client.render.model.armor.types; +import electrodynamics.Electrodynamics; import org.jetbrains.annotations.NotNull; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; -import electrodynamics.api.References; import electrodynamics.client.render.model.armor.GenericArmorModel; import net.minecraft.client.model.geom.ModelLayerLocation; import net.minecraft.client.model.geom.ModelPart; @@ -15,45 +15,110 @@ import net.minecraft.client.model.geom.builders.LayerDefinition; import net.minecraft.client.model.geom.builders.MeshDefinition; import net.minecraft.client.model.geom.builders.PartDefinition; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.LivingEntity; public class ModelJetpack extends GenericArmorModel { - public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(ResourceLocation.fromNamespaceAndPath(References.ID, "jetpack"), "main"); + public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(Electrodynamics.rl("jetpack"), "main"); - public ModelJetpack(ModelPart root) { - super(root); + public ModelJetpack(ModelPart root) { + super(root); - parentHat.visible = false; - parentHead.visible = false; - parentChest.visible = true; - parentRightArm.visible = false; - parentLeftArm.visible = false; - parentRightLeg.visible = false; - parentLeftLeg.visible = false; + parentHat.visible = false; + parentHead.visible = false; + parentChest.visible = true; + parentRightArm.visible = false; + parentLeftArm.visible = false; + parentRightLeg.visible = false; + parentLeftLeg.visible = false; - } + } - public static LayerDefinition createBodyLayer() { - MeshDefinition mesh = new MeshDefinition(); - PartDefinition part = mesh.getRoot(); + public static LayerDefinition createBodyLayer() { + MeshDefinition mesh = new MeshDefinition(); + PartDefinition part = mesh.getRoot(); - part.addOrReplaceChild(HAT, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(HEAD, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(HAT, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(HEAD, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(CHEST, CubeListBuilder.create().texOffs(15, 24).addBox(-3.0F, 0.0F, -3.0F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(26, 27).addBox(-4.0F, 5.0F, -3.0F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(27, 18).addBox(3.0F, 5.0F, -3.0F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(31, 6).addBox(3.0F, 6.0F, 2.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(30, 30).addBox(-4.0F, 6.0F, 2.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 15).addBox(4.01F, 6.0F, -3.0F, 0.0F, 1.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(9, 9).addBox(-4.0F, 6.0F, -3.0F, 0.0F, 1.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(9, 2).addBox(-3.0F, 0.0F, -3.0F, 1.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(0, 8).addBox(2.0F, 0.0F, -3.0F, 1.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(10, 24).addBox(2.0F, 0.0F, -3.0F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(7, 17).addBox(2.0F, 0.0F, 2.0F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(16, 9).addBox(-3.0F, 0.0F, 2.0F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 0).addBox(-3.0F, 2.0F, 2.0F, 6.0F, 6.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 17).addBox(1.5F, 4.5F, 3.0F, 2.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(5, 23).addBox(2.0F, 4.5F, 3.5F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(13, 17).addBox(-1.0F, 3.5F, 3.0F, 2.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(22, 9).addBox(-0.5F, 3.5F, 3.5F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(29, 3).addBox(-0.5F, 7.5F, 2.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 8).addBox(-0.5F, 0.5F, 3.0F, 1.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 15).addBox(2.0F, 7.5F, 2.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(27, 9).addBox(1.5F, 10.0F, 3.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 24).addBox(2.0F, 10.0F, 2.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(5, 30).addBox(2.0F, 9.0F, 3.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(18, 0).addBox(-3.5F, 4.5F, 3.0F, 2.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 23).addBox(-3.0F, 4.5F, 3.5F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(9, 9).addBox(-3.0F, 7.5F, 2.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(26, 23).addBox(-3.5F, 10.0F, 3.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(24, 5).addBox(-3.0F, 10.0F, 2.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(0, 30).addBox(-3.0F, 9.0F, 3.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(26, 15).addBox(0.5F, 2.5F, 3.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(25, 0).addBox(-2.5F, 2.5F, 3.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 28).addBox(2.0F, 3.5F, 3.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(27, 12).addBox(-3.0F, 3.5F, 3.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 24.0F, 0.0F)); + part.addOrReplaceChild(CHEST, CubeListBuilder.create().texOffs(15, 24) + // + .addBox(-3.0F, 0.0F, -3.0F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(26, 27) + // + .addBox(-4.0F, 5.0F, -3.0F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(27, 18) + // + .addBox(3.0F, 5.0F, -3.0F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(31, 6) + // + .addBox(3.0F, 6.0F, 2.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(30, 30) + // + .addBox(-4.0F, 6.0F, 2.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 15) + // + .addBox(4.01F, 6.0F, -3.0F, 0.0F, 1.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(9, 9) + // + .addBox(-4.0F, 6.0F, -3.0F, 0.0F, 1.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(9, 2) + // + .addBox(-3.0F, 0.0F, -3.0F, 1.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(0, 8) + // + .addBox(2.0F, 0.0F, -3.0F, 1.0F, 0.0F, 6.0F, new CubeDeformation(0.0F)).texOffs(10, 24) + // + .addBox(2.0F, 0.0F, -3.0F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(7, 17) + // + .addBox(2.0F, 0.0F, 2.0F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(16, 9) + // + .addBox(-3.0F, 0.0F, 2.0F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 0) + // + .addBox(-3.0F, 2.0F, 2.0F, 6.0F, 6.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 17) + // + .addBox(1.5F, 4.5F, 3.0F, 2.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(5, 23) + // + .addBox(2.0F, 4.5F, 3.5F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(13, 17) + // + .addBox(-1.0F, 3.5F, 3.0F, 2.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(22, 9) + // + .addBox(-0.5F, 3.5F, 3.5F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(29, 3) + // + .addBox(-0.5F, 7.5F, 2.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 8) + // + .addBox(-0.5F, 0.5F, 3.0F, 1.0F, 3.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 15) + // + .addBox(2.0F, 7.5F, 2.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(27, 9) + // + .addBox(1.5F, 10.0F, 3.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 24) + // + .addBox(2.0F, 10.0F, 2.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(5, 30) + // + .addBox(2.0F, 9.0F, 3.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(18, 0) + // + .addBox(-3.5F, 4.5F, 3.0F, 2.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 23) + // + .addBox(-3.0F, 4.5F, 3.5F, 1.0F, 5.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(9, 9) + // + .addBox(-3.0F, 7.5F, 2.5F, 1.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(26, 23) + // + .addBox(-3.5F, 10.0F, 3.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(24, 5) + // + .addBox(-3.0F, 10.0F, 2.5F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(0, 30) + // + .addBox(-3.0F, 9.0F, 3.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(26, 15) + // + .addBox(0.5F, 2.5F, 3.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(25, 0) + // + .addBox(-2.5F, 2.5F, 3.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 28) + // + .addBox(2.0F, 3.5F, 3.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(27, 12) + // + .addBox(-3.0F, 3.5F, 3.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 24.0F, 0.0F)); - part.addOrReplaceChild(LEFT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(RIGHT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(LEFT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(RIGHT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - return LayerDefinition.create(mesh, 64, 64); - } + return LayerDefinition.create(mesh, 64, 64); + } - @Override - public void renderToBuffer(@NotNull PoseStack poseStack, @NotNull VertexConsumer buffer, int packedLight, int packedOverlay, int light) { - parentChest.render(poseStack, buffer, packedLight, packedOverlay); - } + @Override + public void renderToBuffer(@NotNull PoseStack poseStack, @NotNull VertexConsumer buffer, int packedLight, int packedOverlay, int light) { + parentChest.render(poseStack, buffer, packedLight, packedOverlay); + } } \ No newline at end of file diff --git a/src/main/java/electrodynamics/client/render/model/armor/types/ModelNightVisionGoggles.java b/src/main/java/electrodynamics/client/render/model/armor/types/ModelNightVisionGoggles.java index 4d3ce310a..5a95978e6 100644 --- a/src/main/java/electrodynamics/client/render/model/armor/types/ModelNightVisionGoggles.java +++ b/src/main/java/electrodynamics/client/render/model/armor/types/ModelNightVisionGoggles.java @@ -1,11 +1,11 @@ package electrodynamics.client.render.model.armor.types; +import electrodynamics.Electrodynamics; import org.jetbrains.annotations.NotNull; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; -import electrodynamics.api.References; import electrodynamics.client.render.model.armor.GenericArmorModel; import net.minecraft.client.model.geom.ModelLayerLocation; import net.minecraft.client.model.geom.ModelPart; @@ -15,45 +15,76 @@ import net.minecraft.client.model.geom.builders.LayerDefinition; import net.minecraft.client.model.geom.builders.MeshDefinition; import net.minecraft.client.model.geom.builders.PartDefinition; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.LivingEntity; public class ModelNightVisionGoggles extends GenericArmorModel { - public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(ResourceLocation.fromNamespaceAndPath(References.ID, "night_vision_goggles"), "main"); + public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(Electrodynamics.rl("night_vision_goggles"), "main"); - public ModelNightVisionGoggles(ModelPart root) { - super(root); + public ModelNightVisionGoggles(ModelPart root) { + super(root); - parentHat.visible = false; - parentHead.visible = true; - parentChest.visible = false; - parentRightArm.visible = false; - parentLeftArm.visible = false; - parentRightLeg.visible = false; - parentLeftLeg.visible = false; - } + parentHat.visible = false; + parentHead.visible = true; + parentChest.visible = false; + parentRightArm.visible = false; + parentLeftArm.visible = false; + parentRightLeg.visible = false; + parentLeftLeg.visible = false; + } - public static LayerDefinition createBodyLayer() { + public static LayerDefinition createBodyLayer() { - MeshDefinition mesh = new MeshDefinition(); - PartDefinition part = mesh.getRoot(); + MeshDefinition mesh = new MeshDefinition(); + PartDefinition part = mesh.getRoot(); - part.addOrReplaceChild(HAT, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(HAT, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(HEAD, CubeListBuilder.create().texOffs(11, 28).addBox(-3.0F, -5.0F, -8.5F, 1.0F, 2.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 28).addBox(2.0F, -5.0F, -8.5F, 1.0F, 2.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(22, 0).addBox(-2.0F, -3.0F, -8.5F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 22).addBox(-2.0F, -6.0F, -8.5F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(17, 22).addBox(-2.0F, -5.0F, -8.0F, 4.0F, 2.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(0, 0).addBox(-1.0F, -7.0F, -6.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 12).addBox(2.0F, -9.0F, -4.0F, 1.0F, 1.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(0, 0).addBox(-3.0F, -9.0F, -4.0F, 1.0F, 1.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(11, 3).addBox(-3.0F, -8.0F, -5.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 0).addBox(2.0F, -8.0F, -5.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 10).addBox(2.0F, -8.0F, 4.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 3).addBox(-3.0F, -8.0F, 4.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 2).addBox(4.0F, -7.0F, -4.0F, 1.0F, 1.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(22, 12).addBox(-4.0F, -7.0F, 4.0F, 8.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 10).addBox(-5.0F, -7.0F, -4.0F, 1.0F, 1.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(22, 6).addBox(-4.0F, -7.0F, -5.0F, 8.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 0.0F, 0.0F)); + part.addOrReplaceChild(HEAD, CubeListBuilder.create().texOffs(11, 28) + // + .addBox(-3.0F, -5.0F, -8.5F, 1.0F, 2.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 28) + // + .addBox(2.0F, -5.0F, -8.5F, 1.0F, 2.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(22, 0) + // + .addBox(-2.0F, -3.0F, -8.5F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 22) + // + .addBox(-2.0F, -6.0F, -8.5F, 4.0F, 1.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(17, 22) + // + .addBox(-2.0F, -5.0F, -8.0F, 4.0F, 2.0F, 3.0F, new CubeDeformation(0.0F)).texOffs(0, 0) + // + .addBox(-1.0F, -7.0F, -6.0F, 2.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 12) + // + .addBox(2.0F, -9.0F, -4.0F, 1.0F, 1.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(0, 0) + // + .addBox(-3.0F, -9.0F, -4.0F, 1.0F, 1.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(11, 3) + // + .addBox(-3.0F, -8.0F, -5.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 0) + // + .addBox(2.0F, -8.0F, -5.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 10) + // + .addBox(2.0F, -8.0F, 4.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 3) + // + .addBox(-3.0F, -8.0F, 4.0F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(11, 2) + // + .addBox(4.0F, -7.0F, -4.0F, 1.0F, 1.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(22, 12) + // + .addBox(-4.0F, -7.0F, 4.0F, 8.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 10) + // + .addBox(-5.0F, -7.0F, -4.0F, 1.0F, 1.0F, 8.0F, new CubeDeformation(0.0F)).texOffs(22, 6) + // + .addBox(-4.0F, -7.0F, -5.0F, 8.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)), PartPose.offset(0.0F, 0.0F, 0.0F)); - part.addOrReplaceChild(CHEST, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(RIGHT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(LEFT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(CHEST, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(RIGHT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(LEFT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - return LayerDefinition.create(mesh, 64, 64); - } + return LayerDefinition.create(mesh, 64, 64); + } - @Override - public void renderToBuffer(@NotNull PoseStack poseStack, @NotNull VertexConsumer buffer, int packedLight, int packedOverlay, int light) { - parentHead.render(poseStack, buffer, packedLight, packedOverlay); - } + @Override + public void renderToBuffer(@NotNull PoseStack poseStack, @NotNull VertexConsumer buffer, int packedLight, int packedOverlay, int light) { + parentHead.render(poseStack, buffer, packedLight, packedOverlay); + } } \ No newline at end of file diff --git a/src/main/java/electrodynamics/client/render/model/armor/types/ModelServoLeggings.java b/src/main/java/electrodynamics/client/render/model/armor/types/ModelServoLeggings.java index bd62378f0..c28095cb3 100644 --- a/src/main/java/electrodynamics/client/render/model/armor/types/ModelServoLeggings.java +++ b/src/main/java/electrodynamics/client/render/model/armor/types/ModelServoLeggings.java @@ -1,11 +1,11 @@ package electrodynamics.client.render.model.armor.types; +import electrodynamics.Electrodynamics; import org.jetbrains.annotations.NotNull; import com.mojang.blaze3d.vertex.PoseStack; import com.mojang.blaze3d.vertex.VertexConsumer; -import electrodynamics.api.References; import electrodynamics.client.render.model.armor.GenericArmorModel; import net.minecraft.client.model.geom.ModelLayerLocation; import net.minecraft.client.model.geom.ModelPart; @@ -15,47 +15,78 @@ import net.minecraft.client.model.geom.builders.LayerDefinition; import net.minecraft.client.model.geom.builders.MeshDefinition; import net.minecraft.client.model.geom.builders.PartDefinition; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.LivingEntity; public class ModelServoLeggings extends GenericArmorModel { - public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(ResourceLocation.fromNamespaceAndPath(References.ID, "servoleggings"), "main"); + public static final ModelLayerLocation LAYER_LOCATION = new ModelLayerLocation(Electrodynamics.rl("servoleggings"), "main"); - public ModelServoLeggings(ModelPart root) { - super(root); + public ModelServoLeggings(ModelPart root) { + super(root); - parentHat.visible = false; - parentHead.visible = false; - parentChest.visible = false; - parentRightArm.visible = false; - parentLeftArm.visible = false; - parentRightLeg.visible = true; - parentLeftLeg.visible = true; - } + parentHat.visible = false; + parentHead.visible = false; + parentChest.visible = false; + parentRightArm.visible = false; + parentLeftArm.visible = false; + parentRightLeg.visible = true; + parentLeftLeg.visible = true; + } - public static LayerDefinition createBodyLayer() { - MeshDefinition mesh = new MeshDefinition(); - PartDefinition part = mesh.getRoot(); + public static LayerDefinition createBodyLayer() { + MeshDefinition mesh = new MeshDefinition(); + PartDefinition part = mesh.getRoot(); - part.addOrReplaceChild(HAT, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(HEAD, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(HAT, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(HEAD, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(CHEST, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(CHEST, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(LEFT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(RIGHT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(LEFT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); + part.addOrReplaceChild(RIGHT_ARM, CubeListBuilder.create(), PartPose.offset(0, 0, 0)); - part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(0, 20).addBox(-2.1F, 0.0F, -3.0F, 4.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(19, 19).addBox(-2.1F, 0.0F, 2.0F, 4.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(7, 5).addBox(-3.1F, 0.0F, -2.0F, 1.0F, 4.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(14, 0).addBox(2.0F, 0.0F, -2.0F, 0.0F, 4.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(23, 4).addBox(-4.1F, 1.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(7, 0).addBox(-2.1F, 1.0F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(16, 25).addBox(-3.1F, 1.5F, 2.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 15).addBox(-4.1F, 1.5F, 1.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); + part.addOrReplaceChild(RIGHT_LEG, CubeListBuilder.create().texOffs(0, 20) + // + .addBox(-2.1F, 0.0F, -3.0F, 4.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(19, 19) + // + .addBox(-2.1F, 0.0F, 2.0F, 4.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(7, 5) + // + .addBox(-3.1F, 0.0F, -2.0F, 1.0F, 4.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(14, 0) + // + .addBox(2.0F, 0.0F, -2.0F, 0.0F, 4.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(23, 4) + // + .addBox(-4.1F, 1.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(7, 0) + // + .addBox(-2.1F, 1.0F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(16, 25) + // + .addBox(-3.1F, 1.5F, 2.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(20, 15) + // + .addBox(-4.1F, 1.5F, 1.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)), PartPose.offset(-1.9F, 12.0F, 0.0F)); - part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(19, 9).addBox(-1.9F, 0.0F, -3.0F, 4.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(9, 14).addBox(-1.9F, 0.0F, 2.0F, 4.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 10).addBox(-1.8F, 0.0F, -2.0F, 0.0F, 4.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 0).addBox(2.1F, 0.0F, -2.0F, 1.0F, 4.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(11, 20).addBox(3.1F, 1.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(19, 0).addBox(-1.9F, 1.0F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(21, 25).addBox(2.1F, 1.5F, 2.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(9, 25).addBox(3.1F, 1.5F, 1.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 12.0F, 0.0F)); + part.addOrReplaceChild(LEFT_LEG, CubeListBuilder.create().texOffs(19, 9) + // + .addBox(-1.9F, 0.0F, -3.0F, 4.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(9, 14) + // + .addBox(-1.9F, 0.0F, 2.0F, 4.0F, 4.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(0, 10) + // + .addBox(-1.8F, 0.0F, -2.0F, 0.0F, 4.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(0, 0) + // + .addBox(2.1F, 0.0F, -2.0F, 1.0F, 4.0F, 4.0F, new CubeDeformation(0.0F)).texOffs(11, 20) + // + .addBox(3.1F, 1.0F, -1.0F, 1.0F, 2.0F, 2.0F, new CubeDeformation(0.0F)).texOffs(19, 0) + // + .addBox(-1.9F, 1.0F, 3.0F, 4.0F, 2.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(21, 25) + // + .addBox(2.1F, 1.5F, 2.5F, 1.0F, 1.0F, 1.0F, new CubeDeformation(0.0F)).texOffs(9, 25) + // + .addBox(3.1F, 1.5F, 1.0F, 1.0F, 1.0F, 2.0F, new CubeDeformation(0.0F)), PartPose.offset(1.9F, 12.0F, 0.0F)); - return LayerDefinition.create(mesh, 32, 32); - } + return LayerDefinition.create(mesh, 32, 32); + } - @Override - public void renderToBuffer(@NotNull PoseStack poseStack, @NotNull VertexConsumer buffer, int packedLight, int packedOverlay, int light) { - rightLeg.render(poseStack, buffer, packedLight, packedOverlay); - leftLeg.render(poseStack, buffer, packedLight, packedOverlay); - } + @Override + public void renderToBuffer(@NotNull PoseStack poseStack, @NotNull VertexConsumer buffer, int packedLight, int packedOverlay, int light) { + rightLeg.render(poseStack, buffer, packedLight, packedOverlay); + leftLeg.render(poseStack, buffer, packedLight, packedOverlay); + } } \ No newline at end of file diff --git a/src/main/java/electrodynamics/client/render/shader/ElectrodynamicsShaders.java b/src/main/java/electrodynamics/client/render/shader/ElectrodynamicsShaders.java index 4cb7f890c..02d79d815 100644 --- a/src/main/java/electrodynamics/client/render/shader/ElectrodynamicsShaders.java +++ b/src/main/java/electrodynamics/client/render/shader/ElectrodynamicsShaders.java @@ -2,6 +2,7 @@ import java.io.IOException; +import electrodynamics.Electrodynamics; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -10,7 +11,6 @@ import com.mojang.blaze3d.vertex.VertexFormat; import com.mojang.blaze3d.vertex.VertexFormat.Mode; -import electrodynamics.api.References; import net.minecraft.client.renderer.RenderStateShard; import net.minecraft.client.renderer.RenderType; import net.minecraft.client.renderer.ShaderInstance; @@ -30,7 +30,7 @@ public class ElectrodynamicsShaders extends RenderType { private static Uniform uniformAlphaCutoff; /* SHADER RESOURCE LOCS */ - private static final ResourceLocation GREATER_ALPHA_LOC = ResourceLocation.fromNamespaceAndPath(References.ID, "plasmaorb"); + private static final ResourceLocation GREATER_ALPHA_LOC = Electrodynamics.rl("plasmaorb"); /* SHADER STATE SHARDS */ diff --git a/src/main/java/electrodynamics/client/texture/atlas/AtlasHolderElectrodynamicsCustom.java b/src/main/java/electrodynamics/client/texture/atlas/AtlasHolderElectrodynamicsCustom.java index 4193344c4..1873c3d72 100644 --- a/src/main/java/electrodynamics/client/texture/atlas/AtlasHolderElectrodynamicsCustom.java +++ b/src/main/java/electrodynamics/client/texture/atlas/AtlasHolderElectrodynamicsCustom.java @@ -1,5 +1,6 @@ package electrodynamics.client.texture.atlas; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import net.minecraft.client.renderer.texture.TextureAtlasSprite; import net.minecraft.client.renderer.texture.TextureManager; @@ -17,7 +18,7 @@ public class AtlasHolderElectrodynamicsCustom extends TextureAtlasHolder { // public static final ResourceLocation TEXTURE_GAS = create("gastexture"); public AtlasHolderElectrodynamicsCustom(TextureManager textureManager) { - super(textureManager, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/" + References.ID + "/" + ElectrodynamicsTextureAtlases.ELECTRODYNAMICS_CUSTOM_NAME + ".png"), ElectrodynamicsTextureAtlases.ELECTRODYNAMICS_CUSTOM); + super(textureManager, Electrodynamics.rl("textures/" + References.ID + "/" + ElectrodynamicsTextureAtlases.ELECTRODYNAMICS_CUSTOM_NAME + ".png"), ElectrodynamicsTextureAtlases.ELECTRODYNAMICS_CUSTOM); } @Override @@ -31,7 +32,7 @@ public static TextureAtlasSprite get(ResourceLocation loc) { @SuppressWarnings("unused") private static ResourceLocation create(String name) { - return ResourceLocation.fromNamespaceAndPath(References.ID, "custom/" + name); + return Electrodynamics.rl("custom/" + name); } } diff --git a/src/main/java/electrodynamics/client/texture/atlas/ElectrodynamicsTextureAtlases.java b/src/main/java/electrodynamics/client/texture/atlas/ElectrodynamicsTextureAtlases.java index e71cb8d74..c7c6a78a3 100644 --- a/src/main/java/electrodynamics/client/texture/atlas/ElectrodynamicsTextureAtlases.java +++ b/src/main/java/electrodynamics/client/texture/atlas/ElectrodynamicsTextureAtlases.java @@ -1,12 +1,12 @@ package electrodynamics.client.texture.atlas; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import net.minecraft.resources.ResourceLocation; public class ElectrodynamicsTextureAtlases { public static final String ELECTRODYNAMICS_CUSTOM_NAME = "electrodynamics_custom"; - public static final ResourceLocation ELECTRODYNAMICS_CUSTOM = ResourceLocation.fromNamespaceAndPath(References.ID, ELECTRODYNAMICS_CUSTOM_NAME); + public static final ResourceLocation ELECTRODYNAMICS_CUSTOM = Electrodynamics.rl(ELECTRODYNAMICS_CUSTOM_NAME); } diff --git a/src/main/java/electrodynamics/common/entity/ElectrodynamicsAttributeModifiers.java b/src/main/java/electrodynamics/common/entity/ElectrodynamicsAttributeModifiers.java index a2647b3cc..30e84a6a6 100644 --- a/src/main/java/electrodynamics/common/entity/ElectrodynamicsAttributeModifiers.java +++ b/src/main/java/electrodynamics/common/entity/ElectrodynamicsAttributeModifiers.java @@ -1,16 +1,15 @@ package electrodynamics.common.entity; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.item.gear.armor.types.ItemServoLeggings; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.entity.ai.attributes.AttributeModifier; import net.minecraft.world.entity.ai.attributes.AttributeModifier.Operation; public class ElectrodynamicsAttributeModifiers { - public static final AttributeModifier JETPACK_SPEED = new AttributeModifier(ResourceLocation.fromNamespaceAndPath(References.ID, "jetpack_speed"), 1, Operation.ADD_MULTIPLIED_TOTAL); + public static final AttributeModifier JETPACK_SPEED = new AttributeModifier(Electrodynamics.rl("jetpack_speed"), 1, Operation.ADD_MULTIPLIED_TOTAL); - public static final AttributeModifier SERVO_LEGGINGS_STEP = new AttributeModifier(ResourceLocation.fromNamespaceAndPath(References.ID, "servo_leggings_step"), 1.1F - ItemServoLeggings.DEFAULT_VANILLA_STEPUP, Operation.ADD_VALUE); + public static final AttributeModifier SERVO_LEGGINGS_STEP = new AttributeModifier(Electrodynamics.rl("servo_leggings_step"), 1.1F - ItemServoLeggings.DEFAULT_VANILLA_STEPUP, Operation.ADD_VALUE); public static void init() { } diff --git a/src/main/java/electrodynamics/common/eventbus/RegisterPropertiesEvent.java b/src/main/java/electrodynamics/common/eventbus/RegisterPropertiesEvent.java deleted file mode 100644 index ebccddf88..000000000 --- a/src/main/java/electrodynamics/common/eventbus/RegisterPropertiesEvent.java +++ /dev/null @@ -1,25 +0,0 @@ -package electrodynamics.common.eventbus; - -import java.util.HashMap; - -import electrodynamics.prefab.properties.IPropertyType; -import net.minecraft.resources.ResourceLocation; -import net.neoforged.bus.api.Event; -import net.neoforged.fml.event.IModBusEvent; - -public class RegisterPropertiesEvent extends Event implements IModBusEvent { - - private final HashMap propertiesMap = new HashMap<>(); - - public void registerProperty(IPropertyType type) { - if (propertiesMap.containsKey(type.getId())) { - throw new UnsupportedOperationException("A property with the ID " + type.getId().toString() + " already exists"); - } - propertiesMap.put(type.getId(), type); - } - - public HashMap getRegisteredProperties() { - return propertiesMap; - } - -} diff --git a/src/main/java/electrodynamics/common/item/gear/armor/types/ItemCombatArmor.java b/src/main/java/electrodynamics/common/item/gear/armor/types/ItemCombatArmor.java index 5e475e5f4..00a25bb94 100644 --- a/src/main/java/electrodynamics/common/item/gear/armor/types/ItemCombatArmor.java +++ b/src/main/java/electrodynamics/common/item/gear/armor/types/ItemCombatArmor.java @@ -5,7 +5,7 @@ import java.util.function.Consumer; import java.util.function.Predicate; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.capability.types.fluid.RestrictedFluidHandlerItemStack; import electrodynamics.api.capability.types.gas.IGasHandlerItem; import electrodynamics.api.electricity.formatting.ChatFormatter; @@ -56,7 +56,7 @@ public class ItemCombatArmor extends ItemElectrodynamicsArmor implements IItemEl map.put(Type.BOOTS, 6); }); - public static final ResourceLocation ARMOR_TEXTURE_LOCATION = ResourceLocation.fromNamespaceAndPath(References.ID, "textures/model/armor/combatarmor.png"); + public static final ResourceLocation ARMOR_TEXTURE_LOCATION = Electrodynamics.rl("textures/model/armor/combatarmor.png"); private final ElectricItemProperties properties; diff --git a/src/main/java/electrodynamics/common/item/gear/armor/types/ItemCompositeArmor.java b/src/main/java/electrodynamics/common/item/gear/armor/types/ItemCompositeArmor.java index 4771ca526..272cb8a42 100644 --- a/src/main/java/electrodynamics/common/item/gear/armor/types/ItemCompositeArmor.java +++ b/src/main/java/electrodynamics/common/item/gear/armor/types/ItemCompositeArmor.java @@ -4,7 +4,7 @@ import java.util.List; import java.util.function.Consumer; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.item.gear.armor.ItemElectrodynamicsArmor; import electrodynamics.prefab.utilities.ElectroTextUtils; import electrodynamics.registers.*; @@ -31,7 +31,7 @@ public class ItemCompositeArmor extends ItemElectrodynamicsArmor { map.put(Type.BOOTS, 6); }); - public static final ResourceLocation ARMOR_TEXTURE_LOCATION = ResourceLocation.fromNamespaceAndPath(References.ID, "textures/model/armor/compositearmor.png"); + public static final ResourceLocation ARMOR_TEXTURE_LOCATION = Electrodynamics.rl("textures/model/armor/compositearmor.png"); public ItemCompositeArmor(Type slot) { super(ElectrodynamicsArmorMaterials.COMPOSITE_ARMOR, slot, new Item.Properties().stacksTo(1).fireResistant().setNoRepair().durability(2000), ElectrodynamicsCreativeTabs.MAIN); diff --git a/src/main/java/electrodynamics/common/item/gear/armor/types/ItemHydraulicBoots.java b/src/main/java/electrodynamics/common/item/gear/armor/types/ItemHydraulicBoots.java index 98e0b5695..c3fd26316 100644 --- a/src/main/java/electrodynamics/common/item/gear/armor/types/ItemHydraulicBoots.java +++ b/src/main/java/electrodynamics/common/item/gear/armor/types/ItemHydraulicBoots.java @@ -5,7 +5,7 @@ import java.util.function.Consumer; import java.util.function.Predicate; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.capability.types.fluid.RestrictedFluidHandlerItemStack; import electrodynamics.api.electricity.formatting.ChatFormatter; import electrodynamics.common.item.gear.armor.ItemElectrodynamicsArmor; @@ -37,7 +37,7 @@ public class ItemHydraulicBoots extends ItemElectrodynamicsArmor { }); public static final int MAX_CAPACITY = 2000; - private static final ResourceLocation TEXTURE_LOCATION = ResourceLocation.fromNamespaceAndPath(References.ID, "textures/model/armor/hydraulicboots.png"); + private static final ResourceLocation TEXTURE_LOCATION = Electrodynamics.rl("textures/model/armor/hydraulicboots.png"); public ItemHydraulicBoots() { super(ElectrodynamicsArmorMaterials.HYDRAULIC_BOOTS, Type.BOOTS, new Item.Properties().stacksTo(1), ElectrodynamicsCreativeTabs.MAIN); diff --git a/src/main/java/electrodynamics/common/item/gear/armor/types/ItemJetpack.java b/src/main/java/electrodynamics/common/item/gear/armor/types/ItemJetpack.java index b3638d155..b186db5ec 100644 --- a/src/main/java/electrodynamics/common/item/gear/armor/types/ItemJetpack.java +++ b/src/main/java/electrodynamics/common/item/gear/armor/types/ItemJetpack.java @@ -5,7 +5,7 @@ import java.util.function.Consumer; import java.util.function.Predicate; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.capability.types.gas.IGasHandlerItem; import electrodynamics.api.electricity.formatting.ChatFormatter; import electrodynamics.api.electricity.formatting.DisplayUnit; @@ -55,7 +55,7 @@ public class ItemJetpack extends ItemElectrodynamicsArmor { public static final int MAX_PRESSURE = 4; public static final int MAX_TEMPERATURE = Gas.ROOM_TEMPERATURE; - private static final ResourceLocation ARMOR_TEXTURE_LOCATION = ResourceLocation.fromNamespaceAndPath(References.ID, "textures/model/armor/jetpack.png"); + private static final ResourceLocation ARMOR_TEXTURE_LOCATION = Electrodynamics.rl("textures/model/armor/jetpack.png"); public static final float OFFSET = 0.1F; diff --git a/src/main/java/electrodynamics/common/item/gear/armor/types/ItemNightVisionGoggles.java b/src/main/java/electrodynamics/common/item/gear/armor/types/ItemNightVisionGoggles.java index d61bdc702..33c41bf47 100644 --- a/src/main/java/electrodynamics/common/item/gear/armor/types/ItemNightVisionGoggles.java +++ b/src/main/java/electrodynamics/common/item/gear/armor/types/ItemNightVisionGoggles.java @@ -4,7 +4,7 @@ import java.util.List; import java.util.function.Consumer; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.electricity.formatting.ChatFormatter; import electrodynamics.api.electricity.formatting.DisplayUnit; import electrodynamics.api.item.IItemElectric; @@ -46,8 +46,8 @@ public class ItemNightVisionGoggles extends ItemElectrodynamicsArmor implements public static final int JOULES_PER_TICK = 5; public static final int DURATION_SECONDS = 12; - private static final ResourceLocation ARMOR_TEXTURE_OFF = ResourceLocation.parse(References.ID + ":textures/model/armor/nightvisiongogglesoff.png"); - private static final ResourceLocation ARMOR_TEXTURE_ON = ResourceLocation.parse(References.ID + ":textures/model/armor/nightvisiongoggleson.png"); + private static final ResourceLocation ARMOR_TEXTURE_OFF = Electrodynamics.rl("textures/model/armor/nightvisiongogglesoff.png"); + private static final ResourceLocation ARMOR_TEXTURE_ON = Electrodynamics.rl("textures/model/armor/nightvisiongoggleson.png"); public ItemNightVisionGoggles(ElectricItemProperties properties, Holder creativeTab) { super(ElectrodynamicsArmorMaterials.NVGS, Type.HELMET, properties, creativeTab); diff --git a/src/main/java/electrodynamics/common/item/gear/armor/types/ItemRubberArmor.java b/src/main/java/electrodynamics/common/item/gear/armor/types/ItemRubberArmor.java index fc929799b..fc97ad919 100644 --- a/src/main/java/electrodynamics/common/item/gear/armor/types/ItemRubberArmor.java +++ b/src/main/java/electrodynamics/common/item/gear/armor/types/ItemRubberArmor.java @@ -2,7 +2,7 @@ import java.util.EnumMap; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.item.gear.armor.ItemElectrodynamicsArmor; import electrodynamics.registers.ElectrodynamicsArmorMaterials; import net.minecraft.Util; @@ -25,7 +25,7 @@ public class ItemRubberArmor extends ItemElectrodynamicsArmor { map.put(Type.BOOTS, 2); }); - public static final ResourceLocation ARMOR_TEXTURE_LOCATION = ResourceLocation.fromNamespaceAndPath(References.ID, "textures/model/armor/rubberarmor.png"); + public static final ResourceLocation ARMOR_TEXTURE_LOCATION = Electrodynamics.rl("textures/model/armor/rubberarmor.png"); public ItemRubberArmor(ArmorItem.Type type, Properties properties, Holder creativeTab) { super(ElectrodynamicsArmorMaterials.RUBBER_BOOTS, type, properties, creativeTab); diff --git a/src/main/java/electrodynamics/common/item/gear/armor/types/ItemServoLeggings.java b/src/main/java/electrodynamics/common/item/gear/armor/types/ItemServoLeggings.java index f33b778ad..ae89a18eb 100644 --- a/src/main/java/electrodynamics/common/item/gear/armor/types/ItemServoLeggings.java +++ b/src/main/java/electrodynamics/common/item/gear/armor/types/ItemServoLeggings.java @@ -4,7 +4,7 @@ import java.util.List; import java.util.function.Consumer; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.electricity.formatting.ChatFormatter; import electrodynamics.api.electricity.formatting.DisplayUnit; import electrodynamics.api.item.IItemElectric; @@ -47,7 +47,7 @@ public class ItemServoLeggings extends ItemElectrodynamicsArmor implements IItem public static final float DEFAULT_VANILLA_STEPUP = 0.6F; - private static final ResourceLocation ARMOR_TEXTURE = ResourceLocation.fromNamespaceAndPath(References.ID, "textures/model/armor/servoleggings.png"); + private static final ResourceLocation ARMOR_TEXTURE = Electrodynamics.rl("textures/model/armor/servoleggings.png"); final ElectricItemProperties properties; diff --git a/src/main/java/electrodynamics/common/item/subtype/SubtypeDrillHead.java b/src/main/java/electrodynamics/common/item/subtype/SubtypeDrillHead.java index 87c7980f2..a0724f48c 100644 --- a/src/main/java/electrodynamics/common/item/subtype/SubtypeDrillHead.java +++ b/src/main/java/electrodynamics/common/item/subtype/SubtypeDrillHead.java @@ -2,6 +2,7 @@ import java.util.Locale; +import electrodynamics.Electrodynamics; import electrodynamics.api.ISubtype; import electrodynamics.prefab.utilities.math.Color; import net.minecraft.resources.ResourceLocation; @@ -22,7 +23,7 @@ public enum SubtypeDrillHead implements ISubtype { SubtypeDrillHead(int durability, boolean unbreakable, Color color, double speedBoost) { this.durability = durability; isUnbreakable = unbreakable; - blockTextureLoc = ResourceLocation.parse("electrodynamics:block/resource/resourceblock" + toString().toLowerCase(Locale.ROOT)); + blockTextureLoc = Electrodynamics.rl("block/resource/resourceblock" + toString().toLowerCase(Locale.ROOT)); this.color = color; this.speedBoost = speedBoost; } diff --git a/src/main/java/electrodynamics/common/packet/NetworkHandler.java b/src/main/java/electrodynamics/common/packet/NetworkHandler.java index 18700bec3..863997603 100644 --- a/src/main/java/electrodynamics/common/packet/NetworkHandler.java +++ b/src/main/java/electrodynamics/common/packet/NetworkHandler.java @@ -2,6 +2,7 @@ import java.util.HashMap; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import electrodynamics.common.packet.types.client.*; import electrodynamics.common.packet.types.server.*; @@ -55,7 +56,7 @@ public static String getPlayerInformation(String username) { } public static ResourceLocation id(String name) { - return ResourceLocation.fromNamespaceAndPath(References.ID, name); + return Electrodynamics.rl(name); } diff --git a/src/main/java/electrodynamics/common/recipe/categories/chemicalreactor/ChemicalReactorRecipe.java b/src/main/java/electrodynamics/common/recipe/categories/chemicalreactor/ChemicalReactorRecipe.java index 4c0f6191f..3c764ce46 100644 --- a/src/main/java/electrodynamics/common/recipe/categories/chemicalreactor/ChemicalReactorRecipe.java +++ b/src/main/java/electrodynamics/common/recipe/categories/chemicalreactor/ChemicalReactorRecipe.java @@ -1,7 +1,7 @@ package electrodynamics.common.recipe.categories.chemicalreactor; import com.mojang.datafixers.util.Pair; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.gas.GasStack; import electrodynamics.common.recipe.ElectrodynamicsRecipeInit; import electrodynamics.common.recipe.recipeutils.*; @@ -21,7 +21,7 @@ public class ChemicalReactorRecipe extends AbstractMaterialRecipe { public static final String RECIPE_GROUP = "chemical_reactor_recipe"; - public static final ResourceLocation RECIPE_ID = ResourceLocation.fromNamespaceAndPath(References.ID, RECIPE_GROUP); + public static final ResourceLocation RECIPE_ID = Electrodynamics.rl(RECIPE_GROUP); private List itemIngredients; private List fluidIngredients; diff --git a/src/main/java/electrodynamics/common/recipe/categories/fluid2fluid/specificmachines/ElectrolosisChamberRecipe.java b/src/main/java/electrodynamics/common/recipe/categories/fluid2fluid/specificmachines/ElectrolosisChamberRecipe.java index bfb5d1dbc..c2e42929b 100644 --- a/src/main/java/electrodynamics/common/recipe/categories/fluid2fluid/specificmachines/ElectrolosisChamberRecipe.java +++ b/src/main/java/electrodynamics/common/recipe/categories/fluid2fluid/specificmachines/ElectrolosisChamberRecipe.java @@ -1,6 +1,6 @@ package electrodynamics.common.recipe.categories.fluid2fluid.specificmachines; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.recipe.ElectrodynamicsRecipeInit; import electrodynamics.common.recipe.categories.fluid2fluid.Fluid2FluidRecipe; import electrodynamics.common.recipe.recipeutils.FluidIngredient; @@ -17,7 +17,7 @@ public class ElectrolosisChamberRecipe extends Fluid2FluidRecipe { public static final String RECIPE_GROUP = "electrolosis_chamber_recipe"; - public static final ResourceLocation RECIPE_ID = ResourceLocation.fromNamespaceAndPath(References.ID, RECIPE_GROUP); + public static final ResourceLocation RECIPE_ID = Electrodynamics.rl(RECIPE_GROUP); public ElectrolosisChamberRecipe(String recipeGroup, List inputFluids, FluidStack outputFluid, double experience, int ticks, double usagePerTick, List itemBiproducts, List fluidBiproducts, List gasBiproducts) { super(recipeGroup, inputFluids, outputFluid, experience, ticks, usagePerTick, itemBiproducts, fluidBiproducts, gasBiproducts); } diff --git a/src/main/java/electrodynamics/common/recipe/categories/fluid2gas/specificmachines/ElectrolyticSeparatorRecipe.java b/src/main/java/electrodynamics/common/recipe/categories/fluid2gas/specificmachines/ElectrolyticSeparatorRecipe.java index 821c687c5..ed0c3fcb2 100644 --- a/src/main/java/electrodynamics/common/recipe/categories/fluid2gas/specificmachines/ElectrolyticSeparatorRecipe.java +++ b/src/main/java/electrodynamics/common/recipe/categories/fluid2gas/specificmachines/ElectrolyticSeparatorRecipe.java @@ -2,7 +2,7 @@ import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.gas.GasStack; import electrodynamics.common.recipe.ElectrodynamicsRecipeInit; import electrodynamics.common.recipe.categories.fluid2gas.Fluid2GasRecipe; @@ -17,7 +17,7 @@ public class ElectrolyticSeparatorRecipe extends Fluid2GasRecipe { public static final String RECIPE_GROUP = "electrolytic_separator_recipe"; - public static final ResourceLocation RECIPE_ID = ResourceLocation.fromNamespaceAndPath(References.ID, RECIPE_GROUP); + public static final ResourceLocation RECIPE_ID = Electrodynamics.rl(RECIPE_GROUP); public ElectrolyticSeparatorRecipe(String recipeGroup, List inputFluidIngredients, GasStack outputGasStack, double experience, int ticks, double usagePerTick, List itemBiproducts, List fluidBiproducts, List gasBiproducts) { super(recipeGroup, inputFluidIngredients, outputGasStack, experience, ticks, usagePerTick, itemBiproducts, fluidBiproducts, gasBiproducts); diff --git a/src/main/java/electrodynamics/common/recipe/categories/fluid2item/specificmachines/ChemicalCrystalizerRecipe.java b/src/main/java/electrodynamics/common/recipe/categories/fluid2item/specificmachines/ChemicalCrystalizerRecipe.java index b78159e94..4cd9b3f35 100644 --- a/src/main/java/electrodynamics/common/recipe/categories/fluid2item/specificmachines/ChemicalCrystalizerRecipe.java +++ b/src/main/java/electrodynamics/common/recipe/categories/fluid2item/specificmachines/ChemicalCrystalizerRecipe.java @@ -2,7 +2,7 @@ import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.recipe.ElectrodynamicsRecipeInit; import electrodynamics.common.recipe.categories.fluid2item.Fluid2ItemRecipe; import electrodynamics.common.recipe.recipeutils.FluidIngredient; @@ -17,7 +17,7 @@ public class ChemicalCrystalizerRecipe extends Fluid2ItemRecipe { public static final String RECIPE_GROUP = "chemical_crystallizer_recipe"; - public static final ResourceLocation RECIPE_ID = ResourceLocation.fromNamespaceAndPath(References.ID, RECIPE_GROUP); + public static final ResourceLocation RECIPE_ID = Electrodynamics.rl(RECIPE_GROUP); public ChemicalCrystalizerRecipe(String group, List fluidInputs, ItemStack itemOutput, double experience, int ticks, double usagePerTick, List itemBiproducts, List fluidBiproducts, List gasBiproducts) { super(group, fluidInputs, itemOutput, experience, ticks, usagePerTick, itemBiproducts, fluidBiproducts, gasBiproducts); diff --git a/src/main/java/electrodynamics/common/recipe/categories/fluiditem2fluid/specificmachines/ChemicalMixerRecipe.java b/src/main/java/electrodynamics/common/recipe/categories/fluiditem2fluid/specificmachines/ChemicalMixerRecipe.java index 88bcb01e8..42904b006 100644 --- a/src/main/java/electrodynamics/common/recipe/categories/fluiditem2fluid/specificmachines/ChemicalMixerRecipe.java +++ b/src/main/java/electrodynamics/common/recipe/categories/fluiditem2fluid/specificmachines/ChemicalMixerRecipe.java @@ -2,7 +2,7 @@ import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.recipe.ElectrodynamicsRecipeInit; import electrodynamics.common.recipe.categories.fluiditem2fluid.FluidItem2FluidRecipe; import electrodynamics.common.recipe.recipeutils.CountableIngredient; @@ -18,7 +18,7 @@ public class ChemicalMixerRecipe extends FluidItem2FluidRecipe { public static final String RECIPE_GROUP = "chemical_mixer_recipe"; - public static final ResourceLocation RECIPE_ID = ResourceLocation.fromNamespaceAndPath(References.ID, RECIPE_GROUP); + public static final ResourceLocation RECIPE_ID = Electrodynamics.rl(RECIPE_GROUP); public ChemicalMixerRecipe(String group, List inputItems, List inputFluids, FluidStack outputFluid, double experience, int ticks, double usagePerTick, List itemBiproducts, List fluidBiproducts, List gasBiproducts) { super(group, inputItems, inputFluids, outputFluid, experience, ticks, usagePerTick, itemBiproducts, fluidBiproducts, gasBiproducts); diff --git a/src/main/java/electrodynamics/common/recipe/categories/fluiditem2fluid/specificmachines/FermentationPlantRecipe.java b/src/main/java/electrodynamics/common/recipe/categories/fluiditem2fluid/specificmachines/FermentationPlantRecipe.java index baac81349..e5cac6269 100644 --- a/src/main/java/electrodynamics/common/recipe/categories/fluiditem2fluid/specificmachines/FermentationPlantRecipe.java +++ b/src/main/java/electrodynamics/common/recipe/categories/fluiditem2fluid/specificmachines/FermentationPlantRecipe.java @@ -2,7 +2,7 @@ import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.recipe.ElectrodynamicsRecipeInit; import electrodynamics.common.recipe.categories.fluiditem2fluid.FluidItem2FluidRecipe; import electrodynamics.common.recipe.recipeutils.CountableIngredient; @@ -18,7 +18,7 @@ public class FermentationPlantRecipe extends FluidItem2FluidRecipe { public static final String RECIPE_GROUP = "fermentation_plant_recipe"; - public static final ResourceLocation RECIPE_ID = ResourceLocation.fromNamespaceAndPath(References.ID, RECIPE_GROUP); + public static final ResourceLocation RECIPE_ID = Electrodynamics.rl(RECIPE_GROUP); public FermentationPlantRecipe(String group, List inputItems, List inputFluids, FluidStack outputFluid, double experience, int ticks, double usagePerTick, List itemBiproducts, List fluidBiproducts, List gasBiproducts) { super(group, inputItems, inputFluids, outputFluid, experience, ticks, usagePerTick, itemBiproducts, fluidBiproducts, gasBiproducts); diff --git a/src/main/java/electrodynamics/common/recipe/categories/fluiditem2fluid/specificmachines/MineralWasherRecipe.java b/src/main/java/electrodynamics/common/recipe/categories/fluiditem2fluid/specificmachines/MineralWasherRecipe.java index 79fcda63f..0e4b27ecb 100644 --- a/src/main/java/electrodynamics/common/recipe/categories/fluiditem2fluid/specificmachines/MineralWasherRecipe.java +++ b/src/main/java/electrodynamics/common/recipe/categories/fluiditem2fluid/specificmachines/MineralWasherRecipe.java @@ -2,7 +2,7 @@ import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.recipe.ElectrodynamicsRecipeInit; import electrodynamics.common.recipe.categories.fluiditem2fluid.FluidItem2FluidRecipe; import electrodynamics.common.recipe.recipeutils.CountableIngredient; @@ -18,7 +18,7 @@ public class MineralWasherRecipe extends FluidItem2FluidRecipe { public static final String RECIPE_GROUP = "mineral_washer_recipe"; - public static final ResourceLocation RECIPE_ID = ResourceLocation.fromNamespaceAndPath(References.ID, RECIPE_GROUP); + public static final ResourceLocation RECIPE_ID = Electrodynamics.rl(RECIPE_GROUP); public MineralWasherRecipe(String group, List inputItems, List inputFluids, FluidStack outputFluid, double experience, int ticks, double usagePerTick, List itemBiproducts, List fluidBiproducts, List gasBiproducts) { super(group, inputItems, inputFluids, outputFluid, experience, ticks, usagePerTick, itemBiproducts, fluidBiproducts, gasBiproducts); diff --git a/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/EnergizedAlloyerRecipe.java b/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/EnergizedAlloyerRecipe.java index 7393ebae8..b5af57189 100644 --- a/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/EnergizedAlloyerRecipe.java +++ b/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/EnergizedAlloyerRecipe.java @@ -2,7 +2,7 @@ import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.recipe.ElectrodynamicsRecipeInit; import electrodynamics.common.recipe.categories.item2item.Item2ItemRecipe; import electrodynamics.common.recipe.recipeutils.CountableIngredient; @@ -17,7 +17,7 @@ public class EnergizedAlloyerRecipe extends Item2ItemRecipe { public static final String RECIPE_GROUP = "energized_alloyer_recipe"; - public static final ResourceLocation RECIPE_ID = ResourceLocation.fromNamespaceAndPath(References.ID, RECIPE_GROUP); + public static final ResourceLocation RECIPE_ID = Electrodynamics.rl(RECIPE_GROUP); public EnergizedAlloyerRecipe(String group, List inputs, ItemStack output, double experience, int ticks, double usagePerTick, List itemBiproducts, List fluidBiproducts, List gasBiproducts) { super(group, inputs, output, experience, ticks, usagePerTick, itemBiproducts, fluidBiproducts, gasBiproducts); diff --git a/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/LatheRecipe.java b/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/LatheRecipe.java index f403a4ba7..b23a09ffd 100644 --- a/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/LatheRecipe.java +++ b/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/LatheRecipe.java @@ -2,6 +2,7 @@ import java.util.List; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import electrodynamics.common.recipe.ElectrodynamicsRecipeInit; import electrodynamics.common.recipe.categories.item2item.Item2ItemRecipe; @@ -17,7 +18,6 @@ public class LatheRecipe extends Item2ItemRecipe { public static final String RECIPE_GROUP = "lathe_recipe"; - public static final ResourceLocation RECIPE_ID = ResourceLocation.fromNamespaceAndPath(References.ID, RECIPE_GROUP); public LatheRecipe(String group, List inputs, ItemStack output, double experience, int ticks, double usagePerTick, List itemBiproducts, List fluidBiproducts, List gasBiproducts) { super(group, inputs, output, experience, ticks, usagePerTick, itemBiproducts, fluidBiproducts, gasBiproducts); diff --git a/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/MineralCrusherRecipe.java b/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/MineralCrusherRecipe.java index c8f452af3..435c1bd77 100644 --- a/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/MineralCrusherRecipe.java +++ b/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/MineralCrusherRecipe.java @@ -2,7 +2,7 @@ import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.recipe.ElectrodynamicsRecipeInit; import electrodynamics.common.recipe.categories.item2item.Item2ItemRecipe; import electrodynamics.common.recipe.recipeutils.CountableIngredient; @@ -17,7 +17,7 @@ public class MineralCrusherRecipe extends Item2ItemRecipe { public static final String RECIPE_GROUP = "mineral_crusher_recipe"; - public static final ResourceLocation RECIPE_ID = ResourceLocation.fromNamespaceAndPath(References.ID, RECIPE_GROUP); + public static final ResourceLocation RECIPE_ID = Electrodynamics.rl(RECIPE_GROUP); public MineralCrusherRecipe(String group, List inputs, ItemStack output, double experience, int ticks, double usagePerTick, List itemBiproducts, List fluidBiproducts, List gasBiproducts) { super(group, inputs, output, experience, ticks, usagePerTick, itemBiproducts, fluidBiproducts, gasBiproducts); diff --git a/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/MineralGrinderRecipe.java b/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/MineralGrinderRecipe.java index 8a6805186..01fca2d02 100644 --- a/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/MineralGrinderRecipe.java +++ b/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/MineralGrinderRecipe.java @@ -2,7 +2,7 @@ import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.recipe.ElectrodynamicsRecipeInit; import electrodynamics.common.recipe.categories.item2item.Item2ItemRecipe; import electrodynamics.common.recipe.recipeutils.CountableIngredient; @@ -17,7 +17,7 @@ public class MineralGrinderRecipe extends Item2ItemRecipe { public static final String RECIPE_GROUP = "mineral_grinder_recipe"; - public static final ResourceLocation RECIPE_ID = ResourceLocation.fromNamespaceAndPath(References.ID, RECIPE_GROUP); + public static final ResourceLocation RECIPE_ID = Electrodynamics.rl(RECIPE_GROUP); public MineralGrinderRecipe(String group, List inputs, ItemStack output, double experience, int ticks, double usagePerTick, List itemBiproducts, List fluidBiproducts, List gasBiproducts) { super(group, inputs, output, experience, ticks, usagePerTick, itemBiproducts, fluidBiproducts, gasBiproducts); diff --git a/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/OxidationFurnaceRecipe.java b/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/OxidationFurnaceRecipe.java index 53d0890ba..58b9293f7 100644 --- a/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/OxidationFurnaceRecipe.java +++ b/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/OxidationFurnaceRecipe.java @@ -2,7 +2,7 @@ import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.recipe.ElectrodynamicsRecipeInit; import electrodynamics.common.recipe.categories.item2item.Item2ItemRecipe; import electrodynamics.common.recipe.recipeutils.CountableIngredient; @@ -17,7 +17,7 @@ public class OxidationFurnaceRecipe extends Item2ItemRecipe { public static final String RECIPE_GROUP = "oxidation_furnace_recipe"; - public static final ResourceLocation RECIPE_ID = ResourceLocation.fromNamespaceAndPath(References.ID, RECIPE_GROUP); + public static final ResourceLocation RECIPE_ID = Electrodynamics.rl(RECIPE_GROUP); public OxidationFurnaceRecipe(String group, List inputs, ItemStack output, double experience, int ticks, double usagePerTick, List itemBiproducts, List fluidBiproducts, List gasBiproducts) { super(group, inputs, output, experience, ticks, usagePerTick, itemBiproducts, fluidBiproducts, gasBiproducts); diff --git a/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/ReinforcedAlloyerRecipe.java b/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/ReinforcedAlloyerRecipe.java index bbd44b7a4..715f69726 100644 --- a/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/ReinforcedAlloyerRecipe.java +++ b/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/ReinforcedAlloyerRecipe.java @@ -2,7 +2,7 @@ import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.recipe.ElectrodynamicsRecipeInit; import electrodynamics.common.recipe.categories.item2item.Item2ItemRecipe; import electrodynamics.common.recipe.recipeutils.CountableIngredient; @@ -17,7 +17,7 @@ public class ReinforcedAlloyerRecipe extends Item2ItemRecipe { public static final String RECIPE_GROUP = "reinforced_alloyer_recipe"; - public static final ResourceLocation RECIPE_ID = ResourceLocation.fromNamespaceAndPath(References.ID, RECIPE_GROUP); + public static final ResourceLocation RECIPE_ID = Electrodynamics.rl(RECIPE_GROUP); public ReinforcedAlloyerRecipe(String group, List inputs, ItemStack output, double experience, int ticks, double usagePerTick, List itemBiproducts, List fluidBiproducts, List gasBiproducts) { super(group, inputs, output, experience, ticks, usagePerTick, itemBiproducts, fluidBiproducts, gasBiproducts); diff --git a/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/WireMillRecipe.java b/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/WireMillRecipe.java index 8720e82cf..192440b32 100644 --- a/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/WireMillRecipe.java +++ b/src/main/java/electrodynamics/common/recipe/categories/item2item/specificmachines/WireMillRecipe.java @@ -2,7 +2,7 @@ import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.recipe.ElectrodynamicsRecipeInit; import electrodynamics.common.recipe.categories.item2item.Item2ItemRecipe; import electrodynamics.common.recipe.recipeutils.CountableIngredient; @@ -17,7 +17,7 @@ public class WireMillRecipe extends Item2ItemRecipe { public static final String RECIPE_GROUP = "wire_mill_recipe"; - public static final ResourceLocation RECIPE_ID = ResourceLocation.fromNamespaceAndPath(References.ID, RECIPE_GROUP); + public static final ResourceLocation RECIPE_ID = Electrodynamics.rl(RECIPE_GROUP); public WireMillRecipe(String group, List inputs, ItemStack output, double experience, int ticks, double usagePerTick, List itemBiproducts, List fluidBiproducts, List gasBiproducts) { super(group, inputs, output, experience, ticks, usagePerTick, itemBiproducts, fluidBiproducts, gasBiproducts); diff --git a/src/main/java/electrodynamics/common/tags/ElectrodynamicsTags.java b/src/main/java/electrodynamics/common/tags/ElectrodynamicsTags.java index c60d73baa..4cb2d05df 100644 --- a/src/main/java/electrodynamics/common/tags/ElectrodynamicsTags.java +++ b/src/main/java/electrodynamics/common/tags/ElectrodynamicsTags.java @@ -1,5 +1,6 @@ package electrodynamics.common.tags; +import electrodynamics.Electrodynamics; import electrodynamics.api.gas.Gas; import electrodynamics.registers.ElectrodynamicsGases; import net.minecraft.core.registries.Registries; @@ -222,7 +223,7 @@ private static void init() { } private static TagKey forgeTag(String name) { - return ItemTags.create(ResourceLocation.fromNamespaceAndPath("c", name)); + return ItemTags.create(Electrodynamics.commonrl(name)); } } @@ -279,7 +280,7 @@ private static void init() { } private static TagKey forgeTag(String name) { - return BlockTags.create(ResourceLocation.fromNamespaceAndPath("c", name)); + return BlockTags.create(Electrodynamics.commonrl(name)); } } @@ -328,7 +329,7 @@ private static void init() { } private static TagKey forgeTag(String name) { - return FluidTags.create(ResourceLocation.fromNamespaceAndPath("c", name)); + return FluidTags.create(Electrodynamics.commonrl(name)); } } @@ -352,7 +353,7 @@ private static void init() { } private static TagKey forgeTag(String name) { - return create(ResourceLocation.fromNamespaceAndPath("c", name)); + return create(Electrodynamics.commonrl(name)); } public static TagKey create(ResourceLocation loc) { @@ -370,7 +371,7 @@ public static class Enchantments { private static void init() { } private static TagKey forgeTag(String name) { - return TagKey.create(Registries.ENCHANTMENT,ResourceLocation.fromNamespaceAndPath("c", name)); + return TagKey.create(Registries.ENCHANTMENT,Electrodynamics.commonrl(name)); } } diff --git a/src/main/java/electrodynamics/common/tile/machines/TileElectrolosisChamber.java b/src/main/java/electrodynamics/common/tile/machines/TileElectrolosisChamber.java index 927bc543f..be423e3e6 100644 --- a/src/main/java/electrodynamics/common/tile/machines/TileElectrolosisChamber.java +++ b/src/main/java/electrodynamics/common/tile/machines/TileElectrolosisChamber.java @@ -1,8 +1,8 @@ package electrodynamics.common.tile.machines; import com.mojang.datafixers.util.Pair; +import electrodynamics.Electrodynamics; import electrodynamics.api.IWrenchItem; -import electrodynamics.api.References; import electrodynamics.api.capability.types.electrodynamic.ICapabilityElectrodynamic; import electrodynamics.api.multiblock.assemblybased.Multiblock; import electrodynamics.api.multiblock.assemblybased.TileMultiblockController; @@ -47,7 +47,7 @@ public class TileElectrolosisChamber extends TileMultiblockController { - public static final ResourceLocation ID = ResourceLocation.fromNamespaceAndPath(References.ID, "electrolosischamber"); + public static final ResourceLocation ID = Electrodynamics.rl("electrolosischamber"); public static final ResourceKey RESOURCE_KEY = Multiblock.makeKey(ID); public static final int MAX_INPUT_TANK_CAPACITY = 5000; diff --git a/src/main/java/electrodynamics/compatibility/jei/ElectrodynamicsJEIPlugin.java b/src/main/java/electrodynamics/compatibility/jei/ElectrodynamicsJEIPlugin.java index f82cc618e..1527b289b 100644 --- a/src/main/java/electrodynamics/compatibility/jei/ElectrodynamicsJEIPlugin.java +++ b/src/main/java/electrodynamics/compatibility/jei/ElectrodynamicsJEIPlugin.java @@ -4,6 +4,7 @@ import java.util.List; import java.util.Objects; +import electrodynamics.Electrodynamics; import electrodynamics.api.electricity.formatting.ChatFormatter; import electrodynamics.api.electricity.formatting.DisplayUnit; import electrodynamics.api.gas.Gas; @@ -67,6 +68,8 @@ @JeiPlugin public class ElectrodynamicsJEIPlugin implements IModPlugin { + public static final ResourceLocation ID = Electrodynamics.rl( "jei"); + public static List> O2O_CLICK_AREAS = new ArrayList<>(); public static List> DO2O_CLICK_AREAS = new ArrayList<>(); @@ -74,7 +77,7 @@ public class ElectrodynamicsJEIPlugin implements IModPlugin { @Override public @NotNull ResourceLocation getPluginUid() { - return ResourceLocation.fromNamespaceAndPath(electrodynamics.api.References.ID, "jei"); + return ID; } @Override diff --git a/src/main/java/electrodynamics/compatibility/jei/utils/gui/JeiTextures.java b/src/main/java/electrodynamics/compatibility/jei/utils/gui/JeiTextures.java index 36eaa1adb..dfa6df1a5 100644 --- a/src/main/java/electrodynamics/compatibility/jei/utils/gui/JeiTextures.java +++ b/src/main/java/electrodynamics/compatibility/jei/utils/gui/JeiTextures.java @@ -1,14 +1,14 @@ package electrodynamics.compatibility.jei.utils.gui; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.ITexture; import net.minecraft.resources.ResourceLocation; public enum JeiTextures implements ITexture { - BACKGROUND_DEFAULT(0, 0, 512, 512, 512, 512, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/jei/background.png")), - FLUID_GAUGE_DEFAULT(0, 0, 14, 49, 14, 49, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/jei/fluid_gauge_default.png")), - FAKE_GAS_GAUGE(0, 0, 14, 49, 14, 49, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/jei/fake_gas_gauge.png")); + BACKGROUND_DEFAULT(0, 0, 512, 512, 512, 512, Electrodynamics.rl("textures/screen/jei/background.png")), + FLUID_GAUGE_DEFAULT(0, 0, 14, 49, 14, 49, Electrodynamics.rl("textures/screen/jei/fluid_gauge_default.png")), + FAKE_GAS_GAUGE(0, 0, 14, 49, 14, 49, Electrodynamics.rl("textures/screen/jei/fake_gas_gauge.png")); private final int u; private final int v; diff --git a/src/main/java/electrodynamics/compatibility/jei/utils/gui/ScreenObject.java b/src/main/java/electrodynamics/compatibility/jei/utils/gui/ScreenObject.java index bc135d741..a09f1a8ac 100644 --- a/src/main/java/electrodynamics/compatibility/jei/utils/gui/ScreenObject.java +++ b/src/main/java/electrodynamics/compatibility/jei/utils/gui/ScreenObject.java @@ -1,16 +1,16 @@ package electrodynamics.compatibility.jei.utils.gui; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.ITexture; import net.minecraft.resources.ResourceLocation; public class ScreenObject { - protected static final ResourceLocation BACKGROUND = ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/jei/background.png"); - protected static final ResourceLocation ITEM_SLOTS = ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/jei/itemslots.png"); - protected static final ResourceLocation FLUID_GAUGES = ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/jei/fluidgauges.png"); - protected static final ResourceLocation ARROWS = ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/jei/arrows.png"); - protected static final ResourceLocation GAS_GAUGES = ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/jei/gasgauges.png"); + protected static final ResourceLocation BACKGROUND = Electrodynamics.rl("textures/screen/jei/background.png"); + protected static final ResourceLocation ITEM_SLOTS = Electrodynamics.rl("textures/screen/jei/itemslots.png"); + protected static final ResourceLocation FLUID_GAUGES = Electrodynamics.rl("textures/screen/jei/fluidgauges.png"); + protected static final ResourceLocation ARROWS = Electrodynamics.rl("textures/screen/jei/arrows.png"); + protected static final ResourceLocation GAS_GAUGES = Electrodynamics.rl("textures/screen/jei/gasgauges.png"); protected ITexture texture; protected int x; diff --git a/src/main/java/electrodynamics/compatibility/jei/utils/gui/types/gasgauge/JeiGasGaugeTextures.java b/src/main/java/electrodynamics/compatibility/jei/utils/gui/types/gasgauge/JeiGasGaugeTextures.java index ea0abc1ce..554e00f3c 100644 --- a/src/main/java/electrodynamics/compatibility/jei/utils/gui/types/gasgauge/JeiGasGaugeTextures.java +++ b/src/main/java/electrodynamics/compatibility/jei/utils/gui/types/gasgauge/JeiGasGaugeTextures.java @@ -1,12 +1,12 @@ package electrodynamics.compatibility.jei.utils.gui.types.gasgauge; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import net.minecraft.resources.ResourceLocation; public enum JeiGasGaugeTextures implements IGasGaugeTexture { - BACKGROUND_DEFAULT(14, 49, 0, 0, 41, 49, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/jei/gas_gauge_default.png")), - LEVEL_DEFAULT(14, 49, 14, 0, 41, 49, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/jei/gas_gauge_default.png"), -1, -1); + BACKGROUND_DEFAULT(14, 49, 0, 0, 41, 49, Electrodynamics.rl("textures/screen/jei/gas_gauge_default.png")), + LEVEL_DEFAULT(14, 49, 14, 0, 41, 49, Electrodynamics.rl("textures/screen/jei/gas_gauge_default.png"), -1, -1); private final int textureWidth; private final int textureHeight; diff --git a/src/main/java/electrodynamics/compatibility/mekanism/MekanismHandler.java b/src/main/java/electrodynamics/compatibility/mekanism/MekanismHandler.java index e67b149cc..94042af0d 100644 --- a/src/main/java/electrodynamics/compatibility/mekanism/MekanismHandler.java +++ b/src/main/java/electrodynamics/compatibility/mekanism/MekanismHandler.java @@ -1,6 +1,5 @@ package electrodynamics.compatibility.mekanism; -import electrodynamics.api.References; import electrodynamics.api.gas.*; import electrodynamics.common.network.utils.GasUtilities; import electrodynamics.common.settings.Constants; @@ -21,20 +20,18 @@ import net.minecraft.nbt.NbtOps; import net.minecraft.nbt.Tag; import net.minecraft.network.RegistryFriendlyByteBuf; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.level.block.entity.BlockEntity; import net.neoforged.neoforge.capabilities.RegisterCapabilitiesEvent; import net.neoforged.neoforge.event.AddReloadListenerEvent; +import java.util.Objects; import java.util.function.Predicate; public class MekanismHandler { public static final PropertyType CHEMICAL_STACK = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "chemicalstack"), - // - null, + Objects::equals, // ChemicalStack.OPTIONAL_STREAM_CODEC, // diff --git a/src/main/java/electrodynamics/datagen/client/ElectrodynamicsBlockStateProvider.java b/src/main/java/electrodynamics/datagen/client/ElectrodynamicsBlockStateProvider.java index 4c78991fe..8dedd1313 100644 --- a/src/main/java/electrodynamics/datagen/client/ElectrodynamicsBlockStateProvider.java +++ b/src/main/java/electrodynamics/datagen/client/ElectrodynamicsBlockStateProvider.java @@ -2,6 +2,7 @@ import javax.annotation.Nullable; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import electrodynamics.common.block.states.ElectrodynamicsBlockStates; import electrodynamics.common.block.states.ElectrodynamicsBlockStates.AddonTankNeighborType; @@ -483,7 +484,7 @@ public ItemModelBuilder glassBlock(DeferredHolder block, } public ItemModelBuilder glassBlock(Block block, ResourceLocation texture, boolean registerItem) { - return simpleBlockCustomRenderType(block, texture, ResourceLocation.withDefaultNamespace("cutout"), registerItem); + return simpleBlockCustomRenderType(block, texture, Electrodynamics.vanillarl("cutout"), registerItem); } public ItemModelBuilder simpleBlockCustomRenderType(Block block, ResourceLocation texture, ResourceLocation renderType, boolean registerItem) { @@ -598,7 +599,7 @@ public ItemModelBuilder redstoneToggleBlock(Block block, ModelFile off, ModelFil * */ public void wire(Block block, ModelFile none, ModelFile side, boolean registerItem) { - ModelFile model = models().withExistingParent(name(block), ResourceLocation.withDefaultNamespace("cube")).customLoader(WireModelBuilder::begin).models(none, side, side).end().renderType(ResourceLocation.withDefaultNamespace("cutout")); + ModelFile model = models().withExistingParent(name(block), Electrodynamics.vanillarl("cube")).customLoader(WireModelBuilder::begin).models(none, side, side).end().renderType(Electrodynamics.vanillarl("cutout")); getVariantBuilder(block).partialState().addModels(new ConfiguredModel(model)); diff --git a/src/main/java/electrodynamics/datagen/server/advancement/ElectrodynamicsAdvancementProvider.java b/src/main/java/electrodynamics/datagen/server/advancement/ElectrodynamicsAdvancementProvider.java index cb43edb16..145348cf1 100644 --- a/src/main/java/electrodynamics/datagen/server/advancement/ElectrodynamicsAdvancementProvider.java +++ b/src/main/java/electrodynamics/datagen/server/advancement/ElectrodynamicsAdvancementProvider.java @@ -9,6 +9,7 @@ import java.util.Set; import java.util.concurrent.CompletableFuture; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import electrodynamics.common.block.subtype.SubtypeMachine; import electrodynamics.common.block.subtype.SubtypeOre; @@ -99,7 +100,7 @@ public void generate(HolderLookup.Provider registries) { // .addCriterion("SpawnIn", PlayerTrigger.TriggerInstance.tick()) // - .rewards(Builder.loot(ResourceKey.create(Registries.LOOT_TABLE, ResourceLocation.withDefaultNamespace("advancement_reward/electroguidebook")))) + .rewards(Builder.loot(ResourceKey.create(Registries.LOOT_TABLE, Electrodynamics.vanillarl("advancement_reward/electroguidebook")))) // .condition(new ConfigCondition()); diff --git a/src/main/java/electrodynamics/datagen/server/multiblock/ElectrodynamicsMultiblockProvider.java b/src/main/java/electrodynamics/datagen/server/multiblock/ElectrodynamicsMultiblockProvider.java index 771db92ae..a4e711fe7 100644 --- a/src/main/java/electrodynamics/datagen/server/multiblock/ElectrodynamicsMultiblockProvider.java +++ b/src/main/java/electrodynamics/datagen/server/multiblock/ElectrodynamicsMultiblockProvider.java @@ -5,6 +5,7 @@ import java.util.List; import java.util.concurrent.CompletableFuture; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import electrodynamics.api.multiblock.assemblybased.Multiblock; import electrodynamics.api.multiblock.assemblybased.MultiblockSlaveNode; @@ -46,33 +47,33 @@ protected void gather() { BlockState slave = ElectrodynamicsBlocks.BLOCK_MULTIBLOCK_SLAVE.get().defaultBlockState().setValue(ElectrodynamicsBlockStates.WATERLOGGED, false); BlockState scaffold = ElectrodynamicsBlocks.BLOCK_STEELSCAFFOLDING.get().defaultBlockState(); - ResourceLocation ecWindow = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberwindow"); - ResourceLocation ecWindowTopC1 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberwindowc1"); - ResourceLocation ecWindowTopC2 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberwindowc2"); - ResourceLocation ecWindowTopC3 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberwindowc3"); - ResourceLocation ecWindowTopC4 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberwindowc4"); - ResourceLocation ecWindowTopS1 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberwindows1"); - ResourceLocation ecWindowTopS2 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberwindows2"); - ResourceLocation ecWindowTopS3 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberwindows3"); - ResourceLocation ecWindowTopS4 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberwindows4"); - ResourceLocation ecCorner = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischambercorner"); - ResourceLocation ecVertSide = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischambervertside"); - ResourceLocation ecHorSideFB = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberhorsidefb"); - ResourceLocation ecHorSideLR = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberhorsidelr"); - ResourceLocation ecBottom = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberbottom"); - ResourceLocation ecPowerIn = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberpowerin"); - ResourceLocation ecFluidIn = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberfluidin"); - ResourceLocation ecFluidOut = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischamberfluidout"); - ResourceLocation ecCoilC1 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischambercoilc1"); - ResourceLocation ecCoilC2 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischambercoilc2"); - ResourceLocation ecCoilC3 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischambercoilc3"); - ResourceLocation ecCoilC4 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischambercoilc4"); - ResourceLocation ecCoilS1 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischambercoils1"); - ResourceLocation ecCoilS2 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischambercoils2"); - ResourceLocation ecCoilS3 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischambercoils3"); - ResourceLocation ecCoilS4 = ResourceLocation.fromNamespaceAndPath(References.ID, "multiblockmodels/electrolosischambercoils4"); - - addMultiblock(ResourceLocation.fromNamespaceAndPath(References.ID, "testing"), List.of(new MultiblockSlaveNode(slave, Blocks.OAK_LOG.defaultBlockState(), BlockTags.ACACIA_LOGS, new Vec3i(0, 0, 1), Shapes.block(), ClientRegister.MODEL_BATTERYBOX.id()))); + ResourceLocation ecWindow = Electrodynamics.rl("multiblockmodels/electrolosischamberwindow"); + ResourceLocation ecWindowTopC1 = Electrodynamics.rl("multiblockmodels/electrolosischamberwindowc1"); + ResourceLocation ecWindowTopC2 = Electrodynamics.rl("multiblockmodels/electrolosischamberwindowc2"); + ResourceLocation ecWindowTopC3 = Electrodynamics.rl("multiblockmodels/electrolosischamberwindowc3"); + ResourceLocation ecWindowTopC4 = Electrodynamics.rl("multiblockmodels/electrolosischamberwindowc4"); + ResourceLocation ecWindowTopS1 = Electrodynamics.rl("multiblockmodels/electrolosischamberwindows1"); + ResourceLocation ecWindowTopS2 = Electrodynamics.rl("multiblockmodels/electrolosischamberwindows2"); + ResourceLocation ecWindowTopS3 = Electrodynamics.rl("multiblockmodels/electrolosischamberwindows3"); + ResourceLocation ecWindowTopS4 = Electrodynamics.rl("multiblockmodels/electrolosischamberwindows4"); + ResourceLocation ecCorner = Electrodynamics.rl("multiblockmodels/electrolosischambercorner"); + ResourceLocation ecVertSide = Electrodynamics.rl("multiblockmodels/electrolosischambervertside"); + ResourceLocation ecHorSideFB = Electrodynamics.rl("multiblockmodels/electrolosischamberhorsidefb"); + ResourceLocation ecHorSideLR = Electrodynamics.rl("multiblockmodels/electrolosischamberhorsidelr"); + ResourceLocation ecBottom = Electrodynamics.rl("multiblockmodels/electrolosischamberbottom"); + ResourceLocation ecPowerIn = Electrodynamics.rl("multiblockmodels/electrolosischamberpowerin"); + ResourceLocation ecFluidIn = Electrodynamics.rl("multiblockmodels/electrolosischamberfluidin"); + ResourceLocation ecFluidOut = Electrodynamics.rl("multiblockmodels/electrolosischamberfluidout"); + ResourceLocation ecCoilC1 = Electrodynamics.rl("multiblockmodels/electrolosischambercoilc1"); + ResourceLocation ecCoilC2 = Electrodynamics.rl("multiblockmodels/electrolosischambercoilc2"); + ResourceLocation ecCoilC3 = Electrodynamics.rl("multiblockmodels/electrolosischambercoilc3"); + ResourceLocation ecCoilC4 = Electrodynamics.rl("multiblockmodels/electrolosischambercoilc4"); + ResourceLocation ecCoilS1 = Electrodynamics.rl("multiblockmodels/electrolosischambercoils1"); + ResourceLocation ecCoilS2 = Electrodynamics.rl("multiblockmodels/electrolosischambercoils2"); + ResourceLocation ecCoilS3 = Electrodynamics.rl("multiblockmodels/electrolosischambercoils3"); + ResourceLocation ecCoilS4 = Electrodynamics.rl("multiblockmodels/electrolosischambercoils4"); + + addMultiblock(Electrodynamics.rl("testing"), List.of(new MultiblockSlaveNode(slave, Blocks.OAK_LOG.defaultBlockState(), BlockTags.ACACIA_LOGS, new Vec3i(0, 0, 1), Shapes.block(), ClientRegister.MODEL_BATTERYBOX.id()))); addMultiblock(TileElectrolosisChamber.ID, List.of( diff --git a/src/main/java/electrodynamics/datagen/server/recipe/types/vanilla/ElectrodynamicsSmeltingRecipes.java b/src/main/java/electrodynamics/datagen/server/recipe/types/vanilla/ElectrodynamicsSmeltingRecipes.java index 69bf98362..7203333ea 100644 --- a/src/main/java/electrodynamics/datagen/server/recipe/types/vanilla/ElectrodynamicsSmeltingRecipes.java +++ b/src/main/java/electrodynamics/datagen/server/recipe/types/vanilla/ElectrodynamicsSmeltingRecipes.java @@ -1,5 +1,6 @@ package electrodynamics.datagen.server.recipe.types.vanilla; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import electrodynamics.common.block.subtype.SubtypeGlass; import electrodynamics.common.block.subtype.SubtypeOre; @@ -11,7 +12,6 @@ import electrodynamics.datagen.utils.recipe.ElectrodynamicsCookingRecipe; import electrodynamics.registers.ElectrodynamicsItems; import net.minecraft.data.recipes.RecipeOutput; -import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.ItemTags; import net.neoforged.neoforge.common.Tags; @@ -26,13 +26,13 @@ public void addRecipes(RecipeOutput output) { for (SubtypeDust dust : SubtypeDust.values()) { if (dust.smeltedItem != null) { - ElectrodynamicsCookingRecipe.smeltingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, SMELTING_LOC + dust.name() + "_ingot_from_dust"), References.ID, dust.smeltedItem.get(), 0, dust.smeltTime) + ElectrodynamicsCookingRecipe.smeltingRecipe(Electrodynamics.rl(SMELTING_LOC + dust.name() + "_ingot_from_dust"), References.ID, dust.smeltedItem.get(), 0, dust.smeltTime) // .input(dust.tag) // .save(output); - ElectrodynamicsCookingRecipe.blastingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, BLASTING_LOC + dust.name() + "_ingot_from_dust"), References.ID, dust.smeltedItem.get(), 0, dust.smeltTime / 2) + ElectrodynamicsCookingRecipe.blastingRecipe(Electrodynamics.rl(BLASTING_LOC + dust.name() + "_ingot_from_dust"), References.ID, dust.smeltedItem.get(), 0, dust.smeltTime / 2) // .input(dust.tag) // @@ -43,13 +43,13 @@ public void addRecipes(RecipeOutput output) { for (SubtypeOre ore : SubtypeOre.values()) { if (ore.smeltingItem != null) { - ElectrodynamicsCookingRecipe.smeltingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, SMELTING_LOC + ore.name() + "_ingot_from_ore"), References.ID, ore.smeltingItem.get(), (float) ore.smeltingXp, ore.smeltingTime) + ElectrodynamicsCookingRecipe.smeltingRecipe(Electrodynamics.rl(SMELTING_LOC + ore.name() + "_ingot_from_ore"), References.ID, ore.smeltingItem.get(), (float) ore.smeltingXp, ore.smeltingTime) // .input(ore.itemTag) // .save(output); - ElectrodynamicsCookingRecipe.blastingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, BLASTING_LOC + ore.name() + "_ingot_from_ore"), References.ID, ore.smeltingItem.get(), (float) ore.smeltingXp, ore.smeltingTime / 2) + ElectrodynamicsCookingRecipe.blastingRecipe(Electrodynamics.rl(BLASTING_LOC + ore.name() + "_ingot_from_ore"), References.ID, ore.smeltingItem.get(), (float) ore.smeltingXp, ore.smeltingTime / 2) // .input(ore.itemTag) // @@ -59,19 +59,19 @@ public void addRecipes(RecipeOutput output) { // Coal Coke - ElectrodynamicsCookingRecipe.smeltingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, SMELTING_LOC + "coal_coke"), References.ID, ElectrodynamicsItems.ITEM_COAL_COKE.get(), 0.1F, 200) + ElectrodynamicsCookingRecipe.smeltingRecipe(Electrodynamics.rl(SMELTING_LOC + "coal_coke"), References.ID, ElectrodynamicsItems.ITEM_COAL_COKE.get(), 0.1F, 200) // .input(ItemTags.COALS) // .save(output); - ElectrodynamicsCookingRecipe.blastingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, BLASTING_LOC + "coal_coke"), References.ID, ElectrodynamicsItems.ITEM_COAL_COKE.get(), 0.1F, 100) + ElectrodynamicsCookingRecipe.blastingRecipe(Electrodynamics.rl(BLASTING_LOC + "coal_coke"), References.ID, ElectrodynamicsItems.ITEM_COAL_COKE.get(), 0.1F, 100) // .input(ItemTags.COALS) // .save(output); - ElectrodynamicsCookingRecipe.blastingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, BLASTING_LOC + "cooked_ceramic"), References.ID, ElectrodynamicsItems.ITEMS_CERAMIC.getValue(SubtypeCeramic.cooked), 0.1F, 300) + ElectrodynamicsCookingRecipe.blastingRecipe(Electrodynamics.rl(BLASTING_LOC + "cooked_ceramic"), References.ID, ElectrodynamicsItems.ITEMS_CERAMIC.getValue(SubtypeCeramic.cooked), 0.1F, 300) // .input(ElectrodynamicsItems.ITEMS_CERAMIC.getValue(SubtypeCeramic.wet)) // @@ -79,20 +79,20 @@ public void addRecipes(RecipeOutput output) { // Clear Glass - ElectrodynamicsCookingRecipe.smeltingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, SMELTING_LOC + "clear_glass"), References.ID, ElectrodynamicsItems.ITEMS_CUSTOMGLASS.getValue(SubtypeGlass.clear), 0.1F, 200) + ElectrodynamicsCookingRecipe.smeltingRecipe(Electrodynamics.rl(SMELTING_LOC + "clear_glass"), References.ID, ElectrodynamicsItems.ITEMS_CUSTOMGLASS.getValue(SubtypeGlass.clear), 0.1F, 200) // .input(ElectrodynamicsTags.Items.DUST_SILICA) // .save(output); - ElectrodynamicsCookingRecipe.blastingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, BLASTING_LOC + "clear_glass"), References.ID, ElectrodynamicsItems.ITEMS_CUSTOMGLASS.getValue(SubtypeGlass.clear), 0.1F, 100) + ElectrodynamicsCookingRecipe.blastingRecipe(Electrodynamics.rl(BLASTING_LOC + "clear_glass"), References.ID, ElectrodynamicsItems.ITEMS_CUSTOMGLASS.getValue(SubtypeGlass.clear), 0.1F, 100) // .input(ElectrodynamicsTags.Items.DUST_SILICA) // .save(output); // Steel Ingot - ElectrodynamicsCookingRecipe.blastingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, BLASTING_LOC + "steel_ingot_from_iron_ingot"), References.ID, ElectrodynamicsItems.ITEMS_INGOT.getValue(SubtypeIngot.steel), 0.1F, 100) + ElectrodynamicsCookingRecipe.blastingRecipe(Electrodynamics.rl(BLASTING_LOC + "steel_ingot_from_iron_ingot"), References.ID, ElectrodynamicsItems.ITEMS_INGOT.getValue(SubtypeIngot.steel), 0.1F, 100) // .input(Tags.Items.INGOTS_IRON) // @@ -100,13 +100,13 @@ public void addRecipes(RecipeOutput output) { // Tin Raw Ore - ElectrodynamicsCookingRecipe.smeltingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, SMELTING_LOC + "tin_ingot_from_raw_ore"), References.ID, ElectrodynamicsItems.ITEMS_INGOT.getValue(SubtypeIngot.tin), 0.1F, 200) + ElectrodynamicsCookingRecipe.smeltingRecipe(Electrodynamics.rl(SMELTING_LOC + "tin_ingot_from_raw_ore"), References.ID, ElectrodynamicsItems.ITEMS_INGOT.getValue(SubtypeIngot.tin), 0.1F, 200) // .input(ElectrodynamicsTags.Items.RAW_ORE_TIN) // .save(output); - ElectrodynamicsCookingRecipe.blastingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, BLASTING_LOC + "tin_ingot_from_raw_ore"), References.ID, ElectrodynamicsItems.ITEMS_INGOT.getValue(SubtypeIngot.tin), 0.1F, 100) + ElectrodynamicsCookingRecipe.blastingRecipe(Electrodynamics.rl(BLASTING_LOC + "tin_ingot_from_raw_ore"), References.ID, ElectrodynamicsItems.ITEMS_INGOT.getValue(SubtypeIngot.tin), 0.1F, 100) // .input(ElectrodynamicsTags.Items.RAW_ORE_TIN) // @@ -114,13 +114,13 @@ public void addRecipes(RecipeOutput output) { // Silver Raw Ore - ElectrodynamicsCookingRecipe.smeltingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, SMELTING_LOC + "silver_ingot_from_raw_ore"), References.ID, ElectrodynamicsItems.ITEMS_INGOT.getValue(SubtypeIngot.silver), 0.7F, 200) + ElectrodynamicsCookingRecipe.smeltingRecipe(Electrodynamics.rl(SMELTING_LOC + "silver_ingot_from_raw_ore"), References.ID, ElectrodynamicsItems.ITEMS_INGOT.getValue(SubtypeIngot.silver), 0.7F, 200) // .input(ElectrodynamicsTags.Items.RAW_ORE_SILVER) // .save(output); - ElectrodynamicsCookingRecipe.blastingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, BLASTING_LOC + "silver_ingot_from_raw_ore"), References.ID, ElectrodynamicsItems.ITEMS_INGOT.getValue(SubtypeIngot.silver), 0.7F, 100) + ElectrodynamicsCookingRecipe.blastingRecipe(Electrodynamics.rl(BLASTING_LOC + "silver_ingot_from_raw_ore"), References.ID, ElectrodynamicsItems.ITEMS_INGOT.getValue(SubtypeIngot.silver), 0.7F, 100) // .input(ElectrodynamicsTags.Items.RAW_ORE_SILVER) // @@ -128,13 +128,13 @@ public void addRecipes(RecipeOutput output) { // Lead Raw Ore - ElectrodynamicsCookingRecipe.smeltingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, SMELTING_LOC + "lead_ingot_from_raw_ore"), References.ID, ElectrodynamicsItems.ITEMS_INGOT.getValue(SubtypeIngot.lead), 0.7F, 200) + ElectrodynamicsCookingRecipe.smeltingRecipe(Electrodynamics.rl(SMELTING_LOC + "lead_ingot_from_raw_ore"), References.ID, ElectrodynamicsItems.ITEMS_INGOT.getValue(SubtypeIngot.lead), 0.7F, 200) // .input(ElectrodynamicsTags.Items.RAW_ORE_LEAD) // .save(output); - ElectrodynamicsCookingRecipe.blastingRecipe(ResourceLocation.fromNamespaceAndPath(References.ID, BLASTING_LOC + "lead_ingot_from_raw_ore"), References.ID, ElectrodynamicsItems.ITEMS_INGOT.getValue(SubtypeIngot.lead), 0.7F, 100) + ElectrodynamicsCookingRecipe.blastingRecipe(Electrodynamics.rl(BLASTING_LOC + "lead_ingot_from_raw_ore"), References.ID, ElectrodynamicsItems.ITEMS_INGOT.getValue(SubtypeIngot.lead), 0.7F, 100) // .input(ElectrodynamicsTags.Items.RAW_ORE_LEAD) // diff --git a/src/main/java/electrodynamics/datagen/utils/AbstractLootTableProvider.java b/src/main/java/electrodynamics/datagen/utils/AbstractLootTableProvider.java index 3eece552b..66cf2ce7a 100644 --- a/src/main/java/electrodynamics/datagen/utils/AbstractLootTableProvider.java +++ b/src/main/java/electrodynamics/datagen/utils/AbstractLootTableProvider.java @@ -4,12 +4,12 @@ import java.util.Map; import java.util.stream.Collectors; +import electrodynamics.Electrodynamics; import electrodynamics.prefab.tile.components.type.ComponentInventory; import net.minecraft.core.HolderLookup; import net.minecraft.core.registries.BuiltInRegistries; import net.minecraft.core.registries.Registries; import net.minecraft.data.loot.packs.VanillaBlockLoot; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.Item; import net.minecraft.world.item.enchantment.Enchantments; import net.minecraft.world.level.block.Block; @@ -27,81 +27,119 @@ public abstract class AbstractLootTableProvider extends VanillaBlockLoot { - private final String modID; - - public AbstractLootTableProvider(HolderLookup.Provider provider, String modID) { - super(provider); - this.modID = modID; - } - - public LootTable.Builder machineTable(String name, Block block, BlockEntityType type, boolean items, boolean fluids, boolean gases, boolean energy, boolean additional) { - CopyCustomDataFunction.Builder function = CopyCustomDataFunction.copyData(ContextNbtProvider.BLOCK_ENTITY); - - if (items) { - function = function.copy("Items", "BlockEntityTag", CopyCustomDataFunction.MergeStrategy.REPLACE); - function = function.copy(ComponentInventory.SAVE_KEY + "_size", "BlockEntityTag", CopyCustomDataFunction.MergeStrategy.REPLACE); - } - - if (fluids) { - function = function.copy("fluid", "BlockEntityTag", CopyCustomDataFunction.MergeStrategy.REPLACE); - } - - if (gases) { - // function = function - } - - if (energy) { - function = function.copy("joules", "BlockEntityTag.joules", CopyCustomDataFunction.MergeStrategy.REPLACE); - } - - if (additional) { - function = function.copy("additional", "BlockEntityTag.additional", CopyCustomDataFunction.MergeStrategy.REPLACE); - } - - LootPool.Builder builder = LootPool.lootPool().name(name).setRolls(ConstantValue.exactly(1)).add(LootItem.lootTableItem(block).apply(CopyNameFunction.copyName(CopyNameFunction.NameSource.BLOCK_ENTITY)).apply(function).apply(SetContainerContents.setContents(ContainerComponentManipulators.CONTAINER).withEntry(DynamicLoot.dynamicEntry(ResourceLocation.fromNamespaceAndPath("minecraft", "contents"))))); - return LootTable.lootTable().withPool(builder); - } - - /** - * Creates a silk touch and fortune loottable for a block - * - * @author SeaRobber69 - * @param name Name of the block - * @param block The block that will be added - * @param lootItem The alternative item that is dropped when silk is not used - * @param min The minimum amount dropped - * @param max The maximum amount dropped - */ - protected LootTable.Builder createSilkTouchAndFortuneTable(String name, Block block, Item lootItem, float min, float max) { - LootPool.Builder builder = LootPool.lootPool().name(name).setRolls(ConstantValue.exactly(1)).add(AlternativesEntry.alternatives(LootItem.lootTableItem(block).when(hasSilkTouch()), LootItem.lootTableItem(lootItem).apply(SetItemCountFunction.setCount(UniformGenerator.between(min, max))).apply(ApplyBonusCount.addUniformBonusCount(registries.lookupOrThrow(Registries.ENCHANTMENT).getOrThrow(Enchantments.FORTUNE), 1)).apply(ApplyExplosionDecay.explosionDecay()))); - return LootTable.lootTable().withPool(builder); - } - - /** - * Creates a silk touch only loottable for a block - * - * @author SeaRobber69 - * @param name Name of the block - * @param block The block that will be added - */ - protected LootTable.Builder createSilkTouchOnlyTable(String name, Block block) { - LootPool.Builder builder = LootPool.lootPool().name(name).setRolls(ConstantValue.exactly(1)).add(LootItem.lootTableItem(block).when(hasSilkTouch()) - - ); - return LootTable.lootTable().withPool(builder); - } - - protected LootTable.Builder createSimpleBlockTable(String name, Block block) { - LootPool.Builder builder = LootPool.lootPool().name(name).setRolls(ConstantValue.exactly(1)).add(LootItem.lootTableItem(block)); - return LootTable.lootTable().withPool(builder); - } - - @Override - protected Iterable getKnownBlocks() { - - return BuiltInRegistries.BLOCK.entrySet().stream().filter(e -> e.getKey().location().getNamespace().equals(modID) && !getExcludedBlocks().contains(e.getValue())).map(Map.Entry::getValue).collect(Collectors.toList()); - } - - public abstract List getExcludedBlocks(); + private final String modID; + + public AbstractLootTableProvider(HolderLookup.Provider provider, String modID) { + super(provider); + this.modID = modID; + } + + public LootTable.Builder machineTable(String name, Block block, BlockEntityType type, boolean items, boolean fluids, boolean gases, boolean energy, boolean additional) { + CopyCustomDataFunction.Builder function = CopyCustomDataFunction.copyData(ContextNbtProvider.BLOCK_ENTITY); + + if (items) { + function = function.copy("Items", "BlockEntityTag", CopyCustomDataFunction.MergeStrategy.REPLACE); + function = function.copy(ComponentInventory.SAVE_KEY + "_size", "BlockEntityTag", CopyCustomDataFunction.MergeStrategy.REPLACE); + } + + if (fluids) { + function = function.copy("fluid", "BlockEntityTag", CopyCustomDataFunction.MergeStrategy.REPLACE); + } + + if (gases) { + // function = function + } + + if (energy) { + function = function.copy("joules", "BlockEntityTag.joules", CopyCustomDataFunction.MergeStrategy.REPLACE); + } + + if (additional) { + function = function.copy("additional", "BlockEntityTag.additional", CopyCustomDataFunction.MergeStrategy.REPLACE); + } + + LootPool.Builder builder = LootPool.lootPool() + // + .name(name) + // + .setRolls(ConstantValue.exactly(1)) + // + .add( + // + LootItem.lootTableItem(block) + // + .apply(CopyNameFunction.copyName(CopyNameFunction.NameSource.BLOCK_ENTITY)) + // + .apply(function) + // + .apply(SetContainerContents.setContents(ContainerComponentManipulators.CONTAINER).withEntry(DynamicLoot.dynamicEntry(Electrodynamics.vanillarl("contents")))) + // + ); + return LootTable.lootTable().withPool(builder); + } + + /** + * Creates a silk touch and fortune loottable for a block + * + * @param name Name of the block + * @param block The block that will be added + * @param lootItem The alternative item that is dropped when silk is not used + * @param min The minimum amount dropped + * @param max The maximum amount dropped + * @author SeaRobber69 + */ + protected LootTable.Builder createSilkTouchAndFortuneTable(String name, Block block, Item lootItem, float min, float max) { + LootPool.Builder builder = LootPool.lootPool() + // + .name(name) + // + .setRolls(ConstantValue.exactly(1)) + // + .add( + // + AlternativesEntry.alternatives( + // + LootItem.lootTableItem(block).when(hasSilkTouch()), + // + LootItem.lootTableItem(lootItem) + // + .apply(SetItemCountFunction.setCount(UniformGenerator.between(min, max))) + // + .apply(ApplyBonusCount.addUniformBonusCount(registries.lookupOrThrow(Registries.ENCHANTMENT).getOrThrow(Enchantments.FORTUNE), 1)) + // + .apply(ApplyExplosionDecay.explosionDecay()) + // + ) + // + ); + return LootTable.lootTable().withPool(builder); + } + + /** + * Creates a silk touch only loottable for a block + * + * @param name Name of the block + * @param block The block that will be added + * @author SeaRobber69 + */ + protected LootTable.Builder createSilkTouchOnlyTable(String name, Block block) { + LootPool.Builder builder = LootPool.lootPool().name(name).setRolls(ConstantValue.exactly(1)).add(LootItem.lootTableItem(block).when(hasSilkTouch()) + + ); + return LootTable.lootTable().withPool(builder); + } + + protected LootTable.Builder createSimpleBlockTable(String name, Block block) { + LootPool.Builder builder = LootPool.lootPool().name(name).setRolls(ConstantValue.exactly(1)).add(LootItem.lootTableItem(block)); + return LootTable.lootTable().withPool(builder); + } + + @Override + protected Iterable getKnownBlocks() { + + return BuiltInRegistries.BLOCK.entrySet().stream().filter(e -> e.getKey().location().getNamespace().equals(modID) && !getExcludedBlocks().contains(e.getValue())).map(Map.Entry::getValue).collect(Collectors.toList()); + } + + public abstract List getExcludedBlocks(); } diff --git a/src/main/java/electrodynamics/datagen/utils/AdvancementBuilder.java b/src/main/java/electrodynamics/datagen/utils/AdvancementBuilder.java index 331af4c29..37d1a1f29 100644 --- a/src/main/java/electrodynamics/datagen/utils/AdvancementBuilder.java +++ b/src/main/java/electrodynamics/datagen/utils/AdvancementBuilder.java @@ -13,6 +13,7 @@ import com.google.gson.JsonObject; import com.mojang.serialization.JsonOps; +import electrodynamics.Electrodynamics; import net.minecraft.advancements.Advancement; import net.minecraft.advancements.AdvancementHolder; import net.minecraft.advancements.AdvancementRequirements; @@ -195,11 +196,11 @@ public static enum AdvancementBackgrounds { NONE(null), // Vanilla - ADVENTURE(ResourceLocation.withDefaultNamespace("textures/gui/advancements/backgrounds/adventure.png")), // - END(ResourceLocation.withDefaultNamespace("textures/gui/advancements/backgrounds/end.png")), // - HUSBANDRY(ResourceLocation.withDefaultNamespace("textures/gui/advancements/backgrounds/husbandry.png")), // - NETHER(ResourceLocation.withDefaultNamespace("textures/gui/advancements/backgrounds/nether.png")), // - STONE(ResourceLocation.withDefaultNamespace("textures/gui/advancements/backgrounds/stone.png")); // + ADVENTURE(Electrodynamics.vanillarl("textures/gui/advancements/backgrounds/adventure.png")), // + END(Electrodynamics.vanillarl("textures/gui/advancements/backgrounds/end.png")), // + HUSBANDRY(Electrodynamics.vanillarl("textures/gui/advancements/backgrounds/husbandry.png")), // + NETHER(Electrodynamics.vanillarl("textures/gui/advancements/backgrounds/nether.png")), // + STONE(Electrodynamics.vanillarl("textures/gui/advancements/backgrounds/stone.png")); // public final ResourceLocation loc; diff --git a/src/main/java/electrodynamics/prefab/properties/IPropertyType.java b/src/main/java/electrodynamics/prefab/properties/IPropertyType.java index 42c0a0c93..9589db66f 100644 --- a/src/main/java/electrodynamics/prefab/properties/IPropertyType.java +++ b/src/main/java/electrodynamics/prefab/properties/IPropertyType.java @@ -3,7 +3,6 @@ import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; import net.minecraft.network.codec.StreamCodec; -import net.minecraft.resources.ResourceLocation; /** * Interface to allow for custom property types in dependent mods @@ -23,8 +22,6 @@ default boolean hasChanged(TYPE currentValue, TYPE newValue) { public TYPE readFromTag(TagReader reader); - public ResourceLocation getId(); - public static final record TagWriter(Property prop, CompoundTag tag, HolderLookup.Provider registries) { } diff --git a/src/main/java/electrodynamics/prefab/properties/PropertyManager.java b/src/main/java/electrodynamics/prefab/properties/PropertyManager.java index 3cb0b7195..53771a3be 100644 --- a/src/main/java/electrodynamics/prefab/properties/PropertyManager.java +++ b/src/main/java/electrodynamics/prefab/properties/PropertyManager.java @@ -2,14 +2,11 @@ import java.util.ArrayList; import java.util.HashSet; -import java.util.Map; -import java.util.concurrent.ConcurrentHashMap; import electrodynamics.Electrodynamics; import electrodynamics.prefab.tile.GenericTile; import net.minecraft.core.HolderLookup; import net.minecraft.nbt.CompoundTag; -import net.minecraft.resources.ResourceLocation; /** * A wrapper class designed to manage data properties on a tile @@ -22,13 +19,6 @@ public class PropertyManager { public static final String NBT_KEY = "propertydata"; - public static final ConcurrentHashMap REGISTERED_PROPERTIES = new ConcurrentHashMap<>(); - - public static void registerProperties(Map propeties) { - REGISTERED_PROPERTIES.clear(); - REGISTERED_PROPERTIES.putAll(propeties); - } - private final GenericTile owner; private ArrayList> properties = new ArrayList<>(); diff --git a/src/main/java/electrodynamics/prefab/properties/PropertyType.java b/src/main/java/electrodynamics/prefab/properties/PropertyType.java index 3137aefb8..6062e56c8 100644 --- a/src/main/java/electrodynamics/prefab/properties/PropertyType.java +++ b/src/main/java/electrodynamics/prefab/properties/PropertyType.java @@ -1,17 +1,14 @@ package electrodynamics.prefab.properties; import net.minecraft.network.codec.StreamCodec; -import net.minecraft.resources.ResourceLocation; -import javax.annotation.Nullable; +import javax.annotation.Nonnull; import java.util.function.BiPredicate; import java.util.function.Consumer; import java.util.function.Function; public class PropertyType implements IPropertyType { - private final ResourceLocation id; - private final BiPredicate comparison; private final Consumer> writeToNbt; @@ -20,14 +17,9 @@ public class PropertyType implements IPropertyType packetCodec; - public PropertyType(ResourceLocation id, @Nullable BiPredicate comparison, StreamCodec packetCodec, Consumer> tagWriter, Function, TYPE> tagReader) { + public PropertyType(@Nonnull BiPredicate comparison, StreamCodec packetCodec, Consumer> tagWriter, Function, TYPE> tagReader) { - this.id = id; - if (comparison == null) { - this.comparison = (thisObject, otherObject) -> thisObject.equals(otherObject); - } else { - this.comparison = comparison; - } + this.comparison = comparison; this.packetCodec = packetCodec; this.writeToNbt = tagWriter; this.readFromNbt = tagReader; @@ -53,8 +45,4 @@ public boolean hasChanged(TYPE currentValue, TYPE newValue) { return comparison.test(currentValue, newValue); } - @Override - public ResourceLocation getId() { - return id; - } } diff --git a/src/main/java/electrodynamics/prefab/properties/PropertyTypes.java b/src/main/java/electrodynamics/prefab/properties/PropertyTypes.java index f628ffb9c..9462c486a 100644 --- a/src/main/java/electrodynamics/prefab/properties/PropertyTypes.java +++ b/src/main/java/electrodynamics/prefab/properties/PropertyTypes.java @@ -1,6 +1,5 @@ package electrodynamics.prefab.properties; -import electrodynamics.api.References; import electrodynamics.api.gas.GasStack; import electrodynamics.prefab.utilities.object.Location; import electrodynamics.prefab.utilities.object.TransferPack; @@ -27,6 +26,7 @@ import java.util.ArrayList; import java.util.List; +import java.util.Objects; import java.util.UUID; import static net.minecraft.world.level.block.Block.BLOCK_STATE_REGISTRY; @@ -35,9 +35,7 @@ public class PropertyTypes { public static final PropertyType BYTE = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "byte"), - // - null, + Objects::equals, // ByteBufCodecs.BYTE, // @@ -49,9 +47,7 @@ public class PropertyTypes { public static final PropertyType BOOLEAN = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "boolean"), - // - null, + Objects::equals, // ByteBufCodecs.BOOL, // @@ -63,9 +59,7 @@ public class PropertyTypes { public static final PropertyType INTEGER = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "integer"), - // - null, + Objects::equals, // ByteBufCodecs.INT, // @@ -77,9 +71,7 @@ public class PropertyTypes { public static final PropertyType LONG = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "long"), - // - null, + Objects::equals, // ByteBufCodecs.VAR_LONG, // @@ -91,9 +83,7 @@ public class PropertyTypes { public static final PropertyType FLOAT = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "float"), - // - null, + Objects::equals, // ByteBufCodecs.FLOAT, // @@ -103,11 +93,9 @@ public class PropertyTypes { // ); - public static final PropertyType DOUBLE = new PropertyType<>(ResourceLocation.fromNamespaceAndPath( + public static final PropertyType DOUBLE = new PropertyType<>( // - References.ID, "double"), - // - null, + Objects::equals, // ByteBufCodecs.DOUBLE, // @@ -119,9 +107,7 @@ public class PropertyTypes { public static final PropertyType UUID = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "uuid"), - // - null, + Objects::equals, // UUIDUtil.STREAM_CODEC, // @@ -133,9 +119,7 @@ public class PropertyTypes { public static final PropertyType COMPOUND_TAG = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "compoundtag"), - // - null, + Objects::equals, // ByteBufCodecs.fromCodec(CompoundTag.CODEC), // @@ -147,9 +131,7 @@ public class PropertyTypes { public static final PropertyType BLOCK_POS = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "blockpos"), - // - null, + Objects::equals, // BlockPos.STREAM_CODEC, // @@ -160,8 +142,6 @@ public class PropertyTypes { ); public static final PropertyType, ByteBuf> INVENTORY_ITEMS = new PropertyType<>( - // - ResourceLocation.fromNamespaceAndPath(References.ID, "inventoryitems"), // (thisList, otherList) -> { if (thisList.size() != otherList.size()) { @@ -204,8 +184,6 @@ public class PropertyTypes { ); public static final PropertyType FLUID_STACK = new PropertyType<>( - // - ResourceLocation.fromNamespaceAndPath(References.ID, "fluidstack"), // (thisStack, otherStack) -> { if (thisStack.getAmount() != otherStack.getAmount()) { @@ -228,8 +206,6 @@ public class PropertyTypes { ); public static final PropertyType, ByteBuf> BLOCK_POS_LIST = new PropertyType<>( - // - ResourceLocation.fromNamespaceAndPath(References.ID, "blockposlist"), // (thisList, otherList) -> { if (thisList.size() != otherList.size()) { @@ -272,9 +248,7 @@ public class PropertyTypes { public static final PropertyType LOCATION = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "location"), - // - null, + Objects::equals, // Location.STREAM_CODEC, // @@ -290,9 +264,7 @@ public class PropertyTypes { public static final PropertyType GAS_STACK = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "gasstack"), - // - null, + Objects::equals, // GasStack.STREAM_CODEC, // @@ -303,8 +275,6 @@ public class PropertyTypes { ); public static final PropertyType ITEM_STACK = new PropertyType<>( - // - ResourceLocation.fromNamespaceAndPath(References.ID, "itemstack"), // ItemStack::matches, // @@ -318,9 +288,7 @@ public class PropertyTypes { public static final PropertyType BLOCK = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "block"), - // - null, + Objects::equals, // ByteBufCodecs.fromCodec(BuiltInRegistries.BLOCK.byNameCodec()), // @@ -340,9 +308,7 @@ public class PropertyTypes { public static final PropertyType BLOCK_STATE = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "blockstate"), - // - null, + Objects::equals, // ByteBufCodecs.fromCodec(BlockState.CODEC), // @@ -354,9 +320,7 @@ public class PropertyTypes { public static final PropertyType TRANSFER_PACK = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "transferpack"), - // - null, + Objects::equals, // TransferPack.STREAM_CODEC, // @@ -368,9 +332,7 @@ public class PropertyTypes { public static final PropertyType RESOURCE_LOCATION = new PropertyType<>( // - ResourceLocation.fromNamespaceAndPath(References.ID, "modelresourcelocation"), - // - null, + Objects::equals, // ResourceLocation.STREAM_CODEC, // diff --git a/src/main/java/electrodynamics/prefab/screen/GenericScreen.java b/src/main/java/electrodynamics/prefab/screen/GenericScreen.java index d5d987a6b..411da5bce 100644 --- a/src/main/java/electrodynamics/prefab/screen/GenericScreen.java +++ b/src/main/java/electrodynamics/prefab/screen/GenericScreen.java @@ -3,7 +3,7 @@ import java.util.ArrayList; import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.IScreenWrapper; import electrodynamics.api.screen.component.ISlotTexture; import electrodynamics.prefab.inventory.container.GenericContainer; @@ -29,7 +29,7 @@ @OnlyIn(Dist.CLIENT) public class GenericScreen extends AbstractContainerScreen implements IScreenWrapper { - protected ResourceLocation defaultResource = ResourceLocation.parse(References.ID + ":textures/screen/component/base.png"); + protected ResourceLocation defaultResource = Electrodynamics.rl("textures/screen/component/base.png"); private List components = new ArrayList<>(); public List slots = new ArrayList<>(); private List editBoxes = new ArrayList<>(); diff --git a/src/main/java/electrodynamics/prefab/screen/component/button/ScreenComponentButton.java b/src/main/java/electrodynamics/prefab/screen/component/button/ScreenComponentButton.java index ec969c4ab..5dda487b9 100644 --- a/src/main/java/electrodynamics/prefab/screen/component/button/ScreenComponentButton.java +++ b/src/main/java/electrodynamics/prefab/screen/component/button/ScreenComponentButton.java @@ -4,6 +4,7 @@ import com.mojang.blaze3d.systems.RenderSystem; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.ITexture; import electrodynamics.prefab.screen.component.ScreenComponentGeneric; import electrodynamics.prefab.utilities.RenderingUtils; @@ -14,7 +15,6 @@ import net.minecraft.client.resources.sounds.SimpleSoundInstance; import net.minecraft.client.sounds.SoundManager; import net.minecraft.network.chat.Component; -import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; import net.minecraft.sounds.SoundEvents; @@ -30,7 +30,7 @@ */ public class ScreenComponentButton> extends ScreenComponentGeneric { - public static final WidgetSprites VANILLA_BUTTON_SPRITES = new WidgetSprites(ResourceLocation.withDefaultNamespace("widget/button"), ResourceLocation.withDefaultNamespace("widget/button_disabled"), ResourceLocation.withDefaultNamespace("widget/button_highlighted")); + public static final WidgetSprites VANILLA_BUTTON_SPRITES = new WidgetSprites(Electrodynamics.vanillarl("widget/button"), Electrodynamics.vanillarl("widget/button_disabled"), Electrodynamics.vanillarl("widget/button_highlighted")); public boolean isPressed = false; diff --git a/src/main/java/electrodynamics/prefab/screen/component/button/type/ButtonGuidebook.java b/src/main/java/electrodynamics/prefab/screen/component/button/type/ButtonGuidebook.java index c8500a447..bfbaad99c 100644 --- a/src/main/java/electrodynamics/prefab/screen/component/button/type/ButtonGuidebook.java +++ b/src/main/java/electrodynamics/prefab/screen/component/button/type/ButtonGuidebook.java @@ -1,6 +1,6 @@ package electrodynamics.prefab.screen.component.button.type; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.ITexture; import electrodynamics.prefab.screen.component.button.ScreenComponentButton; import net.minecraft.client.gui.GuiGraphics; @@ -67,7 +67,7 @@ public static enum GuidebookButtonTextures implements ITexture { private final ResourceLocation loc; private GuidebookButtonTextures(int textureWidth, int textureHeight, int textureU, int textureV, int imageWidth, int imageHeight, String name) { - this(textureWidth, textureHeight, textureU, textureV, imageWidth, imageHeight, ResourceLocation.parse(References.ID + ":textures/screen/guidebook/buttons/" + name + ".png")); + this(textureWidth, textureHeight, textureU, textureV, imageWidth, imageHeight, Electrodynamics.rl("textures/screen/guidebook/buttons/" + name + ".png")); } private GuidebookButtonTextures(int textureWidth, int textureHeight, int textureU, int textureV, int imageWidth, int imageHeight, ResourceLocation loc) { diff --git a/src/main/java/electrodynamics/prefab/screen/component/button/type/ButtonModuleSelector.java b/src/main/java/electrodynamics/prefab/screen/component/button/type/ButtonModuleSelector.java index 93a3a1fab..0e8502d0a 100644 --- a/src/main/java/electrodynamics/prefab/screen/component/button/type/ButtonModuleSelector.java +++ b/src/main/java/electrodynamics/prefab/screen/component/button/type/ButtonModuleSelector.java @@ -1,6 +1,6 @@ package electrodynamics.prefab.screen.component.button.type; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.ITexture; import net.minecraft.client.gui.GuiGraphics; import net.minecraft.resources.ResourceLocation; @@ -57,7 +57,7 @@ private GuidebookButtonTextures(int textureWidth, int textureHeight, int texture this.textureV = textureV; this.imageWidth = imageWidth; this.imageHeight = imageHeight; - loc = ResourceLocation.parse(References.ID + ":textures/screen/guidebook/buttons/" + name + ".png"); + loc = Electrodynamics.rl("textures/screen/guidebook/buttons/" + name + ".png"); } @Override diff --git a/src/main/java/electrodynamics/prefab/screen/component/button/type/ButtonTankSlider.java b/src/main/java/electrodynamics/prefab/screen/component/button/type/ButtonTankSlider.java index 1098d8eb7..213412979 100644 --- a/src/main/java/electrodynamics/prefab/screen/component/button/type/ButtonTankSlider.java +++ b/src/main/java/electrodynamics/prefab/screen/component/button/type/ButtonTankSlider.java @@ -1,6 +1,6 @@ package electrodynamics.prefab.screen.component.button.type; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.ITexture; import electrodynamics.prefab.screen.component.button.ScreenComponentButton; import electrodynamics.prefab.utilities.RenderingUtils; @@ -63,7 +63,7 @@ private TankSliderTextures(int textureWidth, int textureHeight, int textureU, in this.textureV = textureV; this.imageWidth = imageWidth; this.imageHeight = imageHeight; - loc = ResourceLocation.parse(References.ID + ":textures/screen/component/button/tankarrows.png"); + loc = Electrodynamics.rl("textures/screen/component/button/tankarrows.png"); } @Override diff --git a/src/main/java/electrodynamics/prefab/screen/component/editbox/ScreenComponentEditBox.java b/src/main/java/electrodynamics/prefab/screen/component/editbox/ScreenComponentEditBox.java index 489462712..f559bbf80 100644 --- a/src/main/java/electrodynamics/prefab/screen/component/editbox/ScreenComponentEditBox.java +++ b/src/main/java/electrodynamics/prefab/screen/component/editbox/ScreenComponentEditBox.java @@ -7,7 +7,7 @@ import javax.annotation.Nullable; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.ITexture; import electrodynamics.prefab.screen.component.ScreenComponentGeneric; import electrodynamics.prefab.utilities.math.Color; @@ -35,7 +35,7 @@ */ public class ScreenComponentEditBox extends ScreenComponentGeneric { - public static final ResourceLocation TEXTURE = ResourceLocation.parse(References.ID + ":textures/screen/component/textinputbar.png"); + public static final ResourceLocation TEXTURE = Electrodynamics.rl("textures/screen/component/textinputbar.png"); public static final char[] POSITIVE_DECIMAL = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '.' }; public static final char[] DECIMAL = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', '.', '-' }; diff --git a/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentCountdown.java b/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentCountdown.java index 10e819053..b138a30de 100644 --- a/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentCountdown.java +++ b/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentCountdown.java @@ -4,7 +4,7 @@ import java.util.List; import java.util.function.DoubleSupplier; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.electricity.formatting.ChatFormatter; import electrodynamics.api.electricity.formatting.DisplayUnit; import electrodynamics.api.screen.ITexture; @@ -20,7 +20,7 @@ public class ScreenComponentCountdown extends AbstractScreenComponentInfo { private final DoubleSupplier progressInfoHandler; private TextPropertySupplier tooltip; - public static final ResourceLocation TEXTURE = ResourceLocation.parse(References.ID + ":textures/screen/component/countdown.png"); + public static final ResourceLocation TEXTURE = Electrodynamics.rl("textures/screen/component/countdown.png"); public ScreenComponentCountdown(TextPropertySupplier tooltip, DoubleSupplier progressInfoHandler, int x, int y) { super(CountdownTextures.BACKGROUND_DEFAULT, AbstractScreenComponentInfo.EMPTY, x, y); diff --git a/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentGuidebookArrow.java b/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentGuidebookArrow.java index 428c3f900..7fc2eb495 100644 --- a/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentGuidebookArrow.java +++ b/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentGuidebookArrow.java @@ -1,6 +1,6 @@ package electrodynamics.prefab.screen.component.types; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.ITexture; import electrodynamics.client.guidebook.ScreenGuidebook; import electrodynamics.prefab.screen.component.ScreenComponentGeneric; @@ -46,7 +46,7 @@ private ArrowTextures(int textureWidth, int textureHeight, int textureU, int tex this.textureV = textureV; this.imageWidth = imageWidth; this.imageHeight = imageHeight; - loc = ResourceLocation.parse(References.ID + ":textures/screen//guidebook/buttons/" + name + ".png"); + loc = Electrodynamics.rl("textures/screen//guidebook/buttons/" + name + ".png"); } @Override diff --git a/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentInventoryIO.java b/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentInventoryIO.java index 835fe990b..0920daa7e 100644 --- a/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentInventoryIO.java +++ b/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentInventoryIO.java @@ -4,7 +4,7 @@ import java.util.HashSet; import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.ITexture; import electrodynamics.prefab.inventory.container.types.GenericContainerBlockEntity; import electrodynamics.prefab.inventory.container.slot.item.SlotGeneric; @@ -172,7 +172,7 @@ public enum InventoryIOTextures implements ITexture { this.textureV = textureV; this.imageWidth = imageWidth; this.imageHeight = imageHeight; - this.loc = ResourceLocation.parse(References.ID + ":textures/screen/component/io/" + name + ".png"); + this.loc = Electrodynamics.rl("textures/screen/component/io/" + name + ".png"); } @Override diff --git a/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentProgress.java b/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentProgress.java index e5f13bb6b..80ea082c9 100644 --- a/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentProgress.java +++ b/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentProgress.java @@ -2,7 +2,7 @@ import java.util.function.DoubleSupplier; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.ITexture; import electrodynamics.prefab.screen.component.ScreenComponentGeneric; import net.minecraft.client.gui.GuiGraphics; @@ -13,7 +13,7 @@ @OnlyIn(Dist.CLIENT) public class ScreenComponentProgress extends ScreenComponentGeneric { - public static final ResourceLocation TEXTURE = ResourceLocation.parse(References.ID + ":textures/screen/component/progress.png"); + public static final ResourceLocation TEXTURE = Electrodynamics.rl("textures/screen/component/progress.png"); private final DoubleSupplier progressInfoHandler; private final ProgressBars bar; @@ -102,7 +102,7 @@ public enum ProgressTextures implements ITexture { this.textureV = textureV; this.imageWidth = imageWidth; this.imageHeight = imageHeight; - loc = ResourceLocation.parse(References.ID + ":textures/screen/component/progress/" + name + ".png"); + loc = Electrodynamics.rl("textures/screen/component/progress/" + name + ".png"); } @Override diff --git a/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentSlot.java b/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentSlot.java index ff6969459..73edad1d5 100644 --- a/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentSlot.java +++ b/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentSlot.java @@ -3,7 +3,7 @@ import java.util.ArrayList; import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.ITexture; import electrodynamics.api.screen.component.ISlotTexture; import electrodynamics.api.screen.component.TextSupplier; @@ -124,7 +124,7 @@ public enum SlotType implements ISlotTexture { this.textureV = textureV; this.imageWidth = imageWidth; this.imageHeight = imageHeight; - loc = ResourceLocation.parse(References.ID + ":textures/screen/component/slot/" + name + ".png"); + loc = Electrodynamics.rl("textures/screen/component/slot/" + name + ".png"); this.xOffset = xOffset; this.yOffset = yOffset; @@ -216,7 +216,7 @@ public enum IconType implements ITexture { this.textureV = textureV; this.imageWidth = imageWidth; this.imageHeight = imageHeight; - loc = ResourceLocation.parse(References.ID + ":textures/screen/component/icon/" + name + ".png"); + loc = Electrodynamics.rl("textures/screen/component/icon/" + name + ".png"); } @Override diff --git a/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentVerticalSlider.java b/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentVerticalSlider.java index 00fcdd38d..d0459ad10 100644 --- a/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentVerticalSlider.java +++ b/src/main/java/electrodynamics/prefab/screen/component/types/ScreenComponentVerticalSlider.java @@ -1,6 +1,6 @@ package electrodynamics.prefab.screen.component.types; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.ITexture; import electrodynamics.prefab.screen.component.ScreenComponentGeneric; import net.minecraft.client.gui.GuiGraphics; @@ -126,9 +126,9 @@ public boolean isSliderHeld() { } public static enum VerticalSliderTextures implements ITexture { - SLIDER_BACKGROUND(14, 30, 0, 0, 14, 30, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/component/verticalslider/vertical_slider_bg.png")), - SLIDER_ACTIVE(12, 15, 0, 0, 12, 15, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/component/verticalslider/vertical_slider_active.png")), - SLIDER_INACTIVE(12, 15, 0, 0, 12, 15, ResourceLocation.fromNamespaceAndPath(References.ID, "textures/screen/component/verticalslider/vertical_slider_inactive.png")); + SLIDER_BACKGROUND(14, 30, 0, 0, 14, 30, Electrodynamics.rl("textures/screen/component/verticalslider/vertical_slider_bg.png")), + SLIDER_ACTIVE(12, 15, 0, 0, 12, 15, Electrodynamics.rl("textures/screen/component/verticalslider/vertical_slider_active.png")), + SLIDER_INACTIVE(12, 15, 0, 0, 12, 15, Electrodynamics.rl("textures/screen/component/verticalslider/vertical_slider_inactive.png")); private final int textureWidth; private final int textureHeight; diff --git a/src/main/java/electrodynamics/prefab/screen/component/types/gauges/AbstractScreenComponentGauge.java b/src/main/java/electrodynamics/prefab/screen/component/types/gauges/AbstractScreenComponentGauge.java index 01e4a4218..c563e0375 100644 --- a/src/main/java/electrodynamics/prefab/screen/component/types/gauges/AbstractScreenComponentGauge.java +++ b/src/main/java/electrodynamics/prefab/screen/component/types/gauges/AbstractScreenComponentGauge.java @@ -4,7 +4,7 @@ import com.mojang.blaze3d.systems.RenderSystem; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.ITexture; import electrodynamics.prefab.screen.component.ScreenComponentGeneric; import electrodynamics.prefab.utilities.RenderingUtils; @@ -20,7 +20,7 @@ @OnlyIn(Dist.CLIENT) public abstract class AbstractScreenComponentGauge extends ScreenComponentGeneric { - public static final ResourceLocation TEXTURE = ResourceLocation.parse(References.ID + ":textures/screen/component/fluid.png"); + public static final ResourceLocation TEXTURE = Electrodynamics.rl("textures/screen/component/fluid.png"); public AbstractScreenComponentGauge(int x, int y) { super(GaugeTextures.BACKGROUND_DEFAULT, x, y); diff --git a/src/main/java/electrodynamics/prefab/screen/component/types/gauges/ScreenComponentGasGauge.java b/src/main/java/electrodynamics/prefab/screen/component/types/gauges/ScreenComponentGasGauge.java index 80c7d367e..d38cca8e4 100644 --- a/src/main/java/electrodynamics/prefab/screen/component/types/gauges/ScreenComponentGasGauge.java +++ b/src/main/java/electrodynamics/prefab/screen/component/types/gauges/ScreenComponentGasGauge.java @@ -4,6 +4,7 @@ import java.util.List; import java.util.function.Supplier; +import electrodynamics.Electrodynamics; import electrodynamics.api.capability.types.gas.IGasHandlerItem; import electrodynamics.api.gas.GasAction; import electrodynamics.api.gas.PropertyGasTank; @@ -26,7 +27,6 @@ import com.mojang.blaze3d.vertex.Tesselator; import com.mojang.blaze3d.vertex.VertexFormat; -import electrodynamics.api.References; import electrodynamics.api.electricity.formatting.ChatFormatter; import electrodynamics.api.electricity.formatting.DisplayUnit; import electrodynamics.api.gas.GasStack; @@ -46,7 +46,7 @@ public class ScreenComponentGasGauge extends ScreenComponentGeneric { - public static final ResourceLocation TEXTURE = ResourceLocation.parse(References.ID + ":textures/screen/component/gas.png"); + public static final ResourceLocation TEXTURE = Electrodynamics.rl("textures/screen/component/gas.png"); public final Supplier gasTank; diff --git a/src/main/java/electrodynamics/prefab/screen/component/types/guitab/ScreenComponentGuiTab.java b/src/main/java/electrodynamics/prefab/screen/component/types/guitab/ScreenComponentGuiTab.java index c9b18cdb5..12cfdd9d1 100644 --- a/src/main/java/electrodynamics/prefab/screen/component/types/guitab/ScreenComponentGuiTab.java +++ b/src/main/java/electrodynamics/prefab/screen/component/types/guitab/ScreenComponentGuiTab.java @@ -4,7 +4,7 @@ import javax.annotation.Nonnull; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.api.screen.ITexture; import electrodynamics.api.screen.component.TextPropertySupplier; import electrodynamics.prefab.screen.component.types.ScreenComponentSlot.IconType; @@ -15,7 +15,7 @@ public class ScreenComponentGuiTab extends AbstractScreenComponentInfo { - public static final ResourceLocation TEXTURE = ResourceLocation.parse(References.ID + ":textures/screen/component/screentabs.png"); + public static final ResourceLocation TEXTURE = Electrodynamics.rl("textures/screen/component/screentabs.png"); private final ITexture iconType; public ScreenComponentGuiTab(ITexture texture, ITexture icon, @Nonnull TextPropertySupplier infoHandler, int x, int y) { @@ -58,7 +58,7 @@ public enum GuiInfoTabTextures implements ITexture { this.textureV = textureV; this.imageWidth = imageWidth; this.imageHeight = imageHeight; - loc = ResourceLocation.parse(References.ID + ":textures/screen/component/guitab/" + name + ".png"); + loc = Electrodynamics.rl("textures/screen/component/guitab/" + name + ".png"); } @Override diff --git a/src/main/java/electrodynamics/prefab/utilities/RenderingUtils.java b/src/main/java/electrodynamics/prefab/utilities/RenderingUtils.java index 7471d53d4..e8e578a19 100644 --- a/src/main/java/electrodynamics/prefab/utilities/RenderingUtils.java +++ b/src/main/java/electrodynamics/prefab/utilities/RenderingUtils.java @@ -3,6 +3,7 @@ import java.util.Random; import java.util.function.Supplier; +import electrodynamics.Electrodynamics; import electrodynamics.common.block.states.ElectrodynamicsBlockStates; import org.joml.Matrix4f; @@ -124,7 +125,7 @@ public static void prepareRotationalTileModel(BlockEntity tile, PoseStack stack) } public static void renderSolidColorBox(PoseStack stack, Minecraft minecraft, VertexConsumer builder, AABB box, float r, float g, float b, float a, int light, int overlay, @Nonnull boolean[] renderedFaces) { - TextureAtlasSprite sp = minecraft.getTextureAtlas(InventoryMenu.BLOCK_ATLAS).apply(ResourceLocation.withDefaultNamespace("block/white_wool")); + TextureAtlasSprite sp = minecraft.getTextureAtlas(InventoryMenu.BLOCK_ATLAS).apply(Electrodynamics.vanillarl("block/white_wool")); renderFilledBox(stack, builder, box, r, g, b, a, sp.getU0(), sp.getV0(), sp.getU1(), sp.getV1(), light, overlay, renderedFaces); } @@ -352,7 +353,7 @@ public static void setShaderColor(Color color) { } public static RenderType beaconType() { - return RenderType.beaconBeam(ResourceLocation.withDefaultNamespace("textures/entity/beacon_beam.png"), true); + return RenderType.beaconBeam(Electrodynamics.vanillarl("textures/entity/beacon_beam.png"), true); } public static void resetShaderColor() { diff --git a/src/main/java/electrodynamics/prefab/utilities/object/CombustionFuelSource.java b/src/main/java/electrodynamics/prefab/utilities/object/CombustionFuelSource.java index 372cc39f3..8c5088452 100644 --- a/src/main/java/electrodynamics/prefab/utilities/object/CombustionFuelSource.java +++ b/src/main/java/electrodynamics/prefab/utilities/object/CombustionFuelSource.java @@ -4,6 +4,7 @@ import com.google.gson.JsonObject; +import electrodynamics.Electrodynamics; import electrodynamics.common.recipe.recipeutils.FluidIngredient; import net.minecraft.network.FriendlyByteBuf; import net.minecraft.resources.ResourceLocation; @@ -18,7 +19,7 @@ public class CombustionFuelSource { public static final String USAGE_AMOUNT = "usage_per_burn"; public static final String POWER_MULTIPLIER = "power_multiplier"; - public static final CombustionFuelSource EMPTY = new CombustionFuelSource(FluidTags.create(ResourceLocation.withDefaultNamespace("air")), 0, 0); + public static final CombustionFuelSource EMPTY = new CombustionFuelSource(FluidTags.create(Electrodynamics.vanillarl("air")), 0, 0); private FluidIngredient fuel; private double powerMultiplier; diff --git a/src/main/java/electrodynamics/registers/ElectrodynamicsArmorMaterials.java b/src/main/java/electrodynamics/registers/ElectrodynamicsArmorMaterials.java index 160775635..efe7a8652 100644 --- a/src/main/java/electrodynamics/registers/ElectrodynamicsArmorMaterials.java +++ b/src/main/java/electrodynamics/registers/ElectrodynamicsArmorMaterials.java @@ -1,5 +1,6 @@ package electrodynamics.registers; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import electrodynamics.common.item.gear.armor.types.*; import net.minecraft.core.Holder; @@ -21,18 +22,18 @@ public class ElectrodynamicsArmorMaterials { public static final DeferredRegister ARMOR_MATERIALS = DeferredRegister.create(Registries.ARMOR_MATERIAL, References.ID); - public static final DeferredHolder COMPOSITE_ARMOR = register("composite_armor", ItemCompositeArmor.DEFENSE_MAP, 0, 2.0F, 4.0F, ElectrodynamicsSounds.SOUND_EQUIPHEAVYARMOR, () -> Ingredient.EMPTY, ResourceLocation.parse(References.ID + ":textures/model/armor/compositearmor.png")); - public static final DeferredHolder COMBAT_ARMOR = register("combat_armor", ItemCombatArmor.DEFENSE_MAP, 0, 2.0F, 4.0F, ElectrodynamicsSounds.SOUND_EQUIPHEAVYARMOR, () -> Ingredient.EMPTY, ResourceLocation.parse(References.ID + ":textures/model/armor/combatarmor.png")); + public static final DeferredHolder COMPOSITE_ARMOR = register("composite_armor", ItemCompositeArmor.DEFENSE_MAP, 0, 2.0F, 4.0F, ElectrodynamicsSounds.SOUND_EQUIPHEAVYARMOR, () -> Ingredient.EMPTY, Electrodynamics.rl("textures/model/armor/compositearmor.png")); + public static final DeferredHolder COMBAT_ARMOR = register("combat_armor", ItemCombatArmor.DEFENSE_MAP, 0, 2.0F, 4.0F, ElectrodynamicsSounds.SOUND_EQUIPHEAVYARMOR, () -> Ingredient.EMPTY, Electrodynamics.rl("textures/model/armor/combatarmor.png")); - public static final DeferredHolder NVGS = register("nvgs", ItemNightVisionGoggles.DEFENSE_MAP, 0, 0, 0, SoundEvents.ARMOR_EQUIP_IRON, () -> Ingredient.EMPTY, ResourceLocation.parse(References.ID + ":textures/model/armor/nightvisiongogglesoff.png")); + public static final DeferredHolder NVGS = register("nvgs", ItemNightVisionGoggles.DEFENSE_MAP, 0, 0, 0, SoundEvents.ARMOR_EQUIP_IRON, () -> Ingredient.EMPTY, Electrodynamics.rl("textures/model/armor/nightvisiongogglesoff.png")); - public static final DeferredHolder JETPACK = register("jetpack", ItemJetpack.DEFENSE_MAP, 0, 0, 0, SoundEvents.ARMOR_EQUIP_IRON, () -> Ingredient.EMPTY, ResourceLocation.parse(References.ID + ":textures/model/armor/jetpack.png")); + public static final DeferredHolder JETPACK = register("jetpack", ItemJetpack.DEFENSE_MAP, 0, 0, 0, SoundEvents.ARMOR_EQUIP_IRON, () -> Ingredient.EMPTY, Electrodynamics.rl("textures/model/armor/jetpack.png")); - public static final DeferredHolder SERVO_LEGGINGS = register("server_leggings", ItemServoLeggings.DEFENSE_MAP, 0, 0, 0, SoundEvents.ARMOR_EQUIP_IRON, () -> Ingredient.EMPTY, ResourceLocation.parse(References.ID + ":textures/model/armor/servoleggings.png")); + public static final DeferredHolder SERVO_LEGGINGS = register("server_leggings", ItemServoLeggings.DEFENSE_MAP, 0, 0, 0, SoundEvents.ARMOR_EQUIP_IRON, () -> Ingredient.EMPTY, Electrodynamics.rl("textures/model/armor/servoleggings.png")); - public static final DeferredHolder HYDRAULIC_BOOTS = register("hydraulic_boots", ItemHydraulicBoots.DEFENSE_MAP, 0, 0, 0, SoundEvents.ARMOR_EQUIP_IRON, () -> Ingredient.EMPTY, ResourceLocation.parse(References.ID + ":textures/model/armor/hydraulicboots.png")); + public static final DeferredHolder HYDRAULIC_BOOTS = register("hydraulic_boots", ItemHydraulicBoots.DEFENSE_MAP, 0, 0, 0, SoundEvents.ARMOR_EQUIP_IRON, () -> Ingredient.EMPTY, Electrodynamics.rl("textures/model/armor/hydraulicboots.png")); - public static final DeferredHolder RUBBER_BOOTS = register("rubber_boots", ItemRubberArmor.DEFENSE_MAP, 0, 0, 0, SoundEvents.ARMOR_EQUIP_LEATHER, () -> Ingredient.of(ElectrodynamicsItems.ITEM_INSULATION.get()), ResourceLocation.parse(References.ID + ":rubberarmor")); + public static final DeferredHolder RUBBER_BOOTS = register("rubber_boots", ItemRubberArmor.DEFENSE_MAP, 0, 0, 0, SoundEvents.ARMOR_EQUIP_LEATHER, () -> Ingredient.of(ElectrodynamicsItems.ITEM_INSULATION.get()), Electrodynamics.rl("rubberarmor")); private static DeferredHolder register(String name, Map slotMap, int enchantValue, float toughness, float knockbackResistance, Holder sound, Supplier repairIngredient, ResourceLocation texture) { return ARMOR_MATERIALS.register(name, () -> new ArmorMaterial(slotMap, enchantValue, sound, repairIngredient, List.of(new ArmorMaterial.Layer(texture)), toughness, knockbackResistance)); diff --git a/src/main/java/electrodynamics/registers/ElectrodynamicsBlocks.java b/src/main/java/electrodynamics/registers/ElectrodynamicsBlocks.java index fff1426c7..c19e2ca34 100644 --- a/src/main/java/electrodynamics/registers/ElectrodynamicsBlocks.java +++ b/src/main/java/electrodynamics/registers/ElectrodynamicsBlocks.java @@ -103,23 +103,23 @@ public boolean usesLit() { public static final BulkDeferredHolder BLOCKS_RESOURCE = new BulkDeferredHolder<>(SubtypeResourceBlock.values(), subtype -> BLOCKS.register(subtype.tag(), () -> new Block(subtype.getProperties().strength(subtype.getHardness(), subtype.getResistance()).sound(subtype.getSoundType())))); public static final BulkDeferredHolder BLOCKS_GASPIPE = new BulkDeferredHolder<>(SubtypeGasPipe.values(), subtype -> BLOCKS.register(subtype.tag(), () -> new BlockGasPipe(subtype))); - public static final DeferredHolder BLOCK_MULTISUBNODE = BLOCKS.register("multisubnode", () -> new BlockMultiSubnode()); - public static final DeferredHolder BLOCK_SEISMICMARKER = BLOCKS.register("seismicmarker", () -> new BlockSeismicMarker()); + public static final DeferredHolder BLOCK_MULTISUBNODE = BLOCKS.register("multisubnode", BlockMultiSubnode::new); + public static final DeferredHolder BLOCK_SEISMICMARKER = BLOCKS.register("seismicmarker", BlockSeismicMarker::new); public static final DeferredHolder BLOCK_FRAME = BLOCKS.register("frame", () -> new BlockFrame(0)); public static final DeferredHolder BLOCK_FRAME_CORNER = BLOCKS.register("framecorner", () -> new BlockFrame(1)); - public static final DeferredHolder BLOCK_LOGISTICALMANAGER = BLOCKS.register("logisticalmanager", () -> new BlockLogisticalManager()); + public static final DeferredHolder BLOCK_LOGISTICALMANAGER = BLOCKS.register("logisticalmanager", BlockLogisticalManager::new); public static final DeferredHolder BLOCK_COMPRESSOR = BLOCKS.register("compressor", () -> new BlockCompressor(false)); public static final DeferredHolder BLOCK_DECOMPRESSOR = BLOCKS.register("decompressor", () -> new BlockCompressor(true)); public static final DeferredHolder BLOCK_ADVANCEDCOMPRESSOR = BLOCKS.register("advancedcompressor", () -> new BlockAdvancedCompressor(false)); public static final DeferredHolder BLOCK_ADVANCEDDECOMPRESSOR = BLOCKS.register("advanceddecompressor", () -> new BlockAdvancedCompressor(true)); - public static final DeferredHolder BLOCK_COMPRESSOR_SIDE = BLOCKS.register("compressorside", () -> new BlockGasTransformerSide()); - public static final DeferredHolder BLOCK_COMPRESSOR_ADDONTANK = BLOCKS.register("compressoraddontank", () -> new BlockGasTransformerAddonTank()); - public static final DeferredHolder BLOCK_THERMOELECTRICMANIPULATOR = BLOCKS.register("thermoelectricmanipulator", () -> new BlockThermoelectricManipulator()); - public static final DeferredHolder BLOCK_ADVANCED_THERMOELECTRICMANIPULATOR = BLOCKS.register("advancedthermoelectricmanipulator", () -> new BlockAdvancedThermoelectricManipulator()); + public static final DeferredHolder BLOCK_COMPRESSOR_SIDE = BLOCKS.register("compressorside", BlockGasTransformerSide::new); + public static final DeferredHolder BLOCK_COMPRESSOR_ADDONTANK = BLOCKS.register("compressoraddontank", BlockGasTransformerAddonTank::new); + public static final DeferredHolder BLOCK_THERMOELECTRICMANIPULATOR = BLOCKS.register("thermoelectricmanipulator", BlockThermoelectricManipulator::new); + public static final DeferredHolder BLOCK_ADVANCED_THERMOELECTRICMANIPULATOR = BLOCKS.register("advancedthermoelectricmanipulator", BlockAdvancedThermoelectricManipulator::new); public static final DeferredHolder BLOCK_STEELSCAFFOLDING = BLOCKS.register("steelscaffold", () -> new BlockScaffold(Blocks.IRON_BLOCK.properties().requiresCorrectToolForDrops().strength(2.0F, 3.0F).sound(SoundType.METAL).noOcclusion())); public static final DeferredHolder BLOCK_CHEMICALREACTOREXTRA_MIDDLE = BLOCKS.register("chemicalreactorextramiddle", () -> new BlockChemicalReactorExtra(BlockChemicalReactorExtra.Location.MIDDLE)); public static final DeferredHolder BLOCK_CHEMICALREACTOREXTRA_TOP = BLOCKS.register("chemicalreactorextratop", () -> new BlockChemicalReactorExtra(BlockChemicalReactorExtra.Location.TOP)); - public static final DeferredHolder BLOCK_MULTIBLOCK_SLAVE = BLOCKS.register("multiblockslave", () -> new BlockMultiblockSlave()); + public static final DeferredHolder BLOCK_MULTIBLOCK_SLAVE = BLOCKS.register("multiblockslave", BlockMultiblockSlave::new); } diff --git a/src/main/java/electrodynamics/registers/ElectrodynamicsCapabilities.java b/src/main/java/electrodynamics/registers/ElectrodynamicsCapabilities.java index 002494404..7a857c11c 100644 --- a/src/main/java/electrodynamics/registers/ElectrodynamicsCapabilities.java +++ b/src/main/java/electrodynamics/registers/ElectrodynamicsCapabilities.java @@ -1,5 +1,6 @@ package electrodynamics.registers; +import electrodynamics.Electrodynamics; import electrodynamics.common.item.gear.armor.types.ItemCombatArmor; import electrodynamics.common.item.gear.tools.electric.utils.ItemRailgun; import electrodynamics.compatibility.mekanism.MekanismHandler; @@ -30,7 +31,6 @@ import electrodynamics.common.item.gear.tools.electric.ItemSeismicScanner; import electrodynamics.prefab.tile.GenericTile; import net.minecraft.core.Direction; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.item.ItemStack; import net.minecraft.world.level.block.entity.BlockEntityType; import net.neoforged.neoforge.capabilities.BlockCapability; @@ -44,12 +44,12 @@ public class ElectrodynamicsCapabilities { public static final double DEFAULT_VOLTAGE = 120.0; public static final String LOCATION_KEY = "location"; - public static final BlockCapability CAPABILITY_ELECTRODYNAMIC_BLOCK = BlockCapability.createSided(id("electrodynamicblock"), ICapabilityElectrodynamic.class); + public static final BlockCapability CAPABILITY_ELECTRODYNAMIC_BLOCK = BlockCapability.createSided(Electrodynamics.rl("electrodynamicblock"), ICapabilityElectrodynamic.class); - public static final ItemCapability CAPABILITY_LOCATIONSTORAGE_ITEM = ItemCapability.createVoid(id("locationstorageitem"), ILocationStorage.class); + public static final ItemCapability CAPABILITY_LOCATIONSTORAGE_ITEM = ItemCapability.createVoid(Electrodynamics.rl("locationstorageitem"), ILocationStorage.class); - public static final ItemCapability CAPABILITY_GASHANDLER_ITEM = ItemCapability.createVoid(id("gashandleritem"), IGasHandlerItem.class); - public static final BlockCapability CAPABILITY_GASHANDLER_BLOCK = BlockCapability.createSided(id("gashandlerblock"), IGasHandler.class); + public static final ItemCapability CAPABILITY_GASHANDLER_ITEM = ItemCapability.createVoid(Electrodynamics.rl("gashandleritem"), IGasHandlerItem.class); + public static final BlockCapability CAPABILITY_GASHANDLER_BLOCK = BlockCapability.createSided(Electrodynamics.rl("gashandlerblock"), IGasHandler.class); @SubscribeEvent public static void register(RegisterCapabilitiesEvent event) { @@ -209,7 +209,4 @@ public static void register(RegisterCapabilitiesEvent event) { } - private static final ResourceLocation id(String name) { - return ResourceLocation.fromNamespaceAndPath(References.ID, name); - } } diff --git a/src/main/java/electrodynamics/registers/ElectrodynamicsDamageTypes.java b/src/main/java/electrodynamics/registers/ElectrodynamicsDamageTypes.java index b93d2076f..f0673176f 100644 --- a/src/main/java/electrodynamics/registers/ElectrodynamicsDamageTypes.java +++ b/src/main/java/electrodynamics/registers/ElectrodynamicsDamageTypes.java @@ -1,10 +1,9 @@ package electrodynamics.registers; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import net.minecraft.core.registries.Registries; import net.minecraft.data.worldgen.BootstrapContext; import net.minecraft.resources.ResourceKey; -import net.minecraft.resources.ResourceLocation; import net.minecraft.world.damagesource.DamageEffects; import net.minecraft.world.damagesource.DamageScaling; import net.minecraft.world.damagesource.DamageType; @@ -18,7 +17,7 @@ public class ElectrodynamicsDamageTypes { public static final ResourceKey PLASMA_BOLT = create("plasma_bolt"); public static ResourceKey create(String name) { - return ResourceKey.create(Registries.DAMAGE_TYPE, ResourceLocation.fromNamespaceAndPath(References.ID, name)); + return ResourceKey.create(Registries.DAMAGE_TYPE, Electrodynamics.rl(name)); } public static void registerTypes(BootstrapContext context) { diff --git a/src/main/java/electrodynamics/registers/ElectrodynamicsFeatures.java b/src/main/java/electrodynamics/registers/ElectrodynamicsFeatures.java index 252b8bf24..3b7d2a756 100644 --- a/src/main/java/electrodynamics/registers/ElectrodynamicsFeatures.java +++ b/src/main/java/electrodynamics/registers/ElectrodynamicsFeatures.java @@ -2,7 +2,7 @@ import java.util.List; -import electrodynamics.api.References; +import electrodynamics.Electrodynamics; import electrodynamics.common.block.subtype.SubtypeOre; import electrodynamics.common.block.subtype.SubtypeOreDeepslate; import electrodynamics.common.settings.OreConfig; @@ -15,7 +15,6 @@ import net.minecraft.data.worldgen.features.FeatureUtils; import net.minecraft.data.worldgen.placement.PlacementUtils; import net.minecraft.resources.ResourceKey; -import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.BiomeTags; import net.minecraft.tags.BlockTags; import net.minecraft.world.level.biome.Biome; @@ -79,7 +78,7 @@ public static void registerConfigured(BootstrapContext> } private static ResourceKey> configured(String name) { - return ResourceKey.create(Registries.CONFIGURED_FEATURE, ResourceLocation.fromNamespaceAndPath(References.ID, name)); + return ResourceKey.create(Registries.CONFIGURED_FEATURE, Electrodynamics.rl(name)); } private static OreConfiguration dualOre(SubtypeOre ore, SubtypeOreDeepslate deepOre) { @@ -131,7 +130,7 @@ public static void registerPlaced(BootstrapContext context) { } private static ResourceKey placed(String name) { - return ResourceKey.create(Registries.PLACED_FEATURE, ResourceLocation.fromNamespaceAndPath(References.ID, name)); + return ResourceKey.create(Registries.PLACED_FEATURE, Electrodynamics.rl(name)); } private static List orePlacement(int count, int minY, int maxY) { @@ -185,7 +184,7 @@ public static void registerModifiers(BootstrapContext context) { } private static ResourceKey modifier(String name) { - return ResourceKey.create(NeoForgeRegistries.Keys.BIOME_MODIFIERS, ResourceLocation.fromNamespaceAndPath(References.ID, name)); + return ResourceKey.create(NeoForgeRegistries.Keys.BIOME_MODIFIERS, Electrodynamics.rl(name)); } } diff --git a/src/main/java/electrodynamics/registers/ElectrodynamicsGases.java b/src/main/java/electrodynamics/registers/ElectrodynamicsGases.java index 244feb075..7d0871895 100644 --- a/src/main/java/electrodynamics/registers/ElectrodynamicsGases.java +++ b/src/main/java/electrodynamics/registers/ElectrodynamicsGases.java @@ -2,6 +2,7 @@ import java.util.concurrent.ConcurrentHashMap; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import electrodynamics.api.gas.Gas; import electrodynamics.prefab.utilities.ElectroTextUtils; @@ -20,7 +21,7 @@ public class ElectrodynamicsGases { public static final ConcurrentHashMap, Gas> MAPPED_GASSES = new ConcurrentHashMap<>(); - public static final ResourceLocation GAS_REGISTRY_LOC = ResourceLocation.fromNamespaceAndPath(References.ID, "gases"); + public static final ResourceLocation GAS_REGISTRY_LOC = Electrodynamics.rl("gases"); public static final ResourceKey> GAS_REGISTRY_KEY = ResourceKey.createRegistryKey(GAS_REGISTRY_LOC); public static final DeferredRegister GASES = DeferredRegister.create(GAS_REGISTRY_KEY, References.ID); public static final Registry GAS_REGISTRY = ElectrodynamicsGases.GASES.makeRegistry(builder -> builder.sync(true)); diff --git a/src/main/java/electrodynamics/registers/ElectrodynamicsRuleTestTypes.java b/src/main/java/electrodynamics/registers/ElectrodynamicsRuleTestTypes.java index 97f0c3464..7355028ad 100644 --- a/src/main/java/electrodynamics/registers/ElectrodynamicsRuleTestTypes.java +++ b/src/main/java/electrodynamics/registers/ElectrodynamicsRuleTestTypes.java @@ -1,8 +1,5 @@ package electrodynamics.registers; -import com.mojang.serialization.Codec; - -import com.mojang.serialization.MapCodec; import electrodynamics.api.References; import electrodynamics.common.world.ruletests.RuleTestOre; import net.minecraft.core.registries.Registries; @@ -14,13 +11,6 @@ public class ElectrodynamicsRuleTestTypes { public static final DeferredRegister> RULE_TEST_TYPES = DeferredRegister.create(Registries.RULE_TEST, References.ID); - public static final DeferredHolder, RuleTestType> TEST_CONFIG_ORESPAWN = RULE_TEST_TYPES.register("configorespawn", () -> new RuleTestType() { - - @Override - public MapCodec codec() { - return RuleTestOre.CODEC; - } - - }); + public static final DeferredHolder, RuleTestType> TEST_CONFIG_ORESPAWN = RULE_TEST_TYPES.register("configorespawn", () -> (RuleTestType) () -> RuleTestOre.CODEC); } diff --git a/src/main/java/electrodynamics/registers/ElectrodynamicsSounds.java b/src/main/java/electrodynamics/registers/ElectrodynamicsSounds.java index 2f7ebd9c1..5384ea712 100644 --- a/src/main/java/electrodynamics/registers/ElectrodynamicsSounds.java +++ b/src/main/java/electrodynamics/registers/ElectrodynamicsSounds.java @@ -1,8 +1,8 @@ package electrodynamics.registers; +import electrodynamics.Electrodynamics; import electrodynamics.api.References; import net.minecraft.core.registries.Registries; -import net.minecraft.resources.ResourceLocation; import net.minecraft.sounds.SoundEvent; import net.neoforged.neoforge.registries.DeferredHolder; import net.neoforged.neoforge.registries.DeferredRegister; @@ -42,6 +42,6 @@ public class ElectrodynamicsSounds { public static final DeferredHolder SOUND_TRANSFORMERHUM = sound("transformerhum"); private static DeferredHolder sound(String name) { - return SOUNDS.register(name, () -> SoundEvent.createFixedRangeEvent(ResourceLocation.parse(References.ID + ":" + name), 16.0F)); + return SOUNDS.register(name, () -> SoundEvent.createFixedRangeEvent(Electrodynamics.rl(name), 16.0F)); } } From 1ec379b6bf9a69ebb58f9cbbf3b3aaf41a5dee95 Mon Sep 17 00:00:00 2001 From: skip999 Date: Thu, 23 Jan 2025 17:26:05 -0600 Subject: [PATCH 2/2] formatting changes --- runs/client/usercache.json | 2 +- .../parent/IMultiblockParentBlock.java | 40 ++++ .../parent/IMultiblockParentTile.java | 8 +- .../electrodynamics/api/tile/IMachine.java | 5 +- .../api/tile/MachineProperties.java | 7 +- .../common/block/BlockMachine.java | 8 +- .../common/block/subtype/SubtypeMachine.java | 53 +++-- .../common/tile/TileMultiSubnode.java | 2 +- .../generators/TileAdvancedSolarPanel.java | 6 +- .../generators/TileWindmill.java | 6 +- .../machines/charger/GenericTileCharger.java | 211 +++++++++++------- .../prefab/properties/PropertyTypes.java | 13 ++ 12 files changed, 238 insertions(+), 123 deletions(-) diff --git a/runs/client/usercache.json b/runs/client/usercache.json index 4e5e82172..1c01edf42 100644 --- a/runs/client/usercache.json +++ b/runs/client/usercache.json @@ -1 +1 @@ -[{"name":"Dev","uuid":"380df991-f603-344c-a090-369bad2a924a","expiresOn":"2025-02-14 16:53:57 -0600"}] \ No newline at end of file +[{"name":"Dev","uuid":"380df991-f603-344c-a090-369bad2a924a","expiresOn":"2025-02-19 16:54:57 -0600"}] \ No newline at end of file diff --git a/src/main/java/electrodynamics/api/multiblock/subnodebased/parent/IMultiblockParentBlock.java b/src/main/java/electrodynamics/api/multiblock/subnodebased/parent/IMultiblockParentBlock.java index 5a3b24f77..e032b1db7 100644 --- a/src/main/java/electrodynamics/api/multiblock/subnodebased/parent/IMultiblockParentBlock.java +++ b/src/main/java/electrodynamics/api/multiblock/subnodebased/parent/IMultiblockParentBlock.java @@ -2,9 +2,13 @@ import electrodynamics.api.multiblock.subnodebased.Subnode; import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; import net.minecraft.world.level.LevelReader; import net.minecraft.world.level.block.state.BlockState; +import javax.annotation.Nullable; +import java.util.HashMap; + public interface IMultiblockParentBlock { boolean hasMultiBlock(); @@ -18,4 +22,40 @@ default boolean isValidMultiblockPlacement(BlockState state, LevelReader worldIn } return true; } + + public static class SubnodeWrapper { + + public static final SubnodeWrapper EMPTY = new SubnodeWrapper(new Subnode[0]); + private HashMap subnodeMap = new HashMap<>(); + private Subnode[] omni = null; + + private SubnodeWrapper(Subnode[] omni) { + this.omni = omni; + } + + private SubnodeWrapper(Subnode[] north, Subnode[] east, Subnode[] south, Subnode[] west) { + subnodeMap.put(Direction.NORTH, north); + subnodeMap.put(Direction.EAST, east); + subnodeMap.put(Direction.SOUTH, south); + subnodeMap.put(Direction.WEST, west); + } + + public Subnode[] getSubnodes(@Nullable Direction dir) { + if(omni != null) { + return omni; + } + return subnodeMap.getOrDefault(dir, new Subnode[0]); + } + + public static SubnodeWrapper createOmni(Subnode[] omni) { + return new SubnodeWrapper(omni); + } + + public static SubnodeWrapper createDirectional(Subnode[] north, Subnode[] east, Subnode[] south, Subnode[] west) { + return new SubnodeWrapper(north, east, south, west); + } + + + } + } diff --git a/src/main/java/electrodynamics/api/multiblock/subnodebased/parent/IMultiblockParentTile.java b/src/main/java/electrodynamics/api/multiblock/subnodebased/parent/IMultiblockParentTile.java index 310c968bf..9f915afd5 100644 --- a/src/main/java/electrodynamics/api/multiblock/subnodebased/parent/IMultiblockParentTile.java +++ b/src/main/java/electrodynamics/api/multiblock/subnodebased/parent/IMultiblockParentTile.java @@ -37,7 +37,7 @@ public interface IMultiblockParentTile { default void onNodeReplaced(Level world, BlockPos pos, boolean update) { - Subnode[] subnodes = getSubNodes(); + Subnode[] subnodes = getSubNodes().getSubnodes(getFacingDirection()); Subnode subnode; @@ -79,7 +79,7 @@ default void onNodePlaced(Level world, BlockPos pos, BlockState state, LivingEnt onNodeReplaced(world, pos, true); } - Subnode[] getSubNodes(); + IMultiblockParentBlock.SubnodeWrapper getSubNodes(); default void onSubnodeNeighborChange(TileMultiSubnode subnode, BlockPos subnodeChangingNeighbor, boolean blockStateTrigger) { @@ -103,9 +103,7 @@ default int getSubdnodeComparatorSignal(TileMultiSubnode subnode) { void onSubnodeDestroyed(TileMultiSubnode subnode); - default Direction getFacingDirection() { - return Direction.NORTH; - } + Direction getFacingDirection(); default int getDirectSignal(TileMultiSubnode subnode, Direction dir) { return 0; diff --git a/src/main/java/electrodynamics/api/tile/IMachine.java b/src/main/java/electrodynamics/api/tile/IMachine.java index 34499004b..7d1c3edae 100644 --- a/src/main/java/electrodynamics/api/tile/IMachine.java +++ b/src/main/java/electrodynamics/api/tile/IMachine.java @@ -1,6 +1,7 @@ package electrodynamics.api.tile; import electrodynamics.api.multiblock.subnodebased.Subnode; +import electrodynamics.api.multiblock.subnodebased.parent.IMultiblockParentBlock; import electrodynamics.common.block.voxelshapes.VoxelShapeProvider; import net.minecraft.world.level.block.RenderShape; import net.minecraft.world.level.block.entity.BlockEntity; @@ -20,8 +21,8 @@ public interface IMachine { public boolean isPlayerStorable(); - public default Subnode[] getSubnodes() { - return new Subnode[]{}; + public default IMultiblockParentBlock.SubnodeWrapper getSubnodes() { + return IMultiblockParentBlock.SubnodeWrapper.EMPTY; } public VoxelShapeProvider getVoxelShapeProvider(); diff --git a/src/main/java/electrodynamics/api/tile/MachineProperties.java b/src/main/java/electrodynamics/api/tile/MachineProperties.java index 85fe913f7..6dfaabaab 100644 --- a/src/main/java/electrodynamics/api/tile/MachineProperties.java +++ b/src/main/java/electrodynamics/api/tile/MachineProperties.java @@ -1,6 +1,7 @@ package electrodynamics.api.tile; import electrodynamics.api.multiblock.subnodebased.Subnode; +import electrodynamics.api.multiblock.subnodebased.parent.IMultiblockParentBlock; import electrodynamics.common.block.voxelshapes.VoxelShapeProvider; import net.minecraft.world.level.block.RenderShape; @@ -12,7 +13,7 @@ public class MachineProperties { public RenderShape renderShape = RenderShape.MODEL; public boolean propegatesLightDown = false; public boolean isPlayerStorable = false; - public Subnode[] subnodes = new Subnode[0]; + public IMultiblockParentBlock.SubnodeWrapper wrapper = IMultiblockParentBlock.SubnodeWrapper.EMPTY; public VoxelShapeProvider provider = VoxelShapeProvider.DEFAULT; public static final MachineProperties DEFAULT = new MachineProperties(); @@ -41,9 +42,9 @@ public MachineProperties setPlayerStorable() { return this; } - public MachineProperties setSubnodes(Subnode[] subnodes) { + public MachineProperties setSubnodes(IMultiblockParentBlock.SubnodeWrapper wrapper) { isMultiblock = true; - this.subnodes = subnodes; + this.wrapper = wrapper; return this; } diff --git a/src/main/java/electrodynamics/common/block/BlockMachine.java b/src/main/java/electrodynamics/common/block/BlockMachine.java index c060b4037..b6dc1ddd3 100644 --- a/src/main/java/electrodynamics/common/block/BlockMachine.java +++ b/src/main/java/electrodynamics/common/block/BlockMachine.java @@ -2,15 +2,14 @@ import com.mojang.serialization.MapCodec; -import electrodynamics.api.multiblock.subnodebased.Subnode; import electrodynamics.api.multiblock.subnodebased.parent.IMultiblockParentBlock; import electrodynamics.api.multiblock.subnodebased.parent.IMultiblockParentTile; import electrodynamics.api.tile.IMachine; import electrodynamics.common.block.states.ElectrodynamicsBlockStates; -import electrodynamics.common.block.subtype.SubtypeMachine; import electrodynamics.common.tile.machines.quarry.TileQuarry; import electrodynamics.prefab.block.GenericMachineBlock; import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; import net.minecraft.world.entity.LivingEntity; import net.minecraft.world.entity.player.Player; import net.minecraft.world.item.ItemStack; @@ -25,11 +24,8 @@ import net.minecraft.world.level.block.state.BlockState; import net.minecraft.world.level.block.state.StateDefinition.Builder; import net.minecraft.world.phys.HitResult; -import net.minecraft.world.phys.shapes.Shapes; -import net.minecraft.world.phys.shapes.VoxelShape; public class BlockMachine extends GenericMachineBlock implements IMultiblockParentBlock { - public static final VoxelShape[] STANDARD_CUBE = new VoxelShape[]{Shapes.block(), Shapes.block(), Shapes.block(), Shapes.block(), Shapes.block(), Shapes.block()}; private final IMachine machine; @@ -54,7 +50,7 @@ public boolean propagatesSkylightDown(BlockState pState, BlockGetter pLevel, Blo public boolean canSurvive(BlockState state, LevelReader worldIn, BlockPos pos) { if(machine.isMultiblock()) { - return isValidMultiblockPlacement(state, worldIn, pos, machine.getSubnodes()); + return isValidMultiblockPlacement(state, worldIn, pos, machine.getSubnodes().getSubnodes(state.hasProperty(ElectrodynamicsBlockStates.FACING) ? state.getValue(ElectrodynamicsBlockStates.FACING) : Direction.NORTH)); } return super.canSurvive(state, worldIn, pos); diff --git a/src/main/java/electrodynamics/common/block/subtype/SubtypeMachine.java b/src/main/java/electrodynamics/common/block/subtype/SubtypeMachine.java index 00fb54e44..c62cfce32 100644 --- a/src/main/java/electrodynamics/common/block/subtype/SubtypeMachine.java +++ b/src/main/java/electrodynamics/common/block/subtype/SubtypeMachine.java @@ -2,6 +2,7 @@ import electrodynamics.api.ISubtype; import electrodynamics.api.multiblock.subnodebased.Subnode; +import electrodynamics.api.multiblock.subnodebased.parent.IMultiblockParentBlock; import electrodynamics.api.tile.IMachine; import electrodynamics.api.tile.MachineProperties; import electrodynamics.common.block.voxelshapes.ElectrodynamicsVoxelShapes; @@ -93,13 +94,13 @@ public enum SubtypeMachine implements ISubtype, IMachine { downgradetransformer(true, TileDowngradeTransformer::new, MachineProperties.builder().setShapeProvider(ElectrodynamicsVoxelShapes.DOWNGRADE_TRANSFORMER)), upgradetransformer(true, TileUpgradeTransformer::new, MachineProperties.builder().setShapeProvider(ElectrodynamicsVoxelShapes.UPGRADE_TRANSFORMER)), solarpanel(true, TileSolarPanel::new, MachineProperties.builder().setShapeProvider(ElectrodynamicsVoxelShapes.SOLAR_PANEL)), - advancedsolarpanel(true, TileAdvancedSolarPanel::new, MachineProperties.builder().setSubnodes(Subnodes.SUBNODES_ADVANCEDSOLARPANEL).setShapeProvider(ElectrodynamicsVoxelShapes.ADVANCED_SOLAR_PANEL)), + advancedsolarpanel(true, TileAdvancedSolarPanel::new, MachineProperties.builder().setSubnodes(Subnodes.ADVANCEDSOLARPANEL).setShapeProvider(ElectrodynamicsVoxelShapes.ADVANCED_SOLAR_PANEL)), electricpump(true, TileElectricPump::new, MachineProperties.builder().setShapeProvider(ElectrodynamicsVoxelShapes.ELECTRIC_PUMP)), thermoelectricgenerator(true, TileThermoelectricGenerator::new, MachineProperties.builder().setShapeProvider(ElectrodynamicsVoxelShapes.THERMOELECTRIC_GENERATOR)), fermentationplant(true, TileFermentationPlant::new, MachineProperties.builder().setShapeProvider(ElectrodynamicsVoxelShapes.FERMENTATION_PLANT)), combustionchamber(true, TileCombustionChamber::new, MachineProperties.builder().setShapeProvider(ElectrodynamicsVoxelShapes.COMBUSTION_CHAMBER)), hydroelectricgenerator(true, TileHydroelectricGenerator::new, MachineProperties.builder().setShapeProvider(ElectrodynamicsVoxelShapes.HYDROELECTRIC_GENERATOR)), - windmill(true, TileWindmill::new, MachineProperties.builder().setSubnodes(Subnodes.SUBNODES_WINDMILL).setShapeProvider(ElectrodynamicsVoxelShapes.WINDMILL)), + windmill(true, TileWindmill::new, MachineProperties.builder().setSubnodes(Subnodes.WINDMILL).setShapeProvider(ElectrodynamicsVoxelShapes.WINDMILL)), mineralwasher(true, TileMineralWasher::new), chemicalmixer(true, TileChemicalMixer::new, MachineProperties.builder().setRenderShape(RenderShape.ENTITYBLOCK_ANIMATED)), chemicalcrystallizer(true, TileChemicalCrystallizer::new, MachineProperties.builder().setShapeProvider(ElectrodynamicsVoxelShapes.CHEMICAL_CRYSTALIZER)), @@ -201,8 +202,8 @@ public boolean isPlayerStorable() { } @Override - public Subnode[] getSubnodes() { - return properties.subnodes; + public IMultiblockParentBlock.SubnodeWrapper getSubnodes() { + return properties.wrapper; } @Override @@ -222,27 +223,33 @@ public boolean showInItemGroup() { public static class Subnodes { - public static final Subnode[] SUBNODES_WINDMILL = {new Subnode( + public static final IMultiblockParentBlock.SubnodeWrapper WINDMILL = IMultiblockParentBlock.SubnodeWrapper.createOmni( // - new BlockPos(0, 1, 0), - // - new VoxelShape[]{ - // - Shapes.block(), - // - Shapes.block(), - // - Shapes.or(Block.box(5, 0, 5, 11, 16, 11), Block.box(5, 10, 3, 11, 16, 13)), - // - Shapes.or(Block.box(5, 0, 5, 11, 16, 11), Block.box(5, 10, 3, 11, 16, 13)), + new Subnode[]{ // - Shapes.or(Block.box(5, 0, 5, 11, 16, 11), Block.box(3, 10, 5, 13, 16, 11)), + new Subnode( + // + new BlockPos(0, 1, 0), + // + new VoxelShape[]{ + // + Shapes.block(), + // + Shapes.block(), + // + Shapes.or(Block.box(5, 0, 5, 11, 16, 11), Block.box(5, 10, 3, 11, 16, 13)), + // + Shapes.or(Block.box(5, 0, 5, 11, 16, 11), Block.box(5, 10, 3, 11, 16, 13)), + // + Shapes.or(Block.box(5, 0, 5, 11, 16, 11), Block.box(3, 10, 5, 13, 16, 11)), + // + Shapes.or(Block.box(5, 0, 5, 11, 16, 11), Block.box(3, 10, 5, 13, 16, 11)) + }) // - Shapes.or(Block.box(5, 0, 5, 11, 16, 11), Block.box(3, 10, 5, 13, 16, 11)) - }) - }; - - public static final Subnode[] SUBNODES_ADVANCEDSOLARPANEL = make(() -> { + } + // + ); + public static final IMultiblockParentBlock.SubnodeWrapper ADVANCEDSOLARPANEL = IMultiblockParentBlock.SubnodeWrapper.createOmni(make(() -> { Subnode[] subnodes = new Subnode[9]; @@ -269,7 +276,7 @@ public static class Subnodes { return subnodes; - }); + })); public static Subnode[] make(Supplier maker) { diff --git a/src/main/java/electrodynamics/common/tile/TileMultiSubnode.java b/src/main/java/electrodynamics/common/tile/TileMultiSubnode.java index ad24687ca..9da665789 100644 --- a/src/main/java/electrodynamics/common/tile/TileMultiSubnode.java +++ b/src/main/java/electrodynamics/common/tile/TileMultiSubnode.java @@ -85,7 +85,7 @@ public VoxelShape getShape() { if (level.getBlockEntity(parentPos.get()) instanceof IMultiblockParentTile node) { - return shapeCache = node.getSubNodes()[nodeIndex.get()].getShape(node.getFacingDirection()); + return shapeCache = node.getSubNodes().getSubnodes(node.getFacingDirection())[nodeIndex.get()].getShape(node.getFacingDirection()); } diff --git a/src/main/java/electrodynamics/common/tile/electricitygrid/generators/TileAdvancedSolarPanel.java b/src/main/java/electrodynamics/common/tile/electricitygrid/generators/TileAdvancedSolarPanel.java index 6d54cf395..b38776ba1 100644 --- a/src/main/java/electrodynamics/common/tile/electricitygrid/generators/TileAdvancedSolarPanel.java +++ b/src/main/java/electrodynamics/common/tile/electricitygrid/generators/TileAdvancedSolarPanel.java @@ -1,6 +1,6 @@ package electrodynamics.common.tile.electricitygrid.generators; -import electrodynamics.api.multiblock.subnodebased.Subnode; +import electrodynamics.api.multiblock.subnodebased.parent.IMultiblockParentBlock; import electrodynamics.api.multiblock.subnodebased.parent.IMultiblockParentTile; import electrodynamics.common.block.subtype.SubtypeMachine; import electrodynamics.common.inventory.container.tile.ContainerSolarPanel; @@ -44,8 +44,8 @@ public TransferPack getProduced() { } @Override - public Subnode[] getSubNodes() { - return SubtypeMachine.Subnodes.SUBNODES_ADVANCEDSOLARPANEL; + public IMultiblockParentBlock.SubnodeWrapper getSubNodes() { + return SubtypeMachine.Subnodes.ADVANCEDSOLARPANEL; } @Override diff --git a/src/main/java/electrodynamics/common/tile/electricitygrid/generators/TileWindmill.java b/src/main/java/electrodynamics/common/tile/electricitygrid/generators/TileWindmill.java index 34274e2fa..6b19379e9 100644 --- a/src/main/java/electrodynamics/common/tile/electricitygrid/generators/TileWindmill.java +++ b/src/main/java/electrodynamics/common/tile/electricitygrid/generators/TileWindmill.java @@ -1,6 +1,6 @@ package electrodynamics.common.tile.electricitygrid.generators; -import electrodynamics.api.multiblock.subnodebased.Subnode; +import electrodynamics.api.multiblock.subnodebased.parent.IMultiblockParentBlock; import electrodynamics.api.multiblock.subnodebased.parent.IMultiblockParentTile; import electrodynamics.common.block.subtype.SubtypeMachine; import electrodynamics.common.inventory.container.tile.ContainerWindmill; @@ -110,8 +110,8 @@ public boolean shouldPlaySound() { } @Override - public Subnode[] getSubNodes() { - return SubtypeMachine.Subnodes.SUBNODES_WINDMILL; + public IMultiblockParentBlock.SubnodeWrapper getSubNodes() { + return SubtypeMachine.Subnodes.WINDMILL; } @Override diff --git a/src/main/java/electrodynamics/common/tile/machines/charger/GenericTileCharger.java b/src/main/java/electrodynamics/common/tile/machines/charger/GenericTileCharger.java index b30221760..c852a3d6b 100644 --- a/src/main/java/electrodynamics/common/tile/machines/charger/GenericTileCharger.java +++ b/src/main/java/electrodynamics/common/tile/machines/charger/GenericTileCharger.java @@ -24,92 +24,151 @@ import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.entity.BlockEntityType; import net.minecraft.world.level.block.state.BlockState; +import net.neoforged.neoforge.capabilities.Capabilities; +import net.neoforged.neoforge.energy.IEnergyStorage; public abstract class GenericTileCharger extends GenericTile { - private static final int BATTERY_COUNT = 3; - - protected GenericTileCharger(BlockEntityType typeIn, int voltageMultiplier, SubtypeMachine machine, BlockPos worldPosition, BlockState blockState) { - super(typeIn, worldPosition, blockState); - addComponent(new ComponentPacketHandler(this)); - addComponent(new ComponentTickable(this).tickCommon(this::tickCommon)); - addComponent(new ComponentElectrodynamic(this, false, true).setInputDirections(BlockEntityUtils.MachineDirection.BACK).voltage(ElectrodynamicsCapabilities.DEFAULT_VOLTAGE * voltageMultiplier).maxJoules(2000.0 * voltageMultiplier)); - addComponent(new ComponentInventory(this, InventoryBuilder.newInv().inputs(BATTERY_COUNT + 1).outputs(1)).valid(machineValidator()).setDirectionsBySlot(0, BlockEntityUtils.MachineDirection.RIGHT, BlockEntityUtils.MachineDirection.TOP).setDirectionsBySlot(4, BlockEntityUtils.MachineDirection.LEFT, BlockEntityUtils.MachineDirection.BOTTOM)); - addComponent(new ComponentContainerProvider(machine, this).createMenu((id, player) -> new ContainerChargerGeneric(id, player, getComponent(IComponentType.Inventory), getCoordsArray()))); - - } - - public void tickCommon(ComponentTickable tickable) { - ComponentInventory inventory = getComponent(IComponentType.Inventory); - ComponentElectrodynamic electro = getComponent(IComponentType.Electrodynamic); - ItemStack itemInput = inventory.getItem(0); - if (!itemInput.isEmpty() && itemInput.getItem() instanceof IItemElectric electricItem) { - boolean hasOvervolted = false; - if (inventory.inputs() > 1) { - hasOvervolted = drainBatterySlots(inventory, electro); + private static final int BATTERY_COUNT = 3; + + protected GenericTileCharger(BlockEntityType typeIn, int voltageMultiplier, SubtypeMachine machine, BlockPos worldPosition, BlockState blockState) { + super(typeIn, worldPosition, blockState); + addComponent(new ComponentPacketHandler(this)); + addComponent(new ComponentTickable(this).tickServer(this::tickServer)); + addComponent(new ComponentElectrodynamic(this, false, true).setInputDirections(BlockEntityUtils.MachineDirection.BACK).voltage(ElectrodynamicsCapabilities.DEFAULT_VOLTAGE * voltageMultiplier).maxJoules(2000.0 * voltageMultiplier)); + addComponent(new ComponentInventory(this, InventoryBuilder.newInv().inputs(BATTERY_COUNT + 1).outputs(1)).valid(machineValidator()).setDirectionsBySlot(0, BlockEntityUtils.MachineDirection.RIGHT, BlockEntityUtils.MachineDirection.TOP).setDirectionsBySlot(4, BlockEntityUtils.MachineDirection.LEFT, BlockEntityUtils.MachineDirection.BOTTOM)); + addComponent(new ComponentContainerProvider(machine, this).createMenu((id, player) -> new ContainerChargerGeneric(id, player, getComponent(IComponentType.Inventory), getCoordsArray()))); + + } + + public void tickServer(ComponentTickable tickable) { + + ComponentInventory inventory = getComponent(IComponentType.Inventory); + ComponentElectrodynamic electro = getComponent(IComponentType.Electrodynamic); + + ItemStack itemInput = inventory.getItem(0); + + if(itemInput.isEmpty()) { + return; + } + + if (itemInput.getItem() instanceof IItemElectric electricItem) { + + if (inventory.inputs() > 1 && drainBatterySlots(inventory, electro)) { + return; + } + + double room = electricItem.getMaximumCapacity(itemInput) - electricItem.getJoulesStored(itemInput); + + if(electro.getJoulesStored() <= 0 || room <= 0) { + return; } - double room = electricItem.getMaximumCapacity(itemInput) - electricItem.getJoulesStored(itemInput); - if (electro.getJoulesStored() > 0 && !hasOvervolted && room > 0) { - double recieveVoltage = electricItem.getElectricProperties().receive.getVoltage(); - double machineVoltage = electro.getVoltage(); - if (machineVoltage > recieveVoltage) { - electricItem.overVoltage(TransferPack.joulesVoltage(electricItem.getElectricProperties().receive.getJoules(), machineVoltage)); - level.setBlockAndUpdate(worldPosition, Blocks.AIR.defaultBlockState()); - level.explode(null, worldPosition.getX(), worldPosition.getY(), worldPosition.getZ(), 2f, ExplosionInteraction.BLOCK); - } else if (machineVoltage == recieveVoltage) { - electro.joules(electro.getJoulesStored() - electricItem.receivePower(itemInput, TransferPack.joulesVoltage(electro.getJoulesStored(), machineVoltage), false).getJoules()); + + double recieveVoltage = electricItem.getElectricProperties().receive.getVoltage(); + double machineVoltage = electro.getVoltage(); + + if (machineVoltage > recieveVoltage) { + + electricItem.overVoltage(TransferPack.joulesVoltage(electricItem.getElectricProperties().receive.getJoules(), machineVoltage)); + level.setBlockAndUpdate(worldPosition, Blocks.AIR.defaultBlockState()); + level.explode(null, worldPosition.getX(), worldPosition.getY(), worldPosition.getZ(), 2f, ExplosionInteraction.BLOCK); + + } else if (machineVoltage == recieveVoltage) { + + electro.joules(electro.getJoulesStored() - electricItem.receivePower(itemInput, TransferPack.joulesVoltage(electro.getJoulesStored(), machineVoltage), false).getJoules()); + + } else { + + float underVoltRatio = (float) ((float) machineVoltage / recieveVoltage); + float itemStoredRatio = (float) ((float) electricItem.getJoulesStored(itemInput) / electricItem.getMaximumCapacity(itemInput)); + + float x = Math.abs(itemStoredRatio / (itemStoredRatio - underVoltRatio + 0.00000001F/* ensures it's never zero */)); + float reductionCoef = getRationalFunctionValue(x); + + if (itemStoredRatio >= underVoltRatio) { + + electricItem.extractPower(itemInput, electro.getJoulesStored() * reductionCoef, false); + } else { - float underVoltRatio = (float) ((float) machineVoltage / recieveVoltage); - float itemStoredRatio = (float) ((float) electricItem.getJoulesStored(itemInput) / electricItem.getMaximumCapacity(itemInput)); - - float x = Math.abs(itemStoredRatio / (itemStoredRatio - underVoltRatio + 0.00000001F/* ensures it's never zero */)); - float reductionCoef = getRationalFunctionValue(x); - if (itemStoredRatio >= underVoltRatio) { - electricItem.extractPower(itemInput, electro.getJoulesStored() * reductionCoef, false); - } else { - electro.joules(electro.getJoulesStored() - electricItem.receivePower(itemInput, TransferPack.joulesVoltage(electro.getJoulesStored() * reductionCoef, recieveVoltage), false).getJoules()); - } - } - if (electricItem.getJoulesStored(itemInput) == electricItem.getMaximumCapacity(itemInput) && inventory.getItem(4).isEmpty()) { - inventory.setItem(4, inventory.getItem(0).copy()); - inventory.getItem(0).shrink(1); + + electro.joules(electro.getJoulesStored() - electricItem.receivePower(itemInput, TransferPack.joulesVoltage(electro.getJoulesStored() * reductionCoef, recieveVoltage), false).getJoules()); + } - inventory.setChanged(); } - } - } + if (electricItem.getJoulesStored(itemInput) == electricItem.getMaximumCapacity(itemInput) && inventory.getItem(4).isEmpty()) { + + inventory.setItem(4, inventory.getItem(0).copy()); + inventory.getItem(0).shrink(1); - // to simulate undervolting a chargeable object - private static float getRationalFunctionValue(float x) { - if (x >= 100.0F) { - return 0.0F; - } - if (x <= 1.0F) { - return 1.0F; - } - return 1 / x; - } - - private boolean drainBatterySlots(ComponentInventory inv, ComponentElectrodynamic electro) { - double machineVoltage = electro.getVoltage(); - double battVoltage = 0; - for (int i = 0; i < BATTERY_COUNT; i++) { - ItemStack battery = inv.getItem(i + 1); - if (!battery.isEmpty() && battery.getItem() instanceof IItemElectric electricItem) { - battVoltage = electricItem.getElectricProperties().receive.getVoltage(); - if (battVoltage < machineVoltage) { - inv.setItem(i + 1, new ItemStack(ElectrodynamicsItems.ITEM_SLAG.get()).copy()); - getLevel().playSound(null, getBlockPos(), SoundEvents.GENERIC_EXPLODE.value(), SoundSource.BLOCKS, 1F, 1F); - } else if (battVoltage > machineVoltage) { - electro.overVoltage(TransferPack.joulesVoltage(electro.getJoulesStored(), battVoltage)); - return true; - } else if (electro.getMaxJoulesStored() - electro.getJoulesStored() > 0) { - electro.joules(electro.getJoulesStored() + electricItem.extractPower(battery, Constants.CHARGER_USAGE_PER_TICK, false).getJoules()); - } } + + inventory.setChanged(); + + } else if (itemInput.getCapability(Capabilities.EnergyStorage.ITEM) instanceof IEnergyStorage storage) { + + if (inventory.inputs() > 1 && drainBatterySlots(inventory, electro) || !storage.canReceive()) { + return; + } + + int room = storage.receiveEnergy(Integer.MAX_VALUE, true); + + if(electro.getJoulesStored() <= 0 || room <= 0) { + return; + } + + double machineVoltage = electro.getVoltage(); + + if (machineVoltage > ElectrodynamicsCapabilities.DEFAULT_VOLTAGE) { + + level.setBlockAndUpdate(worldPosition, Blocks.AIR.defaultBlockState()); + level.explode(null, worldPosition.getX(), worldPosition.getY(), worldPosition.getZ(), 2f, ExplosionInteraction.BLOCK); + return; + + } + + int accepted = (int) Math.min(electro.getJoulesStored(), room); + + storage.receiveEnergy(accepted, false); + + electro.joules(electro.getJoulesStored() - accepted); + + inventory.setChanged(); + } - return false; - } + + } + + // to simulate undervolting a chargeable object + private static float getRationalFunctionValue(float x) { + if (x >= 100.0F) { + return 0.0F; + } + if (x <= 1.0F) { + return 1.0F; + } + return 1 / x; + } + + private boolean drainBatterySlots(ComponentInventory inv, ComponentElectrodynamic electro) { + double machineVoltage = electro.getVoltage(); + double battVoltage = 0; + for (int i = 0; i < BATTERY_COUNT; i++) { + ItemStack battery = inv.getItem(i + 1); + if (!battery.isEmpty() && battery.getItem() instanceof IItemElectric electricItem) { + battVoltage = electricItem.getElectricProperties().receive.getVoltage(); + if (battVoltage < machineVoltage) { + inv.setItem(i + 1, new ItemStack(ElectrodynamicsItems.ITEM_SLAG.get()).copy()); + getLevel().playSound(null, getBlockPos(), SoundEvents.GENERIC_EXPLODE.value(), SoundSource.BLOCKS, 1F, 1F); + } else if (battVoltage > machineVoltage) { + electro.overVoltage(TransferPack.joulesVoltage(electro.getJoulesStored(), battVoltage)); + return true; + } else if (electro.getMaxJoulesStored() - electro.getJoulesStored() > 0) { + electro.joules(electro.getJoulesStored() + electricItem.extractPower(battery, Constants.CHARGER_USAGE_PER_TICK, false).getJoules()); + } + } + } + return false; + } } diff --git a/src/main/java/electrodynamics/prefab/properties/PropertyTypes.java b/src/main/java/electrodynamics/prefab/properties/PropertyTypes.java index 9462c486a..9a23fc9f3 100644 --- a/src/main/java/electrodynamics/prefab/properties/PropertyTypes.java +++ b/src/main/java/electrodynamics/prefab/properties/PropertyTypes.java @@ -22,6 +22,7 @@ import net.minecraft.world.level.block.Block; import net.minecraft.world.level.block.Blocks; import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; import net.neoforged.neoforge.fluids.FluidStack; import java.util.ArrayList; @@ -342,5 +343,17 @@ public class PropertyTypes { // ); + public static final PropertyType VEC3 = new PropertyType<>( + // + Objects::equals, + // + ByteBufCodecs.fromCodec(Vec3.CODEC), + // + writer -> Vec3.CODEC.encodeStart(NbtOps.INSTANCE, writer.prop().get()).ifSuccess(tag -> writer.tag().put(writer.prop().getName(), tag)), + // + reader -> Vec3.CODEC.decode(NbtOps.INSTANCE, reader.tag().get(reader.prop().getName())).getOrThrow().getFirst() + // + ); + }