Login: Pass:
nonpoluant



Inscrit le: 05 Oct 2006
Messages: 14
Message Posté le: 8/11/2006 18:48 Sujet du message: GetObjectSelf
Salut

Ceux qui connaissaient le script sous NWN1, connaissaient la fonction GetObjectSelf, qui etait tres pratique (pour moi en tout cas)

Je n'arrive pas à la trouver dans NWN2... elle n'existe pu? Par quoi est-elle remplacé??

Sans ça, comment je pourait faire pour résoudre le probleme suivant: J'ai une salle dans laquelle j'ai plein de chaise. Et je veux que chaque chaise possede un scripte qui ordonne à celui qui a cliqué de s'assoir dessus.

Il faut donc que je désigne le mec qui a cliqué: GetLastUsedBy
Il faut aussi que je designe la chaise sur laquelle s'assoir: GetObjectSelf (l'object même qui possede le script) Mais sans cette fonction comment faire???
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
Tao
Animateur


Inscrit le: 25 Avr 2006
Messages: 184
Localisation: Quelque part en yhgdrazil
Message Posté le: 9/11/2006 0:36 Sujet du message:
Tu mets ça là où tu énonce tes variables

object oChaise = OBJECT_SELF();

GetObjectSelf ça n'as jamais éxisté :p Mais je te préviens que l'ActionSit déconne pour le moment Smile
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
Aerandir



Inscrit le: 07 Nov 2005
Messages: 43
Message Posté le: 9/11/2006 8:45 Sujet du message:

Sinon de souvenir tu peux mettre un même tag à toutes tes chaises et désigner les chaises par un GetObjectByTag.


Bon après je sais pas si c'est très propre de mettre le même tag à toutes les chaises, mais bon du moment que le resref est différent, ça doit pas poser de problème, si ? Confused

Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé
-MeteZ-



Inscrit le: 19 Nov 2005
Messages: 85
Localisation: Région Parisienne
Message Posté le: 9/11/2006 21:26 Sujet du message:
Aerandir -> Si il y a 241 chaises dans le module, tu vas mettre 241 scripts différents ?

On peut mettre un script pour désigner toutes les chaises comme sur nwn1, par contre, Tao à l'air de dire que ActionSit à l'air de mal marcher. J'ai pas vérifié ...
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé
Mars



Inscrit le: 22 Mai 2005
Messages: 218
Localisation: Sur une galaxie lointaine, très lointaine
Message Posté le: 10/11/2006 0:10 Sujet du message:
non si elles portent toutes le même tag un seul script suffira, par contre il vaudrait mieux utiliser un GetNearestObjectBYTag plutot qu'un GetObjectByTag sinon il ne va pas savoir quelle chaise choisir Razz

Mais bon la solution de Tao est bien plus propre, il faut juste attendre que ActionSit arrete de bugger.
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
-MeteZ-



Inscrit le: 19 Nov 2005
Messages: 85
Localisation: Région Parisienne
Message Posté le: 10/11/2006 21:11 Sujet du message:
Bah de toute façon dans cet exemple, ni GetObjectByTag ni GetNearestObjectByTag n'est approprié puisque OBJECT_SELF désignera la chaise.
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé
Tao
Animateur


Inscrit le: 25 Avr 2006
Messages: 184
Localisation: Quelque part en yhgdrazil
Message Posté le: 10/11/2006 22:50 Sujet du message:
Exactement metez, c'est propre, c'est court, c'est simple, et un script suffit pour tous les placeables :p
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
nonpoluant



Inscrit le: 05 Oct 2006
Messages: 14
Message Posté le: 11/11/2006 12:07 Sujet du message:
le probleme, c'est que je le trouve pas dans la liste, votre OBJECT_SELF ...
il y a deux listes, à droite: la liste des fonctions, et la liste appelé "general" dans laquelle tous les noms sont ecrit en majuscules. je trouves des choses du type: OBJECT_TYPE_LIGHT ou OBJECT_TYPE_ENCOUNTER, mais votre OBJECT_SELF je le vois nul part!!

merci de m'eclairer
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
Mithrandir



Inscrit le: 26 Aoû 2005
Messages: 68
Message Posté le: 11/11/2006 12:24 Sujet du message:
OBJECT_SELF renvoie l'objet sur lequel le script est placé. Pas besoin de t'embêter à chercher dans la liste à droite, fais comme ils t'ont dis de faire Wink

A savoir
Code:
void main()
{
   object oChaise = OBJECT_SELF;
   blablabla
}

Wink
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé
Tao
Animateur


Inscrit le: 25 Avr 2006
Messages: 184
Localisation: Quelque part en yhgdrazil
Message Posté le: 11/11/2006 13:22 Sujet du message:
Merci Mithr :p en fait OBJECT_SELF n'est ni une fonction ni une constante, c'est pour ca que tu ne le trouve pas, c'est comme if, else, else if, et autres :p
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
nonpoluant



Inscrit le: 05 Oct 2006
Messages: 14
Message Posté le: 11/11/2006 14:53 Sujet du message:
ok... faut l'savoir quand meme!

Je vous assure que dans le premier neverwinter, il y avait la fonction: GetObjectSelf(), je l'utilisais tout le temps!
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger
Sularix



Inscrit le: 16 Avr 2006
Messages: 185
Message Posté le: 11/11/2006 16:12 Sujet du message:
cette function n existe pas cherchez dans le lexicon si vous l avez telecharge (le lien est mort)

void main()
{
object oPlayer = GetLastUsedBy();
object oChair = OBJECT_SELF;
if (GetIsPC(oPlayer))
{
if (GetIsObjectValid(oChair) && !GetIsObjectValid (GetSittingCreature(oChair)))
{
AssignCommand(oPlayer, ActionSit(oChair));
}
}
}

Mithrandir dit vrai ^^.
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
Tao
Animateur


Inscrit le: 25 Avr 2006
Messages: 184
Localisation: Quelque part en yhgdrazil
Message Posté le: 11/11/2006 16:29 Sujet du message:
Voui sauf que en fait, ton script est bon sul, mais la fonction actionsit déconne, donc en jeu ca ne marchera pas ... la seule magouille qui semble fonctionner ( car les animations aussi sont foireuses ) est de téléporter le joueur dans le placeable, de le faire s'orienter dans le meme sens que le placeable et de forcer le modele a jouer l'animation assise ( trouvable dans les 2das ) en boucle, esperons que la 1.03 corrige ça parce que c'est assez folklo la :p
Répondre en citant
Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur
Montrer les messages depuis:   

Page 1 sur 1
Sauter vers:  

 

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

Traduction par : phpBB-fr.com
Powered by phpBB © 2001, 2007 phpBB Group