找回密码
 立即注册
查看: 131|回复: 7

关于行会建筑度,人物退出怎么清理相关建设值。

[复制链接]

250

主题

551

回帖

250

积分

中级会员

积分
250
发表于 2026-3-28 19:48:53 | 显示全部楼层 |阅读模式

玩家加入行会后,通过杀怪为行会增加建筑度
修改行会建筑度:
格式: GUILDBUILDPOINT  控制符(+-)数字
当玩家退出或者被踢掉时候怎么删掉其玩家在行会贡献的建筑度??

225

主题

540

回帖

229

积分

中级会员

积分
229
发表于 2026-3-28 19:48:53 | 显示全部楼层
奇怪,我这里不会死循环啊。那你把退会调到最后,改成这样。
;退出行会时扣除本人的贡献
[@exitGuild]
#IF
NOT EQUAL T8
#ACT
ADDGUILDMEMBER <$STR(T8)>
GUILDBUILDPOINT - <$STR(U8)>
MOV T8
MOV U8 0
GMEXECUTE @退出门派
;退会时U8可根据需要决定是否清零

0

主题

534

回帖

0

积分

新手上路

积分
0
发表于 2026-3-28 19:48:53 | 显示全部楼层
行会名存T变量,退出行会触发在线提问是否是T转A的老大,加个变量执行且只执行一次,清空T A变量

230

主题

561

回帖

231

积分

中级会员

积分
231
发表于 2026-3-28 19:48:53 | 显示全部楼层
;杀怪触发===============QF
[@OnKillMob]
#if
HAVEGUILD
#ACT
GUILDBUILDPOINT  + 1
MOV T9  <$GUILDNAME>
INC U9 1
;================
;退出行会触发======QF
[@exitGuild]
#if
not equal T9
#act
ADDGUILDMEMBER          <$STR(T9)>
GUILDBUILDPOINT      -  <$STR(U9)>
DELGUILDMEMBER          <$STR(T9)>   <$USERNAME>
mov T9
mov u9
; ==注意,DELGUILDMEMBER不能使用变量   使用后M2会卡死,,提示{异常} ActionOfDelGuildMember
; ==注意,DELGUILDMEMBER不能使用变量   使用后M2会卡死,,提示{异常} ActionOfDelGuildMember
; ==注意,DELGUILDMEMBER不能使用变量   使用后M2会卡死,,提示{异常} ActionOfDelGuildMember
;解决方式,使用2次退出行会命令或者踢2次(踢人需要被踢人物在线)
[@exitGuild]
#if
not equal T9
#act
ADDGUILDMEMBER      <$STR(T9)>
GUILDBUILDPOINT -   <$STR(U9)>
;DELGUILDMEMBER    <$GUILDNAME>   <$USERNAME>
MOV T9
MOV U9

0

主题

557

回帖

9

积分

新手上路

积分
9
发表于 2026-3-28 19:48:53 | 显示全部楼层
;修改一下,这样使用【@退出门派】命令就可以直接清空,但是踢人还是需要2次(有点奇怪)

;杀怪触发===============QF
[@OnKillMob]
#if
HAVEGUILD
#ACT
GUILDBUILDPOINT  + 1
MOV T9  <$GUILDNAME>
INC U9 1
;================
;退出行会触发======QF
[@exitGuild]
#if
not equal T9
#act
ADDGUILDMEMBER          <$STR(T9)>
GUILDBUILDPOINT      -  <$STR(U9)>
GMEXECUTE  @退出门派
mov T9
mov u9

256

主题

538

回帖

257

积分

中级会员

积分
257
发表于 2026-3-28 19:48:53 | 显示全部楼层
说明:由于引擎确实没有删除行会成员的触发,所以删除行会成员只能等到被删除人上线才会扣除其对行会建设值的贡献度,这也是没办法的事情。
一、QM文件
;人物登录时检查有没有被踢
[@Login]
#IF
NOT CHECKOFGUILD <$STR(T8)
#ACT
ADDGUILDMEMBER <$STR(T8)>
GUILDBUILDPOINT - <$STR(U8)>
GMEXECUTE @退出门派
MOV T8
MOV U8 0
;退会时U8可根据需要决定是否清零
二、QF文件
;加入行会时把行会名保存到个人的T8变量中
[@JoinGuild]
#IF
#ACT
MOV T8 <$GUILDNAME>
SENDMSG 6 你已经加入了<$GUILDNAME>行会!
;杀怪时增加行会建设,保存个人贡献
[@KillMon]
#IF
HAVEGUILD
#ACT
GUILDBUILDPOINT + 100
INC U8 100
;退出行会时扣除本人的贡献
[@exitGuild]
#IF
NOT EQUAL T8
#ACT
ADDGUILDMEMBER <$STR(T8)>
GUILDBUILDPOINT - <$STR(U8)>
GMEXECUTE @退出门派
MOV T8
MOV U8 0
;退会时U8可根据需要决定是否清零

0

主题

537

回帖

0

积分

新手上路

积分
0
发表于 2026-3-28 19:48:53 | 显示全部楼层
czy7812 发表于 2021-9-19 08:17 说明:由于引擎确实没有删除行会成员的触发,所以删除行会成员只能等到被删除人上线才会扣除其对行会建设值 ...
这个会死循环吧,退出时候加入再退出,又给T8变量了。。我测试了一下 死循环

0

主题

537

回帖

0

积分

新手上路

积分
0
发表于 2026-3-28 19:48:53 | 显示全部楼层
czy7812 发表于 2021-9-18 22:15 奇怪,我这里不会死循环啊。那你把退会调到最后,改成这样。
;退出行会时扣除本人的贡献
[@exitGuild]
还是有点瑕疵,不过也可以了

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