|
本帖最后由 ycryu 于 2013-3-13 02:08 AM 编辑
一、从list中获取指定项的序号
#fu getItemIndex {%if(%len(%1) = %len(%word(%2,%3,|)) & %begins(%1,%word(%2,%3,|)),%3,@getItemIndex(%1,%2,[%3 + 1]))}
使用方法:#var weaponName 玄铁剑;
#var weaponList {青锋剑|长剑|碧水剑|真武剑|玄铁剑|龙牙};
#var index @getItemIndex(@weaponName,@weaponList,1);
#sh @index;
最后的参数1是从第1个item开始往后找,可以改成别的数字,但是建议从1开始找
另外,如果不确定@weaponName是否存在于@weaponList中,最好先用%ismember验证,因为如果真的不存在你也要执行,就可能是死循环会内存溢出了
二、获取list的item个数
#fu getItemCount {%if(%len(%word(%1,%2,|)) > 0,@getItemCount(%1,[%2 + 1]),[%2 - 1])}
使用方法:#sh @getItemCount(@weaponList);
北大侠客行MUD,中国最好的MUD |
|