类net.minecraft.util.registry.RegistryKey源码实例Demo

下面列出了怎么用net.minecraft.util.registry.RegistryKey的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: multiconnect   文件: Protocol_1_13_2.java
private void mutateEntityTypeRegistry(ISimpleRegistry<EntityType<?>> registry) {
    registry.unregister(EntityType.CAT);
    int ocelotId = Registry.ENTITY_TYPE.getRawId(EntityType.OCELOT);
    registry.unregister(EntityType.OCELOT);
    RegistryKey<EntityType<?>> ocelotKey = RegistryKey.of(registry.getRegistryKey(), new Identifier("ocelot"));
    registry.register(EntityType.CAT, ocelotId, ocelotKey);
    registry.unregister(EntityType.FOX);
    registry.unregister(EntityType.PANDA);
    registry.unregister(EntityType.PILLAGER);
    registry.unregister(EntityType.RAVAGER);
    registry.unregister(EntityType.TRADER_LLAMA);
    registry.unregister(EntityType.WANDERING_TRADER);
    registry.unregister(EntityType.TRIDENT);
    insertAfter(registry, EntityType.FISHING_BOBBER, EntityType.TRIDENT, "trident");
    ENTITY_REGISTRY_1_13 = registry.copy();
}
 
源代码2 项目: multiconnect   文件: AbstractProtocol.java
@SuppressWarnings("unchecked")
public static <T> void insertAfter(ISimpleRegistry<T> registry, T element, T toInsert, String id, boolean inPlace) {
    RegistryKey<T> key = RegistryKey.of(registry.getRegistryKey(), new Identifier(id));
    int numericalId = ((SimpleRegistry<T>) registry).getRawId(element) + 1;
    if (inPlace) {
        registry.registerInPlace(toInsert, numericalId, key);
    } else {
        registry.register(toInsert, numericalId, key);
    }
}
 
源代码3 项目: multiconnect   文件: AbstractProtocol.java
@SuppressWarnings("unchecked")
protected <T> void postMutateRegistry(Registry<T> registry) {
    if (!(registry instanceof SimpleRegistry)) return;
    if (registry instanceof DefaultedRegistry) return;
    ISimpleRegistry<T> iregistry = (ISimpleRegistry<T>) registry;
    DefaultRegistry<T> defaultRegistry = (DefaultRegistry<T>) DefaultRegistry.DEFAULT_REGISTRIES.get(registry);
    if (defaultRegistry == null) return;
    for (Map.Entry<Identifier, T> entry : defaultRegistry.defaultEntriesById.entrySet()) {
        if (registry.getId(entry.getValue()) == null) {
            RegistryKey<T> key = RegistryKey.of(iregistry.getRegistryKey(), entry.getKey());
            iregistry.register(entry.getValue(), iregistry.getNextId(), key, false);
        }
    }
}
 
源代码4 项目: multiconnect   文件: AbstractProtocol.java
@SuppressWarnings("unchecked")
public static <T> void rename(ISimpleRegistry<T> registry, T value, String newName) {
    int id = ((SimpleRegistry<T>) registry).getRawId(value);
    registry.purge(value);
    RegistryKey<T> key = RegistryKey.of(registry.getRegistryKey(), new Identifier(newName));
    registry.registerInPlace(value, id, key);
}
 
源代码5 项目: multiconnect   文件: Protocol_1_13_2.java
private void mutateRecipeSerializerRegistry(ISimpleRegistry<RecipeSerializer<?>> registry) {
    registry.unregister(RecipeSerializer.SUSPICIOUS_STEW);
    registry.unregister(RecipeSerializer.BLASTING);
    registry.unregister(RecipeSerializer.SMOKING);
    registry.unregister(RecipeSerializer.CAMPFIRE_COOKING);
    registry.unregister(RecipeSerializer.STONECUTTING);
    RegistryKey<RecipeSerializer<?>> bannerAddPatternKey = RegistryKey.of(registry.getRegistryKey(), new Identifier("crafting_special_banneraddpattern"));
    registry.register(AddBannerPatternRecipe.SERIALIZER, registry.getNextId(), bannerAddPatternKey);
}
 
源代码6 项目: multiconnect   文件: MixinSimpleRegistry.java
@Override
public void register(T t, int id, RegistryKey<T> key, boolean sideEffects) {
    for (int remapId = getNextId(); remapId > id; remapId--) {
        T toRemap = indexedEntries.get(remapId - 1);
        //noinspection unchecked
        ((IInt2ObjectBiMap<T>) indexedEntries).multiconnect_remove(toRemap);
        indexedEntries.put(toRemap, remapId);
    }
    setNextId(getNextId() + 1);
    set(id, key, t);

    if (sideEffects)
        registerListeners.forEach(listener -> listener.onUpdate(t, false));
}
 
源代码7 项目: multiconnect   文件: MixinSimpleRegistry.java
@Override
public void registerInPlace(T t, int id, RegistryKey<T> key, boolean sideEffects) {
    if (id == getNextId())
        setNextId(id + 1);
    set(id, key, t);

    if (sideEffects)
        registerListeners.forEach(listener -> listener.onUpdate(t, true));
}
 
源代码8 项目: multiconnect   文件: MixinSimpleRegistry.java
@SuppressWarnings("unchecked")
@Override
public SimpleRegistry<T> copy() {
    SimpleRegistry<T> newRegistry = new SimpleRegistry<>(getRegistryKey(), ((RegistryAccessor<T>) this).getLifecycle());
    for (Map.Entry<RegistryKey<T>, T> entry : entriesByKey.entrySet()) {
        newRegistry.set(indexedEntries.getId(entry.getValue()), entry.getKey(), entry.getValue());
    }
    return newRegistry;
}
 
源代码9 项目: multiconnect   文件: ISimpleRegistry.java
default void register(T t, int id, RegistryKey<T> key) {
    register(t, id, key, true);
}
 
源代码10 项目: multiconnect   文件: ISimpleRegistry.java
default void registerInPlace(T t, int id, RegistryKey<T> key) {
    registerInPlace(t, id, key, true);
}
 
源代码11 项目: multiconnect   文件: Protocol_1_11.java
private void mutateCustomStatRegistry(ISimpleRegistry<Identifier> registry) {
    registry.register(JUNK_FISHED, registry.getNextId(), RegistryKey.of(registry.getRegistryKey(), JUNK_FISHED));
    registry.register(TREASURE_FISHED, registry.getNextId(), RegistryKey.of(registry.getRegistryKey(), TREASURE_FISHED));
    Stats.CUSTOM.getOrCreateStat(JUNK_FISHED, StatFormatter.DEFAULT);
    Stats.CUSTOM.getOrCreateStat(TREASURE_FISHED, StatFormatter.DEFAULT);
}
 
源代码12 项目: multiconnect   文件: Entities_1_12_2.java
private static void register(ISimpleRegistry<EntityType<?>> registry, EntityType<?> entity, int id, String name, String oldName) {
    RegistryKey<EntityType<?>> key = RegistryKey.of(registry.getRegistryKey(), new Identifier(name));
    registry.register(entity, id, key, false);
}
 
源代码13 项目: multiconnect   文件: Particles_1_12_2.java
private static void register(ISimpleRegistry<ParticleType<?>> registry, ParticleType<?> particle, int id, String name) {
    RegistryKey<ParticleType<?>> key = RegistryKey.of(registry.getRegistryKey(), new Identifier(name));
    registry.register(particle, id, key, false);
}
 
源代码14 项目: multiconnect   文件: Blocks_1_12_2.java
private static void register(ISimpleRegistry<Block> registry, Block block, int id, String name) {
    RegistryKey<Block> key = RegistryKey.of(registry.getRegistryKey(), new Identifier(name));
    registry.registerInPlace(block, id, key, false);
}
 
源代码15 项目: multiconnect   文件: Enchantments_1_12_2.java
private static void register(ISimpleRegistry<Enchantment> registry, Enchantment enchantment, int id, String name) {
    RegistryKey<Enchantment> key = RegistryKey.of(registry.getRegistryKey(), new Identifier(name));
    registry.register(enchantment, id, key, false);
}
 
源代码16 项目: multiconnect   文件: Items_1_12_2.java
private static void register(ISimpleRegistry<Item> registry, Item item, int id, String name) {
    RegistryKey<Item> key = RegistryKey.of(registry.getRegistryKey(), new Identifier(name));
    registry.registerInPlace(item, id, key, false);
}
 
源代码17 项目: multiconnect   文件: Items_1_12_2.java
private static void registerBlockItem(ISimpleRegistry<Item> registry, Block block) {
    RegistryKey<Item> key = RegistryKey.of(registry.getRegistryKey(), Registry.BLOCK.getId(block));
    registry.registerInPlace(Item.BLOCK_ITEMS.getOrDefault(block, AIR), Registry.BLOCK.getRawId(block), key, false);
}
 
源代码18 项目: multiconnect   文件: RegistryAccessor.java
@Accessor("registryKey")
RegistryKey<Registry<T>> multiconnect_getRegistryKey();
 
源代码19 项目: multiconnect   文件: MixinSimpleRegistry.java
@SuppressWarnings("unchecked")
@Override
public RegistryKey<Registry<T>> getRegistryKey() {
    return ((RegistryAccessor<T>) this).multiconnect_getRegistryKey();
}
 
源代码20 项目: multiconnect   文件: MixinSimpleRegistry.java
@Accessor
@Override
public abstract BiMap<RegistryKey, T> getEntriesByKey();
 
源代码21 项目: Galaxy   文件: WorldMixin_RealTime.java
protected WorldMixin_RealTime(MutableWorldProperties mutableWorldProperties, RegistryKey<World> registryKey, RegistryKey<DimensionType> registryKey2, DimensionType dimensionType, Supplier<Profiler> profiler, boolean bl, boolean bl2, long l) {
    super(mutableWorldProperties, registryKey, registryKey2, dimensionType, profiler, bl, bl2, l);
}
 
public static void register() {
    Registry.register(Registry.CHUNK_GENERATOR, new Identifier(Constants.MOD_ID, "moon"), MoonChunkGenerator.CODEC);

    MOON = RegistryKey.of(Registry.DIMENSION, new Identifier(Constants.MOD_ID, "moon"));

    FabricDimensions.registerDefaultPlacer(MOON, GalacticraftDimensions::placeEntity);
}
 
源代码23 项目: multiconnect   文件: ISimpleRegistry.java
RegistryKey<Registry<T>> getRegistryKey(); 
源代码24 项目: multiconnect   文件: ISimpleRegistry.java
BiMap<RegistryKey, T> getEntriesByKey(); 
源代码25 项目: multiconnect   文件: ISimpleRegistry.java
void register(T t, int id, RegistryKey<T> key, boolean sideEffects); 
源代码26 项目: multiconnect   文件: ISimpleRegistry.java
void registerInPlace(T t, int id, RegistryKey<T> key, boolean sideEffects); 
源代码27 项目: multiconnect   文件: MixinSimpleRegistry.java
@Shadow public abstract <V extends T> V set(int rawId, RegistryKey<T> id, V value); 
 类所在包
 类方法
 同包方法