WIP: initial epic fight core extraction (Phase 0)
83 files forkés d'Epic Fight (~18k LOC). Base non-compilable en l'état.
Contenu extrait :
- math/ — OpenMatrix4f, Vec3f/4f/2f, QuaternionUtils, MathUtils, ...
- armature/ — Armature, Joint, JointTransform, HumanoidArmature
- anim/ — Animator, ServerAnimator, ClientAnimator, LivingMotion, ...
- anim/types/ — StaticAnimation, DynamicAnimation, MovementAnimation, LinkAnimation,
ConcurrentLinkAnimation, LayerOffAnimation, EntityState
- anim/client/ — Layer, ClientAnimator, JointMask
- mesh/ — SkinnedMesh, SingleGroupVertexBuilder, Mesh, HumanoidMesh, ...
- cloth/ — AbstractSimulator, ClothSimulator (dépendance transitive de StaticMesh)
- asset/ — JsonAssetLoader, AssetAccessor
- patch/ — EntityPatch, LivingEntityPatch, PlayerPatch, ClientPlayerPatch
- util/ — ParseUtil, TypeFlexibleHashMap
- exception/ — AssetLoadingException
- event/ — PatchedRenderersEvent, PrepareModelEvent, RegisterResourceLayersEvent
- render/ — TiedUpRenderTypes
Headers GPLv3 + attribution injectés sur tous les .java.
Package declarations fixées sur Armature.java et TiedUpRenderTypes.java.
115 imports résiduels à résoudre manuellement :
- yesman.epicfight.main (EpicFightMod, EpicFightSharedConstants) — 30
- yesman.epicfight.gameasset (Animations, Armatures, EpicFightSounds) — 12
- yesman.epicfight.api.physics + physics.ik (combat physics) — 16
- yesman.epicfight.network.* (combat packets) — 13
- yesman.epicfight.world.* (combat entity logic) — 10
- yesman.epicfight.config.ClientConfig — 3
- yesman.epicfight.skill, .client.gui, .particle, .collider — divers combat/UI
Stratégie fix (2-3 sem manuel) : strip usage combat, stubs pour refs
core (EpicFightMod → TiedUpMod, SharedConstants → TiedUpRigConstants,
ClientConfig → TiedUpAnimationConfig).
This commit is contained in:
@@ -0,0 +1,69 @@
|
||||
/*
|
||||
* 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.event;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.function.Function;
|
||||
|
||||
import com.google.gson.JsonElement;
|
||||
|
||||
import net.minecraft.client.renderer.entity.EntityRendererProvider;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.world.entity.EntityType;
|
||||
import net.minecraftforge.eventbus.api.Event;
|
||||
import net.minecraftforge.fml.event.IModBusEvent;
|
||||
import com.tiedup.remake.rig.render.PatchedEntityRenderer;
|
||||
import com.tiedup.remake.rig.render.item.RenderItemBase;
|
||||
|
||||
@SuppressWarnings("rawtypes")
|
||||
public abstract class PatchedRenderersEvent extends Event implements IModBusEvent {
|
||||
public static class RegisterItemRenderer extends PatchedRenderersEvent {
|
||||
private final Map<ResourceLocation, Function<JsonElement, RenderItemBase>> itemRenderers;
|
||||
|
||||
public RegisterItemRenderer(Map<ResourceLocation, Function<JsonElement, RenderItemBase>> itemRenderers) {
|
||||
this.itemRenderers = itemRenderers;
|
||||
}
|
||||
|
||||
public void addItemRenderer(ResourceLocation rl, Function<JsonElement, RenderItemBase> provider) {
|
||||
if (this.itemRenderers.containsKey(rl)) {
|
||||
throw new IllegalArgumentException("Item renderer " + rl + " already registered.");
|
||||
}
|
||||
|
||||
this.itemRenderers.put(rl, provider);
|
||||
}
|
||||
}
|
||||
|
||||
public static class Add extends PatchedRenderersEvent {
|
||||
private final Map<EntityType<?>, Function<EntityType<?>, PatchedEntityRenderer>> entityRendererProvider;
|
||||
private final EntityRendererProvider.Context context;
|
||||
|
||||
public Add(Map<EntityType<?>, Function<EntityType<?>, PatchedEntityRenderer>> entityRendererProvider, EntityRendererProvider.Context context) {
|
||||
this.entityRendererProvider = entityRendererProvider;
|
||||
this.context = context;
|
||||
}
|
||||
|
||||
public void addPatchedEntityRenderer(EntityType<?> entityType, Function<EntityType<?>, PatchedEntityRenderer> provider) {
|
||||
this.entityRendererProvider.put(entityType, provider);
|
||||
}
|
||||
|
||||
public EntityRendererProvider.Context getContext() {
|
||||
return this.context;
|
||||
}
|
||||
}
|
||||
|
||||
public static class Modify extends PatchedRenderersEvent {
|
||||
private final Map<EntityType<?>, PatchedEntityRenderer> renderers;
|
||||
|
||||
public Modify(Map<EntityType<?>, PatchedEntityRenderer> renderers) {
|
||||
this.renderers = renderers;
|
||||
}
|
||||
|
||||
public PatchedEntityRenderer get(EntityType<?> entityType) {
|
||||
return this.renderers.get(entityType);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,64 @@
|
||||
/*
|
||||
* 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.event;
|
||||
|
||||
import com.mojang.blaze3d.vertex.PoseStack;
|
||||
|
||||
import net.minecraft.client.renderer.MultiBufferSource;
|
||||
import net.minecraftforge.eventbus.api.Event;
|
||||
import com.tiedup.remake.rig.mesh.SkinnedMesh;
|
||||
import com.tiedup.remake.rig.render.PatchedEntityRenderer;
|
||||
import com.tiedup.remake.rig.patch.LivingEntityPatch;
|
||||
|
||||
public class PrepareModelEvent extends Event {
|
||||
private final SkinnedMesh mesh;
|
||||
private final LivingEntityPatch<?> entitypatch;
|
||||
private final MultiBufferSource buffer;
|
||||
private final PoseStack poseStack;
|
||||
private final int packedLight;
|
||||
private final float partialTicks;
|
||||
|
||||
private final PatchedEntityRenderer<?, ?, ?, ?> renderer;
|
||||
|
||||
public PrepareModelEvent(PatchedEntityRenderer<?, ?, ?, ?> renderer, SkinnedMesh mesh, LivingEntityPatch<?> entitypatch, MultiBufferSource buffer, PoseStack poseStack, int packedLight, float partialTicks) {
|
||||
this.renderer = renderer;
|
||||
this.mesh = mesh;
|
||||
this.entitypatch = entitypatch;
|
||||
this.buffer = buffer;
|
||||
this.poseStack = poseStack;
|
||||
this.packedLight = packedLight;
|
||||
this.partialTicks = partialTicks;
|
||||
}
|
||||
|
||||
public SkinnedMesh getMesh() {
|
||||
return this.mesh;
|
||||
}
|
||||
|
||||
public LivingEntityPatch<?> getEntityPatch() {
|
||||
return this.entitypatch;
|
||||
}
|
||||
|
||||
public MultiBufferSource getBuffer() {
|
||||
return this.buffer;
|
||||
}
|
||||
|
||||
public PoseStack getPoseStack() {
|
||||
return this.poseStack;
|
||||
}
|
||||
|
||||
public int getPackedLight() {
|
||||
return this.packedLight;
|
||||
}
|
||||
|
||||
public float getPartialTicks() {
|
||||
return this.partialTicks;
|
||||
}
|
||||
|
||||
public PatchedEntityRenderer<?, ?, ?, ?> getRenderer() {
|
||||
return this.renderer;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,30 @@
|
||||
/*
|
||||
* 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.event;
|
||||
|
||||
import java.util.Map;
|
||||
|
||||
import net.minecraft.client.model.EntityModel;
|
||||
import net.minecraft.client.renderer.entity.LivingEntityRenderer;
|
||||
import net.minecraft.resources.ResourceLocation;
|
||||
import net.minecraft.world.entity.LivingEntity;
|
||||
import net.minecraftforge.eventbus.api.Event;
|
||||
import com.tiedup.remake.rig.mesh.SkinnedMesh;
|
||||
import com.tiedup.remake.rig.render.layer.LayerUtil;
|
||||
import com.tiedup.remake.rig.patch.LivingEntityPatch;
|
||||
|
||||
public class RegisterResourceLayersEvent<E extends LivingEntity, T extends LivingEntityPatch<E>, M extends EntityModel<E>, R extends LivingEntityRenderer<E, M>, AM extends SkinnedMesh> extends Event {
|
||||
private final Map<ResourceLocation, LayerUtil.LayerProvider<E, T, M, R, AM>> layersbyid;
|
||||
|
||||
public RegisterResourceLayersEvent(Map<ResourceLocation, LayerUtil.LayerProvider<E, T, M, R, AM>> layersbyid) {
|
||||
this.layersbyid = layersbyid;
|
||||
}
|
||||
|
||||
public void register(ResourceLocation rl, LayerUtil.LayerProvider<E, T, M, R, AM> layerAdder) {
|
||||
this.layersbyid.put(rl, layerAdder);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user