Plugin Cerut:WWa kill adv
Descriere (adica ce face el mai exact):Indica atunci cand un jucator il mierleste pe altul prin perete , in apa sau in aer.
Serverul impune conditii strict HLDS/REHLDS?:Nu
Ai cautat pluginul?(daca da, precizeaza cum):https://forums.alliedmods.net/showthread.php?t=56357
Necesita mod special?:Nu
Configuratie server:
Problema pluginului: Nu apar nickname-urile jucatorilor implicati in actiune.
In loc de "Player 1 killed Player 2 trough wall" apare "killed trough wall"
Corectare wwa kill adv
Moderators: Moderatori ajutatori, Moderatori, Echipa eXtreamCS.com
Forum rules
Accesează link-ul pentru a putea vedea regulile forumului
Daca doriti sa vi se modifice un plugin, va rugam postati aici .
Accesează link-ul pentru a putea vedea regulile forumului
Daca doriti sa vi se modifice un plugin, va rugam postati aici .
- DaNNe.
- Fost moderator
- Posts: 2811
- Joined: 08 Nov 2013, 20:43
- Detinator Steam: Da
- CS Status: Activitate scăzută
- SteamID: /id/FurienMaster
- Reputatie: Nick anterior: DnD. Gold, Emrys
0.5/3
Fost moderator ajutator
Fost Membru Club eXtreamCS (doua luni) - Has thanked: 244 times
- Been thanked: 129 times
- Contact:
-
- Membru, skill 0
- Posts: 46
- Joined: 16 Sep 2021, 14:57
- Detinator Steam: Da
- CS Status: Citesc forumul eXtreamCS.com...!
- Detinator server CS: inchis
- Fond eXtream: 0
- Has thanked: 2 times
- Been thanked: 3 times
Nimic nu am gasit. daca era ceva scris prost aparea in amxx la logs cred ca e ceva incomplet in .sma nu neaparat gresit.
- levin
- Scripter eXtreamCS
- Posts: 3850
- Joined: 24 Aug 2011, 12:24
- Detinator Steam: Da
- CS Status: ♅
- Detinator server CS: ☯∴
- SteamID: 76561198063679589
- Reputatie: Scripter eXtreamCS
Nume anterior: Adryyy - Location: ҳ̸Ҳ̸ҳ
- Discord: devilclass
- Has thanked: 36 times
- Been thanked: 595 times
- Contact:
Code: Select all
#include <amxmodx>
#include <fakemeta>
#include <xs>
#define PLUGIN "WWA Kill Advanced"
#define VERSION "1.1"
#define AUTHOR "Alka"
new
bool:wall_kill[33],
bool:air_kill[33],
bool:water_kill[33],
toggle_plugin,
message_mode,
wall_cvar,
water_cvar,
air_cvar;
new killer_name[32], victim_name[32]
new wall_msg[2][] = {
"%s killed %s trough wall.",
"%s killed %s with his wallhack."
}
new water_msg[2][] = {
"%s was killed by %s while he was in the water. Distance:%.1fm",
"%s was killed by %s while he having a wash. Distance:%.1fm"
}
new air_msg[2][] = {
"%s killed %s while he was flying like a pigeon. Distance:%.1fm",
"%s killed %s while he was in air. Distance:%.1fm"
}
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR);
register_event("DeathMsg", "_death_msg", "a");
toggle_plugin = register_cvar("amx_showkillmsg","1");
wall_cvar = register_cvar("amx_wallmsg","1");
water_cvar = register_cvar("amx_watermsg","1");
air_cvar = register_cvar("amx_airmsg","1");
message_mode = register_cvar("amx_messagemode", "1"); // 1 - Hud 2 - Chat
}
public _death_msg()
{
if(!get_pcvar_num(toggle_plugin))
return;
new killer = read_data(1);
new victim = read_data(2);
new weapon[32];
read_data(4, weapon, sizeof weapon - 1);
new flag = pev(victim, pev_flags);
if(!is_user_connected(killer) || !is_user_connected(victim))
return;
if(killer == victim)
return;
if(equali(weapon, "grenade"))
return;
static killer_origin[3], victim_origin[3];
get_user_name(killer, killer_name, sizeof killer_name - 1);
get_user_name(victim, victim_name, sizeof victim_name - 1);
get_user_origin(killer, killer_origin);
get_user_origin(victim, victim_origin);
new units = get_distance(killer_origin, victim_origin)
new bool:is_visible = fm_is_ent_visible(killer, victim);
if(!is_visible && get_pcvar_num(wall_cvar))
{
wall_kill[victim] = true;
}
if(!(flag & FL_ONGROUND) && get_pcvar_num(air_cvar))
{
air_kill[victim] = true;
}
if((flag & FL_INWATER) && get_pcvar_num(water_cvar))
{
water_kill[victim] = true;
air_kill[victim] = false;
}
show_message(victim, killer, units);
}
public show_message(victim, killer, units)
{
if(wall_kill[victim])
{
switch(get_pcvar_num(message_mode))
{
case 1:
{
set_hudmessage(50,50,255, 0.28, 0.26, 1, 6.0, 3.0,_,_,-1);
show_hudmessage(0, wall_msg[random(sizeof wall_msg)], killer_name, victim_name, units_to_meters(units))
}
case 2:
{
client_print(0, print_chat, wall_msg[random(sizeof wall_msg)], killer_name, victim_name, units_to_meters(units))
}
default : {}
}
wall_kill[victim] = false;
}
else if(water_kill[victim])
{
switch(get_pcvar_num(message_mode))
{
case 1:
{
set_hudmessage(50,50,255, 0.28, 0.26, 1, 6.0, 3.0,_,_,-1);
show_hudmessage(0, water_msg[random(sizeof water_msg)], victim_name, killer_name, units_to_meters(units))
}
case 2:
{
client_print(0, print_chat, water_msg[random(sizeof water_msg)], victim_name, killer_name, units_to_meters(units))
}
default : {}
}
water_kill[victim] = false;
}
else if(air_kill[victim])
{
switch(get_pcvar_num(message_mode))
{
case 1:
{
set_hudmessage(50,50,255, 0.28, 0.26, 1, 6.0, 3.0,_,_,-1);
show_hudmessage(0, air_msg[random(sizeof air_msg)], killer_name, victim_name, units_to_meters(units))
}
case 2:
{
client_print(0, print_chat, air_msg[random(sizeof air_msg)], killer_name, victim_name, units_to_meters(units))
}
default : {}
}
air_kill[victim] = false;
}
}
stock bool:fm_is_ent_visible(index, entity, ignoremonsters = 0) {
new Float:start[3], Float:dest[3]
pev(index, pev_origin, start)
pev(index, pev_view_ofs, dest)
xs_vec_add(start, dest, start)
pev(entity, pev_origin, dest)
engfunc(EngFunc_TraceLine, start, dest, ignoremonsters, index, 0)
new Float:fraction
get_tr2(0, TR_flFraction, fraction)
if (fraction == 1.0 || get_tr2(0, TR_pHit) == entity)
return true
return false
}
stock Float:units_to_meters(num)
{
new Float:meter = num * 0.0254
return meter;
}
Nu îmi mai trimiteți PM pe forum! Nu merge să răspund
Pentru ajutor, faceți cerere bine detaliată, completând și respectând modelul corespunzător.
Nu-mi mai dați cereri doar pentru a mă avea în lista de prieteni.
Dacă te ajut, și mă ignori/etc > te adaug în „foe”.
Aveți grijă la cei ce încearcă să mă copieze sau să dea drept mine..Puteți lua legătura cu mine prin STEAM dacă aveți o problemă/nelămurire în acest caz! Cont de forum am doar aici.
În cazul în care utilizați ceva din ce am postat(ex: aici), e bine să fiți la curent cu modificările aduse și de aici, iar dacă sunt ceva probleme nu ezitați să luați legătura cu mine. Actualizarea unor coduri nu se vor afișa public, doar dacă se găsește ceva critic/urgent de remediat, unele fiind coduri vechi iar unele refăcute chiar recent dar private.
* Nume pe cs1.6: eVoLuTiOn \ Nume vechi: eVo
* Atelierul meu - post2819572.html#p2819572 (închis, click link ca să vedeți de ce)
Pentru ajutor, faceți cerere bine detaliată, completând și respectând modelul corespunzător.
Nu-mi mai dați cereri doar pentru a mă avea în lista de prieteni.
Dacă te ajut, și mă ignori/etc > te adaug în „foe”.
Aveți grijă la cei ce încearcă să mă copieze sau să dea drept mine..Puteți lua legătura cu mine prin STEAM dacă aveți o problemă/nelămurire în acest caz! Cont de forum am doar aici.
În cazul în care utilizați ceva din ce am postat(ex: aici), e bine să fiți la curent cu modificările aduse și de aici, iar dacă sunt ceva probleme nu ezitați să luați legătura cu mine. Actualizarea unor coduri nu se vor afișa public, doar dacă se găsește ceva critic/urgent de remediat, unele fiind coduri vechi iar unele refăcute chiar recent dar private.
* Nume pe cs1.6: eVoLuTiOn \ Nume vechi: eVo
* Atelierul meu - post2819572.html#p2819572 (închis, click link ca să vedeți de ce)