21/07/2024 15:42
(21/07/2024 14:25)strelo Escreveu: Primeiro, vamos verificar se estamos carregando corretamente os dados dos veículos do banco de dados no OnGameModeInit e recriando os veículos em função disso. Vou ajustar seu código para garantir que os dados sejam carregados e os veículos recriados corretamente.
Aqui está o código atualizado:
OnGameModeInit:
Código PHP:public OnGameModeInit() {
for (new carror = 0; carror < MAX_CARROS; carror++) {
CarregarCarros(carror);
}
return 1;
}
Função CarregarCarros:
Código PHP:function CarregarCarros(vehid) {
VehInfo[vehid][vORM] = orm_create("concessionaria", Conexao);
VehInfo[vehid][VehID] = vehid;
orm_addvar_float(VehInfo[vehid][vORM], VehInfo[vehid][CordX], "CordX");
orm_addvar_float(VehInfo[vehid][vORM], VehInfo[vehid][CordY], "CordY");
orm_addvar_float(VehInfo[vehid][vORM], VehInfo[vehid][CordZ], "CordZ");
orm_addvar_float(VehInfo[vehid][vORM], VehInfo[vehid][Angulo], "Angulo");
orm_addvar_float(VehInfo[vehid][vORM], VehInfo[vehid][rtX], "rtX");
orm_addvar_float(VehInfo[vehid][vORM], VehInfo[vehid][rtY], "rtY");
orm_addvar_float(VehInfo[vehid][vORM], VehInfo[vehid][rtZ], "rtZ");
orm_addvar_float(VehInfo[vehid][vORM], VehInfo[vehid][Angulo1], "Angulo1");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][Modelo], "Modelo");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][vCor1], "Cor1");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][vCor2], "Cor2");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][TDono], "TDono");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][TDono2], "TDono2");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][Preco], "Preco");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][Destrancado], "Destrancado");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][Farol], "Farol");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][Capo], "Capo");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][Motor], "Motor");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][Alarme], "Alarme");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][Portas], "Portas");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][PMalas], "PMalas");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][Litros], "Litros");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][Problema], "Problema");
orm_addvar_int(VehInfo[vehid][vORM], VehInfo[vehid][Contasveiculo], "Contasveiculo");
orm_addvar_string(VehInfo[vehid][vORM], VehInfo[vehid][Dono], 24, "Dono");
orm_addvar_string(VehInfo[vehid][vORM], VehInfo[vehid][Dono2], 24, "Dono2");
orm_addvar_string(VehInfo[vehid][vORM], VehInfo[vehid][vNome], 24, "Nome");
orm_addvar_string(VehInfo[vehid][vORM], VehInfo[vehid][Placa], 24, "Placa");
orm_setkey(VehInfo[vehid][vORM], "VehID");
orm_select(VehInfo[vehid][vORM], "GerarV2", "i", vehid);
return 1;
}
Função GerarV2:
Código PHP:function GerarV2(vehid) {
if (orm_errno(VehInfo[vehid][vORM]) != ERROR_NO_DATA) {
if (VehInfo[vehid][Modelo] != 0) {
new carroid;
carroid = CreateVehicle(VehInfo[vehid][Modelo],
VehInfo[vehid][CordX],
VehInfo[vehid][CordY],
VehInfo[vehid][CordZ],
VehInfo[vehid][Angulo],
VehInfo[vehid][vCor1],
VehInfo[vehid][vCor2],
false);
SetVehicleNumberPlate(carroid, VehInfo[vehid][Placa]);
VehInfo[vehid][Carro] = carroid;
}
}
}
CMD de criar veículo:
Código PHP:CMD:ccar(playerid, params[]) {
if (IsPlayerAdmin(playerid) || pAdmin[playerid] == 5) {
new carid, Float:ang, preco, cor1, cor2, string[200];
if (sscanf(params, "dddd", carid, preco, cor1, cor2)) {
return SendClientMessage(playerid, ERRO_BVR, "| ERRO | Digite: /ccar [id] [preço] [cor1] [cor2]");
}
if (carid >= 400 && carid <= 611) {
if (IsPlayerInAnyVehicle(playerid)) {
new Float:X, Float:Y, Float:Z;
GetPlayerPos(playerid, X, Y, Z);
GetVehicleZAngle(GetPlayerVehicleID(playerid), ang);
new Query[400];
mysql_format(Conexao, Query, sizeof(Query), "INSERT INTO `concessionaria`(`VehID`, `Modelo`, `CordX`, `CordY`, `CordZ`, `Angulo`, `Cor1`, `Cor2`, `Preco`, `rtX`, `rtY`, `rtZ`, `Angulo1`) VALUES ('%d', '%d', '%f', '%f', '%f', '%f', '%d', '%d', '%d', '%f', '%f', '%f', '%f')", proximocarro, carid, X, Y, Z, ang, cor1, cor2, preco, X, Y, Z, ang);
mysql_tquery(Conexao, Query);
SetTimerEx("CriarVeiculo2", 5000, false, "dffffdd", carid, X, Y, Z, ang, cor1, cor2);
format(string, sizeof(string), "| INFO | Você colocou um veículo à venda.");
SendClientMessage(playerid, 0xB0FF30AA, string);
format(string, sizeof(string), "| INFO | Saia do local onde você colocou o veículo!");
SendClientMessage(playerid, ERRO_BVR, string);
return 1;
} else {
SendClientMessage(playerid, ERRO_BVR, "| ERRO | Você não está em um veículo.");
}
} else {
SendClientMessage(playerid, ERRO_BVR, "| ERRO | Veículo inválido!");
}
} else {
SendClientMessage(playerid, ERRO_BVR, "| ERRO | Você não tem permissão!");
}
return 1;
}
Certifique-se de que a função CarregarCarros esteja corretamente chamando GerarV2 com o ID correto do veículo, e que o ORM esteja corretamente configurado para carregar os dados do banco de dados. Se continuar tendo problemas, verifique se os dados estão realmente sendo salvos no banco de dados e se o ORM está funcionando corretamente.
Olá substitui tudo o que você indicou ai, e continuo tento problemas.
Os dados estão sendo salvo no banco de dados.
https://imgur.com/a/LLM3oBN
Não sei como verificar o ORM se está funcionando bem. pois eu utilizava dini como salvamento e eu paguei pro um programador passar pra MySQL e esse programador por falta de tempo não está mexendo mais com scripts.
Você não consegue fazer um orçamento sobre isso não? quanto cobra pra corrigur esse problema. Só falta isso pra poder lançar o servidor. e tou tentando consertar faz 10 dias já.