Skip to content

Lang Refactor#3246

Draft
Spicierspace153 wants to merge 37 commits into
1.20.1from
yo/space-tooltip-refactor
Draft

Lang Refactor#3246
Spicierspace153 wants to merge 37 commits into
1.20.1from
yo/space-tooltip-refactor

Conversation

@Spicierspace153
Copy link
Copy Markdown
Contributor

@Spicierspace153 Spicierspace153 commented Jun 20, 2025

What

Refactors a majority of where we generate lang keys.

Implementation Details

Removed all of the lang generated values from LangHandler, and moved them into dedicated classes, went through each class and sectioned each lang by relation to each other.

Outcome

The overall structure should be easier to navigate where a lang key would be. All language keys should be intact.
Fixed some minor lang keys, will comb through all lang keys in a later pr

YoungOnionMC and others added 14 commits June 19, 2025 19:19
…yo/space-tooltip-refactor

# Conflicts:
#	src/generated/resources/assets/gtceu/lang/en_ud.json
#	src/generated/resources/assets/gtceu/lang/en_us.json
#	src/main/java/com/gregtechceu/gtceu/api/cover/filter/TagFilter.java
#	src/main/java/com/gregtechceu/gtceu/api/machine/SimpleTieredMachine.java
#	src/main/java/com/gregtechceu/gtceu/client/TooltipsHandler.java
#	src/main/java/com/gregtechceu/gtceu/common/data/GTItems.java
#	src/main/java/com/gregtechceu/gtceu/common/data/GTMachines.java
#	src/main/java/com/gregtechceu/gtceu/common/data/machines/GTResearchMachines.java
#	src/main/java/com/gregtechceu/gtceu/common/machine/electric/BlockBreakerMachine.java
#	src/main/java/com/gregtechceu/gtceu/common/machine/electric/FisherMachine.java
#	src/main/java/com/gregtechceu/gtceu/common/machine/electric/ItemCollectorMachine.java
#	src/main/java/com/gregtechceu/gtceu/common/machine/electric/MinerMachine.java
#	src/main/java/com/gregtechceu/gtceu/data/lang/ArmorLang.java
#	src/main/java/com/gregtechceu/gtceu/data/lang/CommandLang.java
#	src/main/java/com/gregtechceu/gtceu/data/lang/LangHandler.java
#	src/main/java/com/gregtechceu/gtceu/data/lang/MaterialLang.java
…chCEu/GregTech-Modern into yo/space-tooltip-refactor

# Conflicts:
#	src/main/java/com/gregtechceu/gtceu/data/lang/ConfigurationLang.java
#	src/main/java/com/gregtechceu/gtceu/data/lang/CoverLang.java
@Spicierspace153 Spicierspace153 requested a review from a team as a code owner June 20, 2025 07:47
@Spicierspace153 Spicierspace153 marked this pull request as draft June 20, 2025 07:47
@JuiceyBeans JuiceyBeans mentioned this pull request Jun 20, 2025
@YoungOnionMC YoungOnionMC force-pushed the yo/space-tooltip-refactor branch from 4679868 to d7a80ec Compare June 22, 2025 07:45
@YoungOnionMC YoungOnionMC force-pushed the yo/space-tooltip-refactor branch from 7ed21a9 to aacf2e3 Compare June 23, 2025 05:59
… into yo/space-tooltip-refactor

# Conflicts:
#	src/generated/resources/assets/gtceu/lang/en_ud.json
#	src/generated/resources/assets/gtceu/lang/en_us.json
#	src/main/java/com/gregtechceu/gtceu/data/lang/LangHandler.java
@YoungOnionMC YoungOnionMC changed the title lang key refactor of doom Lang Refactor Jun 23, 2025
@YoungOnionMC YoungOnionMC added the type: refactor Suggestion to refactor a section of code label Jun 23, 2025
@Spicierspace153 Spicierspace153 marked this pull request as ready for review June 24, 2025 20:36
Comment thread src/main/java/com/gregtechceu/gtceu/data/lang/MaterialLang.java Outdated
Comment thread src/main/java/com/gregtechceu/gtceu/data/lang/MaterialLang.java Outdated
Comment thread src/main/java/com/gregtechceu/gtceu/data/lang/MaterialLang.java Outdated
Comment thread src/main/java/com/gregtechceu/gtceu/client/TooltipsHandler.java Outdated
* @param key Base key of the multi lang. E.g. "terminal.fluid_prospector.tier".
* @return Returns all translation components from a multi lang's sub-keys
*/
public static List<MutableComponent> getMultiLang(String key) {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

if you change this to return a Component[] you won't need to call toArray(Component[]::new) every time you use it :3

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you can also keep the original method and just add a wrapper that does the array conversion

Comment thread src/main/java/com/gregtechceu/gtceu/data/lang/ToolLang.java Outdated
Comment thread src/main/java/com/gregtechceu/gtceu/data/lang/ToolLang.java Outdated
Comment thread src/main/java/com/gregtechceu/gtceu/data/lang/IntegrationLang.java Outdated
Comment thread src/main/java/com/gregtechceu/gtceu/data/lang/GUILang.java
var damage = getPartDamage(stack);
tooltipComponents
.add(Component.translatable("metaitem.tool.tooltip.durability", maxDurability - damage, maxDurability));
.add(Component.translatable("item.tool.tooltip.durability", maxDurability - damage, maxDurability));
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

is this the correct key?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes its only used by TurbineRotorBehavior anyways

@screret
Copy link
Copy Markdown
Contributor

screret commented Jun 24, 2025

all of the already resolved comments are me marking what I'd like stuff be changed to later, you can ignore them for now if you so choose

Copy link
Copy Markdown
Contributor

@screret screret left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

oh, before I forget:
change the recipe type lang keys to recipe_type.gtceu.type, because currently they're just gtceu.type, which is probably the worst possible design decision.

@YoungOnionMC
Copy link
Copy Markdown
Member

oh, before I forget: change the recipe type lang keys to recipe_type.gtceu.type, because currently they're just gtceu.type, which is probably the worst possible design decision.

you could put then in the new pr when we make it :)

@jurrejelle jurrejelle marked this pull request as draft July 6, 2025 14:02
@AveryAndCompany
Copy link
Copy Markdown

IC Chip -> ILC Chip
image
image

Parallel Hatch odd phrasing
"Allows to run up to 4 recipes in parallel" -> Consider: "Allows running up to 4 recipes in parallel"
image

@Ghostipedia Ghostipedia added the Release: API - X.0.0 Major Breaking Refactors that MUST be in a API-Breaking Release label Jul 18, 2025
…factor

# Conflicts:
#	gradle/forge.versions.toml
#	src/generated/resources/assets/gtceu/lang/en_ud.json
#	src/generated/resources/assets/gtceu/lang/en_us.json
#	src/main/java/com/gregtechceu/gtceu/api/block/PipeBlock.java
#	src/main/java/com/gregtechceu/gtceu/api/capability/IPropertyFluidFilter.java
#	src/main/java/com/gregtechceu/gtceu/api/item/IGTTool.java
#	src/main/java/com/gregtechceu/gtceu/api/item/PipeBlockItem.java
#	src/main/java/com/gregtechceu/gtceu/api/item/component/ThermalFluidStats.java
#	src/main/java/com/gregtechceu/gtceu/api/machine/SimpleTieredMachine.java
#	src/main/java/com/gregtechceu/gtceu/api/recipe/GTRecipeType.java
#	src/main/java/com/gregtechceu/gtceu/api/registry/registrate/GTRegistrate.java
#	src/main/java/com/gregtechceu/gtceu/client/TooltipsHandler.java
#	src/main/java/com/gregtechceu/gtceu/common/CommonProxy.java
#	src/main/java/com/gregtechceu/gtceu/common/block/CoilBlock.java
#	src/main/java/com/gregtechceu/gtceu/common/block/FluidPipeBlock.java
#	src/main/java/com/gregtechceu/gtceu/common/block/LaserPipeBlock.java
#	src/main/java/com/gregtechceu/gtceu/common/block/OpticalPipeBlock.java
#	src/main/java/com/gregtechceu/gtceu/common/data/GCYMRecipeTypes.java
#	src/main/java/com/gregtechceu/gtceu/common/data/GTBlocks.java
#	src/main/java/com/gregtechceu/gtceu/common/data/GTMachines.java
#	src/main/java/com/gregtechceu/gtceu/common/data/GTRecipeTypes.java
#	src/main/java/com/gregtechceu/gtceu/common/data/machines/GCYMMachines.java
#	src/main/java/com/gregtechceu/gtceu/common/data/machines/GTMachineUtils.java
#	src/main/java/com/gregtechceu/gtceu/common/data/machines/GTMultiMachines.java
#	src/main/java/com/gregtechceu/gtceu/common/data/machines/GTResearchMachines.java
#	src/main/java/com/gregtechceu/gtceu/common/item/armor/NanoMuscleSuite.java
#	src/main/java/com/gregtechceu/gtceu/common/item/armor/QuarkTechSuite.java
#	src/main/java/com/gregtechceu/gtceu/common/machine/electric/BlockBreakerMachine.java
#	src/main/java/com/gregtechceu/gtceu/common/machine/electric/ConverterMachine.java
#	src/main/java/com/gregtechceu/gtceu/common/machine/electric/FisherMachine.java
#	src/main/java/com/gregtechceu/gtceu/common/machine/electric/ItemCollectorMachine.java
#	src/main/java/com/gregtechceu/gtceu/common/machine/electric/MinerMachine.java
#	src/main/java/com/gregtechceu/gtceu/common/machine/electric/TransformerMachine.java
#	src/main/java/com/gregtechceu/gtceu/common/machine/electric/WorldAcceleratorMachine.java
#	src/main/java/com/gregtechceu/gtceu/common/machine/multiblock/part/DiodePartMachine.java
#	src/main/java/com/gregtechceu/gtceu/common/machine/storage/DrumMachine.java
#	src/main/java/com/gregtechceu/gtceu/config/ConfigHolder.java
#	src/main/java/com/gregtechceu/gtceu/core/mixins/top/ConfigMixin.java
#	src/main/java/com/gregtechceu/gtceu/data/GregTechDatagen.java
#	src/main/java/com/gregtechceu/gtceu/data/lang/BlockLang.java
#	src/main/java/com/gregtechceu/gtceu/data/lang/ConfigurationLang.java
#	src/main/java/com/gregtechceu/gtceu/data/lang/IntegrationLang.java
#	src/main/java/com/gregtechceu/gtceu/data/lang/ItemLang.java
#	src/main/java/com/gregtechceu/gtceu/data/lang/LangHandler.java
#	src/main/java/com/gregtechceu/gtceu/data/lang/MachineLang.java
#	src/main/java/com/gregtechceu/gtceu/data/lang/MaterialLangGenerator.java
#	src/main/java/com/gregtechceu/gtceu/data/lang/ToolLang.java
#	src/main/java/com/gregtechceu/gtceu/integration/jade/provider/SteamBoilerBlockProvider.java
#	src/main/java/com/gregtechceu/gtceu/integration/top/provider/HazardCleanerInfoProvider.java
#	src/main/java/com/gregtechceu/gtceu/integration/top/provider/SteamBoilerInfoProvider.java
#	src/main/resources/assets/gtceu/lang/ja_jp.json
#	src/main/resources/assets/gtceu/lang/ru_ru.json
#	src/main/resources/assets/gtceu/lang/uk_ua.json
#	src/main/resources/assets/gtceu/lang/zh_cn.json
#	src/main/resources/assets/gtceu/lang/zh_tw.json
#	src/main/resources/gtceu.mixins.json
@github-actions github-actions Bot added 1.20.1 Tests: Passed Game Tests have passed on this PR labels May 22, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

1.20.1 Release: API - X.0.0 Major Breaking Refactors that MUST be in a API-Breaking Release Tests: Passed Game Tests have passed on this PR type: refactor Suggestion to refactor a section of code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants