apocalyptic 发表于 2007-3-9 22:36:34

彩色信息莫名其妙失效还多出一个空格!

我已经按照Rulzy版主提示的使用彩色信息的方法进行编写,的确写出来了。
在好几个插件中都用了相同的方法去写,但是只有一个插件生效了,其他的都还是单色的信息。而且还会莫名其妙地在信息的开头多出一个空格来(请看附图),我高度怀疑这个空格就是导致错误的原因!可是我也不知道它是怎么弄出来的。
请问为什么会这样?如何解决?
顺便问问,如果使用client_print(0,print_center,"****")来在屏幕中上方显示信息,能显示为彩色信息吗?
请版主不吝赐教,谢谢!

补充:我已经按照Rulzy版主的提醒,msg内容中的一个字符就是^x04,而且后面也没有跟空格就直接是=H|C=游戏助手,代码如下:
format(msg, 511, "^x04=H|C=游戏助手:****")

apocalyptic 发表于 2007-3-9 23:04:23

回复: 彩色信息莫名其妙失效还多出一个空格!

现在已经大概明白了,这个空格是因为把^x04当成了空格,但是为什么会把^x04当成空格呢?

Rulzy 发表于 2007-3-10 02:39:16

回复: 彩色信息莫名其妙失效还多出一个空格!

有没有失误,把本来该使用前面定义的client_color,却使用了client_print?

apocalyptic 发表于 2007-3-10 08:30:37

回复: 彩色信息莫名其妙失效还多出一个空格!

我检查过了,没有发现拼写错误,都是client_color没错。那些显示错误的插件中的代码,其实都是从那个能正常显示的插件代码中复制-粘贴过来,修改的只有半角双引号中间的msg内容以及后面的变量而已。既然是复制-粘贴而来,那么应该不会有拼写错误的。

以下面的例子作说明,这个是可以正常显示的:

format(msg, 513, "^x04=H|C=游戏助手:^x01您给队友造成 ^x04%d^x01 点伤害!需支付赔偿金 ^x04$%d^x01 !",read_data(2),compensation)
client_color(Attacker,Attacker, msg)

但是这个就不能正常显示:

format(msg, 513, "^x04=H|C=游戏助手: ^x03%s^x01 成功放置炸弹!奖励 ^x04$%d^x01 !",name, get_cvar_num("hc_PlantBonus"))
client_color(0,0, msg)

我怀疑问题出在client_color的两个参数上面,在第二个例子中,第1个0表示这个信息向所有在线玩家发送,第2个0表示本msg并非发送到某个指定的玩家(错在这里吗?)。
菜鸟学飞,请版主赐教!

apocalyptic 发表于 2007-3-10 09:09:33

回复: 彩色信息莫名其妙失效还多出一个空格!

经过修复,果然是colorid的问题,应该把它改为某一个特定玩家的id。
另外2个问题:
在没有指定特定玩家的事件中,例如bomb_explode,如果还要使用彩色信息,应该怎么办?
如果想把彩色信息显示在中间偏上的地方(就是平时显示“炸弹被放置”信息的那个地方),应该怎么办?

PEnTiuMsK 发表于 2007-3-10 16:32:15

回复: 彩色信息莫名其妙失效还多出一个空格!

message_begin
message_end
好像 大概 可能 可以
建议看看这两个文件
message_stocks.inc
messages.inc

shinyrose 发表于 2007-3-10 16:39:29

回复: 彩色信息莫名其妙失效还多出一个空格!

我也搞得有点模糊,client_color1(0, id, msg)
这个id到底是表示什么意思?

PEnTiuMsK 发表于 2007-3-10 17:41:14

回复: 彩色信息莫名其妙失效还多出一个空格!

如果这个ID是个土匪那么^x03后面的颜色是红的
如果ID是个警察 就是蓝的
如果ID是个观察者那么就是灰色的

apocalyptic 发表于 2007-3-10 18:01:51

回复: 彩色信息莫名其妙失效还多出一个空格!

Post by shinyrose
我也搞得有点模糊,client_color1(0, id, msg)
这个id到底是表示什么意思?
大概是某个玩家的标识符,他所在的队伍将会使^x03后面的字符串呈现不同颜色。但这个id不能为0否则无法正常显示。

shinyrose 发表于 2007-3-10 18:55:20

回复: 彩色信息莫名其妙失效还多出一个空格!

Post by apocalyptic
大概是某个玩家的标识符,他所在的队伍将会使^x03后面的字符串呈现不同颜色。但这个id不能为0否则无法正常显示。
同意,设为0,我试过了,是默认颜色
页: [1]
查看完整版本: 彩色信息莫名其妙失效还多出一个空格!