fabric-lifecycle-events-v1-2.6.9+33df5e6e6f.jar

Download file
    package net.fabricmc.fabric.impl.event.lifecycle;

import net.fabricmc.api.ModInitializer;
import net.fabricmc.fabric.api.event.lifecycle.v1.ServerBlockEntityEvents;
import net.fabricmc.fabric.api.event.lifecycle.v1.ServerChunkEvents;
import net.fabricmc.fabric.api.event.lifecycle.v1.ServerEntityEvents;
import net.fabricmc.fabric.api.event.lifecycle.v1.ServerWorldEvents;
import net.minecraft.class_1297;
import net.minecraft.class_2586;
import net.minecraft.class_2818;

public final class LifecycleEventsImpl implements ModInitializer {
   public void onInitialize() {
      ServerChunkEvents.CHUNK_LOAD.register((ServerChunkEvents.Load)(world, chunk) -> ((LoadedChunksCache)world).fabric_markLoaded(chunk));
      ServerChunkEvents.CHUNK_UNLOAD.register((ServerChunkEvents.Unload)(world, chunk) -> ((LoadedChunksCache)world).fabric_markUnloaded(chunk));
      ServerChunkEvents.CHUNK_UNLOAD.register((ServerChunkEvents.Unload)(world, chunk) -> {
         for(class_2586 blockEntity : chunk.method_12214().values()) {
            ((ServerBlockEntityEvents.Unload)ServerBlockEntityEvents.BLOCK_ENTITY_UNLOAD.invoker()).onUnload(blockEntity, world);
         }

      });
      ServerWorldEvents.UNLOAD.register((ServerWorldEvents.Unload)(server, world) -> {
         for(class_2818 chunk : ((LoadedChunksCache)world).fabric_getLoadedChunks()) {
            for(class_2586 blockEntity : chunk.method_12214().values()) {
               ((ServerBlockEntityEvents.Unload)ServerBlockEntityEvents.BLOCK_ENTITY_UNLOAD.invoker()).onUnload(blockEntity, world);
            }
         }

         for(class_1297 entity : world.method_27909()) {
            ((ServerEntityEvents.Unload)ServerEntityEvents.ENTITY_UNLOAD.invoker()).onUnload(entity, world);
         }

      });
   }
}
    
Download file