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,69 @@
package com.tiedup.remake.entities.ai;
import java.util.EnumSet;
import java.util.function.BooleanSupplier;
import net.minecraft.world.entity.ai.goal.Goal;
/**
* Wrapper goal that only executes when a condition is met.
* Used to conditionally enable/disable AI goals at runtime.
*
* Example: ConditionalGoal(new KidnapperFindTargetGoal(), () -> merchant.isHostile())
*/
public class ConditionalGoal extends Goal {
private final Goal wrappedGoal;
private final BooleanSupplier condition;
public ConditionalGoal(Goal goal, BooleanSupplier condition) {
this.wrappedGoal = goal;
this.condition = condition;
this.setFlags(goal.getFlags());
}
@Override
public boolean canUse() {
return condition.getAsBoolean() && wrappedGoal.canUse();
}
@Override
public boolean canContinueToUse() {
return condition.getAsBoolean() && wrappedGoal.canContinueToUse();
}
@Override
public boolean isInterruptable() {
return wrappedGoal.isInterruptable();
}
@Override
public void start() {
wrappedGoal.start();
}
@Override
public void stop() {
wrappedGoal.stop();
}
@Override
public boolean requiresUpdateEveryTick() {
return wrappedGoal.requiresUpdateEveryTick();
}
@Override
public void tick() {
wrappedGoal.tick();
}
@Override
public void setFlags(EnumSet<Flag> flags) {
super.setFlags(flags);
wrappedGoal.setFlags(flags);
}
@Override
public EnumSet<Flag> getFlags() {
return wrappedGoal.getFlags();
}
}