mirror of
https://github.com/Caraxi/mare.client.git
synced 2025-12-15 02:24:15 +01:00
cleanup
This commit is contained in:
parent
af7dd239aa
commit
e31c232f79
7 changed files with 24 additions and 43 deletions
|
|
@ -31,7 +31,7 @@ namespace MareSynchronos.Managers
|
|||
private DateTime _lastPlayerObjectCheck;
|
||||
private CharacterEquipment? _currentCharacterEquipment = new();
|
||||
|
||||
private List<PlayerOrRelatedObject> playerAttachedObjects = new List<PlayerOrRelatedObject>();
|
||||
private List<PlayerRelatedObject> playerRelatedObjects = new List<PlayerRelatedObject>();
|
||||
|
||||
public unsafe PlayerManager(ApiController apiController, IpcManager ipcManager,
|
||||
CharacterDataFactory characterDataFactory, DalamudUtil dalamudUtil)
|
||||
|
|
@ -53,13 +53,13 @@ namespace MareSynchronos.Managers
|
|||
ApiControllerOnConnected();
|
||||
}
|
||||
|
||||
playerAttachedObjects = new List<PlayerOrRelatedObject>()
|
||||
playerRelatedObjects = new List<PlayerRelatedObject>()
|
||||
{
|
||||
new PlayerOrRelatedObject(ObjectKind.Player, IntPtr.Zero, IntPtr.Zero, () => _dalamudUtil.PlayerPointer),
|
||||
new PlayerOrRelatedObject(ObjectKind.Minion, IntPtr.Zero, IntPtr.Zero, () => (IntPtr)((Character*)_dalamudUtil.PlayerPointer)->CompanionObject),
|
||||
new PlayerOrRelatedObject(ObjectKind.Pet, IntPtr.Zero, IntPtr.Zero, () => _dalamudUtil.GetPet()),
|
||||
new PlayerOrRelatedObject(ObjectKind.Companion, IntPtr.Zero, IntPtr.Zero, () => _dalamudUtil.GetCompanion()),
|
||||
new PlayerOrRelatedObject(ObjectKind.Mount, IntPtr.Zero, IntPtr.Zero, () => (IntPtr)((CharaExt*)_dalamudUtil.PlayerPointer)->Mount),
|
||||
new PlayerRelatedObject(ObjectKind.Player, IntPtr.Zero, IntPtr.Zero, () => _dalamudUtil.PlayerPointer),
|
||||
new PlayerRelatedObject(ObjectKind.Minion, IntPtr.Zero, IntPtr.Zero, () => (IntPtr)((Character*)_dalamudUtil.PlayerPointer)->CompanionObject),
|
||||
new PlayerRelatedObject(ObjectKind.Pet, IntPtr.Zero, IntPtr.Zero, () => _dalamudUtil.GetPet()),
|
||||
new PlayerRelatedObject(ObjectKind.Companion, IntPtr.Zero, IntPtr.Zero, () => _dalamudUtil.GetCompanion()),
|
||||
new PlayerRelatedObject(ObjectKind.Mount, IntPtr.Zero, IntPtr.Zero, () => (IntPtr)((CharaExt*)_dalamudUtil.PlayerPointer)->Mount),
|
||||
};
|
||||
}
|
||||
|
||||
|
|
@ -80,8 +80,8 @@ namespace MareSynchronos.Managers
|
|||
|
||||
if (DateTime.Now < _lastPlayerObjectCheck.AddSeconds(0.25)) return;
|
||||
|
||||
playerAttachedObjects.ForEach(k => k.CheckAndUpdateObject());
|
||||
if (playerAttachedObjects.Any(c => c.HasUnprocessedUpdate && !c.IsProcessing))
|
||||
playerRelatedObjects.ForEach(k => k.CheckAndUpdateObject());
|
||||
if (playerRelatedObjects.Any(c => c.HasUnprocessedUpdate && !c.IsProcessing))
|
||||
{
|
||||
OnPlayerOrAttachedObjectsChanged();
|
||||
}
|
||||
|
|
@ -105,7 +105,7 @@ namespace MareSynchronos.Managers
|
|||
|
||||
private async Task<CharacterCacheDto?> CreateFullCharacterCacheDto(CancellationToken token)
|
||||
{
|
||||
foreach (var unprocessedObject in playerAttachedObjects.Where(c => c.HasUnprocessedUpdate).ToList())
|
||||
foreach (var unprocessedObject in playerRelatedObjects.Where(c => c.HasUnprocessedUpdate).ToList())
|
||||
{
|
||||
Logger.Verbose("Building Cache for " + unprocessedObject.ObjectKind);
|
||||
PermanentDataCache = _characterDataFactory.BuildCharacterData(PermanentDataCache, unprocessedObject.ObjectKind, unprocessedObject.Address);
|
||||
|
|
@ -130,7 +130,7 @@ namespace MareSynchronos.Managers
|
|||
{
|
||||
Logger.Verbose("RedrawEvent for addr " + address);
|
||||
|
||||
foreach (var item in playerAttachedObjects)
|
||||
foreach (var item in playerRelatedObjects)
|
||||
{
|
||||
if (address == item.Address)
|
||||
{
|
||||
|
|
@ -139,7 +139,7 @@ namespace MareSynchronos.Managers
|
|||
}
|
||||
}
|
||||
|
||||
if (playerAttachedObjects.Any(c => c.HasUnprocessedUpdate))
|
||||
if (playerRelatedObjects.Any(c => c.HasUnprocessedUpdate))
|
||||
{
|
||||
OnPlayerOrAttachedObjectsChanged();
|
||||
}
|
||||
|
|
@ -149,7 +149,7 @@ namespace MareSynchronos.Managers
|
|||
{
|
||||
if (_dalamudUtil.IsInGpose) return;
|
||||
|
||||
var unprocessedObjects = playerAttachedObjects.Where(c => c.HasUnprocessedUpdate);
|
||||
var unprocessedObjects = playerRelatedObjects.Where(c => c.HasUnprocessedUpdate);
|
||||
foreach (var unprocessedObject in unprocessedObjects)
|
||||
{
|
||||
unprocessedObject.IsProcessing = true;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue