[DLG] Résolution de problèmes divers intervenus lors de l'écriture d'un dialogue

Avatar du membre
Sith
Ogre
Messages : 209
Enregistré le : dim. 02 janv. 2005, 14:01
Contact :
Statut : Hors ligne

[DLG] Résolution de problèmes divers intervenus lors de l'écriture d'un dialogue

.

Message par Sith »

Je cherche un site où il y aurait une liste de tous les trucs possible , genre globalLT, disponible pour la création des dialogues (je suis le tuto du forum forgotten wars)

Ça existe qqpart?

EDIT: est ce que c'est ça quec'est ça que je cherchais?
Sith
Angelus Crow
Statut : Hors ligne
.

Message par Angelus Crow »

C'est bien ça, IESDP. Mais en prenant la page d'acceuil ça pourrait peut-être t'aider encore plus ^^ .
Avatar du membre
Isaya
Adepte de Grondemarteau
Planaire
Messages : 6990
Enregistré le : mar. 22 juil. 2003, 21:03
Localisation : Plaisir
Contact :
Statut : Hors ligne
.

Message par Isaya »

Pour ce genre de choses (les "triggers") tu as aussi la documentation du compilateur de script fourni avec le jeu, dans le répertoire Script compiler. Mais la description du site IESDP est bien plus complète.
:!: Peu disponible
Guide d'installation (et FAQ) de Baldur's Gate, Baldur's Gate II, Baldur's Gate Trilogy (BGT), BG1Tutu, Widescreen, BGEE
Pensez à utiliser à la fonction Recherche pour trouver une réponse à votre question !
Avatar du membre
Sith
Ogre
Messages : 209
Enregistré le : dim. 02 janv. 2005, 14:01
Contact :
Statut : Hors ligne
.

Message par Sith »

Donc j'ai trouvé les triggers, super :) (je m'étais donc aussi trompé de page ;) ).

Sinon j'ai une question: (2 questions)

1) dans le tutorial, ils mettent à un moment <SIRMAAM> et <LADYLORD>.
C'est quoi ça?

2) je lis ceci
0x400C Class(O:Object*,I:Class*Class)
Returns true only if the Class of the specified object matches that in the second parameter.
Mais quelles sont les noms de classe? ceux que je peux trouver sur DLTC? ou bien ils sont différents?
Sith
Angelus Crow
Statut : Hors ligne
.

Message par Angelus Crow »

Originally posted by Sith+mercredi 02 février 2005, 23h13
dans le tutorial, ils mettent à un moment <SIRMAAM> et <LADYLORD>.
C'est quoi ça?
Selon le sexe de ton perso, le texte affichera Monsieur ou Madame, ou Seigneur, etc... (traduction difficile sans contexte)

je lis ceci
0x400C Class(O:Object*,I:Class*Class)
Returns true only if the Class of the specified object matches that in the second parameter.
Mais quelles sont les noms de classe? ceux que je peux trouver sur DLTC? ou bien ils sont différents?
Dans l'IESDP, il y a une rubrique Identifier, et dans celle-ci, une page Class. C'est là ^^ .
Avatar du membre
Sith
Ogre
Messages : 209
Enregistré le : dim. 02 janv. 2005, 14:01
Contact :
Statut : Hors ligne
.

Message par Sith »

Petit à petit je vois mieux.

Encore une question, je voudrais faire une possiblité de réponse pour un pnj, mais seulement si le pj est un personnage male mauvais, or j'ignore comment gérer une double condition.
IF ~Alignment(Player1,MASK_EVIL) Gender(Player1,MALE)~ THEN REPLY ~blabla~
La partie pour laquelle je m'interroge c'est le deuxième trigger "Gender": dois je le mettre comme ça? ou bien autrement?
Sith
Angelus Crow
Statut : Hors ligne
.

Message par Angelus Crow »

Originally posted by Sith@jeudi 03 février 2005, 00h08
Encore une question, je voudrais faire une possiblité de réponse pour un pnj, mais seulement si le pj est un personnage male mauvais, or j'ignore comment gérer une double condition.
IF ~Alignment(Player1,MASK_EVIL) Gender(Player1,MALE)~ THEN REPLY ~blabla~


La partie pour laquelle je m'interroge c'est le deuxième trigger "Gender": dois je le mettre comme ça? ou bien autrement?
Il faut mettre les conditions comme suit :
IF ~Gender(Player1,MALE)
      Alignment(Player1,MASK_EVIL)~ THEN REPLY ~blabla...~
Avatar du membre
Sith
Ogre
Messages : 209
Enregistré le : dim. 02 janv. 2005, 14:01
Contact :
Statut : Hors ligne
.

Message par Sith »

Merci encore beaucoup Angelus :) Ceci me permet d'avancer encore un peu plus loin sur le long chemin qui me sépare de mes attentes.
Sith
Angelus Crow
Statut : Hors ligne
.

Message par Angelus Crow »

Pas de problème, c'est le but de ce forum.
Mais après réflexion, je veux bien un exemplaire de ton mod en remerciement une fois qu'il sera fini ^^ .
Avatar du membre
Isaya
Adepte de Grondemarteau
Planaire
Messages : 6990
Enregistré le : mar. 22 juil. 2003, 21:03
Localisation : Plaisir
Contact :
Statut : Hors ligne
.

Message par Isaya »

J'ajoute une précision concernant les triggers et les actions. La plupart des paramètres comme Object, Class, ... renvoie au contenu des fichiers Object.IDS, Class.IDS, ... autrement dit des fichiers présents dans le jeu et portant généralement le même nom que l'élément utilisé en paramètre.
De même tous les triggers et actions se trouvent référencés dans les fichiers Action.IDS et Trigger.IDS.

Tu trouveras la liste des mots-clés (comme <CHARNAME>) utilisables dans les textes dans ce sujet.
Ils servent à tenir compte dans le jeu du sexe du personnage du groupe qui parle (pas uniquement de celui du personnage joueur). Les éléments tels que <LADYLORD> font référence au personnage qui parle tandis que les mots-clés comme <PRO_LADYLORD> (à préfixe PRO_) font référence au personnage principal (indépendemment du fait que ce soit lui/elle qui parle à cet instant). Par exemple, "Je ne parlerai qu'à <PRO_HIMHER>" (qui va devenir "lui" ou "elle") permet de tenir compte dans un dialogue du sexe du personnage principal dans le cas où ce n'est pas lui qui intervient dans la discussion (dans ce cas ce serait un PNJ voulant parler impérativement au personnage principal).

Pour le test dans le IF, le principe est le même que dans les scripts. Si tu mets plusieurs lignes de conditions, il faut que toutes soient vérifiées (opérateur logique ET implicite). Si tu veux utiliser un test sous forme de OU, il te faut utiliser explicitement l'opérateur OR(<nombre de conditions>). Par exemple:
IF ~OR(2)
        Alignment(Player1,MASK_EVIL)
        Alignment(Player1,MASK_GENEUTRAL)
    Gender(Player1,MALE)~ THEN ...
pour vérifier que le personnage principal est d'alignement mauvais ou neutre (GENEUTRAL voulant dire neutre au sens bon/mauvais (Good/Evil)) et de sexe masculin. Les 2 premières conditions se réfèrent au OR et la dernière intervient en ET car elle est au delà des 2 conditions du OR.
:!: Peu disponible
Guide d'installation (et FAQ) de Baldur's Gate, Baldur's Gate II, Baldur's Gate Trilogy (BGT), BG1Tutu, Widescreen, BGEE
Pensez à utiliser à la fonction Recherche pour trouver une réponse à votre question !
zefklop
Statut : Hors ligne
.

Message par zefklop »

Bonjour à tous.
Je voudrais savoir s'il est possible de faire apparaître une créature à partir d'un dialogue.

Exmple :
Machin dit "Voulez-vous que j'invoque un lapin"
<CHARNAME> répond "Je n'en ai cure de votre lapin, machin"
===>Rien ne se passe
<CHARNAME> répond "Oui, bien sûr. Rien n'est plus utile qu'un lapin"
===>Un lapin apparaît

Rassurez vous, je ne créerais jamais de dialogue permettant de faire apparaître un lapin.

Autre question :
Quand <CHARNAME> répond "Oui, bien sûr. Rien n'est plus utile qu'un lapin", je voudrais que le groupe perde de l'or. Comment je fais?

Faire payer pour un lapin, je suis trop fort en bizness :hips2:
Avatar du membre
Thot
Berserker ogre
Messages : 1090
Enregistré le : jeu. 27 mars 2003, 10:20
Localisation : Cathay
Contact :
Statut : Hors ligne
.

Message par Thot »

Pour ajouter une nouvelle créature, il faut que tu ajoutes, dans ton fichier D, après le dialogue, une commande de type CreateCreature :

Code : Tout sélectionner

IF ~~ THEN BEGIN 0
 SAY ~Voulez-vous que j'invoque un lapin ?~
IF ~~ THEN REPLY ~Je n'en ai rien à foutre de votre lapin~ EXIT
IF ~~ THEN REPLY ~Oui, je veux bien~ GOTO1
END

IF ~~ THEN BEGIN 1
 SAY ~Le voilà !~
 IF ~~ THEN DO ~CreateCreature("lapin", [110,110], 10)~ ~TakePartyGold(1000)~
END
Pour CreateCreature, il faut remplacer lapin par le nom du fichier CRE de la créature créée. Le second paramètre correspond à la position sur la carte, et le troisième à l'orientation de la créature lorsqu'elle est créée.
Traducteur, Administrateur et Moddeur retraité
Rôliste et Maître de Jeu au chômage
Voyageur au long cours
zefklop
Statut : Hors ligne
.

Message par zefklop »

Que se passe-t-il si le groupe ne possède pas 1000 PO?
Avatar du membre
Thot
Berserker ogre
Messages : 1090
Enregistré le : jeu. 27 mars 2003, 10:20
Localisation : Cathay
Contact :
Statut : Hors ligne
.

Message par Thot »

Bonne question. A mon avis, le niveau d'or va se retrouver à zéro.

Pour éviter que ce cas n'apparaisse, tu peux aussi utiliser un dialogue de ce type:

Code : Tout sélectionner

IF ~~ THEN BEGIN 0
SAY ~Voulez-vous que j'invoque un lapin ?~
IF ~~ THEN REPLY ~Je n'en ai rien à foutre de votre lapin~ EXIT
IF ~PartyGoldGT(1000)~ THEN REPLY ~Oui, je veux bien~ GOTO1
END

IF ~~ THEN BEGIN 1
SAY ~Le voilà !~
IF ~~ THEN DO ~CreateCreature("lapin", [110,110], 10)~ ~TakePartyGold(1000)~
END
Comme cela, le joueur ne pourras être d'accord que s'il a plus de 1000 pièces d'or.
Traducteur, Administrateur et Moddeur retraité
Rôliste et Maître de Jeu au chômage
Voyageur au long cours
zefklop
Statut : Hors ligne
.

Message par zefklop »

Merci, je vais pouvoir faire ce que je comptais faire (avec une autre créature qu'un lapin)
Avatar du membre
Garfield
Goule majeure
Messages : 1994
Enregistré le : jeu. 18 nov. 2004, 13:41
Localisation : Paris
Contact :
Statut : Hors ligne
.

Message par Garfield »

Un petite question sur la commande APPEND:
Est il nécessaire de l'utiliser a chaque fois? Exemple:

Code : Tout sélectionner

APPEND BJAN

IF ~InParty ("G#Gem")
See("G#Gem")
!StateCheck("G#Gem",STATE_SLEEPING)
Global("LoveJan","LOCALS",0)~ THEN BEGIN DragueJan
SAY~Dîtes Ginera... Vous avez...heu... un petit ami ici à Athaktla?~
IF ~~ THEN DO ~SetGlobal("LoveJan","LOCALS",1)~ EXTERN BG#Gem JanQuest
END 
END

APPEND BJAN

IF~~ THEN BEGIN JanFlirt
SAY ~C'est étonnant tout de même, une jeune gnome telle que vous... Vos joues sont roses comme celles d'un navet...euh non, je veux dire, enfin, les navets n'ont pas de joue mais heu... Vous êtes jolie comme la cousine de mon parrain, et Garl Brilledor sait si elle est belle... Mais pas autant que vous bien sûr. Enfin, je veus dire...c'est que.... vous voyez quoi... bon d'accord...
IF~~THEN EXIT
END
END
La question: dois-je entrer deux fois la commande APPEND BJAN ou alors ce n'est pas nécessaire si je mets les deux blocs a la suite?
Lies are never forgotten, they go on and they grow
Chat orange et D'Oghmatique.
Rodolpho Remington, barde/boulanger, s'exprime en FF99CC > Bio RP
Angelus Crow
Statut : Hors ligne
.

Message par Angelus Crow »

Non, un seul APPEND tant que tu change pas de *.dlg (ici, BJAN). Dans ce cas, ta structure ressemblera (en gros) à ça :

Code : Tout sélectionner

APPEND XXXXX
IF ~~ THEN BEGIN A_1
SAY ~Voilà mon premier APPEND.~
IF ~~ THEN EXIT
END

IF ~~ THEN BEGIN A_2
SAY ~Et voilà le deuxième.~
IF ~~ THEN EXIT
END
END
Le deuxième END sert en fait à sortir du APPEND.
Avatar du membre
Garfield
Goule majeure
Messages : 1994
Enregistré le : jeu. 18 nov. 2004, 13:41
Localisation : Paris
Contact :
Statut : Hors ligne
.

Message par Garfield »

Décidément, Weidu comme à me courir :angry:
Allez savoir pourquoi, il veut pas de ma ligne 191...
Quelque soit le bloc que j'y met, il la refuse. Si j'y met un bloc qu'il à déjà accepté auparavent, il le refuse... Par exemple:
IF ~InParty ("G#Gem")
Et Weidu me dit
[G#Gem\G#Gem.d]  ERROR at line 191 column 5-11
Near Text: InParty
Parsing.Parse_error
:angry: Alors que sembllable commande est passée sans problème auparavent.

Bon, j'ai édité mon fichier .D et... ca plante toujours, sauf que la c'est à la ligne 167, mais ca bloque toujours sur le
IF ~InParty ("G#Gem")

Pourtant ça marche sur certaisn blocs APPEND mais pas sur d'autres... a l'aide :snif:
Lies are never forgotten, they go on and they grow
Chat orange et D'Oghmatique.
Rodolpho Remington, barde/boulanger, s'exprime en FF99CC > Bio RP
Sous Nain
Statut : Hors ligne
.

Message par Sous Nain »

Un parse error ça peut aussi être du à une erreur dans les lignes précédentes.
Par exemple, dans le dialogue suivant :

IF ~False() THEN BEGIN Bugne2
IF ~~ THEN DO ~NoAction()~ EXIT
END

WeiDU t'indiquera une erreur de parsing au niveau de DO, alors que l'erreur est à la première ligne, avec l'oublis d'un ~ après False().
Lorsque WeiDU lit ton dialogue, il voit : IF ~

Il en déduit que tant qu'il n'a pas revu de ~, il s'agit de conditions.
Mais l'évaluation des conditions se fait après. En d'autres termes, WeiDU ne se rends pas compte immédiatement qu'il y a des lignes qui ne correspondent pas à des conditions entre les deux ~.
Cependant, lorsqu'il arrive au deuxieme ~ (ligne 2), il voit après THEN (tout va bien), puis DO alors qu'il attends un BEGIN.
L'erreur se déclenche, au niveau de DO.

Donc voilà, parse erreur ça veut dire qu'il y a pas le bon truc au bon endroit, et il arrive souvent que l'erreur soit dans les lignes précédentes. Vérifie bien que tu n'as pas oublié un ~ ou " fermant quelquepart.
Avatar du membre
Garfield
Goule majeure
Messages : 1994
Enregistré le : jeu. 18 nov. 2004, 13:41
Localisation : Paris
Contact :
Statut : Hors ligne
.

Message par Garfield »

Yaaaaaaahaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa!
Ca marche :hein: merci ^^

Il manquait bien un ~ a la fin d'un phrase de Jan ^^
Lies are never forgotten, they go on and they grow
Chat orange et D'Oghmatique.
Rodolpho Remington, barde/boulanger, s'exprime en FF99CC > Bio RP
Avatar du membre
Garfield
Goule majeure
Messages : 1994
Enregistré le : jeu. 18 nov. 2004, 13:41
Localisation : Paris
Contact :
Statut : Hors ligne
.

Message par Garfield »

Double post, désolé :timide:

Je voulais savoir s'il fallait mettre les banters dans le même fichier que le dialogue d'engagement:

Exemple, doit ton faire
BEGIN Mod

(dialogue d'introduction duPNJ dans l'auipe)

~Begin BMod~
(Banter)
Dans le même fichier .d ou bien dois je faire un fichier Mod.d avec le dialogue d'introduction et un fichier BMod.d distinct ?
Lies are never forgotten, they go on and they grow
Chat orange et D'Oghmatique.
Rodolpho Remington, barde/boulanger, s'exprime en FF99CC > Bio RP
Angelus Crow
Statut : Hors ligne
.

Message par Angelus Crow »

Il me semble avoir vu les deux, à la limite, fais comme tu préfères. Soit plusieurs fichiers *.d, soit un fichier *.d où tout se suivra.

Par contre, une petite erreur dans ton quote :

C'est :

BEGIN Mod

(le dialogue initial)

BEGIN ModP

(quand tu le vires)

BEGIN BMod

(les banters)
et non ~begin BMod~ ^^ .
Avatar du membre
Garfield
Goule majeure
Messages : 1994
Enregistré le : jeu. 18 nov. 2004, 13:41
Localisation : Paris
Contact :
Statut : Hors ligne
.

Message par Garfield »

Oki, bon, pour le moment ça marche, mais il me reste un problème...
Je suis scrupuleusement le tutorial de Blue.

Le problème se situe dans les blocs APPEND, par exemple:

Code : Tout sélectionner

APPEND BAERIE
IF ~InParty ("G#Gem")
See("G#Gem")
!StateCheck("G#Gem",STATE_SLEEPING)
Global("CircusTalk","LOCALS",0)~ THEN BEGIN Cirque
SAY ~Dîtes Ginera, je ne connais des gnomes que leur dogme et mon oncle Quayle... Comment sont les autres gnomes?~
IF ~~ THEN DO ~SetGlobal ("CircusTalk",LOCALS",1)~ EXTERN BG#GEM GnomePeupl
END

IF ~~ THEN BEGIN Svirf
SAY ~En Ombreterre? Les pauvres!! Ils doivent soufrir a cause des duergars et des drows. Merci Ginera, grâce à vous je prierais baervan avec plus de ferveur en pensant à ces malheureux Svirfenebelins...~
IF ~~ THEN EXIT
END
END
Cette partie là fonctionne: Aerie enclenche le début du dialogue.

Code : Tout sélectionner

IF ~~ THEN BEGIN GnomePeupl
SAY ~Vaste sujet Aerie. Commençons par les bases... Il existent trois races de gnomes: les gnomes des collines, tels que moi ou votre oncle, sont les plus communs. Ils vivent souvent dans les villes, où ils entretiennent de bons rapports avec les autres ehtnies. Ils sont gentils et généreux en majorité.~
~Il existe une autre race de gnomes bons: les gnomes des forêts. Ceux ci vivent dans la nature et se montrent rarement aux étrangers, si bien que beaucoup les considèrent comme une légende.~
=~Enfin, il y a les Svirfenebelins, des gnomes infortunés qui vivent dans l'Ombreterre...~
IF ~IsValidForPartyDialog("Aerie")~ THEN EXTERN BAERIE Svirf
IF ~!IsValidForPartyDialog("Aerie")~ THEN EXIT
END
Cette partie là ne fonctionne pas: pas de réponse de Ginera :snif:
Lies are never forgotten, they go on and they grow
Chat orange et D'Oghmatique.
Rodolpho Remington, barde/boulanger, s'exprime en FF99CC > Bio RP
Angelus Crow
Statut : Hors ligne
.

Message par Angelus Crow »

Hmm... Déjà, il manquerait un "=". Je le rajoute en rouge.
Originally posted by Garfield@dimanche 19 juin 2005, 01h22
IF ~~ THEN BEGIN GnomePeupl
SAY ~Vaste sujet Aerie. Commençons par les bases... Il existent trois races de gnomes: les gnomes des collines, tels que moi ou votre oncle, sont les plus communs. Ils vivent souvent dans les villes, où ils entretiennent de bons rapports avec les autres ehtnies. Ils sont gentils et généreux en majorité.~
=
~Il existe une autre race de gnomes bons: les gnomes des forêts. Ceux ci vivent dans la nature et se montrent rarement aux étrangers, si bien que beaucoup les considèrent comme une légende.~
=~Enfin, il y a les Svirfenebelins, des gnomes infortunés qui vivent dans l'Ombreterre...~
IF ~IsValidForPartyDialog("Aerie")~ THEN EXTERN BAERIE Svirf
IF ~!IsValidForPartyDialog("Aerie")~ THEN EXIT
END
Ensuite, il y a plus simple pour des banters entre PnJs : la commande CHAIN (oui, j'aurais pu y penser avant).

Ca ressemble à :
CHAIN
  IF ~IsVAlidForPartyDialog("Aerie")
        Global("CircusTalk","LOCALS",0)~ THEN BAERIE Cirque
~Dîtes Ginera, je ne connais des gnomes que leur dogme et mon oncle Quayle... Comment sont les autres gnomes?~
DO ~SetGlobal ("CircusTalk",LOCALS",1)~

== BG#GEM
~Vaste sujet Aerie. Commençons par les bases... Il existent trois races de gnomes: les gnomes des collines, tels que moi ou votre oncle, sont les plus communs. Ils vivent souvent dans les villes, où ils entretiennent de bons rapports avec les autres ehtnies. Ils sont gentils et généreux en majorité.~
=
~Il existe une autre race de gnomes bons: les gnomes des forêts. Ceux ci vivent dans la nature et se montrent rarement aux étrangers, si bien que beaucoup les considèrent comme une légende.~
=~Enfin, il y a les Svirfenebelins, des gnomes infortunés qui vivent dans l'Ombreterre...~

== BAERIE
~En Ombreterre? Les pauvres!! Ils doivent soufrir a cause des duergars et des drows. Merci Ginera, grâce à vous je prierais baervan avec plus de ferveur en pensant à ces malheureux Svirfenebelins...~

EXIT
Voilà ^^ .
Avatar du membre
Garfield
Goule majeure
Messages : 1994
Enregistré le : jeu. 18 nov. 2004, 13:41
Localisation : Paris
Contact :
Statut : Hors ligne
.

Message par Garfield »

J'utilise aussi la commande CHAIn, mais il est dit dans le tuto que ça ne marche que quand le PNJ est l'instigateur du dialogue. Là, c'est Aerie qui commence à parler. Si j'utilise ta commande, c'est mon PNJ qui parlerais à la place d'Aerie....
Non?
Lies are never forgotten, they go on and they grow
Chat orange et D'Oghmatique.
Rodolpho Remington, barde/boulanger, s'exprime en FF99CC > Bio RP
Angelus Crow
Statut : Hors ligne
.

Message par Angelus Crow »

Ah ? :8:

Je ne me rappelle plus avoir vu ça... Mais je ne pense pas, vu qu'on commence par le dialoque d'Aérie (BAERIE).

A la limite, essaie, on verra bien ;) .
Avatar du membre
Garfield
Goule majeure
Messages : 1994
Enregistré le : jeu. 18 nov. 2004, 13:41
Localisation : Paris
Contact :
Statut : Hors ligne
.

Message par Garfield »

Alors, une petite question idiote:
Comment faire pour avoir des possibilités différentes de reponses à un PNJ selon l'alignement et/ou la réputation du PJ?
Lies are never forgotten, they go on and they grow
Chat orange et D'Oghmatique.
Rodolpho Remington, barde/boulanger, s'exprime en FF99CC > Bio RP
Avatar du membre
Galathée
Élu de Mystra
Messages : 36360
Enregistré le : mer. 25 août 2004, 15:26
Localisation : Ailleurs
Contact :
Statut : Hors ligne
.

Message par Galathée »

Chez Keto, pour la réputation, c'est comme ça:

IF ~~ firlives5
SAY @2098
= @2099
++ @2100 + firlives11
++ @2101 + firlives12
+ ~ReputationGT(Player1,10)~ + @2102 + firlives13a
+ ~ReputationLT(Player1,11)~ + @2102 + firlives13b
++ @2103 + firlives14
END
Jamais rencontré pour l'alignement...

EDIT: bon, là, par hasard, le PJ dit justement la même phrase, mais ça n'est pas très grave...
Avatar du membre
Garfield
Goule majeure
Messages : 1994
Enregistré le : jeu. 18 nov. 2004, 13:41
Localisation : Paris
Contact :
Statut : Hors ligne
.

Message par Garfield »

Bon, tant pis pour l'alignement, je vais déjà voir avec la réputation, mais si quelqu'un trouve pour l'alignement, ça m'interesse toujours ^^

Encore une question: quel commande utiliser pour qu'un PNJ attaque un PJ à la suite d'un dialogue?
Lies are never forgotten, they go on and they grow
Chat orange et D'Oghmatique.
Rodolpho Remington, barde/boulanger, s'exprime en FF99CC > Bio RP
Angelus Crow
Statut : Hors ligne
.

Message par Angelus Crow »

Pour une réponse en fonction de l'alignement du PJ :
IF ~~ THEN BEGIN reponsealignement

SAY ~Tu es de quel alignement ?~

IF ~Alignment(Player1,MASK_GOOD)~ THEN REPLY ~Bon.~ EXIT
IF ~Alignment(Player1,MASK_NEUTRAL)~ THEN REPLY ~Neutre.~ EXIT
IF ~Alignment(Player1,MASK_EVIL)~ THEN REPLY ~Mauvais.~ EXIT

END
En gros, c'est ça. Je n'ai pas en tête les triggers relatifs à chaque alignement, mais ils sont sur l'IESDP. Là, c'est seulement bon / neutre / mauvais.

Pou le faire attaquer, il faut le faire passer ennemi (il y a une fonction Enemy() pour ça). Ensuite, tout se passe dans le script de la créature.

Pour cette option, le dialogue de Firekraag correspondrait parfaitement je pense ;) .
Répondre

Retourner vers « Dialogues »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 0 invité