Robert_Deniro
Ученик
Вся суть бага в том, что машину можно продавать только в определенном месте и когда они продают машины в определенном месте, то они скапливаются на одной координате, и жестко начинает все лагать..
Также пробовал убирать вот это:
только при компиляции даже ошибки не выдает, моргает палочка |
PHP:
if (strcmp(cmd, "/sellcar", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pCarKey3] == 0 && PlayerInfo[playerid][pCarKey2] == 0 && PlayerInfo[playerid][pCarKey] == 0)
{
SendClientMessage(playerid,COLOR_GREY,"Ó âàñ íåò òà÷êè");
return 1;
}
tmp = strtok(cmdtext,idx);
if(!strlen(tmp))
{
if(PlayerToPoint(2.0,playerid, 760.0278,-1357.5458,13.518))
{
if(IsPlayerInAnyVehicle(playerid))
{
new cari = GetPlayerVehicleID(playerid);
if(cari == PlayerInfo[playerid][pCarKey3] || cari == PlayerInfo[playerid][pCarKey2] || cari == PlayerInfo[playerid][pCarKey])
{
RemovePlayerFromVehicle(playerid);
TogglePlayerControllable(playerid, 1);
new Float:xcar, Float:ycar, Float:zcar, Float:ancar;
new mods = GetVehicleModel(cari);
GetVehicleZAngle(cari, ancar);
GetVehiclePos(cari,xcar,ycar,zcar);
DestroyVehicle(cari);
CreateVehicle(mods,xcar,ycar,zcar,ancar,AutoInfo[cari][aColor1],AutoInfo[cari][aColor2],SPAWN_CARS);
AutoInfo[cari][aAutoX] = xcar;
AutoInfo[cari][aAutoY] = ycar;
AutoInfo[cari][aAutoZ] = zcar;
AutoInfo[cari][aAutoAngle] = ancar;
AutoInfo[cari][aStats] = 0;
new ptem[64];
format(ptem,sizeof(ptem),"The State");
strmid(AutoInfo[cari][aOwner], ptem, 0, strlen(ptem), 255);
new manyy = AutoInfo[cari][aPrice] / 2;
ConsumingMoney[playerid] = 1;
NormMoney[playerid] = 2;
AntiMoney[playerid] = AntiMoney[playerid] + manyy;
GivePlayerMoney(playerid,manyy);
SaveAuto();
gCarLock[cari] = 0;
UnLockCar(cari);
new nal = (manyy*13) / 100;
PlayerInfo[playerid][pNalog] += nal;
format(string,sizeof(string),"{BFF600}* {1E90FF}Òðàíñïîðò ïðîäàåòñÿ {BFF600}*\n{FFFFFF}Óðîâåíü: {FF0000}%d\n{FFFFFF}Ñòîèìîñòü: {FF0000}%d",AutoInfo[cari][aKey],AutoInfo[cari][aPrice]);
UpdateDynamic3DTextLabelText(nomer[cari],0xFFFFFFFF,string);
if(cari == PlayerInfo[playerid][pCarKey3])
{
PlayerInfo[playerid][pCarKey3] = 0;
}
else if(cari == PlayerInfo[playerid][pCarKey2])
{
PlayerInfo[playerid][pCarKey2] = 0;
}
else if(cari == PlayerInfo[playerid][pCarKey])
{
PlayerInfo[playerid][pCarKey] = 0;
}
return 1;
}
else
{
SendClientMessage(playerid,COLOR_GREY,"Âû íå â ñâîåé êóïëåííîé ìàøèíå");
}
}
else
{
SendClientMessage(playerid,COLOR_GREY,"Âû íå â ìàøèíå!");
}
}
else
{
SendClientMessage(playerid,COLOR_GREY,"Åñëè âû õîòèòå ïðîäàòü ÒÑ ãîñóäàðñòâó - ââåäèòå /sellcar íà ëîìáàðäå àâòîìîáèëåé");
SendClientMessage(playerid,COLOR_GREY,"Åñëè âû íå çíàåòå ãäå ýòî - /gps -> Àâòîðûíêè -> Ëîìáàðä àâòîìîáèëåé");
SendClientMessage(playerid,COLOR_GREY,"Åñëè âû õîòèòå ïðîäàòü ÒÑ èãðîêó /sellcar id ñóììà");
}
}
else
{
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext,idx);
if(!strlen(tmp))
{
SendClientMessage(playerid,COLOR_GREY,"/sellcar [id èãðîêà] [ñóììà] ëèáî /sellcar íà ëîìáàðäå");
return 1;
}
new babkis = strval(tmp);
if(PlayerInfo[giveplayerid][pCarKey3] != 0 && PlayerInfo[giveplayerid][pCarKey3] != 0 && PlayerInfo[giveplayerid][pCarKey] != 0)
{
SendClientMessage(playerid,COLOR_GREY,"Ó íåãî óæå åñòü òðàíñïîðò");
return 1;
}
if(babkis < 1 || babkis > 999999999) { SendClientMessage(playerid, COLOR_GREY, "öåíà íå äîëæíà áûòü íå ìåíüøå 1, èëè âûøå 999999999!"); return 1; }
if(babkis > GetPlayerMoney(giveplayerid))
{
SendClientMessage(playerid,COLOR_GREY,"Ó èãðîêà íå õâàòàåò äåíåã");
return 1;
}
if(!ProxDetectorS(10.0, playerid, giveplayerid))
{
SendClientMessage(playerid,COLOR_GREY,"Âû ñëèøêîì äàëåêî îò èãðîêà");
return 1;
}
if(CheckPlayerDistanceToVehicle(10.0, playerid, PlayerInfo[playerid][pCarKey])&& CheckPlayerDistanceToVehicle(10.0, playerid, PlayerInfo[playerid][pCarKey2]) && CheckPlayerDistanceToVehicle(10.0, playerid, PlayerInfo[playerid][pCarKey3]))
{
SendClientMessage(playerid,COLOR_GREY,"Îêîëî âàñ íàõîäèòñÿ îáà òðàíñïîðòà! Óéäèòå îò òîãî, êîòîðûé íå õîòèòå ïðîäàâàòü");
return 1;
}
if(!CheckPlayerDistanceToVehicle(10.0, playerid, PlayerInfo[playerid][pCarKey]) && !CheckPlayerDistanceToVehicle(10.0, playerid, PlayerInfo[playerid][pCarKey2]) && !CheckPlayerDistanceToVehicle(10.0, playerid, PlayerInfo[playerid][pCarKey3]))
{
SendClientMessage(playerid,COLOR_GREY,"Âû ñëèøêîì äàëåêî îò àâòîìîáèëÿ");
return 1;
}
if(CheckPlayerDistanceToVehicle(10.0, playerid, PlayerInfo[playerid][pCarKey]))
{
predlogidcar[giveplayerid] = PlayerInfo[playerid][pCarKey];
}
else if(CheckPlayerDistanceToVehicle(10.0, playerid, PlayerInfo[playerid][pCarKey2]))
{
predlogidcar[giveplayerid] = PlayerInfo[playerid][pCarKey2];
}
else if(CheckPlayerDistanceToVehicle(10.0, playerid, PlayerInfo[playerid][pCarKey3]))
{
predlogidcar[giveplayerid] = PlayerInfo[playerid][pCarKey3];
}
GetPlayerName(playerid,sendername,sizeof(sendername));
GetPlayerName(giveplayerid,giveplayer,sizeof(giveplayer));
predlogid[giveplayerid] = playerid;
predlogmoney[giveplayerid] = babkis;
new kfjsdh = predlogidcar[giveplayerid];
format(string,sizeof(string),"%s ïðåäëàãàåò âàì êóïèòü %s çà %d$ (/accept buycar)",sendername,VehicleNames[GetVehicleModel(kfjsdh)-400],babkis);
SendClientMessage(giveplayerid,COLOR_LIGHTBLUE,string);
format(string,sizeof(string),"Âû ïðåäëîæèëè %s êóïèòü %s çà %d$",giveplayer,VehicleNames[GetVehicleModel(kfjsdh)-400],babkis);
SendClientMessage(playerid,COLOR_LIGHTBLUE,string);
}
}
return 1;
}
PHP:
if(PlayerToPoint(2.0,playerid, 760.0278,-1357.5458,13.518))
{
