RU
RU
UA
EN
PL
ГЛАВНАЯ
УСЛУГИ
ПЛАГИНЫ
КАРТЫ
REBUY
SCANMON
CASSA
SALE
ФОРУМ
МОНИТОР
HELP
КОНТАКТ
Главная
/
Plugins
/
Выписать бан кувалдой
Плагин не прошел проверку:
модели нету
Создайте новую запись с устранением ошибок
Выписать бан кувалдой
Теги:
Скачать плагины cs
Админские
Теперь бан можно прописать кувалдой
AMX-MOLOT-BAN новый метод отправить 4итера в бан, ударив его вот такой бандуриной, МОЛОТОМ. Выглядит очень эффектно, и поучительно!
Компилятор: 1.8.2
931
Команды:
amx_banhammer (нужен флаг ADMIN_BAN)
hammer_bantime (по умолчанию: 15) - время бана
hammer_check - показать меню забанить или нет после удара молотом?
hammer_noclip - Дать noclip когда есть banhammer?
hammer_godmode - Дать режим бога когда есть banhammer?
hammer_speed (по умолчанию: значение sv_maxspeed) - скорость бега админа с Молотом
.sma / .sp
/* AMXX Banhammer by Mati (initial release). Usage: amx_banhammer Available options (CVARS): hammer_bantime
(Default: 15) - Duration of the victims ban in minutes hammer_check <0/1> Default: 0 - Displays a verification menu after someone gets hit with the banhammer. The victim is freezed during that time. hammer_noclip <0/1> Default: 0 - Activates noclip when beeing equipped with the banhammer hammer_godmode <0/1> Default: 1 - Activates godmode when beeing equipped with the banhammer hammer_speed
Default: Value of sv_maxspeed - Defines the players speed when beeing equipped with the banhammer hammer_delay
Default: 0.0 - Adds a delay in between the hammer attacks. Will have no effect if <0.4. Might cause faulty animations. hammer_explosiondelay
Default: 0.15 - Delay between the hammerhit and the explosion/ban */ #include
#include
#include
#include
#include
#include
new h_noclip, h_speed, h_godmode, h_check, h_delay, h_bantime, h_edelay; new explosion, smoke, mdl_gib_flesh, mdl_gib_meat, mdl_gib_head, mdl_gib_legbone, mdl_gib_spine, mdl_gib_lung; new bool:g_hasHammer[33]; new bool:g_blocked[33]; new g_pid; public plugin_init() { register_plugin("AMXX Banhammer", "1.0", "Mati"); register_clcmd("amx_banhammer", "HandleBanhammer", ADMIN_BAN); // CVARS new maxspeed[5]; get_cvar_string("sv_maxspeed", maxspeed, 4); h_speed = register_cvar("hammer_speed", maxspeed); h_noclip = register_cvar("hammer_noclip", "0"); h_godmode = register_cvar("hammer_godmode", "1"); h_check = register_cvar("hammer_check", "0"); h_delay = register_cvar("hammer_delay", "0.0"); h_bantime = register_cvar("hammer_bantime", "15"); h_edelay = register_cvar("hammer_explosiondelay", "0.1"); register_event("CurWeapon","CurWeapon","be","1=1"); register_forward(FM_EmitSound, "HandleSound"); RegisterHam(Ham_Weapon_PrimaryAttack, "weapon_knife", "KnifeAttack"); RegisterHam(Ham_Weapon_SecondaryAttack, "weapon_knife", "KnifeAttack"); RegisterHam(Ham_Touch,"weaponbox","touch_weapon"); RegisterHam(Ham_TraceAttack, "player", "TraceAttack"); RegisterHam(Ham_Spawn, "player", "PlayerSpawnPost", 1); } public plugin_precache() { precache_model("models/v_knife.mdl"); precache_model("models/p_knife.mdl"); precache_model("models/banhammer/p_hammer.mdl"); precache_model("models/banhammer/v_hammer.mdl"); precache_sound("banhammer/hitwall.wav"); precache_sound("banhammer/banhammer.wav"); precache_sound("banhammer/hitplayer.wav"); explosion = precache_model("sprites/bexplo.spr"); smoke = precache_model("sprites/steam1.spr"); mdl_gib_flesh = precache_model("models/Fleshgibs.mdl"); mdl_gib_meat = precache_model("models/GIB_B_Gib.mdl"); mdl_gib_head = precache_model("models/GIB_Skull.mdl"); mdl_gib_legbone = precache_model("models/GIB_Legbone.mdl"); mdl_gib_spine = precache_model("models/GIB_B_Bone.mdl"); mdl_gib_lung = precache_model("models/GIB_Lung.mdl"); } public HandleSound(entity, channel, const sound[]) { if (entity > 0 && entity < 33 && g_hasHammer[entity]) { if (equal(sound, "weapons/knife_hitwall1.wav")) { emit_sound(entity, CHAN_WEAPON, "banhammer/hitwall.wav", 1.0, ATTN_NORM, 0, PITCH_NORM); return FMRES_SUPERCEDE; } else if (equal(sound, "weapons/knife_hit", 17) || equal(sound, "weapons/knife_stab.wav")) { emit_sound(entity, CHAN_WEAPON, "banhammer/hitplayer.wav", 1.0, ATTN_NORM, 0, PITCH_NORM); return FMRES_SUPERCEDE; } else if (equal(sound, "weapons/knife_deploy1.wav")) { return FMRES_SUPERCEDE; } } return FMRES_IGNORED; } public HandleBanhammer(id, level, cid) { if (!cmd_access(id, level, cid, 1)) return PLUGIN_HANDLED; if (is_user_alive(id) && !g_hasHammer[id]) { g_hasHammer[id] = true; if (get_user_weapon(id) != CSW_KNIFE) { engclient_cmd(id, "weapon_knife"); set_task(0.1, "ActionBanhammer", id); return PLUGIN_HANDLED; } else { ActionBanhammer(id); } } else { entity_set_string(id, EV_SZ_viewmodel, "models/v_knife.mdl"); entity_set_string(id, EV_SZ_weaponmodel, "models/p_knife.mdl"); RemoveAbilities(id); } return PLUGIN_HANDLED; } public ActionBanhammer(id) { entity_set_string(id, EV_SZ_viewmodel, "models/banhammer/v_hammer.mdl"); entity_set_string(id, EV_SZ_weaponmodel, "models/banhammer/p_hammer.mdl"); client_cmd(0, "spk ^"banhammer/banhammer^""); if (get_pcvar_num(h_noclip)) set_user_noclip(id, 1); if (get_pcvar_num(h_godmode)) set_user_godmode(id, 1); set_user_maxspeed(id, get_pcvar_float(h_speed)); g_hasHammer[id] = true; } public touch_weapon(ent, id) { if (id > 0 && id < 33 && g_hasHammer[id]) return HAM_SUPERCEDE; return HAM_IGNORED; } public CurWeapon(id) { if (g_hasHammer[id]) RemoveAbilities(id); } public RemoveAbilities(id) { if (get_pcvar_num(h_noclip)) { set_user_noclip(id); set_user_gravity(id, 0.25); set_task(3.0, "RemoveGrav", id); } if (get_pcvar_num(h_godmode)) set_user_godmode(id); set_user_maxspeed(id, 230.0); g_hasHammer[id] = false; } public RemoveGrav(id) { set_user_gravity(id); } public KnifeAttack(id) { new pid = entity_get_edict(id, EV_ENT_owner); if (g_hasHammer[pid] && get_pcvar_float(h_delay) > 0.39) { if (!g_blocked[pid]) { g_blocked[pid] = true; set_task(get_pcvar_float(h_delay), "RemoveBlock", pid); return PLUGIN_CONTINUE; } return HAM_SUPERCEDE; } return HAM_IGNORED; } public RemoveBlock(id) { g_blocked[id] = false; } public PlayerSpawnPost(id) { if (g_hasHammer[id] && is_user_alive(id)) { entity_set_string(id, EV_SZ_viewmodel, "models/v_knife.mdl"); entity_set_string(id, EV_SZ_weaponmodel, "models/p_knife.mdl"); RemoveAbilities(id); } } public TraceAttack(id, attacker) { if (g_hasHammer[attacker]) { g_pid=id; entity_set_int(id, EV_INT_flags, entity_get_int(id, EV_INT_flags) | FL_FROZEN); if (get_pcvar_num(h_check)) { new title[48], name[32]; get_user_name(id, name, 31); formatex(title, 47, "Ban %s?", name); new menu = menu_create(title, "CheckBan"); menu_additem(menu, "Yes", "1"); menu_additem(menu, "No", "2"); menu_setprop(menu, MPROP_EXIT, MEXIT_ALL); menu_display(attacker, menu, 0); } else { hammer_hit(id); } return HAM_SUPERCEDE; } return HAM_IGNORED; } public CheckBan(id, menu, item) { if(item == MENU_EXIT || item == MENU_KEY_1) { menu_destroy(menu); entity_set_int(g_pid, EV_INT_flags, entity_get_int(id, EV_INT_flags) & ~FL_FROZEN); } else { hammer_hit(g_pid); } } public hammer_hit(id) { new origin[3]; get_user_origin(id, origin); new Float:delaytime = get_pcvar_float(h_edelay); if (delaytime < 0.1) { set_task(0.1, "fx_explode", _, origin, 3); } else { set_task(delaytime, "fx_explode", _, origin, 3); } } public fx_explode(origin[3]) { new flesh[3]; flesh[0] = mdl_gib_flesh; flesh[1] = mdl_gib_meat; flesh[2] = mdl_gib_legbone; // Explosion FX message_begin(MSG_BROADCAST, SVC_TEMPENTITY) write_byte(TE_EXPLOSION) write_coord(origin[0]) write_coord(origin[1]) write_coord(origin[2]) write_short(explosion) // sprite index write_byte(50) // scale in 0.1's write_byte(10) // framerate write_byte(0) // flags message_end() // Smoke message_begin(MSG_BROADCAST, SVC_TEMPENTITY) write_byte(5) write_coord(origin[0]) write_coord(origin[1]) write_coord(origin[2]) write_short(smoke) write_byte(20) write_byte(10) message_end() // Gib explosion // Head message_begin(MSG_BROADCAST,SVC_TEMPENTITY) write_byte(TE_MODEL) write_coord(origin[0]) write_coord(origin[1]) write_coord(origin[2]) write_coord(random_num(-50,50)) write_coord(random_num(-50,50)) write_coord(random_num(100,200)) write_angle(random_num(0,360)) write_short(mdl_gib_head) write_byte(0) // bounce write_byte(500) // life message_end() // Spine message_begin(MSG_BROADCAST,SVC_TEMPENTITY) write_byte(TE_MODEL) write_coord(origin[0]) write_coord(origin[1]) write_coord(origin[2]) write_coord(random_num(-50,50)) write_coord(random_num(-50,50)) write_coord(random_num(100,200)) write_angle(random_num(0,360)) write_short(mdl_gib_spine) write_byte(0) // bounce write_byte(500) // life message_end() // Lung for(new i = 0; i < random_num(1,2); i++) { message_begin(MSG_BROADCAST,SVC_TEMPENTITY) write_byte(TE_MODEL) write_coord(origin[0]) write_coord(origin[1]) write_coord(origin[2]) write_coord(random_num(-50,50)) write_coord(random_num(-50,50)) write_coord(random_num(100,200)) write_angle(random_num(0,360)) write_short(mdl_gib_lung) write_byte(0) // bounce write_byte(500) // life message_end() } // Parts, 5 times for(new i = 0; i < 5; i++) { message_begin(MSG_BROADCAST,SVC_TEMPENTITY) write_byte(TE_MODEL) write_coord(origin[0]) write_coord(origin[1]) write_coord(origin[2]) write_coord(random_num(-50,50)) write_coord(random_num(-50,50)) write_coord(random_num(100,200)) write_angle(random_num(0,360)) write_short(flesh[random_num(0,2)]) write_byte(0) // bounce write_byte(500) // life message_end() } // Blood on world decal for (new i=0; i < 10; i++) { message_begin(MSG_BROADCAST,SVC_TEMPENTITY) write_byte(TE_WORLDDECAL) write_coord(origin[0]+random_num(-40,40)) write_coord(origin[1]+random_num(-40,40)) write_coord(origin[2]-36) write_byte(random_num(190, 197)) // index message_end(); } new name[32], bantime = get_pcvar_num(h_bantime); server_cmd("banid %d #%d kick;wait;writeid", bantime, get_user_userid(g_pid)); get_user_name(g_pid, name, 31); client_print(0, print_chat, "%s got banned for %d minutes after getting hit by the BANHAMMER.", name, bantime); /* Alternative methods are available. new authid[32]; get_user_authid(id, authid, 31); get_user_name(id, name, 31); client_cmd(g_aid, "amx_addban ^"%s^" ^"%s^" %d ^"Hit by Banhammer^"", name, authid, get_pcvar_num(h_bantime)); server_cmd("kick #%d", get_user_userid(id));*/ } /* This function was originally supposed as an additional method to switch back to knife when slot3 or similar was getting pressed. I removed that again because that is getting called when amx_banhammer is executed as well. There's still the possible to switch back to knife by pressing other slots/lastinv/amx_banhammer etc. public client_command(id) { new args[4]; read_args(args, 3); if (strlen(args) < 1) { entity_set_string(id, EV_SZ_viewmodel, "models/v_knife.mdl"); entity_set_string(id, EV_SZ_weaponmodel, "models/p_knife.mdl"); RemoveAbilities(id); } }*/
Отправить
Загрузил
dvoenkin23gfg
2019-01-08 18:58:27
0
20
Установить на сервер
Скачать
Нет оплаченых серверов
Купить сервер CS 1.6
Купить сервер CS:GO
Купить сервер CSS v34
Подключить свой VDS к панели
Данная иконка означает, что плагин был проверен администрацией хостинга на тестовом сервере, и проблем с ним не было выявлено. Рекомендуем ставить исключительно проверенные плагины.
Плагин загружен на сервер, но проверка еще не была проведена.
CSHOST.COM.UA 2012-2025 Хостинг игровых серверов