GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: Juan_Alvaro le 31 Décembre 2010, 12:01:58
-
Bonjour et bonne fête à tous, je vais essayé d'expliquai mon problème clairement et détailler.
La 0.3c sortie, j'ai vue un système qui m'intéressai, celui des plaques d'immatriculation. J'ai fait un petit système pour créer des plaques aléatoirement. J'en mets sur une caisse, je fait un reboot puis je vois que la plaque ne sais pas sauvegarder.
Je me suis mis a faire un système de sauvegarde. Je créer 2 fonctions, SavePlate et LoadPlate. Je mets LoadPlate dans OnGameModeInit. Je compile, j'ai aucune erreur, puis quand je lance le serveur, il ne veut pas se lancer en entier.
Explication Détailler :
public OnGameModeInit()
{
print("test1")
.
.
.
print("test2")
LoadPlate()
print("test3")
.
.
.
return 1;
}
Console M'affiche :
test1
test2
puis il reste bloquer ici
Merci d'avance pour votre aide.
-
peu t'on voir la fonction loadplate
-
Voila :
public LoadPlate()
{
new arrCoords[2][64];
new strFromFile2[256];
new File: file = fopen("plaque.cfg", io_read);
for(new veh; veh != MAX_VEHICLES; veh++)
if (file)
{
while (veh < sizeof(PlaqueInfo))
{
fread(file, strFromFile2);
split(strFromFile2, arrCoords, '|');
veh = strval(arrCoords[0]);
strmid(PlaqueInfo[veh][pPlaque], arrCoords[1], 0, strlen(arrCoords[1]), 255);
veh++;
}
fclose(file);
}
return 1;
}
-
est c'est tout seulement sa donc la je me demande bien comment le serveur peu savoir que c'est les plaque a changer sans mettre sa SetVehicleNumberPlate
public LoadPlate()
{
new arrCoords[2][64];
new strFromFile2[256];
new File: file = fopen("plaque.cfg", io_read);
for(new veh; veh != MAX_VEHICLES; veh++)
if (file)
{
while (veh < sizeof(PlaqueInfo))
{
fread(file, strFromFile2);
split(strFromFile2, arrCoords, '|');
veh = strval(arrCoords[0]);
strmid(PlaqueInfo[veh][pPlaque], arrCoords[1], 0, strlen(arrCoords[1]), 255);
SetVehicleNumberPlate(veh,PlaqueInfo[veh][pPlaque];
veh++;
}
fclose(file);
}
return 1;
}
-
La console bloque toujours au "test2"
-
montre nous le ongamemodeinit car dans ton extrait pour moi les test sont mal placer
-
Voila les print du LoadPlate :
print("test2");
LoadPlate();
print("test3");
Voila les print du Debut de OnGameModeInit :
public OnGameModeInit()
{
print("test");
Voila les print de la Fin de OnGameModeInit :
print("test4");
return 1;
}
-
Personne ne sais ?
-
ajoute des printf dans le load plate et non dans le ongamemodeinit pour voir