y543685085 发表于 2008-2-6 16:39:09

此代码怎么增加?

#include <amxmodx>
#include <amxmisc>
public plugin_init()
{
register_plugin("duoKick", "1.0", "A.mi");
register_event("DeathMsg","eDeathMsg","a");
}
public eDeathMsg()
{
new killer = read_data(1);
new victim = read_data(2);
if(is_user_connected(killer))
{
if(get_user_frags(killer)-get_user_deaths(killer)>=20)
{
   new pname
   get_user_name(killer, pname, 31)
   if (contain(pname, "") != -1)
   server_cmd( "kick #%d ^"你没开sXe反作弊器,被服务器自动T出^"", get_user_userid(killer));
}
}

if(is_user_connected(victim))
{
if(get_user_frags(victim)-get_user_deaths(victim)>=20)
{
   new pname
   get_user_name( victim, pname, 31)
   if (contain(pname, "") != -1)
   server_cmd( "kick #%d ^"你没开sXe反作弊器,被服务器自动T出^"", get_user_userid(victim));
}
}
return PLUGIN_CONTINUE
}



此代码是看到论坛上有人发的没开SXE的玩家杀人数达到20自动KICK

只要小小的改动就可以让此插件完美了

杀人数量可以在amxx.cfg 里面自由设置 每次都要用SMA改的话 很麻烦的

希望点通高手帮忙 小弟先谢谢了

Rulzy 发表于 2008-2-7 11:26:39

回复: 此代码怎么增加?

#include <amxmodx>
#include <amxmisc>
public plugin_init()
{
register_plugin("duoKick", "1.0", "A.mi");
register_event("DeathMsg","eDeathMsg","a");
register_cvar("nosxe_kickcount", "20");
}
public eDeathMsg()
{
new count = get_cvar_num("nosxe_kickcount");
new killer = read_data(1);
new victim = read_data(2);
if(is_user_connected(killer))
{
if(get_user_frags(killer)-get_user_deaths(killer)>=count)
{
   new pname
   get_user_name(killer, pname, 31)
   if (contain(pname, "") != -1)
   server_cmd( "kick #%d ^"你没开sXe反作弊器,被服务器自动T出^"", get_user_userid(killer));
}
}

if(is_user_connected(victim))
{
if(get_user_frags(victim)-get_user_deaths(victim)>=count)
{
   new pname
   get_user_name( victim, pname, 31)
   if (contain(pname, "") != -1)
   server_cmd( "kick #%d ^"你没开sXe反作弊器,被服务器自动T出^"", get_user_userid(victim));
}
}
return PLUGIN_CONTINUE
}

y543685085 发表于 2008-2-7 12:17:10

回复: 此代码怎么增加?

在AMXX里设置
nosxe_kickcount "数量"
是么?

Rulzy 发表于 2008-2-7 14:20:57

回复: 此代码怎么增加?

是的,相当于代替原来固定的20个人。

y543685085 发表于 2008-2-7 14:31:54

回复: 此代码怎么增加?

谢谢 EULZY大哥`

y543685085 发表于 2008-2-8 14:22:22

回复: 此代码怎么增加?

Rulzy大哥 完了完了
错误.....我2个人测试的时候 插件是可以用
但是人多了我试了下 20人以上的时候 插件就无效了 求解

Rulzy 发表于 2008-2-8 14:38:01

回复: 此代码怎么增加?

这个并不是杀人数达到20就踢,而是杀人数减死亡数达到20就踢。

野兽家族 发表于 2008-2-8 14:48:24

回复: 此代码怎么增加?

好象不怎么好用吧
直接不开SXE就K不就得了嘛

y543685085 发表于 2008-2-8 16:51:59

回复: 此代码怎么增加?

Post by Rulzy
这个并不是杀人数达到20就踢,而是杀人数减死亡数达到20就踢。

如果要我改成杀人数达到20就KICK 是不是应该这样写?


#include <amxmodx>
#include <amxmisc>
public plugin_init()
{
register_plugin("duoKick", "1.0", "A.mi");
register_event("DeathMsg","eDeathMsg","a");
register_cvar("nosxe_kickcount", "20");
}
public eDeathMsg()
{
new count = get_cvar_num("nosxe_kickcount");
new killer = read_data(1);
new victim = read_data(2);
if(is_user_connected(killer))
{
if(get_user_frags(killer)-get_user_deaths(killer)>=count)
{
   new pname
   get_user_name(killer, pname, 31)
   if (contain(pname, "") != -1)
   server_cmd( "kick #%d ^"你没开sXe反作弊器,被服务器自动T出^"", get_user_userid(killer));
}
}

if(is_user_connected(victim))
{
if(get_user_frags(victim)-get_user_deaths(victim)>=count)
{
   new pname
   get_user_name( victim, pname, 31)
   if (contain(pname, "") != -1)
   server_cmd( "kick #%d ^"你没开sXe反作弊器,被服务器自动T出^"", get_user_userid(victim));
}
}
return PLUGIN_CONTINUE
}


把上面的
if(get_user_frags(victim)-get_user_deaths(victim)>=count)

改成

if(get_user_frags(victim)>=count)


是不是这样 ?

Rulzy 发表于 2008-2-8 19:13:17

回复: 此代码怎么增加?

是的,没错。   .
页: [1] 2
查看完整版本: 此代码怎么增加?