Added survival mechanic that consumes inventory items if needed.
This commit is contained in:
@@ -15,6 +15,7 @@ public partial class World : Node3D
|
||||
|
||||
public override void _Ready()
|
||||
{
|
||||
ResetRunState();
|
||||
WFC.FillAdjacencies();
|
||||
|
||||
tileMeshes = ResourceLoader.LoadTiles();
|
||||
@@ -78,6 +79,7 @@ public partial class World : Node3D
|
||||
|
||||
public override void _Process(double delta)
|
||||
{
|
||||
GameData.survival.Update(delta);
|
||||
if (!canMove) return;
|
||||
|
||||
if (Input.IsActionJustPressed("layer_up") && currentLayer > 0) currentLayer--;
|
||||
@@ -89,6 +91,18 @@ public partial class World : Node3D
|
||||
}
|
||||
}
|
||||
|
||||
private void ResetRunState()
|
||||
{
|
||||
survival = new SurvivalState();
|
||||
inventory = new Inventory();
|
||||
availableResearch = ResourceLoader.LoadResearch();
|
||||
robots.Clear();
|
||||
currentLayer = 0;
|
||||
visibleLayer = 0;
|
||||
lowestLayer = 0;
|
||||
canMove = true;
|
||||
}
|
||||
|
||||
private void GenerateWorld()
|
||||
{
|
||||
for (int layer = 0; layer < ruinSize; layer++)
|
||||
|
||||
Reference in New Issue
Block a user