Working on item rescue

This commit is contained in:
2024-12-19 15:42:40 -08:00
parent d135be4318
commit e525ede13d
43 changed files with 794 additions and 25 deletions

View File

@@ -4,6 +4,7 @@ namespace GameJamDungeon;
using Chickensoft.AutoInject;
using Chickensoft.GodotNodeInterfaces;
using Chickensoft.Introspection;
using GameJamDungeon.src.item_rescue;
using Godot;
public interface IGame : IProvide<IGameRepo>, IProvide<IGameEventDepot>, IProvide<IGame>, INode3D
@@ -12,6 +13,8 @@ public interface IGame : IProvide<IGameRepo>, IProvide<IGameEventDepot>, IProvid
public IPlayer Player { get; }
public RescuedItemDatabase RescuedItems { get; }
public void DropItem(IInventoryItem item);
public void ThrowItem(IInventoryItem item);
@@ -65,6 +68,8 @@ public partial class Game : Node3D, IGame
[Node] public InGameAudio InGameAudio { get; set; } = default!;
#endregion
public RescuedItemDatabase RescuedItems { get; set; } = default!;
public void Setup()
{
GameRepo = new GameRepo();
@@ -74,6 +79,7 @@ public partial class Game : Node3D, IGame
GameLogic.Set(AppRepo);
GameLogic.Set(GameEventDepot);
Instantiator = new Instantiator(GetTree());
RescuedItems = new RescuedItemDatabase();
}
public void OnResolved()
@@ -234,15 +240,8 @@ public partial class Game : Node3D, IGame
private void Inventory_RaiseStatRequest(InventoryItemStats itemStats)
{
//if (itemStats.RaiseHPAmount > 0 && GameRepo.PlayerData.CurrentHP.Value.Equals(GameRepo.PlayerData.MaximumHP.Value))
// RaiseHP(itemStats.RaiseHPAmount);
//else if (itemStats.HealHPAmount > 0)
HealHP(itemStats.HealHPAmount);
HealVT(itemStats.HealVTAmount);
//if (itemStats.RaiseVTAmount > 0 && GameRepo.PlayerData.CurrentVT.Value.Equals(GameRepo.PlayerData.MaximumVT.Value))
// RaiseVT(itemStats.RaiseVTAmount);
//else if (itemStats.HealVTAmount > 0)
}
private void SetPauseMode(bool isPaused)