Quellcode durchsuchen

More annotation event migration

Max vor 4 Jahren
Ursprung
Commit
e1cff1567b

+ 8 - 2
forge/src/main/java/me/shedaniel/architectury/networking/forge/ClientNetworkingManager.java

@@ -27,6 +27,7 @@ import net.minecraftforge.api.distmarker.Dist;
 import net.minecraftforge.api.distmarker.OnlyIn;
 import net.minecraftforge.client.event.ClientPlayerNetworkEvent;
 import net.minecraftforge.common.MinecraftForge;
+import net.minecraftforge.eventbus.api.SubscribeEvent;
 import net.minecraftforge.fml.network.NetworkEvent;
 
 import java.util.Set;
@@ -38,7 +39,7 @@ import static me.shedaniel.architectury.networking.forge.NetworkManagerImpl.SYNC
 public class ClientNetworkingManager {
     public static void initClient() {
         NetworkManagerImpl.CHANNEL.addListener(NetworkManagerImpl.createPacketHandler(NetworkEvent.ServerCustomPayloadEvent.class, NetworkManagerImpl.S2C));
-        MinecraftForge.EVENT_BUS.<ClientPlayerNetworkEvent.LoggedOutEvent>addListener(event -> NetworkManagerImpl.serverReceivables.clear());
+        MinecraftForge.EVENT_BUS.register(ClientNetworkingManager.class);
         
         NetworkManagerImpl.registerS2CReceiver(SYNC_IDS, (buffer, context) -> {
             Set<ResourceLocation> receivables = NetworkManagerImpl.serverReceivables;
@@ -54,4 +55,9 @@ public class ClientNetworkingManager {
     public static Player getClientPlayer() {
         return Minecraft.getInstance().player;
     }
-}
+    
+    @SubscribeEvent
+    public static void loggedOut(ClientPlayerNetworkEvent.LoggedOutEvent event) {
+        NetworkManagerImpl.serverReceivables.clear();
+    }
+}

+ 14 - 3
forge/src/main/java/me/shedaniel/architectury/networking/forge/NetworkManagerImpl.java

@@ -22,6 +22,7 @@ package me.shedaniel.architectury.networking.forge;
 
 import com.google.common.collect.*;
 import io.netty.buffer.Unpooled;
+import me.shedaniel.architectury.forge.ArchitecturyForge;
 import me.shedaniel.architectury.networking.NetworkManager;
 import me.shedaniel.architectury.networking.NetworkManager.NetworkReceiver;
 import me.shedaniel.architectury.utils.Env;
@@ -34,8 +35,10 @@ import net.minecraftforge.api.distmarker.Dist;
 import net.minecraftforge.api.distmarker.OnlyIn;
 import net.minecraftforge.common.MinecraftForge;
 import net.minecraftforge.event.entity.player.PlayerEvent;
+import net.minecraftforge.eventbus.api.SubscribeEvent;
 import net.minecraftforge.fml.DistExecutor;
 import net.minecraftforge.fml.LogicalSide;
+import net.minecraftforge.fml.common.Mod;
 import net.minecraftforge.fml.network.NetworkDirection;
 import net.minecraftforge.fml.network.NetworkEvent;
 import net.minecraftforge.fml.network.NetworkRegistry;
@@ -49,6 +52,7 @@ import java.util.Map;
 import java.util.Set;
 import java.util.function.Consumer;
 
+@Mod.EventBusSubscriber(modid = ArchitecturyForge.MOD_ID)
 public class NetworkManagerImpl {
     public static void registerReceiver(NetworkManager.Side side, ResourceLocation id, NetworkReceiver receiver) {
         if (side == NetworkManager.Side.C2S) {
@@ -79,9 +83,6 @@ public class NetworkManagerImpl {
         
         DistExecutor.unsafeRunWhenOn(Dist.CLIENT, () -> ClientNetworkingManager::initClient);
         
-        MinecraftForge.EVENT_BUS.<PlayerEvent.PlayerLoggedInEvent>addListener(event -> NetworkManager.sendToPlayer((ServerPlayer) event.getPlayer(), SYNC_IDS, sendSyncPacket(C2S)));
-        MinecraftForge.EVENT_BUS.<PlayerEvent.PlayerLoggedOutEvent>addListener(event -> clientReceivables.removeAll(event.getPlayer()));
-        
         registerC2SReceiver(SYNC_IDS, (buffer, context) -> {
             Set<ResourceLocation> receivables = (Set<ResourceLocation>) clientReceivables.get(context.getPlayer());
             int size = buffer.readInt();
@@ -157,4 +158,14 @@ public class NetworkManagerImpl {
         }
         return packetBuffer;
     }
+    
+    @SubscribeEvent
+    public static void loggedIn(PlayerEvent.PlayerLoggedInEvent event) {
+        NetworkManager.sendToPlayer((ServerPlayer) event.getPlayer(), SYNC_IDS, sendSyncPacket(C2S));
+    }
+    
+    @SubscribeEvent
+    public static void loggedOut(PlayerEvent.PlayerLoggedOutEvent event) {
+        clientReceivables.removeAll(event.getPlayer());
+    }
 }

+ 22 - 20
forge/src/main/java/me/shedaniel/architectury/registry/forge/BiomeModificationsImpl.java

@@ -20,6 +20,7 @@
 package me.shedaniel.architectury.registry.forge;
 
 import com.google.common.collect.Lists;
+import me.shedaniel.architectury.forge.ArchitecturyForge;
 import me.shedaniel.architectury.hooks.biome.*;
 import me.shedaniel.architectury.mixin.forge.BiomeGenerationSettingsBuilderAccessor;
 import me.shedaniel.architectury.mixin.forge.MobSpawnSettingsBuilderAccessor;
@@ -34,10 +35,11 @@ import net.minecraft.world.level.levelgen.carver.ConfiguredWorldCarver;
 import net.minecraft.world.level.levelgen.feature.ConfiguredFeature;
 import net.minecraft.world.level.levelgen.feature.ConfiguredStructureFeature;
 import net.minecraft.world.level.levelgen.surfacebuilders.ConfiguredSurfaceBuilder;
-import net.minecraftforge.common.MinecraftForge;
 import net.minecraftforge.common.world.BiomeGenerationSettingsBuilder;
 import net.minecraftforge.common.world.MobSpawnInfoBuilder;
 import net.minecraftforge.event.world.BiomeLoadingEvent;
+import net.minecraftforge.eventbus.api.SubscribeEvent;
+import net.minecraftforge.fml.common.Mod;
 import org.apache.commons.lang3.tuple.Pair;
 import org.jetbrains.annotations.NotNull;
 
@@ -49,6 +51,7 @@ import java.util.function.BiPredicate;
 import java.util.function.Predicate;
 import java.util.function.Supplier;
 
+@Mod.EventBusSubscriber(modid = ArchitecturyForge.MOD_ID)
 public class BiomeModificationsImpl {
     private static final List<Pair<Predicate<BiomeContext>, BiConsumer<BiomeContext, BiomeProperties.Mutable>>> MODIFICATIONS = Lists.newArrayList();
     
@@ -68,25 +71,6 @@ public class BiomeModificationsImpl {
         MODIFICATIONS.add(Pair.of(predicate, modifier));
     }
     
-    static {
-        MinecraftForge.EVENT_BUS.<BiomeLoadingEvent>addListener(event -> {
-            BiomeContext biomeContext = wrapSelectionContext(event);
-            BiomeProperties.Mutable mutableBiome = new MutableBiomeWrapped(event);
-            for (Pair<Predicate<BiomeContext>, BiConsumer<BiomeContext, BiomeProperties.Mutable>> pair : MODIFICATIONS) {
-                if (pair.getLeft().test(biomeContext)) {
-                    pair.getRight().accept(biomeContext, mutableBiome);
-                }
-            }
-            MutableClimatePropertiesWrapped climateProperties = (MutableClimatePropertiesWrapped) mutableBiome.getClimateProperties();
-            if (climateProperties.dirty) {
-                event.setClimate(new Biome.ClimateSettings(climateProperties.precipitation,
-                        climateProperties.temperature,
-                        climateProperties.temperatureModifier,
-                        climateProperties.downfall));
-            }
-        });
-    }
-    
     private static BiomeContext wrapSelectionContext(BiomeLoadingEvent event) {
         return new BiomeContext() {
             BiomeProperties properties = new BiomeWrapped(event);
@@ -446,4 +430,22 @@ public class BiomeModificationsImpl {
             return this;
         }
     }
+    
+    @SubscribeEvent
+    public static void onBiomeLoading(BiomeLoadingEvent event) {
+        BiomeContext biomeContext = wrapSelectionContext(event);
+        BiomeProperties.Mutable mutableBiome = new MutableBiomeWrapped(event);
+        for (Pair<Predicate<BiomeContext>, BiConsumer<BiomeContext, BiomeProperties.Mutable>> pair : MODIFICATIONS) {
+            if (pair.getLeft().test(biomeContext)) {
+                pair.getRight().accept(biomeContext, mutableBiome);
+            }
+        }
+        MutableClimatePropertiesWrapped climateProperties = (MutableClimatePropertiesWrapped) mutableBiome.getClimateProperties();
+        if (climateProperties.dirty) {
+            event.setClimate(new Biome.ClimateSettings(climateProperties.precipitation,
+                    climateProperties.temperature,
+                    climateProperties.temperatureModifier,
+                    climateProperties.downfall));
+        }
+    }
 }