La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
FAQ
Rechercher
Liste des Membres
Groupes d'utilisateurs
S'enregistrer Se connecter pour vérifier ses messages privés Connexion
S'enregistrer Se connecter pour vérifier ses messages privés Connexion
La date/heure actuelle est 23/11/2024 21:09:48
La Bibliothèque de Neverwinter Nights Index du Forum »
La Bibliothèque Binaire du NWScript - Neverwinter Nights
Voir le sujet précédent ¤ Voir le sujet suivant | |
---|---|
Auteur | Message |
Nemo700 Chevalier Messages: 90 |
Bonjour,
J'ai besoin d'un script permettant à un personnage de faire apparaître un portail lors d'un dialogue avec le joueur. J'ai trouvé plusieurs scripts dans ce sens ici et sur le web, mais vu le lieu ou la scène se déroule (petite pièce) et pour faire un peu original je voudrais que le portail apparaisse sous la forme d'une porte magique dans le mur (avec par exemple l'aspect « portal2 » du CEP) Est-ce que vous pourriez m'aider avec ça ? Sinon je me contenterai d'une porte secrète, mais je voudrais au moins qu'elle ne soit pas détectable par le joueur et qu'elle se révèle lors du dialogue avec le PNJ Vos suggestions sont bienvenues |
Revenir en haut | |
gussometre Ecuyer Messages: 56 Localisation: Petit asteroïde dans le finistére sud |
Salut.
Je pense que c'est trés simple: tu cré un portail avec l'aparence que tu veut dans ta pallete avec pour resref "portail" par exemple. Tu le met utilisable. Sur la ligne de ton dialogue ou tu veut faire aparaitre le portail tu met un truc du genre: NWScript :
void main { object oWP = GetObjectByTag("WP");//Par exemple location lLoc = GetLocation(oWP); CreateObject(OBJECT_TYPE_PLACEABLE,"portail", lLoc,TRUE); } (J'ai fait le script sans l'editeur donc ya peut etre quelque ptites fautes) Le waypoint avec pour tag "WP" est le waypoint d'arrivé de ton portail, tu teste et tu le bouge pour queton portail soit coller a la paroi et puis voila. Je pense que c'est tout. P.S.: Dis moi si je suis totalement a coté de la plaque et que c'était pas ca que tu demandais _________________ N'oublions pas le proverbe:quand on a faim il faut manger! |
Revenir en haut | |
Nemo700 Chevalier Messages: 90 |
là je suis pas devant mon PC perso pour tester mais merci beaucoup, cependant je pense que c'est moi qui suis à coté de la plaque : le truc que j'arrive pas à comprendre c'est comment je place l'endroit ou va apparaitre le portail, et si je le met en place comme une porte normale comment faire pour qu'elle soit invisible au joueur tant que le PNJ n'invoque pas le portail ?
|
Revenir en haut | |
gussometre Ecuyer Messages: 56 Localisation: Petit asteroïde dans le finistére sud |
Dans mon truc tu cré un wayPoint/Point de passage en francais avec pour tag "WP"et c'est a cet endroit qu'aparait le portail normalement.
C'est a peu prés pareil que ton truc sauf que le portail n'existe pas avant (L'invisibilité je saurait pas le faire, enfin je pense pas ). _________________ N'oublions pas le proverbe:quand on a faim il faut manger! |
Revenir en haut | |
Nemo700 Chevalier Messages: 90 |
ok.. il faut vraiment que j'aille me coucher, j'avais cru que le waypoint c'était la destination du portail ouvert et non pas le lieu ou il apparait... désolé
maitenant je sais pas trop comment placer un waypoint sur un mur, je vais essayer de le placer tout prêt devant |
Revenir en haut | |
gussometre Ecuyer Messages: 56 Localisation: Petit asteroïde dans le finistére sud |
Oui il faut le placer juste devant. ensuite tu teste et tu voit si le portail apparait au bon endroit:
-Si oui pas de problemme ta plus qu'a faire le script pour que ton portail méne quelque part -Si non tu bouge un peu ton waypoint pour qu'il soit bien mit. oila oila... _________________ N'oublions pas le proverbe:quand on a faim il faut manger! |
Revenir en haut | |
Nemo700 Chevalier Messages: 90 |
je viens de tester (je suis rentré chez moi pendant l'heure du déjeuner ) mais malheureusement il ne se passe rien du tout :
J'ai inséré ton script en "action conséquente" dans le dialogue du personnage concerné et j'ai placé un waypoint que j'ai renommé WP juste devant le mur voisin et quand le gars dit sa ligne... il se passe strictement rien, le dialogue prend juste fin. Est ce que j'ai oublié de faire un truc ? Sinon j'ai pensé à une bidouille de contournement : Est ce que tu peux déclencher le changement de zone (area) dans un script ? Si oui, vu que c'est une toute petite zone, je peux mettre une copie exacte avec les mêmes personnes au même endroit mais avec la porte magique en plus et quand le script à la fin du dialogue s'éxécute... hop on change de zone Qu'en penses tu ? |
Revenir en haut | |
Seth de Sombrelune Seigneur Messages: 156 |
pour verifier que ton script fonctionne, tu peu par exemple places des "mouchards technique". Un SendMessage en desigant ton perso comme destinataire te permet de voir si le script se déclanche mais aussi de voir si les variable ont bien les valeurs desirée. UNe fois le script ok, il faut penser à suprimer les mouchards, non pas en effaçant les lignes mais en ajoutant simplement un // devant.
_________________ De Tenebris Lumen Fulget....... |
Revenir en haut | |
Nemo700 Chevalier Messages: 90 |
le problème c'est que moi je comprends rien du tout aux scripts et à part copier coller, je ne pane (presque rien)
Du coup je ne sais pas à quels endroits insérer les mouchards ? ni quelles conclusions je devrais en tirer... c'est pour ça que j'essayais de trouver une solution de contournement |
Revenir en haut | |
gussometre Ecuyer Messages: 56 Localisation: Petit asteroïde dans le finistére sud |
Excuse moi j'ai oublié un truc tout béte sur le script. voici le vrai:
NWScript :
void main() { object oWP = GetObjectByTag("WP");//Par exemple location lLoc = GetLocation(oWP); CreateObject(OBJECT_TYPE_PLACEABLE,"portail", lLoc,TRUE); } oila ca devrait mieux marcher d'un coup Edit: Je comprend pas je vient de tester et t'a raisopn ca marche pas, Je cherche un peu et je te donne la réponse si je trouve. Re-Edit: c'est bon j'ai trouvé ca marche c'etait juste que j'vais un autre wp avec pour tag WP dans mon module, desolé _________________ N'oublions pas le proverbe:quand on a faim il faut manger! |
Revenir en haut | |
Enki Légende vivante Messages: 432 |
Salut !
En premier lieu vérifie que c'est bien le TAG du waypoint que tu as renommé en "WP" et pas le nom. Ensuite, vérifie bien que c'est bien le ResRef de ton portail que tu as nommé "portail" et pas le nom ou le TAG, en suite, enlève le TRUE au createObject qui ne sert à rien et qui fait peut-être planter le tout ! Voilà à bientôt ! |
Revenir en haut | |
Nemo700 Chevalier Messages: 90 |
oki je teste en rentrant..
maintenant il me reste une question suite au dernier post de Enki : le "resref" c'est le nom de l'objet dans la liste à droite ? et on peut le modifier ? parceque je peux modifier le TAG mais sur un objet "par défaut" et non pas personnalisé je savais pas qu'on pouvait le changer (en même temps je suis pas devant mon PC avec le toolset donc je dis sans doute une enorme anerie ) |
Revenir en haut | |
Enki Légende vivante Messages: 432 |
Tu ne peux pas "changer" le ResRef d'un objet, mais tu peux créer un nouvel objet ( éditer et copier )et lui attribuer un nouveau ResRef.
|
Revenir en haut | |
Nemo700 Chevalier Messages: 90 |
j'ai bien un objet qui s'appelle "portail" au niveau de la liste des resref, dans la partie personnalisée, dans la liste des objets du CEP et son tag doit etre "portal2" je crois
je crois que j'ai du mal a dissocier le nom et le resref en fait, tu peux me dire ou se trouve le resref "portail" initial que je soit sure d'avoir le bon ? Dernière édition par Nemo700 le 24/03/2006 17:04:57; édité 1 fois
|
Revenir en haut | |
Enki Légende vivante Messages: 432 |
Salut !
JE suis en Allemagne, et je n'ai pas le jeu dans le cyberKafé , mais je crois que tu trouveras le ResRef de ton objet dans l'onglet propriété > Avancées. Mais, bon, tu n'est pas impotent, tu peux fouiller et chercher tout seul Voilà ! |
Revenir en haut | |
Nemo700 Chevalier Messages: 90 |
ouch
en réalité NWN n'est pas plus installé sur les pc de mon boulot que ceux de ton cybercafé... |
Revenir en haut | |
Nemo700 Chevalier Messages: 90 |
la bonne nouvelle : ça marche super, me portal apparait comme prévu, c'était bien le coup du resref
la mauvaise c'est que je ne sais pas ou trouver ce portail pour définir ou il donne, vu qu'il est pas visible dans le toolset (bon ok c'est une question de demeuré, mais je suis complètement débutant en construction de mod, jusqu'ici mon job se limitait au scénario) EDIT : est ce que je dois mettre un truc dans le OnUsed de ce portail ? |
Revenir en haut | |
Enki Légende vivante Messages: 432 |
Citation : EDIT : est ce que je dois mettre un truc dans le OnUsed de ce portail ? Ca dépend, si tu veux que ton portail transporte le joueur quelque part, il vaut mieux ^^
tu peux mettre un NWScript :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 précisant bien sur l'objet (par un tag) où tu veux que le PJ soit transporté. Voilà, à ton service ! |
Revenir en haut | |
Nemo700 Chevalier Messages: 90 |
Bon j'ai mis ça dans le script :
NWScript :
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. mais il veut pas le compiler, enterwoods1 correspond bien au TAG du wapoint de destination, mais il y a sans doute un truc évident auquel je ne comprends rien, je dois mettre quelquechose après GetLastUsedBy ? |
Revenir en haut | |
Sith Vicious Grand Sage du Conseil Messages: 693 |
tu dois uste mettre des "" sur enterwoods1
|
Revenir en haut | |
Nemo700 Chevalier Messages: 90 |
je viens de les mettre mais en compilant il me donne :
ERREUR : DECLARATION DOES NOT MATCH PARAMETERS |
Revenir en haut | |
Sith Vicious Grand Sage du Conseil Messages: 693 |
ouais pardon, j'ai répondu trop vite.
NWScript :
#include "NW_I0_GENERIC" void main() { object oJumpTo = GetObjectByTag("enterwoods1"); AssignCommand(GetLastUsedBy(),JumpToObject(oJumpTo)); } Là théoriquement ça devrait être mieux |
Revenir en haut | |
Nemo700 Chevalier Messages: 90 |
Ca y est !! avec ta dernière proposition ça marche parfaitement. Je viens de faire un grand pas en avant grace à toi. Je te remercie à nouveau pour ton aide.
|
Revenir en haut | |
La Bibliothèque de Neverwinter Nights Index du Forum »
La Bibliothèque Binaire du NWScript - Neverwinter Nights
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