Clean repo for open source release

Remove build artifacts, dev tool configs, unused dependencies,
and third-party source dumps. Add proper README, update .gitignore,
clean up Makefile.
This commit is contained in:
NotEvil
2026-04-12 00:51:22 +02:00
parent 2e7a1d403b
commit f6466360b6
1947 changed files with 238025 additions and 1 deletions

View File

@@ -0,0 +1,63 @@
package com.tiedup.remake.client.state;
import com.tiedup.remake.v2.bondage.movement.MovementStyle;
import java.util.Map;
import java.util.UUID;
import java.util.concurrent.ConcurrentHashMap;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import org.jetbrains.annotations.Nullable;
/**
* Client-side cache of active movement style per player UUID.
*
* <p>Populated by {@link com.tiedup.remake.network.sync.PacketSyncMovementStyle}.
* Read by {@link com.tiedup.remake.client.animation.context.AnimationContextResolver}
* and {@link com.tiedup.remake.client.animation.tick.AnimationTickHandler}.</p>
*
* <p>Thread-safe via ConcurrentHashMap (same pattern as
* {@link PetBedClientState}).</p>
*/
@OnlyIn(Dist.CLIENT)
public class MovementStyleClientState {
private static final Map<UUID, MovementStyle> styles = new ConcurrentHashMap<>();
/**
* Set the active movement style for a player.
*
* @param uuid the player's UUID
* @param style the active style (must not be null; use {@link #clear} for no style)
*/
public static void set(UUID uuid, MovementStyle style) {
styles.put(uuid, style);
}
/**
* Get the active movement style for a player.
*
* @param uuid the player's UUID
* @return the active style, or null if no movement style is active
*/
@Nullable
public static MovementStyle get(UUID uuid) {
return styles.get(uuid);
}
/**
* Clear the movement style for a player (no style active).
*
* @param uuid the player's UUID
*/
public static void clear(UUID uuid) {
styles.remove(uuid);
}
/**
* Clear all cached movement styles.
* Called on world unload to prevent memory leaks and stale data.
*/
public static void clearAll() {
styles.clear();
}
}