danfeng 发表于 2010-3-4 13:32:06

成功了!原因是界面汉化的问题,改成英文的就好了。
另外这个昏迷不醒是在第二行显示的,能否让再在第一行末显示呢?

danfeng 发表于 2010-3-4 13:36:03

我知道怎么回事了,这个<昏迷不醒>是后加上去的,原来的那个已经没了。

ddid 发表于 2010-3-4 13:42:14

把ColourNote()换成ColourTell()可以减少一个空行,但在原位显示,好像还做不到。

purbam 发表于 2010-3-4 15:05:41

用汉化版的把MXP element: 中的"element"改成"元素"就行了

purbam 发表于 2010-3-4 22:06:14

请教一下,好像所有调用这个函数的地方(包括fullme的时候)传进来的参数message都是MXP element: <xx>,是这样吗?
所以用perl改写的时候,我没用base64decode,直接用正则替换了一下(就是把MXP element: 去掉),似乎也可以,这样应该没什么问题吧

sub On_MXP_Error {
my ($level, $error_number, $line_number, $message) = @_;
if (($level eq "A") && ($error_number == 20000) && ($message =~ /^\s*MXP\s+.*?\s+(<.*?>)/)) {
    $message = "    $1";
    $world->ColourTell ("red", "black", $message);
}
}

ddid 发表于 2010-3-6 20:16:33

这里用utils.base64decode()可以只显示<>中的中文内容,如果<>中是英文的内容,则不被显示。(一般<>中的英文内容为MXP标记)
页: 1 [2]
查看完整版本: [MUSHClient]小技巧:解决开启MXP后,<昏迷不醒>自动消失的问题。