Usta silip atmazmısın ya yukarda atmıstım sana kodunu ben simdi yanlıs bısey sılerım daha kotu olur xdColditz yazdı: Cum Ara 04, 2020 10:26 pm ks_stocks kütüphanesinin içinden dhudmessage ile alakalı her şeyi silin.
Derleme hatası
Moderatör: Moderatörler
-
Konu Sahibi
Derleme hatası
Link: | |
Linklerini gizle |
-
- Mesajlar: 2574
- Kayıt: Çrş Ağu 23, 2017 9:17 pm
Derleme hatası
Önceki attığımı da güncelledim, sorunsuz compile ediyor.
Kod: Tümünü seç
#define is_zero_vec(%1) (%1[0] == 0 && %1[1] == 0 && %1[2] == 0)
new Float:VEC_NULL[3] = {0.0, 0.0, 0.0};
stock copy_vector(Float:flVec1[], Float:flVec2[])
{
flVec2[0] = flVec1[0];
flVec2[1] = flVec1[1];
flVec2[2] = flVec1[2];
}
stock are_vectors_equal(Float:flVec1[], Float:flVec2[])
{
return (flVec1[0] == flVec2[0] && flVec1[1] == flVec2[1] && flVec1[2] == flVec2[2]) ? true : false;
}
stock get_player_position(id, Float:flOrigin[3], Float:flAngles[3], &Float:flGravity)
{
pev(id, pev_origin, flOrigin);
pev(id, pev_v_angle, flAngles);
pev(id, pev_gravity, flGravity);
}
stock get_player_origin(id, Float:flOrigin[3], Float:flAngles[3], &Float:flGravity, &Float:flFuser2)
{
pev(id, pev_origin, flOrigin);
pev(id, pev_v_angle, flAngles);
pev(id, pev_gravity, flGravity);
pev(id, pev_fuser2, flFuser2);
}
// for set_player_origin
new Float:VEC_DUCK_HULL_MIN[3] = {-16.0, -16.0, -18.0 };
new Float:VEC_DUCK_HULL_MAX[3] = { 16.0, 16.0, 32.0 };
new Float:VEC_DUCK_VIEW[3] = { 0.0, 0.0, 12.0 };
stock set_player_origin(id, Float:flOrigin[3], Float:flAngles[3], Float:flGravity, Float:flFuser2)
{
new iFlags = pev(id, pev_flags);
iFlags &= ~FL_BASEVELOCITY; // in case player was on conveyor
iFlags |= FL_DUCKING; // prevent stuck
set_pev(id, pev_flags, iFlags);
engfunc(EngFunc_SetSize, id, VEC_DUCK_HULL_MIN, VEC_DUCK_HULL_MAX); // prevent stuck
engfunc(EngFunc_SetOrigin, id, flOrigin);
set_pev(id, pev_view_ofs, VEC_DUCK_VIEW);
set_pev(id, pev_velocity, VEC_NULL); // reset speed
set_pev(id, pev_basevelocity, VEC_NULL); // reset speed
if(flGravity > 0.0)
set_pev(id, pev_gravity, flGravity);
set_pev(id, pev_fuser2, flFuser2);
if(!is_zero_vec(flAngles))
{
set_pev(id, pev_v_angle, VEC_NULL); // reset v_angle so it will match angles
set_pev(id, pev_angles, flAngles); // set view
set_pev(id, pev_punchangle, VEC_NULL); // reset
set_pev(id, pev_fixangle, 1); // update v_angle (and angles?)
}
}
stock register_cmd(command[], function[], flags = -1, info[] = "")
{
new szTemp[64];
formatex(szTemp, charsmax(szTemp), "say /%s", command);
register_clcmd(szTemp, function, flags, info);
formatex(szTemp, charsmax(szTemp), "say .%s", command);
register_clcmd(szTemp, function, flags, info);
formatex(szTemp, charsmax(szTemp), "say_team /%s", command);
register_clcmd(szTemp, function, flags, info);
formatex(szTemp, charsmax(szTemp), "say_team .%s", command);
register_clcmd(szTemp, function, flags, info);
formatex(szTemp, charsmax(szTemp), "/%s", command);
register_clcmd(szTemp, function, flags, info);
formatex(szTemp, charsmax(szTemp), ".%s", command);
register_clcmd(szTemp, function, flags, info);
}
stock register_saycmd(command[], function[], flags = -1, info[] = "")
{
new szTemp[64];
formatex(szTemp, charsmax(szTemp), "say /%s", command);
register_clcmd(szTemp, function, flags, info);
formatex(szTemp, charsmax(szTemp), "say .%s", command);
register_clcmd(szTemp, function, flags, info);
formatex(szTemp, charsmax(szTemp), "say_team /%s", command);
register_clcmd(szTemp, function, flags, info);
formatex(szTemp, charsmax(szTemp), "say_team .%s", command);
register_clcmd(szTemp, function, flags, info);
}
stock send_cmd(id, text[])
{
message_begin(MSG_ONE, 51, _, id);
write_byte(strlen(text) + 2);
write_byte(10);
write_string(text);
message_end();
}
// Weapons
stock ham_give_weapon_by_name(id, weapon[])
{
if(!equal(weapon, "weapon_", 7))
return 0;
new wEnt = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, weapon));
if(!pev_valid(wEnt))
return 0;
set_pev(wEnt,pev_spawnflags, SF_NORESPAWN);
dllfunc(DLLFunc_Spawn, wEnt);
if(!ExecuteHamB(Ham_AddPlayerItem, id, wEnt))
{
if(pev_valid(wEnt))
set_pev(wEnt,pev_flags, pev(wEnt,pev_flags) | FL_KILLME);
return 0;
}
ExecuteHamB(Ham_Item_AttachToPlayer, wEnt, id);
return 1;
}
stock ham_strip_weapon_by_name(id, weapon[])
{
if(!equal(weapon, "weapon_", 7))
return 0;
new wId = get_weaponid(weapon);
if(!wId)
return 0;
new wEnt;
while((wEnt = engfunc(EngFunc_FindEntityByString, wEnt, "classname", weapon)) && pev(wEnt, pev_owner) != id) {}
if(!wEnt)
return 0;
if(get_user_weapon(id) == wId)
ExecuteHamB(Ham_Weapon_RetireWeapon, wEnt);
if(!ExecuteHamB(Ham_RemovePlayerItem, id, wEnt))
return 0;
ExecuteHamB(Ham_Item_Kill, wEnt);
set_pev(id, pev_weapons, pev(id,pev_weapons) & ~(1<<wId));
return 1;
}
// Removing entity
stock delete_ent_by_class(classname[])
{
new ent = find_ent_by_class(ent, classname);
while (ent)
{
remove_entity(ent);
ent = find_ent_by_class(ent, classname);
}
}
// ColorChat
enum ColorType
{
NORMAL = 1, // clients scr_concolor cvar color
GREEN, // Green Color
TEAM_COLOR, // Red, grey, blue
GREY, // grey
RED, // Red
BLUE, // Blue
};
new TeamName[][] =
{
"",
"TERRORIST",
"CT",
"SPECTATOR"
};
stock client_print_f(id, ColorType:type, const msg[], {Float,Sql,Result,_}:...)
{
new message[256];
switch(type)
{
case NORMAL: // clients scr_concolor cvar color
{
message[0] = 0x01;
}
case GREEN: // Green
{
message[0] = 0x04;
}
default: // White, Red, Blue
{
message[0] = 0x03;
}
}
vformat(message[1], 251, msg, 4);
// Make sure message is not longer than 192 character. Will crash the server.
message[192] = '^0';
new team, ColorChange, index, MSG_Type;
if(id)
{
MSG_Type = MSG_ONE;
index = id;
}
else
{
index = FindPlayer();
MSG_Type = MSG_ALL;
}
team = get_user_team(index);
if( team >= 0 && team < 4 )
{
ColorChange = ColorSelection(index, MSG_Type, type);
ShowColorMessage(index, MSG_Type, message);
if(ColorChange)
{
Team_Info(index, MSG_Type, TeamName[team]);
}
}
}
stock ShowColorMessage(id, type, message[])
{
static bool:saytext_used;
static get_user_msgid_saytext;
if(!saytext_used)
{
get_user_msgid_saytext = get_user_msgid("SayText");
saytext_used = true;
}
message_begin(type, get_user_msgid_saytext, _, id);
write_byte(id);
write_string(message);
message_end();
}
stock Team_Info(id, type, team[])
{
static bool:teaminfo_used;
static get_user_msgid_teaminfo;
if(!teaminfo_used)
{
get_user_msgid_teaminfo = get_user_msgid("TeamInfo");
teaminfo_used = true;
}
message_begin(type, get_user_msgid_teaminfo, _, id);
write_byte(id);
write_string(team);
message_end();
return 1;
}
stock ColorSelection(index, type, ColorType:Type)
{
switch(Type)
{
case RED:
{
return Team_Info(index, type, TeamName[1]);
}
case BLUE:
{
return Team_Info(index, type, TeamName[2]);
}
case GREY:
{
return Team_Info(index, type, TeamName[0]);
}
}
return 0;
}
stock FindPlayer()
{
new i = -1;
while(i <= get_maxplayers())
{
if(is_user_connected(++i))
return i;
}
return -1;
}
// timer
stock stringTimer(const Float:flRealTime, szOutPut[], const iSizeOutPut, iMilliSecNumber = 2, gametime = true)
{
static Float:flTime, iMinutes, iSeconds;
if(gametime)
flTime = get_gametime() - flRealTime;
else
flTime = flRealTime;
if(flTime < 0.0)
flTime = -flTime;
iMinutes = floatround(flTime / 60, floatround_floor);
iSeconds = floatround(flTime - (iMinutes * 60), floatround_floor);
if(iMinutes <= 99)
formatex(szOutPut, iSizeOutPut, "%02d:%02d", iMinutes, iSeconds);
else
formatex(szOutPut, iSizeOutPut, "%03d:%02d", iMinutes, iSeconds);
static iMilliSeconds;
if(iMilliSecNumber == 1)
{
iMilliSeconds = floatround((flTime - (iMinutes * 60 + iSeconds)) * 10, floatround_floor);
format(szOutPut, iSizeOutPut, "%s.%01d", szOutPut, iMilliSeconds);
}
else if(iMilliSecNumber == 2)
{
iMilliSeconds = floatround((flTime - (iMinutes * 60 + iSeconds)) * 100, floatround_floor);
format(szOutPut, iSizeOutPut, "%s.%02d", szOutPut, iMilliSeconds);
}
else if(iMilliSecNumber == 3)
{
iMilliSeconds = floatround((flTime - (iMinutes * 60 + iSeconds)) * 1000, floatround_floor);
format(szOutPut, iSizeOutPut, "%s.%03d", szOutPut, iMilliSeconds);
}
}
stock Float:floatTimer(const szInPut[])
{
new Float:flTime = 0.0;
if(szInPut[2] == ':' && szInPut[5] == '.')
{
flTime+= ((szInPut[0] - 48) * 600.0) + ((szInPut[1] - 48) * 60.0);
flTime+= ((szInPut[3] - 48) * 10.0) + (szInPut[4] - 48);
flTime+= ((szInPut[6] - 48) / 10.0) + ((szInPut[7] - 48) / 100.0);
}
else
{
flTime = str_to_float(szInPut);
}
return flTime;
}
// menu
stock isMenuOpened(plaeyrId, menuId)
{
new oldMenuId, newMenuId;
player_menu_info(plaeyrId, oldMenuId, newMenuId);
return (oldMenuId == menuId);
}
// IsUserSurfing by ConnorMcLeod
stock is_player_sliding(id)
{
if(!is_user_alive(id))
return 0;
new flags = entity_get_int(id, EV_INT_flags);
if(flags & FL_ONGROUND)
return 0;
new Float:origin[3], Float:dest[3];
pev(id, pev_origin, origin);
dest[0] = origin[0];
dest[1] = origin[1];
dest[2] = origin[2] - 1.0;
new ptr = create_tr2();
engfunc(EngFunc_TraceHull, origin, dest, 0, flags & FL_DUCKING ? HULL_HEAD : HULL_HUMAN, id, ptr);
new Float:flFraction;
get_tr2(ptr, TR_flFraction, flFraction);
if( flFraction >= 1.0 )
{
free_tr2(ptr);
return 0;
}
get_tr2(ptr, TR_vecPlaneNormal, dest);
free_tr2(ptr);
return dest[2] <= 0.7;
}
// localhost
stock is_user_localhost(id)
{
new szIP[16];
get_user_ip(id, szIP, charsmax(szIP), 1);
if(equal(szIP, "loopback") || equal(szIP, "127.0.0.1"))
{
return true;
}
return false;
}
stock get_localhost()
{
new players[32], pnum;
get_players(players, pnum);
for(new i = 0; i < pnum; i++)
{
if(is_user_localhost(players[i]))
return players[i];
}
return 0;
}
Link: | |
Linklerini gizle |
-
Konu Sahibi
Derleme hatası
Tamamdır cok sagolasın usta senı bulmusken bi eklenti daha sorucam sorunluColditz yazdı: Cum Ara 04, 2020 10:36 pm Önceki attığımı da güncelledim, sorunsuz compile ediyor.
Kod: Tümünü seç
#define is_zero_vec(%1) (%1[0] == 0 && %1[1] == 0 && %1[2] == 0) new Float:VEC_NULL[3] = {0.0, 0.0, 0.0}; stock copy_vector(Float:flVec1[], Float:flVec2[]) { flVec2[0] = flVec1[0]; flVec2[1] = flVec1[1]; flVec2[2] = flVec1[2]; } stock are_vectors_equal(Float:flVec1[], Float:flVec2[]) { return (flVec1[0] == flVec2[0] && flVec1[1] == flVec2[1] && flVec1[2] == flVec2[2]) ? true : false; } stock get_player_position(id, Float:flOrigin[3], Float:flAngles[3], &Float:flGravity) { pev(id, pev_origin, flOrigin); pev(id, pev_v_angle, flAngles); pev(id, pev_gravity, flGravity); } stock get_player_origin(id, Float:flOrigin[3], Float:flAngles[3], &Float:flGravity, &Float:flFuser2) { pev(id, pev_origin, flOrigin); pev(id, pev_v_angle, flAngles); pev(id, pev_gravity, flGravity); pev(id, pev_fuser2, flFuser2); } // for set_player_origin new Float:VEC_DUCK_HULL_MIN[3] = {-16.0, -16.0, -18.0 }; new Float:VEC_DUCK_HULL_MAX[3] = { 16.0, 16.0, 32.0 }; new Float:VEC_DUCK_VIEW[3] = { 0.0, 0.0, 12.0 }; stock set_player_origin(id, Float:flOrigin[3], Float:flAngles[3], Float:flGravity, Float:flFuser2) { new iFlags = pev(id, pev_flags); iFlags &= ~FL_BASEVELOCITY; // in case player was on conveyor iFlags |= FL_DUCKING; // prevent stuck set_pev(id, pev_flags, iFlags); engfunc(EngFunc_SetSize, id, VEC_DUCK_HULL_MIN, VEC_DUCK_HULL_MAX); // prevent stuck engfunc(EngFunc_SetOrigin, id, flOrigin); set_pev(id, pev_view_ofs, VEC_DUCK_VIEW); set_pev(id, pev_velocity, VEC_NULL); // reset speed set_pev(id, pev_basevelocity, VEC_NULL); // reset speed if(flGravity > 0.0) set_pev(id, pev_gravity, flGravity); set_pev(id, pev_fuser2, flFuser2); if(!is_zero_vec(flAngles)) { set_pev(id, pev_v_angle, VEC_NULL); // reset v_angle so it will match angles set_pev(id, pev_angles, flAngles); // set view set_pev(id, pev_punchangle, VEC_NULL); // reset set_pev(id, pev_fixangle, 1); // update v_angle (and angles?) } } stock register_cmd(command[], function[], flags = -1, info[] = "") { new szTemp[64]; formatex(szTemp, charsmax(szTemp), "say /%s", command); register_clcmd(szTemp, function, flags, info); formatex(szTemp, charsmax(szTemp), "say .%s", command); register_clcmd(szTemp, function, flags, info); formatex(szTemp, charsmax(szTemp), "say_team /%s", command); register_clcmd(szTemp, function, flags, info); formatex(szTemp, charsmax(szTemp), "say_team .%s", command); register_clcmd(szTemp, function, flags, info); formatex(szTemp, charsmax(szTemp), "/%s", command); register_clcmd(szTemp, function, flags, info); formatex(szTemp, charsmax(szTemp), ".%s", command); register_clcmd(szTemp, function, flags, info); } stock register_saycmd(command[], function[], flags = -1, info[] = "") { new szTemp[64]; formatex(szTemp, charsmax(szTemp), "say /%s", command); register_clcmd(szTemp, function, flags, info); formatex(szTemp, charsmax(szTemp), "say .%s", command); register_clcmd(szTemp, function, flags, info); formatex(szTemp, charsmax(szTemp), "say_team /%s", command); register_clcmd(szTemp, function, flags, info); formatex(szTemp, charsmax(szTemp), "say_team .%s", command); register_clcmd(szTemp, function, flags, info); } stock send_cmd(id, text[]) { message_begin(MSG_ONE, 51, _, id); write_byte(strlen(text) + 2); write_byte(10); write_string(text); message_end(); } // Weapons stock ham_give_weapon_by_name(id, weapon[]) { if(!equal(weapon, "weapon_", 7)) return 0; new wEnt = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString, weapon)); if(!pev_valid(wEnt)) return 0; set_pev(wEnt,pev_spawnflags, SF_NORESPAWN); dllfunc(DLLFunc_Spawn, wEnt); if(!ExecuteHamB(Ham_AddPlayerItem, id, wEnt)) { if(pev_valid(wEnt)) set_pev(wEnt,pev_flags, pev(wEnt,pev_flags) | FL_KILLME); return 0; } ExecuteHamB(Ham_Item_AttachToPlayer, wEnt, id); return 1; } stock ham_strip_weapon_by_name(id, weapon[]) { if(!equal(weapon, "weapon_", 7)) return 0; new wId = get_weaponid(weapon); if(!wId) return 0; new wEnt; while((wEnt = engfunc(EngFunc_FindEntityByString, wEnt, "classname", weapon)) && pev(wEnt, pev_owner) != id) {} if(!wEnt) return 0; if(get_user_weapon(id) == wId) ExecuteHamB(Ham_Weapon_RetireWeapon, wEnt); if(!ExecuteHamB(Ham_RemovePlayerItem, id, wEnt)) return 0; ExecuteHamB(Ham_Item_Kill, wEnt); set_pev(id, pev_weapons, pev(id,pev_weapons) & ~(1<<wId)); return 1; } // Removing entity stock delete_ent_by_class(classname[]) { new ent = find_ent_by_class(ent, classname); while (ent) { remove_entity(ent); ent = find_ent_by_class(ent, classname); } } // ColorChat enum ColorType { NORMAL = 1, // clients scr_concolor cvar color GREEN, // Green Color TEAM_COLOR, // Red, grey, blue GREY, // grey RED, // Red BLUE, // Blue }; new TeamName[][] = { "", "TERRORIST", "CT", "SPECTATOR" }; stock client_print_f(id, ColorType:type, const msg[], {Float,Sql,Result,_}:...) { new message[256]; switch(type) { case NORMAL: // clients scr_concolor cvar color { message[0] = 0x01; } case GREEN: // Green { message[0] = 0x04; } default: // White, Red, Blue { message[0] = 0x03; } } vformat(message[1], 251, msg, 4); // Make sure message is not longer than 192 character. Will crash the server. message[192] = '^0'; new team, ColorChange, index, MSG_Type; if(id) { MSG_Type = MSG_ONE; index = id; } else { index = FindPlayer(); MSG_Type = MSG_ALL; } team = get_user_team(index); if( team >= 0 && team < 4 ) { ColorChange = ColorSelection(index, MSG_Type, type); ShowColorMessage(index, MSG_Type, message); if(ColorChange) { Team_Info(index, MSG_Type, TeamName[team]); } } } stock ShowColorMessage(id, type, message[]) { static bool:saytext_used; static get_user_msgid_saytext; if(!saytext_used) { get_user_msgid_saytext = get_user_msgid("SayText"); saytext_used = true; } message_begin(type, get_user_msgid_saytext, _, id); write_byte(id); write_string(message); message_end(); } stock Team_Info(id, type, team[]) { static bool:teaminfo_used; static get_user_msgid_teaminfo; if(!teaminfo_used) { get_user_msgid_teaminfo = get_user_msgid("TeamInfo"); teaminfo_used = true; } message_begin(type, get_user_msgid_teaminfo, _, id); write_byte(id); write_string(team); message_end(); return 1; } stock ColorSelection(index, type, ColorType:Type) { switch(Type) { case RED: { return Team_Info(index, type, TeamName[1]); } case BLUE: { return Team_Info(index, type, TeamName[2]); } case GREY: { return Team_Info(index, type, TeamName[0]); } } return 0; } stock FindPlayer() { new i = -1; while(i <= get_maxplayers()) { if(is_user_connected(++i)) return i; } return -1; } // timer stock stringTimer(const Float:flRealTime, szOutPut[], const iSizeOutPut, iMilliSecNumber = 2, gametime = true) { static Float:flTime, iMinutes, iSeconds; if(gametime) flTime = get_gametime() - flRealTime; else flTime = flRealTime; if(flTime < 0.0) flTime = -flTime; iMinutes = floatround(flTime / 60, floatround_floor); iSeconds = floatround(flTime - (iMinutes * 60), floatround_floor); if(iMinutes <= 99) formatex(szOutPut, iSizeOutPut, "%02d:%02d", iMinutes, iSeconds); else formatex(szOutPut, iSizeOutPut, "%03d:%02d", iMinutes, iSeconds); static iMilliSeconds; if(iMilliSecNumber == 1) { iMilliSeconds = floatround((flTime - (iMinutes * 60 + iSeconds)) * 10, floatround_floor); format(szOutPut, iSizeOutPut, "%s.%01d", szOutPut, iMilliSeconds); } else if(iMilliSecNumber == 2) { iMilliSeconds = floatround((flTime - (iMinutes * 60 + iSeconds)) * 100, floatround_floor); format(szOutPut, iSizeOutPut, "%s.%02d", szOutPut, iMilliSeconds); } else if(iMilliSecNumber == 3) { iMilliSeconds = floatround((flTime - (iMinutes * 60 + iSeconds)) * 1000, floatround_floor); format(szOutPut, iSizeOutPut, "%s.%03d", szOutPut, iMilliSeconds); } } stock Float:floatTimer(const szInPut[]) { new Float:flTime = 0.0; if(szInPut[2] == ':' && szInPut[5] == '.') { flTime+= ((szInPut[0] - 48) * 600.0) + ((szInPut[1] - 48) * 60.0); flTime+= ((szInPut[3] - 48) * 10.0) + (szInPut[4] - 48); flTime+= ((szInPut[6] - 48) / 10.0) + ((szInPut[7] - 48) / 100.0); } else { flTime = str_to_float(szInPut); } return flTime; } // menu stock isMenuOpened(plaeyrId, menuId) { new oldMenuId, newMenuId; player_menu_info(plaeyrId, oldMenuId, newMenuId); return (oldMenuId == menuId); } // IsUserSurfing by ConnorMcLeod stock is_player_sliding(id) { if(!is_user_alive(id)) return 0; new flags = entity_get_int(id, EV_INT_flags); if(flags & FL_ONGROUND) return 0; new Float:origin[3], Float:dest[3]; pev(id, pev_origin, origin); dest[0] = origin[0]; dest[1] = origin[1]; dest[2] = origin[2] - 1.0; new ptr = create_tr2(); engfunc(EngFunc_TraceHull, origin, dest, 0, flags & FL_DUCKING ? HULL_HEAD : HULL_HUMAN, id, ptr); new Float:flFraction; get_tr2(ptr, TR_flFraction, flFraction); if( flFraction >= 1.0 ) { free_tr2(ptr); return 0; } get_tr2(ptr, TR_vecPlaneNormal, dest); free_tr2(ptr); return dest[2] <= 0.7; } // localhost stock is_user_localhost(id) { new szIP[16]; get_user_ip(id, szIP, charsmax(szIP), 1); if(equal(szIP, "loopback") || equal(szIP, "127.0.0.1")) { return true; } return false; } stock get_localhost() { new players[32], pnum; get_players(players, pnum); for(new i = 0; i < pnum; i++) { if(is_user_localhost(players[i])) return players[i]; } return 0; }
plugın calısıyor derlemede problemde yok fakat islevini yerine getirmıyor
oyuncuyu muteledigi zaman kendısı o oyuncunun artık konusma seslerini duymaması gerekiyor ama suanda duyuyor
Kod: Tümünü seç
#include <amxmodx>
#include <amxmisc>
#include <cromchat>
#include <fakemeta>
#include <formatin>
#define PLUGIN_VERSION "2.1"
new const g_szMute[] = "buttons/blip1.wav"
new const g_szUnmute[] = "buttons/button9.wav"
enum _:Cvars
{
advmute_adminflag,
advmute_mutechat,
advmute_mutemic,
advmute_reopen,
advmute_sounds
}
new g_eCvars[Cvars], bool:g_bMuted[33][33], g_iFlag
new const g_szMenuCommands[][] =
{
"amx_mutemenu",
"amx_chatmutemenu",
"say /mute",
"say_team /mute",
"say /mutemenu",
"say_team /mutemenu",
"say /chatmute",
"say_team /chatmute",
"say /chatmutemenu",
"say_team /chatmutemenu"
}
public plugin_init()
{
register_plugin("Advanced Mute", PLUGIN_VERSION, "OciXCrom")
register_cvar("AdvancedMute", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED)
register_dictionary("AdvancedMute.txt")
register_message(get_user_msgid("SayText"), "OnPlayerMessage")
register_forward(FM_Voice_SetClientListening, "OnPlayerTalk")
register_clcmd("amx_mute", "Cmd_Mute", ADMIN_ALL, "<nick|#userid>")
register_clcmd("amx_chatmute", "Cmd_Mute", ADMIN_ALL, "<nick|#userid>")
for(new i; i < sizeof(g_szMenuCommands); i++)
register_clcmd(g_szMenuCommands[i], "MuteMenu")
g_eCvars[advmute_adminflag] = register_cvar("advmute_adminflag", "a")
g_eCvars[advmute_mutechat] = register_cvar("advmute_mutechat", "1")
g_eCvars[advmute_mutemic] = register_cvar("advmute_mutemic", "1")
g_eCvars[advmute_reopen] = register_cvar("advmute_reopen", "1")
g_eCvars[advmute_sounds] = register_cvar("advmute_sounds", "1")
CC_SetPrefix("&x04[&x03Advanced Mute&x04]")
}
public plugin_precache()
{
precache_sound(g_szMute)
precache_sound(g_szUnmute)
}
public plugin_cfg()
{
new szFlag[2]
get_pcvar_string(g_eCvars[advmute_adminflag], szFlag, charsmax(szFlag))
g_iFlag = read_flags(szFlag)
}
public OnPlayerMessage(iMsgid, iDest, iReceiver)
{
if(!get_pcvar_num(g_eCvars[advmute_mutechat]))
return PLUGIN_CONTINUE
static iSender
iSender = get_msg_arg_int(1)
return get_mute(iReceiver, iSender) ? PLUGIN_HANDLED : PLUGIN_CONTINUE
}
public OnPlayerTalk(iReceiver, iSender, iListen)
{
if(!get_pcvar_num(g_eCvars[advmute_mutemic]) || iReceiver == iSender)
return FMRES_IGNORED
if(get_mute(iReceiver, iSender))
{
engfunc(EngFunc_SetClientListening, iReceiver, iSender, 0)
return FMRES_SUPERCEDE
}
return FMRES_IGNORED
}
public Cmd_Mute(id)
{
new szArg[32]
read_argv(1, szArg, charsmax(szArg))
new iPlayer = cmd_target(id, szArg, 0)
if(!iPlayer)
return PLUGIN_HANDLED
if(get_user_flags(iPlayer) & g_iFlag)
{
CC_SendMessage(id, "%L", id, "ADVMUTE_CANT_MUTE")
user_spksound(id, g_szUnmute)
return PLUGIN_HANDLED
}
switch_mute(id, iPlayer)
display_mute_message(id, iPlayer)
return PLUGIN_HANDLED
}
public MuteMenu(id)
{
new iMenu = menu_create(formatin("%L", id, "ADVMUTE_MENU_HEADER"), "MuteMenu_Handler")
menu_additem(iMenu, formatin("%L", id, "ADVMUTE_MUTE_ALL"))
menu_additem(iMenu, formatin("%L", id, "ADVMUTE_UNMUTE_ALL"))
new iPlayers[32], iPnum
get_players(iPlayers, iPnum)
for(new szItem[40], szName[32], szUserId[16], iPlayer, i; i < iPnum; i++)
{
iPlayer = iPlayers[i]
if(get_user_flags(iPlayer) & g_iFlag)
continue
get_user_name(iPlayer, szName, charsmax(szName))
formatex(szUserId, charsmax(szUserId), "%i", get_user_userid(iPlayer))
formatex(szItem, charsmax(szItem), "%s%s", get_mute(id, iPlayer) ? "\r" : "", szName)
menu_additem(iMenu, szItem, szUserId)
}
menu_setprop(iMenu, MPROP_BACKNAME, formatin("%L", id, "ADVMUTE_PREVIOUS_PAGE"))
menu_setprop(iMenu, MPROP_NEXTNAME, formatin("%L", id, "ADVMUTE_NEXT_PAGE"))
menu_setprop(iMenu, MPROP_EXITNAME, formatin("%L", id, "ADVMUTE_EXIT"))
menu_display(id, iMenu)
return PLUGIN_HANDLED
}
public MuteMenu_Handler(id, iMenu, iItem)
{
if(iItem == MENU_EXIT)
{
menu_destroy(iMenu)
return PLUGIN_HANDLED
}
new szData[16], iUnused
menu_item_getinfo(iMenu, iItem, iUnused, szData, charsmax(szData), .callback = iUnused)
new iUserId = str_to_num(szData)
if(0 <= iItem <= 1)
{
new iPlayers[32], iPnum, bool:bMute = iItem == 0
get_players(iPlayers, iPnum)
for(new i, iPlayer; i < iPnum; i++)
{
iPlayer = iPlayers[i]
if(get_user_flags(iPlayer) & g_iFlag)
continue
set_mute(id, iPlayer, bMute)
}
CC_SendMessage(id, "%L", id, bMute ? "ADVMUTE_MUTED_ALL" : "ADVMUTE_UNMUTED_ALL")
if(get_pcvar_num(g_eCvars[advmute_sounds]))
user_spksound(id, bMute ? g_szMute : g_szUnmute)
}
else
{
new iPlayer = find_player("k", iUserId)
if(iPlayer)
{
switch_mute(id, iPlayer)
display_mute_message(id, iPlayer)
}
}
menu_destroy(iMenu)
if(get_pcvar_num(g_eCvars[advmute_reopen]))
MuteMenu(id)
return PLUGIN_HANDLED
}
display_mute_message(const id, const iPlayer)
{
new szName[32], bool:bMute = get_mute(id, iPlayer)
get_user_name(iPlayer, szName, charsmax(szName))
CC_SendMessage(id, "%L", id, bMute ? "ADVMUTE_MUTED_PLAYER" : "ADVMUTE_UNMUTED_PLAYER", szName)
if(get_pcvar_num(g_eCvars[advmute_sounds]) == 1)
user_spksound(id, bMute ? g_szMute : g_szUnmute)
}
set_mute(const id, const iPlayer, const bool:bMute)
g_bMuted[id][iPlayer] = bMute ? true : false
bool:get_mute(const id, const iPlayer)
return bool:g_bMuted[id][iPlayer]
switch_mute(const id, const iPlayer)
set_mute(id, iPlayer, get_mute(id, iPlayer) ? false : true)
user_spksound(const id, const szSound[])
client_cmd(id, "spk %s", szSound)
Link: | |
Linklerini gizle |
Derleme hatası
eklentinin 108. satırını kendinize göre düzenleyin
eklenti,
eklenti,
Kod: Tümünü seç
#include <amxmodx>
#include <amxmisc>
#include <cromchat>
#include <fakemeta>
#define PLUGIN_VERSION "2.1"
new const g_szMute[] = "buttons/blip1.wav"
new const g_szUnmute[] = "buttons/button9.wav"
enum _:Cvars
{
advmute_adminflag,
advmute_mutechat,
advmute_mutemic,
advmute_reopen,
advmute_sounds
}
new g_eCvars[Cvars], bool:g_bMuted[33][33], g_iFlag
new const g_szMenuCommands[][] =
{
"amx_mutemenu",
"amx_chatmutemenu",
"say /mute",
"say_team /mute",
"say /mutemenu",
"say_team /mutemenu",
"say /chatmute",
"say_team /chatmute",
"say /chatmutemenu",
"say_team /chatmutemenu"
}
public plugin_init()
{
register_plugin("Advanced Mute", PLUGIN_VERSION, "OciXCrom")
register_cvar("AdvancedMute", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED)
register_dictionary("AdvancedMute.txt")
register_message(get_user_msgid("SayText"), "OnPlayerMessage")
register_forward(FM_Voice_SetClientListening, "OnPlayerTalk")
register_clcmd("amx_mute", "Cmd_Mute", ADMIN_ALL, "<nick|#userid>")
register_clcmd("amx_chatmute", "Cmd_Mute", ADMIN_ALL, "<nick|#userid>")
for(new i; i < sizeof(g_szMenuCommands); i++)
register_clcmd(g_szMenuCommands[i], "MuteMenu")
g_eCvars[advmute_adminflag] = register_cvar("advmute_adminflag", "a")
g_eCvars[advmute_mutechat] = register_cvar("advmute_mutechat", "1")
g_eCvars[advmute_mutemic] = register_cvar("advmute_mutemic", "1")
g_eCvars[advmute_reopen] = register_cvar("advmute_reopen", "1")
g_eCvars[advmute_sounds] = register_cvar("advmute_sounds", "1")
CC_SetPrefix("&x04[&x03Advanced Mute&x04]")
}
public plugin_precache()
{
precache_sound(g_szMute)
precache_sound(g_szUnmute)
}
public plugin_cfg()
{
new szFlag[2]
get_pcvar_string(g_eCvars[advmute_adminflag], szFlag, charsmax(szFlag))
g_iFlag = read_flags(szFlag)
}
public OnPlayerMessage(iMsgid, iDest, iReceiver)
{
if(!get_pcvar_num(g_eCvars[advmute_mutechat]))
return PLUGIN_CONTINUE
static iSender
iSender = get_msg_arg_int(1)
return get_mute(iReceiver, iSender) ? PLUGIN_HANDLED : PLUGIN_CONTINUE
}
public OnPlayerTalk(iReceiver, iSender, iListen)
{
if(!get_pcvar_num(g_eCvars[advmute_mutemic]) || iReceiver == iSender)
return FMRES_IGNORED
if(get_mute(iReceiver, iSender))
{
engfunc(EngFunc_SetClientListening, iReceiver, iSender, 0)
return FMRES_SUPERCEDE
}
return FMRES_IGNORED
}
public Cmd_Mute(id)
{
new szArg[32]
read_argv(1, szArg, charsmax(szArg))
new iPlayer = cmd_target(id, szArg, 0)
if(!iPlayer)
return PLUGIN_HANDLED
if(get_user_flags(iPlayer) & g_iFlag)
{
CC_SendMessage(id, "%L", id, "ADVMUTE_CANT_MUTE")
user_spksound(id, g_szUnmute)
return PLUGIN_HANDLED
}
switch_mute(id, iPlayer)
display_mute_message(id, iPlayer)
return PLUGIN_HANDLED
}
public MuteMenu(id)
{
new iMenu = menu_create("Menunuzun basligi", "MuteMenu_Handler")
menu_additem(iMenu, "Herkesi mutele")
menu_additem(iMenu, "Herkesin mutesini kaldir")
new iPlayers[32], iPnum
get_players(iPlayers, iPnum)
for(new szItem[40], szName[32], szUserId[16], iPlayer, i; i < iPnum; i++)
{
iPlayer = iPlayers[i]
if(get_user_flags(iPlayer) & g_iFlag)
continue
get_user_name(iPlayer, szName, charsmax(szName))
formatex(szUserId, charsmax(szUserId), "%i", get_user_userid(iPlayer))
formatex(szItem, charsmax(szItem), "%s%s", get_mute(id, iPlayer) ? "\r" : "", szName)
menu_additem(iMenu, szItem, szUserId)
}
menu_setprop(iMenu, MPROP_BACKNAME, "Geri")
menu_setprop(iMenu, MPROP_NEXTNAME, "Ileri")
menu_setprop(iMenu, MPROP_EXITNAME, "Cikis")
menu_display(id, iMenu)
return PLUGIN_HANDLED
}
public MuteMenu_Handler(id, iMenu, iItem)
{
if(iItem == MENU_EXIT)
{
menu_destroy(iMenu)
return PLUGIN_HANDLED
}
new szData[16], iUnused
menu_item_getinfo(iMenu, iItem, iUnused, szData, charsmax(szData), .callback = iUnused)
new iUserId = str_to_num(szData)
if(0 <= iItem <= 1)
{
new iPlayers[32], iPnum, bool:bMute = iItem == 0
get_players(iPlayers, iPnum)
for(new i, iPlayer; i < iPnum; i++)
{
iPlayer = iPlayers[i]
if(get_user_flags(iPlayer) & g_iFlag)
continue
set_mute(id, iPlayer, bMute)
}
CC_SendMessage(id, "%L", id, bMute ? "ADVMUTE_MUTED_ALL" : "ADVMUTE_UNMUTED_ALL")
if(get_pcvar_num(g_eCvars[advmute_sounds]))
user_spksound(id, bMute ? g_szMute : g_szUnmute)
}
else
{
new iPlayer = find_player("k", iUserId)
if(iPlayer)
{
switch_mute(id, iPlayer)
display_mute_message(id, iPlayer)
}
}
menu_destroy(iMenu)
if(get_pcvar_num(g_eCvars[advmute_reopen]))
MuteMenu(id)
return PLUGIN_HANDLED
}
display_mute_message(const id, const iPlayer)
{
new szName[32], bool:bMute = get_mute(id, iPlayer)
get_user_name(iPlayer, szName, charsmax(szName))
CC_SendMessage(id, "%L", id, bMute ? "ADVMUTE_MUTED_PLAYER" : "ADVMUTE_UNMUTED_PLAYER", szName)
if(get_pcvar_num(g_eCvars[advmute_sounds]) == 1)
user_spksound(id, bMute ? g_szMute : g_szUnmute)
}
set_mute(const id, const iPlayer, const bool:bMute)
g_bMuted[id][iPlayer] = bMute ? true : false
bool:get_mute(const id, const iPlayer)
return bool:g_bMuted[id][iPlayer]
switch_mute(const id, const iPlayer)
set_mute(id, iPlayer, get_mute(id, iPlayer) ? false : true)
user_spksound(const id, const szSound[])
client_cmd(id, "spk %s", szSound)
Link: | |
Linklerini gizle |
-
Konu Sahibi
Derleme hatası
Anlamadim hocam ya 108. satir bos gozukuyor bende, bu attıgınız son kod calısır durumda olan kodmu yanı sorunun duzeltildigiAconyonn yazdı: Cum Ara 04, 2020 11:30 pm eklentinin 108. satırını kendinize göre düzenleyin
eklenti,Kod: Tümünü seç
#include <amxmodx> #include <amxmisc> #include <cromchat> #include <fakemeta> #define PLUGIN_VERSION "2.1" new const g_szMute[] = "buttons/blip1.wav" new const g_szUnmute[] = "buttons/button9.wav" enum _:Cvars { advmute_adminflag, advmute_mutechat, advmute_mutemic, advmute_reopen, advmute_sounds } new g_eCvars[Cvars], bool:g_bMuted[33][33], g_iFlag new const g_szMenuCommands[][] = { "amx_mutemenu", "amx_chatmutemenu", "say /mute", "say_team /mute", "say /mutemenu", "say_team /mutemenu", "say /chatmute", "say_team /chatmute", "say /chatmutemenu", "say_team /chatmutemenu" } public plugin_init() { register_plugin("Advanced Mute", PLUGIN_VERSION, "OciXCrom") register_cvar("AdvancedMute", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED) register_dictionary("AdvancedMute.txt") register_message(get_user_msgid("SayText"), "OnPlayerMessage") register_forward(FM_Voice_SetClientListening, "OnPlayerTalk") register_clcmd("amx_mute", "Cmd_Mute", ADMIN_ALL, "<nick|#userid>") register_clcmd("amx_chatmute", "Cmd_Mute", ADMIN_ALL, "<nick|#userid>") for(new i; i < sizeof(g_szMenuCommands); i++) register_clcmd(g_szMenuCommands[i], "MuteMenu") g_eCvars[advmute_adminflag] = register_cvar("advmute_adminflag", "a") g_eCvars[advmute_mutechat] = register_cvar("advmute_mutechat", "1") g_eCvars[advmute_mutemic] = register_cvar("advmute_mutemic", "1") g_eCvars[advmute_reopen] = register_cvar("advmute_reopen", "1") g_eCvars[advmute_sounds] = register_cvar("advmute_sounds", "1") CC_SetPrefix("&x04[&x03Advanced Mute&x04]") } public plugin_precache() { precache_sound(g_szMute) precache_sound(g_szUnmute) } public plugin_cfg() { new szFlag[2] get_pcvar_string(g_eCvars[advmute_adminflag], szFlag, charsmax(szFlag)) g_iFlag = read_flags(szFlag) } public OnPlayerMessage(iMsgid, iDest, iReceiver) { if(!get_pcvar_num(g_eCvars[advmute_mutechat])) return PLUGIN_CONTINUE static iSender iSender = get_msg_arg_int(1) return get_mute(iReceiver, iSender) ? PLUGIN_HANDLED : PLUGIN_CONTINUE } public OnPlayerTalk(iReceiver, iSender, iListen) { if(!get_pcvar_num(g_eCvars[advmute_mutemic]) || iReceiver == iSender) return FMRES_IGNORED if(get_mute(iReceiver, iSender)) { engfunc(EngFunc_SetClientListening, iReceiver, iSender, 0) return FMRES_SUPERCEDE } return FMRES_IGNORED } public Cmd_Mute(id) { new szArg[32] read_argv(1, szArg, charsmax(szArg)) new iPlayer = cmd_target(id, szArg, 0) if(!iPlayer) return PLUGIN_HANDLED if(get_user_flags(iPlayer) & g_iFlag) { CC_SendMessage(id, "%L", id, "ADVMUTE_CANT_MUTE") user_spksound(id, g_szUnmute) return PLUGIN_HANDLED } switch_mute(id, iPlayer) display_mute_message(id, iPlayer) return PLUGIN_HANDLED } public MuteMenu(id) { new iMenu = menu_create("Menunuzun basligi", "MuteMenu_Handler") menu_additem(iMenu, "Herkesi mutele") menu_additem(iMenu, "Herkesin mutesini kaldir") new iPlayers[32], iPnum get_players(iPlayers, iPnum) for(new szItem[40], szName[32], szUserId[16], iPlayer, i; i < iPnum; i++) { iPlayer = iPlayers[i] if(get_user_flags(iPlayer) & g_iFlag) continue get_user_name(iPlayer, szName, charsmax(szName)) formatex(szUserId, charsmax(szUserId), "%i", get_user_userid(iPlayer)) formatex(szItem, charsmax(szItem), "%s%s", get_mute(id, iPlayer) ? "\r" : "", szName) menu_additem(iMenu, szItem, szUserId) } menu_setprop(iMenu, MPROP_BACKNAME, "Geri") menu_setprop(iMenu, MPROP_NEXTNAME, "Ileri") menu_setprop(iMenu, MPROP_EXITNAME, "Cikis") menu_display(id, iMenu) return PLUGIN_HANDLED } public MuteMenu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT) { menu_destroy(iMenu) return PLUGIN_HANDLED } new szData[16], iUnused menu_item_getinfo(iMenu, iItem, iUnused, szData, charsmax(szData), .callback = iUnused) new iUserId = str_to_num(szData) if(0 <= iItem <= 1) { new iPlayers[32], iPnum, bool:bMute = iItem == 0 get_players(iPlayers, iPnum) for(new i, iPlayer; i < iPnum; i++) { iPlayer = iPlayers[i] if(get_user_flags(iPlayer) & g_iFlag) continue set_mute(id, iPlayer, bMute) } CC_SendMessage(id, "%L", id, bMute ? "ADVMUTE_MUTED_ALL" : "ADVMUTE_UNMUTED_ALL") if(get_pcvar_num(g_eCvars[advmute_sounds])) user_spksound(id, bMute ? g_szMute : g_szUnmute) } else { new iPlayer = find_player("k", iUserId) if(iPlayer) { switch_mute(id, iPlayer) display_mute_message(id, iPlayer) } } menu_destroy(iMenu) if(get_pcvar_num(g_eCvars[advmute_reopen])) MuteMenu(id) return PLUGIN_HANDLED } display_mute_message(const id, const iPlayer) { new szName[32], bool:bMute = get_mute(id, iPlayer) get_user_name(iPlayer, szName, charsmax(szName)) CC_SendMessage(id, "%L", id, bMute ? "ADVMUTE_MUTED_PLAYER" : "ADVMUTE_UNMUTED_PLAYER", szName) if(get_pcvar_num(g_eCvars[advmute_sounds]) == 1) user_spksound(id, bMute ? g_szMute : g_szUnmute) } set_mute(const id, const iPlayer, const bool:bMute) g_bMuted[id][iPlayer] = bMute ? true : false bool:get_mute(const id, const iPlayer) return bool:g_bMuted[id][iPlayer] switch_mute(const id, const iPlayer) set_mute(id, iPlayer, get_mute(id, iPlayer) ? false : true) user_spksound(const id, const szSound[]) client_cmd(id, "spk %s", szSound)
Link: | |
Linklerini gizle |
-
Konu Sahibi
Derleme hatası
1DelTA1 yazdı: Cum Ara 04, 2020 11:37 pmAnlamadim hocam ya 108. satir bos gozukuyor bende, bu attıgınız son kod calısır durumda olan kodmu yanı sorunun duzeltildigiAconyonn yazdı: Cum Ara 04, 2020 11:30 pm eklentinin 108. satırını kendinize göre düzenleyin
eklenti,Kod: Tümünü seç
#include <amxmodx> #include <amxmisc> #include <cromchat> #include <fakemeta> #define PLUGIN_VERSION "2.1" new const g_szMute[] = "buttons/blip1.wav" new const g_szUnmute[] = "buttons/button9.wav" enum _:Cvars { advmute_adminflag, advmute_mutechat, advmute_mutemic, advmute_reopen, advmute_sounds } new g_eCvars[Cvars], bool:g_bMuted[33][33], g_iFlag new const g_szMenuCommands[][] = { "amx_mutemenu", "amx_chatmutemenu", "say /mute", "say_team /mute", "say /mutemenu", "say_team /mutemenu", "say /chatmute", "say_team /chatmute", "say /chatmutemenu", "say_team /chatmutemenu" } public plugin_init() { register_plugin("Advanced Mute", PLUGIN_VERSION, "OciXCrom") register_cvar("AdvancedMute", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED) register_dictionary("AdvancedMute.txt") register_message(get_user_msgid("SayText"), "OnPlayerMessage") register_forward(FM_Voice_SetClientListening, "OnPlayerTalk") register_clcmd("amx_mute", "Cmd_Mute", ADMIN_ALL, "<nick|#userid>") register_clcmd("amx_chatmute", "Cmd_Mute", ADMIN_ALL, "<nick|#userid>") for(new i; i < sizeof(g_szMenuCommands); i++) register_clcmd(g_szMenuCommands[i], "MuteMenu") g_eCvars[advmute_adminflag] = register_cvar("advmute_adminflag", "a") g_eCvars[advmute_mutechat] = register_cvar("advmute_mutechat", "1") g_eCvars[advmute_mutemic] = register_cvar("advmute_mutemic", "1") g_eCvars[advmute_reopen] = register_cvar("advmute_reopen", "1") g_eCvars[advmute_sounds] = register_cvar("advmute_sounds", "1") CC_SetPrefix("&x04[&x03Advanced Mute&x04]") } public plugin_precache() { precache_sound(g_szMute) precache_sound(g_szUnmute) } public plugin_cfg() { new szFlag[2] get_pcvar_string(g_eCvars[advmute_adminflag], szFlag, charsmax(szFlag)) g_iFlag = read_flags(szFlag) } public OnPlayerMessage(iMsgid, iDest, iReceiver) { if(!get_pcvar_num(g_eCvars[advmute_mutechat])) return PLUGIN_CONTINUE static iSender iSender = get_msg_arg_int(1) return get_mute(iReceiver, iSender) ? PLUGIN_HANDLED : PLUGIN_CONTINUE } public OnPlayerTalk(iReceiver, iSender, iListen) { if(!get_pcvar_num(g_eCvars[advmute_mutemic]) || iReceiver == iSender) return FMRES_IGNORED if(get_mute(iReceiver, iSender)) { engfunc(EngFunc_SetClientListening, iReceiver, iSender, 0) return FMRES_SUPERCEDE } return FMRES_IGNORED } public Cmd_Mute(id) { new szArg[32] read_argv(1, szArg, charsmax(szArg)) new iPlayer = cmd_target(id, szArg, 0) if(!iPlayer) return PLUGIN_HANDLED if(get_user_flags(iPlayer) & g_iFlag) { CC_SendMessage(id, "%L", id, "ADVMUTE_CANT_MUTE") user_spksound(id, g_szUnmute) return PLUGIN_HANDLED } switch_mute(id, iPlayer) display_mute_message(id, iPlayer) return PLUGIN_HANDLED } public MuteMenu(id) { new iMenu = menu_create("Menunuzun basligi", "MuteMenu_Handler") menu_additem(iMenu, "Herkesi mutele") menu_additem(iMenu, "Herkesin mutesini kaldir") new iPlayers[32], iPnum get_players(iPlayers, iPnum) for(new szItem[40], szName[32], szUserId[16], iPlayer, i; i < iPnum; i++) { iPlayer = iPlayers[i] if(get_user_flags(iPlayer) & g_iFlag) continue get_user_name(iPlayer, szName, charsmax(szName)) formatex(szUserId, charsmax(szUserId), "%i", get_user_userid(iPlayer)) formatex(szItem, charsmax(szItem), "%s%s", get_mute(id, iPlayer) ? "\r" : "", szName) menu_additem(iMenu, szItem, szUserId) } menu_setprop(iMenu, MPROP_BACKNAME, "Geri") menu_setprop(iMenu, MPROP_NEXTNAME, "Ileri") menu_setprop(iMenu, MPROP_EXITNAME, "Cikis") menu_display(id, iMenu) return PLUGIN_HANDLED } public MuteMenu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT) { menu_destroy(iMenu) return PLUGIN_HANDLED } new szData[16], iUnused menu_item_getinfo(iMenu, iItem, iUnused, szData, charsmax(szData), .callback = iUnused) new iUserId = str_to_num(szData) if(0 <= iItem <= 1) { new iPlayers[32], iPnum, bool:bMute = iItem == 0 get_players(iPlayers, iPnum) for(new i, iPlayer; i < iPnum; i++) { iPlayer = iPlayers[i] if(get_user_flags(iPlayer) & g_iFlag) continue set_mute(id, iPlayer, bMute) } CC_SendMessage(id, "%L", id, bMute ? "ADVMUTE_MUTED_ALL" : "ADVMUTE_UNMUTED_ALL") if(get_pcvar_num(g_eCvars[advmute_sounds])) user_spksound(id, bMute ? g_szMute : g_szUnmute) } else { new iPlayer = find_player("k", iUserId) if(iPlayer) { switch_mute(id, iPlayer) display_mute_message(id, iPlayer) } } menu_destroy(iMenu) if(get_pcvar_num(g_eCvars[advmute_reopen])) MuteMenu(id) return PLUGIN_HANDLED } display_mute_message(const id, const iPlayer) { new szName[32], bool:bMute = get_mute(id, iPlayer) get_user_name(iPlayer, szName, charsmax(szName)) CC_SendMessage(id, "%L", id, bMute ? "ADVMUTE_MUTED_PLAYER" : "ADVMUTE_UNMUTED_PLAYER", szName) if(get_pcvar_num(g_eCvars[advmute_sounds]) == 1) user_spksound(id, bMute ? g_szMute : g_szUnmute) } set_mute(const id, const iPlayer, const bool:bMute) g_bMuted[id][iPlayer] = bMute ? true : false bool:get_mute(const id, const iPlayer) return bool:g_bMuted[id][iPlayer] switch_mute(const id, const iPlayer) set_mute(id, iPlayer, get_mute(id, iPlayer) ? false : true) user_spksound(const id, const szSound[]) client_cmd(id, "spk %s", szSound)
edit : tamam gordum hocam deneyince haber edicem
Link: | |
Linklerini gizle |
-
Konu Sahibi
Derleme hatası
Yok ustam hala mutelemıyor konusabiliyor oyuncu hala duyabiliorum muteledıgım oyuncuyu. gag olarakda gagladıgımız oyuncuyu kıcklemezsek hala voice basmaya devam edebiliyor alakası varmıdır bılmıyorum ek olarak soyleyım dedımAconyonn yazdı: Cum Ara 04, 2020 11:30 pm eklentinin 108. satırını kendinize göre düzenleyin
eklenti,Kod: Tümünü seç
#include <amxmodx> #include <amxmisc> #include <cromchat> #include <fakemeta> #define PLUGIN_VERSION "2.1" new const g_szMute[] = "buttons/blip1.wav" new const g_szUnmute[] = "buttons/button9.wav" enum _:Cvars { advmute_adminflag, advmute_mutechat, advmute_mutemic, advmute_reopen, advmute_sounds } new g_eCvars[Cvars], bool:g_bMuted[33][33], g_iFlag new const g_szMenuCommands[][] = { "amx_mutemenu", "amx_chatmutemenu", "say /mute", "say_team /mute", "say /mutemenu", "say_team /mutemenu", "say /chatmute", "say_team /chatmute", "say /chatmutemenu", "say_team /chatmutemenu" } public plugin_init() { register_plugin("Advanced Mute", PLUGIN_VERSION, "OciXCrom") register_cvar("AdvancedMute", PLUGIN_VERSION, FCVAR_SERVER|FCVAR_SPONLY|FCVAR_UNLOGGED) register_dictionary("AdvancedMute.txt") register_message(get_user_msgid("SayText"), "OnPlayerMessage") register_forward(FM_Voice_SetClientListening, "OnPlayerTalk") register_clcmd("amx_mute", "Cmd_Mute", ADMIN_ALL, "<nick|#userid>") register_clcmd("amx_chatmute", "Cmd_Mute", ADMIN_ALL, "<nick|#userid>") for(new i; i < sizeof(g_szMenuCommands); i++) register_clcmd(g_szMenuCommands[i], "MuteMenu") g_eCvars[advmute_adminflag] = register_cvar("advmute_adminflag", "a") g_eCvars[advmute_mutechat] = register_cvar("advmute_mutechat", "1") g_eCvars[advmute_mutemic] = register_cvar("advmute_mutemic", "1") g_eCvars[advmute_reopen] = register_cvar("advmute_reopen", "1") g_eCvars[advmute_sounds] = register_cvar("advmute_sounds", "1") CC_SetPrefix("&x04[&x03Advanced Mute&x04]") } public plugin_precache() { precache_sound(g_szMute) precache_sound(g_szUnmute) } public plugin_cfg() { new szFlag[2] get_pcvar_string(g_eCvars[advmute_adminflag], szFlag, charsmax(szFlag)) g_iFlag = read_flags(szFlag) } public OnPlayerMessage(iMsgid, iDest, iReceiver) { if(!get_pcvar_num(g_eCvars[advmute_mutechat])) return PLUGIN_CONTINUE static iSender iSender = get_msg_arg_int(1) return get_mute(iReceiver, iSender) ? PLUGIN_HANDLED : PLUGIN_CONTINUE } public OnPlayerTalk(iReceiver, iSender, iListen) { if(!get_pcvar_num(g_eCvars[advmute_mutemic]) || iReceiver == iSender) return FMRES_IGNORED if(get_mute(iReceiver, iSender)) { engfunc(EngFunc_SetClientListening, iReceiver, iSender, 0) return FMRES_SUPERCEDE } return FMRES_IGNORED } public Cmd_Mute(id) { new szArg[32] read_argv(1, szArg, charsmax(szArg)) new iPlayer = cmd_target(id, szArg, 0) if(!iPlayer) return PLUGIN_HANDLED if(get_user_flags(iPlayer) & g_iFlag) { CC_SendMessage(id, "%L", id, "ADVMUTE_CANT_MUTE") user_spksound(id, g_szUnmute) return PLUGIN_HANDLED } switch_mute(id, iPlayer) display_mute_message(id, iPlayer) return PLUGIN_HANDLED } public MuteMenu(id) { new iMenu = menu_create("Menunuzun basligi", "MuteMenu_Handler") menu_additem(iMenu, "Herkesi mutele") menu_additem(iMenu, "Herkesin mutesini kaldir") new iPlayers[32], iPnum get_players(iPlayers, iPnum) for(new szItem[40], szName[32], szUserId[16], iPlayer, i; i < iPnum; i++) { iPlayer = iPlayers[i] if(get_user_flags(iPlayer) & g_iFlag) continue get_user_name(iPlayer, szName, charsmax(szName)) formatex(szUserId, charsmax(szUserId), "%i", get_user_userid(iPlayer)) formatex(szItem, charsmax(szItem), "%s%s", get_mute(id, iPlayer) ? "\r" : "", szName) menu_additem(iMenu, szItem, szUserId) } menu_setprop(iMenu, MPROP_BACKNAME, "Geri") menu_setprop(iMenu, MPROP_NEXTNAME, "Ileri") menu_setprop(iMenu, MPROP_EXITNAME, "Cikis") menu_display(id, iMenu) return PLUGIN_HANDLED } public MuteMenu_Handler(id, iMenu, iItem) { if(iItem == MENU_EXIT) { menu_destroy(iMenu) return PLUGIN_HANDLED } new szData[16], iUnused menu_item_getinfo(iMenu, iItem, iUnused, szData, charsmax(szData), .callback = iUnused) new iUserId = str_to_num(szData) if(0 <= iItem <= 1) { new iPlayers[32], iPnum, bool:bMute = iItem == 0 get_players(iPlayers, iPnum) for(new i, iPlayer; i < iPnum; i++) { iPlayer = iPlayers[i] if(get_user_flags(iPlayer) & g_iFlag) continue set_mute(id, iPlayer, bMute) } CC_SendMessage(id, "%L", id, bMute ? "ADVMUTE_MUTED_ALL" : "ADVMUTE_UNMUTED_ALL") if(get_pcvar_num(g_eCvars[advmute_sounds])) user_spksound(id, bMute ? g_szMute : g_szUnmute) } else { new iPlayer = find_player("k", iUserId) if(iPlayer) { switch_mute(id, iPlayer) display_mute_message(id, iPlayer) } } menu_destroy(iMenu) if(get_pcvar_num(g_eCvars[advmute_reopen])) MuteMenu(id) return PLUGIN_HANDLED } display_mute_message(const id, const iPlayer) { new szName[32], bool:bMute = get_mute(id, iPlayer) get_user_name(iPlayer, szName, charsmax(szName)) CC_SendMessage(id, "%L", id, bMute ? "ADVMUTE_MUTED_PLAYER" : "ADVMUTE_UNMUTED_PLAYER", szName) if(get_pcvar_num(g_eCvars[advmute_sounds]) == 1) user_spksound(id, bMute ? g_szMute : g_szUnmute) } set_mute(const id, const iPlayer, const bool:bMute) g_bMuted[id][iPlayer] = bMute ? true : false bool:get_mute(const id, const iPlayer) return bool:g_bMuted[id][iPlayer] switch_mute(const id, const iPlayer) set_mute(id, iPlayer, get_mute(id, iPlayer) ? false : true) user_spksound(const id, const szSound[]) client_cmd(id, "spk %s", szSound)
Link: | |
Linklerini gizle |