18.07.2013, 17:05
PHP код:
YCMD:clan(playerid,params[],help)
{
new cmd[20];
if(sscanf(params,"s[20]",cmd))
{
SendClientMessage(playerid,-1,"/Clan [Create | Invite | Accept] - שימוש");
return 1;
}
if(!strcmp(cmd,"create",true))
{
new cname[MAX_CLAN_NAME];
if(sscanf(params,"s[20]s["#MAX_CLAN_NAME"]",cmd,cname))return SendClientMessage(playerid,-1,"/Clan Create [ClanName] - צורת השימוש");
if(strfind(cname,"None",true) != -1 || !strcmp(cname,"gmR",true) || !strcmp(cname,"LorD",true) || !strcmp(cname,"LoL",true) || !strcmp(cname,"Uk",true) || !strcmp(cname,"JaP",true) || !strcmp(cname,"IsraeL",true) || !strcmp(cname,"NoN",true) || !strcmp(cname,"Fxp",true) || !strcmp(cname,"SAMP-IL",true) || !strcmp(cname,"Vgames",true) || !strcmp(cname,"WaR",true) || !strcmp(cname,"QeeR",true))return SendClientMessage(playerid,Red,".לא ניתן לפתוח קלאן בשם זה");
if(strlen(cname) > MAX_CLAN_NAME || strlen(cname) < 2)return SendClientMessage(playerid,Red,".אורך שם הקלאן צריך להיות בין 2-6 תווים");
if(IsClanExists(cname))return SendClientMessage(playerid,Red,".קיים כבר קלאן בשם זה");
if(pInfo[playerid][ClanID] != -1)return SendClientMessage(playerid,Red,"הינך נמצא כבר בקלאן");
//ClanCreate
ClanInfo[CountClans][ClanID] = CountClans;
format(ClanInfo[CountClans][ClanName],MAX_CLAN_NAME,"%s",cname);
ClanInfo[CountClans][Color] = rgba2hex(random(255),random(255),random(255),100);
format(ClanInfo[CountClans][cFounder],30,"%s",GetName(playerid));
ClanInfo[CountClans][CPlayers] = 1;
ClanInfo[CountClans][Tests] = true;
ClanInfo[CountClans][Bank] = 0;
ClanInfo[CountClans][BankState] = true;
ClanInfo[CountClans][cPosX] = 0.00000;
ClanInfo[CountClans][cPosY] = 0.00000;
ClanInfo[CountClans][cPosZ] = 0.00000;
ClanInfo[CountClans][cPosA] = 0.00000;
ClanInfo[CountClans][cvPosX] = 0.00000;
ClanInfo[CountClans][cvPosY] = 0.00000;
ClanInfo[CountClans][cvPosZ] = 0.00000;
ClanInfo[CountClans][cvPosA] = 0.00000;
ClanInfo[CountClans][Chat] = true;
ClanInfo[CountClans][HaveHQ] = false;
ClanInfo[CountClans][AntiTeamKill] = false;
ClanInfo[CountClans][TeamKillID] = CountClans+4*6+random(6000)+random(89014);
ClanInfo[CountClans][CMaxWithdraw] = 20000;
ClanInfo[CountClans][CMaxDeposit] = 1000000;
ClanInfo[CountClans][ShowList] = true;
INI_Create(ClanFile(CountClans));
new INI:ini = INI_Open(ClanFile(CountClans),ini_mode_write);
INI_WriteInt(ini,"ClanID",CountClans);
INI_WriteString(ini,"ClanName",cname);
INI_WriteInt(ini,"ClanColor",ClanInfo[CountClans][Color]);
INI_WriteString(ini,"ClanFounder",GetName(playerid));
INI_WriteInt(ini,"ClanPlayers",1);
INI_WriteBool(ini,"ClanTests",true);
INI_WriteInt(ini,"ClanBank",0);
INI_WriteBool(ini,"ClanBankState",true);
INI_WriteFloat(ini,"ClanPosX",0.00000);
INI_WriteFloat(ini,"ClanPosY",0.00000);
INI_WriteFloat(ini,"ClanPosZ",0.00000);
INI_WriteFloat(ini,"ClanPosA",0.00000);
INI_WriteFloat(ini,"ClanvPosX",0.00000);
INI_WriteFloat(ini,"ClanvPosY",0.00000);
INI_WriteFloat(ini,"ClanvPosZ",0.00000);
INI_WriteFloat(ini,"ClanvPosA",0.00000);
INI_WriteBool(ini,"ClanChat",true);
INI_WriteBool(ini,"ClanHQ",false);
INI_WriteBool(ini,"AntiTeamKill",false);
INI_WriteInt(ini,"ClanTeamID",CountClans+4*6+random(6000)+random(89014));
INI_WriteInt(ini,"MaxWithdraw",20000);
INI_WriteInt(ini,"MaxDeposit",1000000);
INI_WriteBool(ini,"ShowList",true);
INI_Close(ini);
GivePlayerMoney(playerid,-800000);
pInfo[playerid][ClanID] = CountClans;
pInfo[playerid][ClanLevel] = Clan_Founder;
format(pInfo[playerid][ClanName], 32, "%s", cname);
new String[1400];
format(String,sizeof(String),"» {%s}%s{FFD700} - יצרת קלאן חדש בשם\n{FF8C00} ~ מידע על הקלאן ~ \n{AFEEEE}•{9ACD32} %s{FFD700} :שם הקלאן\n",ReturnHexColour(ClanInfo[CountClans][Color]),cname,cname);
format(String,sizeof(String),"%s{AFEEEE}•{9ACD32} %d{FFD700} :מספר הקלאן\n{AFEEEE}•{9ACD32} %s{FFD700} :מייסד הקלאן\n{AFEEEE}•{9ACD32} מצב הקלאן לטסטים: %s",String,CountClans,GetName(playerid),ClanInfo[CountClans][Tests]?("פתוח לטסטים"):("סגור לטסטים"));
ShowPlayerDialog(playerid,random(100000)+8001561+random(2000),DIALOG_STYLE_MSGBOX,"{FF8C00}Clan System - מערכת הקלאן",String,"סגור","");
SetPlayerColor(playerid,ClanInfo[CountClans][Color]);
++CountClans;
//dini_IntAdd("NDM/Settings.ini", "CountClans", 1);
return 1;
}
if(!strcmp(cmd,"Invite",true))
{
new id;
if(sscanf(params,"s[20]u",cmd,id))return SendClientMessage(playerid,-1,"/Clan Invite [id/name] - צורת השימוש");
if(!IsPlayerInClan(playerid))return SendClientMessage(playerid,Red,".אינך נמצא בקלאן");
if(pInfo[playerid][ClanLevel] < Clan_Tester)return SendClientMessage(playerid,Red,".עלייך להיות טסטר הקלאן בכדי להשתמש בפקודה זו");
if(!IsPlayerConnected(id))return SendClientMessage(playerid,Red,".שחקן לא מחובר");
if(!ClanInfo[pInfo[playerid][ClanID]][Tests])return SendClientMessage(playerid,Red,".הקלאן שלך סגור לטסטים");
//if(pInfo[id][Level] < 2)return SendClientMessage(playerid,Red,".שחקן זה ברמה נמוכה מ-2");
if(pInfo[playerid][ClanID] == pInfo[id][ClanID])return SendClientMessage(playerid,Red,".שחקן זה נמצא כבר בקלאן שלך");
if(IsPlayerInClan(id))return SendClientMessage(playerid,Red,".שחקן זה נמצא כבר בקלאן");
pInfo[id][InvitedClan] = pInfo[playerid][ClanID];
SendFormatMessage(playerid,Green,".\"%s\" שלחת הזמנה לשחקן",GetName(id));
SendFormatMessage(id,Green,"\"%s\" הזמין אותך לקלאן \"%s\" השחקן",ClanInfo[pInfo[playerid][ClanID]][ClanName],GetName(playerid));
SendClientMessage(id,Green,"/Clan Accept - על מנת לאשר הזמנה זו השתמש בפקודה");
return 1;
}
if(!strcmp(cmd,"Accept",true))
{
if(IsPlayerInClan(playerid))return SendClientMessage(playerid,Red,".אתה נמצא כבר בקלאן רישמי");
if(pInfo[playerid][InvitedClan] == -1)return SendClientMessage(playerid,Red,".לא הוזמנת לשום קלאן רישמי");
pInfo[playerid][ClanID] = pInfo[playerid][InvitedClan];
pInfo[playerid][ClanLevel] = 1;
format(pInfo[playerid][ClanName],MAX_CLAN_NAME,"%s",ClanInfo[pInfo[playerid][ClanID]][ClanName]);
ClanInfo[pInfo[playerid][ClanID]][CPlayers]++;
pInfo[playerid][InvitedClan] = -1;
foreach(new i:Player)
{
if(IsPlayerInClan(playerid) && IsPlayerInClan(i) && pInfo[playerid][ClanID] == pInfo[i][ClanID] && i!=playerid)
{
SendFormatMessage(i,Orange,".הצטרף לקלאן שלך \"%s\" השחקן",GetName(playerid));
}
}
SendFormatMessage(playerid,Green,".\"%s\" הצטרפת לקלאן",ClanInfo[pInfo[playerid][ClanID]][ClanName]);
return SetPlayerColor(playerid,ClanInfo[pInfo[playerid][ClanID]][Color]);
}
return 1;
}