La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 22/11/2024 23:40:04


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Yoyo
Seigneur
Inscrit le: 31 Aoû 2003
Messages: 223
Répondre en citant
Posté le : 14/07/2004 11:32:16 Sujet du message : probleme de mot de passe

Bonjour, bonjour

Voila mon probleme :

Je veu faire en sorte que lorsque le PJ utilise un objet (placable) il génére un mot de passe aléatoirement, et aussi que lorque le PJ réutilise l'objet il donne le meme mot de passe
voila le script que j'ai commencé

NWScript :


void main()
{

object oPC = GetLastUsedBy();


string sMot1;
string sMot2;
string sMot3;

    if (GetIsPC(oPC))
    {

        if (GetLocalInt(OBJECT_SELF, "MOT")==1)
        {
        int n1 = Random(10);
        int n2 = Random(10);
        int n3 = Random(10);

        // 1er serie de nombre \

            if (n1 == 0)
            sMot1 = "Nibou'";

            if (n1 == 1)
            sMot1 = "Barut'";

            if (n1 == 2)
            sMot1 = "Piratu'";

            if (n1 == 3)
            sMot1 = "Bouahari'";

            if (n1 == 4)
            sMot1 = "Copoc'";

            if (n1 == 5)
            sMot1 = "Minaorite'";

            if (n1 == 6)
            sMot1 = "Kaouki'";

            if (n1 == 7)
            sMot1 = "Samuar'";

            if (n1 == 8)
            sMot1 = "Jucode'";

            if (n1 == 9)
            sMot1 = "Est'";


        // 2eme serie de nombre \

            if (n2 == 0)
            sMot2 = "Momoma'";

            if (n2 == 1)
            sMot2 = "Malibu'";

            if (n2 == 2)
            sMot2 = "Mystra'";

            if (n2 == 3)
            sMot2 = "Cabjou'";

            if (n2 == 4)
            sMot2 = "Glimofara'";

            if (n2 == 5)
            sMot2 = "Jubino'";

            if (n2 == 6)
            sMot2 = "Dumba'";

            if (n2 == 7)
            sMot2 = "Brouata'";

            if (n2 == 8)
            sMot2 = "Ipu'";

            if (n2 == 9)
            sMot2 = "Samasgana'";

        // 3eme serie de nombre \

            if (n3 == 0)
            sMot3 = "Corpore";

            if (n3 == 1)
            sMot3 = "Poueris";

            if (n3 == 2)
            sMot3 = "Juncundo";

            if (n3 == 3)
            sMot3 = "Estis";

            if (n3 == 4)
            sMot3 = "Sunt";

            if (n3 == 5)
            sMot3 = "Dominorum";

            if (n3 == 6)
            sMot3 = "Piluraru";

            if (n3 == 7)
            sMot3 = "Melioferis";

            if (n3 == 8)
            sMot3 = "Plures";

            if (n3 == 9)
            sMot3 = "Mauverios";


            FloatingTextStringOnCreature("Vous voyez une inscription sur la pierre:"+sMot1+sMot2+sMot3, oPC);
            SetLocalInt(OBJECT_SELF, "MOT", 2);
        }
        else if (GetLocalInt(OBJECT_SELF, "MOT")==2)
        FloatingTextStringOnCreature("Vous voyez une inscription sur la pierre:"+sMot1+sMot2+sMot3, oPC);

    }
}
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.




En fait le principe c'est que ca génére trois mot aléatoire et que il assemble les mot pour que ca génére le mot de passe aléatoire

(Donc vue qu'il y a trois série de mot contenu chacune 10 mots, il devrait en pricipe y avoir 1000 possibilité de mot de passe)

La 1er fois que mon perso utilise l'objet (placable) ca marche : il génére le mot de passe,
Mais je veus que lorsque qu'il utilise une seconde fois(voire plusieurs fois) il génére LE MEME mot de passe qu'il avait vue la 1er fois, comment faire?

VOILA j'éspere que vous pouvez m'aider Very Happy Very Happy
_________________
BOUH! (je vous ai fait peur ??) désolé

Vive moi
Pas vive Securom
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Klemmth
Seigneur
Inscrit le: 26 Juin 2004
Messages: 176
Localisation: france
Répondre en citant
Posté le : 14/07/2004 13:16:49 Sujet du message :

J'aurai plutot vu ca comme ca (je suis pas sur ue ca marche mieux Very Happy ) :

NWScript :


void main()
{

  object oPC = GetLastUsedBy();


  string sMot1;
  string sMot2;
  string sMot3;

  if (GetIsPC(oPC))
  {

    if (GetLocalInt(OBJECT_SELF, "MOT")==2)
    {
      FloatingTextStringOnCreature("Vous voyez une inscription sur la pierre:"+sMot1+sMot2+sMot3, oPC);
    }
    else
    {
      int n1 = Random(10);
      int n2 = Random(10);
      int n3 = Random(10);

      // 1er serie de nombre \

    switch ( n1 )
    {
      case 0 :
        sMot1 = "Nibou'";

      case 1 :
        sMot1 = "Barut'";

      case 2 :
        sMot1 = "Piratu'";

      case 3 :
        sMot1 = "Bouahari'";

      case 4 :
        sMot1 = "Copoc'";

      case 5 :
        sMot1 = "Minaorite'";

      case 6 :
        sMot1 = "Kaouki'";

      case 7 :
        sMot1 = "Samuar'";

      case 8 :
        sMot1 = "Jucode'";

      case 9 :
        sMot1 = "Est'";
    }


      // 2eme serie de nombre \

    switch ( n2 )
    {
      case 0 :
        sMot2 = "Momoma'";

      case 1 :
        sMot2 = "Malibu'";

      case 2 :
        sMot2 = "Mystra'";

      case 3 :
        sMot2 = "Cabjou'";

      case 4 :
        sMot2 = "Glimofara'";

      case 5 :
        sMot2 = "Jubino'";

      case 6 :
        sMot2 = "Dumba'";

      case 7 :
        sMot2 = "Brouata'";

      case 8 :
        sMot2 = "Ipu'";

      case 9 :
        sMot2 = "Samasgana'";
    }

// 3eme serie de nombre \

    switch ( n3 )
    {
      case 0 :
        sMot3 = "Corpore";

      case 1 :
        sMot3 = "Poueris";

      case 2 :
        sMot3 = "Juncundo";

      case 3 :
        sMot3 = "Estis";

      case 4 :
        sMot3 = "Sunt";

      case 5 :
        sMot3 = "Dominorum";

      case 6 :
        sMot3 = "Piluraru";

      case 7 :
        sMot3 = "Melioferis";

      case 8 :
        sMot3 = "Plures";

      case 9 :
        sMot3 = "Mauverios";
    }


    FloatingTextStringOnCreature("Vous voyez une inscription sur la pierre:"+sMot1+sMot2+sMot3, oPC);
    SetLocalInt(OBJECT_SELF, "MOT", 2);
  }
  }
}
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.

_________________
...
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
finipe
Grand Sage du Conseil
Inscrit le: 11 Fév 2003
Messages: 519
Localisation: Nantes
Répondre en citant
Posté le : 15/07/2004 06:25:40 Sujet du message :

Utilise une variable, qui prendrait la valeur 1 à la première utilisation de l'objet par le joueur (donc à placer dans l'événement OnActivateItem du module).

Ensuite, tu testes dans ton script OnUsed ta variable au tout début : si elle est égale à 0 alors tu généres un mdp, sinon tu va chercher le mot de passe déjà généré, que tu auras pris soin de placer dans une autre variable (de type string celle-là).
_________________
» Le Tref & l'Aucube : Histoire, misanthropie & zoologie léonine
» 1626, le Gant & l'Epée : intrigues & duels sous le règne de Louis XIII
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Laxam
Légende vivante
Inscrit le: 12 Avr 2004
Messages: 425
Localisation: Lyon
Répondre en citant
Posté le : 15/07/2004 19:11:07 Sujet du message :

Encore mieux, tu crées une variable de type string qui contient ton mot de passe, dans ton script de calcul de mot de passe, tu testes d'abord que ta variable est égale à ""

NWScript :
if GetLocalString(GetModule(), "variable") = ""
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.

ce sera le cas au premier coup (pas besoin de l'initialiser et dans ton script tu ajoutes l'alimentation de cette variable :

NWScript :
SetLocalString(GetModule(), "variable", "");
Note : le code affiché ci-dessus n'est pas rendu tel qu'il devrait l'être réellement, en particulier des sauts de lignes sont automatiquement insérés pour éviter de casser la mise en page. En le copiant/collant, vous résoudrez ce problème.

et voilà !
_________________
Mon site NWN nouvelle version et mon module Boisperdu en ligne ! Et maintenant un FORUM
La première version française de la doc du NPC Activities (version 2.0)
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Montrer les messages depuis :
Page 1 sur 1 ¤


Vous ne pouvez pas poster de nouveaux sujets dans ce forum
Vous ne pouvez pas répondre aux sujets dans ce forum
Vous ne pouvez pas éditer vos messages dans ce forum
Vous ne pouvez pas supprimer vos messages dans ce forum
Vous ne pouvez pas voter dans les sondages de ce forum


Sauter vers:
FAQ | Rechercher | Liste des Membres | Groupes d'utilisateurs | S'enregistrer | Profil | Se connecter pour vérifier ses messages privés | Connexion
Powered by phpBB 2.* [m] © 2001, 2002 phpBB Group
Theme rewritten in beautiful XHTML code by Baldurien.
Thème "La Bibliothèque de Neverwinter" crée par Kruger
Traduction par : phpBB-fr.com
Page generated in 72.477ms