Files
TiedUp-/src/main/java/com/tiedup/remake/tasks/TyingTask.java
NotEvil a71093ba9c Remove internal phase comments and format code
Strip all Phase references, TODO/FUTURE roadmap notes, and internal
planning comments from the codebase. Run Prettier for consistent
formatting across all Java files.
2026-04-12 01:25:55 +02:00

58 lines
1.4 KiB
Java

package com.tiedup.remake.tasks;
import com.tiedup.remake.state.IBondageState;
import net.minecraft.world.entity.LivingEntity;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.Level;
/**
*
* Based on original TyingTask from 1.12.2
*
* Extends TimedInteractTask with item tracking:
* - Holds a reference to the bind/gag item being applied
* - The item will be consumed when tying completes successfully
*/
public abstract class TyingTask extends TimedInteractTask {
protected ItemStack bind; // The bind/gag item being applied
/**
* Create a new tying task.
*
* @param bind The bind/gag item to apply
* @param targetState The target's IBondageState state
* @param targetEntity The target entity
* @param seconds Total duration in seconds
* @param level The world
*/
public TyingTask(
ItemStack bind,
IBondageState targetState,
LivingEntity targetEntity,
int seconds,
Level level
) {
super(targetState, targetEntity, seconds, level);
this.bind = bind;
}
/**
* Get the bind/gag item being applied.
*
* @return The item stack
*/
public ItemStack getBind() {
return bind;
}
/**
* Set the bind/gag item.
*
* @param bind The item stack
*/
public void setBind(ItemStack bind) {
this.bind = bind;
}
}