Oyez, oyez !
Les résultats du vote sur les meilleurs RPG de tous les temps sont désormais dévoilés dans ce message !
Merci à toutes et à tous pour votre participation !
N'hésitez pas à aller commenter, ajouter des jeux auxquels vous n'auriez pas pensé...
Les résultats du vote sur les meilleurs RPG de tous les temps sont désormais dévoilés dans ce message !
Merci à toutes et à tous pour votre participation !
N'hésitez pas à aller commenter, ajouter des jeux auxquels vous n'auriez pas pensé...
Remplacer le dialogue de "bonjour" d'un pnj selon condition.
- deratiseur
- Golem de fer
- Messages : 3697
- Enregistré le : mer. 05 déc. 2007, 18:35
- Localisation : Gap, Hautes alpes
- Statut : Hors ligne
Remplacer le dialogue de "bonjour" d'un pnj selon condition.
.
Salut.
Je n'ai trouvé ça nulle part dans les tutoriels. Je voudrais faire qu'un pj qui dit "Bonjour. Êtes vous venus voir mon magasin ?" en introduction, la seule condition de ce dialogue étant "il ne m'a jamais volé", dise A LA PLACE "bonjour... ho, je vois que vous avez une très haute réputation [...] si le groupe vient lui parler avec 18 de réputation.
Comment faire si le dialogue initial ne présente que la seule condition "ne pas avoir volé" ? Comment faire pour qu'il ne soit PAS lancé, que ce soit le texte de la reputation à la place ?
Note, je ne comprend rien au instruction CHAINS, et je suis quasiment sur qu'un APPEND ne suffira pas
Je n'ai trouvé ça nulle part dans les tutoriels. Je voudrais faire qu'un pj qui dit "Bonjour. Êtes vous venus voir mon magasin ?" en introduction, la seule condition de ce dialogue étant "il ne m'a jamais volé", dise A LA PLACE "bonjour... ho, je vois que vous avez une très haute réputation [...] si le groupe vient lui parler avec 18 de réputation.
Comment faire si le dialogue initial ne présente que la seule condition "ne pas avoir volé" ? Comment faire pour qu'il ne soit PAS lancé, que ce soit le texte de la reputation à la place ?
Note, je ne comprend rien au instruction CHAINS, et je suis quasiment sur qu'un APPEND ne suffira pas
- deratiseur
- Golem de fer
- Messages : 3697
- Enregistré le : mer. 05 déc. 2007, 18:35
- Localisation : Gap, Hautes alpes
- Statut : Hors ligne
.
J'ai essayé de créer un dialogue "pour voir", mais il refuse de s'installer :
Il bloque sur "CreateVisualEffect("spunhbl2",Myself)" et il ne reconnait pas l'integer "IF ~HasItemEquiped("PXPMLDOR",LastTalkedToBy)"EXTEND_BOTTOM SCROLL01
IF ~HasItemEquiped("PXPMLDOR",LastTalkedToBy) Global("Pxpmldor,"LOCALS",0)~ THEN REPLY @51 GOTO PXLAMEDOR
IF ~HasItemEquiped("PXPMLDOR",LastTalkedToBy) Global("Pxpmldor,"LOCALS",3) PartyHasItem(MISCBP) PartyGoldGT(11170)~ THEN GOTO PXLDOROK
END
APPEND SCROLL01
IF ~~ THEN BEGIN PXLAMEDOR SAY @52
IF ~~ DO ~SetGlobal("Pxpmldor","LOCALS",3)~ EXIT
END
IF ~~ THEN BEGIN PXLDOROK SAY @53
IF ~~ THEN REPLY #66662 DO
~TakePartyItemNum("Pxpmldor",1) DestroyItem("Pxpmldor")
TakePartyGold(11171) DestroyGold(11717)~
CreateVisualEffect("spunhbl2",Myself)
GiveItemCreate("Pxpmldaz",LastTalkedToBy,1,1,1)~
EXIT
IF ~~ THEN REPLY #66664 EXIT
END
END
.
Bonjour deratiseur,
heureusement pour moi, je ne connais rien aux commandes weidu !
néanmoins, essayes donc ceci !
et tu as inversé CreateVisualEffectObject (qui réclame un objet) avec CreateVisualEffect (qui réclame une position)...
en espérant que cela fonctionne
edit : et les " dans PartyHasItem
heureusement pour moi, je ne connais rien aux commandes weidu !
néanmoins, essayes donc ceci !
il manquait un " dans tes deux fonctions GlobalEXTEND_BOTTOM SCROLL01
IF ~HasItemEquiped("PXPMLDOR",LastTalkedToBy) Global("Pxpmldor","LOCALS",0)~ THEN REPLY @51 GOTO PXLAMEDOR
IF ~HasItemEquiped("PXPMLDOR",LastTalkedToBy) Global("Pxpmldor","LOCALS",3) PartyHasItem("MISCBP") PartyGoldGT(11170)~ THEN GOTO PXLDOROK
END
APPEND SCROLL01
IF ~~ THEN BEGIN PXLAMEDOR SAY @52
IF ~~ DO ~SetGlobal("Pxpmldor","LOCALS",3)~ EXIT
END
IF ~~ THEN BEGIN PXLDOROK SAY @53
IF ~~ THEN REPLY #66662 DO
~TakePartyItemNum("Pxpmldor",1) DestroyItem("Pxpmldor")
TakePartyGold(11171) DestroyGold(11717)~
CreateVisualEffectObject("spunhbl2",Myself)
GiveItemCreate("Pxpmldaz",LastTalkedToBy,1,1,1)~
EXIT
IF ~~ THEN REPLY #66664 EXIT
END
END
et tu as inversé CreateVisualEffectObject (qui réclame un objet) avec CreateVisualEffect (qui réclame une position)...
en espérant que cela fonctionne
edit : et les " dans PartyHasItem
- deratiseur
- Golem de fer
- Messages : 3697
- Enregistré le : mer. 05 déc. 2007, 18:35
- Localisation : Gap, Hautes alpes
- Statut : Hors ligne
.
Merci Rivvert. Té réponse m'indiquant que mon code est farci d’erreurs bêtes m'a permis de trouver aussi pourquoi ça bloquait à la ligne 12 : un ~ en trop.
CA se compile maintenant. Alors connaisseur de weidu ou non, tu as été bien sympa, merci
CA se compile maintenant. Alors connaisseur de weidu ou non, tu as été bien sympa, merci
- deratiseur
- Golem de fer
- Messages : 3697
- Enregistré le : mer. 05 déc. 2007, 18:35
- Localisation : Gap, Hautes alpes
- Statut : Hors ligne
.
Bon, j'abandonne.
Je n'arrive pas à inclure mon texte en tout premier avant la réplique par défaut.
Mais j'ai contourné le problème Comme mon texte est lu en deuxième, je l'ai modifié pour qu'il corresponde à la suite du premier. Voilà, c'est fini
Je n'arrive pas à inclure mon texte en tout premier avant la réplique par défaut.
Mais j'ai contourné le problème Comme mon texte est lu en deuxième, je l'ai modifié pour qu'il corresponde à la suite du premier. Voilà, c'est fini
- Isaya
- Adepte de Grondemarteau
- Planaire
- Messages : 6990
- Enregistré le : mar. 22 juil. 2003, 21:03
- Localisation : Plaisir
- Contact :
- Statut : Hors ligne
.
Si je comprends, tu cherches à ajouter quelque chose avant le tout premier échange prévu par les concepteurs. La seule méthode est de donner à ton nouvel état de dialogue un "poids" (weight) supérieur aux existants afin sa condition de déclenchement soit vérifiée en premier. WeiDU dispose du mot-clé WEIGHT pour fixer le poids.
Voici un tutoriel sur le principe du poids des états de dialogue.
Voici le tutoriel d'utilisation inclus dans le readme WeiDU.
Voici un tutoriel sur le principe du poids des états de dialogue.
Voici le tutoriel d'utilisation inclus dans le readme WeiDU.
:!: 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 !
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 !
- deratiseur
- Golem de fer
- Messages : 3697
- Enregistré le : mer. 05 déc. 2007, 18:35
- Localisation : Gap, Hautes alpes
- Statut : Hors ligne
.
Si j'essaie de réutiliser un truc qui marche bien pour Todd, ça bugue
END
Code : Tout sélectionner
EXTEND_BOTTOM UDDROW23 0
IF ~HasItemEquiped("pxl2btoi",LastTalkedToBy()) PartyGoldGT(9999)~ THEN GOTO PXL2BTOIL
END
APPEND UDDROW23
IF ~~ THEN BEGIN PXL2BTOIL SAY @12011
IF ~~ THEN REPLY #66664 DO
~TakePartyItemNum("pxl2btoi",1) DestroyItem("pxl2btoi")
TakePartyGold(10000) DestroyGold(10000)
CreateVisualEffectObject("spcrtwpn",Myself)
GiveItemCreate("pxl2bto2",LastTalkedToBy(),1,1,1)~
EXIT
IF ~~ THEN REPLY #4399 GOTO 0 //ça me dis qu'il n'y a pas de label 0. je voudrais que ça revienne au début du dialogue, quand il dit "bonjour", comment je trouve le label ?
END
Modifié en dernier par deratiseur le dim. 07 mai 2023, 10:58, modifié 5 fois.
- deratiseur
- Golem de fer
- Messages : 3697
- Enregistré le : mer. 05 déc. 2007, 18:35
- Localisation : Gap, Hautes alpes
- Statut : Hors ligne
.
Désole de vous avoir dérangé pour rien, ça marche. Weidu pour decompiler les dlg.
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités