You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
843 B
38 lines
843 B
using Godot;
|
|
using System;
|
|
using Babushka.scripts.CSharp.Common.Farming;
|
|
using Babushka.scripts.CSharp.Common.Quest;
|
|
|
|
public partial class DetectFieldWork : QuestFulfillmentBase
|
|
{
|
|
private int wateredCounter = 0;
|
|
|
|
[Export] private int _wateringNeeded = 5;
|
|
|
|
public override void _EnterTree()
|
|
{
|
|
WateringCanState.OnWater += CountWater;
|
|
QuestManager.Instance!.QuestsChanged += CheckFieldWork;
|
|
}
|
|
|
|
public override void _ExitTree()
|
|
{
|
|
WateringCanState.OnWater -= CountWater;
|
|
QuestManager.Instance!.QuestsChanged -= CheckFieldWork;
|
|
}
|
|
|
|
public void CountWater()
|
|
{
|
|
wateredCounter++;
|
|
CheckFieldWork();
|
|
}
|
|
|
|
public void CheckFieldWork()
|
|
{
|
|
if (IsQuestActive() && wateredCounter >= _wateringNeeded)
|
|
{
|
|
Fulfill();
|
|
}
|
|
}
|
|
}
|