feat: Add pride dyes, renamed things; major break.

This commit is contained in:
Ampflower 🌺 2025-03-14 08:51:23 -07:00
parent a18c08039b
commit 9eea65be65
No known key found for this signature in database
GPG Key ID: FC0397C90D508D7F
33 changed files with 330 additions and 54 deletions

View File

@ -72,7 +72,7 @@ public class JoyClient implements ClientModInitializer {
BlockRenderLayerMap.INSTANCE.putBlock(JoyBlocks.AGENDER_BED, RenderLayer.getCutout()); BlockRenderLayerMap.INSTANCE.putBlock(JoyBlocks.AGENDER_BED, RenderLayer.getCutout());
BlockRenderLayerMap.INSTANCE.putBlock(JoyBlocks.ENBY_BED, RenderLayer.getCutout()); BlockRenderLayerMap.INSTANCE.putBlock(JoyBlocks.ENBY_BED, RenderLayer.getCutout());
BlockRenderLayerMap.INSTANCE.putBlock(JoyBlocks.GAY_BED, RenderLayer.getCutout()); BlockRenderLayerMap.INSTANCE.putBlock(JoyBlocks.GAY_BED, RenderLayer.getCutout());
BlockRenderLayerMap.INSTANCE.putBlock(JoyBlocks.GENDER_FLUID_BED, RenderLayer.getCutout()); BlockRenderLayerMap.INSTANCE.putBlock(JoyBlocks.GENDERFLUID_BED, RenderLayer.getCutout());
BlockRenderLayerMap.INSTANCE.putBlock(JoyBlocks.LESBIAN_BED, RenderLayer.getCutout()); BlockRenderLayerMap.INSTANCE.putBlock(JoyBlocks.LESBIAN_BED, RenderLayer.getCutout());
BlockRenderLayerMap.INSTANCE.putBlock(JoyBlocks.BIGENDER_BED, RenderLayer.getCutout()); BlockRenderLayerMap.INSTANCE.putBlock(JoyBlocks.BIGENDER_BED, RenderLayer.getCutout());
BlockRenderLayerMap.INSTANCE.putBlock(JoyBlocks.MLM_BED, RenderLayer.getCutout()); BlockRenderLayerMap.INSTANCE.putBlock(JoyBlocks.MLM_BED, RenderLayer.getCutout());

View File

@ -24,7 +24,7 @@ public final class BedTextureProvider {
JoyBlocks.TRANS_BED, JoyBlocks.TRANS_BED,
JoyBlocks.PROGRESS_BED, JoyBlocks.PROGRESS_BED,
JoyBlocks.LESBIAN_BED, JoyBlocks.LESBIAN_BED,
JoyBlocks.GENDER_FLUID_BED, JoyBlocks.GENDERFLUID_BED,
JoyBlocks.GAY_BED, JoyBlocks.GAY_BED,
JoyBlocks.INTERSEX_BED, JoyBlocks.INTERSEX_BED,
JoyBlocks.AROACE_BED JoyBlocks.AROACE_BED

View File

@ -27,8 +27,8 @@ import static gay.pridecraft.joy.registry.JoyBlocks.ENBY_CANDLE;
import static gay.pridecraft.joy.registry.JoyBlocks.ENBY_CANDLE_CAKE; import static gay.pridecraft.joy.registry.JoyBlocks.ENBY_CANDLE_CAKE;
import static gay.pridecraft.joy.registry.JoyBlocks.GAY_CANDLE; import static gay.pridecraft.joy.registry.JoyBlocks.GAY_CANDLE;
import static gay.pridecraft.joy.registry.JoyBlocks.GAY_CANDLE_CAKE; import static gay.pridecraft.joy.registry.JoyBlocks.GAY_CANDLE_CAKE;
import static gay.pridecraft.joy.registry.JoyBlocks.GENDER_FLUID_CANDLE; import static gay.pridecraft.joy.registry.JoyBlocks.GENDERFLUID_CANDLE;
import static gay.pridecraft.joy.registry.JoyBlocks.GENDER_FLUID_CANDLE_CAKE; import static gay.pridecraft.joy.registry.JoyBlocks.GENDERFLUID_CANDLE_CAKE;
import static gay.pridecraft.joy.registry.JoyBlocks.INTERSEX_CANDLE; import static gay.pridecraft.joy.registry.JoyBlocks.INTERSEX_CANDLE;
import static gay.pridecraft.joy.registry.JoyBlocks.INTERSEX_CANDLE_CAKE; import static gay.pridecraft.joy.registry.JoyBlocks.INTERSEX_CANDLE_CAKE;
import static gay.pridecraft.joy.registry.JoyBlocks.LESBIAN_CANDLE; import static gay.pridecraft.joy.registry.JoyBlocks.LESBIAN_CANDLE;
@ -72,7 +72,7 @@ public class JoyBlockLootProvider extends FabricBlockLootTableProvider {
addDrop(ACE_CANDLE_CAKE, ACE_CANDLE); addDrop(ACE_CANDLE_CAKE, ACE_CANDLE);
addDrop(ARO_CANDLE_CAKE, ARO_CANDLE); addDrop(ARO_CANDLE_CAKE, ARO_CANDLE);
addDrop(APLATONIC_CANDLE_CAKE, APLATONIC_CANDLE); addDrop(APLATONIC_CANDLE_CAKE, APLATONIC_CANDLE);
addDrop(GENDER_FLUID_CANDLE_CAKE, GENDER_FLUID_CANDLE); addDrop(GENDERFLUID_CANDLE_CAKE, GENDERFLUID_CANDLE);
addDrop(PAN_CANDLE_CAKE, PAN_CANDLE); addDrop(PAN_CANDLE_CAKE, PAN_CANDLE);
addDrop(TRANS_CANDLE_CAKE, TRANS_CANDLE); addDrop(TRANS_CANDLE_CAKE, TRANS_CANDLE);
addDrop(AROACE_CANDLE_CAKE, AROACE_CANDLE); addDrop(AROACE_CANDLE_CAKE, AROACE_CANDLE);

View File

@ -1,6 +1,8 @@
package gay.pridecraft.joy.data; package gay.pridecraft.joy.data;
import gay.pridecraft.joy.block.BlahajBlocks;
import gay.pridecraft.joy.registry.JoyBlocks; import gay.pridecraft.joy.registry.JoyBlocks;
import gay.pridecraft.joy.tags.JoyBlockTags;
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider; import net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider;
import net.minecraft.block.Block; import net.minecraft.block.Block;
@ -30,5 +32,20 @@ public class JoyBlockTagProvider extends FabricTagProvider.BlockTagProvider {
getOrCreateTagBuilder(BlockTags.FLOWER_POTS) getOrCreateTagBuilder(BlockTags.FLOWER_POTS)
.add(JoyBlocks.POTTED_PLANTS.toArray(Block[]::new)); .add(JoyBlocks.POTTED_PLANTS.toArray(Block[]::new));
getOrCreateTagBuilder(JoyBlockTags.SHARKS).add(
BlahajBlocks.BLAHAJ_BLOCK,
BlahajBlocks.GRAY_SHARK_BLOCK
).add(BlahajBlocks.PRIDE_BLOCKS.toArray(Block[]::new));
getOrCreateTagBuilder(JoyBlockTags.PLUSHIES).add(
BlahajBlocks.BLAVINGAD_BLOCK,
BlahajBlocks.BREAD_BLOCK,
BlahajBlocks.BROWN_BEAR_BLOCK
).addTag(JoyBlockTags.SHARKS);
getOrCreateTagBuilder(JoyBlockTags.PRIDE_DYEABLE)
.addTag(JoyBlockTags.SHARKS)
.addTag(BlockTags.BEDS);
} }
} }

View File

@ -1,13 +1,16 @@
package gay.pridecraft.joy.data; package gay.pridecraft.joy.data;
import gay.pridecraft.joy.block.BlahajBlocks; import gay.pridecraft.joy.block.BlahajBlocks;
import gay.pridecraft.joy.registry.JoyBlocks;
import gay.pridecraft.joy.registry.JoyItems; import gay.pridecraft.joy.registry.JoyItems;
import gay.pridecraft.joy.tags.JoyItemTags; import gay.pridecraft.joy.tags.JoyItemTags;
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider; import net.fabricmc.fabric.api.datagen.v1.provider.FabricTagProvider;
import net.minecraft.block.Block;
import net.minecraft.item.Item; import net.minecraft.item.Item;
import net.minecraft.item.Items; import net.minecraft.item.Items;
import net.minecraft.registry.RegistryWrapper; import net.minecraft.registry.RegistryWrapper;
import net.minecraft.registry.tag.ItemTags;
import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletableFuture;
@ -34,6 +37,9 @@ public class JoyItemTagProvider extends FabricTagProvider.ItemTagProvider {
JoyItems.TOTEM_OF_PRIDE JoyItems.TOTEM_OF_PRIDE
); );
getOrCreateTagBuilder(ItemTags.BEDS)
.add(JoyBlocks.BEDS.stream().map(Block::asItem).toArray(Item[]::new));
getOrCreateTagBuilder(JoyItemTags.SHARKS).add( getOrCreateTagBuilder(JoyItemTags.SHARKS).add(
BlahajBlocks.BLAHAJ_ITEM, BlahajBlocks.BLAHAJ_ITEM,
BlahajBlocks.GRAY_SHARK_ITEM BlahajBlocks.GRAY_SHARK_ITEM
@ -44,5 +50,9 @@ public class JoyItemTagProvider extends FabricTagProvider.ItemTagProvider {
BlahajBlocks.BREAD_ITEM, BlahajBlocks.BREAD_ITEM,
BlahajBlocks.BROWN_BEAR_ITEM BlahajBlocks.BROWN_BEAR_ITEM
).addTag(JoyItemTags.SHARKS); ).addTag(JoyItemTags.SHARKS);
getOrCreateTagBuilder(JoyItemTags.PRIDE_DYEABLE)
.addTag(JoyItemTags.SHARKS)
.addTag(ItemTags.BEDS);
} }
} }

View File

@ -48,7 +48,7 @@ public class JoyModelProvider extends FabricModelProvider {
gen.registerCandle(JoyBlocks.ACE_CANDLE, JoyBlocks.ACE_CANDLE_CAKE); gen.registerCandle(JoyBlocks.ACE_CANDLE, JoyBlocks.ACE_CANDLE_CAKE);
gen.registerCandle(JoyBlocks.ARO_CANDLE, JoyBlocks.ARO_CANDLE_CAKE); gen.registerCandle(JoyBlocks.ARO_CANDLE, JoyBlocks.ARO_CANDLE_CAKE);
gen.registerCandle(JoyBlocks.APLATONIC_CANDLE, JoyBlocks.APLATONIC_CANDLE_CAKE); gen.registerCandle(JoyBlocks.APLATONIC_CANDLE, JoyBlocks.APLATONIC_CANDLE_CAKE);
gen.registerCandle(JoyBlocks.GENDER_FLUID_CANDLE, JoyBlocks.GENDER_FLUID_CANDLE_CAKE); gen.registerCandle(JoyBlocks.GENDERFLUID_CANDLE, JoyBlocks.GENDERFLUID_CANDLE_CAKE);
gen.registerCandle(JoyBlocks.PAN_CANDLE, JoyBlocks.PAN_CANDLE_CAKE); gen.registerCandle(JoyBlocks.PAN_CANDLE, JoyBlocks.PAN_CANDLE_CAKE);
gen.registerCandle(JoyBlocks.TRANS_CANDLE, JoyBlocks.TRANS_CANDLE_CAKE); gen.registerCandle(JoyBlocks.TRANS_CANDLE, JoyBlocks.TRANS_CANDLE_CAKE);
gen.registerCandle(JoyBlocks.AROACE_CANDLE, JoyBlocks.AROACE_CANDLE_CAKE); gen.registerCandle(JoyBlocks.AROACE_CANDLE, JoyBlocks.AROACE_CANDLE_CAKE);
@ -185,6 +185,10 @@ public class JoyModelProvider extends FabricModelProvider {
gen.register(rosette, Models.GENERATED); gen.register(rosette, Models.GENERATED);
} }
for (final var dye : JoyItems.PRIDE_DYES) {
gen.register(dye, Models.GENERATED);
}
gen.register(JoyItems.TOTEM_OF_PRIDE, Models.GENERATED); gen.register(JoyItems.TOTEM_OF_PRIDE, Models.GENERATED);
gen.register(JoyItems.PRIDE_ELYTRA, Models.GENERATED); gen.register(JoyItems.PRIDE_ELYTRA, Models.GENERATED);
gen.register(JoyItems.PRIDE_BRUSH, Models.GENERATED); gen.register(JoyItems.PRIDE_BRUSH, Models.GENERATED);

View File

@ -1,7 +1,9 @@
package gay.pridecraft.joy.data; package gay.pridecraft.joy.data;
import gay.pridecraft.joy.JoyUtil;
import gay.pridecraft.joy.block.BlahajBlocks; import gay.pridecraft.joy.block.BlahajBlocks;
import gay.pridecraft.joy.registry.JoyBlocks; import gay.pridecraft.joy.registry.JoyBlocks;
import gay.pridecraft.joy.registry.JoyItems;
import gay.pridecraft.joy.tags.JoyItemTags; import gay.pridecraft.joy.tags.JoyItemTags;
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput; import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider; import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider;
@ -15,6 +17,7 @@ import net.minecraft.recipe.Ingredient;
import net.minecraft.recipe.book.RecipeCategory; import net.minecraft.recipe.book.RecipeCategory;
import net.minecraft.registry.Registries; import net.minecraft.registry.Registries;
import net.minecraft.registry.RegistryWrapper; import net.minecraft.registry.RegistryWrapper;
import net.minecraft.registry.tag.ItemTags;
import net.minecraft.registry.tag.TagKey; import net.minecraft.registry.tag.TagKey;
import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletableFuture;
@ -33,9 +36,93 @@ public class JoyRecipeProvider extends FabricRecipeProvider {
offerConversion(JoyBlocks.BLUE_ALLIUM, Items.BLUE_DYE, exporter); offerConversion(JoyBlocks.BLUE_ALLIUM, Items.BLUE_DYE, exporter);
offerConversion(JoyBlocks.PINK_ALLIUM, Items.PINK_DYE, exporter); offerConversion(JoyBlocks.PINK_ALLIUM, Items.PINK_DYE, exporter);
offerConversion(JoyBlocks.WHITE_ALLIUM, Items.WHITE_DYE, exporter); offerConversion(JoyBlocks.WHITE_ALLIUM, Items.WHITE_DYE, exporter);
offerConversion(JoyBlocks.TRANS_ALLIUM, JoyItems.TRANS_DYE, exporter);
stonecutting(exporter, RecipeCategory.MISC, JoyItemTags.SHARKS, 1, stonecutting(exporter, RecipeCategory.MISC, JoyItemTags.SHARKS, 1,
BlahajBlocks.PRIDE_ITEMS.toArray(Item[]::new)); BlahajBlocks.PRIDE_ITEMS.toArray(Item[]::new));
offerDye(ItemTags.BEDS, JoyItems.GAY_DYE, JoyBlocks.GAY_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.ENBY_DYE, JoyBlocks.ENBY_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.INTERSEX_DYE, JoyBlocks.INTERSEX_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.AGENDER_DYE, JoyBlocks.AGENDER_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.BIGENDER_DYE, JoyBlocks.BIGENDER_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.BISEXUAL_DYE, JoyBlocks.BISEXUAL_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.MLM_DYE, JoyBlocks.MLM_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.ACE_DYE, JoyBlocks.ACE_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.ARO_DYE, JoyBlocks.ARO_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.APLATONIC_DYE, JoyBlocks.APLATONIC_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.GENDERFLUID_DYE, JoyBlocks.GENDERFLUID_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.PAN_DYE, JoyBlocks.PAN_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.TRANS_DYE, JoyBlocks.TRANS_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.AROACE_DYE, JoyBlocks.AROACE_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.LESBIAN_DYE, JoyBlocks.LESBIAN_BED, exporter);
offerDye(ItemTags.BEDS, JoyItems.PROGRESS_DYE, JoyBlocks.PROGRESS_BED, exporter);
offerDye(Items.CANDLE, JoyItems.GAY_DYE, JoyBlocks.GAY_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.ENBY_DYE, JoyBlocks.ENBY_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.INTERSEX_DYE, JoyBlocks.INTERSEX_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.AGENDER_DYE, JoyBlocks.AGENDER_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.BIGENDER_DYE, JoyBlocks.BIGENDER_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.BISEXUAL_DYE, JoyBlocks.BISEXUAL_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.MLM_DYE, JoyBlocks.MLM_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.ACE_DYE, JoyBlocks.ACE_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.ARO_DYE, JoyBlocks.ARO_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.APLATONIC_DYE, JoyBlocks.APLATONIC_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.GENDERFLUID_DYE, JoyBlocks.GENDERFLUID_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.PAN_DYE, JoyBlocks.PAN_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.TRANS_DYE, JoyBlocks.TRANS_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.AROACE_DYE, JoyBlocks.AROACE_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.LESBIAN_DYE, JoyBlocks.LESBIAN_CANDLE, exporter);
offerDye(Items.CANDLE, JoyItems.PROGRESS_DYE, JoyBlocks.PROGRESS_CANDLE, exporter);
offerDye(Items.TOTEM_OF_UNDYING, JoyItems.GAY_DYE, JoyItems.TOTEM_OF_PRIDE, exporter);
offerDye(Items.BRUSH, JoyItems.GAY_DYE, JoyItems.PRIDE_BRUSH, exporter);
offerDye(Items.ELYTRA, JoyItems.GAY_DYE, JoyItems.PRIDE_ELYTRA, exporter);
offerDye(Items.CAKE, JoyItems.GAY_DYE, JoyBlocks.PRIDE_CAKE, exporter);
// offerDye(JoyItemTags.SHARKS, JoyItems.QUEER_DYE, joyItem("queer_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.GAY_DYE, joyItem("gay_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.ENBY_DYE, joyItem("enby_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.INTERSEX_DYE, joyItem("intersex_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.AGENDER_DYE, joyItem("agender_shark"), exporter);
// offerDye(JoyItemTags.SHARKS, JoyItems.BIGENDER_DYE, joyItem("bigender_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.BISEXUAL_DYE, joyItem("bisexual_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.MLM_DYE, joyItem("mlm_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.ARO_DYE, joyItem("aro_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.ACE_DYE, joyItem("ace_shark"), exporter);
// offerDye(JoyItemTags.SHARKS, JoyItems.APLATONIC_DYE, joyItem("aplatonic_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.DEMIROMANTIC_DYE, joyItem("demiromantic_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.DEMISEXUAL_DYE, joyItem("demisexual_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.GREYARO_DYE, joyItem("greyaro_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.GREYACE_DYE, joyItem("greyace_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.GREYROSE_DYE, joyItem("greyrose_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.GENDERFLUID_DYE, joyItem("genderfluid_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.GENDERQUEER_DYE, joyItem("genderqueer_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.PAN_DYE, joyItem("pan_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.TRANS_DYE, joyItem("trans_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.AROACE_DYE, joyItem("aroace_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.LESBIAN_DYE, joyItem("lesbian_shark"), exporter);
// offerDye(JoyItemTags.SHARKS, JoyItems.PROGRESS_DYE, joyItem("progress_shark"), exporter);
// offerDye(JoyItemTags.SHARKS, JoyItems.PLURAL_DYE, joyItem("plural_shark"), exporter);
offerDye(JoyItemTags.SHARKS, JoyItems.POLYAM_DYE, joyItem("polyam_shark"), exporter);
}
private static void offerDye(TagKey<Item> base, ItemConvertible dye, ItemConvertible result, RecipeExporter exporter) {
ShapelessRecipeJsonBuilder.create(RecipeCategory.MISC, result)
.input(base)
.input(dye)
.group(base.id().getPath())
.criterion("has_needed_dye", conditionsFromItem(dye))
.offerTo(exporter, "dye_" + getItemPath(result));
}
private static void offerDye(ItemConvertible base, ItemConvertible dye, ItemConvertible result, RecipeExporter exporter) {
ShapelessRecipeJsonBuilder.create(RecipeCategory.MISC, result)
.input(base)
.input(dye)
.group(Registries.ITEM.getId(base.asItem()).getPath())
.criterion("has_needed_dye", conditionsFromItem(dye))
.offerTo(exporter, "dye_" + getItemPath(result));
} }
private static void offerConversion(ItemConvertible base, Item dye, RecipeExporter exporter) { private static void offerConversion(ItemConvertible base, Item dye, RecipeExporter exporter) {
@ -66,4 +153,8 @@ public class JoyRecipeProvider extends FabricRecipeProvider {
private static String hasTag(TagKey<?> tag) { private static String hasTag(TagKey<?> tag) {
return tag.id().withSuffixedPath("has_").toString(); return tag.id().withSuffixedPath("has_").toString();
} }
private static Item joyItem(String id) {
return Registries.ITEM.getOrEmpty(JoyUtil.id(id)).orElseThrow(() -> new IllegalArgumentException(id));
}
} }

View File

@ -32,9 +32,9 @@ public final class BlahajBlocks {
BROWN_BEAR_ITEM = mkItem(BROWN_BEAR_BLOCK); BROWN_BEAR_ITEM = mkItem(BROWN_BEAR_BLOCK);
private static final List<String> PRIDE_NAMES = List.of( private static final List<String> PRIDE_NAMES = List.of(
"ace", "agender", "aro", "aroace", "bi", "demiboy", "demigirl", "ace", "agender", "aro", "aroace", "bisexual", "demiboy", "demigirl",
"demi_r", "demi_s", "enby", "gay", "genderfluid", "genderqueer", "greyrose", "demiromantic", "demisexual", "enby", "mlm", "genderfluid", "genderqueer", "greyrose",
"grey_r", "grey_s", "intersex", "lesbian", "pan", "poly", "pride", "trans"); "greyaro", "greyace", "intersex", "lesbian", "pan", "polyam", "gay", "trans");
public static final List<Block> PRIDE_BLOCKS; public static final List<Block> PRIDE_BLOCKS;
public static final List<Item> PRIDE_ITEMS; public static final List<Item> PRIDE_ITEMS;

View File

@ -0,0 +1,13 @@
package gay.pridecraft.joy.item;
import net.minecraft.item.Item;
/**
* @author Ampflower
* @since 1.0.0
**/
public class PrideDyeItem extends Item {
public PrideDyeItem(final Settings settings) {
super(settings);
}
}

View File

@ -22,7 +22,7 @@ public final class JoyBlockEntityTypes {
JoyBlocks.TRANS_BED, JoyBlocks.TRANS_BED,
JoyBlocks.PROGRESS_BED, JoyBlocks.PROGRESS_BED,
JoyBlocks.LESBIAN_BED, JoyBlocks.LESBIAN_BED,
JoyBlocks.GENDER_FLUID_BED, JoyBlocks.GENDERFLUID_BED,
JoyBlocks.GAY_BED, JoyBlocks.GAY_BED,
JoyBlocks.INTERSEX_BED, JoyBlocks.INTERSEX_BED,
JoyBlocks.AROACE_BED JoyBlocks.AROACE_BED

View File

@ -32,7 +32,7 @@ public final class JoyBlocks {
ACE_BED = registerBed("ace_bed", Blocks.LIGHT_GRAY_BED), ACE_BED = registerBed("ace_bed", Blocks.LIGHT_GRAY_BED),
ARO_BED = registerBed("aro_bed", Blocks.GRAY_BED), ARO_BED = registerBed("aro_bed", Blocks.GRAY_BED),
APLATONIC_BED = registerBed("aplatonic_bed", Blocks.PINK_BED), APLATONIC_BED = registerBed("aplatonic_bed", Blocks.PINK_BED),
GENDER_FLUID_BED = registerBed("gender_fluid_bed", Blocks.LIME_BED), GENDERFLUID_BED = registerBed("genderfluid_bed", Blocks.LIME_BED),
PAN_BED = registerBed("pan_bed", Blocks.YELLOW_BED), PAN_BED = registerBed("pan_bed", Blocks.YELLOW_BED),
TRANS_BED = registerBed("trans_bed", Blocks.LIGHT_BLUE_BED), TRANS_BED = registerBed("trans_bed", Blocks.LIGHT_BLUE_BED),
AROACE_BED = registerBed("aroace_bed", Blocks.MAGENTA_BED), AROACE_BED = registerBed("aroace_bed", Blocks.MAGENTA_BED),
@ -50,7 +50,7 @@ public final class JoyBlocks {
ACE_BED, ACE_BED,
ARO_BED, ARO_BED,
APLATONIC_BED, APLATONIC_BED,
GENDER_FLUID_BED, GENDERFLUID_BED,
PAN_BED, PAN_BED,
TRANS_BED, TRANS_BED,
AROACE_BED, AROACE_BED,
@ -78,7 +78,7 @@ public final class JoyBlocks {
ACE_CANDLE = registerCandle("ace_candle"), ACE_CANDLE = registerCandle("ace_candle"),
ARO_CANDLE = registerCandle("aro_candle"), ARO_CANDLE = registerCandle("aro_candle"),
APLATONIC_CANDLE = registerCandle("aplatonic_candle"), APLATONIC_CANDLE = registerCandle("aplatonic_candle"),
GENDER_FLUID_CANDLE = registerCandle("gender_fluid_candle"), GENDERFLUID_CANDLE = registerCandle("genderfluid_candle"),
PAN_CANDLE = registerCandle("pan_candle"), PAN_CANDLE = registerCandle("pan_candle"),
TRANS_CANDLE = registerCandle("trans_candle"), TRANS_CANDLE = registerCandle("trans_candle"),
AROACE_CANDLE = registerCandle("aroace_candle"), AROACE_CANDLE = registerCandle("aroace_candle"),
@ -97,7 +97,7 @@ public final class JoyBlocks {
ACE_CANDLE, ACE_CANDLE,
ARO_CANDLE, ARO_CANDLE,
APLATONIC_CANDLE, APLATONIC_CANDLE,
GENDER_FLUID_CANDLE, GENDERFLUID_CANDLE,
PAN_CANDLE, PAN_CANDLE,
TRANS_CANDLE, TRANS_CANDLE,
AROACE_CANDLE, AROACE_CANDLE,
@ -123,7 +123,7 @@ public final class JoyBlocks {
ACE_CANDLE_CAKE = registerCandleCake(ACE_CANDLE), ACE_CANDLE_CAKE = registerCandleCake(ACE_CANDLE),
ARO_CANDLE_CAKE = registerCandleCake(ARO_CANDLE), ARO_CANDLE_CAKE = registerCandleCake(ARO_CANDLE),
APLATONIC_CANDLE_CAKE = registerCandleCake(APLATONIC_CANDLE), APLATONIC_CANDLE_CAKE = registerCandleCake(APLATONIC_CANDLE),
GENDER_FLUID_CANDLE_CAKE = registerCandleCake(GENDER_FLUID_CANDLE), GENDERFLUID_CANDLE_CAKE = registerCandleCake(GENDERFLUID_CANDLE),
PAN_CANDLE_CAKE = registerCandleCake(PAN_CANDLE), PAN_CANDLE_CAKE = registerCandleCake(PAN_CANDLE),
TRANS_CANDLE_CAKE = registerCandleCake(TRANS_CANDLE), TRANS_CANDLE_CAKE = registerCandleCake(TRANS_CANDLE),
AROACE_CANDLE_CAKE = registerCandleCake(AROACE_CANDLE), AROACE_CANDLE_CAKE = registerCandleCake(AROACE_CANDLE),
@ -142,7 +142,7 @@ public final class JoyBlocks {
ACE_CANDLE_CAKE, ACE_CANDLE_CAKE,
ARO_CANDLE_CAKE, ARO_CANDLE_CAKE,
APLATONIC_CANDLE_CAKE, APLATONIC_CANDLE_CAKE,
GENDER_FLUID_CANDLE_CAKE, GENDERFLUID_CANDLE_CAKE,
PAN_CANDLE_CAKE, PAN_CANDLE_CAKE,
TRANS_CANDLE_CAKE, TRANS_CANDLE_CAKE,
AROACE_CANDLE_CAKE, AROACE_CANDLE_CAKE,

View File

@ -28,7 +28,7 @@ public final class JoyItemGroups {
entries.add(JoyBlocks.ACE_BED); entries.add(JoyBlocks.ACE_BED);
entries.add(JoyBlocks.ARO_BED); entries.add(JoyBlocks.ARO_BED);
entries.add(JoyBlocks.APLATONIC_BED); entries.add(JoyBlocks.APLATONIC_BED);
entries.add(JoyBlocks.GENDER_FLUID_BED); entries.add(JoyBlocks.GENDERFLUID_BED);
entries.add(JoyBlocks.PAN_BED); entries.add(JoyBlocks.PAN_BED);
entries.add(JoyBlocks.TRANS_BED); entries.add(JoyBlocks.TRANS_BED);
entries.add(JoyBlocks.AROACE_BED); entries.add(JoyBlocks.AROACE_BED);
@ -51,7 +51,7 @@ public final class JoyItemGroups {
entries.add(JoyBlocks.ACE_CANDLE); entries.add(JoyBlocks.ACE_CANDLE);
entries.add(JoyBlocks.ARO_CANDLE); entries.add(JoyBlocks.ARO_CANDLE);
entries.add(JoyBlocks.APLATONIC_CANDLE); entries.add(JoyBlocks.APLATONIC_CANDLE);
entries.add(JoyBlocks.GENDER_FLUID_CANDLE); entries.add(JoyBlocks.GENDERFLUID_CANDLE);
entries.add(JoyBlocks.PAN_CANDLE); entries.add(JoyBlocks.PAN_CANDLE);
entries.add(JoyBlocks.TRANS_CANDLE); entries.add(JoyBlocks.TRANS_CANDLE);
entries.add(JoyBlocks.AROACE_CANDLE); entries.add(JoyBlocks.AROACE_CANDLE);
@ -118,6 +118,28 @@ public final class JoyItemGroups {
JoyItems.PLURAL_ROSETTE::getDefaultStack, JoyItems.PLURAL_ROSETTE::getDefaultStack,
(ctx, entries) -> JoyItems.ROSETTES.forEach(entries::add)); (ctx, entries) -> JoyItems.ROSETTES.forEach(entries::add));
public static final ItemGroup DYES = register("dyes",
JoyItems.PROGRESS_DYE::getDefaultStack,
(ctx, entries) -> {
entries.add(Items.WHITE_DYE);
entries.add(Items.ORANGE_DYE);
entries.add(Items.MAGENTA_DYE);
entries.add(Items.LIGHT_BLUE_DYE);
entries.add(Items.YELLOW_DYE);
entries.add(Items.LIME_DYE);
entries.add(Items.PINK_DYE);
entries.add(Items.GRAY_DYE);
entries.add(Items.LIGHT_GRAY_DYE);
entries.add(Items.CYAN_DYE);
entries.add(Items.PURPLE_DYE);
entries.add(Items.BLUE_DYE);
entries.add(Items.BROWN_DYE);
entries.add(Items.GREEN_DYE);
entries.add(Items.RED_DYE);
entries.add(Items.BLACK_DYE);
JoyItems.PRIDE_DYES.forEach(entries::add);
});
private static ItemGroup register(String name, Supplier<ItemStack> icon, ItemGroup.EntryCollector collector) { private static ItemGroup register(String name, Supplier<ItemStack> icon, ItemGroup.EntryCollector collector) {
return Pivot.INSTANCE.register(RegistryKeys.ITEM_GROUP, name, Pivot.itemGroupBuilder() return Pivot.INSTANCE.register(RegistryKeys.ITEM_GROUP, name, Pivot.itemGroupBuilder()
.displayName(Text.translatable("itemgroup.joy." + name)) .displayName(Text.translatable("itemgroup.joy." + name))

View File

@ -5,6 +5,7 @@ import gay.pridecraft.joy.JoyUtil;
import gay.pridecraft.joy.Pivot; import gay.pridecraft.joy.Pivot;
import gay.pridecraft.joy.item.CustomElytraItem; import gay.pridecraft.joy.item.CustomElytraItem;
import gay.pridecraft.joy.item.ParticleEmittingItem; import gay.pridecraft.joy.item.ParticleEmittingItem;
import gay.pridecraft.joy.item.PrideDyeItem;
import net.minecraft.component.DataComponentTypes; import net.minecraft.component.DataComponentTypes;
import net.minecraft.component.type.BundleContentsComponent; import net.minecraft.component.type.BundleContentsComponent;
import net.minecraft.item.BrushItem; import net.minecraft.item.BrushItem;
@ -29,45 +30,45 @@ public final class JoyItems {
); );
public static final Item PRIDE_BRUSH = registerItem( public static final Item PRIDE_BRUSH = registerItem(
"pride_brush", "pride_brush",
new BrushItem(new Item.Settings()) new BrushItem(new Item.Settings())
); );
// region Spawn Eggs // region Spawn Eggs
public static final Item SOCK_FOX_SPAWN_EGG = registerItem( public static final Item SOCK_FOX_SPAWN_EGG = registerItem(
"sock_fox_spawn_egg", "sock_fox_spawn_egg",
new SpawnEggItem( new SpawnEggItem(
JoyEntities.SOCK_FOX, 0xd5b69f, 0xff80bf, new Item.Settings()) JoyEntities.SOCK_FOX, 0xd5b69f, 0xff80bf, new Item.Settings())
); );
public static final Item BII_SPAWN_EGG = registerItem( public static final Item BII_SPAWN_EGG = registerItem(
"bii_spawn_egg", "bii_spawn_egg",
new SpawnEggItem( new SpawnEggItem(
JoyEntities.BII, 0xedc343, 0xFF69B4, new Item.Settings()) JoyEntities.BII, 0xedc343, 0xFF69B4, new Item.Settings())
); );
public static final Item ENBEE_SPAWN_EGG = registerItem( public static final Item ENBEE_SPAWN_EGG = registerItem(
"enbee_spawn_egg", "enbee_spawn_egg",
new SpawnEggItem( new SpawnEggItem(
JoyEntities.ENBEE, 0xfcf434, 0x9C59D1, new Item.Settings()) JoyEntities.ENBEE, 0xfcf434, 0x9C59D1, new Item.Settings())
); );
public static final Item TRANS_BEE_SPAWN_EGG = registerItem( public static final Item TRANS_BEE_SPAWN_EGG = registerItem(
"trans_bee_spawn_egg", "trans_bee_spawn_egg",
new SpawnEggItem( new SpawnEggItem(
JoyEntities.TRANS_BEE, 0x2fa637c, 0x48B518, new Item.Settings()) JoyEntities.TRANS_BEE, 0x2fa637c, 0x48B518, new Item.Settings())
); );
public static final Item TREE_SPAWN_EGG = registerItem( public static final Item TREE_SPAWN_EGG = registerItem(
"tree_spawn_egg", "tree_spawn_egg",
new SpawnEggItem( new SpawnEggItem(
JoyEntities.TREE, 0xfcf434, 0x9C59D1, new Item.Settings()) JoyEntities.TREE, 0xfcf434, 0x9C59D1, new Item.Settings())
); );
public static final Item FROG_SPAWN_EGG = registerItem( public static final Item FROG_SPAWN_EGG = registerItem(
"frog_spawn_egg", "frog_spawn_egg",
new SpawnEggItem( new SpawnEggItem(
JoyEntities.FROG, 0xd07444, 0xff80bf, new Item.Settings()) JoyEntities.FROG, 0xd07444, 0xff80bf, new Item.Settings())
); );
public static final Item SNIFFER_SPAWN_EGG = registerItem( public static final Item SNIFFER_SPAWN_EGG = registerItem(
@ -90,7 +91,7 @@ public final class JoyItems {
ACE_BUNDLE = registerBundle("ace_bundle"), ACE_BUNDLE = registerBundle("ace_bundle"),
ARO_BUNDLE = registerBundle("aro_bundle"), ARO_BUNDLE = registerBundle("aro_bundle"),
APLATONIC_BUNDLE = registerBundle("aplatonic_bundle"), APLATONIC_BUNDLE = registerBundle("aplatonic_bundle"),
GENDER_FLUID_BUNDLE = registerBundle("gender_fluid_bundle"), GENDER_FLUID_BUNDLE = registerBundle("genderfluid_bundle"),
PAN_BUNDLE = registerBundle("pan_bundle"), PAN_BUNDLE = registerBundle("pan_bundle"),
TRANS_BUNDLE = registerBundle("trans_bundle"), TRANS_BUNDLE = registerBundle("trans_bundle"),
AROACE_BUNDLE = registerBundle("aroace_bundle"), AROACE_BUNDLE = registerBundle("aroace_bundle"),
@ -154,6 +155,69 @@ public final class JoyItems {
); );
// endregion // endregion
// region dyes
public static final Item
QUEER_DYE = registerDye("queer_dye"),
GAY_DYE = registerDye("gay_dye"),
ENBY_DYE = registerDye("enby_dye"),
INTERSEX_DYE = registerDye("intersex_dye"),
AGENDER_DYE = registerDye("agender_dye"),
BIGENDER_DYE = registerDye("bigender_dye"),
BISEXUAL_DYE = registerDye("bisexual_dye"),
MLM_DYE = registerDye("mlm_dye"),
ARO_DYE = registerDye("aro_dye"),
ACE_DYE = registerDye("ace_dye"),
APLATONIC_DYE = registerDye("aplatonic_dye"),
DEMIROMANTIC_DYE = registerDye("demiromantic_dye"),
DEMISEXUAL_DYE = registerDye("demisexual_dye"),
GREYARO_DYE = registerDye("greyaro_dye"),
GREYACE_DYE = registerDye("greyace_dye"),
GREYROSE_DYE = registerDye("greyrose_dye"),
GENDERFLUID_DYE = registerDye("genderfluid_dye"),
GENDERQUEER_DYE = registerDye("genderqueer_dye"),
PAN_DYE = registerDye("pan_dye"),
TRANS_DYE = registerDye("trans_dye"),
AROACE_DYE = registerDye("aroace_dye"),
LESBIAN_DYE = registerDye("lesbian_dye"),
PROGRESS_DYE = registerDye("progress_dye"),
PLURAL_DYE = registerDye("plural_dye"),
POLYAM_DYE = registerDye("polyam_dye");
public static final List<Item> PRIDE_DYES = List.of(
QUEER_DYE,
GAY_DYE,
ENBY_DYE,
INTERSEX_DYE,
AGENDER_DYE,
BIGENDER_DYE,
BISEXUAL_DYE,
MLM_DYE,
ACE_DYE,
ARO_DYE,
APLATONIC_DYE,
DEMIROMANTIC_DYE,
DEMISEXUAL_DYE,
GREYARO_DYE,
GREYACE_DYE,
GREYROSE_DYE,
GENDERFLUID_DYE,
GENDERQUEER_DYE,
PAN_DYE,
TRANS_DYE,
AROACE_DYE,
LESBIAN_DYE,
PROGRESS_DYE,
PLURAL_DYE,
POLYAM_DYE
);
private static Item registerDye(String name) {
return registerItem(name, new PrideDyeItem(new Item.Settings()));
}
// endregion
// Currently inaccessible, only exists to serve as an example. // Currently inaccessible, only exists to serve as an example.
public static final Item public static final Item
DOUGLAS_DISC = registerDisc("douglas"), DOUGLAS_DISC = registerDisc("douglas"),

View File

@ -0,0 +1,26 @@
package gay.pridecraft.joy.tags;
import gay.pridecraft.joy.JoyUtil;
import net.minecraft.block.Block;
import net.minecraft.registry.RegistryKeys;
import net.minecraft.registry.tag.TagKey;
import net.minecraft.util.Identifier;
/**
* @author Ampflower
* @since 1.0.0
**/
public final class JoyBlockTags {
public static final TagKey<Block>
PRIDE_DYEABLE = joy("pride_dyeable"),
PLUSHIES = joy("plushies"),
SHARKS = joy("sharks");
private static TagKey<Block> joy(String name) {
return TagKey.of(RegistryKeys.BLOCK, JoyUtil.id(name));
}
private static TagKey<Block> common(String name) {
return TagKey.of(RegistryKeys.BLOCK, Identifier.of("c", name));
}
}

View File

@ -17,6 +17,7 @@ public final class JoyItemTags {
TOTEM_OF_UNDYING = common("totem_of_undying"); TOTEM_OF_UNDYING = common("totem_of_undying");
public static final TagKey<Item> public static final TagKey<Item>
PRIDE_DYEABLE = joy("pride_dyeable"),
PLUSHIES = joy("plushies"), PLUSHIES = joy("plushies"),
SHARKS = joy("sharks"); SHARKS = joy("sharks");

View File

@ -10,6 +10,7 @@
"itemgroup.joy.food": "Joy Food", "itemgroup.joy.food": "Joy Food",
"itemgroup.joy.flowers": "Joy Flowers", "itemgroup.joy.flowers": "Joy Flowers",
"itemgroup.joy.rosettes": "Pridecraft Rosettes", "itemgroup.joy.rosettes": "Pridecraft Rosettes",
"itemgroup.joy.dyes": "Dyes",
"block.joy.gay_bed": "Gay Bed", "block.joy.gay_bed": "Gay Bed",
"block.joy.enby_bed": "Enby Bed", "block.joy.enby_bed": "Enby Bed",
@ -20,8 +21,8 @@
"block.joy.mlm_bed": "MLM Bed", "block.joy.mlm_bed": "MLM Bed",
"block.joy.ace_bed": "Ace Bed", "block.joy.ace_bed": "Ace Bed",
"block.joy.aro_bed": "Aro Bed", "block.joy.aro_bed": "Aro Bed",
"block.joy.aplatonic_bed": "Aplatonically Oriented Bed", "block.joy.aplatonic_bed": "Aplatonic Bed",
"block.joy.gender_fluid_bed": "Gender Fluid Bed", "block.joy.genderfluid_bed": "Genderfluid Bed",
"block.joy.pan_bed": "Pan Bed", "block.joy.pan_bed": "Pan Bed",
"block.joy.trans_bed": "Trans Bed", "block.joy.trans_bed": "Trans Bed",
"block.joy.aroace_bed": "Aro-Ace Bed", "block.joy.aroace_bed": "Aro-Ace Bed",
@ -38,8 +39,8 @@
"block.joy.mlm_candle": "MLM Candle", "block.joy.mlm_candle": "MLM Candle",
"block.joy.ace_candle": "Ace Candle", "block.joy.ace_candle": "Ace Candle",
"block.joy.aro_candle": "Aro Candle", "block.joy.aro_candle": "Aro Candle",
"block.joy.aplatonic_candle": "Aplatonically Oriented Candle", "block.joy.aplatonic_candle": "Aplatonic Candle",
"block.joy.gender_fluid_candle": "Gender Fluid Candle", "block.joy.genderfluid_candle": "Genderfluid Candle",
"block.joy.pan_candle": "Pan Candle", "block.joy.pan_candle": "Pan Candle",
"block.joy.trans_candle": "Trans Candle", "block.joy.trans_candle": "Trans Candle",
"block.joy.aroace_candle": "Aro-Ace Candle", "block.joy.aroace_candle": "Aro-Ace Candle",
@ -71,8 +72,8 @@
"item.joy.mlm_bundle": "MLM Bundle", "item.joy.mlm_bundle": "MLM Bundle",
"item.joy.ace_bundle": "Ace Bundle", "item.joy.ace_bundle": "Ace Bundle",
"item.joy.aro_bundle": "Aro Bundle", "item.joy.aro_bundle": "Aro Bundle",
"item.joy.aplatonic_bundle": "Aplatonically Orientated Bundle", "item.joy.aplatonic_bundle": "Aplatonic Bundle",
"item.joy.gender_fluid_bundle": "Gender Fluid Bundle", "item.joy.genderfluid_bundle": "Genderfluid Bundle",
"item.joy.pan_bundle": "Pan Bundle", "item.joy.pan_bundle": "Pan Bundle",
"item.joy.trans_bundle": "Trans Bundle", "item.joy.trans_bundle": "Trans Bundle",
"item.joy.aroace_bundle": "Aro-Ace Bundle", "item.joy.aroace_bundle": "Aro-Ace Bundle",
@ -90,6 +91,32 @@
"item.joy.lesbian_rosette": "Lesbian Rosette", "item.joy.lesbian_rosette": "Lesbian Rosette",
"item.joy.plural_rosette": "Plural Rosette", "item.joy.plural_rosette": "Plural Rosette",
"item.joy.queer_dye": "Queer Dye",
"item.joy.gay_dye": "Gay Dye",
"item.joy.enby_dye": "Enby Dye",
"item.joy.intersex_dye": "Intersex Dye",
"item.joy.agender_dye": "Agender Dye",
"item.joy.bigender_dye": "Bigender Dye",
"item.joy.bisexual_dye": "Bisexual Dye",
"item.joy.mlm_dye": "Mlm Dye",
"item.joy.aro_dye": "Aro Dye",
"item.joy.ace_dye": "Ace Dye",
"item.joy.aplatonic_dye": "Aplatonic Dye",
"item.joy.demiromantic_dye": "Demiromantic Dye",
"item.joy.demisexual_dye": "Demisexual Dye",
"item.joy.greyaro_dye": "Greyaro Dye",
"item.joy.greyace_dye": "Greyace Dye",
"item.joy.greyrose_dye": "Greyrose Dye",
"item.joy.genderfluid_dye": "Genderfluid Dye",
"item.joy.genderqueer_dye": "Genderqueer Dye",
"item.joy.pan_dye": "Pan Dye",
"item.joy.trans_dye": "Trans Dye",
"item.joy.aroace_dye": "Aroace Dye",
"item.joy.lesbian_dye": "Lesbian Dye",
"item.joy.progress_dye": "Progress Dye",
"item.joy.plural_dye": "Plural Dye",
"item.joy.polyam_dye": "Polyam Dye",
"item.joy.sock_fox_spawn_egg": "Thigh-High Fox Spawn Egg", "item.joy.sock_fox_spawn_egg": "Thigh-High Fox Spawn Egg",
"item.joy.bii_spawn_egg": "Bii Spawn Egg", "item.joy.bii_spawn_egg": "Bii Spawn Egg",
"item.joy.enbee_spawn_egg": "Enbee Spawn Egg", "item.joy.enbee_spawn_egg": "Enbee Spawn Egg",
@ -164,23 +191,23 @@
"block.joy.agender_shark": "Agender Toy Shark", "block.joy.agender_shark": "Agender Toy Shark",
"block.joy.aro_shark": "Aro Toy Shark", "block.joy.aro_shark": "Aro Toy Shark",
"block.joy.aroace_shark": "Aroace Toy Shark", "block.joy.aroace_shark": "Aroace Toy Shark",
"block.joy.bi_shark": "Bi Toy Shark", "block.joy.bisexual_shark": "Bisexual Toy Shark",
"block.joy.demiboy_shark": "Demiboy Toy Shark", "block.joy.demiboy_shark": "Demiboy Toy Shark",
"block.joy.demigirl_shark": "Demigirl Toy Shark", "block.joy.demigirl_shark": "Demigirl Toy Shark",
"block.joy.demi_r_shark": "Demi R Toy Shark", "block.joy.demiromantic_shark": "Demi R Toy Shark",
"block.joy.demi_s_shark": "Demi S Toy Shark", "block.joy.demisexual_shark": "Demi S Toy Shark",
"block.joy.enby_shark": "Enby Toy Shark", "block.joy.enby_shark": "Enby Toy Shark",
"block.joy.gay_shark": "Gay Toy Shark", "block.joy.mlm_shark": "Gay Men Toy Shark",
"block.joy.genderfluid_shark": "Genderfluid Toy Shark", "block.joy.genderfluid_shark": "Genderfluid Toy Shark",
"block.joy.genderqueer_shark": "Genderqueer Toy Shark", "block.joy.genderqueer_shark": "Genderqueer Toy Shark",
"block.joy.greyrose_shark": "Greyrose Toy Shark", "block.joy.greyrose_shark": "Greyrose Toy Shark",
"block.joy.grey_r_shark": "Grey R Toy Shark", "block.joy.greyaro_shark": "Grey R Toy Shark",
"block.joy.grey_s_shark": "Grey S Toy Shark", "block.joy.greyace_shark": "Grey S Toy Shark",
"block.joy.intersex_shark": "Intersex Toy Shark", "block.joy.intersex_shark": "Intersex Toy Shark",
"block.joy.lesbian_shark": "Lesbian Toy Shark", "block.joy.lesbian_shark": "Lesbian Toy Shark",
"block.joy.pan_shark": "Pan Toy Shark", "block.joy.pan_shark": "Pan Toy Shark",
"block.joy.poly_shark": "Poly Toy Shark", "block.joy.polyam_shark": "Poly Toy Shark",
"block.joy.pride_shark": "Pride Toy Shark", "block.joy.gay_shark": "Gay Toy Shark",
"block.joy.trans_shark": "Trans Toy Shark", "block.joy.trans_shark": "Trans Toy Shark",
"tooltip.joy.owner.craft": "Crafted by %s", "tooltip.joy.owner.craft": "Crafted by %s",
@ -191,5 +218,6 @@
"tag.item.c.gliders": "Gliders", "tag.item.c.gliders": "Gliders",
"tag.item.c.elytra": "Elytra", "tag.item.c.elytra": "Elytra",
"tag.item.c.totem_of_undying": "Totems of Undying" "tag.item.c.totem_of_undying": "Totems of Undying",
"tag.item.joy.pride_dyeable": "Pride Dyeable Items"
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 549 B

After

Width:  |  Height:  |  Size: 575 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 549 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 575 B