GTAOnline.net

San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: ApocKalipsS le 30 Août 2009, 10:39:23

Titre: PickUp qui se trompe...
Posté par: ApocKalipsS le 30 Août 2009, 10:39:23
Bonjour,
Voici mon code :

public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == PickUp)
{
GameTextForPlayer(playerid, "~g~Bienvenue,~w~Tapez ~r~/prendrejob ~w~pour devenir ~g~Dealer d'armes~w~.", 5000, 3);
return 1;
}
if(pickupid == PickUp1)
{
GameTextForPlayer(playerid, "~>~~w~Tapez /prendrematos pour prendre le Matos.", 5000, 3);
return 1;
}
if(pickupid == Pick)
{
GameTextForPlayer(playerid, "~>~~r~Tapez /alarme pour activer l'alarme.", 5000, 5);
return 1;
}
if(pickupid == Pick1)
{
GameTextForPlayer(playerid, "~>~~w~Tapez /entrer pour entrer.", 5000, 5);
return 1;
}
return 1;
}

Quand je rentre dans un PickUp, par exemple PickUp1, j'ai le GameText de PickUp, je comprend pas pourquoi.
Merci de m'aider  ;)
Titre: Re : PickUp qui se trompe...
Posté par: cristab le 30 Août 2009, 10:57:29
pourquoi tu met des return 1 partout ?

c'est pas tres bon

public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == PickUp)
{
   GameTextForPlayer(playerid, "~g~Bienvenue,~w~Tapez ~r~/prendrejob ~w~pour devenir ~g~Dealer d'armes~w~.", 5000, 3);
}
if(pickupid == PickUp1)
{
   GameTextForPlayer(playerid, "~>~~w~Tapez /prendrematos pour prendre le Matos.", 5000, 3);
}
if(pickupid == Pick)
{
   GameTextForPlayer(playerid, "~>~~r~Tapez /alarme pour activer l'alarme.", 5000, 5);
}
if(pickupid == Pick1)
{
   GameTextForPlayer(playerid, "~>~~w~Tapez /entrer pour entrer.", 5000, 5);
}
return 1;
}
Titre: Re : PickUp qui se trompe...
Posté par: ApocKalipsS le 30 Août 2009, 12:57:20
Je les ai mit car j'avait avant le code que tu as mit, et ca marchait pas... J'ai donc essayer toutes les solutions.
Titre: Re : PickUp qui se trompe...
Posté par: cristab le 30 Août 2009, 13:04:10
tu te serais pas tromper en les declarant ?
Titre: Re : PickUp qui se trompe...
Posté par: ghm94 le 30 Août 2009, 13:30:49
Je pense aussi comme cristab.

Mais se serait pas mieux de faire un tableau pour tes pickups (enfin si t'en à beaucoup)
new pickup[NOMBRE DE PICKUP];
et aussi meme si le probleme ne vient pas de la utilise :
else if
// Au lieu de :
else
à chaque fois.


c'est mieux je pense ;)

++
Titre: Re : PickUp qui se trompe...
Posté par: ApocKalipsS le 30 Août 2009, 15:17:49
J'ai tout essayé, et je ne me suis pas tromper en les déclarant.
J'ai aussi essayer avec le else if, et ca me met "~g~Bienvenue,~w~Tapez ~r~/prendrejob ~w~pour devenir ~g~Dealer d'armes~w~".
Titre: Re : PickUp qui se trompe...
Posté par: S!m le 30 Août 2009, 17:27:04
Salut,

je suis persuadé que ton problème vient des variable PickUp, pourquoi? tu utilise AddStaticPickup, or cette fonction ne retourne pas le ID du pickup, remplace par CreatePickup et ça fonctionnera

ps. pour tes return 1, c'est vrai, ça ne fait pas beau, mais utilise des else if et tu obtiendra le même résultat....

++Sim++
Titre: Re : PickUp qui se trompe...
Posté par: Lance le 30 Août 2009, 19:09:47
Sim vien de trouver. J'avais le même probléme, j'ai chercher un peut et fallais mettre CreatePickup.