Files
2026-06-03 17:04:06 +08:00

51 lines
2.3 KiB
GDScript

extends NpcScript
#
const QUEST_ID : int = ProgressCommons.Quest.TULIMSHAR_OLD_FRIENDSHIP
var sealedLettersID : int = DB.GetCellHash("Sealed Letters")
#
func OnStart():
var questState : int = GetQuest(QUEST_ID)
match questState:
ProgressCommons.TULIMSHAR_OLD_FRIENDSHIP.ENVELOPES_FOUND:
ReceiveLetters()
ProgressCommons.TULIMSHAR_OLD_FRIENDSHIP.LETTERS_DELIVERED, \
ProgressCommons.TULIMSHAR_OLD_FRIENDSHIP.REWARDS_WITHDREW:
FreeRoaming()
_:
TulimsharWestWallLightTrigerGlobal.CallGuard(own)
func ReceiveLetters():
if HasItem(sealedLettersID):
Mes("你是谁?")
Choice("弗罗斯特让我来的。他让我把这些给你。", GiveLetters)
else:
Mes("你看起来有话要说。可你手里什么都没有。")
Mes("有东西要给我时再回来。我还有墙要巡。")
func GiveLetters():
Mes("什么。他让你带这些来?")
Narrate("议员博恩斯翻看那些信,手指在封口处停了很久。")
Mes("我认得这笔迹。")
Mes("很旧了。那时 女王 还把我们分派在不同岗位,我们甚至还没守同一段墙。")
Mes("弗罗斯特处理人。我处理石头。分工就是这样。")
Mes("有一阵子,这办法很好。")
Mes("后来 女王 不断加压。更多命令,更多临时要求,而且永远不能只把事情做好。")
Mes("弗罗斯特开始给一切立规程。我说,我们已经够难了,不需要再多一层压力。")
Mes("他说我把他关在外面,总是不告诉任何人就做决定。")
Mes("也许他说得对。语言不是我的工具,从来不是。")
Mes("我只想把东西建好,然后让别人停止争论我为什么这么建。")
Mes("最后我叫他走。他走了。故事到此为止。")
Mes("...")
Mes("显然并没有。否则我不会还在这里,守着一段没人真的想攻破的墙。")
Mes("除了你。不过既然弗罗斯特让你来,那另当别论。")
RemoveItem(sealedLettersID)
SetQuest(QUEST_ID, ProgressCommons.TULIMSHAR_OLD_FRIENDSHIP.LETTERS_DELIVERED)
Mes("把这个信封带回去给他。他会知道里面是什么。")
Mes("再告诉他,城墙还在。就这句。他会明白。")
func FreeRoaming():
Mes("又是你。走廊现在对你开放,我说话算数。")
Mes("我旁边的图书架后有条通道,可以通到城墙外。知道的人不多,别让它变成市场传闻。")