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


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Le chauve
Novice
Inscrit le: 14 Aoû 2003
Messages: 17
Répondre en citant
Posté le : 14/08/2003 15:18:12 Sujet du message : Les gars je ne vous comprend pas!

Voila, je suis un debutant de chez debutant. Je ne comprend pas les scripts, enfin j'arrive a en faire certains, par exemple qu'un pj s'assois sur une chaise.

Ce sujet a dejas ete aborde plusieurs fois mais je n'ai toujours pas compris en allant voir les autres sujets. Je suis sur que vous voyez de quoi je veux parler meme que vous n'avez pas encore vus ce que j'ai a dire.

Donc voici un texte simple:(avec faute bien sur, je vous explique pas a quel vitesse j'ecrtis)

1:Bonjour messire. Ma cave est infestee par des rats.Pourriez vous la debarasser?
- Oui, sans aucun probleme
- Non.
2:Alors; les avez vous exterminer?
- Oui, et en voici la preuve. (ca ca va, pour la condition d'execution.)
- Non,

Je voudrais qu' apres avoir dis oui, sans aucun probleme. La prochaine fois que le pjs vient lui parler reconnaisse que c'est la seconde fois. Donc, la deusieme fois ca doit commenercer pas: alors les avez vous exterminer?

J'espere que quelqu'un de bien gentil sans s'enerver. prenne le temps de me dire point pas point comment il faut faire pour que j'y arrive.

Merci, Et escuse moi encore de reprendre un sujet qui a ete dis des centaine de fois.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Denis
Grand Maître Chanteur du Conseil
Inscrit le: 18 Oct 2002
Messages: 1478
Répondre en citant
Posté le : 14/08/2003 15:31:40 Sujet du message :

Mmmh... je ne pense pas que ce soit le bon forum, alors je déplace.

PS : ne t'étonne pas sit je ne te répons pas, je ne connais rien en scripts. Wink Par contre, bienvenue !! Very Happy
_________________
Victory is mine!
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Le chauve
Novice
Inscrit le: 14 Aoû 2003
Messages: 17
Répondre en citant
Posté le : 14/08/2003 15:38:51 Sujet du message :

ok, escuse moi. Je n'avais pas remarque. A vrai dire, j'ai ete vite.

Et je te remerci.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
abelthorne
Ecuyer
Inscrit le: 06 Aoû 2003
Messages: 42
Répondre en citant
Posté le : 14/08/2003 15:54:48 Sujet du message :

Je n'ai pas encore abordé les scripts sous NWN, mais dans le principe, il te suffit d'utiliser une variale. Tu la nomme ONSESTDEJARENCONTRE ou tout autre nom qui te sied (voire qui soit compatible avec l'éditeur Very Happy ), tu la teste au début pour voir si elle est à une certaine valeur et faire le dialogue en conséquence :

si ONSETDEJARENCONTR == 1 (le PNJ a déjà parlé au PJ)
alors dialogue 2 (il lui dit "alors, les avez-vous...")
sinon (le PNJ n'a pas encore parlé au PJ)
dialogue 1 (il lui dit "bonjour, messire...")
ONSETDEJARENCONTRE = 1 (on affecte la valeur 1 à la variable, comme ça, il sauront qu'ils se sont déjà parlé à la prochaine tentative de dialogue)

Note : je suppose qu'une variable non déclarée est par défaut à 0 ? Je ne sais pas s'il faut obligatoirement déclarer les variables avant de les utiliser (ou si on peut faire ça en sauvage) ; si ce n'est pas le cas, déclare-là de façon à ce qu'elle soit initialisée à 0 au chargement du module.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Numéro ICQ Ignorer l'utilisateur
 
Lavok
Légende vivante
Inscrit le: 22 Oct 2002
Messages: 434
Localisation: Sphère planaire
Répondre en citant
Posté le : 14/08/2003 16:06:27 Sujet du message :

Les variables sont bien à 0 par défaut, ce qui épargne d'ailleurs pas mal de prises de tête.

Le problème ici, c'est qu'il faut classer les répliques de la condition la plus difficile à la plus facile.

L'ordi regarde la première réplique, si la condition est bonne, le dialogue continue, sinon, il passe à la prochaine et ainsi de suite.

Donc, il suffit de mettre
"Alors; les avez vous exterminer? (si la variable 'queterat'=1)
- Oui, et en voici la preuve. (ca ca va, pour la condition d'execution.)
- Non,"

au-dessus de
"Bonjour messire. Ma cave est infestee par des rats.Pourriez vous la debarasser?
- Oui, sans aucun probleme (mettre la variable 'queterat' à 1)
- Non."
_________________
ToB : Une seule chose semble certaine : tant que le trône de sang de Bhaal restera vide, le chaos règnera.

Moi : Une seule chose semble certaine : tant que la tête de singe de Bush restera vide, le chaos règnera.
Dernière édition par Lavok le 14/08/2003 19:33:34; édité 1 fois
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Le chauve
Novice
Inscrit le: 14 Aoû 2003
Messages: 17
Répondre en citant
Posté le : 14/08/2003 16:50:11 Sujet du message :

Donc, je vais a cote de la phrase: Alors; les avez vous exterminer? Je fais un clique droit et je rejoute une variable. voila c'est la que je suis bloque Mad
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Faelar
Héros
Inscrit le: 08 Juil 2003
Messages: 253
Localisation: Amiens
Répondre en citant
Posté le : 14/08/2003 17:35:40 Sujet du message :

Pour mettre une variable en dialogue utilises l'assistant, dans condition d'execution, clic sur le petit chapeau et hop !
_________________
"Le temps c'est comme l'argent, on en a jamais assez..."
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Numéro ICQ Ignorer l'utilisateur
 
Lavok
Légende vivante
Inscrit le: 22 Oct 2002
Messages: 434
Localisation: Sphère planaire
Répondre en citant
Posté le : 14/08/2003 19:32:30 Sujet du message :

Pour mettre la variable 'queterat' à 1 :
Code :

void main()
{
    // Déterminer les variables
    SetLocalInt(GetPCSpeaker(), "queterat", 1);
}


Ce script est à placer dans 'Actions conséquentes' de la réplique correspondante (càd le joueur accepte la quête).

Et pour vérifier que 'queterat' soit égal à 1 :
Code :

int StartingConditional()
{
    // Inspecter variables locales
    if(!(GetLocalInt(GetPCSpeaker(), "queterat") == 1))
        return FALSE;

    return TRUE;
}


Ce script est à placer dans 'Conditions d'exécution' de la réplique correspondante (càd le pnj demande si le pj a exterminé les rats).
_________________
ToB : Une seule chose semble certaine : tant que le trône de sang de Bhaal restera vide, le chaos règnera.

Moi : Une seule chose semble certaine : tant que la tête de singe de Bush restera vide, le chaos règnera.
 
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/08/2003 00:08:48 Sujet du message :

Très bonne réponse de Lavok Very Happy mais je tiens à préciser que j'ai mis en POST IT un message nommé "Variable locale et conversations" qui traite justement de cette question, posée ici des centaines de fois !!! Alors à quoi ça sert que Ducros il se décarcasse ? Laughing
_________________
» 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
 
Le chauve
Novice
Inscrit le: 14 Aoû 2003
Messages: 17
Répondre en citant
Posté le : 15/08/2003 09:54:37 Sujet du message :

Bon, la c'est clair. Je vais aller eseiller.

Je vous remerci pour vos reponses. Smile
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Le chauve
Novice
Inscrit le: 14 Aoû 2003
Messages: 17
Répondre en citant
Posté le : 15/08/2003 10:07:09 Sujet du message :

Confused Ca marche ! Smile je n'en reviens pas. oula!
Embarassed
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Le chauve
Novice
Inscrit le: 14 Aoû 2003
Messages: 17
Répondre en citant
Posté le : 15/08/2003 12:39:26 Sujet du message :

Et maintenant, si je veux que ca revienne au premier dialogue?

2:Alors,les avez vous exterminer ?
Oui, et en voici la preuve.
je vous remerci, voici votre recompense.

1:Bonjour messire. Ma cave est infestee par des rats.Pourriez vous la debarasser?
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Faelar
Héros
Inscrit le: 08 Juil 2003
Messages: 253
Localisation: Amiens
Répondre en citant
Posté le : 15/08/2003 14:12:01 Sujet du message :

Tu changes encore la variable (en 2 par exemple) à la fin de la deuxième partie.
_________________
"Le temps c'est comme l'argent, on en a jamais assez..."
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Numéro ICQ Ignorer l'utilisateur
 
finipe
Grand Sage du Conseil
Inscrit le: 11 Fév 2003
Messages: 519
Localisation: Nantes
Répondre en citant
Posté le : 16/08/2003 19:09:37 Sujet du message :

Ou plus simplement, tu mets le script suivant sur la phrase prononcée en premier :

Code :
int StartingConditional()
{
    // Inspecter variables locales
    if(GetLocalInt(GetPCSpeaker(), "queterat") != 1)
        return TRUE;

    return FALSE;
}

Donc en gros "Si la variable locale "queterat" est différente de 1, alors lire cette phrase".

Et sur celle prononcée en 2ème tu mets ça :

Code :
int StartingConditional()
{
    // Inspecter variables locales
    if(GetLocalInt(GetPCSpeaker(), "queterat") == 1)
        return TRUE;

    return FALSE;
}

Donc en gros "Si la variable locale "queterat" est égale à 1, alors lire cette phrase".
_________________
» 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
 
Gorkk
Site Admin
Inscrit le: 12 Sep 2002
Messages: 1768
Localisation: Ici et ailleurs
Répondre en citant
Posté le : 20/08/2003 16:16:23 Sujet du message :

J'ai divisé le sujet pour mettre la deuxième question de lechauve dans un sujet à part : [http]
_________________
Sacred - FR - La Bibliothèque de Neverwinter - Titan Quest - FR Cool
Bloqué dans SoU ? La solution n'est pas loin...
HotU vous pose des problèmes ? Une seule solution Wink
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur MSN Messenger Numéro ICQ Ignorer l'utilisateur
 
Cassin
Papa-poule(t) & poissard intemporel
Inscrit le: 16 Sep 2002
Messages: 7471
Localisation: 6 bis rue de la Couveuse, Poulailler 39b
Répondre en citant
Posté le : 01/09/2003 08:45:47 Sujet du message :

Et j'ai re-divisé en un autre sujet car tu avais ENCORE posé une nouvelle question qui n'avait rien à voir dans ce topic alors que Gorkk t'avais fait la remarque juste au-dessus... Confused


Ta question est ici...
_________________
Aventure ! Camaraderie ! Et acier sur acier ! Les ingrédients légendaires ! Hein Bouh ?

http://cassin1306.spaces.live.com
 
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 32.032ms