finished quest pathing
This commit is contained in:
parent
568df4c7fe
commit
419e2eb4a4
17 changed files with 637 additions and 31 deletions
15
src/Roboto.Memory/Snapshots/ConnectedAreaInfo.cs
Normal file
15
src/Roboto.Memory/Snapshots/ConnectedAreaInfo.cs
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
namespace Roboto.Memory;
|
||||
|
||||
/// <summary>
|
||||
/// Lightweight connected area info from WorldAreas.dat for the snapshot.
|
||||
/// </summary>
|
||||
public sealed class ConnectedAreaInfo
|
||||
{
|
||||
public string? Id { get; init; }
|
||||
public string? Name { get; init; }
|
||||
public int Act { get; init; }
|
||||
public bool IsTown { get; init; }
|
||||
public bool HasWaypoint { get; init; }
|
||||
public int MonsterLevel { get; init; }
|
||||
public int WorldAreaId { get; init; }
|
||||
}
|
||||
|
|
@ -38,6 +38,9 @@ public class GameStateSnapshot
|
|||
public int AreaMonsterLevel;
|
||||
public int WorldAreaId;
|
||||
|
||||
// Connected areas (from WorldAreas.dat)
|
||||
public List<ConnectedAreaInfo>? ConnectedAreas;
|
||||
|
||||
// Player
|
||||
public string? CharacterName;
|
||||
|
||||
|
|
|
|||
|
|
@ -22,4 +22,13 @@ public sealed class QuestLinkedEntry
|
|||
public bool IsTracked { get; init; }
|
||||
/// <summary>Raw Quest.dat row pointer — used as key for merging tracked info.</summary>
|
||||
public nint QuestDatPtr { get; init; }
|
||||
|
||||
/// <summary>Localized map pin text from QuestStates.dat (e.g. "Travel to the Clearfell").</summary>
|
||||
public string? MapPinsText { get; init; }
|
||||
|
||||
/// <summary>Target WorldAreas resolved from QuestStates.dat MapPins → WorldAreas.dat.</summary>
|
||||
public List<ConnectedAreaInfo>? TargetAreas { get; init; }
|
||||
|
||||
/// <summary>BFS path from current area to target area (area names in order). Null if same area or unreachable.</summary>
|
||||
public List<string>? PathToTarget { get; init; }
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue