
net.minecraft.server.PathfinderGoal Maven / Gradle / Ivy
package net.minecraft.server;
public abstract class PathfinderGoal {
/**
* A bitmask telling which other tasks may not run concurrently. The test is a simple bitwise AND - if it yields
* zero, the two tasks may run concurrently, if not - they must run exclusively from each other.
*/
private int mutexBits;
public PathfinderGoal() {
}
/**
* Returns whether the Behavior should begin execution.
*/
public abstract boolean a();
/**
* Returns whether an in-progress Behavior should continue executing
*/
public boolean b() {
return this.a();
}
/**
* Determine if this AI Task is interruptible by a higher (= lower value) priority task.
* All vanilla AITask have this value set to true.
*/
public boolean i() {
return true;
}
/**
* Execute a one shot task or start executing a continuous task
*/
public void c() {
}
/**
* Resets the task
*/
public void d() {
}
/**
* Updates the task
*/
public void e() {
}
/**
* Sets a bitmask telling which other tasks may not run concurrently. The test is a simple bitwise AND - if it
* yields zero, the two tasks may run concurrently, if not - they must run exclusively from each other.
*/
public void setMutexBits(int i) {
this.mutexBits = i;
}
/**
* Get a bitmask telling which other tasks may not run concurrently. The test is a simple bitwise AND - if it yields
* zero, the two tasks may run concurrently, if not - they must run exclusively from each other.
*/
public int getMutexBits() {
return this.mutexBits;
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy