KCDDP ADV综合创作站 » 基础技术区 » 【已解决】tag建立循环问题


2008-6-2 16:15 tiancici
【已解决】tag建立循环问题

想用循环实现建立一个数组

@eval exp="f.itm=[]
@eval exp="f.length=0"
*itm1
@if exp="f.length<=5"
@eval exp="f.itm[f.length]=[]"
@eval exp="f.length+=f.length"
[jump target=*itm1]
@endif

这一句:
@eval exp="f.itm[f.length]=[]"
不对。
应该是什么?

用f.itm[0]=[],f.itm[1]=[]等一个个列举的话,没有错。
彻底把tag和tjs弄混了……

[[i] 本帖最后由 tiancici 于 2008-6-2 21:02 编辑 [/i]]

2008-6-2 16:25 tiancici
另外,再问一下
战斗范例里面,一开始建立物品列表的数组
f.物品=[] 是建立一个f.物品[]的数组对吧?
然后的5个,例如f.物品[0]=[],是再建立f.物品[0][]的数组
这么理解没错吧?
为什么不直接建立f.物品[][]呢

2008-6-2 19:11 sarah707
因为貌似没办法直接建立f.物品[][]
关于你上边的那个……@eval exp="f.itm=[]少了后边的引号

2008-6-2 20:21 tiancici
吐血……第二次犯类似错误了……
好吧,修改后解决问题。
而且不支持f.itmlength+=f.itmlength
只能用f.itmlength=(f.itmlength+1)

新的问题来了,在您的示范里面,存在一个——物品表.tjs
这个是原先就设定好的。
那么如果我想自定义建立物品资料
(比如把该数组数据作为sf变量。游戏是一个rpg,过程中得到了新的物品,需要修改添加)

简单的想法,把游戏中所有可能拥有的物品全部列入tjs,然后用数组调用,这样对么?

(自己都觉得说话啰嗦,还表述不清……= =)

2008-6-2 20:50 sarah707
可以吧,那个物品的tjs就只是在初始的时候读入一下,之后那个数组变量随便你蹂躏都于那个表无关的

2008-6-2 21:02 tiancici
3x
看您的范例,感觉太爽了,做得很清晰
尤其是mocro的利用,
嗯,以上并非为mp贴

2008-6-2 21:06 sarah707
不客气……终于有人说我的范例做的清晰了……大部分人都说看不懂……T-T好感动……

2008-6-2 21:26 tiancici
我想是很多人不习惯跳着读程序吧
但有一定程序基础的,会比较习惯于看调用的是什么函数(类比macro)
这样,主程序清晰,没有重复性的语句,阅读会比较轻松

页: [1]


Powered by Discuz! Archiver 5.5.0  © 2001-2006 Comsenz Inc.