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

Titre: Problème sauvegarde des plaques
Posté 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.
Titre: Re : Problème sauvegarde des plaques
Posté par: cristab le 31 Décembre 2010, 12:11:20
peu t'on voir la fonction loadplate
Titre: Re : Problème sauvegarde des plaques
Posté par: Juan_Alvaro le 31 Décembre 2010, 12:47:24
Voila :

Code: (pawn) [Sélectionner]
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;
}
Titre: Re : Problème sauvegarde des plaques
Posté par: cristab le 31 Décembre 2010, 13:11:22
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;
}
Titre: Re : Problème sauvegarde des plaques
Posté par: Juan_Alvaro le 31 Décembre 2010, 13:27:57
La console bloque toujours au "test2"
Titre: Re : Problème sauvegarde des plaques
Posté par: cristab le 31 Décembre 2010, 13:31:59
montre nous le ongamemodeinit car dans ton extrait pour moi les test sont mal placer
Titre: Re : Problème sauvegarde des plaques
Posté par: Juan_Alvaro le 31 Décembre 2010, 13:47:14
Voila les print du LoadPlate :

Code: (pawn) [Sélectionner]
print("test2");
LoadPlate();
print("test3");


Voila les print du Debut de OnGameModeInit :

Code: (pawn) [Sélectionner]
public OnGameModeInit()
{
print("test");

Voila les print de la Fin de OnGameModeInit :

Code: (pawn) [Sélectionner]
print("test4");
return 1;
}
Titre: Re : Problème sauvegarde des plaques
Posté par: Juan_Alvaro le 10 Janvier 2011, 12:05:48
Personne ne sais ?
Titre: Re : Problème sauvegarde des plaques
Posté par: cristab le 10 Janvier 2011, 12:42:20
ajoute des printf dans le load plate et non dans le ongamemodeinit pour voir