Skip to content

Commit

Permalink
NPE
Browse files Browse the repository at this point in the history
  • Loading branch information
senseiwells committed Dec 29, 2021
1 parent 5bac1cc commit d9c839d
Show file tree
Hide file tree
Showing 5 changed files with 30 additions and 13 deletions.
2 changes: 1 addition & 1 deletion gradle.properties
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ org.gradle.jvmargs=-Xmx1G
# check available versions on maven for the given minecraft version you are using

# Mod Properties
mod_version = 1.0.0
mod_version = 1.0.1
maven_group = chunk-debug
archives_base_name = chunk-debug

Expand Down
12 changes: 1 addition & 11 deletions src/main/java/chunkdebug/mixins/MinecraftServerMixin.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,15 @@

import chunkdebug.ChunkDebugServer;
import net.minecraft.server.MinecraftServer;
import net.minecraft.server.world.ServerWorld;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;

import java.util.function.BooleanSupplier;

@Mixin(MinecraftServer.class)
public abstract class MinecraftServerMixin {
@Shadow
public abstract Iterable<ServerWorld> getWorlds();

public class MinecraftServerMixin {
@Inject(method = "tick", at = @At("HEAD"))
private void onTick(BooleanSupplier shouldKeepTicking, CallbackInfo ci) {
ChunkDebugServer.chunkNetHandler.tickUpdate();
Expand All @@ -25,9 +20,4 @@ private void onTick(BooleanSupplier shouldKeepTicking, CallbackInfo ci) {
private void onLoadWorldPre(CallbackInfo ci) {
ChunkDebugServer.server = (MinecraftServer) (Object) this;
}

@Inject(method = "loadWorld", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/MinecraftServer;createWorlds(Lnet/minecraft/server/WorldGenerationProgressListener;)V", shift = At.Shift.AFTER))
private void onLoadWorldPost(CallbackInfo ci) {
this.getWorlds().forEach(ChunkDebugServer.chunkNetHandler::addWorld);
}
}
26 changes: 26 additions & 0 deletions src/main/java/chunkdebug/mixins/ServerWorldMixin.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
package chunkdebug.mixins;

import chunkdebug.ChunkDebugServer;
import net.minecraft.server.MinecraftServer;
import net.minecraft.server.WorldGenerationProgressListener;
import net.minecraft.server.world.ServerWorld;
import net.minecraft.util.registry.RegistryKey;
import net.minecraft.world.dimension.DimensionType;
import net.minecraft.world.gen.chunk.ChunkGenerator;
import net.minecraft.world.level.ServerWorldProperties;
import net.minecraft.world.level.storage.LevelStorage;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;

import java.util.List;
import java.util.concurrent.Executor;

@Mixin(ServerWorld.class)
public class ServerWorldMixin {
@Inject(method = "<init>", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/world/ServerTickScheduler;<init>(Lnet/minecraft/server/world/ServerWorld;Ljava/util/function/Predicate;Ljava/util/function/Function;Ljava/util/function/Consumer;)V"))
private void onCreateServerWorld(MinecraftServer server, Executor workerExecutor, LevelStorage.Session session, ServerWorldProperties properties, RegistryKey<?> worldKey, DimensionType dimensionType, WorldGenerationProgressListener worldGenerationProgressListener, ChunkGenerator chunkGenerator, boolean debugWorld, long seed, List<?> spawners, boolean shouldTickTime, CallbackInfo ci) {
ChunkDebugServer.chunkNetHandler.addWorld((ServerWorld) (Object) this);
}
}
1 change: 1 addition & 0 deletions src/main/resources/chunkdebug.mixins.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
"MinecraftServerMixin",
"PlayerManagerMixin",
"ServerPlayNetworkHandlerMixin",
"ServerWorldMixin",
"ThreadedAnvilChunkStorageAccessor"
],
"injectors": {
Expand Down
2 changes: 1 addition & 1 deletion src/main/resources/fabric.mod.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"schemaVersion": 1,
"id": "chunkdebug",
"version": "1.0.0",
"version": "1.0.1",

"name": "Chunk Debug",
"description": "Chunk Debug server side support",
Expand Down

0 comments on commit d9c839d

Please sign in to comment.