GTAOnline.net
San Andreas Multiplayer (sa:mp) => Scripting SA-MP [Pawn center] => Discussion démarrée par: NoLimit le 21 Septembre 2011, 14:19:37
-
Bonjour à Tous,
Je vous demande vôtre aide a propos d'une boite de dialog style 'MSGBOX'.
Mon problème est qu'il y a 2 options du genre, Oui ou Non, mais l'option non consiste à faire spawn le joueur.
Le première item marche très bien mais le deuxième ne répond pas.
Exemple :
if (dialogid == 2806)
{
if(response) // Si il presse le premier bouton
{
.... Code
}
else
{
SetPlayerSpawn(playerid);
}
}
Merci de m'aider, c'est peut être petit mais je ne comprend pas ^^.
-
SpawnPlayer()
-
Merci de ta réponse, mais sa ne marche toujours pas ... :s
-
Salut,
Essaie plutôt:
if(dialogid == 2806)
{
if(response == 1) // Si il presse le premier bouton
{
.... Code
}
if(response == 0)
{
SpawnPlayer(playerid);
}
}
-
Salut, toujours pas malheureusement ...
-
Les codes que l'on te donne sont justes, donne nous ton code original qu'on regarde
-
Bah c'est exactement ce que j'ai mis au dessus ... Le première item ("Oui") marche très bien mais le deuxième ("Non") ne répond pas ...
Si il faut vraiment que je le mette au complet dites le moi ^^'
-
Oui c'est peut être dans ton premier item que ça peut faire bugger le Menu^^
-
Et bien tenez ^^ :
if (dialogid == 2806)
{
if (response == 1) // Si il presse le premier bouton
{
TutTime[playerid] = 1;
return 1;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Bienvenue sur **** **** Role Play.");
PlayerInfo[playerid][pTut] = 1;
gOoc[playerid] = 0; gNews[playerid] = 0; gFam[playerid] = 0;
TogglePlayerControllable(playerid, 1);
MedicBill[playerid] = 0;
SetTimerEx("UnsetFirstSpawn", 5000, false, "i", playerid);
SetPlayerSpawn(playerid);
}
}
-
Essaie ça:
if(dialogid == 2806)
{
if(response == 0) // Si il presse le premier bouton
{
TutTime[playerid] = 1;
return 1;
}
if(response == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "Bienvenue sur **** **** Role Play.");
PlayerInfo[playerid][pTut] = 1;
gOoc[playerid] = 0; gNews[playerid] = 0; gFam[playerid] = 0;
TogglePlayerControllable(playerid, 1);
MedicBill[playerid] = 0;
SetTimerEx("UnsetFirstSpawn", 5000, false, "i", playerid);
SpawnPlayer(playerid);
}
}
Spiirou t'avais déjà dit de changer le SetPlayerSpawn par SpawnPlayer.
-
Si le code de katou ne fonctionne pas essaie en virant le return 1; comme ceci :
<?php
if(dialogid == 2806)
{
if(response) // Si il presse le premier bouton
{
TutTime[playerid] = 1;
}
else
{
SendClientMessage(playerid, COLOR_WHITE, "Bienvenue sur **** **** Role Play.");
PlayerInfo[playerid][pTut] = 1;
gOoc[playerid] = 0; gNews[playerid] = 0; gFam[playerid] = 0;
TogglePlayerControllable(playerid, 1);
MedicBill[playerid] = 0;
SetTimerEx("UnsetFirstSpawn", 5000, false, "i", playerid);
SpawnPlayer(playerid);
}
}
-
C'est ce que j'ai penser aussi ^^
-
J'ai essayer les deux possibilités, problème toujours pas résolut... Tenez je vais vous donner la boite de dialogue peut être que ça vient de là..
format(string, 256, "Félicitation %s, vous avez réussi le questionnaire.\nVoulez passer le tutoriel au tutoriel ?",sendername);
ShowPlayerDialog(playerid,2806,DIALOG_STYLE_MSGBOX,"Confirmation",string,"Oui","Non");
-
Ajoute un print la ou y a le problème, essaie d'appuyer sur le bouton et regarde dans ta console si il t'affiche le texte ou pas.
-
Merci, pas bête du tous ^^.
-
Re-Up*, désoler de inactivité je n'ai pu me rendre présent ^^.
J'ai essayer ce que vous m'avez dit et rien ne s'affiche.
Je ne comprend pas honnêtement ....
-
Envoie ton msn skype ou autre, on en parlera directement et voir par Teamwiever ton problème si tu a envie, envoie par PM.
-
DIALOG_STYLE_MSGBOX est une constante, quelle est le problème ?
-
Problème résolue, le problème venais du faite qu'a la fin de ma callback "OnDialogResponse" il y avais un "return 1;" a la place d'un "return 0;".
Je vous remercie quand même pour vôtre précieuse aide et vôtre attention.