Kaynağa Gözat

Some changes

- Migrate from ParticleFactories to ParticleProviderRegistry (We are not yarn)
- Format Code

Signed-off-by: shedaniel <daniel@shedaniel.me>
shedaniel 4 yıl önce
ebeveyn
işleme
9f8140fdec

+ 5 - 4
common/src/main/java/me/shedaniel/architectury/registry/ParticleFactories.java → common/src/main/java/me/shedaniel/architectury/registry/ParticleProviderRegistry.java

@@ -32,22 +32,23 @@ import net.minecraft.core.particles.ParticleType;
 import java.util.List;
 
 @Environment(EnvType.CLIENT)
-public final class ParticleFactories {
+public final class ParticleProviderRegistry {
     public interface ExtendedSpriteSet extends SpriteSet {
         TextureAtlas getAtlas();
+        
         List<TextureAtlasSprite> getSprites();
     }
-
+    
     @ExpectPlatform
     public static <T extends ParticleOptions> void register(ParticleType<T> type, ParticleProvider<T> provider) {
         throw new AssertionError();
     }
-
+    
     @ExpectPlatform
     public static <T extends ParticleOptions> void register(ParticleType<T> type, DeferredParticleProvider<T> provider) {
         throw new AssertionError();
     }
-
+    
     @FunctionalInterface
     public interface DeferredParticleProvider<T extends ParticleOptions> {
         ParticleProvider<T> create(ExtendedSpriteSet spriteSet);

+ 13 - 13
fabric/src/main/java/me/shedaniel/architectury/registry/fabric/ParticleFactoriesImpl.java → fabric/src/main/java/me/shedaniel/architectury/registry/fabric/ParticleProviderRegistryImpl.java

@@ -19,7 +19,7 @@
 
 package me.shedaniel.architectury.registry.fabric;
 
-import me.shedaniel.architectury.registry.ParticleFactories;
+import me.shedaniel.architectury.registry.ParticleProviderRegistry;
 import net.fabricmc.fabric.api.client.particle.v1.FabricSpriteProvider;
 import net.fabricmc.fabric.api.client.particle.v1.ParticleFactoryRegistry;
 import net.minecraft.client.particle.ParticleProvider;
@@ -31,41 +31,41 @@ import net.minecraft.core.particles.ParticleType;
 import java.util.List;
 import java.util.Random;
 
-public class ParticleFactoriesImpl {
-    public static class ExtendedSpriteSetImpl implements ParticleFactories.ExtendedSpriteSet {
+public class ParticleProviderRegistryImpl {
+    public static class ExtendedSpriteSetImpl implements ParticleProviderRegistry.ExtendedSpriteSet {
         private final FabricSpriteProvider delegate;
-    
+        
         public ExtendedSpriteSetImpl(FabricSpriteProvider delegate) {
             this.delegate = delegate;
         }
-    
+        
         @Override
         public TextureAtlas getAtlas() {
             return delegate.getAtlas();
         }
-    
+        
         @Override
         public List<TextureAtlasSprite> getSprites() {
             return delegate.getSprites();
         }
-    
+        
         @Override
         public TextureAtlasSprite get(int i, int j) {
             return delegate.get(i, j);
         }
-    
+        
         @Override
         public TextureAtlasSprite get(Random random) {
             return delegate.get(random);
         }
     }
-
+    
     public static <T extends ParticleOptions> void register(ParticleType<T> type, ParticleProvider<T> provider) {
         ParticleFactoryRegistry.getInstance().register(type, provider);
     }
-
-    public static <T extends ParticleOptions> void register(ParticleType<T> type, ParticleFactories.DeferredParticleProvider<T> provider) {
-        ParticleFactoryRegistry.getInstance().register(type, spriteProvider ->
-                provider.create(new ExtendedSpriteSetImpl(spriteProvider)));
+    
+    public static <T extends ParticleOptions> void register(ParticleType<T> type, ParticleProviderRegistry.DeferredParticleProvider<T> provider) {
+        ParticleFactoryRegistry.getInstance().register(type, sprites ->
+                provider.create(new ExtendedSpriteSetImpl(sprites)));
     }
 }

+ 27 - 24
forge/src/main/java/me/shedaniel/architectury/registry/forge/ParticleFactoriesImpl.java → forge/src/main/java/me/shedaniel/architectury/registry/forge/ParticleProviderRegistryImpl.java

@@ -21,7 +21,7 @@ package me.shedaniel.architectury.registry.forge;
 
 import me.shedaniel.architectury.forge.ArchitecturyForge;
 import me.shedaniel.architectury.mixin.forge.ParticleEngineAccessor;
-import me.shedaniel.architectury.registry.ParticleFactories;
+import me.shedaniel.architectury.registry.ParticleProviderRegistry;
 import net.minecraft.client.Minecraft;
 import net.minecraft.client.particle.ParticleEngine;
 import net.minecraft.client.particle.ParticleProvider;
@@ -39,68 +39,71 @@ import java.util.List;
 import java.util.Random;
 
 @Mod.EventBusSubscriber(modid = ArchitecturyForge.MOD_ID)
-public class ParticleFactoriesImpl {
-    private static final class ExtendedSpriteSetImpl implements ParticleFactories.ExtendedSpriteSet {
+public class ParticleProviderRegistryImpl {
+    private static final class ExtendedSpriteSetImpl implements ParticleProviderRegistry.ExtendedSpriteSet {
         private final ParticleEngine engine;
         private final SpriteSet delegate;
-    
+        
         private ExtendedSpriteSetImpl(ParticleEngine engine, SpriteSet delegate) {
             this.engine = engine;
             this.delegate = delegate;
         }
-
+        
         @Override
         public TextureAtlas getAtlas() {
             return ((ParticleEngineAccessor) engine).getTextureAtlas();
         }
-
+        
         @Override
         public List<TextureAtlasSprite> getSprites() {
             return ((ParticleEngineAccessor.MutableSpriteSetAccessor) delegate).getSprites();
         }
-
+        
         @Override
         public TextureAtlasSprite get(int i, int j) {
             return delegate.get(i, j);
         }
-
+        
         @Override
         public TextureAtlasSprite get(Random random) {
             return delegate.get(random);
         }
     }
-
+    
     private static ArrayList<Runnable> deferred = new ArrayList<>();
-
+    
     private static <T extends ParticleOptions> void _register(ParticleType<T> type, ParticleProvider<T> provider) {
         Minecraft.getInstance().particleEngine.register(type, provider);
     }
-
-    private static <T extends ParticleOptions> void _register(ParticleType<T> type, ParticleFactories.DeferredParticleProvider<T> provider) {
-        Minecraft.getInstance().particleEngine.register(type, spriteSet ->
-                provider.create(new ExtendedSpriteSetImpl(Minecraft.getInstance().particleEngine, spriteSet)));
+    
+    private static <T extends ParticleOptions> void _register(ParticleType<T> type, ParticleProviderRegistry.DeferredParticleProvider<T> provider) {
+        Minecraft.getInstance().particleEngine.register(type, sprites ->
+                provider.create(new ExtendedSpriteSetImpl(Minecraft.getInstance().particleEngine, sprites)));
     }
-
+    
     public static <T extends ParticleOptions> void register(ParticleType<T> type, ParticleProvider<T> provider) {
-        if (deferred == null)
+        if (deferred == null) {
             _register(type, provider);
-        else
+        } else {
             deferred.add(() -> _register(type, provider));
+        }
     }
-
-    public static <T extends ParticleOptions> void register(ParticleType<T> type, ParticleFactories.DeferredParticleProvider<T> provider) {
-        if (deferred == null)
+    
+    public static <T extends ParticleOptions> void register(ParticleType<T> type, ParticleProviderRegistry.DeferredParticleProvider<T> provider) {
+        if (deferred == null) {
             _register(type, provider);
-        else
+        } else {
             deferred.add(() -> _register(type, provider));
+        }
     }
-
+    
     @SubscribeEvent
     public static void onParticleFactoryRegister(ParticleFactoryRegisterEvent unused) {
         if (deferred != null) {
             // run all deferred registrations
-            for (Runnable r : deferred)
-                r.run();
+            for (Runnable runnable : deferred) {
+                runnable.run();
+            }
             // yeet deferred list - register immediately from now on
             deferred = null;
         }

+ 2 - 2
testmod-common/src/main/java/me/shedaniel/architectury/test/particle/TestParticles.java

@@ -21,7 +21,7 @@ package me.shedaniel.architectury.test.particle;
 
 import me.shedaniel.architectury.platform.Platform;
 import me.shedaniel.architectury.registry.DeferredRegister;
-import me.shedaniel.architectury.registry.ParticleFactories;
+import me.shedaniel.architectury.registry.ParticleProviderRegistry;
 import me.shedaniel.architectury.registry.RegistrySupplier;
 import me.shedaniel.architectury.test.TestMod;
 import me.shedaniel.architectury.utils.Env;
@@ -39,6 +39,6 @@ public class TestParticles {
     public static void initialize() {
         PARTICLE_TYPES.register();
         if (Platform.getEnvironment() == Env.CLIENT)
-            ParticleFactories.register(TEST_PARTICLE.get(), HeartParticle.Provider::new);
+            ParticleProviderRegistry.register(TEST_PARTICLE.get(), HeartParticle.Provider::new);
     }
 }