JeuxOnLineForumsPlusConnectés : 637 (sites) | 1207 (forums)Créer un compte
Forum jeux-vidéo>Neverwinter Nights
Maskado
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > HELP Alignement et teleportation RSS
   
Répondre
Partager Outils Rechercher
Gargantua
Dauphin / Dauphine
 

HELP Alignement et teleportation

Bonjour,

Je voudrais savoir comment je peux empecher un PJ de franchir un portail de teleportation si il n'a pas le bon alignement (bon ou mauvais) et aussi suivant un objet, j'ai deja le script pour l'objet mais pas pour l'alignement. Voila mon script concernant l'objet:

#include "nw_i0_tool"

void main()
{

object oClicker = GetClickingObject ();

if (!CheckPartyForItem (oClicker, "AnneauA"))
{
object oPC = GetLastUsedBy();
if (GetIsPC(oPC))
{
object oTarget = GetWaypointByTag ("departville1");
AssignCommand( oPC, JumpToObject( oTarget));
}
}
else
{
ActionSpeakString ("Vous ne pouvez pas passez avec cet anneau");
}
}

Merci.
Lien direct vers le message - Vieux
Avatar de Zunzun
Zunzun
Alpha & Oméga
 
Avatar de Zunzun
 
Bon donc ton script doit empecher le PJ de passer s'il a l'anneau et s'il est d'alignement bon ou mauvais ?
Lien direct vers le message - Vieux
Gargantua
Dauphin / Dauphine
 
Exact
Lien direct vers le message - Vieux
Elvorfirimathrel
Dauphin
 
Post
De tête, donc à tester

Code PHP:

#include "nw_i0_tool"

void main()
{

 
object oClickeroTarget;
 
int nClickernHasItemRing;

 
oClicker GetClickingObject ();
 
nClicker GetAlignmentGoodEvil(oClicker);
 
oTarget GetWaypointByTag ("departville1");
 
nHasItemRing HasItem(oClicker"AnneauA");

 if ((
nHasItemRing != 1) && (nClicker == ALIGNMENT_EVIL))
  
AssignCommand(oClickerJumpToObject(oTarget));
 else
  
SpeakString ("Vous ne pouvez pas passez avec cet anneau"TALKVOLUME_TALK);


Lien direct vers le message - Vieux
Gargantua
Dauphin / Dauphine
 
Le script fonctionne presque mais soit je peux utiliser le portail que je soit d'alignement bon ou mauvais soit je peux pas le passer du tout. Maintenant je me suis peut etre mal exprimer dans ce que je veux vraiment, en fait le portail ne devra accepter que les personnes d'alignement mauvais qui n'ont pas l'anneauA. Dans le script la condition est fait avec un ET, je crois et pour l'alignement je crois que je me suis mal exprimer. J'ai essayer de modifier moi-meme le script pour le faire fonctionner mais quand je modifie la condition concernant l'alignement, le portail ne fait plus rien du tout, comme si on pouvait pas l'utiliser.
Lien direct vers le message - Vieux
Elvorfirimathrel
Dauphin
 
Je viens de le rectifier. Dis moi si c'est bien ce dont tu avais besoin.
Lien direct vers le message - Vieux
Gargantua
Dauphin / Dauphine
 
La rectification est ou ???? Ton message me dit que tu l'as rectifier mais y a rien apres c'est normal ???
Lien direct vers le message - Vieux
Elvorfirimathrel
Dauphin
 
J'ai enlevé la condition qui permettait aux joueurs d'alignements bon de se faire téléporter.
Lien direct vers le message - Vieux
Gargantua
Dauphin / Dauphine
 
je teste de suite mer ci pour ton aide en tout cas !
Lien direct vers le message - Vieux
Elvorfirimathrel
Dauphin
 
No problem. Tiens moi au courant
Lien direct vers le message - Vieux
Gargantua
Dauphin / Dauphine
 
Veux tjrs pas... Je met mon perso en alignement Loyal mauvais et sans l'anneau mais le portail ne veux pas me laisser passer (il dit que je peux pas passer)
Lien direct vers le message - Vieux
Elvorfirimathrel
Dauphin
 
Je regarde ca de suite, donne moi 5 minutes, enfin j'espère lol
Lien direct vers le message - Vieux
Gargantua
Dauphin / Dauphine
 
C'est super sympa !!! desole de te faire perdre ton temps comme ca, juste une question concernant le script, est-ce que la condition que tu mets entre la possession de l'objet et l'alignement est un AND ou un OR ? Selon moi pour que cela fonctionne, il faudrait un OR mais je connais pas bien les codes pour scripter (ca tu le sais deja je suppose...), tu as mis && dans le code cela represente un AND ou OR ????
Lien direct vers le message - Vieux
Elvorfirimathrel
Dauphin
 
Post
A mettre dans le OnUsed de ton portail :
Code PHP:
// inclut le fichier "nw_i0_tool" contenant la fonction HasItem()
#include "nw_i0_tool"


void main()
{
 
// initalisation des variables
 
object oClickeroTarget;
 
int nClickernHasItemRing;

 
// on recupere l'objet ki clik sur le portail
 
oClicker GetLastUsedBy();
 
//on recupere l'alignement de l'objet ki clik sur le portail
 
nClicker GetAlignmentGoodEvil(oClicker);
 
// on recupere le waypoint suivant son Tag
 
oTarget GetWaypointByTag ("departville1");
 
// on regarde si oClicker possede l'objet AnneauA, si oui 
 // nHasItemRing vaudra 1, sinon il vaudra 0
 
nHasItemRing HasItem(oClicker"AnneauA");

 
// si la valeur de nHasItemRing ne vaut pas 1, donc si le perso 
 // ne possede pas l'anneau, et si l'alignement de de celui
 // ki clik est Evil, on lui assigne la commande de téléportation
 
if ((nHasItemRing != 1) && (nClicker == ALIGNMENT_EVIL))
  
AssignCommand(oClickerJumpToObject(oTarget));
 else
  
SpeakString ("Vous ne pouvez pas passez avec cet anneau"TALKVOLUME_TALK);


Tu as tout à fait raison, && signifie "et" et || signifie "ou"
Lien direct vers le message - Vieux
Gargantua
Dauphin / Dauphine
 
Ca marche toujours pas, j'ai modifie un peu le script pour voir si le probleme etait l'alignement ou l'anneau:
#include "nw_i0_tool"


void main()
{
// initalisation des variables
object oClicker, oTarget;
int nClicker, nHasItemRing;

// on recupere l'objet ki clik sur le portail
oClicker = GetClickingObject ();
//on recupere l'alignement de l'objet ki clik sur le portail
nClicker = GetAlignmentGoodEvil(oClicker);
// on recupere le waypoint suivant son Tag
oTarget = GetWaypointByTag ("departville1");
// on regarde si oClicker possede l'objet AnneauA, si oui
// nHasItemRing vaudra 1, sinon il vaudra 0
nHasItemRing = HasItem(oClicker, "AnneauA");

// si la valeur de nHasItemRing ne vaut pas 1, donc si le perso
// ne possede pas l'anneau, et si l'alignement de de celui
// ki clik est Evil, on lui assigne la commande de téléportation
if (nHasItemRing != 1)
if (nClicker != ALIGNMENT_EVIL)
SpeakString ("Vous ne pouvez pas passez avec cet alignement", TALKVOLUME_TALK);
else
AssignCommand(oClicker, JumpToObject(oTarget));
else
SpeakString ("Vous ne pouvez pas passez avec cet anneau", TALKVOLUME_TALK);

}

Mais il me met toujours:
Vous ne pouvez pas passez avec cet alignement

quelque soit mon alignement

Je vais reessayer demain pcq je dois aller dormir mnt. Merci pour ton aide, j'espere y arriver.
(question, le fait d'etre loyal,... n'influence pas la condition d'alignement ???)
Lien direct vers le message - Vieux
Répondre
Les forums JOL > Forum jeux-vidéo > Neverwinter Nights > NWN - Maskado > HELP Alignement et teleportation
   

Outils Rechercher
Rechercher:

Recherche avancée

Les vidéos de Neverwinter Nights RSS
  • Aucune vidéo pour le moment...
Thème visuel : Fuseau horaire GMT +1. Il est actuellement 15h48.
   

© JeuxOnLine, le site des MMO, MMORPG et MOBA. Tous droits réservés. - Conditions générales d'utilisation - Conditions d'utilisation des forums - Traitement des données personnelles - ! Signaler un contenu illicite