HELP WITH armdealer system
#1

How do i make it so arms dealer have diffrent levels and certain levels can sell certain guns like on szr gta

here is my code
PAWNO:
if(strcmp(cmd,"/sellgun",true)==0)
{
if(IsPlayerConnected(playerid))
{
if (PlayerInfo[playerid][pJob] != 9)
{
SendClientMessage(playerid,COLOR_GREY," You are not a Arms Dealer !");
return 1;
}
new x_weapon[256],weapon[MAX_PLAYERS],ammo[MAX_PLAYERS],price[MAX_PLAYERS];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /sellgun [playerid/PartOfName] [weaponname]");
SendClientMessage(playerid, COLOR_GREY, "Weapons: flowers A(25) sdpistol A(100)Deagle A(1000)B(1000) mp5 C(250) shotgun B(500)");
SendClientMessage(playerid, COLOR_GREY, "Weapons: ak47 A(1500)C (500) m4 C(2000) rifle A(1500) spas12 C(2000)B(2000");
return 1;
}
giveplayerid = ReturnUser(tmp);
if (IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
x_weapon = strtok(cmdtext, idx);
if(!strlen(x_weapon))
{
SendClientMessage(playerid, COLOR_GREEN, "________________________________________________" );
SendClientMessage(playerid, COLOR_WHITE, "*** Sell Guns ***");
SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /sellgun [playerid/PartOfName] [weaponname]");
SendClientMessage(playerid, COLOR_GREY, "Weapons: flowers A(25) sdpistol A(100)Deagle B(1000) mp5 C(250) shotgun B(500)");
SendClientMessage(playerid, COLOR_GREY, "Weapons: ak47 A(1500) m4 C(2000) rifle A(1500) spas12 C(2000)");
SendClientMessage(playerid, COLOR_GREEN, "________________________________________________" );
return 1;
}
}
//if(strcmp(x_weapon,"knife",true) == 0) { if(PlayerInfo[playerid][pMats] > 99) { weapon[playerid] = 4; price[playerid] = 100; ammo[playerid] = 1; PlayerInfo[giveplayerid][pGun1] = 4; PlayerInfo[giveplayerid][pAmmo1] = 1; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
if(strcmp(x_weapon,"sdpistol",true) == 0) { if(PlayerInfo[playerid][pMatsA] > 99) { weapon[playerid] = 23; price[playerid] = 100; ammo[playerid] = 9999; PlayerInfo[giveplayerid][pGun2] = 23; PlayerInfo[giveplayerid][pAmmo2] = 9999; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"flowers",true) == 0) { if(PlayerInfo[playerid][pMatsA] > 24) { weapon[playerid] = 14; price[playerid] = 25; ammo[playerid] = 1; PlayerInfo[giveplayerid][pGun1] = 14; PlayerInfo[giveplayerid][pAmmo1] = 1; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"mp5",true) == 0) { if(PlayerInfo[playerid][pMatsC] > 249) { weapon[playerid] = 29; price[playerid] = 250; ammo[playerid] = 9999; PlayerInfo[giveplayerid][pGun2] = 29; PlayerInfo[giveplayerid][pAmmo2] = 9999; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"shotgun",true) == 0) { if(PlayerInfo[playerid][pMatsB] > 499) { weapon[playerid] = 25; price[playerid] = 500; ammo[playerid] = 9999; PlayerInfo[giveplayerid][pGun2] = 25; PlayerInfo[giveplayerid][pAmmo2] = 9999; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"spas12",true) == 0) { if(PlayerInfo[playerid][pMatsC] > 1999) { weapon[playerid] = 27; price[playerid] = 2000; ammo[playerid] = 9999; PlayerInfo[giveplayerid][pGun2] = 27; PlayerInfo[giveplayerid][pAmmo2] = 9999; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"ak47",true) == 0) { if(PlayerInfo[playerid][pMatsA] > 1499) { weapon[playerid] = 30; price[playerid] = 1500; ammo[playerid] = 9999; PlayerInfo[giveplayerid][pGun2] = 30; PlayerInfo[giveplayerid][pAmmo2] = 9999; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"m4",true) == 0) { if(PlayerInfo[playerid][pMatsC] > 1999) { weapon[playerid] = 31; price[playerid] = 2000; ammo[playerid] = 9999; PlayerInfo[giveplayerid][pGun2] = 31; PlayerInfo[giveplayerid][pAmmo2] = 9999; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"rifle",true) == 0) { if(PlayerInfo[playerid][pMatsA] > 1499) { weapon[playerid] = 33; price[playerid] = 1500; ammo[playerid] = 9999; PlayerInfo[giveplayerid][pGun2] = 33; PlayerInfo[giveplayerid][pAmmo2] = 9999; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"Deagle",true) == 0) { if(PlayerInfo[playerid][pMatsB] > 999) { weapon[playerid] = 24; price[playerid] = 1000; ammo[playerid] = 9999; PlayerInfo[giveplayerid][pGun2] = 24; PlayerInfo[giveplayerid][pAmmo2] = 9999; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else { SendClientMessage(playerid,COLOR_GREY," Invalid Weapon name!"); return 1; }
if (ProxDetectorS(5.0, playerid, giveplayerid))
{
if(PlayerInfo[playerid][pMiserPerk] > 0)
{
new skill = 2 * PlayerInfo[playerid][pMiserPerk];
new mats = price[playerid] / 100;
price[playerid] -= (mats)*(skill);
}
ConsumingMoney[playerid] = 1;
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), " You have given %s, a %s with %d ammo, for %d Materials.", giveplayer,x_weapon, ammo[playerid], price[playerid]);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
SendClientMessage(playerid, COLOR_GRAD1, string);
format(string, sizeof(string), " You have recieved a %s with %d ammo from %s.", x_weapon, ammo[playerid], sendername);
SendClientMessage(giveplayerid, COLOR_GRAD1, string);
PlayerPlaySound(giveplayerid, 1052, 0.0, 0.0, 0.0);
format(string, sizeof(string), "* %s created a Gun from Materials, and hands it to %s.", sendername ,giveplayer);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPL E,COLOR_PURPLE);
GivePlayerWeapon(giveplayerid,weapon[playerid],ammo[playerid]);
PlayerInfo[playerid][pMatsA] -= price[playerid];
PlayerInfo[playerid][pMatsB] -= price[playerid];
PlayerInfo[playerid][pMatsC] -= price[playerid];
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, " Your too far away.");
return 1;
}
}
else
{
format(string, sizeof(string), " %d is not an active player.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
return 1;
}
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)