最终整理版

This commit is contained in:
2026-06-03 17:04:06 +08:00
commit 959055ce90
1240 changed files with 80570 additions and 0 deletions
+64
View File
@@ -0,0 +1,64 @@
extends NpcScript
#
func OnStart():
match GetQuest(WaterPondGlobal.QUEST_ID):
ProgressCommons.SNAKE_PIT_BITING_THIRST.INACTIVE:
OnInactive()
ProgressCommons.SNAKE_PIT_BITING_THIRST.STARTED:
OnCheckProgress()
ProgressCommons.SNAKE_PIT_BITING_THIRST.REWARDS_WITHDREW:
OnComplete()
_:
OnInProgress()
# Quest states
func OnInactive():
Mes("我的水全洒了。没有水,我回不到图利姆沙。")
Mes("几天前我以为自己能征服这片沙地,就进了这座洞。里面有一处很干净的地下水池,以前旅人会来这里补水。")
Mes("后来蛇越来越多。它们毒性不强,但咬得很凶,我每次装好水,走不到一半就被咬到手抖,把水全洒掉。")
Mes("你能替我试一次吗?只要把水罐装满带回来,我就能回城。")
Mes("洞里还有些旧刻字,像是某个盗贼留下的路线。你如果看见,最好记下来,蛇坑里没有无用的线索。")
Choice("我去试试。", OnAccept)
Choice("今天不行。", OnDecline)
func OnCheckProgress():
var rid : int = own.get_rid().get_id()
if WaterPondGlobal.biteCounters.get(rid, 0) == 0:
OnInProgress()
else:
OnDeliverWater()
func OnInProgress():
Mes("清水池在洞穴深处,不是每一处水都能喝,脏水只会害你白跑。")
Mes("找到清水池后别乱动,等水罐装满,再尽快带回来。")
Mes("路上被蛇咬会漏水。漏光了就回水池重新装,别拿空罐子回来安慰我。")
func OnDeliverWater():
WaterPondGlobal.StopJugTransport(own)
ClearTracker()
Mes("你回来了!水还在,太好了。")
Mes("拿着这些,这是我剩下的东西。比不上你救我一命,但至少能让你少受点苦。")
SetQuest(WaterPondGlobal.QUEST_ID, ProgressCommons.SNAKE_PIT_BITING_THIRST.REWARDS_WITHDREW)
AddItem(DB.GetCellHash("Cactus Drink"), 10)
AddExp(50)
AddGP(1000)
AddKarma(1)
Mes("我现在就回图利姆沙。这里太危险了。")
Mes("以后我会乖乖用城里的井水。蛇坑里的水,就留给蛇和胆子太大的人吧。")
func OnComplete():
Mes("谢谢你帮我取回那罐水。现在我可以慢慢走回城,不用每一步都想着自己会不会倒下。")
Mes("沙漠很美,但我已经受够了它的待客方式。")
func OnDecline():
Mes("我明白。要是你改变主意,我还会在这里,希望不会太久。")
# Transitions
func OnAccept():
SetQuest(WaterPondGlobal.QUEST_ID, ProgressCommons.SNAKE_PIT_BITING_THIRST.STARTED)
Mes("拿着这个水罐。清水池在洞穴深处。")
Mes("我只记得一开始往北,之后转向东边。再后面也许是向南,也许是追着没有风的地方走。")
Mes("说实话,我记得最清楚的是蛇咬上来的声音。")
Mes("如果你在墙上看到旧盗贼的刻字,就照着记。那些字也许比我的脑袋可靠。")
Mes("最好带上可靠的宠物伙伴。蛇很多,单靠胆量装不满水。")