GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: scott1 le 22 Décembre 2009, 23:01:23

Titre: Commande ou rien ne se passe :/
Posté par: scott1 le 22 Décembre 2009, 23:01:23
Bonsoir, encore moi,

quand un joueur va se marié il doit dire "oui"

if(MarriageCeremoney[playerid] > 0)
{
    new idx;
    tmp = strtok(text, idx);
    if ((strcmp("Oui", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("Oui")))
{
    if(GotProposedBy[playerid] < 999)
    {
    if(IsPlayerConnected(GotProposedBy[playerid]))
{
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(GotProposedBy[playerid], giveplayer, sizeof(giveplayer));
    format(string, sizeof(string), "Prêtre: %s voulez vous prendre %s pour épouse? (Tapez 'Oui', autre chose annulera le marriage).", giveplayer,sendername);
SendClientMessage(GotProposedBy[playerid], COLOR_WHITE, string);
MarriageCeremoney[GotProposedBy[playerid]] = 1;
MarriageCeremoney[playerid] = 0;
GotProposedBy[playerid] = 999;
    return 1;
    }
    else
    {
        MarriageCeremoney[playerid] = 0;
        GotProposedBy[playerid] = 999;
        return 0;
    }
}
else if(ProposedTo[playerid] < 999)
{
    if(IsPlayerConnected(ProposedTo[playerid]))
{
getdate(year, month, day);
GetPlayerName(playerid, sendername, sizeof(sendername));
GetPlayerName(ProposedTo[playerid], giveplayer, sizeof(giveplayer));
if(PlayerInfo[playerid][pSex] == 1 && PlayerInfo[ProposedTo[playerid]][pSex] == 2)
{
format(string, sizeof(string), "Prêtre: %s et %s Je vous déclare...Marri et Femme, Vous pouvez embrasser la Marriée.", sendername, giveplayer);
SendClientMessage(playerid, COLOR_WHITE, string);
    format(string, sizeof(string), "Prêtre: %s et %s Je vous déclare...Marri et Femme, Vous pouvez embrasser la Marriée.", giveplayer, sendername);
SendClientMessage(ProposedTo[playerid], COLOR_WHITE, string);
format(string, sizeof(string), "Nouvelles de Marriage: Nous avons un nouveau couple à LA, %s & %s ont été marrié.", sendername, giveplayer);
OOCNews(COLOR_WHITE, string);
}
//MarriageCeremoney[ProposedTo[playerid]] = 1;
MarriageCeremoney[ProposedTo[playerid]] = 0;
MarriageCeremoney[playerid] = 0;
format(string, sizeof(string), "%s", sendername);
strmid(PlayerInfo[ProposedTo[playerid]][pMarriedTo], string, 0, strlen(string), 255);
format(string, sizeof(string), "%s", giveplayer);
strmid(PlayerInfo[playerid][pMarriedTo], string, 0, strlen(string), 255);
SafeGivePlayerMoney(playerid, - 20000);
PlayerInfo[playerid][pMJdate] = day;
PlayerInfo[ProposedTo[playerid]][pMJdate] = day;
PlayerInfo[playerid][pMMdate] = month;
PlayerInfo[ProposedTo[playerid]][pMMdate] = month;
PlayerInfo[playerid][pMAdate] = year;
PlayerInfo[ProposedTo[playerid]][pMAdate] = year;
PlayerInfo[playerid][pMarried] = 1;
PlayerInfo[ProposedTo[playerid]][pMarried] = 1;
PlayerInfo[ProposedTo[playerid]][pPhousekey] = PlayerInfo[playerid][pPhousekey];
PlayerInfo[ProposedTo[playerid]][pPbiskey] = PlayerInfo[playerid][pPbiskey];
ProposedTo[playerid] = 999;
MarriageCeremoney[playerid] = 0;
    return 1;
    }
    else
    {
        MarriageCeremoney[playerid] = 0;
        ProposedTo[playerid] = 999;
        return 0;
    }
}
}

Jusque la tout va bien, mais quand j'ajoute ceci

new temoin[MAX_PLAYER_NAME];
new temoin2[MAX_PLAYER_NAME];
GetPlayerName(MarryWitness[MarryWitnessOffer[playerid]], temoin2, sizeof(temoin2));
GetPlayerName(MarryWitness[MarryWitnessOffer[ProposedTo[playerid]]], temoin, sizeof(temoin));
format(string, sizeof(string), "%s", temoin);
strmid(PlayerInfo[playerid][pTemoin2], string, 0, strlen(string), 255);
format(string, sizeof(string), "%s", temoin2);
strmid(PlayerInfo[playerid][pTemoin], string, 0, strlen(string), 255);
format(string, sizeof(string), "%s", temoin);
strmid(PlayerInfo[ProposedTo[playerid]][pTemoin2], string, 0, strlen(string), 255);
format(string, sizeof(string), "%s", temoin2);
strmid(PlayerInfo[ProposedTo[playerid]][pTemoin], string, 0, strlen(string), 255);
Le joueur a beau dire oui, rien ne se passe; merci de votre aide ^^
Titre: Re : Commande ou rien ne se passe :/
Posté par: scott1 le 24 Décembre 2009, 17:19:51
up
Titre: Re : Commande ou rien ne se passe :/
Posté par: scott1 le 28 Décembre 2009, 18:08:32
Un âme charitable pour m'aider?
Titre: Re : Commande ou rien ne se passe :/
Posté par: » Lukubi™ le 28 Décembre 2009, 18:23:37
Au pire tu fait un /oui et tu fait un sendclientmessage "MisterT dit : Oui" ;)
Titre: Re : Commande ou rien ne se passe :/
Posté par: scott1 le 28 Décembre 2009, 18:27:59
Oui mais si je fait ça le mariage n'ira pas ;)
Titre: Re : Commande ou rien ne se passe :/
Posté par: S!m le 28 Décembre 2009, 18:34:34
Salut,

si tu veut découvrir où est le problème, il faut simplement laisser des traces.
Place plein de print (ou de SendClientMessage) dans ton code et regarde où ça bloque.

++Sim++
Titre: Re : Commande ou rien ne se passe :/
Posté par: scott1 le 28 Décembre 2009, 18:37:33
Je sais déjà ou ça bloque, ça bloque quand je rajoute le 2eme code.