huge refactor

This commit is contained in:
Boki 2026-03-02 23:45:12 -05:00
parent e5ebe05571
commit a8341e8232
29 changed files with 3184 additions and 340 deletions

View file

@ -10,11 +10,25 @@ public enum EntityCategory
Npc,
WorldItem,
Chest,
Shrine,
Portal,
AreaTransition,
Effect,
Terrain,
MiscObject,
Waypoint,
Door,
Doodad,
TownPortal,
Critter,
}
public enum MonsterRarity
{
White,
Magic,
Rare,
Unique,
}
public enum MonsterThreatLevel
@ -39,4 +53,15 @@ public record EntitySnapshot
public int LifeTotal { get; init; }
public bool IsTargetable { get; init; }
public HashSet<string>? Components { get; init; }
// Classification
public MonsterRarity Rarity { get; init; }
public List<string>? ModNames { get; init; }
public string? TransitionName { get; init; }
public string? Metadata { get; init; }
// Action state (from Actor component)
public short ActionId { get; init; }
public bool IsAttacking { get; init; }
public bool IsMoving { get; init; }
}

View file

@ -1,9 +0,0 @@
namespace Roboto.Core;
public interface IMemoryProvider
{
bool IsAttached { get; }
bool Attach();
void Detach();
GameState ReadGameState(GameState? previous);
}

View file

@ -4,9 +4,12 @@ public record SkillState
{
public int SlotIndex { get; init; }
public ushort ScanCode { get; init; }
public short SkillId { get; init; }
public string? Name { get; init; }
public string? InternalName { get; init; }
public int ChargesCurrent { get; init; }
public int ChargesMax { get; init; }
public float CooldownRemaining { get; init; }
public bool CanUse => CooldownRemaining <= 0 && ChargesCurrent > 0;
public bool CanBeUsed { get; init; }
public bool CanUse => CanBeUsed && CooldownRemaining <= 0;
}