/* * Derived from Epic Fight (https://github.com/Epic-Fight/epicfight) * by the Epic Fight Team, licensed under GPLv3. * Modifications © 2026 TiedUp! Remake Contributors, distributed under GPLv3. */ package com.tiedup.remake.rig.cloth; import javax.annotation.Nullable; import net.minecraft.world.phys.Vec3; import com.tiedup.remake.rig.anim.Animator; import com.tiedup.remake.rig.armature.Armature; import com.tiedup.remake.rig.physics.SimulatableObject; public interface ClothSimulatable extends SimulatableObject { @Nullable Armature getArmature(); @Nullable Animator getSimulatableAnimator(); boolean invalid(); public Vec3 getObjectVelocity(); public float getYRot(); public float getYRotO(); // Cloth object requires providing location info for 2 steps before for accurate continuous collide detection. public Vec3 getAccurateCloakLocation(float partialFrame); public Vec3 getAccuratePartialLocation(float partialFrame); public float getAccurateYRot(float partialFrame); public float getYRotDelta(float partialFrame); public float getScale(); public float getGravity(); ClothSimulator getClothSimulator(); }