Added more quest stuff including dialogic quest condition
This commit is contained in:
@@ -19,9 +19,6 @@ public partial class QuestManager : Node
|
||||
[Signal]
|
||||
public delegate void DialogicActiveQuestEventHandler(string value);
|
||||
|
||||
[Export(PropertyHint.ArrayType)]
|
||||
public QuestResource[] questsAccessibleFromDialogic;
|
||||
|
||||
public override void _EnterTree()
|
||||
{
|
||||
Instance = this;
|
||||
@@ -81,12 +78,4 @@ public partial class QuestManager : Node
|
||||
EmitSignalQuestsChanged();
|
||||
EmitSignalDialogicActiveQuest(_followQuest?.id ?? "none");
|
||||
}
|
||||
|
||||
// functions to call from Dialogic
|
||||
public void DlSetQuestActiveAndFollow(string questId)
|
||||
{
|
||||
var resource = questsAccessibleFromDialogic.First(qr => qr.id == questId);
|
||||
ChangeQuestStatus(resource, QuestStatus.Status.Active);
|
||||
SetFollowQuest(resource);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,20 +1,22 @@
|
||||
using Godot;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Diagnostics;
|
||||
using Babushka.scripts.CSharp.Common.Quest;
|
||||
using Godot.Collections;
|
||||
|
||||
public partial class QuestTestingScript : Node
|
||||
{
|
||||
[Export(PropertyHint.ArrayType)]
|
||||
private Array<QuestResource> _questsToActivate;
|
||||
private Array<QuestResource>? _questsToActivate;
|
||||
|
||||
public override void _EnterTree()
|
||||
{
|
||||
Debug.Assert(_questsToActivate != null);
|
||||
|
||||
foreach (var questResource in _questsToActivate)
|
||||
{
|
||||
QuestManager.Instance.ChangeQuestStatus(questResource, QuestStatus.Status.Active);
|
||||
QuestManager.Instance!.ChangeQuestStatus(questResource, QuestStatus.Status.Active);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user