请各位帮忙插件问题

Home Home
引用 | 编辑 不想再想名字
2014-05-12 11:31
楼主
推文 x0
请问有没有方法可以equal中文字?

试过用下面这个, 也用了UTF-8保存, 好像没有效果

复制程式
new const name[] = "你好吗";

if(equal(name, "你好吗"))
{
xxxxxxxxxxxx
}


献花 x0
引用 | 编辑 弑血
2014-05-12 13:54
1楼
  
下面是引用 不想再想名字 于 2014-05-12 11:31 发表的 请各位帮忙插件问题: 到引言文
请问有没有方法可以equal中文字?

试过用下面这个, 也用了UTF-8保存, 好像没有效果

复制程式
new const name[] = "你好吗";

if(equal(name, "你好吗"))
{
xxxxxxxxxxxx
}



你是要取得相对应玩家名称来触发事件吗


可以使用


new iname[32];
get_user_name(id, iname, charsmax(iname));


if (equal(iname, "xxx")) /xxx 你想要的玩家称昵..
{
        xxxxxxx //执行的动作.
}


如果判断事件无法触发,可能要放在玩家思考内,最好用开关判定

献花 x0
引用 | 编辑 弑血
2014-05-12 13:56
2楼
  
下面是引用 s8720419 于 2014-05-12 13:54 发表的 : 到引言文
多发一篇..抱歉


献花 x0
引用 | 编辑 不想再想名字
2014-05-12 14:35
3楼
  
下面是引用 s8720419 于 2014-05-12 13:54 发表的 : 到引言文




你是要取得相对应玩家名称来触发事件吗


可以使用


new iname[32];
get_user_name(id, iname, charsmax(iname));


if (equal(iname, "xxx")) /xxx 你想要的玩家称昵..
{
        xxxxxxx //执行的动作.
}


如果判断事件无法触发,可能要放在玩家思考内,最好用开关判定

感谢你的回答,

但其实我想试一下能不能用equal来对应中文字

因为我用了write_file保存资料
在read_file时会获得中文字并进行equal(file的中文字, sma的变数)

但好像都是return false

献花 x0
引用 | 编辑 弑血
2014-05-12 16:32
4楼
  
下面是引用 不想再想名字 于 2014-05-12 14:35 发表的 : 到引言文


感谢你的回答,

但其实我想试一下能不能用equal来对应中文字

因为我用了write_file保存资料
在read_file时会获得中文字并进行equal(file的中文字, sma的变数)

但好像都是return false



有可能是资料字串equal没有对应到相同的


另外 检查一下 插件 有没有 bad load

献花 x0
引用 | 编辑 不想再想名字
2014-05-12 17:21
5楼
  
下面是引用 s8720419 于 2014-05-12 16:32 发表的 : 到引言文




有可能是资料字串equal没有对应到相同的


另外 检查一下 插件 有没有 bad load

曾经试过用client_print显示两边的信息
两边也一样

也没有bad load

献花 x0
引用 | 编辑 弑血
2014-05-12 17:27
6楼
  
下面是引用 不想再想名字 于 2014-05-12 17:21 发表的 : 到引言文


曾经试过用client_print显示两边的信息
两边也一样

也没有bad load



如果想解决问题的话.


看你要私自跟我研究问题


还是 要 贴出内容 加密的方式.//看个人 因为 现在 一堆人 会乱copy


还是 要等高手 解决 也是可以

献花 x0
引用 | 编辑 不想再想名字
2014-05-12 17:56
7楼
  
下面是引用 s8720419 于 2014-05-12 17:27 发表的 : 到引言文




如果想解决问题的话.


看你要私自跟我研究问题


还是 要 贴出内容 加密的方式.//看个人 因为 现在 一堆人 会乱copy


还是 要等高手 解决 也是可以

复制程式
#include <amxmodx>

new const player_data[][] = {
    "等级", "经验"
};
new const file[] = { "addons/amxmodx/configs/test/test.ini" };

public plugin_init() {
    register_plugin("Testing", "1.0", "Test");

    register_clcmd("say /t", "test");
}

public test(id) {
    new left[32], text[64], line, txtlen;
    
    while(read_file(file, line++, text, charsmax(text), txtlen)) {
        strtok(text, left, charsmax(left), text, charsmax(text), ' ');
        
        for(new t = 0; t < sizeof(player_data); t++) {
            client_print(id, print_chat, "|%s|%s|", left, player_data[t]);
            
            if(equal(left, player_data[t])) {
                client_print(id, print_chat, "Work");
                break;
            }
        }
    }
}


献花 x0