public OnPlayerConnect(playerid)
{
return 1;
}
if(!strcmp(pName(playerid),"[Tm]",false,4)) // Thanks Jeff for solving this.
{
}
if(!strcmp(pName(playerid),"[Tm]",false,4))
{
format ( query , sizeof ( query ) , " SELECT `clanmember` FROM `users` WHERE `username` = '%s' " , pName ( playerid ) );
mysql_query( query ); // Quering the above query.
mysql_store_result(); // Store the result of the above query
new clanmember = 0; // Define a new variable 'clanmember'
if(mysql_num_rows())
{
clanmember = mysql_fetch_int(); // Set clan member variable equal to the result of the query.
}
if(clanmember != 1) return KickWithMessage(playerid,"You're not in clan, remove your clan tag."); // If clanmember does not equal to one ( if player is not a clan member, kick him with a message.
mysql_free_result(); // Free the stored result.
}
public OnPlayerConnect(playerid)
{
if(!strcmp(pName(playerid),"[Tm]",false,4))
{
format(query,sizeof(query),"SELECT `clanmember` FROM `users` WHERE `username` = '%s'",pName(playerid));
mysql_query(query);
mysql_store_result();
new clanmember = 0;
if(mysql_num_rows())
{
clanmember = mysql_fetch_int();
}
if(clanmember != 1) return KickWithMessage(playerid,"You're not in clan, remove your clan tag.");
mysql_free_result();
}
return 1;
}
CMD:setclanmember(playerid,params[]) // I am using ZCMD.
{
return 1;
}
CMD:setclanmember(playerid,params[])
{
new pID;
if(pInfo[playerid][AdminLevel] <= 2) return 0; // Change it to your admin level check
if(sscanf(params,"u",pID)) return SendClientMessage(playerid,COLOR_WHITE,"USAGE: /setcmem [playerid]");
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,COLOR_GREY,"Player is not connected.");
if(pInfo[pID][ClanMember] == 1) return SendClientMessage(playerid,COLOR_GREY,"Player is already a clan member."); //What I did is I made ClanMember an enum and when player logs in, it saves the clanmember value to this variable so it's handy to check.
format(query,sizeof(query),"UPDATE `users` SET `clanmember` = '1' WHERE `username` = '%s'",pName(pID));
mysql_query(query); // update query
pInfo[pID][ClanMember] = 1;
format(string,sizeof(string),"You've successfully made %s a clan member.",pName(pID));
SendClientMessage(playerid,COLOR_YELLOW,string);
SendClientMessage(pID,COLOR_GREEN,"You're now a Clan Member. Congratulations!");
GameTextForPlayer(pID,"~g~Clan Member",1000,1);
return 1;
}
CMD:deleteclanmember(playerid,params[])
{
new pID;
if(pInfo[playerid][AdminLevel] <= 2) return 0;
if(sscanf(params,"u",pID)) return SendClientMessage(playerid,COLOR_WHITE,"USAGE: /dcmemb [playerid]");
if(!IsPlayerConnected(pID)) return SendClientMessage(playerid,COLOR_GREY,"Player is not connected.");
if(pInfo[playerid][ClanMember] == 0) return SendClientMessage(playerid,COLOR_GREY,"That player is not a clan member.");
format(query,sizeof(query),"UPDATE `users` SET `clanmember` = '0' WHERE `username` = '%s'",pName(pID));
mysql_query(query);
pInfo[pID][ClanMember] = 0;
format(string,sizeof(string),"You've successfully kicked %s out of the clan.",pName(pID));
SendClientMessage(playerid,COLOR_YELLOW,string);
SendClientMessage(pID,COLOR_RED,"You've been kicked out of the Clan.");
GameTextForPlayer(pID,"~r~Kicked!",1000,1);
return 1;
}
forward KickPublic(playerid);
public KickPublic(playerid) Kick(playerid);
stock KickWithMessage(playerid, color, message[])
{
SendClientMessage(playerid, color, message);
SetTimerEx("KickPublic", 1000, 0, "d", playerid); //Delay of 1 second before kicking the player so he receives the message
}
1. Whats KickWithMessage. (i know it but a lot of new commers won't know it, its better u explain a bit about it);
|