22/07/2024 12:35
(22/07/2024 10:15)strelo Escreveu: Vamos adicionar mais detalhes de debug para verificar o que está ocorrendo especificamente dentro da função orm_select e garantir que os dados estão sendo carregados corretamente.
Vamos adicionar mais mensagens de debug para ver os dados que estão sendo retornados pelo ORM. Aqui está a versão atualizada do código:
Código PHP:public OnGameModeInit() {
for (new carror = 0; carror < MAX_CARROS; carror++) {
CarregarCarros(carror);
}
return 1;
}
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);
printf("Selecionando veículo ID %d\n", vehid);
return 1;
}
function GerarV2(vehid) {
new erro = orm_errno(VehInfo[vehid][vORM]);
if (erro != ERROR_NO_DATA) {
printf("Erro do ORM para veículo ID %d: %d\n", vehid, erro);
printf("Dados carregados para veículo ID %d: Modelo: %d, Coordenadas: (%f, %f, %f), Ângulo: %f, Cores: (%d, %d)\n",
vehid,
VehInfo[vehid][Modelo],
VehInfo[vehid][CordX],
VehInfo[vehid][CordY],
VehInfo[vehid][CordZ],
VehInfo[vehid][Angulo],
VehInfo[vehid][vCor1],
VehInfo[vehid][vCor2]);
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;
printf("Veículo ID %d criado com sucesso. Modelo: %d, Coordenadas: (%f, %f, %f), Ângulo: %f, Cores: (%d, %d)\n",
vehid,
VehInfo[vehid][Modelo],
VehInfo[vehid][CordX],
VehInfo[vehid][CordY],
VehInfo[vehid][CordZ],
VehInfo[vehid][Angulo],
VehInfo[vehid][vCor1],
VehInfo[vehid][vCor2]);
}
} else {
printf("Nenhum dado encontrado para o veículo ID %d\n", vehid);
}
}
Isso nos dará uma visão clara se os dados estão sendo recuperados corretamente do banco de dados e se a função CreateVehicle está sendo chamada com os parâmetros corretos.
Código:
Atualize o código. novamente aparece as mesma mensagens
[12:32:44] Selecionando veículo ID 0
[12:32:44] Selecionando veículo ID 1
[12:32:44] Selecionando veículo ID 2
[12:32:44] Selecionando veículo ID 3
[12:32:44] Selecionando veículo ID 4
[12:32:44] Selecionando veículo ID 5
[12:32:44] Selecionando veículo ID 6
[12:32:44] Selecionando veículo ID 7
[12:32:44] Selecionando veículo ID 8
no fim do console:
[12:32:44] Selecionando veículo ID 657
[12:32:44] Selecionando veículo ID 658
[12:32:44] Selecionando veículo ID 659
[12:32:44] |--------------------------------------------|
[12:32:44] | Gamemode carregado com sucesso |
[12:32:44] |--------------------------------------------|