当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

推荐一些HERO引擎单机传奇服务端的常见NPC脚本

热度:
以下是一些 HERO 引擎单机传奇服务端的常见 NPC 脚本示例:
1. **传送 NPC 脚本**:
```
(@main)
#say 欢迎来到传送服务中心,我可以将你传送到各个地方。\
<传送到盟重/@to_mengzhong>\
<传送到比奇/@to_biqi>\
<传送到苍月岛/@to_cangyuedao>
(@to_mengzhong)
#act
delaygoto 3000 @delaylabel // 延迟 3 秒传送,可防止挂机工具快速传送
#say 正在处理数据请稍候....
(@delaylabel)
#act
mapmove 0 330 330 // 将玩家传送到盟重的坐标(330, 330)
```
在这个脚本中,玩家与 NPC 对话后,选择相应的传送地点选项,NPC 会延迟一段时间(模拟数据处理)后将玩家传送到指定地图的坐标位置。
2. **商店 NPC 脚本**:
```
(@main)
#say 欢迎光临我的商店,这里有各种道具供你选择。\
<购买药水/@buy_potion>\
<购买装备/@buy_equipment>\
<出售物品/@sell_item>
(@buy_potion)
#act
openbuywindow 药水商店 // 打开药水商店的购买界面
```
此脚本中,商店 NPC 提供了购买药水、装备以及出售物品等功能选项,当玩家选择购买药水时,会打开专门的药水商店购买界面,玩家可以在界面中选择并购买所需的药水。
3. **任务 NPC 脚本**:
```
(@main)
#say 勇敢的冒险者,我这里有一项艰巨的任务需要你去完成。是否接受任务?\
<接受/@accept_task>\
<拒绝/@refuse_task>
(@accept_task)
#act
set [任务变量] 1 // 设置任务已接受的标志变量
give 任务物品 1 // 给予玩家任务物品
#say 好的,祝你好运!任务目标是前往[任务地点]消灭[任务怪物] [任务数量]只。
(@refuse_task)
#act
#say 那真是太可惜了,希望你以后会改变主意。
```
这个脚本是一个简单的任务 NPC 脚本,当玩家与 NPC 对话时,NPC 会询问玩家是否接受任务,玩家选择接受后,会设置任务标志变量,并给予玩家任务物品,同时告知玩家任务目标;玩家选择拒绝则 NPC 会提示玩家以后可以改变主意。
4. **强化 NPC 脚本**:
```
(@main)
#say 欢迎来到强化中心,我可以帮你强化装备,提升装备的属性。\
<强化武器/@weapon_enhance>\
<强化防具/@armor_enhance>\
<查看强化成功率/@check_success_rate>
(@weapon_enhance)
#if
checkitem 武器 1 // 判断玩家是否拥有武器
checkgold 1000 // 判断玩家是否有足够的金币
#act
take 武器 1 // 收取玩家的武器
takegold 1000 // 收取玩家的金币
random 100 // 生成一个 0 到 99 的随机数
#if
small 随机数 强化成功率数值 // 如果随机数小于强化成功率
#act
give 强化后的武器 1 // 给予玩家强化后的武器
#say 恭喜你,武器强化成功!
#else
#act
give 损坏的武器 1 // 给予玩家损坏的武器
#say 很遗憾,武器强化失败,已损坏。
#endif
```
此脚本中,强化 NPC 提供武器和防具的强化服务,玩家选择强化武器时,脚本会检查玩家是否拥有武器以及足够的金币,然后进行强化操作,根据随机数判断强化是否成功,并给予相应的反馈和物品。
5. **兑换 NPC 脚本**:
```
(@main)
#say 我这里可以进行物品兑换,以下是可兑换的物品列表。\
<兑换宝石/@exchange_gem>\
<兑换装备碎片/@exchange_equip_fragment>\
<兑换特殊道具/@exchange_special_item>
(@exchange_gem)
#if
checkitem 材料物品1 10 // 判断玩家是否拥有 10 个材料物品 1
#act
take 材料物品1 10 // 收取玩家的 10 个材料物品 1
give 宝石 1 // 给予玩家 1 个宝石
#say 兑换成功,你获得了 1 个宝石。
#else
#say 你没有足够的材料物品 1 进行兑换。
```
在这个兑换 NPC 脚本中,玩家可以与 NPC 进行物品兑换,选择兑换宝石时,脚本会检查玩家是否拥有足够的材料物品,如果满足条件则进行兑换,否则提示玩家材料不足。
6. **属性加点 NPC 脚本**:
```
(@main)
#say 你可以在我这里进行属性加点,每次加点需要消耗一定的金币和声望值。\
<查看当前属性/@check_current_attr>\
<进行属性加点/@add_attr_point>
(@check_current_attr)
#act
#say 你的当前属性为:力量:<$STR(A0)>, 敏捷:<$STR(A1)>, 体力:<$STR(A2)>, 魔力:<$STR(A3)>。
(@add_attr_point)
#if
checkgold 1000 // 判断玩家是否有足够的金币
checksf 声望值变量名 100 // 判断玩家是否有足够的声望值
#act
takegold 1000 // 收取玩家的金币
takesf 声望值变量名 100 // 收取玩家的声望值
inc A0 1 // 力量属性加 1
#say 属性加点成功,你的力量属性增加了 1 点。
```
此脚本中,属性加点 NPC 允许玩家消耗金币和声望值来增加自己的属性点,玩家可以查看当前属性,然后选择进行属性加点,脚本会检查玩家的金币和声望值是否足够,如果满足条件则进行加点操作,并扣除相应的资源。
[顶部]