Skip to content

Commit ef566e5

Browse files
committed
Prepping for datagen for Chinese Translation
1 parent 0cb6428 commit ef566e5

File tree

4 files changed

+253
-6
lines changed

4 files changed

+253
-6
lines changed

src/main/java/com/greatorator/tolkienmobs/datagen/TolkienLangProviderCN.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.greatorator.tolkienmobs.datagen;
22

3-
import com.greatorator.tolkienmobs.datagen.helpers.TolkienLangHelper;
3+
import com.greatorator.tolkienmobs.datagen.helpers.TolkienLangHelperCN;
44
import com.greatorator.tolkienmobs.init.TolkienBlocks;
55
import com.greatorator.tolkienmobs.init.TolkienEntities;
66
import com.greatorator.tolkienmobs.init.TolkienItems;
@@ -10,7 +10,7 @@
1010
import java.util.HashMap;
1111
import java.util.Map;
1212

13-
public class TolkienLangProviderCN extends TolkienLangHelper {
13+
public class TolkienLangProviderCN extends TolkienLangHelperCN {
1414
public static final Map<String, String> SUBTITLE_GENERATOR = new HashMap<>();
1515

1616
public TolkienLangProviderCN(PackOutput output) {

src/main/java/com/greatorator/tolkienmobs/datagen/TolkienLangProviderUS.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package com.greatorator.tolkienmobs.datagen;
22

3-
import com.greatorator.tolkienmobs.datagen.helpers.TolkienLangHelper;
3+
import com.greatorator.tolkienmobs.datagen.helpers.TolkienLangHelperUS;
44
import com.greatorator.tolkienmobs.init.TolkienBlocks;
55
import com.greatorator.tolkienmobs.init.TolkienEntities;
66
import com.greatorator.tolkienmobs.init.TolkienItems;
@@ -10,7 +10,7 @@
1010
import java.util.HashMap;
1111
import java.util.Map;
1212

13-
public class TolkienLangProviderUS extends TolkienLangHelper {
13+
public class TolkienLangProviderUS extends TolkienLangHelperUS {
1414
public static final Map<String, String> SUBTITLE_GENERATOR = new HashMap<>();
1515

1616
public TolkienLangProviderUS(PackOutput output) {
Lines changed: 247 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,247 @@
1+
package com.greatorator.tolkienmobs.datagen.helpers;
2+
3+
import com.google.gson.Gson;
4+
import com.google.gson.GsonBuilder;
5+
import com.greatorator.tolkienmobs.util.LangConversionHelper;
6+
import com.greatorator.tolkienmobs.util.LangFormatSplitter;
7+
import net.minecraft.Util;
8+
import net.minecraft.core.component.DataComponents;
9+
import net.minecraft.data.PackOutput;
10+
import net.minecraft.world.entity.EntityType;
11+
import net.minecraft.world.item.Item;
12+
import net.minecraft.world.level.block.Block;
13+
import net.neoforged.neoforge.common.data.LanguageProvider;
14+
import net.neoforged.neoforge.registries.DeferredItem;
15+
16+
import java.util.HashMap;
17+
import java.util.List;
18+
import java.util.Map;
19+
20+
import static com.greatorator.tolkienmobs.TolkienMobsMain.MODID;
21+
22+
public abstract class TolkienLangHelperCN extends LanguageProvider {
23+
private final Map<String, String> TF_TIPS = new HashMap<>();
24+
public static final Gson GSON = new GsonBuilder().setPrettyPrinting().create();
25+
private final PackOutput output;
26+
public final Map<String, String> upsideDownEntries = new HashMap<>();
27+
28+
public TolkienLangHelperCN(PackOutput output) {
29+
super(output, MODID, "zh_cn");
30+
this.output = output;
31+
}
32+
33+
@Override
34+
public void add(String key, String value) {
35+
super.add(key, value);
36+
List<LangFormatSplitter.Component> splitEnglish = LangFormatSplitter.split(value);
37+
this.upsideDownEntries.put(key, LangConversionHelper.convertComponents(splitEnglish));
38+
}
39+
40+
public void addVillager(EntityType<?> key, String name) {
41+
this.add(key.getDescriptionId(), name);
42+
this.add(key.getDescriptionId() + ".tolkienmobs.none", "Human");
43+
this.add(key.getDescriptionId() + ".tolkienmobs.coin_trader", "Coin Trader");
44+
this.add(key.getDescriptionId() + ".tolkienmobs.grocery_store", "Grocery Store");
45+
this.add(key.getDescriptionId() + ".tolkienmobs.pet_merchant", "Junk Trader");
46+
this.add(key.getDescriptionId() + ".tolkienmobs.junk_trader", "Pet Merchant");
47+
this.add(key.getDescriptionId() + ".tolkienmobs.trinket_smith", "Magical Armourer");
48+
this.add(key.getDescriptionId() + ".tolkienmobs.trinket_tailor", "Magical Tailor");
49+
this.add(key.getDescriptionId() + ".armorer", "Armorer");
50+
this.add(key.getDescriptionId() + ".butcher", "Butcher");
51+
this.add(key.getDescriptionId() + ".cartographer", "Cartographer");
52+
this.add(key.getDescriptionId() + ".cleric", "Cleric");
53+
this.add(key.getDescriptionId() + ".farmer", "Farmer");
54+
this.add(key.getDescriptionId() + ".fisherman", "Fisherman");
55+
this.add(key.getDescriptionId() + ".leatherworker", "Leather Worker");
56+
this.add(key.getDescriptionId() + ".librarian", "Librarian");
57+
this.add(key.getDescriptionId() + ".mason", "Mason");
58+
this.add(key.getDescriptionId() + ".nitwit", "Nitwit");
59+
this.add(key.getDescriptionId() + ".shepherd", "Shepherd");
60+
this.add(key.getDescriptionId() + ".toolsmith", "Tool Smith");
61+
this.add(key.getDescriptionId() + ".weaponsmith", "Weapon Smith");
62+
this.add(key.getDescriptionId() + ".fletcher", "Fletcher");
63+
}
64+
65+
public void addTrinket(Item key, String name) {
66+
this.add(key.getDescriptionId() + ".water", name);
67+
}
68+
69+
public void addSound(String category, String subtitleName, String name) {
70+
this.add("subtitles.tolkienmobs." + category + "." + subtitleName, name);
71+
}
72+
73+
public void addMusicDisc(DeferredItem<Item> disc, String description) {
74+
this.addItem(disc, "音乐唱片");
75+
this.add(Util.makeDescriptionId("jukebox_song", disc.get().components().get(DataComponents.JUKEBOX_PLAYABLE).song().key().location()), description);
76+
}
77+
78+
public void addItemScreen(Item key, String name) {
79+
this.add("screen.tolkienmobs." + key.getDescriptionId(), name);
80+
}
81+
82+
public void addBlockScreen(Block key, String name) {
83+
this.add("screen.tolkienmobs." + key.getDescriptionId(), name);
84+
}
85+
86+
public void addCodeScreen(Item key, String name) {
87+
this.add("screen.tolkienmobs.code" + key.getDescriptionId(), name);
88+
}
89+
90+
public void addItemWithLore(Item key, String name, String lore) {
91+
this.add(key.getDescriptionId(), name);
92+
this.add(key.getDescriptionId() + ".lore", lore);
93+
}
94+
95+
public void addItemWithInstructions(Item key, String name, String lore, String lore2, String inst) {
96+
this.add(key.getDescriptionId(), name);
97+
this.add(key.getDescriptionId() + ".shift_down", inst);
98+
this.add(key.getDescriptionId() + ".lore", lore);
99+
this.add(key.getDescriptionId() + ".lore2", lore2);
100+
}
101+
102+
public void addBlockWithLore(Block key, String name, String lore) {
103+
this.add(key.getDescriptionId(), name);
104+
this.add(key.getDescriptionId() + ".lore", lore);
105+
}
106+
107+
public void addEnchantment(String key, String name) {
108+
this.add("enchantment.tolkienmobs." + key, name);
109+
}
110+
111+
public void addEnchantmentDesc(String key, String desc) {
112+
this.add("enchantment.tolkienmobs." + key + ".desc", desc);
113+
}
114+
115+
public void createTrinketSet(String trinketType, String descriptionType) {
116+
this.add("item.tolkienmobs.trinket_" + trinketType + ".empty", "Base " + descriptionType);
117+
this.add("item.tolkienmobs.trinket_" + trinketType + ".water", "Magical " + descriptionType + " of Nothingness");
118+
this.add("item.tolkienmobs.trinket_" + trinketType + ".mundane", "Magical " + descriptionType + " of Nothingness");
119+
this.add("item.tolkienmobs.trinket_" + trinketType + ".thick", "Magical " + descriptionType + " of Nothingness");
120+
this.add("item.tolkienmobs.trinket_" + trinketType + ".awkward", "Magical " + descriptionType + " of Nothingness");
121+
this.add("item.tolkienmobs.trinket_" + trinketType + ".night_vision", "Magical " + descriptionType + " of Night Vision");
122+
this.add("item.tolkienmobs.trinket_" + trinketType + ".invisibility", "Magical " + descriptionType + " of Invisibility");
123+
this.add("item.tolkienmobs.trinket_" + trinketType + ".leaping", "Magical " + descriptionType + " of Leaping");
124+
this.add("item.tolkienmobs.trinket_" + trinketType + ".fire_resistance", "Magical " + descriptionType + " of Fire Resistance");
125+
this.add("item.tolkienmobs.trinket_" + trinketType + ".swiftness", "Magical " + descriptionType + " of Speed");
126+
this.add("item.tolkienmobs.trinket_" + trinketType + ".slowness", "Magical " + descriptionType + " of Slowing");
127+
this.add("item.tolkienmobs.trinket_" + trinketType + ".turtle_master", "Magical " + descriptionType + " of Turtles");
128+
this.add("item.tolkienmobs.trinket_" + trinketType + ".water_breathing", "Magical " + descriptionType + " of Water Breathing");
129+
this.add("item.tolkienmobs.trinket_" + trinketType + ".healing", "Magical " + descriptionType + " of Healing");
130+
this.add("item.tolkienmobs.trinket_" + trinketType + ".harming", "Magical " + descriptionType + " of Pain");
131+
this.add("item.tolkienmobs.trinket_" + trinketType + ".poison", "Magical " + descriptionType + " of Poison");
132+
this.add("item.tolkienmobs.trinket_" + trinketType + ".regeneration", "Magical " + descriptionType + " of Regeneration");
133+
this.add("item.tolkienmobs.trinket_" + trinketType + ".strength", "Magical " + descriptionType + " of Strength");
134+
this.add("item.tolkienmobs.trinket_" + trinketType + ".weakness", "Magical " + descriptionType + " of Weakness");
135+
this.add("item.tolkienmobs.trinket_" + trinketType + ".luck", "Magical " + descriptionType + " of Luck");
136+
this.add("item.tolkienmobs.trinket_" + trinketType + ".slow_falling", "Magical " + descriptionType + " of Feathers");
137+
this.add("item.tolkienmobs.trinket_" + trinketType + ".wind_charged", "Magical " + descriptionType + " of Wind Charged");
138+
this.add("item.tolkienmobs.trinket_" + trinketType + ".weaving", "Magical " + descriptionType + " of Weaving");
139+
this.add("item.tolkienmobs.trinket_" + trinketType + ".oozing", "Magical " + descriptionType + " of Oozing");
140+
this.add("item.tolkienmobs.trinket_" + trinketType + ".infested", "Magical " + descriptionType + " of Infestation");
141+
this.add("item.tolkienmobs.trinket_" + trinketType + ".ent_draught", "Magical " + descriptionType + " of Ent Draught");
142+
this.add("item.tolkienmobs.trinket_" + trinketType + ".personal_blacksmith", "Magical " + descriptionType + " of Repair");
143+
this.add("item.tolkienmobs.trinket_" + trinketType + ".blessing_of_eru", "Magical " + descriptionType + " of Eru's Blessing");
144+
this.add("item.tolkienmobs.trinket_" + trinketType + ".elf_vitality", "Magical " + descriptionType + " of Elven Vitality");
145+
this.add("item.tolkienmobs.trinket_" + trinketType + ".elven_nimbleness", "Magical " + descriptionType + " of Elven Nimbleness");
146+
this.add("item.tolkienmobs.trinket_" + trinketType + ".inventory_corrosion", "Magical " + descriptionType + " of Rusting");
147+
this.add("item.tolkienmobs.trinket_" + trinketType + ".elemental_flight", "Magical " + descriptionType + " of Levitation");
148+
this.add("item.tolkienmobs.trinket_" + trinketType + ".crippling_terror", "Magical " + descriptionType + " of Terror");
149+
this.add("item.tolkienmobs.trinket_" + trinketType + ".dread_aura", "Magical " + descriptionType + " of Fear");
150+
this.add("item.tolkienmobs.trinket_" + trinketType + ".sleepnesia", "Magical " + descriptionType + " of Sleeping");
151+
this.add("item.tolkienmobs.trinket_" + trinketType + ".elemental_burning", "Magical " + descriptionType + " of Fire");
152+
this.add("item.tolkienmobs.trinket_" + trinketType + ".elemental_lightning", "Magical " + descriptionType + " of Shock");
153+
this.add("item.tolkienmobs.trinket_" + trinketType + ".elemental_drowning", "Magical " + descriptionType + " of Suffocation");
154+
}
155+
156+
public void createPotionSet(String potionPrefix, String potionName) {
157+
this.add("item.minecraft.potion.effect." + potionPrefix, "Potion of " + potionName);
158+
this.add("item.minecraft.splash_potion.effect." + potionPrefix, "Splash Potion of " + potionName);
159+
this.add("item.minecraft.lingering_potion.effect." + potionPrefix, "Lingering Potion of " + potionName);
160+
this.add("effect.tolkienmobs." + potionPrefix, potionName);
161+
}
162+
163+
public void createGemSet(String gemPrefix, String gemName) {
164+
this.add("block.tolkienmobs.ore_" + gemPrefix, gemName + " Ore");
165+
this.add("block.tolkienmobs.ore_deepslate_" + gemPrefix, gemName + " Deepslate Ore");
166+
this.add("block.tolkienmobs.ore_end_" + gemPrefix, gemName + " Ender Ore");
167+
this.add("block.tolkienmobs.ore_nether_" + gemPrefix, "Firey " + gemName + " Ore");
168+
this.add("item.tolkienmobs.gem_" + gemPrefix, gemName + " Gem");
169+
this.add("block.tolkienmobs.block_" + gemPrefix, gemName + " Block");
170+
this.add("block.tolkienmobs.pane_" + gemPrefix, gemName + " Pane");
171+
}
172+
173+
public void createStoneSet(String stonePrefix, String stoneName) {
174+
this.add("block.tolkienmobs." + stonePrefix, stoneName);
175+
this.add("block.tolkienmobs.stairs_" + stonePrefix, stoneName + " Stairs");
176+
this.add("block.tolkienmobs.slab_" + stonePrefix, stoneName + " Slab");
177+
this.add("block.tolkienmobs.pressure_plate_" + stonePrefix, stoneName + " Pressure Plate");
178+
this.add("block.tolkienmobs." + stonePrefix + "_button", stoneName + " Button");
179+
this.add("block.tolkienmobs.wall_" + stonePrefix, stoneName + " Wall");
180+
}
181+
182+
public void createMetalSet(String metalPrefix, String metalName) {
183+
this.add("block.tolkienmobs.ore_" + metalPrefix, metalName + " Ore");
184+
this.add("block.tolkienmobs.ore_deepslate_" + metalPrefix, metalName + " Deepslate Ore");
185+
this.add("block.tolkienmobs.ore_end_" + metalPrefix, metalName + " Ender Ore");
186+
this.add("block.tolkienmobs.ore_nether_" + metalPrefix, "Firey " + metalName + " Ore");
187+
this.add("block.tolkienmobs.raw_" + metalPrefix + "_block", "Raw " + metalName + " Block");
188+
this.add("block.tolkienmobs.trapdoor_" + metalPrefix, metalName + " Trapdoor");
189+
this.add("block.tolkienmobs.stairs_" + metalPrefix, metalName + " Stairs");
190+
this.add("block.tolkienmobs." + metalPrefix + "_button", metalName + " Button");
191+
this.add("item.tolkienmobs.dust_" + metalPrefix, metalName + " Dust");
192+
this.add("block.tolkienmobs.wall_" + metalPrefix, metalName + " Wall");
193+
this.add("block.tolkienmobs.pressure_plate_" + metalPrefix, metalName + " Pressure Plate");
194+
this.add("block.tolkienmobs.door_" + metalPrefix, metalName + " Door");
195+
this.add("block.tolkienmobs.slab_" + metalPrefix, metalName + " Slab");
196+
this.add("block.tolkienmobs." + metalPrefix + "_fluid", "Molten" + metalName);
197+
this.add("block.tolkienmobs.barrel_" + metalPrefix, metalName + " Barrel");
198+
this.add("item.tolkienmobs.ingot_" + metalPrefix, metalName + " Ingot");
199+
this.add("item.tolkienmobs.nugget_" + metalPrefix, metalName + " Nugget");
200+
this.add("item.tolkienmobs.raw_" + metalPrefix, "Raw " + metalName);
201+
this.add("item.tolkienmobs." + metalPrefix + "_fluid_bucket", "Molten " + metalName + " Bucket");
202+
this.add("block.tolkienmobs.block_" + metalPrefix, metalName + " Block");
203+
this.add("block.tolkienmobs." + metalPrefix + "_bars", metalName + " Bars");
204+
}
205+
206+
public void createWoodSet(String woodPrefix, String woodName) {
207+
this.add("block.tolkienmobs.planks_" + woodPrefix, woodName + " Planks");
208+
this.add("block.tolkienmobs.slab_" + woodPrefix, woodName + " Slab");
209+
this.add("block.tolkienmobs.stairs_" + woodPrefix, woodName + " Stairs");
210+
this.add("block.tolkienmobs." + woodPrefix + "_button", woodName + " Button");
211+
this.add("block.tolkienmobs.ladder_" + woodPrefix, woodName + " Ladder");
212+
this.add("block.tolkienmobs.fence_" + woodPrefix, woodName + " Fence");
213+
this.add("block.tolkienmobs.fence_gate_" + woodPrefix, woodName + " Fence Gate");
214+
this.add("block.tolkienmobs.pressure_plate_" + woodPrefix, woodName + " Pressure Plate");
215+
this.add("block.tolkienmobs.trapdoor_" + woodPrefix, woodName + " Trapdoor");
216+
this.add("block.tolkienmobs.door_" + woodPrefix, woodName + " Door");
217+
this.add("block.tolkienmobs.sign_" + woodPrefix, woodName + " Sign");
218+
this.add("block.tolkienmobs.wall_sign_" + woodPrefix, woodName + " Wall Sign");
219+
this.add("block.tolkienmobs.hanging_sign_" + woodPrefix, woodName + " Hanging Sign");
220+
this.add("block.tolkienmobs.wall_hanging_sign_" + woodPrefix, woodName + " Wall Hanging Sign");
221+
this.add("block.tolkienmobs.barrel_" + woodPrefix, woodName + " Barrel");
222+
this.add("block.tolkienmobs.log_" + woodPrefix, woodName + " Log");
223+
this.add("block.tolkienmobs.wood_" + woodPrefix, woodName + " Wood");
224+
this.add("block.tolkienmobs.stripped_log_" + woodPrefix, woodName + " Stripped Log");
225+
this.add("block.tolkienmobs.stripped_wood_" + woodPrefix, woodName + " Stripped Wood");
226+
this.add("block.tolkienmobs.sapling_" + woodPrefix, woodName + " Sapling");
227+
this.add("block.tolkienmobs.potted_sapling_" + woodPrefix, "Potted " + woodName + " Sapling");
228+
this.add("block.tolkienmobs.leaves_" + woodPrefix, woodName + " Leaves");
229+
this.add("block.tolkienmobs.leafpile_" + woodPrefix, woodName + " Leaf Pile");
230+
this.add("item.tolkienmobs." + woodPrefix + "_boat", woodName + " Boat");
231+
this.add("item.tolkienmobs." + woodPrefix + "_chest_boat", woodName + " Chest Boat");
232+
}
233+
234+
public void addTools(String itemKey, String item) {
235+
this.add("item.tolkienmobs.sword_" + itemKey, item + " Sword");
236+
this.add("item.tolkienmobs.pickaxe_" + itemKey, item + " Pickaxe");
237+
this.add("item.tolkienmobs.axe_" + itemKey, item + " Axe");
238+
this.add("item.tolkienmobs.shovel_" + itemKey, item + " Shovel");
239+
this.add("item.tolkienmobs.hoe_" + itemKey, item + " Hoe");
240+
this.add("item.tolkienmobs.shears_" + itemKey, item + " Shears");
241+
}
242+
243+
protected void addFlowerBlock(Block key, String name, String flower) {
244+
this.add(key.getDescriptionId(), name);
245+
this.add("block.tolkienmobs.potted_" + flower, "Potted " + name);
246+
}
247+
}

src/main/java/com/greatorator/tolkienmobs/datagen/helpers/TolkienLangHelper.java renamed to src/main/java/com/greatorator/tolkienmobs/datagen/helpers/TolkienLangHelperUS.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,13 @@
1919

2020
import static com.greatorator.tolkienmobs.TolkienMobsMain.MODID;
2121

22-
public abstract class TolkienLangHelper extends LanguageProvider {
22+
public abstract class TolkienLangHelperUS extends LanguageProvider {
2323
private final Map<String, String> TF_TIPS = new HashMap<>();
2424
public static final Gson GSON = new GsonBuilder().setPrettyPrinting().create();
2525
private final PackOutput output;
2626
public final Map<String, String> upsideDownEntries = new HashMap<>();
2727

28-
public TolkienLangHelper(PackOutput output) {
28+
public TolkienLangHelperUS(PackOutput output) {
2929
super(output, MODID, "en_us");
3030
this.output = output;
3131
}

0 commit comments

Comments
 (0)