Added creative tabs for each of the different races

This commit is contained in:
Sollace 2022-09-30 14:52:26 +02:00
parent f41873fd7a
commit d720a37cd9
7 changed files with 112 additions and 3 deletions

View file

@ -1,7 +1,8 @@
package com.minelittlepony.unicopia.item;
import java.util.stream.Collectors;
import java.util.function.Supplier;
import com.minelittlepony.unicopia.UTags;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.item.toxin.Toxic;
import com.minelittlepony.unicopia.item.toxin.ToxicHolder;
@ -9,6 +10,7 @@ import net.minecraft.item.Item;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.minecraft.tag.TagKey;
import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder;
import net.minecraft.util.collection.DefaultedList;
import net.minecraft.util.registry.Registry;
@ -26,9 +28,27 @@ public interface UItemGroups {
ItemGroup HORSE_FEED = FabricItemGroupBuilder.create(Unicopia.id("horsefeed")).appendItems(list -> {
list.addAll(Registry.ITEM.stream()
.map(Item::getDefaultStack)
.filter(item -> ((ToxicHolder)item.getItem()).getToxic(item) != Toxic.EMPTY)
.collect(Collectors.toList()));
.filter(stack -> ((ToxicHolder)stack.getItem()).getToxic(stack) != Toxic.EMPTY)
.toList());
}).icon(UItems.ZAP_APPLE::getDefaultStack).build();
ItemGroup EARTH_PONY_ITEMS = forTag("earth_pony", UItems.APPLE_PIE::getDefaultStack);
ItemGroup UNICORN_ITEMS = forTag("unicorn", UItems.SPELLBOOK::getDefaultStack);
ItemGroup PEGASUS_ITEMS = forTag("pegasus", UItems.PEGASUS_FEATHER::getDefaultStack);
ItemGroup BAT_PONY_ITEMS = forTag("bat_pony", UItems.SUNGLASSES::getDefaultStack);
ItemGroup CHANGELING_ITEMS = forTag("changeling", Items.SCULK_SHRIEKER::getDefaultStack);
static ItemGroup forTag(String name, Supplier<ItemStack> icon) {
TagKey<Item> key = UTags.item("groups/" + name);
return FabricItemGroupBuilder.create(Unicopia.id(name)).appendItems(list -> {
list.addAll(Registry.ITEM.getEntryList(key)
.stream()
.flatMap(named -> named.stream())
.map(entry -> entry.value())
.map(Item::getDefaultStack)
.toList());
}).icon(icon).build();
}
static void bootstrap() {}
}

View file

@ -10,6 +10,11 @@
"itemGroup.unicopia.items": "Unicopia - Misc.",
"itemGroup.unicopia.horsefeed": "Unicopia - Horse Feed",
"itemGroup.unicopia.earth_pony": "Unicopia - Ponyville",
"itemGroup.unicopia.unicorn": "Unicopia - Canterlot",
"itemGroup.unicopia.pegasus": "Unicopia - Cloudsdale",
"itemGroup.unicopia.bat_pony": "Unicopia - Hollow Shades",
"itemGroup.unicopia.changeling": "Unicopia - Cheese Cliffs",
"item.unicopia.friendship_bracelet": "Bangle of Comradery",
"item.unicopia.friendship_bracelet.issuer": "Signed by %s",

View file

@ -0,0 +1,9 @@
{
"replace": false,
"values": [
"#unicopia:food_types/raw_insect",
"#unicopia:polearms",
"unicopia:sunglasses",
"unicopia:broken_sunglasses"
]
}

View file

@ -0,0 +1,9 @@
{
"replace": false,
"values": [
"#unicopia:food_types/cooked_meat",
"#unicopia:food_types/raw_meat",
"#unicopia:food_types/raw_insect",
"#unicopia:food_types/rotten_meat"
]
}

View file

@ -0,0 +1,37 @@
{
"replace": false,
"values": [
"minecraft:apple",
"unicopia:green_apple",
"unicopia:sweet_apple",
"unicopia:sour_apple",
"unicopia:zap_apple",
"unicopia:zap_bulb",
"unicopia:rotten_apple",
"unicopia:empty_jar",
"unicopia:cooked_zap_apple",
"unicopia:zap_apple_jam_jar",
"unicopia:oat_seeds",
"unicopia:oats",
"unicopia:imported_oats",
"unicopia:oatmeal",
"unicopia:daffodil_daisy_sandwich",
"unicopia:hay_burger",
"unicopia:hay_fries",
"unicopia:wheat_worms",
"unicopia:muffin",
"unicopia:pebbles",
"unicopia:rock",
"unicopia:weird_rock",
"unicopia:rock_stew",
"unicopia:green_apple_seeds",
"unicopia:sweet_apple_seeds",
"unicopia:sour_apple_seeds",
"unicopia:mug",
"unicopia:cider",
"unicopia:juice",
"unicopia:burned_juice",
"unicopia:apple_pie",
"unicopia:apple_pie_slice"
]
}

View file

@ -0,0 +1,15 @@
{
"replace": false,
"values": [
"#unicopia:food_types/raw_fish",
"#unicopia:food_types/cooked_fish",
"unicopia:rain_cloud_jar",
"unicopia:storm_cloud_jar",
"unicopia:lightning_jar",
"#unicopia:polearms",
"unicopia:pegasus_feather",
"unicopia:gryphon_feather",
"unicopia:golden_feather",
"unicopia:golden_wing"
]
}

View file

@ -0,0 +1,14 @@
{
"replace": false,
"values": [
"unicopia:friendship_bracelet",
"unicopia:crystal_heart",
"unicopia:crystal_shard",
"unicopia:gemstone",
"unicopia:botched_gem",
"unicopia:dragon_breath_scroll",
"unicopia:spellbook",
"unicopia:pegasus_amulet",
"unicopia:alicorn_amulet"
]
}