严重问题: show_hudmessage使用中文%L服就会挂!
我使用了语言文件, show_hudmessage中如果使用英文%L就正常,没有任何问题.而如果使用中文%L,一显示字幕服就马上挂掉,debug日志也没有任何记录,这是为什么?怎么解决?
回复: 严重问题: show_hudmessage使用中文%L服就会挂!
看看你的中文字串是否过长。。回复: 严重问题: show_hudmessage使用中文%L服就会挂!
把你那个代码发上来看看问题出现在哪了。如果代码比较长,请用附件形式,要不很难看懂的。回复: 严重问题: show_hudmessage使用中文%L服就会挂!
public showwinner(id,level,cid){
if ( !cmd_access(id,level,cid,2) )
return PLUGIN_HANDLED
cplayer = ""
remove_task(8138469)
new arg1
read_argv(1,arg1,31)
new player = cmd_target(id,arg1,2)
if (!player) return PLUGIN_HANDLED
get_user_name(player,cplayer,31)
set_hudmessage( 255, 255, 255, -1.0, 0.42, 0, 0.0, 20.0, 0.0, 0.5, 8 )
format( hud_text, 255, "%L %s",LANG_SERVER,"HUD_WINNER",cplayer)
show_hudmessage( 0, hud_text )
return PLUGIN_HANDLED
}
语言文件我只要用中文,无论长短就会挂掉。
我服务器默认是中文语言,语言文件中我也只写了中文语言。
回复: 严重问题: show_hudmessage使用中文%L服就会挂!
是不是格式不对啊......回复: 严重问题: show_hudmessage使用中文%L服就会挂!
public showwinner(id,level,cid){
if ( !cmd_access(id,level,cid,2) )
return PLUGIN_HANDLED
new cplayer
remove_task(8138469)
new arg1
read_argv(1,arg1,31)
new player = cmd_target(id,arg1,2)
if (!player) return PLUGIN_HANDLED
get_user_name(player,cplayer,31)
set_hudmessage( 255, 255, 255, -1.0, 0.42, 0, 0.0, 20.0, 0.0, 0.5, 4 )
new hud_text
format( hud_text, 255, "%L %s",LANG_SERVER,"HUD_WINNER",cplayer)
show_hudmessage( 0, hud_text )
return PLUGIN_HANDLED
}
一、不知道你相关变量有没有定义,在这里我都加上了。
二、set_hudmessage 最后一个参数只能是 -1,1,2,3,4 中的一个。
三、在LANG文件里,HUD_WINNER 中不能再有 %s 之类的内容。
页:
[1]