Bonjour,
Je rencontre un problème que je ne comprend pas d'où cela peut venir.
Je vous explique:
Quand on n'est a l'inscription, on clique si on n'est un homme ou une femme, quand je clique sur "homme" sa poursuit le tuto mais quand je clique sur "femme" sa suit pas le tutoriel et sa enlève le tableau. Donc si on veux reaparaitre le tableau tu fais "/t (texte)" et il te réafiche le tableau et ainsi de suite le problème suit...
Le truck que je trouve bizzare c'est que j'ai comparer a un autre gm, le scripte est exactement pareil et dans l'autre gm sa fonctionne...
Voilà le scripte:
Défine :
#define TUTOMENU 7 // By Tomy Copyright By InterGaming
Dans OnDialogResponse:
if(dialogid == TUTOMENU)
{
if(response)
{
new tmp[256];//variable pour notre format
format(tmp, 256, "homme", inputtext) || format(tmp, 256, "femme", inputtext)
return OnPlayerText(playerid, tmp);//
}
else//si pas de reponse
{
new tmp[256];//variable pour notre format
format(tmp, 256, "femme", inputtext) || format(tmp, 256, "femme", inputtext)
return OnPlayerText(playerid, tmp);//
}
}
Et le scripte du tuto: (parti 1)
public SetPlayerSpawn(playerid)
{
if(IsPlayerNPC(playerid)) return 1;
if(IsPlayerConnected(playerid))
{
SetPlayerSkin(playerid, PlayerInfo[playerid][pChar]);
if(PlayerInfo[playerid][pTut] == 0)
{
gOoc[playerid] = 1; gNews[playerid] = 1; gFam[playerid] = 1;
SetPlayerInterior(playerid, 3);
PlayerInfo[playerid][pInt] = 3;
SetPlayerPos(playerid, 330.6825,163.6688,1014.1875);
SetPlayerFacingAngle(playerid, 280);
TogglePlayerControllable(playerid, 0);
RegistrationStep[playerid] = 1;
//SendClientMessage(playerid, COLOR_YELLOW, "Veuillez remplir ce formulaire s'il vous plait. Il nous permettra d'avoir plus d'informations sur vous.");
//SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~Etape 1~~~~~~~~~~~~~~~~");
//SendClientMessage(playerid, COLOR_WHITE, "Êtes vous un Homme ou une Femme ? (Ecrivez ce que vous êtes)");
//SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
new tutomsg[256];
format(tutomsg,256,"Nous te souhaitons tout d'abord la bienvenue sur notre serveur, American World. \nNotre base de donnée demande de fournir quelques informations pour pouvoir s'inscrire correctement \n\nPremière information: Vous êtes un homme ou bien une Femme?");
ShowPlayerDialog(playerid,TUTOMENU,DIALOG_STYLE_MSGBOX,"[Menu d'inscription] ~ Informations N°1 ~ ",tutomsg,"Homme","Femme");
return 1;
}
Suite: (parti 2)
if(RegistrationStep[playerid] > 0)
{
if(RegistrationStep[playerid] == 1)
{
new idx;
tmp = strtok(text, idx);
if((strcmp("homme", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("homme")))
{
PlayerInfo[playerid][pSex] = 1;
//SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~Etape 2~~~~~~~~~~~~~~~~");
//SendClientMessage(playerid, COLOR_YELLOW2, "D'accord, donc vous êtes un Homme.");
//SendClientMessage(playerid, COLOR_WHITE, "Quelle est votre date de naissance? (Utilisez jj/mm/aaaa)");
//SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
new maleskin;
maleskin = random(sizeof(CivMalePeds));
new tuto1msg[256];
SendClientMessage(playerid, COLOR_YELLOW2, "Vous avez indiquez que vous êtes donc un Homme.");
format(tuto1msg,256,"Procédure de l'information suivante en cours... \nProcédure effectuer avec succès. \nDeuxième information : Quel est votre dâte de naissance ? \nVeuillez fournir votre date de naissance ci-dessous :");
//format(tuto1msg,256,"Procédure de l'information suivante en cours... /nProcédure réussis avec succès./nVeuillez fournir votre date de naissance ci-dessous :");
ShowPlayerDialog(playerid,TUTOMENU1,DIALOG_STYLE_INPUT,"[Menu du tutoriel] ~ Information N°2 ~",tuto1msg,"Valider","Annuler");
SetPlayerSkin(playerid, maleskin);
PlayerInfo[playerid][pChar] = maleskin;
RegistrationStep[playerid] = 2;
return 0;
}
else if((strcmp("femme", tmp, true, strlen(tmp)) == 0) && (strlen(tmp) == strlen("femme")))
{
PlayerInfo[playerid][pSex] = 2;
//SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~Etape 2~~~~~~~~~~~~~~~~");
//SendClientMessage(playerid, COLOR_YELLOW2, "D'accord, donc vous êtes une Femme.");
//SendClientMessage(playerid, COLOR_WHITE, "Quelle est votre date de naissance? (Utilisez jj/mm/aaaa)");
//SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
new femaleskin;
femaleskin = random(sizeof(CivFemalePeds));
new tuto1msg[256];
SendClientMessage(playerid, COLOR_YELLOW2, "Vous avez indiquez que vous êtes donc une Femme.");
//format(tuto1msg,256,"NQuelle Est Votre Date de votre naissance? (JJ/MM/ANNE) :");
format(tuto1msg,256,"Notre base de donnée demande de founir votre date de naissance pour s'inscrire./n/nVeuillez fournir votre date de naissance ci-dessous :");
ShowPlayerDialog(playerid,TUTOMENU1,DIALOG_STYLE_INPUT,"Menu Du Tutoriel Etape 2 ",tuto1msg,"Valider","Annuler");
SetPlayerSkin(playerid, femaleskin);
//SetPlayerSkin(playerid, femaleskin);
PlayerInfo[playerid][pChar] = femaleskin;
RegistrationStep[playerid] = 2;
return 0;
}
else
{
new tutomsg[256];
format(tutomsg,256,"Je n'ai pas trés bien compris!\nVous êtes un Homme ou une Femme? :");
ShowPlayerDialog(playerid,TUTOMENU,DIALOG_STYLE_MSGBOX,"Menu D'inscription Etape 1 ",tutomsg,"Homme","Femme");
}
return 0;
}
else if(RegistrationStep[playerid] == 2)
{
new year, month,day;
getdate(year, month, day);
new DateInfo[3][20];
split(text, DateInfo, '/');
if(year - strvalEx(DateInfo[2]) > 100 || strvalEx(DateInfo[2]) < 1 || strvalEx(DateInfo[2]) >= year)
{
new tuto2msg[256];//variable pour le format
format(tuto2msg,256,"Vous êtes beaucoup trop vieux ! \nQuelle Est Votre Date de votre naissance? (JJ/MM/ANNE) :");
ShowPlayerDialog(playerid,TUTOMENU1,DIALOG_STYLE_INPUT,"Menu Du Tutoriel Etape 2 ",tuto2msg,"Valider","Annuler");
return 0;
}
new check = year - strvalEx(DateInfo[2]);
if(check == year)
{
new tuto2msg[256];//variable pour le format
format(tuto2msg,256,"Vous êtes beaucoup trop vieux ! \nQuelle Est Votre Date de votre naissance? (JJ/MM/ANNE) :");
ShowPlayerDialog(playerid,TUTOMENU1,DIALOG_STYLE_INPUT,"Menu Du Tutoriel Etape 2 ",tuto2msg,"Valider","Annuler");
return 0;
}
if(strvalEx(DateInfo[1]) > month)
{
check -= 1;
}
else if(strvalEx(DateInfo[1]) == month && strval(DateInfo[0]) > day)
{
check -= 1;
}
PlayerInfo[playerid][pAge] = check;
SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~Etape 4~~~~~~~~~~~~~~~~");
format(string, sizeof(string), "D'accord, vous avez donc %d ans.",PlayerInfo[playerid][pAge]);
SendClientMessage(playerid, COLOR_YELLOW2, string);
RegistrationStep[playerid] = 3;
SendClientMessage(playerid, COLOR_WHITE, "Quelle est votre Origine? (Tapez : USA, Europe, Asie ou Afrique)");
SendClientMessage(playerid, 0x87C1D7F6, "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~");
return 0;
}
Merci beaucoup de votre aide.