Inventory pages
This commit is contained in:
@@ -55,7 +55,7 @@ public partial class InventoryMenu : Control, IInventoryMenu
|
|||||||
public void PopulateItems()
|
public void PopulateItems()
|
||||||
{
|
{
|
||||||
var inventory = GameRepo.InventoryItems.Value;
|
var inventory = GameRepo.InventoryItems.Value;
|
||||||
var numberOfItemsToDisplay = inventory.Count <= _itemsPerPage ? inventory.Count : _itemsPerPage;
|
var numberOfItemsToDisplay = Mathf.Min(inventory.Count, _itemsPerPage);
|
||||||
var indexToStart = _currentPageNumber == InventoryPageNumber.FirstPage ? 0 : 10;
|
var indexToStart = _currentPageNumber == InventoryPageNumber.FirstPage ? 0 : 10;
|
||||||
|
|
||||||
ForwardArrow.Text = "";
|
ForwardArrow.Text = "";
|
||||||
@@ -73,9 +73,9 @@ public partial class InventoryMenu : Control, IInventoryMenu
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
for (var i = indexToStart; i < numberOfItemsToDisplay + indexToStart; i++)
|
for (var i = 0; i < numberOfItemsToDisplay; i++)
|
||||||
{
|
{
|
||||||
var item = inventory.ElementAt(i);
|
var item = inventory.ElementAt(i + indexToStart);
|
||||||
var itemScene = GD.Load<PackedScene>(ITEM_SLOT_SCENE);
|
var itemScene = GD.Load<PackedScene>(ITEM_SLOT_SCENE);
|
||||||
var itemSlot = itemScene.Instantiate<IItemSlot>();
|
var itemSlot = itemScene.Instantiate<IItemSlot>();
|
||||||
ItemsPage.AddChildEx(itemSlot);
|
ItemsPage.AddChildEx(itemSlot);
|
||||||
@@ -86,13 +86,30 @@ public partial class InventoryMenu : Control, IInventoryMenu
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public override void _UnhandledInput(InputEvent @event)
|
||||||
|
{
|
||||||
|
var inventory = GameRepo.InventoryItems.Value;
|
||||||
|
if (_currentPageNumber == InventoryPageNumber.FirstPage && inventory.Count > _itemsPerPage && Input.IsActionJustPressed(GameInputs.UiRight))
|
||||||
|
{
|
||||||
|
ClearItems();
|
||||||
|
_currentPageNumber = InventoryPageNumber.SecondPage;
|
||||||
|
PopulateItems();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (_currentPageNumber == InventoryPageNumber.SecondPage && Input.IsActionJustPressed(GameInputs.UiLeft))
|
||||||
|
{
|
||||||
|
ClearItems();
|
||||||
|
_currentPageNumber = InventoryPageNumber.FirstPage;
|
||||||
|
PopulateItems();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void ClearItems()
|
public void ClearItems()
|
||||||
{
|
{
|
||||||
var items = ItemsPage.GetChildren().OfType<ItemSlot>();
|
var items = ItemsPage.GetChildren().OfType<ItemSlot>();
|
||||||
foreach (var item in items)
|
foreach (var item in items)
|
||||||
{
|
{
|
||||||
ItemsPage.RemoveChild(item);
|
ItemsPage.RemoveChild(item);
|
||||||
CallDeferred(nameof(item.QueueFree));
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,7 +13,7 @@ unique_name_in_owner = true
|
|||||||
script = ExtResource("1_sr15j")
|
script = ExtResource("1_sr15j")
|
||||||
room_scenes = Array[PackedScene]([ExtResource("3_vdv5c")])
|
room_scenes = Array[PackedScene]([ExtResource("3_vdv5c")])
|
||||||
corridor_room_scene = ExtResource("4_pgrs5")
|
corridor_room_scene = ExtResource("4_pgrs5")
|
||||||
dungeon_size = Vector3i(50, 3, 50)
|
dungeon_size = Vector3i(20, 3, 20)
|
||||||
voxel_scale = Vector3(12.955, 13.01, 12.945)
|
voxel_scale = Vector3(12.955, 13.01, 12.945)
|
||||||
generate_on_ready = false
|
generate_on_ready = false
|
||||||
place_even_if_fail = true
|
place_even_if_fail = true
|
||||||
|
|||||||
@@ -1240,6 +1240,62 @@ gizmo_extents = 1.0
|
|||||||
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
gizmo_extents = 1.0
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
|
[node name="ItemSpawn7" type="Marker3D" parent="ItemSpawnPoints"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
|
[node name="ItemSpawn8" type="Marker3D" parent="ItemSpawnPoints"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
|
[node name="ItemSpawn9" type="Marker3D" parent="ItemSpawnPoints"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
|
[node name="ItemSpawn10" type="Marker3D" parent="ItemSpawnPoints"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
|
[node name="ItemSpawn11" type="Marker3D" parent="ItemSpawnPoints"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
|
[node name="ItemSpawn12" type="Marker3D" parent="ItemSpawnPoints"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
|
[node name="ItemSpawn13" type="Marker3D" parent="ItemSpawnPoints"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
|
[node name="ItemSpawn14" type="Marker3D" parent="ItemSpawnPoints"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
|
[node name="ItemSpawn15" type="Marker3D" parent="ItemSpawnPoints"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
|
[node name="ItemSpawn16" type="Marker3D" parent="ItemSpawnPoints"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
|
[node name="ItemSpawn17" type="Marker3D" parent="ItemSpawnPoints"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
|
[node name="ItemSpawn18" type="Marker3D" parent="ItemSpawnPoints"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
|
[node name="ItemSpawn19" type="Marker3D" parent="ItemSpawnPoints"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
|
[node name="ItemSpawn20" type="Marker3D" parent="ItemSpawnPoints"]
|
||||||
|
transform = Transform3D(1, 0, 0, 0, 1, 0, 0, 0, 1, -10.8145, -11.8091, -2.92704)
|
||||||
|
gizmo_extents = 1.0
|
||||||
|
|
||||||
[node name="EnemySpawnPoints" type="Node3D" parent="."]
|
[node name="EnemySpawnPoints" type="Node3D" parent="."]
|
||||||
unique_name_in_owner = true
|
unique_name_in_owner = true
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user