▲Denny▲
Умник
У меня появился вопрос, как мне разделять личный и фракционный транспорт?
У меня есть enum, где расположен личный транспорт, но переменные заводки двигателя, бензина и т.д общие с фракционным.
Как мне загружать личный, а как фракционный?
Загрузка/сохранение:
Пример кода, как я использую всё это:
UPD: Вместо фракционных авто могут использоваться также такси, автобусы и т.д. Транспорт, который отличительный от личного.
---------- Сообщение добавлено в 17:10 ---------- Предыдущее сообщение добавлено в 15:31 ----------
UP!((
У меня есть 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);
---------- Сообщение добавлено в 17:10 ---------- Предыдущее сообщение добавлено в 15:31 ----------
UP!((
