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 20:52:36
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 |
Eldorane Héros Messages: 298 Localisation: Moselle |
Posté le : 07/02/2005 01:34:43 Sujet du message : Déclencheurs de transition récupérant la variable [reglé]
Salut tout le monde !
Je voulais savoir quel était le moyen le plus simple de faire un déclencheur de type zone de transition mais invisible ? Je souhaite que le joueur qui marche dessus ne le voit pas et qu'il soit téléporté. Je vais en mettre plusieurs donc j'aimerai une solution simple, un peu comme les zone de transition qui sont faciles à mettre en place. Dernière édition par Eldorane le 16/04/2005 02:27:24; édité 1 fois
|
Revenir en haut | |
Mars Seigneur Messages: 199 |
Moi je mettrais un trigger avec dans le OnEnter un script de téléportation du genre
Code : void main()
{ object oPC = GetEnteringObject (); object oDest = GetObjectByTag ("WP_Destination"); location lDest = GetLocation (lDest); AssignCommand (oPC, ActionJumpToLocation(lDest)); } Je n'ai pas l'éditeur sous la main donc il y a peut etre une erreur de syntaxe mais sinon ça devrait marcher. |
Revenir en haut | |
Klemmth Seigneur Messages: 176 Localisation: france |
petite correction ( sans l'editeur moi non plus, donc possibilité de reste de fautes... ) :
NWScript : void main() { object oPC = GetEnteringObject(); object oDest = GetObjectByTag( "WP_Destination" ); location lDest = GetLocation( oDest ); AssignCommand( oPC, ClearAllActions() ); AssignCommand( oPC, ActionJumpToLocation( lDest )); } _________________ ... |
Revenir en haut | |
Athanagorn Acolyte Messages: 38 |
penser à verifier que oPC est bien un joueur, faute de quoi tous les objets commandables seront téléportés aussi.
|
Revenir en haut | |
Laxam Légende vivante Messages: 425 Localisation: Lyon |
Et pour faire plus mieux bien et plus réutilisable, au lieu de coder en dur le nom du WP de destination et bien le stocker sur le trigger (je crois qu'on peut le faire dans les propriétés de l'objet). Comme ça il suffira de mettre le nouveau trigger et de signifier le tag du WP de destination dans une variable du trigger. Je sais pas si je suis hyper clair...
Ca donnerai un truc de ce genre : NWScript :
void main() { object oPC = GetEnteringObject(); string sWP = GetLocalString(OBJECT_SELF, vWP); object oDest = GetObjectByTag(sWP); location lDest = GetLocation(oDest); if (GetIsPC(oPC)) // si l'objet entrant est bien un joueur { AssignCommand( oPC, ClearAllActions() ); AssignCommand( oPC, ActionJumpToLocation( lDest )); } } sur le trigger tu mets une variable vWP, de type string et ayant pour valeur Tag_du_WP. Ca devrait marcher non ? Moi en général je n'utilise pas ActionJumpToLocation car soivent ça ne marchait pas, j'utilise plutôt ActionJumpToObject (là tu mets l'objet, ici ce serais oDest) _________________ 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 | |
Eldorane Héros Messages: 298 Localisation: Moselle |
lol ! j'y comprends rien
Pourtant ça a l'air marrant tout ce que vous dites Donc je mets le script dans le ON Enter de la zone, ensuite je place des déclencheurs de type générique là où je veux et ensuite je tag le WP... heu non je... heu... Comment je mets une variable au déclencheur ? |
Revenir en haut | |
Ivellios Légende vivante Messages: 447 Localisation: Poitiers |
Deja le script c'est sur le OnEnter du trigger, ensuite tu place une variable sur ton trigger en fesant bouton droit sur le trigger > variables.
Ensuite la tu ajoute une variable nom : vWP type : string valeur : tag_du_wp par contre je pense qu'il serai mieu de remplacer sa : 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. par sa : 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. Voilà ^^ _________________ Scripts, systèmes, fonctions,... c'est par ici... Pyjama pour castor, une vocation, un avenir sûr |
Revenir en haut | |
Eldorane Héros Messages: 298 Localisation: Moselle |
merci ! Je test ça de suite !!!!
|
Revenir en haut | |
Laxam Légende vivante Messages: 425 Localisation: Lyon |
Même observation pour le GetWayPointByTag que pour le ActionJumpToLocation, j'ai eu des cas où ça ne marchaait pas et je n'ai jamais trouvé pourquoi alors j'utilise toujours le GetObjectByTag.
Sinon les explications de Ivellios sont bonnes, le trigger (déclencheur générique) à la place de ta zone de transition, la variable stockée dessus, le script dans le OnEnter du Triiger et le WayPoint à l'endroit de destination (qui peut très bien être dans une autre map), Par contre attention à bien mettre des nom différents à tes WP car moi il m'est arrivé d'avoir 2 noms identiques sur 2 map différentes et le joueur était téléporté au mauvais endroit mais si tu utilise une "norme" pour tes noms, il n'y a pas de raison d'en avoir en double (par exemple un tag du genre WP_nom de l'area_dest(car WP de destination)_numero avec ça le seul risque c'est que tu en ais en double dans la même map mais tu ne risque pas d'en avoir 50 sur la même map, tu peux facilement vérifier les noms. Pour plus de conseils, voir sur mon site. _________________ 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 | |
Eldorane Héros Messages: 298 Localisation: Moselle |
ça marche pas...
J'ai créé un trigger (déclencheur générique), j'ai placé le script dans son oNEnter et j'ai ajouté ce trigger dans la palette (comme ça je peux le récupérer x fois) Je fais juste là ? L'erreur se situe au début du script, dans le 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. il me dit : ERREUR : VARIABLE DEFINED WITHOUT TYPE |
Revenir en haut | |
Laxam Légende vivante Messages: 425 Localisation: Lyon |
Pardon, pardon, j'ai encore fais la même erreur que la dernière fois ou j'ai écrit un script sur la bibli de NWN (sans l'éditeur sous la main on fait parfois des erreurs), il faut mettre "vWP" et non vWP tout seul, ne jamais oublier les "
_________________ 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 | |
Eldorane Héros Messages: 298 Localisation: Moselle |
Au fait, j'ai pas précisé, tous ces triggers téléportent le PNJ toujours dans la même zone.
On peu pas encore simplifier ? Aussi, il faut que ce soit le plus discret possible car les joueurs ne doivent pratiquement pas se rendre compte qu'ils ont étés téléportés ! |
Revenir en haut | |
Athanagorn Acolyte Messages: 38 |
Personnellement, j'aurais tendance à essayer ceci:
NWScript :
void main() { object oPC = GetEnteringObject(); string sWP = GetLocalString(OBJECT_SELF, "vWP"); object oDest = GetWaypointByTag(sWP); if (GetIsPC(oPC)) // si l'objet entrant est bien un joueur AssignCommand( oPC, JumpToObject(oDest) ); } voire même à supprimer sWP et à l'intergrer dans GetWaypointByTag(). |
Revenir en haut | |
Laxam Légende vivante Messages: 425 Localisation: Lyon |
C'est pas très compliqué si ?
_________________ 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 | |
Eldorane Héros Messages: 298 Localisation: Moselle |
non, maintenant que j'ai testé et surtout compris le principe, ça va tout seul
je testerai également la version de Athanagorn |
Revenir en haut | |
Eldorane Héros Messages: 298 Localisation: Moselle |
ça fonctionne parfaitement et ça simplifie nettement le travail !!!!
Merci pour votre aide ! Mais ce n'est que le début car on finit tout doucement les maps et je vais donc attaquer les scripts. Et comme on a pas de scripteur, je vais devoir demander la plupart des trucs ici. |
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