当前位置 : 145z游戏站 | 热血传奇 | 传奇游戏 | 

分享一些传奇Gom引擎中QuestDiary文件夹下的任务脚本实例

热度:
以下为你提供几种不同类型的传奇Gom引擎中`QuestDiary`文件夹下的任务脚本实例:

###1.杀怪任务脚本
这个脚本实现了一个简单的杀怪任务,玩家需要杀死指定数量的怪物来完成任务并获得奖励。
```plaintext
[@main]
#IF
#ACT
SendMsg0你接到了一个杀怪任务,需要杀死15只骷髅战士。
Goto@killing

[@killing]
#IF
CheckKillMonCount骷髅战士15
#ACT
SendMsg0恭喜你,已经杀死了15只骷髅战士,任务完成!
GiveExp5000
GiveMoney3000
GiveItem10011;给予物品ID为1001的物品
Goto@end
#ELSE
SendMsg0你还需要杀死[15-<$KILLMONCOUNT(骷髅战士)>]只骷髅战士。
Goto@killing

[@end]
SendMsg0任务已结束,感谢你的参与!
```

###2.收集物品任务脚本
玩家需要收集一定数量的特定物品来完成任务,完成后可获得相应奖励。
```plaintext
[@main]
#IF
#ACT
SendMsg0现在你要收集10个魔法药水。
Goto@collecting

[@collecting]
#IF
CheckItemCount100210
#ACT
SendMsg0你已经收集够10个魔法药水,任务完成!
TakeItem100210;扣除收集的物品
GiveExp4000
GiveMoney2500
GiveItem10031
Goto@end
#ELSE
SendMsg0你还需要收集[10-<$ITEMCOUNT(1002)>]个魔法药水。
Goto@collecting

[@end]
SendMsg0任务完成,奖励已发放!
```

###3.对话选择任务脚本
玩家通过与NPC对话进行选择,不同的选择会导向不同的结果和奖励。
```plaintext
[@main]
#IF
#ACT
AskText你面前有两条路,选择左边(A)还是右边(B)?<$STR(S1)>
If$STR(S1)==A
Goto@leftPath
ElseIf$STR(S1)==B
Goto@rightPath
Else
SendMsg0输入无效,请重新输入。
Goto@main

[@leftPath]
#IF
#ACT
SendMsg0你选择了左边的路,遇到了一个宝箱,获得了丰厚的奖励!
GiveExp6000
GiveMoney4000
GiveItem10041
Goto@end

[@rightPath]
#IF
#ACT
SendMsg0你选择了右边的路,遇到了怪物的袭击,不过你成功击退了它们,获得了一些经验。
GiveExp3000
Goto@end

[@end]
SendMsg0本次选择任务结束。
```

###4.等级限制任务脚本
玩家需要达到一定等级才能接受任务,完成任务后获得奖励。
```plaintext
[@main]
#IF
CheckLevelGreaterEqual25;检查玩家等级是否大于等于25级
#ACT
SendMsg0你达到了25级,可以接受这个护送任务。护送商人安全到达目的地。
Goto@escorting
#ELSE
SendMsg0你的等级不够,需要达到25级才能接受此任务。
Goto@main

[@escorting]
#IF
CheckQuestVar1;假设完成护送后会设置任务变量1为完成状态
#ACT
SendMsg0你成功护送商人,任务完成!
GiveExp7000
GiveMoney5000
GiveItem10051
Goto@end
#ELSE
SendMsg0护送任务还未完成,请继续努力。
Goto@escorting

[@end]
SendMsg0任务圆满结束,祝你游戏愉快!
```

###5.任务链脚本
一系列相关的任务组成任务链,玩家需要依次完成前一个任务才能开启下一个任务。
```plaintext
;第一个任务:收集草药
[@task1_main]
#IF
#ACT
SendMsg0你接到第一个任务,收集8株草药。
Goto@task1_collecting

[@task1_collecting]
#IF
CheckItemCount10068
#ACT
SendMsg0你已收集够8株草药,第一个任务完成!
TakeItem10068
GiveExp2000
SetQuestVar11;设置任务变量1为完成状态
Goto@task2_main
#ELSE
SendMsg0你还需要收集[8-<$ITEMCOUNT(1006)>]株草药。
Goto@task1_collecting

;第二个任务:杀死怪物
[@task2_main]
#IF
CheckQuestVar11;检查第一个任务是否完成
#ACT
SendMsg0现在开始第二个任务,杀死12只野狼。
Goto@task2_killing
#ELSE
SendMsg0你需要先完成第一个任务才能开始这个任务。
Goto@task1_main

[@task2_killing]
#IF
CheckKillMonCount野狼12
#ACT
SendMsg0你已杀死12只野狼,第二个任务完成!
GiveExp3000
SetQuestVar21;设置任务变量2为完成状态
Goto@task3_main
#ELSE
SendMsg0你还需要杀死[12-<$KILLMONCOUNT(野狼)>]只野狼。
Goto@task2_killing

;第三个任务:寻找宝藏
[@task3_main]
#IF
CheckQuestVar21;检查第二个任务是否完成
#ACT
SendMsg0最后一个任务,找到隐藏的宝藏。
Goto@task3_searching
#ELSE
SendMsg0你需要先完成第二个任务才能开始这个任务。
Goto@task2_main

[@task3_searching]
#IF
CheckQuestVar31;假设找到宝藏后会设置任务变量3为完成状态
#ACT
SendMsg0你找到了宝藏,整个任务链完成!
GiveExp5000
GiveMoney6000
GiveItem10071
Goto@end
#ELSE
SendMsg0宝藏还未找到,请继续寻找。
Goto@task3_searching

[@end]
SendMsg0恭喜你完成了整个任务链!
```

这些脚本实例涵盖了常见的任务类型,你可以根据游戏的具体需求进行修改和扩展。
[顶部]