Minecraft-Console-Client/MinecraftClient/Pathing/Moves/IMove.cs
BruceChen 1abab20f17 feat: add Phase 1 core pathfinding architecture
Implements the new Baritone-inspired A* pathfinding system:
- Core types: PathNode, PathResult, MoveResult, MoveType, ActionCosts
- BinaryHeapOpenSet min-heap for A* open set
- AStarPathFinder with timeout, cancellation, partial path support
- CalculationContext for thread-safe world state snapshots
- MoveHelper for block passability checks
- IGoal interface + GoalBlock, GoalXZ, GoalNear, GoalComposite
- IMove interface + MoveTraverse, MoveDiagonal, MoveAscend, MoveDescend, MoveClimb
- /pathfind command for testing the new pathfinder

Made-with: Cursor
2026-04-12 18:43:32 +00:00

18 lines
514 B
C#

using MinecraftClient.Pathing.Core;
namespace MinecraftClient.Pathing.Moves
{
/// <summary>
/// Represents one type of movement action for path planning.
/// Each implementation defines its spatial check pattern and cost model.
/// </summary>
public interface IMove
{
MoveType Type { get; }
int XOffset { get; }
int ZOffset { get; }
bool DynamicY { get; }
void Calculate(CalculationContext ctx, int x, int y, int z, ref MoveResult result);
}
}