fix: Barricade not blocking Joy's mobs

This commit is contained in:
Ampflower 🌺 2025-04-14 21:02:51 -07:00
parent b5d495548e
commit d01db38dae
No known key found for this signature in database
GPG Key ID: FC0397C90D508D7F
2 changed files with 37 additions and 2 deletions

View File

@ -1,7 +1,7 @@
org.gradle.jvmargs=-Xmx2G org.gradle.jvmargs=-Xmx2G
org.gradle.parallel=true org.gradle.parallel=true
version=1.0.0-alpha.9 version=1.0.0-alpha.10
group=gay.pridecraft group=gay.pridecraft
id=joy id=joy

View File

@ -1,10 +1,15 @@
package gay.pridecraft.joy.data; package gay.pridecraft.joy.data;
import gay.pridecraft.joy.JoyUtil;
import gay.pridecraft.joy.registry.JoyEntities; import gay.pridecraft.joy.registry.JoyEntities;
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.entity.EntityType;
import net.minecraft.registry.RegistryKeys;
import net.minecraft.registry.RegistryWrapper; import net.minecraft.registry.RegistryWrapper;
import net.minecraft.registry.tag.EntityTypeTags; import net.minecraft.registry.tag.EntityTypeTags;
import net.minecraft.registry.tag.TagKey;
import net.minecraft.util.Identifier;
import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletableFuture;
@ -13,17 +18,47 @@ import java.util.concurrent.CompletableFuture;
* @since 1.0.0 * @since 1.0.0
**/ **/
public class JoyEntityTagProvider extends FabricTagProvider.EntityTypeTagProvider { public class JoyEntityTagProvider extends FabricTagProvider.EntityTypeTagProvider {
public static final TagKey<EntityType<?>>
BEES = joy("bees"),
BARRICADE_PASSIVE = barricade("blocked_by_passive_barrier"),
BARRICADE_HOSTILE = barricade("blocked_by_hostile_barrier"),
BARRICADE_MOB = barricade("blocked_by_mob_barrier");
private static TagKey<EntityType<?>> joy(String name) {
return TagKey.of(RegistryKeys.ENTITY_TYPE, JoyUtil.id(name));
}
private static TagKey<EntityType<?>> barricade(String name) {
return TagKey.of(RegistryKeys.ENTITY_TYPE, Identifier.of("barricade", name));
}
private static TagKey<EntityType<?>> common(String name) {
return TagKey.of(RegistryKeys.ENTITY_TYPE, Identifier.of("c", name));
}
public JoyEntityTagProvider(final FabricDataOutput output, final CompletableFuture<RegistryWrapper.WrapperLookup> completableFuture) { public JoyEntityTagProvider(final FabricDataOutput output, final CompletableFuture<RegistryWrapper.WrapperLookup> completableFuture) {
super(output, completableFuture); super(output, completableFuture);
} }
@Override @Override
protected void configure(final RegistryWrapper.WrapperLookup wrapperLookup) { protected void configure(final RegistryWrapper.WrapperLookup wrapperLookup) {
getOrCreateTagBuilder(EntityTypeTags.BEEHIVE_INHABITORS).add( getOrCreateTagBuilder(BEES).add(
JoyEntities.BII, JoyEntities.BII,
JoyEntities.ENBEE, JoyEntities.ENBEE,
JoyEntities.TREE, JoyEntities.TREE,
JoyEntities.TRANS_BEE JoyEntities.TRANS_BEE
); );
getOrCreateTagBuilder(EntityTypeTags.BEEHIVE_INHABITORS)
.addTag(BEES);
getOrCreateTagBuilder(BARRICADE_PASSIVE)
.addTag(BEES)
.add(
JoyEntities.FROG,
JoyEntities.SNIFFER,
JoyEntities.SOCK_FOX
);
} }
} }