fabric-rendering-v1-16.2.0+bee81f016f.jar

Download file
    package net.fabricmc.fabric.api.client.rendering.v1;

import com.mojang.datafixers.util.Pair;
import java.util.Objects;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import net.minecraft.class_3879;
import net.minecraft.class_630;

@Environment(EnvType.CLIENT)
public final class TransformCopyingModel<S, D> extends class_3879<Pair<S, D>> {
   private final class_3879<? super S> source;
   private final class_3879<? super D> delegate;
   private final boolean setDelegateAngles;

   public static <S, D> TransformCopyingModel<S, D> create(class_3879<? super S> source, class_3879<? super D> delegate, boolean setDelegateAngles) {
      return new TransformCopyingModel<S, D>(source, delegate, setDelegateAngles);
   }

   private TransformCopyingModel(class_3879<? super S> source, class_3879<? super D> delegate, boolean setDelegateAngles) {
      class_630 var10001 = delegate.method_63512();
      Objects.requireNonNull(delegate);
      super(var10001, delegate::method_23500);
      this.source = source;
      this.delegate = delegate;
      this.setDelegateAngles = setDelegateAngles;
   }

   public void setAngles(Pair<S, D> state) {
      this.method_63514();
      this.source.method_2819(state.getFirst());
      this.delegate.copyTransforms(this.source);
      if (this.setDelegateAngles) {
         this.delegate.method_2819(state.getSecond());
      }

   }
}
    
Download file