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

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

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

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

Проблема с автомобилями

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

Novik43Rus

Новичок
Доброго времени суток, недавно решил проблему со всеми крашами мода и тут вновь он подкрался незаметно :be:
Суть проблемы в том, что, путаются порядковые ID автомобилей на сервере. Когда набирается ~40 игроков на сервере, начинается следующее:
Игрок под ID30 заходит на сервер, играет несколько минут, затем заходит игрок и занимает ID33 например, то, у игрока под ID30 пропадает машина. Причем когда это начинается, даже неоны на абсолютно всех автомобилях путаются.
Когда игроков на сервере 2-25 все хорошо. Помогите решить данную проблему. Заранее спасибо.


Код создания машины:
PHP:
        if(Auto[playerid] == INVALID_VEHICLE_ID)
	{
		switch(Player[playerid][HouseKey])
		{
			case -1:
			{
			        Auto[playerid] = CreateVehicle(Player[playerid][CAR], 2282.1985,-1748.5638,-81.8235,180.4529, Player[playerid][COL1], Player[playerid][COL2], -1);
				createdauto = Auto[playerid];
				idhozein[Auto[playerid]] = playerid;
				createdauto ++;
				dvigan[Auto[playerid]] = 0;
		                SetVehicleVirtualWorld(Auto[playerid], Player[playerid][ID]);
			}
			default:
			{
				new p = Player[playerid][HouseKey];
				PadikID[playerid] = p;
			        Auto[playerid] = CreateVehicle(Player[playerid][CAR], Padik[p][pCarX],Padik[p][pCarY],Padik[p][pCarZ],Padik[p][pCarA], Player[playerid][COL1], Player[playerid][COL2], -1);
			        SetVehicleVirtualWorld(Auto[playerid], 0);
				createdauto = Auto[playerid];
				idhozein[Auto[playerid]] = playerid;
				createdauto ++;
			}
		}
	 	format(vladelec[Auto[playerid]], 32, "%s", Player[playerid][NAME]);
	 	gas[Auto[playerid]] = Player[playerid][BENZIN];
		probeg[Auto[playerid]] = Player[playerid][PROBEG];
		turbo[Auto[playerid]] = Player[playerid][TURBO];
		SetVehicleNumberPlate(Auto[playerid], "Swell");
		switch(Player[playerid][TURBO])
		{
			case 0: usetrub[Auto[playerid]] = 2;
			case 1: usetrub[Auto[playerid]] = 1;
			default: usetrub[Auto[playerid]] = 2;
		}
		if(Player[playerid][KOLESO] != 255) AddVehicleComponent(Auto[playerid], Player[playerid][KOLESO]);
		if(Player[playerid][GIDRA] != 255) AddVehicleComponent(Auto[playerid], Player[playerid][GIDRA]);
		if(Player[playerid][NITRO] != 255)
		{
			AddVehicleComponent(Auto[playerid], Player[playerid][NITRO]);
			nitro[Auto[playerid]] = 1;
		}
		switch(Player[playerid][NEON])
		{
			case 255: useneon[Auto[playerid]] = 2;
			default:
			{
				neon[playerid][0] = CreateObject(Player[playerid][NEON],0,0,0,0,0,0,100.0);
				neon[playerid][1] = CreateObject(Player[playerid][NEON],0,0,0,0,0,0,100.0);
				AttachObjectToVehicle(neon[playerid][0], Auto[playerid], -0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
				AttachObjectToVehicle(neon[playerid][1], Auto[playerid], 0.8, 0.0, -0.70, 0.0, 0.0, 0.0);
				useneon[Auto[playerid]] = 1;
			}
		}
	}

Код удаления машины (при дисконнекте/смерти)

PHP:
        if(Auto[playerid] != INVALID_VEHICLE_ID)
	{
	        Player[playerid][BENZIN] = gas[Auto[playerid]];
	        Player[playerid][PROBEG] = probeg[Auto[playerid]];
	        DestroyVehicle(Auto[playerid]);
		Auto[playerid] = INVALID_VEHICLE_ID;
		createdauto --;
	        if(neon[playerid][0] != -1)
	        {
			DestroyObject(neon[playerid][0]); neon[playerid][0] = -1;
			DestroyObject(neon[playerid][1]); neon[playerid][1] = -1;
	        }
	 }
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу