Skip to content

Commit a02920d

Browse files
committed
Add a tag that contains all mekanism units (mekanism/Mekanism-Feature-Requests#689)
1 parent 780413a commit a02920d

File tree

11 files changed

+78
-5
lines changed

11 files changed

+78
-5
lines changed

src/api/java/mekanism/api/MekanismAPITags.java

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import net.minecraft.world.damagesource.DamageType;
99
import net.minecraft.world.effect.MobEffect;
1010
import net.minecraft.world.entity.EntityType;
11+
import net.minecraft.world.item.Item;
1112

1213
/**
1314
* Provides access to pre-existing tag keys for various functionality that we use tags for.
@@ -91,6 +92,24 @@ private static TagKey<Chemical> tag(String name) {
9192
}
9293
}
9394

95+
/**
96+
* @since 10.7.0
97+
*/
98+
public static class Items {
99+
100+
private Items() {
101+
}
102+
103+
/**
104+
* Contains all mekanism modules.
105+
*/
106+
public static final TagKey<Item> MEKA_UNITS = tag("unit");
107+
108+
private static TagKey<Item> tag(String name) {
109+
return TagKey.create(Registries.ITEM, rl(name));
110+
}
111+
}
112+
94113
public static class MobEffects {
95114

96115
private MobEffects() {

src/datagen/generated/mekanism/.cache/c10fcd8abbb6a520fc3ac2cf14b627d36958dd55

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/datagen/generated/mekanism/.cache/f4271571320fe007f5d8ba9eb4461ed6922f6a93

Lines changed: 2 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/datagen/generated/mekanism/assets/mekanism/lang/en_ud.json

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/datagen/generated/mekanism/assets/mekanism/lang/en_us.json

Lines changed: 1 addition & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/datagen/generated/mekanism/data/mekanism/tags/item/unit.json

Lines changed: 35 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/datagen/generated/mekanismgenerators/.cache/08f2b53f4cfddb5dc20bb23057cbafdfe1cdd910

Lines changed: 2 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/datagen/generated/mekanismgenerators/data/mekanism/tags/item/unit.json

Lines changed: 6 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/datagen/generators/java/mekanism/generators/common/GeneratorsTagProvider.java

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,13 @@
22

33
import java.util.Collection;
44
import java.util.concurrent.CompletableFuture;
5+
import mekanism.api.MekanismAPITags;
6+
import mekanism.common.content.gear.IModuleItem;
57
import mekanism.common.tag.BaseTagProvider;
68
import mekanism.generators.common.registries.GeneratorsBlocks;
79
import mekanism.generators.common.registries.GeneratorsChemicals;
810
import mekanism.generators.common.registries.GeneratorsFluids;
11+
import mekanism.generators.common.registries.GeneratorsItems;
912
import net.minecraft.core.Holder;
1013
import net.minecraft.core.HolderLookup;
1114
import net.minecraft.data.PackOutput;
@@ -60,6 +63,8 @@ protected void registerTags(HolderLookup.Provider registries) {
6063

6164
addToTag(FRAMEABLE, GeneratorsBlocks.REACTOR_GLASS, GeneratorsBlocks.LASER_FOCUS_MATRIX);
6265
addToTag(FB_BE_WHITELIST, GeneratorsBlocks.REACTOR_GLASS, GeneratorsBlocks.LASER_FOCUS_MATRIX);
66+
67+
getItemBuilder(MekanismAPITags.Items.MEKA_UNITS).add(GeneratorsItems.ITEMS.getEntries().stream().filter(item -> item.get() instanceof IModuleItem).toList());
6368
}
6469

6570
private void addBoxBlacklist() {

src/datagen/main/java/mekanism/client/lang/MekanismLangProvider.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,7 @@ protected void addTranslations() {
8787
}
8888

8989
private void addTags() {
90+
addTag(MekanismAPITags.Items.MEKA_UNITS, "Meka Units");
9091
addTag(MekanismTags.Items.CONFIGURATORS, "Configurators");
9192
addTag(MekanismTags.Items.TOOLS_WRENCH, "Wrenches");
9293
addTag(MekanismTags.Items.PERSONAL_STORAGE, "Personal Storage");

0 commit comments

Comments
 (0)