rendered paste body if(strcmp(cmd, "/give", true) == 0)
{
if(IsPlayerConnected(playerid))
{
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
new amount = strval(tmp);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_LIGHTRED, "USAGE: /give [playerid/PartOfName] [name] [amount].");
SendClientMessage(playerid, COLOR_LIGHTBLUE, "Available Names: Mats, Drugs, Gun.");
return 1;
}
new x_nr[256];
x_nr = strtok(cmdtext, idx);
if(!strlen(x_nr)) {
SendClientMessage(playerid, COLOR_LIGHTRED, "USAGE: /give [playerid/PartOfName] [name] [amount].");
SendClientMessage(playerid, COLOR_LIGHTBLUE, "Available Names: Mats, Drugs, Gun.");
return 1;
}
if(giveplayerid == playerid) { SendClientMessage(playerid, COLOR_LIGHTRED, "You cannot give anything to yourself!"); return 1; }
if (IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PlayerInfo[giveplayerid][pLocal] == 106)
{
SendClientMessage(playerid, COLOR_LIGHTRED, "That command is NOT allowed in this location!");
return 1;
}
if(strcmp(x_nr,"mats",true) == 0)//Detective
{
if (ProxDetectorS(5.0, playerid, giveplayerid))
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
if(amount < 1 || amount > 999999)
{
SendClientMessage(playerid, COLOR_LIGHTRED, "You can't go below 1, or above 999999 at once.");
return 1;
}
new mats = PlayerInfo[playerid][pMats];
if (amount > 0 && mats >= amount)
{
PlayerInfo[giveplayerid][pMats] += amount;
format(string, sizeof(string), "You have given %s %d materials.", giveplayer, amount);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
SendClientMessage(playerid, COLOR_GREEN, string);
format(string, sizeof(string), "You have received %d materials from %s.", amount, sendername);
SendClientMessage(giveplayerid, COLOR_GREEN, string);
format(string, sizeof(string), "%s has given %d materials to %s.", sendername, amount, giveplayer);
PayLog(string);
PlayerPlaySound(giveplayerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "* %s takes a stack of materials out of his pocket, and hands it to %s.", sendername, giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
}
}
if(strcmp(x_nr,"drugs",true) == 0)//Detective
{
if (ProxDetectorS(5.0, playerid, giveplayerid))
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new drugs = PlayerInfo[playerid][pDrugs];
if(amount < 1 || amount > 999999)
{
SendClientMessage(playerid, COLOR_LIGHTRED, "You can't go below 1, or above 999999 at once.");
return 1;
}
if (amount > 0 && drugs >= amount)
{
PlayerInfo[giveplayerid][pDrugs] += amount;
format(string, sizeof(string), "You have given %s %d drugs.", giveplayer, amount);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
SendClientMessage(playerid, COLOR_GREEN, string);
format(string, sizeof(string), "You have received %d drugs from %s.", amount, sendername);
SendClientMessage(giveplayerid, COLOR_GREEN, string);
format(string, sizeof(string), "%s has given %d drugs to %s.", sendername, amount, giveplayer);
PayLog(string);
PlayerPlaySound(giveplayerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "* %s takes some drugs out of his pocket, and hands it to %s.", sendername, giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
else
{
SendClientMessage(playerid, COLOR_LIGHTRED, "You don't have enough Drugs to give!");
}
}
else
{
SendClientMessage(playerid, COLOR_LIGHTRED, "You are too far away!");
}
}//invalid id
}
else
{
format(string, sizeof(string), "%d is not an active player.", giveplayerid);
SendClientMessage(playerid, COLOR_LIGHTRED, string);
}
}
}
}