Frend Williams
Умник
Доброй ночи
Проблема в том, что при загрузки машины цвет не устанавливается, хотя в базе сохраняется.
Код:
CMD:fixcar(playerid)
{
if(PlayerInfo[playerid][pCash] < 500) return scm_error(playerid, "Недостаточно денежных средств");
clean:<string>;
mysql_format(db_handle, string, sizeof(string), "SELECT * FROM `vehicle` WHERE `OWNER` = '%d'", PlayerInfo[playerid][pID]);
mysql_tquery(db_handle, string, "CheckPlayerCar", "d", playerid);
return 0x1;
}
forward CheckPlayerCar(playerid);
public CheckPlayerCar(playerid)
{
new rows,fields;
cache_get_data(rows, fields, db_handle);
if(rows == 0) return SendClientMessage(playerid, 0xCCCCCCFF, "У вас нет не одного транспортного средства");
string = "Название\tНомер\tСтатус\nВыгрузить транспорт\n";
if(PlayerCarID[playerid] != 0xFFFF)
{
strcat(string, "Найти транспорт\nДоставить к автосалону");
}
if(PlayerCarID[playerid] == 0xFFFF)
{
new model;
new car_state;
new number[10];
for(new i = 0; i != rows; i ++)
{
PlayerLISTCarID[playerid][i] = cache_get_field_content_int(i, "ID", db_handle);
model = cache_get_field_content_int(i, "MODEL", db_handle);
car_state = cache_get_field_content_int(i, "STATE", db_handle);
cache_get_field_content(i, "NumberCar", number, db_handle, 10);
format(string, sizeof(string), "%s{FFFFFF}%s\t{"#cBLUE"}%s\t%s\n", string, VehicleNames[model - 400], number, car_state ? ("{00FF00}Загружена") : ("{FF0000}Выгружена"));
}
}
ShowPlayerDialog(playerid, 30000, DIALOG_STYLE_TABLIST_HEADERS, ""SERVER"Служба доставки автомобилей", string, "Принять", "Отмена");
return 0x1;
}
PHP:
stock OnPlayerBuyCar(playerid, v_modelid, v_cost, v_Color_1, v_Color_2)
{
new Float: RandomSpawnCar[8][4] =
{
{530.3298,-1291.3247,17.5323,0.0000},
{534.0688,-1291.1473,17.5323,0.0000},
{538.5618,-1291.1473,17.5323,0.0000},
{543.4733,-1291.1473,17.5323,0.0000},
{541.2250,-1272.3478,17.5323,222.3708},
{545.5279,-1268.4230,17.5323,222.3708},
{551.3231,-1264.0491,17.5323,222.3708},
{562.2405,-1264.5023,17.5323,72.4870}
};
new query_str[300];
new random_spawn = random(8);
mysql_format(db_handle, query_str,sizeof(query_str), "INSERT INTO `vehicle` (`OWNER`,`MODEL`, `PRICE`, `COLOR_1`, `COLOR_2`, `PosX`, `PosY`, `PosZ`, `PosR`) VALUES ('%d', '%d', '%d', '%d', '%d', '%f', '%f', '%f', '%f')", PlayerInfo[playerid][pID], v_modelid, v_cost, v_Color_1, v_Color_2, RandomSpawnCar[random_spawn][0], RandomSpawnCar[random_spawn][1], RandomSpawnCar[random_spawn][2], RandomSpawnCar[random_spawn][3]);
mysql_empty(db_handle, query_str);
SendClientMessage(playerid, 0xFFFF00FF, "Поздравляем с покупкой автомобиля. Для загрузки автомобиля используйте /fixcar");
return 0x1;
}
stock UnloadCarPlayer(playerid)
{
if(PlayerCarID[playerid] == 0xFFFF) return SendClientMessage(playerid, 0xCCCCCCFF, "У вас нет загруженного транспорта");
SendClientMessage(playerid, 0xFFFF00FF, "Вы успешно выгрузили свой транспорт");
DestroyPlayerCar(playerid);
return 0x1;
}
stock DestroyPlayerCar(playerid)
{
if(PlayerCarID[playerid] == 0xFFFF) return 0x1;
new vehicleid = PlayerCarID[playerid];
if(GetVehicleModel(vehicleid) == 411)
{
if(launchtext[vehicleid][0] != INVALID_OBJECT_ID)
{
for(new i=-1;++i<=5;)
{
DestroyDynamicObject(launchtext[vehicleid][i]);
launchtext[vehicleid][i] = INVALID_OBJECT_ID;
}
}
}
if(VehInfo[vehicleid][vGucci] == 1) GucciUninstall(vehicleid);
DestroyVehicle(vehicleid);
PlayerCarID[playerid] = 0xFFFF;
for(new i = 0; i != 16; i ++)
{
VehInfo[vehicleid][vTunning][i] = 0;
}
format(VehInfo[vehicleid][vNumberCar], 10, "None");
string = "";
mysql_format(db_handle, string, sizeof(string), "UPDATE `vehicle` SET `STATE` = '0', `FUEL` = '%f', `PROBEG` = '%f' WHERE `ID` = '%d'", VehInfo[vehicleid][vFuel], VehInfo[vehicleid][vDrived], VehInfo[vehicleid][vID]);
mysql_tquery(db_handle, string, "", "");
VehInfo[vehicleid][vLock] = false;
VehInfo[vehicleid][vGucci] = 0;
VehInfo[vehicleid][vDrived] = 0;
VehInfo[vehicleid][vPrice] = 0;
VehInfo[vehicleid][vModel] = 0;
VehInfo[vehicleid][vFuel] = 0;
VehInfo[vehicleid][vID] = 0;
return 0x1;
}
forward LoadPlayerCar(playerid);
public LoadPlayerCar(playerid)
{
if(PlayerCarID[playerid] != 0xFFFF) return 0x1;
new
rows,
field
;
cache_get_data(rows, field);
if(rows)
{
new
ID,
Fuel,
Price,
Model,
World,
Interior,
Color[2],
Float: Position[5],
Gucci
;
ID = cache_get_field_content_int(0, "ID");
Fuel = cache_get_field_content_int(0, "FUEL");
Price = cache_get_field_content_int(0, "PRICE");
Model = cache_get_field_content_int(0, "MODEL");
World = cache_get_field_content_int(0, "WORLD");
Interior = cache_get_field_content_int(0, "INTERIOR");
Color[0] = cache_get_field_content_int(0, "COLOR_1");
Color[1] = cache_get_field_content_int(0, "COLOR_2");
Position[0] = cache_get_field_content_float(0, "PosX");
Position[1] = cache_get_field_content_float(0, "PosY");
Position[2] = cache_get_field_content_float(0, "PosZ");
Position[3] = cache_get_field_content_float(0, "PosR");
Position[4] = cache_get_field_content_float(0, "PROBEG");
Gucci = cache_get_field_content_int(0, "GUCCI");
PlayerCarID[playerid] = CreateVehicle(Model, Position[0], Position[1], Position[2], Position[3], Color[0], Color[1], -1);
LinkVehicleToInterior(PlayerCarID[playerid], Interior);
SetVehicleVirtualWorld(PlayerCarID[playerid], World);
VehInfo[PlayerCarID[playerid]][vID] = ID;
VehInfo[PlayerCarID[playerid]][vFuel] = Fuel;
VehInfo[PlayerCarID[playerid]][vPrice] = Price;
VehInfo[PlayerCarID[playerid]][vModel] = Model;
VehInfo[PlayerCarID[playerid]][vDrived] = Position[4];
VehInfo[PlayerCarID[playerid]][vGucci] = Gucci;
string = "";
mysql_format(db_handle, string, sizeof(string), "UPDATE `vehicle` SET `STATE` = '1' WHERE `OWNER` = '%d' AND `ID` = '%d'", PlayerInfo[playerid][pID], VehInfo[PlayerCarID[playerid]][vID]);
mysql_tquery(db_handle, string, "", "");
new str_tune[100];
cache_get_field_content(0, "TUNING", str_tune, db_handle, 100);
sscanf(str_tune, "p<,>a<i>[16]", VehInfo[PlayerCarID[playerid]][vTunning]);
cache_get_field_content(0, "NumberCar", VehInfo[PlayerCarID[playerid]][vNumberCar], db_handle, 20);
SetVehicleNumberPlate(PlayerCarID[playerid], VehInfo[PlayerCarID[playerid]][vNumberCar]);
PlayerPlaySound(playerid, 1052, 0.0, 0.0, 0.0);
LoadVehicleTunning(PlayerCarID[playerid]);
ToggleLock(PlayerCarID[playerid], true);
}
return 0x1;
}
