Canno't sell guns to myself
#1

Hello, I'd need some help with it, it's for the Guns dealer job. Well as you can see it says "you can not sell weapons to yourself" and I'd like it to allow me to sell guns to myself.

I've searched all around the Forum, ******, Wiki etc. and couldn't find anything. I'd be thankful to those who will help me.

Код:
if(giveplayerid == playerid)
					{
						SendClientMessage(playerid, COLOR_GREY, "[Error:] You can not sell weapons to yourself");
						return 1;
					}
Someone told me to simply remove it but it makes PAWNO crash when I comply.

Here is the script :


Код:
	if(strcmp(cmd,"/sellgun",true)==0)
  {
    if(IsPlayerConnected(playerid))
	  {
		  if (PlayerInfo[playerid][pJob] != 9)
			{
			  SendClientMessage(playerid,COLOR_GREY,"  You're not Gun 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(25) club (25) bat (25) cue (25) katana (50) knife (50) sdpistol(100) ");
				SendClientMessage(playerid, COLOR_GREY, "Weapons: shotgun(150) mp5(300) rifle(800) eagle(1200) ak47(1700) m4(1800) sniper (2500)");
				return 1;
			}
			giveplayerid = ReturnUser(tmp);
			if (IsPlayerConnected(giveplayerid))
			{
			  if(giveplayerid != INVALID_PLAYER_ID)
			  {
			    if (!ProxDetectorS(8.0, playerid, giveplayerid))
			    {
			      SendClientMessage(playerid, COLOR_WHITE, "You're not close to the player.");
			      return 1;
			    }
					x_weapon = strtok(cmdtext, idx);
					if(!strlen(x_weapon))
					{
						SendClientMessage(playerid, COLOR_GREEN, "________________________________________________");
						SendClientMessage(playerid, COLOR_WHITE, "*** Sell Guns ***");
						SendClientMessage(playerid, COLOR_GREY, "USAGE: /sellgun [playerid/PartOfName] [weaponname]");
						SendClientMessage(playerid, COLOR_GREY, "Weapons: flowers(25) club (25) bat (25) cue (25) katana (50) knife (50) sdpistol(100) ");
						SendClientMessage(playerid, COLOR_GREY, "Weapons: shotgun(150) mp5(300) rifle(800) eagle(1200) ak47(1700) m4(1800) sniper (2500)");
						SendClientMessage(playerid, COLOR_GREEN, "________________________________________________");
						return 1;
					}
				}
				if(strcmp(x_weapon,"knife",true) == 0) { if(PlayerInfo[playerid][pMats] > 49) { weapon[playerid] = 4; price[playerid] = 100; ammo[playerid] = 1; PlayerInfo[giveplayerid][pGun1] = 4; PlayerInfo[giveplayerid][pAmmo1] = 1; } else { SendClientMessage(playerid,COLOR_GREY,"  You haven't go enough materials!"); return 1; } }
				else if(strcmp(x_weapon,"club",true) == 0) { if(PlayerInfo[playerid][pMats] > 24) { weapon[playerid] = 3; price[playerid] = 100; ammo[playerid] = 1; PlayerInfo[giveplayerid][pGun1] = 3; PlayerInfo[giveplayerid][pAmmo1] = 1; } else { SendClientMessage(playerid,COLOR_GREY,"  You haven't go enough materials!"); return 1; } }
				else if(strcmp(x_weapon,"bat",true) == 0) { if(PlayerInfo[playerid][pMats] > 24) { weapon[playerid] = 5; price[playerid] = 100; ammo[playerid] = 1; PlayerInfo[giveplayerid][pGun1] = 5; PlayerInfo[giveplayerid][pAmmo1] = 1; } else { SendClientMessage(playerid,COLOR_GREY,"  You haven't go enough materials!"); return 1; } }
				else if(strcmp(x_weapon,"cue",true) == 0) { if(PlayerInfo[playerid][pMats] > 24) { weapon[playerid] = 7; price[playerid] = 100; ammo[playerid] = 1; PlayerInfo[giveplayerid][pGun1] = 7; PlayerInfo[giveplayerid][pAmmo1] = 1; } else { SendClientMessage(playerid,COLOR_GREY,"  You haven't go enough materials!"); return 1; } }
				else if(strcmp(x_weapon,"katana",true) == 0) { if(PlayerInfo[playerid][pMats] > 49) { weapon[playerid] = 8; price[playerid] = 100; ammo[playerid] = 1; PlayerInfo[giveplayerid][pGun1] = 8; PlayerInfo[giveplayerid][pAmmo1] = 1; } else { SendClientMessage(playerid,COLOR_GREY,"  You haven't go enough materials!"); return 1; } }
				else if(strcmp(x_weapon,"sdpistol",true) == 0) { if(PlayerInfo[playerid][pMats] > 99) { weapon[playerid] = 23; price[playerid] = 100; ammo[playerid] = 99999; PlayerInfo[giveplayerid][pGun2] = 23; PlayerInfo[giveplayerid][pAmmo2] = 99999; } else { SendClientMessage(playerid,COLOR_GREY,"  You haven't go enough materials!"); return 1; } }
				else if(strcmp(x_weapon,"flowers",true) == 0) { if(PlayerInfo[playerid][pMats] > 24) { weapon[playerid] = 14; price[playerid] = 25; ammo[playerid] = 1; PlayerInfo[giveplayerid][pGun1] = 14; PlayerInfo[giveplayerid][pAmmo1] = 1; } else { SendClientMessage(playerid,COLOR_GREY,"  You haven't go enough materials!"); return 1; } }
				else if(strcmp(x_weapon,"eagle",true) == 0) { if(PlayerInfo[playerid][pMats] > 1199) { weapon[playerid] = 24; price[playerid] = 150; ammo[playerid] = 99999; PlayerInfo[giveplayerid][pGun2] = 24; PlayerInfo[giveplayerid][pAmmo2] = 99999; } else { SendClientMessage(playerid,COLOR_GREY,"  Pas assez de matйriaux pour cette arme!"); return 1; } }
				else if(strcmp(x_weapon,"mp5",true) == 0) {	if(PlayerInfo[playerid][pMats] > 299) { weapon[playerid] = 29; price[playerid] = 200; ammo[playerid] = 99999; PlayerInfo[giveplayerid][pGun2] = 29; PlayerInfo[giveplayerid][pAmmo2] = 99999; } else { SendClientMessage(playerid,COLOR_GREY,"  You haven't go enough materials!"); return 1; } }
				else if(strcmp(x_weapon,"shotgun",true) == 0) {	if(PlayerInfo[playerid][pMats] > 149) { weapon[playerid] = 25; price[playerid] = 200; ammo[playerid] = 99999; PlayerInfo[giveplayerid][pGun2] = 25; PlayerInfo[giveplayerid][pAmmo2] = 99999; } else { SendClientMessage(playerid,COLOR_GREY,"  You haven't go enough materials!"); return 1; } }
				//else if(strcmp(x_weapon,"spas12",true) == 0) { if(PlayerInfo[playerid][pMats] > 599) { weapon[playerid] = 27; price[playerid] = 600; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 27; PlayerInfo[giveplayerid][pAmmo2] = 50; } else { SendClientMessage(playerid,COLOR_GREY,"  Not enough Materials for that Weapon!"); return 1; } }
				else if(strcmp(x_weapon,"ak47",true) == 0) { if(PlayerInfo[playerid][pMats] > 1699) { weapon[playerid] = 30; price[playerid] = 600; ammo[playerid] = 99999; PlayerInfo[giveplayerid][pGun2] = 30; PlayerInfo[giveplayerid][pAmmo2] = 99999; } else { SendClientMessage(playerid,COLOR_GREY,"  You haven't go enough materials!"); return 1; } }
				else if(strcmp(x_weapon,"m4",true) == 0) { if(PlayerInfo[playerid][pMats] > 1799) { weapon[playerid] = 31; price[playerid] = 600; ammo[playerid] = 99999; PlayerInfo[giveplayerid][pGun2] = 31; PlayerInfo[giveplayerid][pAmmo2] = 99999; } else { SendClientMessage(playerid,COLOR_GREY,"  You haven't go enough materials!"); return 1; } }
				else if(strcmp(x_weapon,"sniper",true) == 0) { if(PlayerInfo[playerid][pMats] > 2499) { weapon[playerid] = 34; price[playerid] = 600; ammo[playerid] = 99999; PlayerInfo[giveplayerid][pGun2] = 34; PlayerInfo[giveplayerid][pAmmo2] = 99999; } else { SendClientMessage(playerid,COLOR_GREY,"  You haven't go enough materials!"); return 1; } }
				else if(strcmp(x_weapon,"rifle",true) == 0) { if(PlayerInfo[playerid][pMats] > 799) { weapon[playerid] = 33; price[playerid] = 600; ammo[playerid] = 99999; PlayerInfo[giveplayerid][pGun2] = 33; PlayerInfo[giveplayerid][pAmmo2] = 99999; } else { SendClientMessage(playerid,COLOR_GREY,"  You haven't go enough materials!"); return 1; } }
		  	else { SendClientMessage(playerid,COLOR_GREY,"  Invalid weapon name !"); return 1; }
				if (ProxDetectorS(5.0, playerid, giveplayerid))
				{
    			if(giveplayerid == playerid)
					{
						SendClientMessage(playerid, COLOR_GRAD1, "  You can not sell Guns to yourself!");
						return 1;
					}
					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), "  Vous avez vendu а %s, un %s avec %d munitions, pour %d Matйriaux.", 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), "  Vous avez reзu un %s avec %d munitions par %s.", x_weapon, ammo[playerid], sendername);
					SendClientMessage(giveplayerid, COLOR_GRAD1, string);
					PlayerPlaySound(giveplayerid, 1052, 0.0, 0.0, 0.0);
					new gunname[100];
					GetWeaponName(weapon[playerid], gunname, sizeof(gunname));
					format(string, sizeof(string), "* %s a crййe une arme а partir de ses matйriaux, et la donne а %s.", sendername ,giveplayer);
					ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
					SafeGivePlayerWeapon(giveplayerid,weapon[playerid],ammo[playerid]);
					PlayerInfo[playerid][pMats] -= price[playerid];
				}
				else
				{
					SendClientMessage(playerid, COLOR_GRAD1, "  You're to far.");
					return 1;
				}
			}
			else
			{
				format(string, sizeof(string), "  %d is not an active player.", giveplayerid);
				SendClientMessage(playerid, COLOR_GRAD1, string);
			}
		}
		return 1;
Reply
#2

Problem fixed.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)