Skip to content

Commit 74d6376

Browse files
committed
feat(pkuxkx): 增加对未知 GMCP 消息的支持,方便用户扩展
1 parent c16ebd7 commit 74d6376

File tree

1 file changed

+29
-10
lines changed

1 file changed

+29
-10
lines changed

mud/pkuxkx/plugins/gmcp.tin

Lines changed: 29 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -12,11 +12,12 @@ load-lib option;
1212
load-lib event;
1313
load-lib gmcp;
1414

15-
event.Define {GMCP.Move} {无参} {$MODULE} {接收到 GMCP 移动信息,已更新 gGMCP[Move]};
16-
event.Define {GMCP.Status} {无参} {$MODULE} {接收到 GMCP 角色状态,已更新 gGMCP[Status]};
17-
event.Define {GMCP.Combat} {无参} {$MODULE} {接收到 GMCP 战斗信息,已更新 gGMCP[Combat]};
18-
event.Define {GMCP.Buff} {无参} {$MODULE} {接收到 GMCP BUFF状态,已更新 gGMCP[Buff]};
19-
event.Define {GMCP.Message} {无参} {$MODULE} {接收到 GMCP 聊天信息,已更新 gGMCP[Message]};
15+
event.Define {GMCP.Unknown} {无参} {$MODULE} {接收到 GMCP 未知消息,已更新 gGMCP[Unknown]};
16+
event.Define {GMCP.Move} {无参} {$MODULE} {接收到 GMCP 移动信息,已更新 gGMCP[Move]};
17+
event.Define {GMCP.Status} {无参} {$MODULE} {接收到 GMCP 角色状态,已更新 gGMCP[Status]};
18+
event.Define {GMCP.Combat} {无参} {$MODULE} {接收到 GMCP 战斗信息,已更新 gGMCP[Combat]};
19+
event.Define {GMCP.Buff} {无参} {$MODULE} {接收到 GMCP BUFF状态,已更新 gGMCP[Buff]};
20+
event.Define {GMCP.Message} {无参} {$MODULE} {接收到 GMCP 聊天信息,已更新 gGMCP[Message]};
2021

2122
#var {gmcp.key-e2c} {
2223
{Move} {
@@ -101,11 +102,18 @@ event.Define {GMCP.Message} {无参} {$MODULE} {接收到 GMCP 聊天信息,
101102
};
102103

103104
#alias {gmcp.pkuxkx.Enable} {
104-
#event {IAC SB GMCP GMCP.Status IAC SE} {gmcp.pkuxkx.OnStatus {%%1} {%%2}};
105-
#event {IAC SB GMCP GMCP.Move IAC SE} {gmcp.pkuxkx.OnMove {%%1} {%%2}};
106-
#event {IAC SB GMCP GMCP.Combat IAC SE} {gmcp.pkuxkx.OnCombat {%%1} {%%2}};
107-
#event {IAC SB GMCP GMCP.Buff IAC SE} {gmcp.pkuxkx.OnBuff {%%1} {%%2}};
108-
#event {IAC SB GMCP GMCP.Message IAC SE} {gmcp.pkuxkx.OnMessage {%%1} {%%2}};
105+
#event {IAC SB GMCP} {
106+
#if { "%%0" == "GMCP.{Status|Move|Combat|Buff|Message}" } {
107+
#return;
108+
};
109+
gmcp.pkuxkx.OnGMCP {%%0} {%%1};
110+
};
111+
112+
#event {IAC SB GMCP GMCP.Status IAC SE} {gmcp.pkuxkx.OnStatus {%%1} {%%2}};
113+
#event {IAC SB GMCP GMCP.Move IAC SE} {gmcp.pkuxkx.OnMove {%%1} {%%2}};
114+
#event {IAC SB GMCP GMCP.Combat IAC SE} {gmcp.pkuxkx.OnCombat {%%1} {%%2}};
115+
#event {IAC SB GMCP GMCP.Buff IAC SE} {gmcp.pkuxkx.OnBuff {%%1} {%%2}};
116+
#event {IAC SB GMCP GMCP.Message IAC SE} {gmcp.pkuxkx.OnMessage {%%1} {%%2}};
109117

110118
tune gmcp status on;
111119
tune gmcp move on;
@@ -114,6 +122,17 @@ event.Define {GMCP.Message} {无参} {$MODULE} {接收到 GMCP 聊天信息,
114122
tune gmcp message on;
115123
};
116124

125+
#alias {gmcp.pkuxkx.OnGMCP} {
126+
mudLog GMCP: {%1} {%2};
127+
128+
#if { @option.IsEnable{GMCPDebug} } {
129+
#line sub escapes #var gGMCP[Unknown] {%2};
130+
warnLog 接收到未知的 GMCP 消息:%1,请联系开发者。以下为消息内容:;
131+
#var gGMCP[Unknown];
132+
#unvar gGMCP[Unknown];
133+
};
134+
};
135+
117136
#alias {gmcp.pkuxkx.OnStatus} {
118137
mudLog GMCP.Status: {%2};
119138

0 commit comments

Comments
 (0)