NPC脚本的执行流程主要由以下组成:
每一个NPC脚本都有由一个[@main]脚本标签开始脚本执行,相当于一个MAIN函数头一样,在此脚本下的主要语句有:
#IF
#ACT (#SAY) //ACT与SAY是并列执行的 织梦内容管理系统
#ELSEACT (#ELSESAY) //ELSEACT与ELSESAY是并列执行的
#SAY
织梦内容管理系统
#ELSESAY
Break //中断脚本流程执行 本文来自织梦
GOTO @标签名 //跳转到指定标签段
dedecms.com
-------------------------------
#IF //假设条件语句,如果的意思
#ACT //如果条件成立就执行 织梦内容管理系统
#SAY //如果条件成立就显示,SAY语句作用是在客户端显示对话信息
dedecms.com
#ELSEACT //如果条件不成立就执行 织梦内容管理系统
#ELSESAY //如果条件不成立就显示,ELSESAY语句作用是在客户端显示对话信息
织梦内容管理系统
范例:
[@main]
#IF
checkjob Warr //检测是否是战士职业
#ACT
SENDMSG 5 你的职业是战士
#SAY
你的职业是战士
#ELSEACT
SENDMSG 5 你不是战士职业
#ELSESAY
你不是战士职业 内容来自dedecms
内容来自dedecms
//ACT与SAY是并列执行的
//ELSEACT与ELSESAY是并列执行的
织梦内容管理系统
也可以这样:
copyright dedecms
dedecms.com
[@main]
#IF
checkjob Warr //检测是否是战士职业
#ACT
SENDMSG 5 你的职业是战士
#ELSEACT
SENDMSG 5 你不是战士职业
织梦内容管理系统
[@main]
#IF
checkjob Warr //检测是否是战士职业
#SAY
你的职业是战士
#ELSESAY
你不是战士职业 本文来自织梦
-------------------------------
本文来自织梦
下面来看 Break //中断脚本流程执行功能
内容来自dedecms
很多时候,脚本的某一个功能,都是由很多条件假设构成,当我们要同时检查多个并列的条件时,就需要用到脚本“Break中断”了,当然,如果不用中断写法,肯定就要用到GOTO跳转了,但为了降低资源和优化效率,一般是采用break中断写法,尽量不使用GOTO跳转。 内容来自dedecms
本文来自织梦
比如:我要检查当前指定脚本的玩家等级是否有50级,是否是女性,是否是战士职业,是否有50个元宝?如何来实现这个功能呢?我们分两种写法来说明Break中断的作用!
本文来自织梦
copyright dedecms
范例1:(使用传统的GOTO跳转来实现) 本文来自织梦
[@传统写法]
#IF
CHECKLEVELEX > 49
#ACT
GOTO @检测性别
#ELSESAY
你的等级不足50级\\
<离开> 本文来自织梦
织梦好,好织梦
[@检测性别]
#IF
gender WOMAN
#ACT
GOTO @检测职业
#ELSESAY
你不是女性玩家\\
<离开> 织梦内容管理系统
本文来自织梦
[@检测职业]
#IF
checkjob Warr
#ACT
GOTO @检测元宝
#ELSESAY
你不是战士职业\\
<离开> 本文来自织梦
本文来自织梦
[@检测元宝]
#IF
CHECKGAMEGOLD > 49
#SAY
你满足条件,你的元宝有50个!\
你是女性,50级,战士职业玩家!\
<离开>
#ELSESAY
你的元宝不足50个\\
<离开> 本文来自织梦
dedecms.com
范例2:(使用Break中断写法来实现) copyright dedecms
内容来自dedecms
[@中断写法]
#IF
CHECKLEVELEX < 50
#SAY
你的等级不足50级\\
<离开>
#ACT
break
#IF
gender WOMAN
#ELSESAY
你不是女性玩家\\
<离开>
#ELSEACT
break
#IF
checkjob Warr
#ELSESAY
你不是战士职业\\
<离开>
#ELSEACT
break
#IF
CHECKGAMEGOLD > 49
#SAY
你满足条件,你的元宝有50个!\
你是女性,50级,战士职业玩家!\
<离开>
#ELSESAY
你的元宝不足50个\\
<离开> dedecms.com
dedecms.com
//以上两种写法的执行结果一样,但从中可以看出使用break中断写法可以节省很多代码和不必要的跳转,能降低脚本在执行过程中的资源占用率。
break中断功能的作用就是,假设条件不成,就中断脚本继续执行,也就是break后面的脚本就不执行了,执行流程结束!第2种写法中,如果没有break,那么所有的判断都将按照从上到下的执行流程进行顺序执行,不管是否成立与否,都将一直执行到最后,大家可以把它取消了自己试试就知道了。
织梦好,好织梦
1.76精品传奇_1.76天下毁灭_1.76复古传奇_英雄合击_中变靓装传奇_无忧传奇
传奇花屏补丁,花屏补丁,土城花屏补丁,盟重土城花屏补丁下载,土城花屏补丁下载,沙巴克花屏补丁,传奇土城花屏补丁下载
网站每天发布最新、最好的传奇版本下载和与传奇服务端配套开区传奇模版,网游技术教程全部免费下载!
无忧网络是目前唯一家所有的传奇服务端,传奇私服花屏补丁,盟重花屏补丁和传奇客户端下载都经过站长亲自测试并配有真实测试图!
所有的工具软件和传奇版本在发布之前,都会经过站长亲自测试,保证chuanqisf可以进入游戏,所有软件都无毒无插件!
本站声明:本站所有技术资料与下载资源均为网络搜集整理,并不代表本站的观点与立场,如有侵犯您的权益,请来信指出,本站将立即改正Copyright © 2002-2014 无忧网络 版权所有蜀ICP备09041899号