extends NpcScript # func OnStart(): var questState : int = GetQuest(ProgressCommons.Quest.NINA_HUNGRY) if questState == ProgressCommons.NINA_HUNGRY.INACTIVE: OnIntro() else: Mes("又见面了。灵魂石碑 今天很安静,这是好事。") OnPlayerChoice() # Intro func OnIntro(): Mes("你好。是埃拉诺让你来的?欢迎。") Mes("你面前的是图利姆沙古老的 灵魂石碑。我负责守护它,也用它的力量保护城里的人。") Mes("当然,是在王宫允许的范围内。这里很多事都要加上这句话。") OnPlayerChoice() func OnPlayerChoice(): if GetQuest(ProgressCommons.Quest.NINA_HUNGRY) == ProgressCommons.NINA_HUNGRY.STARTED and HasItem(DB.GetCellHash("Croissant")): Choice("我给你带来了可颂。", OnCroissantTurnIn) else: Choice("有人在阻止你使用 石碑?", OnExplainOpposition) Choice("讲讲 玛纳 和 卡奥雷。", OnExplainMana) Choice("灵魂石碑 是什么?", OnExplainMenhir) Choice("我先走了。", Farewell) # Opposition and faith func OnExplainOpposition(): Mes("不是直接阻止。卡维,也就是外人口中的德鲁伊,一直被允许留在图利姆沙。没有我们,这座城很难熬过干旱和 卡奥雷 侵袭。") Mes("但王国官方信奉 萨维安教义。他们认为 玛纳 和 卡奥雷 一样危险,都应该尽量远离。") Mes("有趣的是,公开反对 玛纳 的人,家人受伤或田地缺雨时,还是会来找我们。") Mes("我只是希望大家能更诚实地面对古老传统。萨维安 的恐惧已经让世界吃过太多苦,现在还催生了崇拜 卡奥雷 的 瓦鲁尼亚人。") Choice("卡维 怎么看待 玛纳?", OnKahwePosition) Choice("我想问别的事。", OnPlayerChoice) Choice("谢谢你,我先走了。", Farewell) func OnKahwePosition(): Mes("卡维 传承的是 玛纳 与生命和谐共处的知识。我们想恢复 汉图 被毁后失去的平衡。") Choice("汉图 是什么?", OnExplainHantu) Choice("我想问别的事。", OnPlayerChoice) Choice("谢谢你,我先走了。", Farewell) func OnExplainHantu(): Mes("汉图 也叫 玛纳树,曾经像世界生命力的心脏,能自然引导 玛纳。") Mes("古代有许多 汉图,它们稳定 玛纳,防止 玛纳 腐败成 卡奥雷。") Mes("后来战争和 萨维安教义 的恐惧摧毁了它们。统治者试图创造一个没有 玛纳 的世界。") Mes("结果你已经看见了:玛纳 没有消失,只是失去平衡,留下了 卡奥雷。") Choice("现在局势怎样?", OnCurrentSituation) Choice("我想问别的事。", OnPlayerChoice) Choice("谢谢你,我先走了。", Farewell) func OnCurrentSituation(): Mes("看你问谁。红女王会说普通人离魔法越远越好。") Mes("可她自己在王宫里照样使用魔法。她真正的意思是:力量最好只掌握在少数人手里。") Mes("我相信魔法是世界的一部分。水也危险,但没人会因为会溺水就封掉所有水井。") Choice("红女王是什么人?", OnRedQueen) Choice("有什么我能帮忙的吗?", OnAskForHelp) func OnRedQueen(): Mes("她统治图利姆沙,也自称统治整个 托诺里。可城墙之外,听她命令的人并不多。") Mes("祖尼 部族从未承认这个王国。她越控制不了外面,就越想控制城里的人。") Mes("祖尼 仍保留古老魔法,这让他们很难被征服。红女王不想图利姆沙居民也拥有那种独立性。") Choice("讲讲 祖尼。", OnZuni) Choice("有什么我能帮忙的吗?", OnAskForHelp) func OnZuni(): Mes("祖尼 在 托诺里 生活了很久,久到他们的故事里还记得这片土地不是沙漠时的样子。") Mes("他们和图利姆沙一直有贸易,也大多友好。前提是我们别把士兵派得太远。") Mes("一旦王国越界,他们就会反击。我尊重这一点:他们知道边界在哪里,也愿意守住家园。") Choice("听起来我该更谨慎些。", OnZuniDismissal) Choice("我想见见他们。", OnZuniMarket) func OnZuniDismissal(): Mes("谨慎总比傲慢好。") OnZuniMarket() func OnZuniMarket(): Mes("北边市场里常有 祖尼 商人。只要你尊重他们,买不买东西都能聊上几句。") Choice("有什么我能帮忙的吗?", OnAskForHelp) # 玛纳 and 卡奥雷 func OnExplainMana(): Mes("玛纳 常被称作生命力,是活物之间流动的能量。") Mes("正确引导 玛纳,可以施展魔法、治疗土地、维持生命。") Mes("卡奥雷 则是 玛纳 与源头断裂后腐败留下的东西。它不滋养生命,只会侵蚀、扭曲,让生物变得敌对。") Mes("这座 灵魂石碑 用 泽莱石 制成。泽莱石 能储存和释放 玛纳,所以它才能保护城门附近。") OnPlayerChoice() # 灵魂石碑 and 泽莱石 func OnExplainMenhir(): Mes("灵魂石碑 是用巨大 泽莱石 雕成的古代石碑。卡维 会借它引导并扩散 玛纳。") Mes("它启动时能形成保护性的气场,驱散被 卡奥雷 侵蚀的生物,也能稳定周围土地。") Mes("在 卡维 协助下,它还能治疗重伤者。某些时候,甚至能把濒死者的灵魂拉回安全处。") Choice("泽莱石 是什么?", OnExplainZielite) Choice("我想问别的事。", OnPlayerChoice) Choice("谢谢你,我先走了。", Farewell) func OnExplainZielite(): Mes("泽莱石 是一种天然亲近 玛纳 的稀有矿物,能吸收、储存并释放 玛纳。") Mes("过去它并不少见,但 萨维安教义 掀起反 玛纳 清洗后,很多矿脉和工艺都被毁了。") Mes("现在 泽莱石 多藏在护符、遗迹和少数仍然站立的 灵魂石碑 里。") OnPlayerChoice() # Hungry quest func OnAskForHelp(): var questState : int = GetQuest(ProgressCommons.Quest.NINA_HUNGRY) if questState == ProgressCommons.NINA_HUNGRY.STARTED: Mes("暂时没有。只是,如果你真的路过面包铺,我还在惦记那份点心。") OnPlayerChoice() elif questState == ProgressCommons.NINA_HUNGRY.REWARDS_WITHDREW: Mes("暂时没有,谢谢你还记得问。那份可颂让我今天好多了。") OnPlayerChoice() else: Mes("暂时没有。") Mes("不过我有点饿。不是要你帮我买吃的!我只是从早上开始就没离开过 石碑。") Choice("我去市场时帮你看看点心。", OnStartHungryQuest) Choice("那你记得休息。", Farewell) func OnStartHungryQuest(): Mes("你真好。我平时不会开口,但现在如果有一份可颂,确实会像小小的奇迹。") Mes("市场的面包铺通常能买到。我要是离开太久,石碑 这边没人照看。") SetQuest(ProgressCommons.Quest.NINA_HUNGRY, ProgressCommons.NINA_HUNGRY.STARTED) func OnCroissantTurnIn(): Mes("天啊。") Mes("真的是可颂!我没想到你会记得。") RemoveItem(DB.GetCellHash("Croissant")) SetQuest(ProgressCommons.Quest.NINA_HUNGRY, ProgressCommons.NINA_HUNGRY.REWARDS_WITHDREW) AddItem(DB.GetCellHash("Cactus Potion"), 10) AddGP(100) Mes("请收下这些仙人掌药剂,还有一点钱,至少补上你花掉的费用。") func Farewell(): Chat("愿 灵魂石碑 保佑你一路平安。")