让变量使NPC对话框内容动态显示
对于技术人员来说,#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操作,这样,我们就可以先在脚本执行段中进行所有变量的计算后,再在显示段中进行显示,而不需要分段进行编写了。这样也就方便了技术人员很多工作,省去了很多步骤
页:
[1]