Доступ к архиву

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Ребят помогите разобраться!

Статус
В этой теме нельзя размещать новые ответы.

Wife_With_Knife

Дебютант
Ребят помогите.
Недавно открыл сервер и на нем обнаружился баг. При покупке допустим Игроком 1 автомобиля все происходит нормально. Когда покупает авто Игрок 2, то это авто числится за Игроком 1.
В чем может быть проблема никак не понимаю. В программировании недавно. Прошу помочь.
Вот сам код:
PHP:
	if(strcmp(cmd, "/buycar", true) == 0)
	{
		if(IsPlayerConnected(playerid))
		{
			new buycar;
			GetPlayerName(playerid, playername, sizeof(playername));
			buycar = GetPlayerVehicleID(playerid);
			if(AvtoPokupka[playerid] == 1) // Ëîäêè
			{
			    new vmodel;
				vmodel = GetVehicleModel(buycar);
				if(PlayerInfo[playerid][pCar] < 1)
				{
					SendClientMessageEx(playerid, COLOR_WHITE, "Ó âàñ íåòó ñâîáîäíîãî ñëîòà äëÿ àâòî!");
					RemovePlayerFromVehicle(playerid);
					TogglePlayerControllable(playerid, 1);
					return 1;
				}
				if(PlayerInfo[playerid][pLevel] < 5)
				{
					SendClientMessageEx(playerid, COLOR_WHITE, "Âàì íóæíî ïðîæèòü â øòàòå íå ìåíåå 5 ëåò.");
					RemovePlayerFromVehicle(playerid);
					TogglePlayerControllable(playerid, 1);
					return 1;
				}
				if(IsPlayerInVehicle(playerid,  buycar))
				{
					new price2;
					if(vmodel==484)
					{
						price2 = 350000;
					}
					if(vmodel==454)
					{
						price2 = 550000;
					}
					if(vmodel==453)
					{
						price2 = 200000;
					}
					if(vmodel==493)
					{
						price2 = 500000;
					}
					if(vmodel==446)
					{
						price2 = 350000;
					}
					if(vmodel==452)
					{
						price2 = 400000;
					}
					if(vmodel==473)
					{
						price2 = 150000;
					}
					if(GetPlayerMoney(playerid)>=price2)
					{
						if(PlayerToPoint(40.0,playerid,-2960.6570, 498.2911, 1.8050))
						{
							CreateVehicle(vmodel, -2975.8296, 515.2593, 0.0000,0.0000, -1, -1, 60000);
						}
						OWNABLECARS ++;
						CarInfo[OWNABLECARS-1][cId] = vmodel;
						CarInfo[OWNABLECARS-1][cColor1] = -1;
						CarInfo[OWNABLECARS-1][cColor2] = -1;
						CarInfo[OWNABLECARS-1][cCost] = price2;
						ServerGivePlayerMoney(playerid,-price2);
						Treasury += price2;
						new name[MAX_PLAYER_NAME];
						GetPlayerName(playerid, name, sizeof(name));
						CarInfo[OWNABLECARS-1][cLock] = 1;
						CarInfo[OWNABLECARS-1][cSTCar_x] = -2947.4521;
						CarInfo[OWNABLECARS-1][cSTCar_y] = 185.6544 -random(100);
						CarInfo[OWNABLECARS-1][cSTCar_z] = 0.0000;
						CarInfo[OWNABLECARS-1][cSTCar_a] = 90.0000;
						CarInfo[OWNABLECARS-1][cPARKCar_x] = -2947.4521;
						CarInfo[OWNABLECARS-1][cPARKCar_y] = 185.6544 -random(100);
						CarInfo[OWNABLECARS-1][cPARKCar_z] = 0.0000;
						CarInfo[OWNABLECARS-1][cPARKCar_a] = 90.0000;
						CarInfo[OWNABLECARS-1][cPaintJob] = -1;
						if(PlayerToPoint(40.0,playerid,-2960.6570, 498.2911, 1.8050))
						{
							SetPlayerCheckpoint(playerid, -2975.8296, 515.2593, 0.0000,5);
						}
						strmid(CarInfo[OWNABLECARS-1][cOwner],  name, 0, strlen(name), 999);
						SaveStuff();
						SaveCars();
						SendClientMessageEx(playerid, COLOR_WHITE, "Ïîçäðàâëÿþ! Òåïåðü ýòîò òðàíñïîðò ïðèíàäëåæèò âàì!");
						SendClientMessageEx(playerid, COLOR_LIGHTGREEN, "Èäèòå ê ñâîåé ïîêóïêå, îíà îòìå÷åíà êðàñíûé ìàðêåðîì íà êàðòå. Îòêðûòü êîìàíäîé /lock");
						SendClientMessageEx(playerid, COLOR_LIGHTRED, "Âíèìàíèå!!! Íå çàáóäüòå ïðèïàðêîâàòü ñâîé òðàíñïîðò â äðóãîì ìåñòå. Êîìàíäà /park");
						PlayerInfo[playerid][pCar]--;
						RemovePlayerFromVehicle(playerid);
						TogglePlayerControllable(playerid, 1);
						SavePlayer(playerid);
						SaveCars();
					}
					else
					{
						SendClientMessageEx(playerid, COLOR_WHITE, "Ó âàñ íå õâàòàåò íàëè÷íûõ.");
						RemovePlayerFromVehicle(playerid);
						TogglePlayerControllable(playerid, 1);
						return 1;
					}
			    }
			    return 1;
			}
			if(AvtoPokupka[playerid] == 2) // Ñêóòåðû
			{
			    if(PlayerInfo[playerid][pKupon] > 0)
			    {
			        if(PlayerToPoint(40.0,playerid,564.3521, -1269.9951, 17.5683))
			        {
			            if(PlayerInfo[playerid][pCar] < 1)
				        {
					        SendClientMessageEx(playerid, COLOR_WHITE, "Ó âàñ íåòó ñâîáîäíîãî ñëîòà äëÿ àâòî!");
					        RemovePlayerFromVehicle(playerid);
					        TogglePlayerControllable(playerid, 1);
					        return 1;
				        }
                        CreateVehicle(462, 564.3521, -1269.9951, 17.5683,45.0000, -1, -1, 60000);
			        }
			        OWNABLECARS ++;
			    	CarInfo[OWNABLECARS-1][cId] = 462;
					CarInfo[OWNABLECARS-1][cColor1] = -1;
					CarInfo[OWNABLECARS-1][cColor2] = -1;
					CarInfo[OWNABLECARS-1][cCost] = 0;
					new name[MAX_PLAYER_NAME];
					GetPlayerName(playerid, name, sizeof(name));
					CarInfo[OWNABLECARS-1][cLock] = 1;
					CarInfo[OWNABLECARS-1][cSTCar_x] = 1412.74;
					CarInfo[OWNABLECARS-1][cSTCar_y] = 787.74 -random(100);
					CarInfo[OWNABLECARS-1][cSTCar_z] = 10.82;
					CarInfo[OWNABLECARS-1][cSTCar_a] = 90.6288;
					CarInfo[OWNABLECARS-1][cPARKCar_x] = 1412.74;
					CarInfo[OWNABLECARS-1][cPARKCar_y] = 787.74 -random(100);
					CarInfo[OWNABLECARS-1][cPARKCar_z] = 10.82;
					CarInfo[OWNABLECARS-1][cPARKCar_a] = 90.6288;
					CarInfo[OWNABLECARS-1][cPaintJob] = -1;
					if(PlayerToPoint(40.0,playerid,564.3521, -1269.9951, 16.5883))
					{
						SetPlayerCheckpoint(playerid, 564.3521, -1269.9951, 16.5883,5);
					}
					strmid(CarInfo[OWNABLECARS-1][cOwner],  name, 0, strlen(name), 999);
					SaveStuff();
					SaveCars();
					SendClientMessageEx(playerid, COLOR_WHITE, " Óáðàíî èç èíâåíòàðÿ Êóïîí íà ñêóòåð 1 øò. (/inv)");
					SendClientMessageEx(playerid, COLOR_WHITE, "Ïîçäðàâëÿþ! Òåïåðü ýòîò òðàíñïîðò ïðèíàäëåæèò âàì!");
					SendClientMessageEx(playerid, COLOR_LIGHTGREEN, "Èäèòå ê ñâîåé ïîêóïêå, îíà îòìå÷åíà êðàñíûé ìàðêåðîì íà êàðòå. Îòêðûòü êîìàíäîé /lock");
					SendClientMessageEx(playerid, COLOR_LIGHTRED, "Âíèìàíèå!!! Íå çàáóäüòå ïðèïàðêîâàòü ñâîé òðàíñïîðò â äðóãîì ìåñòå. Êîìàíäà /park");
					PlayerInfo[playerid][pKupon] -= 1;
					PlayerInfo[playerid][pCar]--;
					RemovePlayerFromVehicle(playerid);
					TogglePlayerControllable(playerid, 1);
					SavePlayer(playerid);
					SaveCars();
				    return 1;
				}
				if(IsPlayerInVehicle(playerid,  buycar))
				{
					if(GetPlayerMoney(playerid)>=3000)
					{
						if(PlayerToPoint(40.0,playerid,564.3521, -1269.9951, 17.5683))
						{
							CreateVehicle(462, 564.3521, -1269.9951, 17.5683,45.0000, -1, -1, 60000);
						}
						OWNABLECARS ++;
						CarInfo[OWNABLECARS-1][cId] = 462;
						CarInfo[OWNABLECARS-1][cColor1] = -1;
						CarInfo[OWNABLECARS-1][cColor2] = -1;
						CarInfo[OWNABLECARS-1][cCost] = 3000;
						ServerGivePlayerMoney(playerid,-3000);
						Treasury += 3000;
						new name[MAX_PLAYER_NAME];
						GetPlayerName(playerid, name, sizeof(name));
						CarInfo[OWNABLECARS-1][cLock] = 1;
						CarInfo[OWNABLECARS-1][cSTCar_x] = 1412.74;
						CarInfo[OWNABLECARS-1][cSTCar_y] = 787.74 -random(100);
						CarInfo[OWNABLECARS-1][cSTCar_z] = 10.82;
						CarInfo[OWNABLECARS-1][cSTCar_a] = 90.6288;
						CarInfo[OWNABLECARS-1][cPARKCar_x] = 1412.74;
						CarInfo[OWNABLECARS-1][cPARKCar_y] = 787.74 -random(100);
						CarInfo[OWNABLECARS-1][cPARKCar_z] = 10.82;
						CarInfo[OWNABLECARS-1][cPARKCar_a] = 90.6288;
						CarInfo[OWNABLECARS-1][cPaintJob] = -1;
						if(PlayerToPoint(40.0,playerid,564.3521, -1269.9951, 16.5883))
						{
							SetPlayerCheckpoint(playerid, 564.3521, -1269.9951, 16.5883,5);
						}
						strmid(CarInfo[OWNABLECARS-1][cOwner],  name, 0, strlen(name), 999);
						SaveStuff();
						SaveCars();
						SendClientMessageEx(playerid, COLOR_WHITE, "Ïîçäðàâëÿþ! Òåïåðü ýòîò òðàíñïîðò ïðèíàäëåæèò âàì!");
						SendClientMessageEx(playerid, COLOR_LIGHTGREEN, "Èäèòå ê ñâîåé ïîêóïêå, îíà îòìå÷åíà êðàñíûé ìàðêåðîì íà êàðòå. Îòêðûòü êîìàíäîé /lock");
						SendClientMessageEx(playerid, COLOR_LIGHTRED, "Âíèìàíèå!!! Íå çàáóäüòå ïðèïàðêîâàòü ñâîé òðàíñïîðò â äðóãîì ìåñòå. Êîìàíäà /park");
						PlayerInfo[playerid][pCar]--;
						RemovePlayerFromVehicle(playerid);
						TogglePlayerControllable(playerid, 1);
						SavePlayer(playerid);
						SaveCars();
					}
					else
					{
						SendClientMessageEx(playerid, COLOR_WHITE, "Ó âàñ íå õâàòàåò íàëè÷íûõ.");
						RemovePlayerFromVehicle(playerid);
						TogglePlayerControllable(playerid, 1);
						return 1;
					}
				}
				return 1;
			}
			if(AvtoPokupka[playerid] == 3) // Àâòîìîáèëè
			{
				new vmodel;
				vmodel = GetVehicleModel(buycar);
				if(PlayerInfo[playerid][pCar] < 1)
				{
					SendClientMessageEx(playerid, COLOR_WHITE, "Ó âàñ íåòó ñâîáîäíîãî ñëîòà äëÿ àâòî!");
					RemovePlayerFromVehicle(playerid);
					TogglePlayerControllable(playerid, 1);
					return 1;
				}
				if(PlayerInfo[playerid][pLevel] < 3)
				{
					SendClientMessageEx(playerid, COLOR_WHITE, "Âàì íóæíî ïðîæèòü â øòàòå íå ìåíåå 3 ëåò!");
					RemovePlayerFromVehicle(playerid);
					TogglePlayerControllable(playerid, 1);
					return 1;
				}
				if(IsPlayerInVehicle(playerid,  buycar))
				{
					new price1;
					if(vmodel==576)
					{
						price1 = 65000;
					}
					if(vmodel==412)
					{
						price1 = 35000;
					}
					if(vmodel==475)
					{
						price1 = 35000;
					}
					if(vmodel==439)
					{
						price1 = 65000;
					}
					if(vmodel==549)
					{
						price1 = 30000;
					}
					if(vmodel==533)
					{
						price1 = 75000;
					}
					if(vmodel==526)
					{
						price1 = 55000;
					}
					if(vmodel==491)
					{
						price1 = 55000;
					}
					if(vmodel==558)
					{
						price1 = 76000;
					}
					if(vmodel==422)
					{
						price1 = 50000;
					}
					if(vmodel==589)
					{
						price1 = 45000;
					}
					if(vmodel==496)
					{
						price1 = 45000;
					}
					if(vmodel==458)
					{
						price1 = 48000;
					}
					if(vmodel==400)
					{
						price1 = 52000;
					}
					if(vmodel==426)
					{
						price1 = 65000;
					}
					if(vmodel==405)
					{
						price1 = 45000;
					}
					if(vmodel==603)
					{
						price1 = 200000;
					}
					if(vmodel==602)
					{
						price1 = 150000;
					}
					if(vmodel==587)
					{
						price1 = 160000;
					}
					if(vmodel==560)
					{
						price1 = 150000;
					}
					if(vmodel==559)
					{
						price1 = 120000;
					}
					if(vmodel==541)
					{
						price1 = 360000;
					}
					if(vmodel==506)
					{
						price1 = 300000;
					}
					if(vmodel==480)
					{
						price1 = 200000;
					}
					if(vmodel==477)
					{
						price1 = 360000;
					}
					if(vmodel==451)
					{
						price1 = 350000;
					}
					if(vmodel==429)
					{
						price1 = 330000;
					}
					if(vmodel==415)
					{
						price1 = 250000;
					}
					if(vmodel==411)
					{
						price1 = 350000;
					}
					if(vmodel==402)
					{
						price1 = 120000;
					}
					if(vmodel==409)
					{
						price1 = 200000;
					}
					if(vmodel==604)
					{
						price1 = 10000;
					}
					if(vmodel==605)
					{
						price1 = 10000;
					}
					if(GetPlayerMoney(playerid)>=price1)
					{
						if(PlayerToPoint(40.0,playerid,-1945.7933,265.0798,41.0471))
						{
							CreateVehicle(vmodel, -1973.7860107422,287.71200561523,35.17200088501,178.6288, -1, -1, 60000);
						}
						else
						{
							CreateVehicle(vmodel, 2163.57,1433.29,10.82,90.3459, -1, -1, 60000);
						}
						OWNABLECARS ++;
						CarInfo[OWNABLECARS-1][cLock] = 1;
						CarInfo[OWNABLECARS-1][cId] = vmodel;
						CarInfo[OWNABLECARS-1][cColor1] = -1;
						CarInfo[OWNABLECARS-1][cColor2] = -1;
						CarInfo[OWNABLECARS-1][cCost] = price1;
						ServerGivePlayerMoney(playerid,-price1);
						Treasury += price1;
						new name[MAX_PLAYER_NAME];
						GetPlayerName(playerid, name, sizeof(name));
						CarInfo[OWNABLECARS-1][cSTCar_x] = 1412.74;
						CarInfo[OWNABLECARS-1][cSTCar_y] = 787.74 -random(100);
						CarInfo[OWNABLECARS-1][cSTCar_z] = 10.82;
						CarInfo[OWNABLECARS-1][cSTCar_a] = 90.6288;
						CarInfo[OWNABLECARS-1][cPARKCar_x] = 1412.74;
						CarInfo[OWNABLECARS-1][cPARKCar_y] = 787.74 -random(100);
						CarInfo[OWNABLECARS-1][cPARKCar_z] = 10.82;
						CarInfo[OWNABLECARS-1][cPARKCar_a] = 90.6288;
						CarInfo[OWNABLECARS-1][cPaintJob] = -1;
						if(PlayerToPoint(40.0,playerid,-1945.7933,265.0798,41.0471))
						{
							SetPlayerCheckpoint(playerid, -1973.7860107422,287.71200561523,35.17200088501,5);
						}
						else
						{
							SetPlayerCheckpoint(playerid, 2163.57,1433.29,10.82,5);
						}
						strmid(CarInfo[OWNABLECARS-1][cOwner],  name, 0, strlen(name), 999);
						SaveStuff();
						SaveCars();
						SendClientMessageEx(playerid, COLOR_WHITE, "Ïîçäðàâëÿþ! Òåïåðü ýòîò òðàíñïîðò ïðèíàäëåæèò Âàì!");
						SendClientMessageEx(playerid, COLOR_LIGHTGREEN, "Èäèòå ê ñâîåé ïîêóïêå, îíà îòìå÷åíà êðàñíûé ìàðêåðîì íà êàðòå. Îòêðûòü êîìàíäîé /lock");
						SendClientMessageEx(playerid, COLOR_LIGHTRED, "Âíèìàíèå!!! Íå çàáóäüòå ïðèïàðêîâàòü ñâîé òðàíñïîðò â äðóãîì ìåñòå. Êîìàíäà /park");
						PlayerInfo[playerid][pCar]--;
						RemovePlayerFromVehicle(playerid);
						TogglePlayerControllable(playerid, 1);
						SavePlayer(playerid);
						SaveCars();
					}
					else
					{
						SendClientMessageEx(playerid, COLOR_WHITE, "Ó âàñ íå õâàòàåò íàëè÷íûõ.");
						RemovePlayerFromVehicle(playerid);
						TogglePlayerControllable(playerid, 1);
						return 1;
					}
				}
				return 1;
            }
			if(!IsAOwnableVehicle(buycar))
			{
				SendClientMessageEx(playerid,COLOR_GREY," Ýòó ìàøèíó íåëüçÿ êóïèòü!");
				return 1;
			}
			if(IsPlayerInVehicle(playerid,  buycar) && !strcmp(CarInfo[buycar-SIMPLECARS-1][cOwner],"The State",true))
			{
				if(GetPlayerMoney(playerid) > CarInfo[buycar-SIMPLECARS-1][cCost])
				{
					strmid(CarInfo[buycar-SIMPLECARS-1][cOwner], playername, 0, strlen(playername), 999);
					SendClientMessageEx(playerid, COLOR_WHITE, " Ïîçäðàâëÿþ! Òåïåðü ýòîò òðàíñïîðò ïðèíàäëåæèÒ òåáå!");
					ServerGivePlayerMoney(playerid,-CarInfo[buycar-SIMPLECARS-1][cCost]);
					if(IsAPlane(buycar) || IsABoat(buycar))
					{
						TogglePlayerControllable(playerid,1);
					}
				}
				else
				{
					SendClientMessageEx(playerid, COLOR_GREY, "Ó âàñ íåò äåíåã íà ýòî òðàíñïîðòíîå ñð-âî.");
					return 1;
				}
			}
		}
		return 1;
	}
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу