28.04.2008, 10:44
Ok i use GF Script.
I moded the job to work only for gangs.
here is the script i wrote:
/materials
/sellgun:
and when i go to the point to get the Matts and type: /materials get 10 it writes that i am not an Arms dealer. but i am the Gang LEADER.
Why is that?
Can someone help me?
I moded the job to work only for gangs.
here is the script i wrote:
/materials
Код:
if(strcmp(cmd,"/materials",true)==0)
{
if(IsPlayerConnected(playerid))
{
if (PlayerInfo[playerid][pMember] == 5 || PlayerInfo[playerid][pLeader] == 5 || PlayerInfo[playerid][pMember] == 13 || PlayerInfo[playerid][pLeader] == 13 || PlayerInfo[playerid][pMember] == 6 || PlayerInfo[playerid][pLeader] == 6 || PlayerInfo[playerid][pMember] == 14 || PlayerInfo[playerid][pLeader] == 14 )
{
SendClientMessage(playerid,COLOR_GREY," You are not a Arms Dealer !");
return 1;
}
new x_nr[256];
x_nr = strtok(cmdtext, idx);
if(!strlen(x_nr)) {
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /materials [name]");
SendClientMessage(playerid, COLOR_WHITE, "Available names: Get, Deliver.");
return 1;
}
if(strcmp(x_nr,"get",true) == 0)
{
if(PlayerToPoint(3.0,playerid,-1826.4905,1455.6202,7.1875))
{
if(MatsHolding[playerid] >= 30)
{
SendClientMessage(playerid, COLOR_GREY, " You can't hold any more Materials Packages !");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp)) {
SendClientMessage(playerid, COLOR_WHITE, "USAGE: /materials get [ammount]");
return 1;
}
moneys = strval(tmp);
if(moneys < 1 || moneys > 10) { SendClientMessage(playerid, COLOR_GREY, " Package Number can't be below 1 or higher then 30 !"); return 1; }
new price = moneys * 100;
if(GetPlayerMoney(playerid) > price)
{
format(string, sizeof(string), "* You bought %d Materials Packages for $%d.", moneys, price);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
GivePlayerMoney(playerid, - price);
MatsHolding[playerid] = moneys;
}
else
{
format(string, sizeof(string), " You can't afford the $%d !", price);
SendClientMessage(playerid, COLOR_GREY, string);
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " You are not at the Materials Package Building in Los Santos !");
return 1;
}
}
else if(strcmp(x_nr,"deliver",true) == 0)
{
if(PlayerToPoint(3.0,playerid,-2140.8992,-248.4330,36.5156))
{
if(MatsHolding[playerid] > 0)
{
new payout = (50)*(MatsHolding[playerid]);
format(string, sizeof(string), "* The Factory gave you %d Materials for your %d Materials Packages.", payout, MatsHolding[playerid]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
PlayerInfo[playerid][pMats] += payout;
MatsHolding[playerid] = 0;
}
else
{
SendClientMessage(playerid, COLOR_GREY, " You don't have any Materials Packages !");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " You are not at the Materials Factory in San Fierro !");
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GREY, " Invalid Materials Name !");
return 1;
}
}
return 1;
}
Код:
if(strcmp(cmd,"/sellgun",true)==0)
{
if(IsPlayerConnected(playerid))
{
if (PlayerInfo[playerid][pMember] == 5 || PlayerInfo[playerid][pLeader] == 5 || PlayerInfo[playerid][pMember] == 13 || PlayerInfo[playerid][pLeader] == 13 || PlayerInfo[playerid][pMember] == 6 || PlayerInfo[playerid][pLeader] == 6 || PlayerInfo[playerid][pMember] == 14 || PlayerInfo[playerid][pLeader] == 14 )
{
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);
new randommats = random(2);
new flowerbmmats = 50/randommats;
new sdpistolbmmats = 100/randommats;
new deaglebmmats = 150/randommats;
new mp5shotbmmats = 200/randommats;
new m4akriflebmmats = 600/randommats;
new rpgsniperbmmats = 1000/randommats;
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /sellgun [playerid/PartOfName] [weaponname]");
SendClientMessage(playerid, COLOR_GREEN, "_____Street Weapons:_____________________");
SendClientMessage(playerid, COLOR_GREY, "Weapons: flowers(50) sdpistol(100) deagle(150) mp5(200) shotgun(200)");
SendClientMessage(playerid, COLOR_GREEN, "_____Black Market Weapons:_______________");
SendClientMessage(playerid, COLOR_GREY, "Weapons: ak47(600) m4(600) rifle(600) RPG(1000) Sniper(1000)");
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, "_____Street Weapons:_____________________");
SendClientMessage(playerid, COLOR_GREY, "Weapons: flowers(50) sdpistol(100) deagle(150) mp5(200) shotgun(200)");
SendClientMessage(playerid, COLOR_GREEN, "_____Black Market Weapons:_______________");
SendClientMessage(playerid, COLOR_GREY, "Weapons: ak47(600) m4(600) rifle(600) RPG(1000) Sniper(1000)");
return 1;
}
}
if(PlayerToPoint(5.0,playerid,-2145.5586,-231.1469,36.5156)) {
if(strcmp(x_weapon,"sdpistol",true) == 0) { if(PlayerInfo[playerid][pMats] >= sdpistolbmmats) { weapon[playerid] = 23; price[playerid] = sdpistolbmmats; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 23; PlayerInfo[giveplayerid][pAmmo2] = 50; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"flowers",true) == 0) { if(PlayerInfo[playerid][pMats] >= flowerbmmats) { weapon[playerid] = 14; price[playerid] = flowerbmmats; 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,"deagle",true) == 0) { if(PlayerInfo[playerid][pMats] >= deaglebmmats) { weapon[playerid] = 24; price[playerid] = deaglebmmats; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 24; PlayerInfo[giveplayerid][pAmmo2] = 50; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"mp5",true) == 0) { if(PlayerInfo[playerid][pMats] >= mp5shotbmmats) { weapon[playerid] = 29; price[playerid] = mp5shotbmmats; ammo[playerid] = 200; PlayerInfo[giveplayerid][pGun2] = 29; PlayerInfo[giveplayerid][pAmmo2] = 200; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"shotgun",true) == 0) { if(PlayerInfo[playerid][pMats] >= mp5shotbmmats) { weapon[playerid] = 25; price[playerid] = mp5shotbmmats; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 25; 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] >= m4akriflebmmats) { weapon[playerid] = 30; price[playerid] = m4akriflebmmats; ammo[playerid] = 250; PlayerInfo[giveplayerid][pGun2] = 30; PlayerInfo[giveplayerid][pAmmo2] = 250; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"m4",true) == 0) { if(PlayerInfo[playerid][pMats] >= m4akriflebmmats) { weapon[playerid] = 31; price[playerid] = m4akriflebmmats; ammo[playerid] = 250; PlayerInfo[giveplayerid][pGun2] = 31; PlayerInfo[giveplayerid][pAmmo2] = 250; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"rifle",true) == 0) { if(PlayerInfo[playerid][pMats] >= m4akriflebmmats) { weapon[playerid] = 33; price[playerid] = m4akriflebmmats; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 33; PlayerInfo[giveplayerid][pAmmo2] = 50; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"rpg",true) == 0) { if(PlayerInfo[playerid][pMats] >= rpgsniperbmmats) { weapon[playerid] = 35; price[playerid] = rpgsniperbmmats; ammo[playerid] = 5; PlayerInfo[giveplayerid][pGun2] = 35; PlayerInfo[giveplayerid][pAmmo2] = 5; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"sniper",true) == 0) { if(PlayerInfo[playerid][pMats] >= rpgsniperbmmats) { weapon[playerid] = 34; price[playerid] = rpgsniperbmmats; ammo[playerid] = 20; PlayerInfo[giveplayerid][pGun2] = 34; PlayerInfo[giveplayerid][pAmmo2] = 20; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else { SendClientMessage(playerid,COLOR_GREY," Invalid Weapon name!"); return 1; }
} else {
if(strcmp(x_weapon,"sdpistol",true) == 0) { if(PlayerInfo[playerid][pMats] > 99) { weapon[playerid] = 23; price[playerid] = 100; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 23; PlayerInfo[giveplayerid][pAmmo2] = 50; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"flowers",true) == 0) { if(PlayerInfo[playerid][pMats] > 49) { weapon[playerid] = 14; price[playerid] = 50; 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,"deagle",true) == 0) { if(PlayerInfo[playerid][pMats] > 199) { weapon[playerid] = 24; price[playerid] = 150; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 24; PlayerInfo[giveplayerid][pAmmo2] = 50; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"mp5",true) == 0) { if(PlayerInfo[playerid][pMats] > 199) { weapon[playerid] = 29; price[playerid] = 200; ammo[playerid] = 200; PlayerInfo[giveplayerid][pGun2] = 29; PlayerInfo[giveplayerid][pAmmo2] = 200; } else { SendClientMessage(playerid,COLOR_GREY," Not enough Materials for that Weapon!"); return 1; } }
else if(strcmp(x_weapon,"shotgun",true) == 0) { if(PlayerInfo[playerid][pMats] > 199) { weapon[playerid] = 25; price[playerid] = 200; ammo[playerid] = 50; PlayerInfo[giveplayerid][pGun2] = 25; 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) { SendClientMessage(playerid,COLOR_GREY," You can't sell that weapon here!"); return 1; }
else if(strcmp(x_weapon,"m4",true) == 0) { SendClientMessage(playerid,COLOR_GREY," You can't sell that weapon here!"); return 1; }
else if(strcmp(x_weapon,"rifle",true) == 0) { SendClientMessage(playerid,COLOR_GREY," You can't sell that weapon here!"); return 1; }
else if(strcmp(x_weapon,"rpg",true) == 0) { SendClientMessage(playerid,COLOR_GREY," You can't sell that weapon here!"); return 1; }
else if(strcmp(x_weapon,"sniper",true) == 0) { SendClientMessage(playerid,COLOR_GREY," You can't sell that weapon here!"); 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), " 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_PURPLE,COLOR_PURPLE);
GivePlayerWeapon(giveplayerid,weapon[playerid],ammo[playerid]);
PlayerInfo[playerid][pMats] -= 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;
}
Why is that?
Can someone help me?

