EDIT: Alright I think I figured what's causing this. Maybe it's the actual command who does this. Anyone can take a quick look at these? Again, the problem is that every player recieves the bought vehicle into his own statstics instead of the actual buyer.
PHP код:
if(strcmp(cmd, "/buyvehicle", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!IsAtDealership(playerid))
{
return 1;
}
if(!strlen(tmp))
{
if(PlayerToPoint(3.0, playerid,2130.7195,-1147.0983,24.3918))
{
SendClientMessage(playerid,COLOR_YELLOW2,"BMX (25000) (481), Faggio (45000) (462), Freeway (50000) (463), Clover (65000) (542)");
SendClientMessage(playerid,COLOR_YELLOW2,"Sanchez (70000) (468), PCJ-600 (75000) (461), Majestic (79000) (517), Tahoma (80000) (566)");
SendClientMessage(playerid,COLOR_YELLOW2,"Picador (80000) (600), Voodoo (85000) (412), Sabre (90000) (475), Buccaneer (90000) (518)");
SendClientMessage(playerid,COLOR_YELLOW2,"Bobcat (100000) (422), Mesa (100000) (500), Tornado (100000) (576)");
SendClientMessage(playerid,COLOR_YELLOW2,"Hermes (100000) (474), Greenwood (110000) (492), Blade (120000) (536), Merit (120000) (551)");
SendClientMessage(playerid,COLOR_YELLOW2,"Feltzer (120000) (533), Sentinel (130000) (405), Stratum (130000) (561), Premier (130000) (426)");
SendClientMessage(playerid,COLOR_YELLOW2,"Washington (130000) (421), Broadway (140000) (575), Remmington (140000) (534)");
SendClientMessage(playerid,COLOR_YELLOW2,"Sunrise (150000) (550), Burrito (150000) (482), Glendale (150000) (466), Stallion (155000) (439)");
SendClientMessage(playerid,COLOR_YELLOW2,"Savanna (160000) (567), Landstalker (165000) (400), Slamvan (200000) (535), Yosemite (200000) (554)");
SendClientMessage(playerid,COLOR_YELLOW2,"Admiral (200000) (445), Virgo (210000) (491), Stafford (215000) (580)");
SendClientMessage(playerid,COLOR_YELLOW,"Glendale Shit (50000} (604), Camper (70000) (483), FCR-900 (75000) (521), Super GT (450000) (506)");
SendClientMessage(playerid,COLOR_YELLOW,"Hustler (125000) (545), Vincent (78000) (540), Blista Compact (160000) (496)");
SendClientMessage(playerid,COLOR_YELLOW,"Regina (120000) (479), Phoenix (310000) (603), Emperor (150000) (585), Tampa (100000) (549)");
SendClientMessage(playerid,COLOR_YELLOW,"Primo (165000) (547), Intruder (120000) (546), Willard (130000) (529), Cadrona (150000) (527)");
SendClientMessage(playerid,COLOR_YELLOW,"Fortune (130000) (526), Nebula (120000) (516), Bike (35000) (509), Previon (70000) (436)");
}
else if(PlayerToPoint(3.0, playerid,535.0407,-1290.8215,17.1243))
{
SendClientMessage(playerid,COLOR_YELLOW2,"Rancher (240000) (489), Stallion (220000) (439) Huntley (275000) (579), Alpha (170000) (602), Windsor (200000) (555)");
SendClientMessage(playerid,COLOR_YELLOW2,"Club (200000) (589), Buffalo (200000) (402), Uranus (245000) (558), Elegy (300000) (562)");
SendClientMessage(playerid,COLOR_YELLOW2,"Flash (300000) (565), ZR-350 (300000) (477), Jester (440000) (559), Comet (480000) (480)");
SendClientMessage(playerid,COLOR_YELLOW2,"Cheetah (500000) (415), Sultan (575000) (560), NRG-500 (600000) (522), Banshee (670000) (429)");
SendClientMessage(playerid,COLOR_YELLOW2,"Bullet (700000) (541), Turismo (700000) (451), Infernus (720000) (411)");
}
else if(PlayerToPoint(3.0, playerid,1925.2889,-2261.9919,13.5469))
{
SendClientMessage(playerid,COLOR_YELLOW2,"Sparrow (500000) (469), Cropduster (700000) (512), Dodo (750000) (593), Rustler (800000) (476)");
SendClientMessage(playerid,COLOR_YELLOW2,"Leviathan (850000) (417), Maverick (900000) (487), Beagle (1000000) (511), Stunt (1500000) (513)");
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "You aren't near enough to a dealership pickup.");
return 1;
}
SendClientMessage(playerid, COLOR_GRAD2, "{33CCFF}USAGE:{FFFFFF} /buyvehicle [ModelID] [ColorID] [ColorID]");
return 1;
}
new vehicle;
vehicle = strval(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "{33CCFF}USAGE:{FFFFFF} /buyvehicle [ModelID] [ColorID] [ColorID]");
return 1;
}
new color1;
color1 = strval(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "{33CCFF}USAGE:{FFFFFF} /buyvehicle [ModelID] [ColorID] [ColorID]");
return 1;
}
new color2;
color2 = strval(tmp);
new vehicleprice;
if(color1 < 0 && color1 > 126)
{
SendClientMessage(playerid, COLOR_GREY, " Wrong color id!");
return 1;
}
if(color2 < 0 && color2 > 126)
{
SendClientMessage(playerid, COLOR_GREY, " Wrong color id!");
return 1;
}
if(PlayerToPoint(3.0, playerid,2130.7195,-1147.0983,24.3918))
{
if(vehicle == 481) { vehicleprice = 25000; }
else if(vehicle == 426) { vehicleprice = 130000; }
else if(vehicle == 542) { vehicleprice = 60000; }
else if(vehicle == 462) { vehicleprice = 45000; }
else if(vehicle == 463) { vehicleprice = 50000; }
else if(vehicle == 468) { vehicleprice = 70000; }
else if(vehicle == 461) { vehicleprice = 75000; }
else if(vehicle == 517) { vehicleprice = 79000; }
else if(vehicle == 566) { vehicleprice = 80000; }
else if(vehicle == 600) { vehicleprice = 80000; }
else if(vehicle == 412) { vehicleprice = 85000; }
else if(vehicle == 475) { vehicleprice = 90000; }
else if(vehicle == 518) { vehicleprice = 90000; }
else if(vehicle == 422) { vehicleprice = 100000; }
else if(vehicle == 500) { vehicleprice = 100000; }
else if(vehicle == 576) { vehicleprice = 100000; }
else if(vehicle == 474) { vehicleprice = 100000; }
else if(vehicle == 492) { vehicleprice = 110000; }
else if(vehicle == 536) { vehicleprice = 120000; }
else if(vehicle == 551) { vehicleprice = 120000; }
else if(vehicle == 533) { vehicleprice = 120000; }
else if(vehicle == 405) { vehicleprice = 130000; }
else if(vehicle == 561) { vehicleprice = 130000; }
else if(vehicle == 421) { vehicleprice = 130000; }
else if(vehicle == 575) { vehicleprice = 140000; }
else if(vehicle == 534) { vehicleprice = 140000; }
else if(vehicle == 550) { vehicleprice = 150000; }
else if(vehicle == 482) { vehicleprice = 150000; }
else if(vehicle == 466) { vehicleprice = 150000; }
else if(vehicle == 567) { vehicleprice = 160000; }
else if(vehicle == 400) { vehicleprice = 165000; }
else if(vehicle == 535) { vehicleprice = 200000; }
else if(vehicle == 554) { vehicleprice = 200000; }
else if(vehicle == 445) { vehicleprice = 200000; }
else if(vehicle == 491) { vehicleprice = 210000; }
else if(vehicle == 580) { vehicleprice = 215000; }
else if(vehicle == 604) { vehicleprice = 50000; }
else if(vehicle == 483) { vehicleprice = 70000; }
else if(vehicle == 521) { vehicleprice = 75000; }
else if(vehicle == 540) { vehicleprice = 78000; }
else if(vehicle == 545) { vehicleprice = 125000; }
else if(vehicle == 496) { vehicleprice = 160000; }
else if(vehicle == 479) { vehicleprice = 120000; }
else if(vehicle == 439) { vehicleprice = 155000; }
else if(vehicle == 603) { vehicleprice = 310000; }
else if(vehicle == 585) { vehicleprice = 150000; }
else if(vehicle == 549) { vehicleprice = 100000; }
else if(vehicle == 547) { vehicleprice = 165000; }
else if(vehicle == 546) { vehicleprice = 120000; }
else if(vehicle == 529) { vehicleprice = 130000; }
else if(vehicle == 527) { vehicleprice = 150000; }
else if(vehicle == 526) { vehicleprice = 130000; }
else if(vehicle == 516) { vehicleprice = 120000; }
else if(vehicle == 509) { vehicleprice = 35000; }
else if(vehicle == 506) { vehicleprice = 450000; }
else if(vehicle == 436) { vehicleprice = 70000; }
else { SendClientMessage(playerid,COLOR_GREY," Invalid ModelID !"); return 1; }
}
else if(PlayerToPoint(3.0, playerid,535.0407,-1290.8215,17.1243))
{
if(vehicle == 489) { vehicleprice = 240000; }
else if(vehicle == 439) { vehicleprice = 220000; }
else if(vehicle == 579) { vehicleprice = 275000; }
else if(vehicle == 602) { vehicleprice = 170000; }
else if(vehicle == 555) { vehicleprice = 200000; }
else if(vehicle == 402) { vehicleprice = 200000; }
else if(vehicle == 558) { vehicleprice = 245000; }
else if(vehicle == 589) { vehicleprice = 200000; }
else if(vehicle == 562) { vehicleprice = 300000; }
else if(vehicle == 565) { vehicleprice = 300000; }
else if(vehicle == 477) { vehicleprice = 300000; }
else if(vehicle == 559) { vehicleprice = 440000; }
else if(vehicle == 480) { vehicleprice = 480000; }
else if(vehicle == 415) { vehicleprice = 500000; }
else if(vehicle == 560) { vehicleprice = 575000; }
else if(vehicle == 522) { vehicleprice = 600000; }
else if(vehicle == 429) { vehicleprice = 670000; }
else if(vehicle == 541) { vehicleprice = 700000; }
else if(vehicle == 451) { vehicleprice = 700000; }
else if(vehicle == 411) { vehicleprice = 720000; }
else { SendClientMessage(playerid,COLOR_GREY," Invalid ModelID !"); return 1; }
}
else if(PlayerToPoint(3.0, playerid,1925.2889,-2261.9919,13.5469))
{
if(vehicle == 469) { vehicleprice = 500000; }
else if(vehicle == 512) { vehicleprice = 700000; }
else if(vehicle == 593) { vehicleprice = 750000; }
else if(vehicle == 467) { vehicleprice = 800000; }
else if(vehicle == 417) { vehicleprice = 850000; }
else if(vehicle == 487) { vehicleprice = 900000; }
else if(vehicle == 511) { vehicleprice = 1000000; }
else if(vehicle == 513) { vehicleprice = 1500000; }
else { SendClientMessage(playerid,COLOR_GREY," Invalid ModelID !"); return 1; }
}
else if(PlayerToPoint(3.0, playerid,2941.5188,-2051.4182,3.5480))
{
if(vehicle == 473) { vehicleprice = 400000; }
else if(vehicle == 453) { vehicleprice = 500000; }
else if(vehicle == 454) { vehicleprice = 600000; }
else if(vehicle == 452) { vehicleprice = 700000; }
else if(vehicle == 446) { vehicleprice = 750000; }
else if(vehicle == 493) { vehicleprice = 800000; }
else { SendClientMessage(playerid,COLOR_GREY," Invalid ModelID !"); return 1; }
}
else
{
SendClientMessage(playerid, COLOR_RED, "You are not near any dealership!");
return 1;
}
if(vehicleprice == 0) { return 1; }
if(WeekendType == 4)
{
format(string, sizeof(string), "Vehicles are on 20% sale (the price is %d instead of%d) (Vehicle sale weekend!)", vehicleprice*8/10,vehicleprice);
SendClientMessage(playerid, COLOR_LIGHTBLUE, string);
vehicleprice=vehicleprice*8/10;
}
if(GetPlayerPCash(playerid) < vehicleprice)
{
SendClientMessage(playerid,COLOR_GREY," You cannot afford this vehicle !");
return 1;
}
if(ForwardOwnCar(1,playerid)) { SendClientMessage(playerid,COLOR_GREY,"You already have a vehicle spawned, Please /v despawn it"); return 1; }
else if(ForwardOwnCar(2,playerid)) { SendClientMessage(playerid,COLOR_GREY,"You already have a vehicle spawned, Please /v despawn it"); return 1; }
else if(ForwardOwnCar(3,playerid)) { SendClientMessage(playerid,COLOR_GREY,"You already have a vehicle spawned, Please /v despawn it"); return 1; }
if(PlayerInfo[playerid][pCarkey] != SCRIPT_CARS && PlayerInfo[playerid][pCarkey2] != SCRIPT_CARS && PlayerInfo[playerid][pCarkey3] != SCRIPT_CARS)
{
SendClientMessage(playerid,COLOR_GREY," You already have 3 key slots !");
return 1;
}
new found = 0;
for(new i = 0; i < sizeof(CarInfo); i++) //for(new i = 0; i < sizeof(CarInfo); i++)
{
if(found != 1)
{
if(CarInfo[i][cOwned] == 0)
{
found = 1;
CarInfo[i][cMod][0] = 0;
CarInfo[i][cMod][1] = 0;
CarInfo[i][cMod][2] = 0;
CarInfo[i][cMod][3] = 0;
CarInfo[i][cMod][4] = 0;
CarInfo[i][cMod][5] = 0;
CarInfo[i][cMod][6] = 0;
CarInfo[i][cMod][7] = 0;
CarInfo[i][cMod][8] = 0;
CarInfo[i][cMod][9] = 0;
if(PlayerInfo[playerid][pCarkey] == SCRIPT_CARS)
{
PlayerInfo[playerid][pCarkey] = i;
}
else if(PlayerInfo[playerid][pCarkey2] == SCRIPT_CARS)
{
PlayerInfo[playerid][pCarkey2] = i;
}
else if(PlayerInfo[playerid][pCarkey3] == SCRIPT_CARS)
{
PlayerInfo[playerid][pCarkey3] = i;
}
format(string, sizeof(string), "You have bought a %s, for $%d.",VehicleName[vehicle-400],vehicleprice);
SendClientMessage(playerid,COLOR_WHITE,string);
SendClientMessage(playerid,COLOR_WHITE,"remember to /v park your vehicle, Also /v for other commands.");
GivePlayerPCash(playerid,-vehicleprice);
CarInfo[i][cOwned] = 1;
CarInfo[i][cModel] = vehicle;
format(string, sizeof(string), "%s",VehicleName[vehicle-400]);
strmid(CarInfo[i][cDescription], string, 0, strlen(string), 255);
CarInfo[i][cValue] = vehicleprice;
CarInfo[i][cColorOne] = color1;
CarInfo[i][cColorTwo] = color2;
CarInfo[i][cLock] = 0;
new Float:yx,Float:yy,Float:yz,Float:urangle;
GetPlayerPos(playerid, yx, yy, yz);
GetPlayerFacingAngle(playerid,urangle);
CarInfo[i][cLocationx] = yx;
CarInfo[i][cLocationy] = yy;
CarInfo[i][cLocationz] = yz;
CarInfo[i][cAngle] = urangle;
CarInfo[i][cDonate] = 0;
CarInfo[i][cFuel] = 100;
CarInfo[i][cTrunkWep][1] = 0;
CarInfo[i][cTrunkWep][2] = 0;
CarInfo[i][cTrunkWep][3] = 0;
CarInfo[i][cTrunkWep][4] = 0;
CarInfo[i][cTrunkAmmo][1] = 0;
CarInfo[i][cTrunkAmmo][2] = 0;
CarInfo[i][cTrunkAmmo][3] = 0;
CarInfo[i][cTrunkAmmo][4] = 0;
CarInfo[i][cTrunkArmour] = 0.0;
CarInfo[i][cTrunkCounter] = 0;
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s", sendername);
strmid(CarInfo[i][cOwner], string, 0, strlen(string), 255);
new carid = AddStaticVehicleEx(CarInfo[i][cModel],CarInfo[i][cLocationx],CarInfo[i][cLocationy],CarInfo[i][cLocationz]+1,CarInfo[i][cAngle],CarInfo[i][cColorOne],CarInfo[i][cColorTwo],3600);
VehicleOwned[carid] = i;
//SaveCars();
OnPlayerDataSave(playerid);
return 1;
}
}
}
if(found != 1)
{
SendClientMessage(playerid, COLOR_WHITE, "Sorry, all the Vehicle Slots have been used please inform an admin.");
}
}
return 1;
}
PHP код:
if(strcmp(cmd, "/buybiz", true) == 0)
{
if(IsPlayerConnected(playerid))
{
new Float:oldposx, Float:oldposy, Float:oldposz;
GetPlayerName(playerid, playername, sizeof(playername));
GetPlayerPos(playerid, oldposx, oldposy, oldposz);
if(PlayerInfo[playerid][pPbiskey] != 255)
{
SendClientMessage(playerid, COLOR_WHITE, " You already own a business, type /sellbiz if you want to buy this one.");
return 1;
}
for(new b = 0; b < sizeof(SBizzInfo); b++)
{
if(PlayerToPoint(2.0, playerid, SBizzInfo[b][sbEntranceX], SBizzInfo[b][sbEntranceY], SBizzInfo[b][sbEntranceZ]) && SBizzInfo[b][sbOwned] == 0)
{
if(PlayerInfo[playerid][pLevel] < SBizzInfo[b][sbLevelNeeded] && PlayerInfo[playerid][pFB] == 0)
{
format(string, sizeof(string), "You Must Be Level %d To Purchase This",SBizzInfo[b][sbLevelNeeded]);
SendClientMessage(playerid, COLOR_GRAD5, string);
return 1;
}
if(GetPlayerPCash(playerid) >= SBizzInfo[b][sbBuyPrice] || PlayerInfo[playerid][pFB] == 1)
{
PlayerInfo[playerid][pPbiskey] = b+100;
SBizzInfo[b][sbOwned] = 1;
GetPlayerName(playerid, sendername, sizeof(sendername));
strmid(SBizzInfo[b][sbOwner], sendername, 0, strlen(sendername), 255);
if(PlayerInfo[playerid][pFB] == 0)
{
if(WeekendType == 5)
{
GivePlayerPCash(playerid,-SBizzInfo[b][sbBuyPrice]*8/10);
SendClientMessage(playerid,COLOR_LIGHTBLUE,"It's properties weekend! Every property is worth 20% less. Congratulations!");
}
else
{
GivePlayerPCash(playerid,-SBizzInfo[b][sbBuyPrice]);
}
}
DestroyPickup(SBizzInfo[b][sbPickupID]);
SBizzInfo[b][sbPickupID]=CreatePickup(1239, 1, SBizzInfo[b][sbEntranceX], SBizzInfo[b][sbEntranceY], SBizzInfo[b][sbEntranceZ]);
SendClientMessage(playerid, COLOR_WHITE, "Congratulations, On your New Purchase.");
SendClientMessage(playerid, COLOR_WHITE, "Type /help to review the new business help section.");
//OnPropUpdate();
HouseEntered[playerid] = b;
OnPlayerDataSave(playerid);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "You don't have the cash for that");
return 1;
}
}
}
for(new b = 0; b < sizeof(BizzInfo); b++)
{
if(PlayerToPoint(2.0, playerid, BizzInfo[b][bEntranceX], BizzInfo[b][bEntranceY], BizzInfo[b][bEntranceZ]) && BizzInfo[b][bOwned] == 0)
{
if(PlayerInfo[playerid][pLevel] < BizzInfo[b][bLevelNeeded] && PlayerInfo[playerid][pFB] == 0)
{
format(string, sizeof(string), "You Must Be Level %d To Purchase This",BizzInfo[b][bLevelNeeded]);
SendClientMessage(playerid, COLOR_GRAD5, string);
return 1;
}
if(GetPlayerPCash(playerid) >= BizzInfo[b][bBuyPrice] || PlayerInfo[playerid][pFB] == 1)
{
PlayerInfo[playerid][pPbiskey] = b;
BizzInfo[b][bOwned] = 1;
GetPlayerName(playerid, sendername, sizeof(sendername));
strmid(BizzInfo[b][bOwner], sendername, 0, strlen(sendername), 255);
if(PlayerInfo[playerid][pFB] == 0)
{
GivePlayerPCash(playerid,-BizzInfo[b][bBuyPrice]);
}
//PlayerPlayMusic(playerid);
SetPlayerInterior(playerid,BizzInfo[b][bInterior]);
PlayerInfo[playerid][pInt] = BizzInfo[b][bInterior];
DestroyPickup(BizzInfo[b][bPickupID]);
BizzInfo[b][bPickupID]=CreatePickup(1239, 1, BizzInfo[b][bEntranceX], BizzInfo[b][bEntranceY], BizzInfo[b][bEntranceZ]);
SetPlayerPos(playerid,BizzInfo[b][bExitX],BizzInfo[b][bExitY],BizzInfo[b][bExitZ]);
GameTextForPlayer(playerid, "~w~Welcome~n~You can exit at any time by moving to this door and typing /exit", 5000, 3);
PlayerInfo[playerid][pInt] = BizzInfo[b][bInterior];
PlayerInfo[playerid][pLocal] = b ;
SendClientMessage(playerid, COLOR_WHITE, "Congratulations, On your New Purchase.");
SendClientMessage(playerid, COLOR_WHITE, "Type /help to review the new business help section.");
//OnPropUpdate();
HouseEntered[playerid] = b;
OnPlayerDataSave(playerid);
SetPlayerVirtualWorld(playerid,b);
return 1;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "You don't have the cash for that");
return 1;
}
}
}
}
return 1;
}