找回密码
 立即注册
查看: 350|回复: 10

GOTOLABEL 组队触发检测成员物品并TAKE问题

[复制链接]

215

主题

501

回帖

768

积分

高级会员

积分
768
发表于 2026-3-29 20:19:24 | 显示全部楼层 |阅读模式

1.请问下大神们,下面脚本 错在哪里,麻烦指证一下,谢谢了
2.我需要实现的功能是  队长点击NPC 并触发检测队员背包某件物品与金币,检测成功TAKE掉装备与金币,不成功则不执行任务.  

3.但是现在的问题是当成员背包中没有金币和装备,当队长通过检测则也会因为 GROUPMAPMOVE 命令传送至地图.有没有什么办法,只要任一队员没有通过检测则不执行 @金币装备检测触发  这里面的命令
    [@MAIN]
    #IF
    CHECKGROUPMEMBERCOUNT > 1
    CHECKGROUPMEMBERCOUNT < 6
    ISGROUPMASTER
    #ACT
    MOV M4 1
    GOTO @检查金币装备数量
    #ELSEACT
    MESSAGEBOX 温馨提示:进入失败\\\\1.你开启了组队模式,组队人数不能超过5人!!!\\\\2.你不是队长,请不要点击,小心送你去小黑屋!!!
    BREAK

    [@检查金币装备数量]
    #if
    CheckItem 井中月 1
    checkgold 20000
    EQUAL M4 1
    #ACT
    GOTOLABEL 0 @金币装备检测触发 10
    #ELSEACT
    MESSAGEBOX 温馨提示:进入失败\\\\1.你没有井中月!!!\\\\2.你金币不够!!!
    BREAK

    [@金币装备检测触发]
    #IF
    CheckItem 井中月 1
    checkgold 20000
    #ACT
    take 井中月 1
    take 金币 20000
    GROUPMAPMOVE M001 20 94 @ 10
    SENDMSG 0 玩家【%s】带队进入【未知暗殿】期待这个队伍满载而归
    #ELSEACT
    MESSAGEBOX 温馨提示:进入失败\\\\1.你身上或者你的队员是否有井中月\\\\2.你身上或者队员身上是否有足够的金币!!
    BREAK

复制代码

0

主题

542

回帖

0

积分

新手上路

积分
0
发表于 2026-3-29 20:19:24 | 显示全部楼层
[@MAIN]
#IF
CHECKGROUPMEMBERCOUNT > 1
CHECKGROUPMEMBERCOUNT < 6
ISGROUPMASTER
#ACT
MOV M4 1
GOTO @检查金币装备数量
#ELSEACT
MESSAGEBOX 温馨提示:进入失败\\\\1.你开启了组队模式,组队人数不能超过5人!!!\\\\2.你不是队长,请不要点击,小心送你去小黑屋!!!
BREAK
[@检查金币装备数量]
#if
CheckItem 井中月 1
checkgold 20000
EQUAL M4 1
#ACT
GOTOLABEL 0 @金币装备检测触发 10
#ELSEACT
MESSAGEBOX 温馨提示:进入失败\\\\1.你没有井中月!!!\\\\2.你金币不够!!!
BREAK
[@金币装备检测触发]
#IF
CheckItem 井中月 1
checkgold 20000
#ACT
take 井中月 1
take 金币 20000
GROUPMAPMOVE M001 20 94 @ 10
SENDMSG 0 玩家【%s】带队进入【未知暗殿】期待这个队伍满载而归
#ELSEACT
MESSAGEBOX 温馨提示:进入失败\\\\1.你身上或者你的队员是否有井中月\\\\2.你身上或者队员身上是否有足够的金币!!
BREAK




大婶们看着难受我帮你美化下吧。。勾起大神们思考的欲望

0

主题

518

回帖

407

积分

中级会员

积分
407
发表于 2026-3-29 20:19:24 | 显示全部楼层
51614445 发表于 2020-10-20 21:42 [@MAIN]
#IF
CHECKGROUPMEMBERCOUNT > 1
非常感谢               

0

主题

518

回帖

407

积分

中级会员

积分
407
发表于 2026-3-29 20:19:24 | 显示全部楼层
有人能帮忙回答一下吗

0

主题

537

回帖

0

积分

新手上路

积分
0
发表于 2026-3-29 20:19:24 | 显示全部楼层
[@金币装备检测触发]
#IF
CheckItem 井中月 1
checkgold 20000
#ACT
take 井中月 1
take 金币 20000
GROUPMAPMOVE M001 20 94 @ 10
SENDMSG 0 玩家【%s】带队进入【未知暗殿】期待这个队伍满载而归
#ELSEACT
MESSAGEBOX 温馨提示:进入失败\\\\1.你身上或者你的队员是否有井中月\\\\2.你身上或者队员身上是否有足够的金币!!
BREAK
——这个地方直接用GROUPMAPMOVE M001 20 94 @ 10 不对,
你这个[@金币装备检测触发]是每一个队员都要执行一次,假如有队伍有3人,要执行三次,队长在前面[@检查金币装备数量]里面已经满足了,就肯定会执行GROUPMAPMOVE M001 20 94的,既然执行了,队友1和2不管有没有满足条件,都会被传过去。所以你的脚本逻辑就是错的。

0

主题

583

回帖

20

积分

新手上路

积分
20
发表于 2026-3-29 20:19:24 | 显示全部楼层
你要做全部队员都检查通过才能传送,就需要先做全部队员的检查,然后再用【一次GROUPMAPMOVE】。至于如何检查每一个队员的条件,检查结果用变量或者标志标识,就看你设计了。我的参考意见是需要用循环、<$TEAM0>.CheckItem 井中月 1 等等来实现。具体的你自行设计吧。我没试验过。

0

主题

542

回帖

0

积分

新手上路

积分
0
发表于 2026-3-29 20:19:24 | 显示全部楼层
[@检查金币装备数量]
#if
CheckItem 井中月 1
checkgold 20000
EQUAL M4 1
#ACT
;GOTOLABEL 0 @金币装备检测触发 10
mov N1 0
mov N2 0
Loopgoto @队员检查 <$GROUPMEMBERCOUNT>
DELAYGOTO 200 @队伍传送
#ELSEACT
MESSAGEBOX 温馨提示:进入失败\\\\1.你没有井中月!!!\\\\2.你金币不够!!!
BREAK
[@队员检查]
#IF
<$TEAM<$STR(N1)>>.CheckItem 井中月 1
<$TEAM<$STR(N1)>>.checkgold 20000
#ACT
Inc N1 1
Inc N2 1
#ELSEACT
endloop
[@队伍传送]
#IF
EQUAL <$STR(N2)> <$GROUPMEMBERCOUNT>
#ACT
GROUPMAPMOVE M001 20 94 @ 10
GOTOLABEL 0 @拿走门票 10
SENDMSG 0 玩家【%s】带队进入【未知暗殿】期待这个队伍满载而归
#ELSEACT
MESSAGEBOX 温馨提示:进入失败\\\\1.你身上或者你的队员是否有井中月\\\\2.你身上或者队员身上是否有足够的金币!!
BREAK
[@拿走门票
#ACT
CheckItem 井中月 1
checkgold 20000
以上仅做参考,我没实际运行过。可以参考思路

0

主题

538

回帖

11

积分

新手上路

积分
11
发表于 2026-3-29 20:19:24 | 显示全部楼层
拿走门票那有明显的错误,如果前面你试过能行得通,在好好设计一下你这个队伍的触发行为。我看有队伍范围的,比如有队员在10范围外,是不触发的话,我这种方式还有缺陷的。自行斟酌吧。

0

主题

511

回帖

0

积分

新手上路

积分
0
发表于 2026-3-29 20:19:24 | 显示全部楼层
汤团先生 发表于 2020-10-21 11:49 拿走门票那有明显的错误,如果前面你试过能行得通,在好好设计一下你这个队伍的触发行为。我看有队伍范围的 ...
非常感谢               

225

主题

540

回帖

229

积分

中级会员

积分
229
发表于 2026-3-29 20:19:24 | 显示全部楼层
zhangfeng 发表于 2020-10-21 14:40 非常感谢
谢谢你的思路,终于写完了

© 2026 折翼天使社区 版权所有