#define PLAYER_CONCE 2
#define VIP_CONCE 4
#define ADM_CONCE 5
CMD:carmenu(playerid)
{
for(new carro = 0; carro < MAX_CONCES; carro++)
{
format(string, sizeof(string), PASTA_CONCE, carro);
if(DOF2_FileExists(string))
{
if(strcmp(DOF2_GetString(string, "Dono"), PlayerName(playerid), false) == 0)
{
ShowPlayerDialog(playerid, D_MENUCARRO, DIALOG_STYLE_LIST, "Menu do Carro", "{FFFFFF}Localizar Veнculo\nEstacionar\nChaves\nCor 1\nCor 2\nRespawnar\nVender\nTunar\nDestunar", "Ok", "Fechar");
return 1;
}
}
}
SendClientMessage(playerid, COR_ERRO, "Vocк nгo tem um carro prуprio.");
return 1;
}
"VeiculosConce/conce%d.ini"
#define PLAYER_CONCE 2
#define VIP_CONCE 4
#define ADM_CONCE 5
CMD:carmenu(playerid)
{
new bool:tem_carro;
for(new carro = 0; carro < MAX_CONCES; carro++)
{
format(string, sizeof(string), PASTA_CONCE, carro);
if(DOF2_FileExists(string))
{
if(strcmp(DOF2_GetString(string, "Dono"), PlayerName(playerid), false) == 0)
{
tem_carro = true;
break;
}
}
}
if(tem_carro) ShowPlayerDialog(playerid, D_MENUCARRO, DIALOG_STYLE_LIST, "Menu do Carro", "{FFFFFF}Localizar Veнculo\nEstacionar\nChaves\nCor 1\nCor 2\nRespawnar\nVender\nTunar\nDestunar", "Ok", "Fechar");
else SendClientMessage(playerid, COR_ERRO, "Vocк nгo tem um carro prуprio.");
return 1;
}
|
Na verdade o loop para na primeira volta, ou seja, caso o primeiro arquivo nгo conste o nome do jogador ele nгo retorna nada.
A forma funcional que vejo seria desta forma: Код:
#define PLAYER_CONCE 2
#define VIP_CONCE 4
#define ADM_CONCE 5
CMD:carmenu(playerid)
{
for(new carro = 0; carro < MAX_CONCES; carro++)
{
format(string, sizeof(string), PASTA_CONCE, carro);
if(DOF2_FileExists(string))
{
if(strcmp(DOF2_GetString(string, "Dono"), PlayerName(playerid), false) == 0)
{
ShowPlayerDialog(playerid, D_MENUCARRO, DIALOG_STYLE_LIST, "Menu do Carro", "{FFFFFF}Localizar Veнculo\nEstacionar\nChaves\nCor 1\nCor 2\nRespawnar\nVender\nTunar\nDestunar", "Ok", "Fechar");
return true;
}
}
}
SendClientMessage(playerid, COR_ERRO, "Vocк nгo tem um carro prуprio.");
return 1;
}
Para selecionar mais de um veнculo serб necessбrio mexer na estrutura desse cуdigo, pois atй o momento ele nem funcional estб, pois abre um diбlogo sem funзгo alguma. |
#define PLAYER_CONCE 2
#define VIP_CONCE 4
#define ADM_CONCE 5
CMD:carmenu(playerid)
{
for(new carro = 0; carro < MAX_CONCES; carro++)
{
format(string, sizeof(string), PASTA_CONCE, carro);
if(DOF2_FileExists(string))
{
if(strcmp(DOF2_GetString(string, "Dono"), PlayerName(playerid), false) == 0)
{
return ShowPlayerDialog(playerid, D_MENUCARRO, DIALOG_STYLE_LIST, "Menu do Carro", "{FFFFFF}Localizar Veнculo\nEstacionar\nChaves\nCor 1\nCor 2\nRespawnar\nVender\nTunar\nDestunar", "Ok", "Fechar");
}
}
}
SendClientMessage(playerid, COR_ERRO, "Vocк nгo tem um carro prуprio."); //tem
//nгo tem
return 1;
}
#define PLAYER_CONCE 2
#define VIP_CONCE 4
#define ADM_CONCE 5
new meus_veiculos[MAX_PLAYERS][3]; // Pode ter atй 3 veнculos
CMD:carmenu(playerid)
{
new contar, str[100];
for(new carro = 0; carro < MAX_CONCES; carro++)
{
format(string, sizeof(string), PASTA_CONCE, carro);
if(DOF2_FileExists(string))
{
if(strcmp(DOF2_GetString(string, "Dono"), PlayerName(playerid), false) == 0)
{
meus_veiculos[playerid][contar] = carro;
contar ++;
}
}
}
switch(contar)
{
case 1: format(str, sizeof str, , "{FFFFFF}Veнculo ID %d", meus_veiculos[playerid][0]);
case 2: format(str, sizeof str, "Menu do Carro", "{FFFFFF}Veнculo ID %d\nVeнculo ID %d", meus_veiculos[playerid][0], meus_veiculos[playerid][1]);
case 3: format(str, sizeof str, "Menu do Carro", "{FFFFFF}Veнculo ID %d\nVeнculo ID %d\nVeнculo ID %d", meus_veiculos[playerid][0], meus_veiculos[playerid][1], meus_veiculos[playerid][2]);
default: SendClientMessage(playerid, COR_ERRO, "Vocк nгo tem um carro prуprio.");
}
if(contar)
ShowPlayerDialog(playerid, D_MENUCARRO, DIALOG_STYLE_LIST, "Menu do Carro", str, "Ok", "Fechar");
return 1;
}
|
Код:
#define PLAYER_CONCE 2
#define VIP_CONCE 4
#define ADM_CONCE 5
new meus_veiculos[MAX_PLAYERS][3]; // Pode ter atй 3 veнculos
CMD:carmenu(playerid)
{
new contar, str[100];
for(new carro = 0; carro < MAX_CONCES; carro++)
{
format(string, sizeof(string), PASTA_CONCE, carro);
if(DOF2_FileExists(string))
{
if(strcmp(DOF2_GetString(string, "Dono"), PlayerName(playerid), false) == 0)
{
meus_veiculos[playerid][contar] = carro;
contar ++;
}
}
}
switch(contar)
{
case 1: format(str, sizeof str, , "{FFFFFF}Veнculo ID %d", meus_veiculos[playerid][0]);
case 2: format(str, sizeof str, "Menu do Carro", "{FFFFFF}Veнculo ID %d\nVeнculo ID %d", meus_veiculos[playerid][0], meus_veiculos[playerid][1]);
case 3: format(str, sizeof str, "Menu do Carro", "{FFFFFF}Veнculo ID %d\nVeнculo ID %d\nVeнculo ID %d", meus_veiculos[playerid][0], meus_veiculos[playerid][1], meus_veiculos[playerid][2]);
default: SendClientMessage(playerid, COR_ERRO, "Vocк nгo tem um carro prуprio.");
}
if(contar)
ShowPlayerDialog(playerid, D_MENUCARRO, DIALOG_STYLE_LIST, "Menu do Carro", str, "Ok", "Fechar");
return 1;
}
|