[Ajuda] Dificuldade de usar variбveis enum.
#1

Pessoal, estou com um probleminha aqui para mostrar as quatros variбveis abaixo no meu Dialog, lб no final. Se alguйm souber o que fiz de errado, por favor me fale.

PHP код:
enum pInfoRotas {
    
fornecedor[25], //Esta
    
loc1[25], //Esta
    
Float:loc1x,
    
Float:loc1y,
    
Float:loc1z,
    
loc2[25], //Esta
    
Float:loc2x,
    
Float:loc2y,
    
Float:loc2z,
    
tempo,
    
carga[25], //Esta
    
valor
}
new 
PlayerInfoRotas[MAX_PLAYERS][pInfoRotas]; 
PHP код:
forward AplicandoCargas(playerid);
public 
AplicandoCargas(playerid) {
    
cache_get_field_content(0"fornecedor"PlayerInfoRotas[playerid][fornecedor]);
    
cache_get_field_content(0"loc1"PlayerInfoRotas[playerid][loc1]);
    
PlayerInfoRotas[playerid][loc1x] = cache_get_field_content_float(0"loc1x");
    
PlayerInfoRotas[playerid][loc1y] = cache_get_field_content_float(0"loc1y");
    
PlayerInfoRotas[playerid][loc1z] = cache_get_field_content_float(0"loc1z");
    
cache_get_field_content(0"loc2"PlayerInfoRotas[playerid][loc2]);
    
PlayerInfoRotas[playerid][loc2x] = cache_get_field_content_float(0"loc2x");
    
PlayerInfoRotas[playerid][loc2y] = cache_get_field_content_float(0"loc2y");
    
PlayerInfoRotas[playerid][loc2z] = cache_get_field_content_float(0"loc2z");
    
PlayerInfoRotas[playerid][tempo] = cache_get_field_content_int(0"tempo");
    
cache_get_field_content(0"carga"PlayerInfoRotas[playerid][carga]);
    
PlayerInfoRotas[playerid][valor] = cache_get_field_content_int(0"valor");
    return 
1;

PHP код:
CMD:trabalhar(playerid) {
    if(
Trabalhando[playerid] != 0) return SendClientMessage(playerid, -1"Vocк jб estб Trabalhando!");
    if(
Emprego[playerid] == Caminhoneiro) {
        new 
vehicleid GetPlayerVehicleID(playerid);
        if(
GetVehicleModel(vehicleid) == 455) {
            new 
query[120];
            
mysql_format(MySqlCquerysizeof(query), "SELECT * FROM `cargasflatbad` WHERE `id` = '1'");
            
mysql_tquery(MySqlCquery"AplicandoCargas""i"playerid);
            new 
string[120];
            
format(stringsizeof(string), "De: %s - Para: %s"PlayerInfoRotas[playerid][loc1], PlayerInfoRotas[playerid][loc2]); //Esta
            
ShowPlayerDialog(playeridDIALOG01DIALOG_STYLE_LIST"Rotas Testy"string"Aceitar""Recusar"); //Esta
        
}
    }
    return 
1;

Reply
#2

Mostra a dialog na callback AplicandoCargas porque tu tб mostrando antes de carregar os dados
Reply
#3

Quote:
Originally Posted by PT
Посмотреть сообщение
Mostra a dialog na callback AplicandoCargas porque tu tб mostrando antes de carregar os dados
Ainda nгo mostra: http://prnt.sc/dfzcy4
Reply
#4

Alguйm sabe como resolver isso?
Reply
#5

Faz um debug para ver se esta carregando corretamente os dados do banco de dados e usa o ShowPlayerDialog no final da callback AplicandoCargas
Reply
#6

Quote:
Originally Posted by MBJ
Посмотреть сообщение
Faz um debug para ver se esta carregando corretamente os dados do banco de dados e usa o ShowPlayerDialog no final da callback AplicandoCargas
Nгo sabia como fazer isso entгo procurei e apliquei ao meu cуdigo.
Parece que as variбveis estгo recebendo uma string vazia, como um espaзo.


Console:

Код:
Fornecedor:
-------
Local 1:
Local 1 X: 358.773010
Local 1 Y: 879.285705
Local 1 Z: 20.406299
-------
Local 2:
Local 2 X: 2706.437255
Local 2 Y: 894.192382
Local 2 Z: 10.130900
-------
Tempo Estimado: 2
-------
Nome da Carga:
-------
Valor da Carga: 1300
Cуdigo:

PHP код:
forward AplicandoCargas(playerid);
public 
AplicandoCargas(playerid) {
    
cache_get_field_content(0"fornecedor"PlayerInfoRotas[playerid][fornecedor]);
    
cache_get_field_content(0"loc1"PlayerInfoRotas[playerid][loc1]);
    
PlayerInfoRotas[playerid][loc1x] = cache_get_field_content_float(0"loc1x");
    
PlayerInfoRotas[playerid][loc1y] = cache_get_field_content_float(0"loc1y");
    
PlayerInfoRotas[playerid][loc1z] = cache_get_field_content_float(0"loc1z");
    
cache_get_field_content(0"loc2"PlayerInfoRotas[playerid][loc2]);
    
PlayerInfoRotas[playerid][loc2x] = cache_get_field_content_float(0"loc2x");
    
PlayerInfoRotas[playerid][loc2y] = cache_get_field_content_float(0"loc2y");
    
PlayerInfoRotas[playerid][loc2z] = cache_get_field_content_float(0"loc2z");
    
PlayerInfoRotas[playerid][tempo] = cache_get_field_content_int(0"tempo");
    
cache_get_field_content(0"carga"PlayerInfoRotas[playerid][carga]);
    
PlayerInfoRotas[playerid][valor] = cache_get_field_content_int(0"valor");
    
printf("Fornecedor: %s"PlayerInfoRotas[playerid][fornecedor]);
    print(
"-------");
    
printf("Local 1: %s"PlayerInfoRotas[playerid][loc1]);
    
printf("Local 1 X: %f"PlayerInfoRotas[playerid][loc1x]);
    
printf("Local 1 Y: %f"PlayerInfoRotas[playerid][loc1y]);
    
printf("Local 1 Z: %f"PlayerInfoRotas[playerid][loc1z]);
    print(
"-------");
    
printf("Local 2: %s"PlayerInfoRotas[playerid][loc2]);
    
printf("Local 2 X: %f"PlayerInfoRotas[playerid][loc2x]);
    
printf("Local 2 Y: %f"PlayerInfoRotas[playerid][loc2y]);
    
printf("Local 2 Z: %f"PlayerInfoRotas[playerid][loc2z]);
    print(
"-------");
    
printf("Tempo Estimado: %i"PlayerInfoRotas[playerid][tempo]);
    print(
"-------");
    
printf("Nome da Carga: %s"PlayerInfoRotas[playerid][carga]);
    print(
"-------");
    
printf("Valor da Carga: %i"PlayerInfoRotas[playerid][valor]);
    new 
string[120];
    
format(stringsizeof(string), "De: %s - Para: %s"PlayerInfoRotas[playerid][loc1], PlayerInfoRotas[playerid][loc2]);
    
ShowPlayerDialog(playeridDIALOG01DIALOG_STYLE_LIST"Rotas Testy"string"Aceitar""Recusar");
    return 
1;

Jб fiz alguns testes e sу conseguir chegar a este resultado aн, poderia me informar se eu estou passando os valores de forma correta, pelo menos as strings, pois as variбveis Float e Int estгo corretas.

Banco de Dados: http://prnt.sc/dg4l0g
Reply
#7

O que serб que pode ser ?
Reply
#8

Consegui! Tirei as 4 arrays da enumeraзгo e criei no escopo global:

new fornecedor[25][MAX_PLAYERS];
new loc1[25][MAX_PLAYERS];
new loc2[25][MAX_PLAYERS];
new carga[25][MAX_PLAYERS];

Poderia fazer isso sem problemas?
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)