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); } } } }