15.07.2009, 15:41
(
Последний раз редактировалось WoodPecker; 27.11.2012 в 16:50.
)
Deleted.
}
if(strcmp(cmd, "/adjust", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pFMember] == 255)
{
SendClientMessage(playerid, COLOR_GREY, " You are not in a Family !");
return 1;
}
new family = PlayerInfo[playerid][pFMember];
if(PlayerInfo[playerid][pRank] > 4)
{
new x_nr[32];
x_nr = strtok(cmdtext, idx);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust [name]");
SendClientMessage(playerid, COLOR_GRAD1, "Available names: Name, MOTD, Invite, Uninvite, Rank, Safe, Rankname");
return 1;
}
if(strcmp(x_nr,"name",true) == 0)
{
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[24];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust name [name]");
return 1;
}
if(InvalidChar(result) == 1)
{
SendClientMessage(playerid, COLOR_GREY, " ERROR: cannot contain invalid characters !");
return 1;
}
strmid(FamilyInfo[family][FamilyName], result, 0, strlen(result), 255);
format(string, sizeof(string), "* You have adjusted your Family's Name to '%s'.",FamilyInfo[family][FamilyName]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
SaveFamilies();
}
else if(strcmp(x_nr,"rankname",true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust rankname [rank] [name]");
return 1;
}
new rank = strvalEx(tmp);
if(rank < 1 || rank > 6) { SendClientMessage(playerid, COLOR_GREY, " Rank can't be below 1 or above 6 !"); return 1; }
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[24];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust rankname [rank] [name]");
return 1;
}
if(InvalidChar(result) == 1)
{
SendClientMessage(playerid, COLOR_GREY, " ERROR: cannot contain invalid characters !");
return 1;
}
strmid(FamilyRank[family][rank-1], result, 0, strlen(result), 255);
format(string, sizeof(string), "* You have adjusted the name of Rank %d to \"%s\".",rank,FamilyRank[family][rank-1]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
SaveFamilies();
return 1;
}
else if(strcmp(x_nr,"motd",true) == 0)
{
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust MOTD [MOTD Text]");
return 1;
}
if(InvalidChar(result) == 1)
{
SendClientMessage(playerid, COLOR_GREY, " ERROR: cannot contain invalid characters !");
return 1;
}
strmid(FamilyInfo[family][FamilyMOTD], result, 0, strlen(result), 255);
format(string, sizeof(string), "* You have adjusted your Family's MOTD to \"%s\".",FamilyInfo[family][FamilyMOTD]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
SaveFamilies();
}
else if(strcmp(x_nr,"safe",true) == 0)
{
x_nr = strtok(cmdtext, idx);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust safe [confirm]");
if(FamilyInfo[family][FamilySafe] != 0)
{
SendClientMessage(playerid, COLOR_GREY," Adjusting the position of your Family's Safe will cost $10,000 !");
SendClientMessage(playerid, COLOR_WHITE,"HINT: Adjusting the position of your Family's Safe will remove its contents.");
}
else
{
SendClientMessage(playerid, COLOR_GREY," Purchasing a Safe for your Family will cost $10,000 !");
SendClientMessage(playerid, COLOR_WHITE,"HINT: Purchasing a Safe will give your Family the ability to store/share Pot, Crack, Cash and Materials.");
}
return 1;
}
if(strcmp(x_nr,"confirm",true) == 0)
{
if(PlayerInfo[playerid][pCash] < 9999)
{
SendClientMessage(playerid, COLOR_GRAD1, " You don't have that much money !");
return 1;
}
if(FamilyInfo[family][FamilySafe] != 0)
{
SendClientMessage(playerid, COLOR_LIGHTBLUE, "* You have adjusted the position of your Family's Safe.");
}
else
{
SendClientMessage(playerid, COLOR_LIGHTBLUE, "* You have purchased a Safe.");
SendClientMessage(playerid, COLOR_WHITE, "HINT: Type /safehelp for more information.");
}
PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-10000;
GivePlayerMoney(playerid,-10000);
GetPlayerPos(playerid, FamilyInfo[family][FamilySafePos][0],FamilyInfo[family][FamilySafePos][1],FamilyInfo[family][FamilySafePos][2]);
DestroyPickup(FamilyInfo[family][PickupID]);
FamilyInfo[family][PickupID] = CreatePickup(1239, 23, FamilyInfo[family][FamilySafePos][0],FamilyInfo[family][FamilySafePos][1], FamilyInfo[family][FamilySafePos][2]);
FamilyInfo[family][FamilySafe] = 1;
FamilyInfo[family][FamilyCash] = 0;
FamilyInfo[family][FamilyPot] = 0;
FamilyInfo[family][FamilyCrack] = 0;
FamilyInfo[family][FamilyMats] = 0;
SaveFamilies();
return 1;
}
}
else if(strcmp(x_nr,"invite",true) == 0)
{
x_nr = strtok(cmdtext, idx);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust invite [playerid/PartOfName]");
return 1;
}
giveplayerid = ReturnUser(x_nr);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PlayerInfo[giveplayerid][pMember] > 0 || PlayerInfo[giveplayerid][pLeader] > 0 || PlayerInfo[giveplayerid][pFMember] != 255)
{
SendClientMessage(playerid, COLOR_GREY, " That player is already in a Faction / Family !");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "* You've invited %s to join %s.",giveplayer, FamilyInfo[family][FamilyName]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* %s has invited you to join %s, (type /accept family) to accept.",sendername, FamilyInfo[family][FamilyName]);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
FamilyOffer[giveplayerid] = playerid;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " That player is Offline !");
return 1;
}
}
else if(strcmp(x_nr,"uninvite",true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust uninvite [playerid/PartOfName]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust uninvite [playerid/PartOfName]");
return 1;
}
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PlayerInfo[giveplayerid][pFMember] != family)
{
SendClientMessage(playerid, COLOR_GREY, " That player is not in your Family !");
return 1;
}
if(PlayerInfo[giveplayerid][pRank] > PlayerInfo[playerid][pRank])
{
SendClientMessage(playerid, COLOR_GREY, " That player is a higher rank !");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "* You have kicked %s out of your Family.",giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* Family Leader %s has kicked you out of the Family.",sendername);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
PlayerInfo[giveplayerid][pFMember] = 255;
PlayerInfo[giveplayerid][pRank] = 0;
FamilyInfo[family][FamilyMembers] --;
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " That player is Offline !");
return 1;
}
}
else if(strcmp(x_nr,"rank",true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust rank [rank] [playerid/PartOfName]");
return 1;
}
new rank = strvalEx(tmp);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust rank [rank] [playerid/PartOfName]");
return 1;
}
if(rank < 1 || rank > 6) { SendClientMessage(playerid, COLOR_GREY, " Rank can't be below 1 or above 6 !"); return 1; }
tmp = strtok(cmdtext, idx);
if(!strlen(x_nr)) {
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust rank [rank] [playerid/PartOfName]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PlayerInfo[giveplayerid][pFMember] != family)
{
SendClientMessage(playerid, COLOR_GREY, " That player is not in your Family !");
return 1;
}
if(PlayerInfo[giveplayerid][pRank] >= PlayerInfo[playerid][pRank])
{
SendClientMessage(playerid, COLOR_GREY, " That player is a higher or the same rank !");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "* You have given %s Rank %d.",giveplayer,rank);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* Family Leader %s has given you Rank %d.",sendername,rank);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
PlayerInfo[giveplayerid][pRank] = rank;
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " That player is Offline !");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Invalid adjust name !");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Your rank is not high enough !");
return 1;
}
}
return 1;
}
|
Код:
}
if(strcmp(cmd, "/adjust", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pFMember] == 255)
{
SendClientMessage(playerid, COLOR_GREY, " You are not in a Family !");
return 1;
}
new family = PlayerInfo[playerid][pFMember];
if(PlayerInfo[playerid][pRank] > 4)
{
new x_nr[32];
x_nr = strtok(cmdtext, idx);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust [name]");
SendClientMessage(playerid, COLOR_GRAD1, "Available names: Name, MOTD, Invite, Uninvite, Rank, Safe, Rankname");
return 1;
}
if(strcmp(x_nr,"name",true) == 0)
{
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[24];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust name [name]");
return 1;
}
if(InvalidChar(result) == 1)
{
SendClientMessage(playerid, COLOR_GREY, " ERROR: cannot contain invalid characters !");
return 1;
}
strmid(FamilyInfo[family][FamilyName], result, 0, strlen(result), 255);
format(string, sizeof(string), "* You have adjusted your Family's Name to '%s'.",FamilyInfo[family][FamilyName]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
SaveFamilies();
}
else if(strcmp(x_nr,"rankname",true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust rankname [rank] [name]");
return 1;
}
new rank = strvalEx(tmp);
if(rank < 1 || rank > 6) { SendClientMessage(playerid, COLOR_GREY, " Rank can't be below 1 or above 6 !"); return 1; }
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[24];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust rankname [rank] [name]");
return 1;
}
if(InvalidChar(result) == 1)
{
SendClientMessage(playerid, COLOR_GREY, " ERROR: cannot contain invalid characters !");
return 1;
}
strmid(FamilyRank[family][rank-1], result, 0, strlen(result), 255);
format(string, sizeof(string), "* You have adjusted the name of Rank %d to \"%s\".",rank,FamilyRank[family][rank-1]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
SaveFamilies();
return 1;
}
else if(strcmp(x_nr,"motd",true) == 0)
{
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust MOTD [MOTD Text]");
return 1;
}
if(InvalidChar(result) == 1)
{
SendClientMessage(playerid, COLOR_GREY, " ERROR: cannot contain invalid characters !");
return 1;
}
strmid(FamilyInfo[family][FamilyMOTD], result, 0, strlen(result), 255);
format(string, sizeof(string), "* You have adjusted your Family's MOTD to \"%s\".",FamilyInfo[family][FamilyMOTD]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
SaveFamilies();
}
else if(strcmp(x_nr,"safe",true) == 0)
{
x_nr = strtok(cmdtext, idx);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust safe [confirm]");
if(FamilyInfo[family][FamilySafe] != 0)
{
SendClientMessage(playerid, COLOR_GREY," Adjusting the position of your Family's Safe will cost $10,000 !");
SendClientMessage(playerid, COLOR_WHITE,"HINT: Adjusting the position of your Family's Safe will remove its contents.");
}
else
{
SendClientMessage(playerid, COLOR_GREY," Purchasing a Safe for your Family will cost $10,000 !");
SendClientMessage(playerid, COLOR_WHITE,"HINT: Purchasing a Safe will give your Family the ability to store/share Pot, Crack, Cash and Materials.");
}
return 1;
}
if(strcmp(x_nr,"confirm",true) == 0)
{
if(PlayerInfo[playerid][pCash] < 9999)
{
SendClientMessage(playerid, COLOR_GRAD1, " You don't have that much money !");
return 1;
}
if(FamilyInfo[family][FamilySafe] != 0)
{
SendClientMessage(playerid, COLOR_LIGHTBLUE, "* You have adjusted the position of your Family's Safe.");
}
else
{
SendClientMessage(playerid, COLOR_LIGHTBLUE, "* You have purchased a Safe.");
SendClientMessage(playerid, COLOR_WHITE, "HINT: Type /safehelp for more information.");
}
PlayerInfo[playerid][pCash] = PlayerInfo[playerid][pCash]-10000;
GivePlayerMoney(playerid,-10000);
GetPlayerPos(playerid, FamilyInfo[family][FamilySafePos][0],FamilyInfo[family][FamilySafePos][1],FamilyInfo[family][FamilySafePos][2]);
DestroyPickup(FamilyInfo[family][PickupID]);
FamilyInfo[family][PickupID] = CreatePickup(1239, 23, FamilyInfo[family][FamilySafePos][0],FamilyInfo[family][FamilySafePos][1], FamilyInfo[family][FamilySafePos][2]);
FamilyInfo[family][FamilySafe] = 1;
FamilyInfo[family][FamilyCash] = 0;
FamilyInfo[family][FamilyPot] = 0;
FamilyInfo[family][FamilyCrack] = 0;
FamilyInfo[family][FamilyMats] = 0;
SaveFamilies();
return 1;
}
}
else if(strcmp(x_nr,"invite",true) == 0)
{
x_nr = strtok(cmdtext, idx);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust invite [playerid/PartOfName]");
return 1;
}
giveplayerid = ReturnUser(x_nr);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PlayerInfo[giveplayerid][pMember] > 0 || PlayerInfo[giveplayerid][pLeader] > 0 || PlayerInfo[giveplayerid][pFMember] != 255)
{
SendClientMessage(playerid, COLOR_GREY, " That player is already in a Faction / Family !");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "* You've invited %s to join %s.",giveplayer, FamilyInfo[family][FamilyName]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* %s has invited you to join %s, (type /accept family) to accept.",sendername, FamilyInfo[family][FamilyName]);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
FamilyOffer[giveplayerid] = playerid;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " That player is Offline !");
return 1;
}
}
else if(strcmp(x_nr,"uninvite",true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust uninvite [playerid/PartOfName]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust uninvite [playerid/PartOfName]");
return 1;
}
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PlayerInfo[giveplayerid][pFMember] != family)
{
SendClientMessage(playerid, COLOR_GREY, " That player is not in your Family !");
return 1;
}
if(PlayerInfo[giveplayerid][pRank] > PlayerInfo[playerid][pRank])
{
SendClientMessage(playerid, COLOR_GREY, " That player is a higher rank !");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "* You have kicked %s out of your Family.",giveplayer);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* Family Leader %s has kicked you out of the Family.",sendername);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
PlayerInfo[giveplayerid][pFMember] = 255;
PlayerInfo[giveplayerid][pRank] = 0;
FamilyInfo[family][FamilyMembers] --;
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " That player is Offline !");
return 1;
}
}
else if(strcmp(x_nr,"rank",true) == 0)
{
tmp = strtok(cmdtext, idx);
if(!strlen(x_nr))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust rank [rank] [playerid/PartOfName]");
return 1;
}
new rank = strvalEx(tmp);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust rank [rank] [playerid/PartOfName]");
return 1;
}
if(rank < 1 || rank > 6) { SendClientMessage(playerid, COLOR_GREY, " Rank can't be below 1 or above 6 !"); return 1; }
tmp = strtok(cmdtext, idx);
if(!strlen(x_nr)) {
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /adjust rank [rank] [playerid/PartOfName]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PlayerInfo[giveplayerid][pFMember] != family)
{
SendClientMessage(playerid, COLOR_GREY, " That player is not in your Family !");
return 1;
}
if(PlayerInfo[giveplayerid][pRank] >= PlayerInfo[playerid][pRank])
{
SendClientMessage(playerid, COLOR_GREY, " That player is a higher or the same rank !");
return 1;
}
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
format(string, sizeof(string), "* You have given %s Rank %d.",giveplayer,rank);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
format(string, sizeof(string), "* Family Leader %s has given you Rank %d.",sendername,rank);
SendClientMessage(giveplayerid, COLOR_LIGHTBLUE, string);
PlayerInfo[giveplayerid][pRank] = rank;
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " That player is Offline !");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Invalid adjust name !");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Your rank is not high enough !");
return 1;
}
}
return 1;
}
|