• 07 Juin 2026, 02:40:59


Auteur Sujet: Pawno ne me signale aucune erreur, pourtant...  (Lu 872 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne scott1

  • *
  • Gangster
  • Messages: 1440
    • Voir le profil
Pawno ne me signale aucune erreur, pourtant...
« le: 01 Août 2010, 05:10:27 »
Bonjour à toutes et à tous,

J'ai un soucis avec 2 code pour vendre des biz et maisons entre joueurs.

J'ai coder ceci pour les maison:

else if(strcmp(x_job,"maison",true) == 0)
{
    if(OwnableMaisonOffer[playerid] < 999)
    {
        if(OwnableMaisonID[playerid] == 255) { return 1; }
        if(OwnableMaisonPrice[playerid] == 0) { return 1; }
if(PlayerInfo[playerid][pPhousekey] != 255) { SendClientMessage(playerid, COLOR_WHITE, "Vous avez déjà une maison !"); return 1; }
if (!ProxDetectorS(8.0, playerid, OwnableMaisonOffer[playerid])) { SendClientMessage(playerid, COLOR_WHITE, "Vous êtes trop loin de ce joueur !"); return 1; }
        if(PlayerInfo[playerid][pCash] >= OwnableMaisonPrice[playerid])
        {
if(IsPlayerConnected(OwnableMaisonOffer[playerid]))
{
    GetPlayerName(playerid, sendername, sizeof(sendername));
strmid(PlayerInfo[OwnableMaisonOffer[playerid]][pPhousekey], sendername, 0, strlen(sendername), 255);
    PlayerInfo[playerid][pPhousekey] = PlayerInfo[OwnableMaisonOffer[playerid]][pPhousekey];
    PlayerInfo[OwnableMaisonOffer[playerid]][pPhousekey] = 255;
    GetPlayerName(OwnableMaisonOffer[playerid], giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "Vous avez acheté la maison de %s pour $%d.",giveplayer,OwnableMaisonPrice[playerid]);
SendClientMessage(playerid, COLOR_WHITE, string);
format(string, sizeof(string), "%s à acheté votre maison pour $%d.",sendername,OwnableMaisonPrice[playerid]);
SendClientMessage(OwnableMaisonOffer[playerid], COLOR_WHITE, string);
    SafeGivePlayerMoney(playerid, - OwnableMaisonPrice[playerid]);
    SafeGivePlayerMoney(OwnableMaisonOffer[playerid], OwnableMaisonPrice[playerid]);
    DateProp(playerid);
DateProp(OwnableMaisonOffer[playerid]);
OnPropUpdate();
SauvegardeCompte(playerid);
SauvegardeCompte(OwnableMaisonOffer[playerid]);
GameTextForPlayer(playerid, "~w~Felicitation !", 5000, 3);
Update3dMaison(PlayerInfo[playerid][pPhousekey]);
SendClientMessage(playerid, COLOR_GRAD2, "Félicitation pour votre nouvel achat!");
SendClientMessage(playerid, COLOR_GRAD2, "Tapez /aidemaison pour voir le manuel de votre Maison!");
OwnableMaisonOffer[playerid] = 999;
OwnableMaisonID[playerid] = 255;
OwnableMaisonPrice[playerid] = 0;
    return 1;
}
}
else
{
    SendClientMessage(playerid, COLOR_GRAD1, "Vous n'avez pas assez d'argent!");
        return 1;
}
}
else
    {
        SendClientMessage(playerid, COLOR_GRAD1, "Personne ne vous vend de Maison!");
        return 1;
    }
return 1;
}

et ceci pour les biz:

else if(strcmp(x_job,"biz",true) == 0)
{
    if(OwnableBizOffer[playerid] < 999)
    {
        if(OwnableBizID[playerid] == 255) { return 1; }
        if(OwnableBizPrice[playerid] == 0) { return 1; }
if(PlayerInfo[playerid][pPbiskey] != 255) { SendClientMessage(playerid, COLOR_WHITE, "Vous avez déjà un biz !"); return 1; }
if (!ProxDetectorS(8.0, playerid, OwnableBizOffer[playerid])) { SendClientMessage(playerid, COLOR_WHITE, "Vous êtes trop loin de ce joueur !"); return 1; }
        if(PlayerInfo[playerid][pCash] >= OwnableBizPrice[playerid])
        {
if(IsPlayerConnected(OwnableBizOffer[playerid]))
{
    GetPlayerName(playerid, sendername, sizeof(sendername));
    if(PlayerInfo[OwnableBizOffer[playerid]][pPbiskey] < 100) { strmid(BizzInfo[OwnableBizOffer[playerid]][bOwner], sendername, 0, strlen(sendername), 255); }
    else { strmid(SBizzInfo[OwnableBizOffer[playerid]][sbOwner], sendername, 0, strlen(sendername), 255); }
    PlayerInfo[playerid][pPbiskey] = OwnableBizID[playerid];
    GetPlayerName(OwnableBizOffer[playerid], giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "Vous avez acheté le Biz de %s pour $%d.",giveplayer,OwnableBizPrice[playerid]);
SendClientMessage(playerid, COLOR_WHITE, string);
format(string, sizeof(string), "%s à acheté votre biz pour $%d.",sendername,OwnableBizPrice[playerid]);
SendClientMessage(OwnableBizOffer[playerid], COLOR_WHITE, string);
    SafeGivePlayerMoney(playerid, -OwnableBizPrice[playerid]);
    SafeGivePlayerMoney(OwnableBizOffer[playerid], OwnableBizPrice[playerid]);
    if(PlayerInfo[OwnableBizOffer[playerid]][pPbiskey] < 100) { Update3dBiz(OwnableBizID[playerid]); }
    else { Update3dSBiz(OwnableBizID[playerid]); }
PlayerInfo[OwnableBizOffer[playerid]][pPbiskey] = 255;
GameTextForPlayer(playerid, "~w~Felicitation !", 5000, 3);
SendClientMessage(playerid, COLOR_GRAD2, "Félicitation pour votre nouvel achat!");
SendClientMessage(playerid, COLOR_GRAD2, "Tapez /aidebiz pour voir le manuel de votre Biz!");
DateProp(playerid);
DateProp(OwnableBizOffer[playerid]);
OnPropUpdate();
SauvegardeCompte(playerid);
SauvegardeCompte(OwnableBizOffer[playerid]);
OwnableBizOffer[playerid] = 999;
OwnableBizID[playerid] = 255;
OwnableBizPrice[playerid] = 0;
    return 1;
}
else
{
    SendClientMessage(playerid, COLOR_GRAD1, "Vous n'avez pas assez d'argent!");
        return 1;
}
}
}
else
    {
        SendClientMessage(playerid, COLOR_GRAD1, "Personne ne vous vend de Biz!");
        return 1;
    }
return 1;
}

le hic s'est que pawno ne me signale aucune erreur, ig tout va bien sauf que ça ne change pas le propriétaire dans les fichier :s


Merci pour votre aide.
Refait un Game mode a partir d'une page blanche



Mes partages:

Systeme de Radio avec Frequence Création

Ajouter des véhicule dans le LARP - Godfather Tuto

Anti Cheat "JunkBuster" traduit en FR Traduction

LARP Traduit FR, V0.3 Traduction

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : Pawno ne me signale aucune erreur, pourtant...
« Réponse #1 le: 04 Août 2010, 04:41:20 »
Salut,

je remarque que certains changements de variables sont faits à la toute fin de la commande.
Il serait sans doute plus sûr de les faire avant de sauvegarder le tout.

Ne connaissant pas ton gamemode, il nous est difficile de t'aider avec ces deux commandes.
Le problème pourrait-il venir de ton OnPropUpdate (qui sauvegarde si je ne me trompe)?
Vérifie que toutes la variables sont modifiées correctement, nous ne pouvons faire cette partie.
Essaie d'ajouter des printf avant de sauvegarder pour vérifier les valeurs des variables, etc.

++Sim++