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

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

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

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

Личный транспорт и фракционный транспорт

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

▲Denny▲

Умник
У меня появился вопрос, как мне разделять личный и фракционный транспорт?
У меня есть enum, где расположен личный транспорт, но переменные заводки двигателя, бензина и т.д общие с фракционным.
Как мне загружать личный, а как фракционный?

PHP:
enum CInfo
{
	id,
	idmodel,
	Float: xc,
	Float: yc,
	Float: zc,
	Float: ac,
	price,
	carcolor1,
	carcolor2,
	owner,
	Float: probeg,
	number[6],
	key,
	dolg,
}
new cinfo[500][CInfo];
new engine[700];
new lights[700];
new doors[700];
new alarm[700];
new bonnet[700];
new boot[700];
new objective[700];
new Float: fuel[700];
Загрузка/сохранение:
PHP:
forward CarLoad();
public CarLoad()
{
	if(cache_num_rows() > 0)
    {
    	for(new i = 0; i<=cache_num_rows(); i++)
    	{
	   		cache_get_value_name_int(i, "id", cinfo[i][id]);
			cache_get_value_name_int(i, "idmodel", cinfo[i][idmodel]); 
			cache_get_value_name_float(i, "xc", cinfo[i][xc]);
			cache_get_value_name_float(i, "yc", cinfo[i][yc]);
			cache_get_value_name_float(i, "zc", cinfo[i][zc]);
			cache_get_value_name_float(i, "ac", cinfo[i][ac]);
			cache_get_value_name_int(i, "price", cinfo[i][price]);
			cache_get_value_name_int(i, "carcolor1", cinfo[i][carcolor1]);
			cache_get_value_name_int(i, "carcolor2", cinfo[i][carcolor2]);
			cache_get_value_name(i, "owner", cinfo[i][owner], MAX_PLAYER_NAME);
			cache_get_value_name_float(i, "probeg", cinfo[i][probeg]);
			cache_get_value_name(i, "number", cinfo[i][number], 6);
		}
   	}
	return 1;
}
forward CarSave();
public CarSave()
{
	new query[500];
	for(new i = 0; i<=500; i++)
	{
		format(query, sizeof(query), "UPDATE `cars` SET `idmodel` = '%i',", cinfo[i][idmodel]);
		format(query, sizeof(query), "%s `xc` = '%f',", query, cinfo[i][xc]);
		format(query, sizeof(query), "%s `yc` = '%f',", query, cinfo[i][yc]);
		format(query, sizeof(query), "%s `zc` = '%f',", query, cinfo[i][zc]);
		format(query, sizeof(query), "%s `ac` = '%f',", query, cinfo[i][ac]);
		format(query, sizeof(query), "%s `price` = '%i',", query, cinfo[i][price]);
		format(query, sizeof(query), "%s `carcolor1` = '%i',", query, cinfo[i][carcolor1]);
		format(query, sizeof(query), "%s `carcolor2` = '%i',", query, cinfo[i][carcolor2]);
		format(query, sizeof(query), "%s `owner` = '%s',", query, cinfo[i][owner]);
		format(query, sizeof(query), "%s `probeg` = '%f',", query, cinfo[i][probeg]);
		format(query, sizeof(query), "%s `number` = '%s'", query, cinfo[i][number]);
		mysql_format(connect, query, sizeof(query), "%s WHERE `id` = %i", query, cinfo[i][id]);
		mysql_tquery(connect, query);
	}
	return 1;
}
Пример кода, как я использую всё это:

PHP:
if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
		{
			new c = GetPlayerVehicleID(playerid);
			if(!IsABMX(c) && c != trainls && c != trainsf && c != trainlv)
			{
				GetVehicleParamsEx(c, engine[c], lights[c], alarm[c], doors[c], bonnet[c], boot[c], objective[c]);
				if(engine[c] == 1) 
				{
					engine[c] = 0;
					SetVehicleParamsEx(c, false, lights[c], alarm[c], doors[c], bonnet[c], boot[c], objective[c]);
					PlayerTextDrawColor(playerid, Speedom[playerid][11], 0xC02020FF);
					PlayerTextDrawShow(playerid, Speedom[playerid][11]); 
					return SetPlayerChatBubble(playerid, "Заглушил(а) двигатель", 0xF679C3FF, 5.0, 1000);
				}
				if(fuel[c] <= 0.0) return SendClientMessage(playerid, -1, MESWARNING"В машине отсутствует бензин!");
				new string[54], Float: healthcar;
				GetVehicleHealth(c, healthcar);
				if(c <= 500)
				{
					if(cinfo[c][key] == 0) return SendClientMessage(playerid, -1, MESWARNING"Отсутствуют ключи в замке зажигания.");
					if(healthcar < 10) return SendClientMessage(playerid, -1, MESWARNING"Машина сломана! Обратитесь к механику или же попробуйте починить сами.");
				}
				format(string, sizeof(string), "%s пытается завести двигатель", pinfo[playerid][name]);
				SendClientMessage(playerid, 0xF9A24EFF, string);
				if(healthcar <=250.0)
				{
					switch(random(1))
					{
						case 0:
						{
							engine[c] = 1;
							SetVehicleParamsEx(c, true, lights[c], alarm[c], doors[c], bonnet[c], boot[c], objective[c]);
							SendClientMessage(playerid, 0x7663FCFF, "Двигатель завёлся");
							PlayerTextDrawColor(playerid, Speedom[playerid][11], 14418175);
							PlayerTextDrawShow(playerid, Speedom[playerid][11]);
							return SetPlayerChatBubble(playerid, "Завел(а) двигатель", 0xF679C3FF, 5.0, 1000);
						} 
						case 1:
						{
							engine[c] = 0;
							SetVehicleParamsEx(c, false, lights[c], alarm[c], doors[c], bonnet[c], boot[c], objective[c]);
							return SendClientMessage(playerid, 0x7663FCFF, "Двигатель не завёлся");
						}
					}
				}
				engine[c] = 1, 
				PlayerTextDrawColor(playerid, Speedom[playerid][11], 14418175);
				PlayerTextDrawShow(playerid, Speedom[playerid][11]);
				SetVehicleParamsEx(c, true, lights[c], alarm[c], doors[c], bonnet[c], boot[c], objective[c]);
				SendClientMessage(playerid, 0x7663FCFF, "Двигатель завёлся");
				return SetPlayerChatBubble(playerid, "Завел(а) двигатель", 0xF679C3FF, 5.0, 1000);
UPD: Вместо фракционных авто могут использоваться также такси, автобусы и т.д. Транспорт, который отличительный от личного.

---------- Сообщение добавлено в 17:10 ---------- Предыдущее сообщение добавлено в 15:31 ----------

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