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

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

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

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

[Вопрос] Баг с продажей авто в моде.

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

Vazovskui

Умник
Всем привет! У меня появился вопрос связанный с продажей авто. Объясню суть проблемы: Допустим я покупаю кар на рынке, паркую его около дома, а потом он мне допустим надоел и я его продаю, потом перезапускаю сервер и тот кар который я продал, снова стоит в том месте где я его припарковал и зарегистрирован на меня, хотя завести я его не могу. Прошу помощи.
Вот секция рынка
PHP:
	else if(dialogid == 51)
	{
	    new vid = GetPlayerVehicleID(playerid);
		new buycar = vid-1;
	    if(response)
	    {
	        if(PlayerInfo[playerid][pCarKey] == -1)
	        {
	            if(CarsInfo[buycar][vOwned] == 0)
	            {
					if(GetSRVMoney(playerid) >= CarsInfo[buycar][vValue])
					{
						if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
						{
						    CarsInfo[buycar][vOwned] = 1;
						    PlayerInfo[playerid][pCarKey] = buycar;
						    new sendername[MAX_PLAYER_NAME];
						    GetPlayerName(playerid, sendername, sizeof(sendername));
						    strmid(CarsInfo[buycar][vOwner], sendername, 0, strlen(sendername), 255);
						    GiveMoney(playerid,-CarsInfo[buycar][vValue]);
						    TogglePlayerControllable(playerid, 1);
						    SendClientMessage(playerid, COLOR_LIGHTRED, "Âû òîëüêî-÷òî êóïèëè òðàíñïîðò!");
						    SendClientMessage(playerid, COLOR_LAWNGREEN, "Ïîäñêàçêà: Èñïîëüçóéòå /mv äëÿ óïðàâëåíèÿ òðàíñïîðòîì.");
						    SaveCars(buycar);
						}
					}
					else
					{
						SendClientMessage(playerid, COLOR_GREY, " Ó âàñ íåò ñòîëüêî äåíåã.");
	        			TogglePlayerControllable(playerid, 1);
						RemovePlayerFromVehicle(playerid); CarHack(playerid);
						return 1;
					}
	            }
	        }
	        else
			{
				SendClientMessage(playerid, COLOR_GREY, " Ó âàñ óæå åñòü òðàíñïîðò.");
	        	TogglePlayerControllable(playerid, 1); RemovePlayerFromVehicle(playerid); CarHack(playerid);
	        	return 1;
			}
		}
	    else
	    {
	        TogglePlayerControllable(playerid, 1); RemovePlayerFromVehicle(playerid); CarHack(playerid);
	        return 1;
	    }
	}
	else if(dialogid == 52)
	{
	    if(response)
	    {
	        if(listitem == 0)
			{
			    new sendername[MAX_PLAYER_NAME];
			    GetPlayerName(playerid, sendername, sizeof(sendername));
				if(PlayerInfo[playerid][pCarKey] != -1 && strcmp(sendername, CarsInfo[PlayerInfo[playerid][pCarKey]][vOwner], true) == 0)
				{
				    new Float: X, Float: Y, Float: Z;
				    GetVehiclePos(PlayerInfo[playerid][pCarKey]+1, X, Y, Z);
				    if(PlayerToPoint(10.0, playerid, X, Y, Z))
				    {
				        if(CarsInfo[PlayerInfo[playerid][pCarKey]][vLock] == 0)
						{
							CarsInfo[PlayerInfo[playerid][pCarKey]][vLock] = 1;
	                        GameTextForPlayer(playerid, "~r~ˆAKP‘¦O", 5000, 6);
							PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
							LockCar(PlayerInfo[playerid][pCarKey]+1);
							return 1;
						}
						else if(CarsInfo[PlayerInfo[playerid][pCarKey]][vLock] == 1)
						{
							CarsInfo[PlayerInfo[playerid][pCarKey]][vLock] = 0;
							GameTextForPlayer(playerid, "~g~O¦KP‘¦O", 5000, 6);
							PlayerPlaySound(playerid, 1145, 0.0, 0.0, 0.0);
							UnLockCar(PlayerInfo[playerid][pCarKey]+1);
							return 1;
						}
					}
				    else return SendClientMessage(playerid, COLOR_GREY, " Âû ñëèøêîì äàëåêî îò ìàøèíû.");
				}
			}
			else if(listitem == 1)
			{
	   			new sendername[MAX_PLAYER_NAME];
			    GetPlayerName(playerid, sendername, sizeof(sendername));
				if(PlayerInfo[playerid][pCarKey] != -1 && strcmp(sendername, CarsInfo[PlayerInfo[playerid][pCarKey]][vOwner], true) == 0)
		        {
		            if(IsPlayerInVehicle(playerid,PlayerInfo[playerid][pCarKey]+1))
		            {
					    new newcar = GetPlayerVehicleID(playerid);
					    new Float:oldhealth;
		                new sellcar = PlayerInfo[playerid][pCarKey];
		                GiveMoney(playerid, CarsInfo[PlayerInfo[playerid][pCarKey]][vValue]);
					    CarsInfo[PlayerInfo[playerid][pCarKey]][vOwned] = 0;
					    CarsInfo[PlayerInfo[playerid][pCarKey]][vColorOne] = -1;
					    CarsInfo[PlayerInfo[playerid][pCarKey]][vColorTwo] = -1;
					    CarsInfo[PlayerInfo[playerid][pCarKey]][vParkX] = 0.0;
					    CarsInfo[PlayerInfo[playerid][pCarKey]][vParkY] = 0.0;
					    CarsInfo[PlayerInfo[playerid][pCarKey]][vParkZ] = 0.0;
					    CarsInfo[PlayerInfo[playerid][pCarKey]][vParkAngle] = 0.0;
					    CarsInfo[PlayerInfo[playerid][pCarKey]][vLock] = 0;
					    CarsInfo[PlayerInfo[playerid][pCarKey]][vNumber] = 0;
					    UnLockCar(PlayerInfo[playerid][pCarKey]+1);
					    strmid(CarsInfo[PlayerInfo[playerid][pCarKey]][vOwner], "-", 0, strlen("-"), 255);
					    TogglePlayerControllable(playerid, 1); RemovePlayerFromVehicle(playerid); 
					    SendClientMessage(playerid, COLOR_LIGHTRED, "Âû òîëüêî-÷òî ïðîäàëè ñâîé òðàíñïîðò!");
					    DestroyVehicle(BuyableCar[PlayerInfo[playerid][pCarKey]]);
					    BuyableCar[PlayerInfo[playerid][pCarKey]] = CreateVehicle(CarsInfo[PlayerInfo[playerid][pCarKey]][vModel], CarsInfo[PlayerInfo[playerid][pCarKey]][vPosX], CarsInfo[PlayerInfo[playerid][pCarKey]][vPosY], CarsInfo[PlayerInfo[playerid][pCarKey]][vPosZ], CarsInfo[PlayerInfo[playerid][pCarKey]][vAngle], CarsInfo[PlayerInfo[playerid][pCarKey]][vColorOne], CarsInfo[PlayerInfo[playerid][pCarKey]][vColorTwo], -1);
                        PlayerInfo[playerid][pCarKey] = -1;
Вот секция парковки:
PHP:
else if(listitem == 2)
			{
			    new sendername[MAX_PLAYER_NAME];
			    GetPlayerName(playerid, sendername, sizeof(sendername));
				if(PlayerInfo[playerid][pCarKey] != -1 && strcmp(sendername, CarsInfo[PlayerInfo[playerid][pCarKey]][vOwner], true) == 0)
				{
					if(IsPlayerInVehicle(playerid,PlayerInfo[playerid][pCarKey]+1))
					{
					    new Float: X, Float: Y, Float: Z, Float: A;
					    new newcar = GetPlayerVehicleID(playerid);
					    new Float:oldhealth;
         				new texos = PlayerInfo[playerid][pCarKey];
					 	GetVehicleHealth(newcar,oldhealth);
					    GetVehiclePos(PlayerInfo[playerid][pCarKey]+1, X, Y, Z);
					    GetVehicleZAngle(PlayerInfo[playerid][pCarKey]+1, A);
					    CarsInfo[PlayerInfo[playerid][pCarKey]][vParkX] = X;
					    CarsInfo[PlayerInfo[playerid][pCarKey]][vParkY] = Y;
					    CarsInfo[PlayerInfo[playerid][pCarKey]][vParkZ] = Z;
					    CarsInfo[PlayerInfo[playerid][pCarKey]][vParkAngle] = A;
					    DestroyVehicle(BuyableCar[PlayerInfo[playerid][pCarKey]]);
					    BuyableCar[PlayerInfo[playerid][pCarKey]] = CreateVehicle(CarsInfo[PlayerInfo[playerid][pCarKey]][vModel], CarsInfo[PlayerInfo[playerid][pCarKey]][vParkX], CarsInfo[PlayerInfo[playerid][pCarKey]][vParkY], CarsInfo[PlayerInfo[playerid][pCarKey]][vParkZ], CarsInfo[PlayerInfo[playerid][pCarKey]][vParkAngle], CarsInfo[PlayerInfo[playerid][pCarKey]][vColorOne], CarsInfo[PlayerInfo[playerid][pCarKey]][vColorTwo], -1);
                        SendClientMessage(playerid, COLOR_LIGHTRED, "Вы успешно припарковали свой транспорт.");
                        new vehicleid = GetPlayerVehicleID(playerid);
       					LoadModsForAll(vehicleid);
						TuneThisCar(vehicleid);
						//==============================TEXOSMOTR=============== Покупка
                        new number[32];
                        if(CarsInfo[PlayerInfo[playerid][pCarKey]][vNumber] != 0)
						{
		  					format(number,sizeof(number),"{FF3366}TS{000000} %d", CarsInfo[PlayerInfo[playerid][pCarKey]][vNumber]);
						}
						else if(CarsInfo[PlayerInfo[playerid][pCarKey]][vNumber] == 0)
      					{
	    					format(number,sizeof(number),"{FF3366}NO-NE");
						}
		    			format(string,sizeof(string),"{FF3366}TS{000000} %d", number);
		    			SetVehicleNumberPlate(newcar, number);
        				SetVehicleToRespawn(newcar);
        				SetVehicleHealth(newcar,oldhealth);
        				SaveCars(texos);
					}
					else return SendClientMessage(playerid, COLOR_GREY, " Вы не в вашей машине.");
				}
			}
Прошу помощи. +сик обеспечен.
П.С. Перфикса "Вопрос" нет, тапками не кидать.
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу