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 16:26:22
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 |
Alcanium Novice Messages: 19 Localisation: Reims |
Salut,
Voila j' ai eut une idée qui pour moi me parait assez intéressante c' est a dire créé un objet que l' on a dans son inventaire et l' utilisé pour se téléporter au prés du chef de groupe. mais voila le probléme et que j' ai commencé a scripter il n' y a pas longtemps et j' ai du mal a faire mon script .Il y aurait il quelqu' un assez charitable pour m' aider a créé se script ou a m' en conseiller un deja créé. Merci |
Revenir en haut | |
Bloutiouf Chevalier Messages: 70 |
En fait tu ne peux pas detecter l'utilisation d'un objet, on va donc faire un collier ou une bague qui lorsqu'elle se fait équiper, te téléporte auprès de la personne souhaitée.
Il faut déjà créer l'objet, bon ça pas de problème pour ça, on va dire que le tag de l'objet est BagueTeleporting. A placer dans le OnPlayerEquipItem du module : NWScript :
void main() { if ( GetTag(GetPCItemLastEquipped()) == "BagueTeleporting" ) AssignCommand( GetPCItemLastEquippedBy() , ActionJumpToLocation( GetLocation( GetObjectByTag("Chef_Du_Groupe") ) ) ); } Ce script te téléporte aux côtés du pnj portant le tag Chef_Du_Groupe, cependant si tu veux être téléporté aux côtés d'un pj, indique le parce que... EDIT : j'ai oublié de préciser qu'une fois l'objet utilisé, il fallait l'enlever de l'inventaire si tu veux qu'il ne puisse s'utiliser qu'une fois, soit le desequiper pour pas qu'il reste dessus, soit dans le premier cas NWScript :
void main() { if ( GetTag(GetPCItemLastEquipped()) == "BagueTeleporting" ) { AssignCommand( GetPCItemLastEquippedBy() , ActionJumpToLocation( GetLocation( GetObjectByTag("Chef_Du_Groupe") ) ) ); DestroyObject(GetPCItemLastEquipped()); } } ou dans le deuxième NWScript : void main() { if ( GetTag(GetPCItemLastEquipped()) == "BagueTeleporting" ) { AssignCommand( GetPCItemLastEquippedBy() , ActionJumpToLocation( GetLocation( GetObjectByTag("Chef_Du_Groupe") ) ) ); AssignCommand( GetPCItemLastEquippedBy() , ActionUnequipItem( GetPCItemLastEquipped()) ); } } |
Revenir en haut | |
Alcanium Novice Messages: 19 Localisation: Reims |
Merci pour tes réponses,
Effectivement cet objet sert à se téléporter prés d' un pj. Désolé Mais ta question en appelle deux autre de ma part: Est il possible de se téléporter au prés de nimporte quel pj, en utilisant par exemple un dialogue avec l' objet dans lequel les noms des pj serait marqué? Cet objet peut il marché dans tout les modules? PS:L' invention d' un objet pareil doit paraitre étrange, mais je l' ai imaginer lorsque j' en est eut marre d' arrivé sur des modules ou tu te retrouve tout seul, ou tu cherche dans le module pendant 30 min se qu' il faut faire et ou en est l' histoire. |
Revenir en haut | |
Bloutiouf Chevalier Messages: 70 |
Un dialogue dynamique comportant le nom de tous les joueurs, à ma connaissance ce n'est pas possible mais je peux me tromper, en tout cas je ne sais pas faire.
Cet object peut effectivement marcher dans tous les modules, car comme tu l'a vu dans sa création, il n'y a pas de trucs particuliers au module ( mis à part qu'il faut mettre un script dans le OnPlayerEquipItem ), d'ailleurs je ne comprend pas pourquoi tu as posé cette question Pour se télécharger auprès d'un pj, il faudrait : NWScript :
void main() { if ( GetTag(GetPCItemLastEquipped()) == "BagueTeleporting" ) { object oDest = GetFirstPC(); while (GetIsObjectValid(oDest)) { if ( GetName(oDest) == "Nom de ton chef" ) { AssignCommand( GetPCItemLastEquippedBy() , ActionJumpToLocation( GetLocation( oDest ) ) ); AssignCommand( GetPCItemLastEquippedBy() , ActionUnequipItem( GetPCItemLastEquipped()) ); } oDest = GetNextPC(); } } } Bien sur celà signifie qu'on ne peux avec un objet spécifique se téléporter que vers un pj spécifique ( encore faut il que le gars soit connecté ) mais on peut imaginer un tel scénario : un forgeron de ces objets (pnj), qui te fournit des bagues permettant de se téléporter à toi ( elles sont donc à distribuer ) sur le principe d'une String locale à l'objet définie lors du don ( par récuperation du nom du pj parlant au pnj ) et c'est cette chaine locale qui est utilisée lors de la vérification du nom du pj lors de l'équipement... bon si t'a pas compris je peux réexpliquer |
Revenir en haut | |
Longbow Grand Sage du Conseil Messages: 638 Localisation: Orléans |
Hum, hum...
S'il s'agit de se téléporter près du chef du groupe, il me semble que la fonction GetFactionLeader est indiquée... Script à placer dans le OnActivateItem NWScript :
void main() { object oPC = GetItemActivator(); object oItem = GetItemActivated(); if (GetTag(oItem) == "TAG de l'objet") { object oChef = GetFactionLeader(oPC); ClearAllActions(); DelayCommand(0.5, ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_IMP_UNSUMMON), oPC)); DelayCommand(1.5, AssignCommand (oPC, ActionJumpToObject(oChef))); } } J'espère que cela t'aidera Alcanium. _________________ Rex illeteratus Quasi Asinus Coronatus Jean de Salisbury |
Revenir en haut | |
Alcanium Novice Messages: 19 Localisation: Reims |
Salut,
Ca va paraitre béte de ma part mais ou est le OnActiveItem? Merci |
Revenir en haut | |
Bloutiouf Chevalier Messages: 70 |
Editer -> Propriétés du modules -> Evenements, onActivateItem est le deuxième en haut
|
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