• 05 Juin 2026, 23:11:06


Auteur Sujet: AOD Aide  (Lu 2262 fois)

0 Membres et 1 Invité sur ce sujet

Hors ligne rapido

  • Pro-scripteur
  • *
  • Bandit
  • R@pido
  • Messages: 270
    • Voir le profil
AOD Aide
« le: 11 Août 2010, 16:16:27 »
Salut , Voila j'ai bien avancer , mais Je suis entrain de faire un Dialog pour AOD au lieu de /register
Mais dans le dialog de /login Bah quand on rentre notre mot de pass Bah sa marche j'en ai tester un autre et sa fonctionne

Et donc mon Probleme c'est que j'arrive pas a faire Charger le Mot de pass Du joueur Savez Comment faire ?

Merci

Hors ligne Tux

  • *
  • Tueur en série
  • GeChaud =3
  • Messages: 112
    • Voir le profil
    • Trace - Serveur Multi Modes
Re : AOD Aide
« Réponse #1 le: 11 Août 2010, 18:04:14 »
Salut :),

Pourrais-tu nous donner plus d'infos sur tes mots de passe ? (Ou sont-il stocker, etc) ;).

++
Tux

Hors ligne rapido

  • Pro-scripteur
  • *
  • Bandit
  • R@pido
  • Messages: 270
    • Voir le profil
Re : AOD Aide
« Réponse #2 le: 11 Août 2010, 19:58:12 »
Bah Si tu connais AdminOfDuty Tu doit Savoir Ou ils se stock ScriptFiles/Admin/users/PSEUDO.ini

Hors ligne Tux

  • *
  • Tueur en série
  • GeChaud =3
  • Messages: 112
    • Voir le profil
    • Trace - Serveur Multi Modes
Re : AOD Aide
« Réponse #3 le: 11 Août 2010, 20:13:23 »
Je vois un peu comment est construit Admin On Duty... Eh ben, pour savoir si un mot de passe correspondant à celui qu'on a entrer, c'est d'utiliser un GetPVarString de cette façon:

Dans la condition de L'ID de ton dialog de connexion, ajoute ceci:
Code: (pawn) [Sélectionner]
new Temp[128];
GetPVarString(playerid, "S_Password", Temp, 128);
if(strcmp(Temp, inputtext) == 0)
{
  // Ici, on Log le joueur
}
else
{
 // Ici, on met ce qu'on doit faire lorsque le joueur se trompe
}
Je l'ai fais sur le forum, je ne promet pas la qualité ;).

++
Tux

Hors ligne rapido

  • Pro-scripteur
  • *
  • Bandit
  • R@pido
  • Messages: 270
    • Voir le profil
Re : AOD Aide
« Réponse #4 le: 12 Août 2010, 18:39:02 »
Et Comment on fait Pour que quand le Joueurs Rejoins Bah Sa Envoie Direct Sur Le Dialog Car Si Je met 2 fois le même Dialog Un Dans OnPlayerDialog Et dans OnPlayerConnect Sa servira A rien  ?
Merci

Hors ligne Eloctro

  • Pawno Fan
  • *
  • Grand Banditisme
  • Aight !
  • Messages: 846
    • Voir le profil
    • GtaSA-RP
Re : AOD Aide
« Réponse #5 le: 12 Août 2010, 19:20:28 »
Perssonellement la façon la plus simple :
Dans OnPlayerConnect :
ShowPlayerDialog(playerid,DIALOGID+1,DIALOG_STYLE_INPUT,"Login","Entre ton Mot de passe","Login","Sortir");
Dans OnDialogResponse :
if(dialogid==DIALOGID+1)
{
if(response)
{
                        new string[128];
       format(string, sizeof(string), "/login %s",inputtext);
OnPlayerCommandText(playerid,string);
}
}

Hors ligne Tux

  • *
  • Tueur en série
  • GeChaud =3
  • Messages: 112
    • Voir le profil
    • Trace - Serveur Multi Modes
Re : Re : AOD Aide
« Réponse #6 le: 12 Août 2010, 19:45:34 »
Perssonellement la façon la plus simple :
Dans OnPlayerConnect :
ShowPlayerDialog(playerid,DIALOGID+1,DIALOG_STYLE_INPUT,"Login","Entre ton Mot de passe","Login","Sortir");
Dans OnDialogResponse :
if(dialogid==DIALOGID+1)
{
if(response)
{
                        new string[128];
       format(string, sizeof(string), "/login %s",inputtext);
OnPlayerCommandText(playerid,string);
}
}


Justement le problème c'est que si le joueur se trompe, le Dialog ne se re affichera pas. Le joueur devra donc faire la commande /login après. Sauf si c'est ce que veut rapido ;).

++
Tux

Hors ligne rapido

  • Pro-scripteur
  • *
  • Bandit
  • R@pido
  • Messages: 270
    • Voir le profil
Re : AOD Aide
« Réponse #7 le: 12 Août 2010, 19:57:40 »
Nn Moi Je veut Que lorseque le joueurs se trompe de Mot de pass Bah le Dialog Réaparait

====EDIT======

Voici , Ce que moi j'ai fait au total Mais Sans Résultat Positif

DansOnPlayerConnect :
switch(AutoLoginCheck(playerid, GetIP(playerid)))
{
  case -1:
  {
          new string[128];
          ShowPlayerDialog(playerid, 30, DIALOG_STYLE_INPUT, "Système de comptes", string, "Enregistrer", "Annuler");
   }
   case 1:
   {
   ShowPlayerDialog(playerid,31,DIALOG_STYLE_INPUT,"Login","Entre ton Mot de passe","Login","Sortir");
  }
}

Dans OnPlayerDialog :

if(dialogid == 30)
{
if(response)
{
    //new file[128];
    new string[128];
    new name[MAX_PLAYER_NAME];
GetPlayerName(playerid, name, sizeof(name));
if(strlen(inputtext) == 30)
{
            format(string, sizeof string, "Bienvenue %s ! \nVous n'avez pas de compte sur notre serveur. \n\nVeulliez vous enregistrer !", name);
            ShowPlayerDialog(playerid, 30, DIALOG_STYLE_INPUT, "Système de comptes", string, "Enregistrer", "Annuler");
return 0;
}
    switch(CreateUserFile(playerid))
        {
        case 1:
        {
            SendSucessMessage(playerid, "Compte créé avec sucess");
            //format(string, sizeof string, "Bienvenue %s ! \nVous avez un compte sur notre serveur. \n\nVeulliez vous connecter !", name);
    ShowPlayerDialog(playerid, 31, DIALOG_STYLE_INPUT, "Système de comptes", string, "Connection", "Annuler");
//TogglePlayerSpectating(playerid,0);
GetPlayerName(playerid, name, sizeof(name));
printf("%s viens de s'enregistrer !", name);
        }
    }
    }
    }
 
    if(dialogid == 31)
{
if(response)
{
    //new file[128];
    new string[128];
    new PlayerName[24];
if(strlen(inputtext) == 31)
{
    GetPlayerName(playerid, PlayerName, sizeof PlayerName);
format(string, sizeof string, "Bienvenue %s ! \nVous avez un compte sur notre serveur. \n\nVeulliez vous connecter !", PlayerName);
ShowPlayerDialog(playerid, 31, DIALOG_STYLE_INPUT, "Système de comptes", string, "Connection", "Annuler");
return 0;
}
   
        new Temp[128];
            GetPVarString(playerid, "S_Password", Temp, 128);
            if(strcmp(Temp, inputtext) == 0)
            {
            LoadUserFile(playerid);
            SendSucessMessage(playerid, "Tu est Mintenant Loggé!");
        TogglePlayerSpectating(playerid, 0);
            }
            else
            {
            SendErrorMessage(playerid, "Mauvais mot de passe!.");// Ici, on met ce qu'on doit faire lorsque le joueur se trompe
            ShowPlayerDialog(playerid,31,DIALOG_STYLE_INPUT,"Login","Entre ton Mot de passe","Login","Sortir");
}
}
}

Voila Mais J'ai pas fait D'erreur Tout juste mais Pas Résultat Positif Malheureusement

Merci de me donner un coup de main car je galaire :)

++
« Modifié: 12 Août 2010, 20:26:28 par rapido »

Hors ligne Tux

  • *
  • Tueur en série
  • GeChaud =3
  • Messages: 112
    • Voir le profil
    • Trace - Serveur Multi Modes
Re : AOD Aide
« Réponse #8 le: 12 Août 2010, 20:57:25 »
J'ai pris plus de temps pour régarder le FS de Sim, et là  :blink. Je reste sans mot, j'espère que Sim viendra t'éclairer  ;).

++
Tux

Hors ligne rapido

  • Pro-scripteur
  • *
  • Bandit
  • R@pido
  • Messages: 270
    • Voir le profil
Re : AOD Aide
« Réponse #9 le: 12 Août 2010, 21:19:22 »
Ah Oui C'est sur c'est pas facile

Hors ligne Eloctro

  • Pawno Fan
  • *
  • Grand Banditisme
  • Aight !
  • Messages: 846
    • Voir le profil
    • GtaSA-RP
Re : AOD Aide
« Réponse #10 le: 12 Août 2010, 23:28:23 »
Tu à juste à aller dans la command /login et mettre ça à la place du message d'érreur :
ShowPlayerDialog(playerid,DIALOGID+1,DIALOG_STYLE_INPUT,"Login","Mot de passe inccorect","Login","Sortir");
J'ai pris plus de temps pour régarder le FS de Sim, et là  :blink. Je reste sans mot, j'espère que Sim viendra t'éclairer  ;).

++
Tux
C'est vraiment très facile je parle pas de mon astuce qui est juste un moyen rapide et non le meilleur moyen mais ça te fait gagner du temp .
« Modifié: 12 Août 2010, 23:31:51 par coco76 »

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : AOD Aide
« Réponse #11 le: 12 Août 2010, 23:29:24 »
Salut,

j'avoue qu'il n'est pas super simple, c'est un ennui très important, je vais essayer d'en faire une v2 dans les prochains....jour...semaines ou mois

(désolé, mais ça risque d'attendre un petit moment)

ce que je te conseillerais, c'est d'afficher le dialog à la connexion (selon le cas), dans OnDialogResponse renvoyer à la commande, bref comme coco76 te recommandait

ET, modifier légèrement la commande /login pour afficher le dialog à nouveau si le joueur n'entre pas le bon mot de passe

EDIT: coco t'es trop rapide  :) ;)

++Sim++





Hors ligne rapido

  • Pro-scripteur
  • *
  • Bandit
  • R@pido
  • Messages: 270
    • Voir le profil
Re : AOD Aide
« Réponse #12 le: 12 Août 2010, 23:38:57 »
Donc Se que vous me dite , c'est que si le joueurs ce trompe de mot de passe il doit faire /login et sa le renvoie sur le Dialog (Si cela est exact)
Ya pas une autre possibliter de réaficher le Dialog si il se trompe ?

Hors ligne S!m

  • *
  • Messages: 2341
    • Voir le profil
Re : AOD Aide
« Réponse #13 le: 13 Août 2010, 00:14:02 »
Salut,

non, ce n'est pas ce qu'on te dit. On te dit simplement d'appeler /login comme coco76 te disait de le faire quand le joueur donne la réponse au dialog. Ensuite, dans la commande /login, si le mot de passe n'est pas bon, tu appelle le dialog au lieu d'envoyer le message d'erreur

++Sim++





Hors ligne rapido

  • Pro-scripteur
  • *
  • Bandit
  • R@pido
  • Messages: 270
    • Voir le profil
Re : AOD Aide
« Réponse #14 le: 13 Août 2010, 01:15:16 »
Ha Oui , J'avais déja essayer mais comment je parvient a appeler la commande /login

Double post
DSL Pour le Double Post , Mais j'arrive pas  :(
Un Coup de main c'est Dur  ???
Ce P**** de Login la Fouuu  :closedeyes
« Modifié: 13 Août 2010, 15:30:44 par rapido »