xql 发表于 2008-1-16 01:40:36

机器人求助

在做自己用的task机器,遇到个难题:
比如@npc=玄悲大师,那么id here
玄悲大师             = xuanbei dashi, xuanbei, dashi

怎么样才能取到后面的id呢,其他npc可能是@npc   =id1,id2,id3,id4....
我应该怎么做这个触发?

ssslucky 发表于 2008-1-16 09:40:49

少林护送?
直接就dashi就好了啊

tianyue 发表于 2008-1-16 09:42:22

不用这样吧?
你想达到什么目的呢?
如果你想做到从物品所有人那里取得tasknpc的中文id和英文id,在碰到他的时候自动follow,kill,这个bugbug那版,做的已经非常清楚了。想要的话我给你。

xql 发表于 2008-1-16 10:48:52

是这样的

因为taskobj是在npc身上,完全没必要杀了再拿,比较浪费时间,所以只要一招晕了npc直接从npc身上拿就可以了.那么我这个触发的思路就是.

*脚下一个不稳,跌在地上一动也不动了。
id here
get @taskobj from @npc
注:@taskobj我是在locate的时候就取好的,id here就会有类似玄悲大师             = xuanbei dashi, xuanbei, dashi的信息出现,然后@npc就取一个id

whuan 发表于 2008-1-16 10:54:05

这个简单,把后面的“xuanbei dashi, xuanbei, dashi”取下来
判断有没有“,”,如果有就取前面的
我以前写过的
后来用mush就忘记了

whuan 发表于 2008-1-16 11:04:52

%pos(p,s) 返回字串p在字串s中的位置,如果p不在s中,返回0/false

%left(s,n) 从字串s中截取最左边的n个字符   

组合用一下就好了

whuan 发表于 2008-1-16 11:08:52

比如你已经获取到target_id=xuanbei dashi, xuanbei, dashi
#var temp_id;#var temp_pos;temp_pos=%pos(",",target_id);#if (temp_pos == 0) {temp_id=target_id} {temp_id=%left(target_id,temp_pos)}

没有测试,自己改改。

xql 发表于 2008-1-16 11:31:27

能否给个实例出来?我知道这个要求很过分,但当年我高数重修了4次...实在是没概念,看到具体例子我想我应该能掌握一些
bow

xql 发表于 2008-1-16 11:35:34

哈,洗澡出来发完帖子才看见有实例了
good whuan
好好揣摩下先

tianyue 发表于 2008-1-16 11:51:55

好歹你还学过高数呢,我都没学过……
页: [1] 2 3 4
查看完整版本: 机器人求助