09-04-12, 20:36

MERHABA ARKADAŞLAR BEN DARKİNq ,
Eminimki Çoğu Kişi Bu Pluginden Faydalanacaktır... Özellikle Adminlerden Sıkıntı Çeken Serverler
Burda Artık Bir Nokta Koyup Adminlerinde Uzaklaştırılma Cezası Alabiliceği Birşey Paylaşıyorum
Fotoğraf Koyamadım Üzgünüm Ancak Çalışıyor...
İlk Önce Adminlerin Listesi Çıkıyor Belli Playerler Verdiği Zaman Oy Birdaha Veremiyor....
Neyse PLugini Paylaşayım...Smasınıda Paylaşıyorum....

PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <nvault>
#define ADMIN_LEVEL ADMIN_LEVEL_B
new g_iSeviye[22] = {
ADMIN_IMMUNITY, // a
ADMIN_RESERVATION, // b
ADMIN_KICK, // c
ADMIN_BAN, // d
ADMIN_SLAY, // e
ADMIN_MAP, // f
ADMIN_CVAR, // g
ADMIN_CFG, // h
ADMIN_CHAT, // i
ADMIN_VOTE, // j
ADMIN_PASSWORD, // k
ADMIN_RCON, // l
ADMIN_LEVEL_A, // m
ADMIN_LEVEL_B, // n
ADMIN_LEVEL_C, // o
ADMIN_LEVEL_D, // p
ADMIN_LEVEL_E, // q
ADMIN_LEVEL_F, // r
ADMIN_LEVEL_G, // s
ADMIN_LEVEL_H, // t
ADMIN_MENU, // u
ADMIN_USER // z
}
new bool: g_OyucuOylama[33][33]
new nVault
public plugin_init()
{
register_plugin("Admini Sikayet Et", "1.1", "Bilinmiyor")
register_clcmd("say /adminsikayet", "SikayetMenuGoster")
nVault = nvault_open("AdminSikayet")
}
public client_disconnect(id) {
for(new i; i < 33; i++) {
g_OyucuOylama[id][i] = false;
}
}
public SikayetMenuGoster(id) {
new players[32], num, admins[33], adminsnum
get_players(players, num)
for(new i; i < num; i++) {
if(user_top_flag(players) == ADMIN_LEVEL) {
admins[adminsnum] = players;
adminsnum++;
}
}
if(adminsnum < 1) {
client_print(id, print_chat, "[AMXX] Sikayet edecegin hicbir admin yok.")
return PLUGIN_HANDLED;
}
new menu = menu_create("Admin Sikayet", "MenuOlustur")
for(new i; i < adminsnum; i++) {
new szName[42], szID[2], szFinal[42], iSikayetNumarasi = SikayetSayisi(admins);
get_user_name(admins, szName, charsmax(szName))
num_to_str(admins, szID, charsmax(szID))
if(g_OyucuOylama[id][admins] == true)
formatex(szFinal, charsmax(szFinal), "\d%s \r(%i)", szName, iSikayetNumarasi)
else
formatex(szFinal, charsmax(szFinal), "%s \r(%i)", szName, iSikayetNumarasi)
menu_additem(menu, szFinal, szID)
}
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL);
menu_display(id, menu, 0);
return PLUGIN_HANDLED;
}
public MenuOlustur(id, menu, item)
{
if(item == MENU_EXIT) {
menu_destroy(menu);
return PLUGIN_HANDLED;
}
new data[6], szName[64];
new access, callback;
menu_item_getinfo(menu, item, access, data,charsmax(data), szName,charsmax(szName), callback);
new adminid = str_to_num(data);
if(g_OyucuOylama[id][adminid] == true) {
client_print(id, print_chat, "[AMXX] Herhangi bir admin icin sadece 1 kez sikayette bulunabilirsiniz.")
SikayetMenuGoster(id)
}
else if(user_top_flag(adminid) == ADMIN_LEVEL) {
new szNum[3], authid[32]
get_user_authid(id, authid, charsmax(authid))
if(nvault_get(nVault, authid, szNum, charsmax(szNum))) {
new iNum = str_to_num(szNum)
num_to_str((iNum+1), szNum, charsmax(szNum))
nvault_set(nVault, authid, szNum)
}
else
nvault_set(nVault, authid, "1")
g_OyucuOylama[id][adminid] = true;
CheckComplaints();
}
return PLUGIN_HANDLED;
}
CheckComplaints() {
new players[32], num
get_players(players, num)
for(new i; i < num; i++) {
if(user_top_flag(players) == ADMIN_LEVEL) {
new complaints = SikayetSayisi(players)
if(complaints == 30) {
new saat[] = "0", authid[32]
get_user_authid(players, authid, charsmax(authid))
server_cmd("kick #%d ^"Cok sayida sikayet aldigi icin serverdan kalici olarak uzaklastirildi^"", i)
server_cmd("banid %s %s", saat, authid)
server_cmd("idyaz")
}
else if(complaints == 20) {
new saat[] = "300", authid[32]
get_user_authid(players, authid, charsmax(authid))
server_cmd("kick #%d ^"Cok sayida sikayet aldigi icin serverdan 5 saatligine uzaklastirildi^"", i)
server_cmd("banid %s %s", saat, authid)
server_cmd("idyaz")
}
else if(complaints == 10) {
new saat[] = "60", authid[32]
get_user_authid(players, authid, charsmax(authid))
server_cmd("kick #%d ^"Cok sayida sikayet aldigi icin serverdan 1 saatligine uzaklastirildi^"", i)
server_cmd("banid %s %s", saat, authid)
server_cmd("idyaz")
}
}
}
}
SikayetSayisi(id) {
new szNum[3], authid[32]
get_user_authid(id, authid, charsmax(authid))
if(nvault_get(nVault, authid, szNum, charsmax(szNum)))
return str_to_num(szNum);
return 0;
}
user_top_flag(id) {
new flags = get_user_flags(id)
for(new i; i < 22; i++)
if(flags & g_iSeviye)
return (flags & g_iSeviye);
return 0;
}

[ATTACH]2426[/ATTACH]
Eğer İndiyorsanız Lütfen Teşekkürlerimizi Esirgemeyelim... Zorlamıyorum Sonuçta...
[/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i][/i]
___________________________
|İletişim : [email protected] |
|--------------------------------------|
------------------ En Sevdiğim Konular -----------------------
|İletişim : [email protected] |
|--------------------------------------|
------------------ En Sevdiğim Konular -----------------------
- ADMIN SİKAYET PLUGİNİ
- -----------------------------------------------
- JAILBREAK OYUN MENU



