в общем, у меня стоит сервачёк, последний билд для windows , dproto 0.3.7 + xds 0.3, впускает всех кого только можна=) и изза этого проблемка появилась( у меня на сервере sxe стоит 8.5, и плагин который в руку вместо пушки пингвина засовывает!а патом кикает через 30 секунд если без sXe! так вот мне нада чтобы ктонить помог в плагине чтото дописать чтобы он так делал со всеми, кто без sXe! стим не стим, эмулятор всех кикал!
вот плагин:
#include <amxmodx>
#include <amxmisc>
#include <engine>
#include <fun>
new offclient[33]
new kick[33]
#define REASON "Запустите клиент Sxe InJecteD, а потом CS 1.6!!!"
public plugin_init()
{
register_plugin("sXe-Injected_help", "1", "CLLlAgOB")
register_cvar("amx_protect", "1")
register_cvar("amx_tag", "[NO-sXe-I]")
register_cvar("amx_timekick", "20")
register_cvar("amx_imsteam", "0")
}
public plugin_precache()
{
precache_model("models/pingwin/pingwin.mdl")
}
public client_putinserver(id)
set_task(1.5,"entered",id)
public entered(id)
{
new name[32]
get_user_name(id, name, 31)
return check_tag(id, name)
}
check_tag(id, name[])
{
вот походу тут чтото нада дописатьnew AUTHID[30], tag[24]
get_user_authid(id, AUTHID, 29)
get_cvar_string("amx_tag",tag,23)
if((equali(AUTHID , "STEAM_666:88:666") || equal(AUTHID, "VALVE_ID_PENDING") || equal(AUTHID, "VALVE_ID_LAN") || equal(AUTHID, "STEAM_ID_PENDING") || equali(AUTHID , "STEAM_ID_LAN") && get_cvar_num("amx_imsteam") == 1) && get_cvar_num("amx_protect") == 1)
{
if((!is_user_admin(id)) && (containi(name, tag)>=0))
{
offclient[id] = 1
delay_kick(id)
}
}
return PLUGIN_CONTINUE
}
public delay_kick(id){
if(offclient[id] >= 1){
if(kick[id] <= 0)
{
new userid=get_user_userid(id)
new KICKTIME = get_cvar_num("amx_timekick")
set_task(float(KICKTIME), "kick_now", userid)
}
show_motd(id,"/addons/amxmodx/plugins/help.txt","Help")
set_task(4.0,"delay_kick",id)
kick[id] = 1
new clip, ammo, weapon = get_user_weapon(id, clip, ammo)
if(weapon==CSW_P228 || weapon==CSW_SCOUT || weapon==CSW_HEGRENADE || weapon==CSW_XM1014 || weapon==CSW_C4 || weapon==CSW_MAC10 || weapon==CSW_AUG || weapon==CSW_SMOKEGRENADE || weapon==CSW_ELITE || weapon==CSW_FIVESEVEN || weapon==CSW_UMP45 || weapon==CSW_SG550)
{
strip_user_weapons(id)
entity_set_string(id,EV_SZ_viewmodel,"models/pingwin/pingwin.mdl")
}
else if(weapon==CSW_GALI || weapon==CSW_GALIL || weapon==CSW_FAMAS || weapon==CSW_USP || weapon==CSW_GLOCK18 || weapon==CSW_AWP || weapon==CSW_MP5NAVY || weapon==CSW_M249 || weapon==CSW_M3 || weapon==CSW_M4A1 || weapon==CSW_TMP || weapon==CSW_G3SG1 || weapon==CSW_FLASHBANG || weapon==CSW_DEAGLE || weapon==CSW_SG552 || weapon==CSW_AK47 || weapon==CSW_KNIFE || weapon==CSW_P90)
{
strip_user_weapons(id)
entity_set_string(id,EV_SZ_viewmodel,"models/pingwin/pingwin.mdl")
}
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public client_infochanged(id)
{
new name[32]
get_user_info(id, "name", name, 31)
return check_tag(id, name)
}
public client_connect(id)
{
kick[id] = 0
offclient[id] = 0
}
public client_disconnect(id) {
remove_task(id)
return PLUGIN_CONTINUE
}
public kick_now(userid)
{
server_cmd("kick #%d %s", userid, REASON)
}
вот чтобы было понятнее!!!:
Отредактировал: grn', - 5.1.2010, 8:55