Start refactoring UI concerns away from game and into UI logic class

This commit is contained in:
2025-03-07 16:48:45 -08:00
parent c3bfab5f53
commit 93c04440d4
11 changed files with 111 additions and 23 deletions

View File

@@ -19,6 +19,8 @@ public partial class Player : CharacterBody3D, IPlayer
public override void _Notification(int what) => this.Notify(what);
private PlayerLogic.IBinding PlayerBinding { get; set; } = default!;
[Dependency] private IGameRepo _gameRepo => this.DependOn<IGameRepo>();
#endregion
#region Save
@@ -233,22 +235,22 @@ public partial class Player : CharacterBody3D, IPlayer
var isAdded = Inventory.TryAdd(inventoryItem);
if (isAdded)
{
Game.AnnounceMessageOnMainScreen($"{inventoryItem.ItemName} picked up.");
_gameRepo.AnnounceMessageOnMainScreen($"{inventoryItem.ItemName} picked up.");
inventoryItem.QueueFree();
}
else
Game.AnnounceMessageOnMainScreen($"Could not pick up {inventoryItem.ItemName}.");
_gameRepo.AnnounceMessageOnMainScreen($"Could not pick up {inventoryItem.ItemName}.");
}
if (area.GetParent() is DroppedItem droppedItem)
{
var isAdded = Inventory.TryAdd(droppedItem.Item);
if (isAdded)
{
Game.AnnounceMessageOnMainScreen($"{droppedItem.Item.ItemName} picked up.");
_gameRepo.AnnounceMessageOnMainScreen($"{droppedItem.Item.ItemName} picked up.");
droppedItem.QueueFree();
}
else
Game.AnnounceMessageOnMainScreen($"Could not pick up {droppedItem.Item.ItemName}.");
_gameRepo.AnnounceMessageOnMainScreen($"Could not pick up {droppedItem.Item.ItemName}.");
}
}