hzhz020262 发表于 2011-5-19 13:15:59

哪位会修改这个中文ID插件

哪位会修改这个中文ID插件,加回个老友记1.0版的禁止改名功能进去new const PLUGINNAME[] = "中文ID"

new const VERSION[]    = "2.1"

new const AUTHORS[]    = "poohoo @ 老友记"



#include <amxmodx>

#include <amxmisc>

#include <fakemeta>





new g_SetName

new g_SetAllow

new FILE



public plugin_init()

{

   register_plugin(PLUGINNAME, VERSION, AUTHORS)



   new configsdir

   get_configsdir(configsdir, sizeof(configsdir)-1)

   formatex(FILE, sizeof(FILE)-1, "%s/chinese_id.ini", configsdir)



   if (!file_exists(FILE))

      set_fail_state("File (configs/chinese_id.ini) open error.")

}







// 设置 id 需要的名字

public set_name(id, const newname[])

{

   if (strlen(newname)<1)

      return



   g_SetAllow = 1

   copy(g_SetName, 31, newname)

   //one_name(id, g_SetName, 31)

   set_user_info(id, "name", g_SetName)

}



public client_connect(id)

{

   remove_task(id)

   g_SetAllow = 0

}



public client_putinserver(id)

{

   // 延时足够的时间,等待 admin 权限认证插件完成权限设置后,再执行更换名字

   set_task(random_float(3.0,3.0), "get_name_from_file", id)

}



// 从文件里检查是否有对应的中文ID

public get_name_from_file(id)

{

   if (!is_user_connected(id))

      return

   

   new name

   get_user_name(id, name, 31)



   new set = 0

   new hFile = fopen(FILE, "r")

   if (hFile)

   {

      new line, tmpName, tmpNameCN



      while (fgets(hFile, line, sizeof(line)-1))

      {

         tmpName = ""

         tmpNameCN = ""

         trim(line)

         if (line==';' || line=='/') continue



         parse(line, tmpName,sizeof(tmpName)-1, tmpNameCN,sizeof(tmpNameCN)-1)

         trim(tmpName)

         trim(tmpNameCN)



         if (strcmp(name, tmpName)==0)

         {

            copy(name, 31, tmpNameCN)

            set = 1

            break

         }

      }

   }

   fclose(hFile)



   // 完成后,设置新的名字

   if (set)

      set_name(id, name)
}

11210 发表于 2015-6-3 16:55:28

歉,搜索 点通币-1,本操作后您的点通币将不足 0
页: [1]
查看完整版本: 哪位会修改这个中文ID插件