GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: snikers le 08 Novembre 2010, 22:26:33

Titre: [Probleme] de programation avec [else]
Posté par: snikers le 08 Novembre 2010, 22:26:33
Voila mon Code

Donc un Commande ferme la porte de la SFPD Quand on ouvre la porte sa marque ceci : Ferme la porte de la [SFPD] !"
et si la porte et déjà fermer ses normalement censé marqué ceci : La porte de la [SFPD] et deja fermer

Code: (pawn) [Sélectionner]
if (strcmp("/frsf", cmdtext, true, 10) == 0)
{
    MoveObject(gate,-1571.603394, 660.648865, 9.022379, 3.0);

new message[127];
    GetPlayerName(playerid, message, sizeof(message));
    format(message,sizeof(message), "%s Ferme la porte de la [SFPD] !", message, playerid);
    SendClientMessage(playerid, COLOR_BLUE, message);
}
 else
{
new message[127];
    GetPlayerName(playerid, message, sizeof(message));
    format(message,sizeof(message), "%s La porte de la [SFPD] et deja fermer", message, playerid);
    SendClientMessage(playerid, COLOR_BLUE, message);
return 1;
}
    return 0;
Titre: Re : [Probleme] de programation avec [else]
Posté par: scott1 le 09 Novembre 2010, 11:12:00
Salut,

comme Gzume te l'a déja dit ceci est deja faux

if (strcmp("/frsf", cmdtext, true, 10) == 0)
si non, le probleme viens du fait que

Si on tappe la commande /frsf

On ouvre la porte

Si non  (( Ton else est placé la donc pawn interprète, si il tape la la cmd frsf on ouvre la grille si cez n'est pas cette commande, on lui dit qu'elle est deja ouverte ))

on dit qu'elle est fermée.


Ce qu'il faudrai que tu face s'est un new PorteSF;

quand tu l'ouvre PorteSF = 1;

quand tu ferme PorteSF = 0;

et dans ton code tu fera

si PorteSF == 0

on ouvre

si non

on lui dit qu'elle est deja ouverte