Board logo

标题: [疑问] 关于清除训练师标识cleartrainerflag [打印本页]

作者: artis    时间: 2010-3-8 20:55     标题: 关于清除训练师标识cleartrainerflag

#dynamic 0x80000

//---------------
#org 0x7F0D5C
trainerbattle 0x0 0x356 0x0 @string1 @string2
msgbox @string3 MSG_FACE //"i am fair"
cleartrainerflag 0x356
end

//---------
// Strings
//---------
#org @string1
= befor fight!!!

#org @string2
= after fight!!!

#org @string3
= i am fair

这样写,清除到了训练师0x356的标识了吗?
为什么我和这个NPC战斗了后,接着马上点他,不能再一次战斗了????
补充一句,我的是绿宝石

[ 本帖最后由 artis 于 2010-3-8 21:00 编辑 ]
作者: roywillow    时间: 2010-3-9 16:43

我认为训练师战斗之后并没有执行后面的东西
战斗后他立刻说了“i am fair”这句话么?
作者: ZZOCG    时间: 2010-3-9 19:51

测试的确没有用······还不如直接加那个脚本去除······连续刷也不错~
作者: liuyanghejerry    时间: 2010-3-9 20:57

我想roy说的是对的。clear发生在战斗之后再次和对方说话的时候,于是要想立即再战不能用trainerbattle 0x0,而要用0x1进行搭配(具体看教程),否则你必须在再战之前和对方说一次话。
作者: artis    时间: 2010-3-9 22:56

Roy猜想的没错。战斗后,并没有马上执行下面的代码,没有马上接着说“i am fair”
可是,如果是战斗执行完后直接结束代码的话,那下一次和他对话,他会说“i am fair”
为什么不会执行到cleartrainerflag 0x355这一句?还是说这一句执行了,但是没用?
就是说,只能战斗一次了,多次对话也不起作用...
代码更新后:
#dynamic 0x80000
//---------------
#org 0x29C130
setflag 0x1004
if 0x1 call @snippet1
trainerbattle 0x1 0x13E 0x0 @string1 @string2 @snippet1
end
//---------------
#org @snippet1
cleartrainerflag 0x1004  //原以为人物标识和训练师标识可能有冲突,同样替换成了cleartrainerflag 0x13E进行测试,
                                         // 还是不行...
msgbox @string3 MSG_FACE //"i am fair"
return

//---------
// Strings
//---------
#org @string1
= befor fight!!!
#org @string2
= after fight!!!
#org @string3
= i am fair

这次战斗后会接着说 i am fair,再一滴按A和他说话,还是 i am fair 再第二次和他说,就什么反应也没有了...
已经弄了好久了还弄不明白啊!
orz

再补充一句:如果把训练师标识清除掉了,是不是能够马上和他对战?还是要等一段(多久-_-?)时间?

[ 本帖最后由 artis 于 2010-3-9 23:23 编辑 ]
作者: ZZOCG    时间: 2010-3-10 13:27

额······你实在不行就算了,弄别的好了,别勉强······另外答复一下,不用等待吧······打完直接可以再打,我就这样刷等级的~
作者: liuyanghejerry    时间: 2010-3-11 07:48

我感觉我的教程里似乎搞反了。
换成settrainerflag。
作者: ZZOCG    时间: 2010-3-11 18:56

正解O你的回答太正确了,教程确实搞错了······原来我怎么弄都没有搞定这个问题,后来索性乱弄,反而搞定了-_-




欢迎光临 口袋社区-Poke The BBS (https://ww.poketb.com/) Powered by Discuz! 6.1.0F