1
Scripting SA-MP [Pawn center] / Re : Problème avec strcat
« le: 18 Juin 2013, 14:19:06 »
Salut, merci de la réponse.
Comme ceci?
J'ai essayé mais toujours le même problème.
Concernant la commande que j'utilise, je n'y vois pas de problème :
T'as vérifié au niveau du code qui vérifie les commandes utilisateur?J'utilise cette variable dans plusieurs de mes scripts qui fonctionnent bien, donc je ne pense pas que le problème vienne de là.
Et aussi fait attention a l'utilisation des mots tels que string en tant que variable je ne sais pas en pawn mais sur certains langages ça peut poser problème (considéré comme un mot-clé qui permet de définir un type)
Salut, je vois qu'il ne faut absolument pas faire en programmation, c'est-à-dire utiliser des variables sans les initialiser.Code: (pawn) [Sélectionner]for(new g; g<=NB_GANGZONES; g++)Deviens.Code: (pawn) [Sélectionner]for(new g = 0; g<=NB_GANGZONES; g++)
TonCode: (pawn) [Sélectionner]new zonesa[1200], string[128];DeviensCode: (pawn) [Sélectionner]new zonesa[1200], string[128];
zonesa[0] = 0;
string[0] = 0;
Comme ceci?
Code: [Sélectionner]
stock GetZones(playerid)
{
new zonesa[1200], string[128];
zonesa[0] = 0;
string[0] = 0;
for(new g = 0; g<=NB_GANGZONES; g++)
{
string = "";
if(Zones[g][Team] == 1)
{
format(string, sizeof(string), "{00FF00}%s\n", Zones[g][Nom]);
strcat(zonesa, string, sizeof(string));
}
else if(Zones[g][Team] == 2)
{
format(string, sizeof(string), "{800080}%s\n", Zones[g][Nom]);
strcat(zonesa, string, sizeof(string));
}
else if(Zones[g][Team] == 3)
{
format(string, sizeof(string), "{F4F400}%s\n", Zones[g][Nom]);
strcat(zonesa, string, sizeof(string));
}
else if(Zones[g][Team] == 4)
{
format(string, sizeof(string), "{00FFFF}%s\n", Zones[g][Nom]);
strcat(zonesa, string, sizeof(string));
}
}
ShowPlayerDialog(playerid, DIALOG_ZONES, DIALOG_STYLE_LIST, "Choix du spawn", zonesa, "Valider", "Annuler");
return 1;
}J'ai essayé mais toujours le même problème.
Concernant la commande que j'utilise, je n'y vois pas de problème :
Code: [Sélectionner]
if(strcmp(cmd, "/getzones", true) == 0)
{
if(UserStats[playerid][Admin] <= 1)
{
SendClientMessage(playerid, COLOR_RED, "Vous n'avez pas l'autorisation d'utiliser cette commande.");
return 1;
}
GetZones(playerid);
return 1;
}
