GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: Azz45 le 05 Janvier 2009, 21:44:44
-
Salut ,
J'ai un souci je monte dans un véhicule de la police
Sa me dit ' You are not a fireman '
J'ai changez les vehicules c'est pour le /vmenu
Comment tout remettre en place svp ?
et aussi sa maintenant C:\Program Files\Rockstar Games\GTA San Andreas\gta.sa\GTA San Andreas\SAMP\gamemodes\godfather.pwn(1120) : error 052: multi-dimensional arrays must be fully initialized
Que veut dire sa ;)
-
Salut,
ça veut dire que tu n'initialise pas correctement un array multidimensionnel, qu'es-ce?
il s'agit tout simplement d'une variable du genre:
new PlayersStats[MAX_PLAYERS][20][3];
mais pour pouvoir vraiment t'aider, il faudrait voir la ligne où tu obtiens cette erreur..
++Sim++
-
new JoinPed[52][1] = {
{280},//POLICE_FORCE
{281},
{282},
{283},
{288},
{148},
{150},
{286},//FBI/ATF
{164},
{163},
{165},
{166},
{287},//NATIONAL_GUARD
{285},
{61},
{70},//FIRE/AMBULANCE
{274},
{275},
{276},
{91},
{113},//LA_COSA_NOSTRA
{125},
{111},
{125},
{126},
{112},
{233},
{120},//YAKUZA
{122},
{124},
{123},
{141},
{186},
{127},//HITMANS
{165},
{186},
{123},
{59},
{193},//NEWS_REPORTERS
{188},
{187},
{255},//TAXI_CAB_COMPANY
{253},
{59},//DRIVING/FLYING_SCHOOL
{60},//DRIVING/FLYING_SCHOOL
{76},//DRIVING/FLYING_SCHOOL
{150}//DRIVING/FLYING_SCHOOL
};
-
Dans l'erreur "error 052: multi-dimensional arrays must be fully initialized", le mot important c'est "fully" qui veut dire complètement.
"multi-dimensional arrays must be fully initialized" veut dire "les tableaux multi-dimensionnels doivent être complètement initialisé".
Ceci veut dire que si ton tableau contient 52x1 éléments, il faut mettre 52x1 valeurs derrière (dans ton exemple, il n'y en a que 47x1).
NB : je mets "x1" pour bien montrer qu'il s'agit d'un tableau multi-dimensionnel.
Autre chose, ton tableau est déclaré comme multi-dimensionnel mais une des dimension (la deuxième) ne contient qu'un seul élément.
Ceci est absurde.
Il vaudrait mieux remplacer
new JoinPed[52][1]; //52x1=52 éléments
par
new JoinPed[52]; // 52 éléments (tiens, c'est pareil)
Ton tableau n'aura plus qu'une dimension.
Ceci permet d'ailleurs de faire disparaître l'erreur en question puisqu'un tableau uni-dimensionnel n'a pas besoin d'être complètement initialisé (les valeurs non données sont considérées comme égales à 0).
Par contre, l'utilisation en est différente.
Dans le premier cas, on accède aux éléments avec deux indices (dont un qui est toujours égal à 0) :
JoinedPed[6][0] = 5; // le [ 0] est obligatoire et invariant
Dans le deuxième cas, un seul indice est nécessaire
JoinedPed[6] = 5;
++
Syg
-
Syg sa ne marche pas ...
J'ai essayer les 2 solutions toujours les mêmes erreurs
-
Sans rien toucher d'autre à ton script, essaies en remplaçant le 52 par 47 dans la ligne
new JoinPed[52][1] = {
++
Syg
-
J'ai déja essayer sa me met 8 errors après ,
Mais cebon Syg j'ai résolu le souci merci de ton aide ;)
-
J'ai déja essayer , mais j'ai trouver le souci merci quand même