tangled
alpha
login
or
join now
codexarchonic.nekoweb.org
/
ProjectInfinity
0
fork
atom
Inspired by 2020's April Fools' 20w14infinite Snapshot, this mod brings endless randomly generated dimensions into Minecraft.
0
fork
atom
overview
issues
6
pulls
pipelines
Completely fix Forge (probably)
cassian.cc
1 year ago
344fecf5
9a22e99e
+21
-3
4 changed files
expand all
collapse all
unified
split
common
src
main
java
net
lerariemann
infinity
mixin
MinecraftServerMixin.java
var
ModMaterialRules.java
forge
src
main
java
net
lerariemann
infinity
forge
PlatformMethodsImpl.java
resources
pack.mcmeta
+1
-1
common/src/main/java/net/lerariemann/infinity/mixin/MinecraftServerMixin.java
reviewed
···
133
133
if (PlatformMethods.isModLoaded("gravity_changer_q"))
134
134
GravityChangerCompat.changeMavity(world);
135
135
// Invoke load world event for listeners.
136
136
-
ServerWorldEvents.LOAD.invoker().onWorldLoad((MinecraftServer) (Object) this, world);
136
136
+
PlatformMethods.onWorldLoad(this, world);
137
137
}
138
138
139
139
@Override
+7
-1
common/src/main/java/net/lerariemann/infinity/var/ModMaterialRules.java
reviewed
···
1
1
package net.lerariemann.infinity.var;
2
2
3
3
+
import com.mojang.serialization.Codec;
3
4
import com.mojang.serialization.MapCodec;
5
5
+
import dev.architectury.registry.registries.DeferredRegister;
4
6
import net.lerariemann.infinity.InfinityMod;
5
7
import net.lerariemann.infinity.block.ModBlocks;
6
8
import net.lerariemann.infinity.util.RandomProvider;
···
12
14
import net.minecraft.nbt.NbtElement;
13
15
import net.minecraft.registry.Registries;
14
16
import net.minecraft.registry.Registry;
17
17
+
import net.minecraft.registry.RegistryKeys;
15
18
import net.minecraft.state.property.Properties;
16
19
import net.minecraft.util.Identifier;
17
20
import net.minecraft.util.dynamic.CodecHolder;
···
362
365
}
363
366
}
364
367
368
368
+
public static final DeferredRegister<Codec<? extends MaterialRules.MaterialRule>> MATERIAL_RULES =
369
369
+
DeferredRegister.create(MOD_ID, RegistryKeys.MATERIAL_RULE);
370
370
+
365
371
public static <T extends CodecHolder<? extends MaterialRules.MaterialRule>> void register(String name, T holder) {
366
366
-
Registry.register(Registries.MATERIAL_RULE, InfinityMod.MOD_ID + ":" + name, holder.codec());
372
372
+
MATERIAL_RULES.register(name, () -> holder.codec());
367
373
}
368
374
369
375
public static void registerRules() {
+6
-1
forge/src/main/java/net/lerariemann/infinity/forge/PlatformMethodsImpl.java
reviewed
···
3
3
import dev.architectury.registry.registries.RegistrySupplier;
4
4
import io.netty.buffer.Unpooled;
5
5
import net.fabricmc.fabric.api.itemgroup.v1.ItemGroupEvents;
6
6
+
import net.fabricmc.fabric.mixin.registry.sync.RegistriesAccessor;
6
7
import net.minecraft.item.Item;
7
8
import net.minecraft.item.ItemGroup;
8
9
import net.minecraft.item.ItemGroups;
9
10
import net.minecraft.network.PacketByteBuf;
11
11
+
import net.minecraft.registry.MutableRegistry;
10
12
import net.minecraft.registry.Registry;
11
13
import net.minecraft.registry.RegistryKey;
14
14
+
import net.minecraft.registry.SimpleRegistry;
12
15
import net.minecraft.server.MinecraftServer;
13
16
import net.minecraft.server.world.ServerWorld;
17
17
+
import net.minecraft.world.dimension.DimensionOptions;
14
18
import net.minecraftforge.common.MinecraftForge;
15
19
import net.minecraftforge.event.level.LevelEvent;
16
20
import net.minecraftforge.fml.ModList;
···
40
44
}
41
45
42
46
public static void unfreeze(Registry<?> registry) {
43
43
-
// ((net.fabricmc.fabric.mixin.registry.sync.RegistriesAccessor) registry).invokeUnfreeze();
47
47
+
SimpleRegistry<?> writableRegistry = (SimpleRegistry<?>) registry;
48
48
+
writableRegistry.unfreeze();
44
49
}
45
50
46
51
public static void freeze(Registry<?> registry) {
+7
forge/src/main/resources/pack.mcmeta
reviewed
···
1
1
+
{
2
2
+
"pack": {
3
3
+
"description": "Infinite Dimensions",
4
4
+
"forge:server_data_pack_format": 15,
5
5
+
"pack_format": 15
6
6
+
}
7
7
+
}