作者hmml (hmml)
看板mud_sanc
标题[zMUD] 主要项目13、14 、15
时间Sat Oct 13 13:12:38 2012
资料库:Database Commands
13-01 DBLOAD
中文:开启资料库。
原文:opens a database
格式:#dbload 资料库名称
范例:#dbload barefist
开启一个名为barefist的资料库,资料库必须先建立好。
13-02 DBCLOSE
中文:关闭资料库
原文:closes a database
格式:#dbclose 资料库名称
范例:#dbclose barefist
关闭一个名为barefist的已开启资料库,资料库必须先建立好。
13-03 DBSAVE
中文:储存资料库
原文:saves a database
格式:#dbclose 资料库名称
范例:#dbsave test
将目前开启的资料库储存为test.db。
13-04 VIEW
中文:设定要看的栏位(view)。
原文:sets or defines a database view
格式:#view 专案名称 {优先栏位1|优先栏位2..} {显示栏位}
范例:#view barefist+ {barefist|lv}
建立一个排序专案barefist+,barefist栏位为第一排序条件,
lv栏位是第二排序要件。预设排列是升幂排列,在栏位名称前
方加上"-",可以改为降幂排列。
#view barefist+ {barefist} {nick|lv|barefist}
建立一个排序专案barefist+,barefist栏是排序条件,依照
专案内容仅依序显示nick、lv、barefist三项。
#view
在画面中显示正在检阅的view专案。
#view all
将正到检阅的专案切换到all。
13-05 FIND
中文:寻找项目。
原文:filters the database view to find items
格式:#find {字串} {view名称} {栏位}
范例:#find 库夫林 barefist+ chtname
从专案barefist+的栏位chtname中寻找带有字串"库夫林"的资
料。
13-06 QUERY
中文:寻找项目。
原文:filters the database view to find items
格式:#query (条件) view名称
范例:#query (&nick=~库) barefist+
从专案barefist+的nick栏中寻找字串中包含"库"的资料,所以
,用这个就好。做好後,可以用#view再检视刚刚做的query。
不过,5.55里,似乎无法指定搜寻哪个专案。
13-07 DBRESET
中文:重设要看的栏位(view)。
原文:resets the view filters
格式:#dbreset
范例:#dbreset
将之前对view专案所做的find和query清除回复原状。
13-08 DBGET
中文:将现在的行设为某行。
原文:sets the current database record to a given record
格式:#dbget [number][资料库名称]
范例:#dbget 7
将目前选中的行位切换到第七笔。
#dbget 8direct
将目前选中的行位切换到资料库direct中的第八笔。
这有什麽用呢?切换後,请用#showdb,可以调阅目前选中的
资料,而#say &栏位名称,可以显示目前选中的该笔资料,
这个栏位的数值,如果用#send &栏位名称,可以把数值送到
游戏伺服器。理论上,看到这里,可以试着用资料库做自动
重EN技能的触发看看。
13-09 DBPUT
中文:在一行储存新值。
原文:stores new values in a database record
格式:#dbput [行位][资料库名称] 资料数据
范例:#dbput 14test {nick=雨歌|id=hmml7|lv=87|barefist=7054}
在test的第14行建立或修改资料。格式亦可用:
#dbput 14test nick 雨歌 id hmml7 lv 87 barefist 7054
不过,用第一行的写法比较清楚。如果第14行以前的行位尚未
建立的话,会往前递补。
#dbput 15test %rec
在test的第15行建立或修改资料,资料内容来自目前选中的当笔
资料。
#dbput 16test %dbget(10test)
在test的第16行建立或修改资料,资料内容来自即将指定的该笔
资料。
总之,这是用机器人中,自动将资料写入资料库的指令。
13-10 DBFIRST
中文:设定现在的行为,view中的第一行。
原文:sets the current record to the first in the view
格式:#dbfirst
范例:#dbfirst
将目前的反白,改成反白第一笔。也就是将游标移到最前面
那笔去。如果要切换到其它view专案的首笔,先用#view切
换,再用#dbfirst;要切换到其它资料库的首笔,先用#dbget
,再用#dbfirst。
13-11 DBNEXT
中文:设定现在的行,为view中的下一行。
原文:sets the current record to the next in the view
格式:#dbnext
范例:#dbnext
将目前的反白,改到下一笔。
13-12 DBPREV
中文:设定现在的行,为view中的前一行。
原文:sets the current record to the previous in the view
格式:#dbprev
范例:#dbprev
将目前的反白,改到前一笔。
13-13 DBDELETE
中文:删除一行。
原文:deletes a record in the database
格式:#DBDELETE [行位][资料库名称]
范例:#DBDEL 20
删除目前正调用的资料库,第20行资料。
#DBDEL 8eq
删除资料库eq中,第8行资料。
5.55版没有这个指令,所以不能用触发删除资料库内容。
令人意外。
13-14 LOOPVIEW
中文:对view里的每行绕回圈。
原文:loop through records in a view
格式:#loopview 专案名称 {指令}
范例:#loopview all {#SHOW &id &nick &lv}
秀出view专案all中,每笔资料的id、nick、lv栏位。
13-15 NEW
中文:建立新的一行。
原文:create a new database record
格式:#new 资料库名称 {资料内容}
范例:#new test {nick=黎瑞儿|id=hmml9|lv=67|barefist=8854}
功能和dbput近似,但new会写入新行位,所以不会有误输覆
盖之虞。
13-16 DBOFFLINE
中文:资料库离线工作。
原文:work in editor without effecting user interface
格式:#dboffline
范例:#dboffline
下指令後,所有的动作,包括移动,新增等,都不会改写资料
库内容,只会在记忆体动作。
13-17 DBONLINE
中文:资料库线上工作。
原文:work in editor and effect user interface
格式:#dbonline
范例:#dbonline
下指令後,离线时所做的修改,会加入资料库中。
资料库变数:Database Variable Commands
14-01 ADDKEY
中文:增加键值。
原文:adds a keyword and property to a database record
格式:#addkey 资料库变数名 项目名称 值
范例:#addkey 3p kpp 100
在资料库型变数@3p中,新增一个项目kpp,值为100。
用#show @3p.kpp,可以看到值为100。
很少用到这个,因为可以这麽写:
#var 3p.kpp 100
这道指令和资料库没什麽关系,它用来编辑variables。
14-02 DELKEY
中文:删除键值。
原文:deletes a keyword from a database record
格式:#delkey 资料库变数名 项目名称
范例:#delkey 3p ksp
在资料库型变数@3p中,将项目kpp删除,之後,@3p.kpp
就会消失,不过@3p还是会存在,因为只是删除其内一个
项目而已。
14-03 SHOWDB
中文:显示一行。
原文:displays a database record
格式:#showdb 资料库变数名称
范例:#showdb @3p
将@3p的所有内容全部显示在画面。这是用在资料库变数上。
#dbget test
#view all
#showdb
#dbget:切换到资料库test。
#view all:检视view专案all。
#showdb:检视目前选中的当笔资料。
对,这道指令可以显示指定的record型变数内容;当你打开
资料库的时候,它也能显示目前选到的资料内容。用法只差
在有无指定变数。有指定变数,就是显示record variables
;没指定变数,则显示资料库其中一笔数据。
14-04 LOOPDB
中文:以键值绕回圈。
原文:loops through key values in a database record
格式:#loopdb 资料库变数名称 {指令}
范例:#loopdb @3p {#show %key "=" %val}
将@3p全部的项目循序读取一遍,用#show显示出来。
%key是@3p里的键值,如hp、sp、khp...等。
%val是@3p里每个键值的数值。
本例可用#showdb @3p办到。不过,loopdb可以自订显示格
式,也不是只有显示内容这个用法。
除错:Debugger Commands
◆ 全系列5.55版不支援 ◆
15-01 BREAK
中文:中断点。
原文:causes a breakpoint, which stops execution of script
and loads the debugge
格式:#BR
范例:#br
知道写错while和until会死得很难看吧!这个是救赎之道,可
是我不会用,别问我!
15-02 WATCH
中文:将变数加入观察表。
原文:adds an expression to the debugger Watch List
格式:#WAT expression
范例:#WATCH @testvar
观察@testvar的值。
#WATCH @testvar+2
观察@testvar+2的结果。
用来即时测试式子的指令,详细不明,我只用5.55的。
15-03 UNWATCH
中文:从观察表中移除变数。
原文:removes an expression from the debugger Watch List
格式:#UNW expression
范例:#UNWATCH @testvar
从观察表中移除@testvar。
用来即时测试式子的指令,详细不明,我只用5.55的。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 220.132.196.45
※ 编辑: hmml 来自: 220.132.196.45 (10/27 13:55)