查看: 1918|回复: 6

[传奇综合引擎架设教程] 【第35课】传奇脚本变量系列-传奇常用的脚本命令关键字介绍及语法格式

[复制链接]

40

主题

40

帖子

54

积分

终身会员

Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30Rank: 30

积分
54
发表于 2021-7-6 23:36:46 | 显示全部楼层 |阅读模式

请点击此处下载

查看状态:已购买或有权限

您的用户组是:游客

文件名称:第35课下载地址——在文件中.zip 
下载次数:10  文件大小:246 Bytes 
下载权限: 不限  以上或 VIP会员   [购买VIP]   [金钱充值]




NPC配置文件:D:\MirServer\Mir200\Envir\MerChant.txt
NPC脚本文件:D:\MirServer\Mir200\Envir\market_def

大家好,这节课我们学习传奇脚本常用的几个关键字,关键字的功能以及语法格式,如果对脚本相关知识还没有一点基础的朋友,必须把第60课看一下,今天课程中主要去给大家讲解的是常用关键字的使用方法,还有一些常见的一些控制字符。



脚本命令关键字 [@MAIN]
每一个独立NPC脚本文本都必须有一个脚本头属性[@MAIN],脚本文本中第一行必须是[@MAIN]开头,[@MAIN]下面开始写脚本功能相关命令,你可以把[@MAIN]理解为标识符,脚本文件中有这一段字符引擎才会去识别文本中的其他脚本命令。


脚本命令关键字 #IF
我们上节课讲过每一个完整的脚本功能必须是有两种类型,传奇所有的脚本命令只有两种类型,分别是【检测类型】和【执行类型】脚本命令,#IF就是检测语句,检测语句下只能编写检测类型脚本命令,例如:#IF检测语句下不能编写执行类型的脚本命令,如果把执行类型的编写在检测类型脚本语句下面M2就会提示报错。


脚本命令关键字 #ACT
我们上节课学习讲过执行类型必须配合检测类型使用,如果不需要玩家任何条件直接可以使用某种功能,#IF检测语句下面可以直接不写,如果#IF检测语句下编写的有检测类型脚本命令,#ACT执行语句下面的脚本命令能不能执行,完全取决于#IF下面的检测类型脚本命令,当玩家达到要求条件满足之后#ACT执行语句下面的执行脚本命令才开始执行,如果玩家#IF检测语句下面的检测类型条件不通过,那么#ACT执行语句下的执行脚本命令就不会执行。

脚本命令关键字 #SAY
#SAY是对话框提示类型,#SAY对话框中可以使用<功能按钮/@功能按钮>按钮,#SAY可以单独使用,也可以配合#IF检查语句使用,#IF检测语句下检测命令通过然后执行#SAY命令弹出对话框提示以及文字按钮。


脚本命令关键字 #ELSEACT
#ELSEACT于#ACT的功能是基本一样的,只是在不同的使用情况下使用的方式不一样,#ACT执行类型是在#IF检测类型下的检测脚本命令通过的情况下才会执行#ACT下面的执行脚本命令,#ELSEACT执行类型是在#IF检测语句下的检测脚本命令不通过的情况下,才会执行#ELSEACT执行语句下面的执行类型脚本命令,两个关键字的功能是一样的,#IF检测通过执行#ACT,#IF检测不通过执行#ELSEACT。


脚本命令关键字 #ELSESAY
#ELSESAY和#ELSEACT的使用方法一样的,#IF检测类型通过执行#SAY下的对话框提示,#IF检测类型不通过执行#ELSESAY下的对话框问题。


脚本命令关键字 BREAK
BREAK可以理解为断电或返回,BREAK功能是当一个脚本文件中有多个#IF和#ACT语句,当第一个#IF和和ACT检测条件通过之后下面的#IF和ACT不会再进行检测和执行,如果上面的IF检测语句不通过的情况下面,他会自动调到下一个#IF检测语句,脚本的运行方式是从上向下走运行的,一次类推直到脚本运行走到脚本文件最下面。


脚本命令控制字符 分别有 ; \ < > - + = ? <点击按钮/@自定义字符标签> [@自定义字符标签

\符号是在对话框中的提示文字换行符,文字后面加了\符号之后\符号后面的文字会在对话框下一行显示,<小于号 >大于号 -减号 +加好 ?问号,这几个控制字符是在以后的脚本命令中使用的,不同的脚本命令支持不同的控制字符,注意每一个脚本命令后面必须有空格然后是控制字符然后是参数,具体的使用方法网站上都有脚本命令使用格式和范例。

回复

使用道具 举报

2

主题

463

帖子

938

积分

高级会员

Rank: 4

积分
938
发表于 2021-7-7 00:13:27 | 显示全部楼层
找传奇版本,传奇教程就到301传奇论坛
回复

使用道具 举报

0

主题

20

帖子

21

积分

新手上路

Rank: 1

积分
21
发表于 2021-7-7 00:56:22 | 显示全部楼层
果断MARK,前十有我必火!
回复

使用道具 举报

0

主题

36

帖子

37

积分

新手上路

Rank: 1

积分
37
发表于 2021-7-7 01:48:19 | 显示全部楼层
找传奇版本,传奇教程就到301传奇论坛
回复

使用道具 举报

0

主题

24

帖子

25

积分

新手上路

Rank: 1

积分
25
发表于 2021-7-7 01:51:26 | 显示全部楼层
看了LZ的帖子,我只想说一句很好很强大!
回复

使用道具 举报

0

主题

34

帖子

35

积分

新手上路

Rank: 1

积分
35
发表于 2021-7-7 02:05:48 | 显示全部楼层
膜拜神贴,后面的请保持队形~
回复

使用道具 举报

0

主题

3

帖子

7

积分

新手上路

Rank: 1

积分
7
发表于 2021-8-24 10:12:52 | 显示全部楼层
I think it's best to declare variables in a method or function that you use in small code locally before using them for the first time. Common examples are index variables within a for loop, or variables that collect specific values &#8203;&#8203;within a loop. It's a good idea to declare frequently used variables in modules that can be shared with other variables, such as in the example for best vehicles in Offroad Outlaws or in best racing games for pc, so that your code can easily keep up with notifications that you're reading.



回复

使用道具 举报