28 lines
731 B
C#
28 lines
731 B
C#
using Godot;
|
|
|
|
public class Research
|
|
{
|
|
public ResearchData data;
|
|
public bool isResearched = false;
|
|
public double elapsedResearchTime = 0;
|
|
public bool paidResources = false;
|
|
|
|
public ResearchResult Execute(double delta)
|
|
{
|
|
if (!paidResources)
|
|
{
|
|
foreach (Ingredient ingredient in data.Inputs)
|
|
{
|
|
GameData.inventory.RemoveItem(ingredient.Item, ingredient.Amount);
|
|
}
|
|
paidResources = true;
|
|
}
|
|
elapsedResearchTime += delta;
|
|
if (elapsedResearchTime >= data.CraftTime)
|
|
{
|
|
isResearched = true;
|
|
return ResearchResult.FINISHED;
|
|
}
|
|
return ResearchResult.RESEARCHING;
|
|
}
|
|
} |