OnPlayerConnect
new sorgu[128], isim[MAX_PLAYER_NAME + 1];
format(sorgu, sizeof(sorgu), "SELECT * FROM `whitelist` WHERE `isim` = '%s'", isim);
mysql_tquery(unknownsql, sorgu, "WhitelistKontrol", "d", playerid);
Forward, Public
forward WhitelistKontrol(playerid);
public WhitelistKontrol(playerid)
{
new rows;
cache_get_row_count(rows);
if(rows) // kişi beyaz listedeyse
{
// bu bölüme sunucuya giriş bölümünü koyabilirsiniz
}
else if(!rows) // kişi beyaz listede değilse
{
SendClientMessage(playerid, -1, "whitelist bulunamadı.");
Kick(playerid);
}
return 1;
}
Komut
CMD:whitelist(playerid, params[])
{
new sorgu[1024], isim[32], tur[24];
if (!IsPlayerConnected(playerid)) return 1;
// isteğe göre admin şartı
if (sscanf(params, "s[32]S()[32]", tur, isim))
{
SendClientMessage(playerid, -1, "/whitelist [ekle/sil] [hedef adı]");
return 1;
}
if (!strcmp(tur, "ekle", true))
{
if (isnull(isim)) return SendClientMessage(playerid, -1, "İsim kısmı boş bırakılamaz.");
format(sorgu, sizeof(sorgu), "SELECT * FROM `whitelist` WHERE `isim` = '%s'", isim);
new Cache:unknown = mysql_query(unknownsql, sorgu);
new rows;
cache_get_row_count(rows);
if (!rows)
{
format(sorgu, sizeof(sorgu), "INSERT INTO `whitelist` (`isim`) VALUES ('%s')", isim);
mysql_query(unknownsql, sorgu);
SendClientMessage(playerid, -1, "%s adlı kişiyi beyaz listeye eklediniz.", isim);
}
else SendClientMessage(playerid, -1, "Bu Kişi zaten beyaz listede.");
cache_delete(unknown);
}
else if (!strcmp(tur, "sil", true))
{
if (isnull(isim)) return SendClientMessage(playerid, -1, "İsim kısmı boş bırakılamaz.");
format(sorgu, sizeof(sorgu), "SELECT * FROM `whitelist` WHERE `isim` = '%s'", isim);
new Cache:unknown = mysql_query(unknownsql, sorgu);
new rows;
cache_get_row_count(rows);
if (rows)
{
format(sorgu, sizeof(sorgu), "DELETE FROM `whitelist` WHERE `isim` = '%s'", isim);
mysql_query(unknownsql, sorgu);
SendClientMessage(playerid, -1, "%s adlı kişiyi beyaz listeden sildiniz.");
}
else SendClientMessage(playerid, -1, "Bu Kişi zaten beyaz listede değil.");
cache_delete(unknown);
}
return 1;
}