Add utility for creating identifiers with the mod's namespace

This commit is contained in:
Sollace 2022-08-27 15:14:00 +02:00
parent 09e0bcd7b2
commit b1a979eb24
37 changed files with 105 additions and 84 deletions

View file

@ -72,7 +72,7 @@ public interface USounds {
SoundEvent RECORD_FUNK = register("music_disc.funk");
static SoundEvent register(String name) {
Identifier id = new Identifier("unicopia", name);
Identifier id = Unicopia.id(name);
return Registry.register(Registry.SOUND_EVENT, id, new SoundEvent(id));
}

View file

@ -6,7 +6,6 @@ import net.minecraft.block.Block;
import net.minecraft.entity.EntityType;
import net.minecraft.item.Item;
import net.minecraft.tag.TagKey;
import net.minecraft.util.Identifier;
import net.minecraft.util.registry.Registry;
public interface UTags {
@ -28,15 +27,15 @@ public interface UTags {
TagKey<EntityType<?>> TRANSFORMABLE_ENTITIES = entity("transformable");
static TagKey<Item> item(String name) {
return TagKey.of(Registry.ITEM_KEY, new Identifier("unicopia", name));
return TagKey.of(Registry.ITEM_KEY, Unicopia.id(name));
}
static TagKey<Block> block(String name) {
return TagKey.of(Registry.BLOCK_KEY, new Identifier("unicopia", name));
return TagKey.of(Registry.BLOCK_KEY, Unicopia.id(name));
}
static TagKey<EntityType<?>> entity(String name) {
return TagKey.of(Registry.ENTITY_TYPE_KEY, new Identifier("unicopia", name));
return TagKey.of(Registry.ENTITY_TYPE_KEY, Unicopia.id(name));
}
static void bootstrap() {

View file

@ -8,6 +8,7 @@ import java.util.Set;
import java.util.function.BiFunction;
import com.minelittlepony.unicopia.Race;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.util.Registries;
import net.minecraft.util.Identifier;
@ -15,7 +16,7 @@ import net.minecraft.util.Util;
import net.minecraft.util.registry.Registry;
public interface Abilities {
Registry<Ability<?>> REGISTRY = Registries.createSimple(new Identifier("unicopia", "abilities"));
Registry<Ability<?>> REGISTRY = Registries.createSimple(Unicopia.id("abilities"));
Map<AbilitySlot, Set<Ability<?>>> BY_SLOT = new EnumMap<>(AbilitySlot.class);
BiFunction<AbilitySlot, Race, List<Ability<?>>> BY_SLOT_AND_RACE = Util.memoize((slot, race) -> {
return BY_SLOT.computeIfAbsent(slot, s -> new LinkedHashSet<>())
@ -52,7 +53,7 @@ public interface Abilities {
Ability<?> EEEE = register(new BatEeeeAbility(), "eee", AbilitySlot.TERTIARY);
static <T extends Ability<?>> T register(T power, String name, AbilitySlot slot) {
Identifier id = new Identifier("unicopia", name);
Identifier id = Unicopia.id(name);
BY_SLOT.computeIfAbsent(slot, s -> new LinkedHashSet<>()).add(power);
return Registry.register(REGISTRY, id, power);
}

View file

@ -1,5 +1,6 @@
package com.minelittlepony.unicopia.ability.data.tree;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.util.PosHelper;
import com.minelittlepony.unicopia.util.Weighted;
@ -11,14 +12,13 @@ import java.util.function.Supplier;
import net.minecraft.block.BlockState;
import net.minecraft.item.ItemStack;
import net.minecraft.util.Identifier;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Direction;
import net.minecraft.world.World;
public interface TreeType {
TreeType NONE = new TreeTypeImpl(
new Identifier("unicopia", "none"),
Unicopia.id("none"),
false,
new Weighted<Supplier<ItemStack>>(),
Set.of(),

View file

@ -8,6 +8,7 @@ import java.util.function.Supplier;
import com.google.gson.JsonElement;
import com.google.gson.JsonParseException;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.util.PosHelper;
import com.minelittlepony.unicopia.util.Resources;
import com.minelittlepony.unicopia.util.Weighted;
@ -27,7 +28,7 @@ import net.minecraft.util.registry.Registry;
import net.minecraft.world.World;
public class TreeTypeLoader extends JsonDataLoader implements IdentifiableResourceReloadListener {
private static final Identifier ID = new Identifier("unicopia", "data/tree_type");
private static final Identifier ID = Unicopia.id("data/tree_type");
public static final TreeTypeLoader INSTANCE = new TreeTypeLoader();

View file

@ -8,6 +8,7 @@ import java.util.Set;
import org.jetbrains.annotations.Nullable;
import com.minelittlepony.unicopia.Affinity;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.ability.magic.Affine;
import com.minelittlepony.unicopia.ability.magic.Caster;
import com.minelittlepony.unicopia.ability.magic.SpellPredicate;
@ -31,10 +32,10 @@ import net.minecraft.util.Util;
import net.minecraft.util.registry.Registry;
public final class SpellType<T extends Spell> implements Affine, SpellPredicate<T> {
public static final Identifier EMPTY_ID = new Identifier("unicopia", "none");
public static final Identifier EMPTY_ID = Unicopia.id("none");
public static final SpellType<?> EMPTY_KEY = new SpellType<>(EMPTY_ID, Affinity.NEUTRAL, 0xFFFFFF, false, SpellTraits.EMPTY, (t, c) -> null);
public static final Registry<SpellType<?>> REGISTRY = Registries.createSimple(new Identifier("unicopia", "spells"));
public static final Registry<SpellType<?>> REGISTRY = Registries.createSimple(Unicopia.id("spells"));
private static final Map<Affinity, Set<SpellType<?>>> BY_AFFINITY = new EnumMap<>(Affinity.class);
public static final SpellType<CompoundSpell> COMPOUND_SPELL = register("compound", Affinity.NEUTRAL, 0, false, SpellTraits.EMPTY, CompoundSpell::new);
@ -178,7 +179,7 @@ public final class SpellType<T extends Spell> implements Affine, SpellPredicate<
}
public static <T extends Spell> SpellType<T> register(String name, Affinity affinity, int color, boolean obtainable, SpellTraits traits, Factory<T> factory) {
return register(new Identifier("unicopia", name), affinity, color, obtainable, traits, factory);
return register(Unicopia.id(name), affinity, color, obtainable, traits, factory);
}
public static <T extends Spell> SpellType<T> register(Identifier id, Affinity affinity, int color, boolean obtainable, SpellTraits traits, Factory<T> factory) {

View file

@ -9,6 +9,7 @@ import java.util.stream.Collectors;
import java.util.stream.Stream;
import com.minelittlepony.common.client.gui.Tooltip;
import com.minelittlepony.unicopia.Unicopia;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NbtElement;
@ -65,8 +66,8 @@ public enum Trait {
private final TraitGroup group;
Trait(TraitGroup group) {
this.id = new Identifier("unicopia", name().toLowerCase());
this.sprite = new Identifier("unicopia", "textures/gui/trait/" + name().toLowerCase() + ".png");
this.id = Unicopia.id(name().toLowerCase());
this.sprite = Unicopia.id("textures/gui/trait/" + name().toLowerCase() + ".png");
this.group = group;
}

View file

@ -31,7 +31,7 @@ import net.minecraft.util.profiler.Profiler;
import net.minecraft.util.registry.Registry;
public class TraitLoader extends SinglePreparationResourceReloader<Multimap<Identifier, TraitLoader.TraitStream>> implements IdentifiableResourceReloadListener {
private static final Identifier ID = new Identifier("unicopia", "data/traits");
private static final Identifier ID = Unicopia.id("data/traits");
public static final TraitLoader INSTANCE = new TraitLoader();

View file

@ -8,6 +8,7 @@ import org.jetbrains.annotations.Nullable;
import com.google.gson.JsonArray;
import com.google.gson.JsonObject;
import com.minelittlepony.unicopia.Race;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.entity.player.Pony;
import net.minecraft.advancement.criterion.AbstractCriterion;
@ -22,7 +23,7 @@ import net.minecraft.util.JsonHelper;
public class CustomEventCriterion extends AbstractCriterion<CustomEventCriterion.Conditions> {
private static final Identifier ID = new Identifier("unicopia", "custom");
private static final Identifier ID = Unicopia.id("custom");
@Override
public Identifier getId() {

View file

@ -2,6 +2,7 @@ package com.minelittlepony.unicopia.advancement;
import com.google.gson.JsonObject;
import com.minelittlepony.unicopia.Race;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.entity.player.Pony;
import net.minecraft.advancement.criterion.AbstractCriterion;
@ -16,7 +17,7 @@ import net.minecraft.util.JsonHelper;
public class RaceChangeCriterion extends AbstractCriterion<RaceChangeCriterion.Conditions> {
private static final Identifier ID = new Identifier("unicopia", "player_change_race");
private static final Identifier ID = Unicopia.id("player_change_race");
@Override
public Identifier getId() {

View file

@ -1,12 +1,13 @@
package com.minelittlepony.unicopia.block;
import com.minelittlepony.unicopia.Unicopia;
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
import net.fabricmc.fabric.api.object.builder.v1.block.FabricMaterialBuilder;
import net.minecraft.block.Block;
import net.minecraft.block.Blocks;
import net.minecraft.block.MapColor;
import net.minecraft.sound.BlockSoundGroup;
import net.minecraft.util.Identifier;
import net.minecraft.util.registry.Registry;
public interface UBlocks {
@ -21,7 +22,7 @@ public interface UBlocks {
Block FROSTED_OBSIDIAN = register("frosted_obsidian", new FrostedObsidianBlock(FabricBlockSettings.copy(Blocks.OBSIDIAN).ticksRandomly()));
private static <T extends Block> T register(String name, T item) {
return Registry.register(Registry.BLOCK, new Identifier("unicopia", name), item);
return Registry.register(Registry.BLOCK, Unicopia.id(name), item);
}
static void bootstrap() {}

View file

@ -2,6 +2,7 @@ package com.minelittlepony.unicopia.block.state;
import java.util.function.Predicate;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.block.UBlocks;
import com.minelittlepony.unicopia.util.Registries;
@ -15,11 +16,10 @@ import net.minecraft.block.PlantBlock;
import net.minecraft.block.RedstoneWireBlock;
import net.minecraft.block.SnowBlock;
import net.minecraft.tag.BlockTags;
import net.minecraft.util.Identifier;
import net.minecraft.util.registry.Registry;
public class StateMaps {
private static final Registry<BlockStateConverter> REGISTRY = Registries.createSimple(new Identifier("unicopia", "state_map"));
private static final Registry<BlockStateConverter> REGISTRY = Registries.createSimple(Unicopia.id("state_map"));
public static final BlockStateConverter SNOW_PILED = register("snow_piled", new BlockStateMap.Builder()
.add(StateMapping.cycleProperty(Blocks.SNOW, SnowBlock.LAYERS, 7)));
@ -82,7 +82,7 @@ public class StateMaps {
.add(StateMapping.build(s -> !s.isOf(Blocks.NETHER_QUARTZ_ORE) && isOre(s), Blocks.NETHER_QUARTZ_ORE, s -> StateMapping.replaceBlock(Blocks.NETHER_QUARTZ_ORE, Blocks.COAL_ORE))));
private static <T extends BlockStateConverter> T register(String name, BlockStateMap.Builder value) {
return Registry.register(REGISTRY, new Identifier("unicopia", name), value.build());
return Registry.register(REGISTRY, Unicopia.id(name), value.build());
}
static Predicate<BlockState> isOf(Block block) {

View file

@ -23,7 +23,6 @@ import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.server.integrated.IntegratedServer;
import net.minecraft.text.Text;
import net.minecraft.util.Formatting;
import net.minecraft.util.Identifier;
public class LanSettingsScreen extends GameGui {
@ -152,7 +151,7 @@ public class LanSettingsScreen extends GameGui {
.setIcon(new TextureSprite()
.setPosition(2, 2)
.setSize(16, 16)
.setTexture(new Identifier("unicopia", "textures/gui/icons.png"))
.setTexture(TribeSelectionScreen.ICONS)
.setTextureOffset((16 * ordinal) % 256, (ordinal / 256) * 16)
)
.setTooltip(race.getTranslationKey(), 0, 10);

View file

@ -6,6 +6,7 @@ import java.util.Set;
import com.minelittlepony.common.client.gui.GameGui;
import com.minelittlepony.common.client.gui.element.Label;
import com.minelittlepony.unicopia.Race;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.client.UnicopiaClient;
import com.minelittlepony.unicopia.network.Channel;
import com.minelittlepony.unicopia.network.MsgRequestSpeciesChange;
@ -16,8 +17,8 @@ import net.minecraft.util.Formatting;
import net.minecraft.util.Identifier;
public class TribeSelectionScreen extends GameGui implements HidesHud {
static final Identifier ICONS = new Identifier("unicopia", "textures/gui/icons.png");
static final Identifier TEXTURE = new Identifier("unicopia", "textures/gui/tribe_selection.png");
static final Identifier ICONS = Unicopia.id("textures/gui/icons.png");
static final Identifier TEXTURE = Unicopia.id("textures/gui/tribe_selection.png");
final Set<Race> allowedRaces;

View file

@ -4,8 +4,7 @@ import java.util.List;
import org.jetbrains.annotations.Nullable;
import com.minelittlepony.unicopia.Race;
import com.minelittlepony.unicopia.USounds;
import com.minelittlepony.unicopia.*;
import com.minelittlepony.unicopia.ability.AbilityDispatcher;
import com.minelittlepony.unicopia.ability.AbilitySlot;
import com.minelittlepony.unicopia.ability.magic.spell.AbstractDisguiseSpell;
@ -40,7 +39,7 @@ public class UHud extends DrawableHelper {
public static final UHud INSTANCE = new UHud();
public static final Identifier HUD_TEXTURE = new Identifier("unicopia", "textures/gui/hud.png");
public static final Identifier HUD_TEXTURE = Unicopia.id("textures/gui/hud.png");
public static final int PRIMARY_SLOT_SIZE = 49;

View file

@ -1,5 +1,6 @@
package com.minelittlepony.unicopia.client.particle;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.particle.OrientedBillboardParticleEffect;
import net.minecraft.client.world.ClientWorld;
@ -9,7 +10,7 @@ import net.minecraft.util.Identifier;
import net.minecraft.util.math.MathHelper;
public class RainboomParticle extends OrientedBillboardParticle {
private static final Identifier TEXTURE = new Identifier("unicopia", "textures/particles/rainboom_ring.png");
private static final Identifier TEXTURE = Unicopia.id("textures/particles/rainboom_ring.png");
protected float prevBaseSize = 0;
protected float baseSize = 0;

View file

@ -4,6 +4,7 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Optional;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.ability.magic.Caster;
import com.minelittlepony.unicopia.entity.player.Pony;
import com.minelittlepony.unicopia.particle.ParticleHandle.Attachment;
@ -19,7 +20,7 @@ import net.minecraft.util.Identifier;
import net.minecraft.util.math.Vec3d;
public class RainbowTrailParticle extends AbstractBillboardParticle implements Attachment {
private static final Identifier TEXTURE = new Identifier("unicopia", "textures/particles/rainboom_trail.png");
private static final Identifier TEXTURE = Unicopia.id("textures/particles/rainboom_trail.png");
private final List<Segment> segments = new ArrayList<>();

View file

@ -3,6 +3,7 @@ package com.minelittlepony.unicopia.client.particle;
import java.util.Optional;
import com.minelittlepony.common.util.Color;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.ability.magic.Caster;
import com.minelittlepony.unicopia.particle.OrientedBillboardParticleEffect;
import com.minelittlepony.unicopia.particle.ParticleHandle.Attachment;
@ -21,12 +22,12 @@ import net.minecraft.util.math.Vec3d;
public class RunesParticle extends OrientedBillboardParticle implements Attachment {
private static final Identifier[] TEXTURES = new Identifier[] {
new Identifier("unicopia", "textures/particles/runes_0.png"),
new Identifier("unicopia", "textures/particles/runes_1.png"),
new Identifier("unicopia", "textures/particles/runes_2.png"),
new Identifier("unicopia", "textures/particles/runes_3.png"),
new Identifier("unicopia", "textures/particles/runes_4.png"),
new Identifier("unicopia", "textures/particles/runes_5.png")
Unicopia.id("textures/particles/runes_0.png"),
Unicopia.id("textures/particles/runes_1.png"),
Unicopia.id("textures/particles/runes_2.png"),
Unicopia.id("textures/particles/runes_3.png"),
Unicopia.id("textures/particles/runes_4.png"),
Unicopia.id("textures/particles/runes_5.png")
};
protected float prevBaseSize = 0;

View file

@ -1,6 +1,7 @@
package com.minelittlepony.unicopia.client.render;
import com.minelittlepony.unicopia.Race;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.entity.player.Pony;
import net.minecraft.client.model.Dilation;
@ -15,7 +16,7 @@ import net.minecraft.util.Identifier;
public class BatWingsFeatureRenderer<E extends LivingEntity> extends WingsFeatureRenderer<E> {
private static final Identifier TEXTURE = new Identifier("unicopia", "textures/models/wings/bat.png");
private static final Identifier TEXTURE = Unicopia.id("textures/models/wings/bat.png");
public BatWingsFeatureRenderer(FeatureRendererContext<E, ? extends BipedEntityModel<E>> context) {
super(context);

View file

@ -1,6 +1,7 @@
package com.minelittlepony.unicopia.client.render;
import com.minelittlepony.common.util.Color;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.client.minelittlepony.MineLPConnector;
import com.minelittlepony.unicopia.item.FriendshipBraceletItem;
import com.minelittlepony.unicopia.item.GlowableItem;
@ -33,7 +34,7 @@ import net.minecraft.util.Identifier;
public class BraceletFeatureRenderer<E extends LivingEntity> implements AccessoryFeatureRenderer.Feature<E> {
public static final Identifier TEXTURE = new Identifier("unicopia", "textures/models/armor/bracelet.png");
public static final Identifier TEXTURE = Unicopia.id("textures/models/armor/bracelet.png");
private final BraceletModel steveModel;
private final BraceletModel alexModel;

View file

@ -1,5 +1,6 @@
package com.minelittlepony.unicopia.client.render;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.item.UItems;
import net.minecraft.client.render.entity.feature.FeatureRendererContext;
@ -8,8 +9,8 @@ import net.minecraft.entity.LivingEntity;
import net.minecraft.util.Identifier;
public class IcarusWingsFeatureRenderer<E extends LivingEntity> extends WingsFeatureRenderer<E> {
private static final Identifier ICARUS_WINGS = new Identifier("unicopia", "textures/models/wings/icarus.png");
private static final Identifier ICARUS_WINGS_CORRUPTED = new Identifier("unicopia", "textures/models/wings/icarus_corrupted.png");
private static final Identifier ICARUS_WINGS = Unicopia.id("textures/models/wings/icarus.png");
private static final Identifier ICARUS_WINGS_CORRUPTED = Unicopia.id("textures/models/wings/icarus_corrupted.png");
public IcarusWingsFeatureRenderer(FeatureRendererContext<E, ? extends BipedEntityModel<E>> context) {
super(context);

View file

@ -1,5 +1,6 @@
package com.minelittlepony.unicopia.client.render;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.entity.player.Pony;
import net.minecraft.client.model.Dilation;
@ -26,7 +27,7 @@ public class WingsFeatureRenderer<E extends LivingEntity> implements AccessoryFe
protected static final int FEATHER_COUNT = 8;
private static final Identifier PEGASUS_WINGS = new Identifier("unicopia", "textures/models/wings/pegasus.png");
private static final Identifier PEGASUS_WINGS = Unicopia.id("textures/models/wings/pegasus.png");
private final WingsModel model;

View file

@ -3,6 +3,7 @@ package com.minelittlepony.unicopia.client.render.entity;
import net.minecraft.util.math.MathHelper;
import net.minecraft.util.math.Vec3f;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.entity.SpellbookEntity;
import net.minecraft.client.render.entity.EntityRendererFactory;
@ -11,7 +12,7 @@ import net.minecraft.client.util.math.MatrixStack;
import net.minecraft.util.Identifier;
public class SpellbookEntityRenderer extends LivingEntityRenderer<SpellbookEntity, SpellbookModel> {
private static final Identifier TEXTURE = new Identifier("unicopia", "textures/entity/spellbook/normal.png");
private static final Identifier TEXTURE = Unicopia.id("textures/entity/spellbook/normal.png");
public SpellbookEntityRenderer(EntityRendererFactory.Context context) {
super(context, new SpellbookModel(SpellbookModel.getTexturedModelData().createModel()), 0);

View file

@ -5,6 +5,7 @@ import com.minelittlepony.common.client.gui.ScrollContainer;
import com.minelittlepony.common.client.gui.element.Button;
import com.minelittlepony.common.client.gui.element.Label;
import com.minelittlepony.common.client.gui.sprite.TextureSprite;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.ability.magic.spell.crafting.SpellbookRecipe;
import com.minelittlepony.unicopia.ability.magic.spell.trait.Trait;
import com.minelittlepony.unicopia.ability.magic.spell.trait.TraitDiscovery;
@ -26,8 +27,9 @@ import net.minecraft.text.Text;
import net.minecraft.util.Identifier;
public class SpellbookScreen extends HandledScreen<SpellbookScreenHandler> implements RecipeBookProvider {
public static final Identifier TEXTURE = new Identifier("unicopia", "textures/gui/container/book.png");
public static final Identifier SLOT = new Identifier("unicopia", "textures/gui/container/slot.png");
public static final Identifier TEXTURE = Unicopia.id("textures/gui/container/book.png");
public static final Identifier SLOT = Unicopia.id("textures/gui/container/slot.png");
public static final Identifier GEM = Unicopia.id("textures/item/gemstone.png");
private final RecipeBookWidget recipeBook = new RecipeBookWidget();
@ -138,7 +140,7 @@ public class SpellbookScreen extends HandledScreen<SpellbookScreenHandler> imple
if (slot instanceof InputSlot) {
RenderSystem.setShaderColor(1, 1, 1, 0.3F);
RenderSystem.setShaderTexture(0, new Identifier("unicopia", "textures/item/gemstone.png"));
RenderSystem.setShaderTexture(0, GEM);
drawTexture(matrices, slot.x, slot.y, 0, 0, 16, 16, 16, 16);
RenderSystem.setShaderColor(1, 1, 1, 1);
RenderSystem.setShaderTexture(0, SLOT);

View file

@ -1,15 +1,16 @@
package com.minelittlepony.unicopia.container;
import com.minelittlepony.unicopia.Unicopia;
import net.minecraft.screen.ScreenHandler;
import net.minecraft.screen.ScreenHandlerType;
import net.minecraft.util.Identifier;
import net.minecraft.util.registry.Registry;
public interface UScreenHandlers {
ScreenHandlerType<SpellbookScreenHandler> SPELL_BOOK = register("spell_book", SpellbookScreenHandler::new);
static <T extends ScreenHandler> ScreenHandlerType<T> register(String name, ScreenHandlerType.Factory<T> factory) {
return Registry.register(Registry.SCREEN_HANDLER, new Identifier("unicopia", name), new ScreenHandlerType<>(factory));
return Registry.register(Registry.SCREEN_HANDLER, Unicopia.id(name), new ScreenHandlerType<>(factory));
}
static void bootstrap() { }

View file

@ -7,6 +7,7 @@ import java.util.Optional;
import org.jetbrains.annotations.Nullable;
import com.minelittlepony.unicopia.USounds;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.util.NbtSerialisable;
import net.minecraft.block.BlockState;
@ -357,7 +358,7 @@ public class ButterflyEntity extends AmbientEntity {
private static final Variant[] VALUES = Variant.values();
private final Identifier skin = new Identifier("unicopia", "textures/entity/butterfly/" + name().toLowerCase() + ".png");
private final Identifier skin = Unicopia.id("textures/entity/butterfly/" + name().toLowerCase() + ".png");
public Identifier getSkin() {
return skin;

View file

@ -2,6 +2,7 @@ package com.minelittlepony.unicopia.entity;
import java.util.function.Predicate;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.projectile.MagicProjectileEntity;
import net.fabricmc.fabric.api.biome.v1.BiomeModifications;
@ -14,7 +15,6 @@ import net.minecraft.entity.EntityDimensions;
import net.minecraft.entity.EntityType;
import net.minecraft.entity.SpawnGroup;
import net.minecraft.tag.BiomeTags;
import net.minecraft.util.Identifier;
import net.minecraft.util.registry.Registry;
import net.minecraft.world.biome.Biome;
@ -48,7 +48,7 @@ public interface UEntities {
static <T extends Entity> EntityType<T> register(String name, FabricEntityTypeBuilder<T> builder) {
EntityType<T> type = builder.build();
return Registry.register(Registry.ENTITY_TYPE, new Identifier("unicopia", name), type);
return Registry.register(Registry.ENTITY_TYPE, Unicopia.id(name), type);
}
static void bootstrap() {

View file

@ -5,6 +5,7 @@ import java.util.function.Supplier;
import org.jetbrains.annotations.Nullable;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.ability.magic.Caster;
import com.minelittlepony.unicopia.entity.ItemWielder;
import com.minelittlepony.unicopia.entity.player.Pony;
@ -30,7 +31,6 @@ import net.minecraft.entity.projectile.LlamaSpitEntity;
import net.minecraft.entity.projectile.thrown.SnowballEntity;
import net.minecraft.item.ItemStack;
import net.minecraft.sound.SoundEvents;
import net.minecraft.util.Identifier;
import net.minecraft.util.math.BlockPos;
import net.minecraft.util.math.Vec3d;
import net.minecraft.util.registry.Registry;
@ -38,7 +38,7 @@ import net.minecraft.util.registry.Registry;
public class EntityBehaviour<T extends Entity> {
private static final EntityBehaviour<Entity> DEFAULT = new EntityBehaviour<>();
private static final Registry<EntityBehaviour<?>> REGISTRY = Registries.createSimple(new Identifier("unicopia", "entity_behaviour"));
private static final Registry<EntityBehaviour<?>> REGISTRY = Registries.createSimple(Unicopia.id("entity_behaviour"));
/**
* Equivalent of the entity#tick method. Called every tick to update th logic for a disguise.

View file

@ -1,7 +1,8 @@
package com.minelittlepony.unicopia.entity.effect;
import com.minelittlepony.unicopia.Unicopia;
import net.minecraft.entity.effect.StatusEffect;
import net.minecraft.util.Identifier;
import net.minecraft.util.registry.Registry;
public interface UEffects {
@ -10,7 +11,7 @@ public interface UEffects {
StatusEffect CORRUPT_INFLUENCE = register("corrupt_influence", new CorruptInfluenceStatusEffect(0x00FF00));
private static StatusEffect register(String name, StatusEffect effect) {
return Registry.register(Registry.STATUS_EFFECT, new Identifier("unicopia", name), effect);
return Registry.register(Registry.STATUS_EFFECT, Unicopia.id(name), effect);
}
static void bootstrap() {}

View file

@ -1,8 +1,9 @@
package com.minelittlepony.unicopia.entity.effect;
import com.minelittlepony.unicopia.Unicopia;
import net.minecraft.entity.effect.StatusEffectInstance;
import net.minecraft.potion.Potion;
import net.minecraft.util.Identifier;
import net.minecraft.util.registry.Registry;
public interface UPotions {
@ -13,7 +14,7 @@ public interface UPotions {
Potion TRIBE_SWAP_CHANGELING = register("tribe_swap_changeling", new Potion("unicopia.tribe_swap_changeling", new StatusEffectInstance(RaceChangeStatusEffect.CHANGE_RACE_CHANGELING, RaceChangeStatusEffect.MAX_DURATION)));
static Potion register(String name, Potion potion) {
return Registry.register(Registry.POTION, new Identifier("unicopia", name), potion);
return Registry.register(Registry.POTION, Unicopia.id(name), potion);
}
static void bootstrap() {

View file

@ -2,18 +2,18 @@ package com.minelittlepony.unicopia.item;
import java.util.stream.Collectors;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.item.toxin.ToxicHolder;
import net.minecraft.item.Item;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Items;
import net.fabricmc.fabric.api.client.itemgroup.FabricItemGroupBuilder;
import net.minecraft.util.Identifier;
import net.minecraft.util.collection.DefaultedList;
import net.minecraft.util.registry.Registry;
public interface UItemGroups {
ItemGroup ALL_ITEMS = FabricItemGroupBuilder.create(new Identifier("unicopia", "items")).appendItems(list -> {
ItemGroup ALL_ITEMS = FabricItemGroupBuilder.create(Unicopia.id("items")).appendItems(list -> {
list.add(Items.APPLE.getDefaultStack());
DefaultedList<ItemStack> defs = DefaultedList.of();
@ -24,7 +24,7 @@ public interface UItemGroups {
});
list.addAll(defs);
}).icon(UItems.EMPTY_JAR::getDefaultStack).build();
ItemGroup HORSE_FEED = FabricItemGroupBuilder.create(new Identifier("unicopia", "horsefeed")).appendItems(list -> {
ItemGroup HORSE_FEED = FabricItemGroupBuilder.create(Unicopia.id("horsefeed")).appendItems(list -> {
list.addAll(Registry.ITEM.stream()
.map(Item::getDefaultStack)
.filter(item -> item.getItem() instanceof ToxicHolder && ((ToxicHolder)item.getItem()).getToxic(item).isPresent())

View file

@ -3,8 +3,7 @@ package com.minelittlepony.unicopia.item;
import java.util.ArrayList;
import java.util.List;
import com.minelittlepony.unicopia.Race;
import com.minelittlepony.unicopia.USounds;
import com.minelittlepony.unicopia.*;
import com.minelittlepony.unicopia.block.UBlocks;
import com.minelittlepony.unicopia.entity.UEntities;
import com.minelittlepony.unicopia.item.enchantment.UEnchantments;
@ -20,7 +19,6 @@ import net.minecraft.item.FoodComponents;
import net.minecraft.item.MusicDiscItem;
import net.minecraft.item.SpawnEggItem;
import net.minecraft.sound.SoundEvent;
import net.minecraft.util.Identifier;
import net.minecraft.util.Rarity;
import net.minecraft.util.registry.Registry;
@ -103,7 +101,7 @@ public interface UItems {
if (item instanceof BlockItem) {
((BlockItem)item).appendBlocks(Item.BLOCK_ITEMS, item);
}
return Registry.register(Registry.ITEM, new Identifier("unicopia", name), item);
return Registry.register(Registry.ITEM, Unicopia.id(name), item);
}
static MusicDiscItem register(String name, SoundEvent sound, int seconds) {

View file

@ -11,6 +11,8 @@ import net.minecraft.entity.attribute.EntityAttributes;
import net.minecraft.entity.attribute.EntityAttributeModifier.Operation;
public class CollaboratorEnchantment extends AttributedEnchantment {
private static final UUID TEAM_STRENGTH_UUID = UUID.fromString("5f08c02d-d959-4763-ac84-16e2acfd4b62");
protected CollaboratorEnchantment() {
super(Rarity.RARE, EnchantmentTarget.WEAPON, false, 3, EquipmentSlot.MAINHAND);
this.addModifier(EntityAttributes.GENERIC_ATTACK_DAMAGE, this::getModifier);
@ -22,7 +24,7 @@ public class CollaboratorEnchantment extends AttributedEnchantment {
}
private EntityAttributeModifier getModifier(Living<?> user, int level) {
return new EntityAttributeModifier(UUID.fromString("5f08c02d-d959-4763-ac84-16e2acfd4b62"), "Team Strength", user.getEnchants().computeIfAbsent(this, Data::new).level / 2, Operation.ADDITION);
return new EntityAttributeModifier(TEAM_STRENGTH_UUID, "Team Strength", user.getEnchants().computeIfAbsent(this, Data::new).level / 2, Operation.ADDITION);
}
private int getTeamCollectiveLevel(Living<?> user, int radius) {

View file

@ -25,8 +25,8 @@ import net.minecraft.util.profiler.Profiler;
import net.minecraft.util.registry.Registry;
public class PoisonedJokeEnchantment extends SimpleEnchantment implements IdentifiableResourceReloadListener {
private static final Identifier ID = new Identifier("unicopia", "data/poisoned_joke_sounds");
private static final Identifier FILE = new Identifier("unicopia", "poisoned_joke_sounds.json");
private static final Identifier ID = Unicopia.id("data/poisoned_joke_sounds");
private static final Identifier FILE = Unicopia.id("poisoned_joke_sounds.json");
private static final Type TYPE = TypeUtils.parameterize(List.class, Identifier.class);
private List<SoundEvent> sounds = new ArrayList<>();

View file

@ -4,6 +4,7 @@ import java.util.ArrayList;
import java.util.List;
import java.util.UUID;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.entity.player.PlayerAttributes;
import net.minecraft.enchantment.Enchantment;
@ -13,7 +14,6 @@ import net.minecraft.entity.attribute.EntityAttributeModifier;
import net.minecraft.entity.attribute.EntityAttributes;
import net.minecraft.entity.attribute.EntityAttributeModifier.Operation;
import net.minecraft.enchantment.EnchantmentTarget;
import net.minecraft.util.Identifier;
import net.minecraft.util.registry.Registry;
public interface UEnchantments {
@ -81,6 +81,6 @@ public interface UEnchantments {
static <T extends SimpleEnchantment> T register(String name, T enchantment) {
REGISTRY.add(enchantment);
return Registry.register(Registry.ENCHANTMENT, new Identifier("unicopia", name), enchantment);
return Registry.register(Registry.ENCHANTMENT, Unicopia.id(name), enchantment);
}
}

View file

@ -2,6 +2,7 @@ package com.minelittlepony.unicopia.network;
import com.minelittlepony.unicopia.util.network.S2CBroadcastPacketType;
import com.minelittlepony.unicopia.util.network.S2CPacketType;
import com.minelittlepony.unicopia.Unicopia;
import com.minelittlepony.unicopia.entity.player.Pony;
import com.minelittlepony.unicopia.util.network.C2SPacketType;
import com.minelittlepony.unicopia.util.network.SimpleNetworking;
@ -10,22 +11,22 @@ import net.fabricmc.fabric.api.networking.v1.ServerPlayConnectionEvents;
import net.minecraft.util.Identifier;
public interface Channel {
C2SPacketType<MsgPlayerAbility<?>> CLIENT_PLAYER_ABILITY = SimpleNetworking.clientToServer(new Identifier("unicopia", "player_ability"), MsgPlayerAbility::new);
C2SPacketType<MsgRequestSpeciesChange> CLIENT_REQUEST_SPECIES_CHANGE = SimpleNetworking.clientToServer(new Identifier("unicopia", "request_capabilities"), MsgRequestSpeciesChange::new);
C2SPacketType<MsgMarkTraitRead> MARK_TRAIT_READ = SimpleNetworking.clientToServer(new Identifier("unicopia", "mark_trait_read"), MsgMarkTraitRead::new);
C2SPacketType<MsgRemoveSpell> REMOVE_SPELL = SimpleNetworking.clientToServer(new Identifier("unicopia", "remove_spell"), MsgRemoveSpell::new);
C2SPacketType<MsgPlayerAbility<?>> CLIENT_PLAYER_ABILITY = SimpleNetworking.clientToServer(Unicopia.id("player_ability"), MsgPlayerAbility::new);
C2SPacketType<MsgRequestSpeciesChange> CLIENT_REQUEST_SPECIES_CHANGE = SimpleNetworking.clientToServer(Unicopia.id("request_capabilities"), MsgRequestSpeciesChange::new);
C2SPacketType<MsgMarkTraitRead> MARK_TRAIT_READ = SimpleNetworking.clientToServer(Unicopia.id("mark_trait_read"), MsgMarkTraitRead::new);
C2SPacketType<MsgRemoveSpell> REMOVE_SPELL = SimpleNetworking.clientToServer(Unicopia.id("remove_spell"), MsgRemoveSpell::new);
S2CPacketType<MsgPlayerCapabilities> SERVER_PLAYER_CAPABILITIES = SimpleNetworking.serverToClient(new Identifier("unicopia", "player_capabilities"), MsgPlayerCapabilities::new);
S2CPacketType<MsgSpawnProjectile> SERVER_SPAWN_PROJECTILE = SimpleNetworking.serverToClient(new Identifier("unicopia", "projectile_entity"), MsgSpawnProjectile::new);
S2CPacketType<MsgBlockDestruction> SERVER_BLOCK_DESTRUCTION = SimpleNetworking.serverToClient(new Identifier("unicopia", "block_destruction"), MsgBlockDestruction::new);
S2CPacketType<MsgCancelPlayerAbility> CANCEL_PLAYER_ABILITY = SimpleNetworking.serverToClient(new Identifier("unicopia", "player_ability_cancel"), MsgCancelPlayerAbility::new);
S2CPacketType<MsgUnlockTraits> UNLOCK_TRAITS = SimpleNetworking.serverToClient(new Identifier("unicopia", "unlock_traits"), MsgUnlockTraits::new);
S2CPacketType<MsgPlayerCapabilities> SERVER_PLAYER_CAPABILITIES = SimpleNetworking.serverToClient(Unicopia.id("player_capabilities"), MsgPlayerCapabilities::new);
S2CPacketType<MsgSpawnProjectile> SERVER_SPAWN_PROJECTILE = SimpleNetworking.serverToClient(Unicopia.id("projectile_entity"), MsgSpawnProjectile::new);
S2CPacketType<MsgBlockDestruction> SERVER_BLOCK_DESTRUCTION = SimpleNetworking.serverToClient(Unicopia.id("block_destruction"), MsgBlockDestruction::new);
S2CPacketType<MsgCancelPlayerAbility> CANCEL_PLAYER_ABILITY = SimpleNetworking.serverToClient(Unicopia.id("player_ability_cancel"), MsgCancelPlayerAbility::new);
S2CPacketType<MsgUnlockTraits> UNLOCK_TRAITS = SimpleNetworking.serverToClient(Unicopia.id("unlock_traits"), MsgUnlockTraits::new);
Identifier SERVER_SELECT_TRIBE_ID = new Identifier("unicopia", "select_tribe");
Identifier SERVER_SELECT_TRIBE_ID = Unicopia.id("select_tribe");
S2CPacketType<MsgTribeSelect> SERVER_SELECT_TRIBE = SimpleNetworking.serverToClient(SERVER_SELECT_TRIBE_ID, MsgTribeSelect::new);
S2CBroadcastPacketType<MsgOtherPlayerCapabilities> SERVER_OTHER_PLAYER_CAPABILITIES = SimpleNetworking.serverToClients(new Identifier("unicopia", "other_player_capabilities"), MsgOtherPlayerCapabilities::new);
S2CBroadcastPacketType<MsgPlayerAnimationChange> SERVER_PLAYER_ANIMATION_CHANGE = SimpleNetworking.serverToClients(new Identifier("unicopia", "other_player_animation_change"), MsgPlayerAnimationChange::new);
S2CBroadcastPacketType<MsgOtherPlayerCapabilities> SERVER_OTHER_PLAYER_CAPABILITIES = SimpleNetworking.serverToClients(Unicopia.id("other_player_capabilities"), MsgOtherPlayerCapabilities::new);
S2CBroadcastPacketType<MsgPlayerAnimationChange> SERVER_PLAYER_ANIMATION_CHANGE = SimpleNetworking.serverToClients(Unicopia.id("other_player_animation_change"), MsgPlayerAnimationChange::new);
static void bootstrap() {
ServerPlayConnectionEvents.JOIN.register((handler, sender, server) -> {

View file

@ -1,9 +1,10 @@
package com.minelittlepony.unicopia.particle;
import com.minelittlepony.unicopia.Unicopia;
import net.fabricmc.fabric.api.particle.v1.FabricParticleTypes;
import net.minecraft.particle.DefaultParticleType;
import net.minecraft.particle.ParticleType;
import net.minecraft.util.Identifier;
import net.minecraft.util.registry.Registry;
public interface UParticles {
@ -29,6 +30,6 @@ public interface UParticles {
DefaultParticleType LIGHTNING_BOLT = register("lightning_bolt", FabricParticleTypes.simple(true));
static <T extends ParticleType<?>> T register(String name, T type) {
return Registry.register(Registry.PARTICLE_TYPE, new Identifier("unicopia", name), type);
return Registry.register(Registry.PARTICLE_TYPE, Unicopia.id(name), type);
}
}