找回密码
 立即注册
查看: 54|回复: 0

[技术资源] 让变量使NPC对话框内容动态显示

[复制链接]

0

威望

8500

元宝

1万

金币

VIP会员

积分
12647
逍遥MIR 发表于 2024-7-11 23:27:35 | 显示全部楼层 |阅读模式
对于技术人员来说,#say和#elsesay两个程序段都不会陌生,因为这些是直接给玩家看到的文字,也就是玩家经常说的对话框内容。对话框内容对于玩家来说,是最直观的体现NPC功能的一个界面,NPC的作用及功能,都在这些文字当中表现出来,可是玩家看到的都是静态的字符,因为NPC对于玩家来说,点一下就不会再进行其它操作,除开再次点击其它文字链接以达到下一个脚本段。不同的NPC有不同的内容,显示在玩家面前的文字也不同,如何让不同的玩家点击同一个NPC有不同的内容,就成为技术人员编写脚本时需要注意的事情,能够实现某种功能的脚本才是好脚本,单一的显示只会让玩家觉得不方便及麻烦。那么下面的教程就是介绍传奇私服使用变量让NPC对话框动态显示内容,希望大家看了之后对编写脚本会有一定的帮助。

在脚本编写过程中,变量的使用是非常重要的,它能帮助技术人员实现大部份的内容,包括全局变量的统计及个人变量的显示,一般都知道,让变量以文字形式出现在NPC对话框中,需要用到<$STR()>字符串转换功能,而人物的自定义变量则使用<$HUMAN()>转换,还有引擎内自行设定的个种变量,如<$USERNAME>,<$GUILDNAME>等等。这些都能让NPC内容看起来丰富很多。

那么对于那些需要计算的脚本而言,NPC的显示过程就显得非常重要,我们都知道,如果符合条件,就会触发#act和#say,#act是执行脚本,#say是输出文字显示给玩家,我们做如下测试来证明执行的优先顺序。

[@main]
#if
checklevelex > 0
#act
mov S10 大家好,欢迎光临。
#say
<$STR(S10)>


如上面的脚本中所示,我们给予S10变量一定内容后,使用<$STR()>转换成文本内容显示在NPC上,而NPC结果显示的就是S10中的内容,这样我们可以了解到,一般符合条件的触发是先进行脚本#act操作,然后再输出给玩家看。同样的,不符合条件也是先执行#elseact操作,这样,我们就可以先在脚本执行段中进行所有变量的计算后,再在显示段中进行显示,而不需要分段进行编写了。这样也就方便了技术人员很多工作,省去了很多步骤
本楼点评(0) 收起
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|小黑屋|逍遥版本库

GMT+8, 2024-9-20 06:12 , Processed in 0.041089 second(s), 29 queries .

Powered by XyBbk! X3.5

Copyright © 2001-2023, XyBbk Cloud.

快速回复 返回顶部 返回列表