La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 22/09/2024 20:21:04


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Fzoul
Novice
Inscrit le: 24 Nov 2003
Messages: 10
Répondre en citant
Posté le : 22/01/2004 00:05:40 Sujet du message : Problème avec un script

Bonjour à tous,
J'essaye d'utiliser le script de Baldurien qui permet de se téléporter d'une zone à l'autre.
Donc je recopie le script, je change les noms que je remplace par les tags de ma zone et de mon waypoint.
Pourtant quand je compile le script, il me dit qu'il y a une erreur : ERREUR : UNKNOWN STATE IN COMPILER.
Qu'est ce que ça signifie et comment faire marcher le script ?
Merci d'avance.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
Longbow
Grand Sage du Conseil
Inscrit le: 10 Déc 2003
Messages: 638
Localisation: Orléans
Répondre en citant
Posté le : 22/01/2004 00:17:52 Sujet du message :

Hum... Hum...

Le mieux serait de recopier ici le script (dans une balise script) pour qu'on puisse décortiquer l'engin...

Sinon, vérifie que toutes les lignes (sauf Void Main et les "if") ont bien leur ; à la fin...

Autre détail, vérifie la symétrie des ( avec celle des )...
_________________
Rex illeteratus
Quasi Asinus Coronatus
Jean de Salisbury
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Fzoul
Novice
Inscrit le: 24 Nov 2003
Messages: 10
Répondre en citant
Posté le : 22/01/2004 12:41:01 Sujet du message :

Oh, eh bien c'est simple ! C'est exactement le script de Baldurien inclus dans une balise main()

NWScript :

void main()
{
void TeleportObject( string sZone, string sWayPoint )
{
  object oPlayer = GetPCSpeaker();
  object oArea = GetObjectByTag( sZone );
  float fOrientation = GetFacing( oPlayer );
  vector vPosition = GetPosition( GetObjectByTag( sWayPoint ) );

  location lWhereToGo = Location( oArea, vPosition, fOrientation );

  AssignCommand( oPlayer, JumpToLocation( lWhereToGo ) );
}
}
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.



J'ai même essayé en renommant ma zone et mon waypoint comme dans l'exemple (pensant que c'était les noms qu'il refusait). Et dès que je clique sur Compiler, il me surligne la ligne void TeleportObject... en me disant ERREUR : UNKNOWN STATE IN COMPILER

Alors si on peut m'aider...

[EDIT de Lendraste : merci d'utiliser la balise [nwscript] pour présenter les scripts]
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
lendraste
Grand Maître Chanteur du Conseil
Inscrit le: 20 Fév 2003
Messages: 1403
Localisation: Quelque part ailleurs
Répondre en citant
Posté le : 22/01/2004 13:00:02 Sujet du message :


Fzoul a écrit :
Oh, eh bien c'est simple ! C'est exactement le script de Baldurien inclus dans une balise main()
Justement, le script de Baldurien n'est pas à mettre dans une "balise" main puisque c'est une fonction. Il faut écrire une fonction main qui l'utilise dans les règles de l'art. Voilà ce que ça donnerait. A toi de compléter les Tags que je donne :

NWScript :

void TeleportObject( string sZone, string sWayPoint )
{
  object oPlayer = GetPCSpeaker();
  object oArea = GetObjectByTag( sZone );
  float fOrientation = GetFacing( oPlayer );
  vector vPosition = GetPosition( GetObjectByTag( sWayPoint ) );

  location lWhereToGo = Location( oArea, vPosition, fOrientation );

  AssignCommand( oPlayer, JumpToLocation( lWhereToGo ) );
}

void main()
{
  TeleportObject("TAG_DE_MA_ZONE", "TAG_DU_WAYPOINT");
}
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.

_________________
Lendraste de Loreval
Qui cherche la Vérité cherche celui qui la détient, car elle n'existe pas à l'état naturel.
La cité des mensonges - 1
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Numéro ICQ Ignorer l'utilisateur
 
Montrer les messages depuis :
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


Sauter vers:
FAQ | Rechercher | Liste des Membres | Groupes d'utilisateurs | S'enregistrer | Profil | Se connecter pour vérifier ses messages privés | Connexion
Powered by phpBB 2.* [m] © 2001, 2002 phpBB Group
Theme rewritten in beautiful XHTML code by Baldurien.
Thème "La Bibliothèque de Neverwinter" crée par Kruger
Traduction par : phpBB-fr.com
Page generated in 68.608ms