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.parallel=true
version=1.0.0-alpha.9
version=1.0.0-alpha.10
group=gay.pridecraft
id=joy

View File

@ -1,10 +1,15 @@
package gay.pridecraft.joy.data;
import gay.pridecraft.joy.JoyUtil;
import gay.pridecraft.joy.registry.JoyEntities;
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
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.tag.EntityTypeTags;
import net.minecraft.registry.tag.TagKey;
import net.minecraft.util.Identifier;
import java.util.concurrent.CompletableFuture;
@ -13,17 +18,47 @@ import java.util.concurrent.CompletableFuture;
* @since 1.0.0
**/
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) {
super(output, completableFuture);
}
@Override
protected void configure(final RegistryWrapper.WrapperLookup wrapperLookup) {
getOrCreateTagBuilder(EntityTypeTags.BEEHIVE_INHABITORS).add(
getOrCreateTagBuilder(BEES).add(
JoyEntities.BII,
JoyEntities.ENBEE,
JoyEntities.TREE,
JoyEntities.TRANS_BEE
);
getOrCreateTagBuilder(EntityTypeTags.BEEHIVE_INHABITORS)
.addTag(BEES);
getOrCreateTagBuilder(BARRICADE_PASSIVE)
.addTag(BEES)
.add(
JoyEntities.FROG,
JoyEntities.SNIFFER,
JoyEntities.SOCK_FOX
);
}
}