38 lines
843 B
C#
38 lines
843 B
C#
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();
|
|
}
|
|
}
|
|
}
|