La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 01/06/2024 07:04:44


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
jeremie09
Voyageur
Inscrit le: 08 Mar 2003
Messages: 4
Répondre en citant
Posté le : 09/03/2003 13:06:47 Sujet du message : Comment créer un script pour un include ?

Bonjour

Je souhaite créer un script pour un include :


Citation :
script 1 :

int nDiceRoll = d100(1);
if((nDiceRoll >= 0) && (nDiceRoll < 50))
{
CreateItemOnObject("NW_AARCL008",OBJECT_SELF,1);
CreateItemOnObject("NW_IT_MPOTION001",OBJECT_SELF,1);
}

Citation :

Script 2
#include "NW_I0_GENERIC"
#include "NOMDUSCRIPT1"
void VoidCreateObject(string sTemplate, location lLoc, int bUseAppearAnimation=TRUE);

void main()
{
location lLoca = GetLocation(GetObjectByTag ("WP_cav_gobelours001_01"));
float fSeconds = 15.0; //temps en secondes pour le respawn
string sTemplate = "cav_gobelours001";

if(GetSpawnInCondition(NW_FLAG_DEATH_EVENT))
{
SignalEvent(OBJECT_SELF, EventUserDefined(1007));
}

AssignCommand(GetModule(), DelayCommand(fSeconds, VoidCreateObject(sTemplate,lLoca, TRUE)));
}

void VoidCreateObject(string sTemplate, location lLoca, int bUseAppearAnimation=TRUE)
{
CreateObject(OBJECT_TYPE_CREATURE, sTemplate,lLoca,TRUE);

}
mais le pbl c pour compiler le "script 1" !
et ce "script 1" sera appeller par "le script 2" avec l'aide de "#include"
donc apparament je ne peut pas mettre le void main () au débute de ce "script 1" puisqu'il est déjà sur le "script 2"

Merci de m'éclairer
Jérémié Smile
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Jedaï
Chevalier
Inscrit le: 14 Nov 2002
Messages: 89
Localisation: Le Havre, ville pourrie
Répondre en citant
Posté le : 09/03/2003 21:33:11 Sujet du message :

Aucune librairie de fonction ne compile, c'est normal, mais comme le nom l'indique, il faut que tu mettes les instructions dans une fonction puis que tu l'appelle depuis ton main() pour que cet include serve à quelque chose.
(Ah...même si il ne compile pas, tu dois quand le sauver avant de recompiler les scripts qui l'utilise pour que les modification d'un include prennent effet. Embarassed )
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Konrad
Grand Maître Chanteur du Conseil
Inscrit le: 30 Sep 2002
Messages: 1258
Localisation: Empire d'Halöven
Répondre en citant
Posté le : 10/03/2003 08:32:12 Sujet du message :

Zut j'ai supprimé ce message sans faire exprès Embarassed

Je voulais faire "Citer" et j'ai fais "étité" et je m'en suis rendu compte trop tard... décidement je suis pas réveillé aujourd'hui ! Embarassed
_________________
Le site du Module Dragon Noir
Le groupe du Module L5A - L'ombre et la Lumière
Crimson Skies
Dernière édition par Konrad le 10/03/2003 14:20:36; édité 2 fois
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
jeremie09
Voyageur
Inscrit le: 08 Mar 2003
Messages: 4
Répondre en citant
Posté le : 10/03/2003 13:03:46 Sujet du message : ça marche pas

J'ai fait ce que tu m'as dis Konrad mais ça marche pas, le script2 se compile bien mais en jeux le script1 ne marche pas puisqu'aucuns objet n'est droppé. (après une vingtaine d'essais)
Je ne sais pas comment appelé le script1 à être exécuté dans le script 2 ( void main() )
Je veux absolument que le script de droppage d'objet (script1) soit externe au script de respawn (script2) en faisant un include dans le script2 pour utiliser lemême script1 pour plusieur créature !
Merci pour votre aide !
Jérémie Crying or Very sad
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Konrad
Grand Maître Chanteur du Conseil
Inscrit le: 30 Sep 2002
Messages: 1258
Localisation: Empire d'Halöven
Répondre en citant
Posté le : 10/03/2003 14:21:46 Sujet du message :

EDIT de Cassin : ajout des balises de code pour les scripts Wink
J'avais fait expret de virer les balises pour lui monter en gras ce que j'avais exactement ajouter ! Mad Embarassed
Raa ! ces modo toujours à faire du zèle ! Laughing

--------------

Bon, pour en revenir au sujet, tu n'as pas le choix, il faut que tu appels ta fonction "script1()" DANS le main() de ton script2



Code :

void main()
{
//blabla
script1()
//blalba
}


ça va comme ça cassin ?
EDIT de l'intéressé : sorry ! Embarassed


Si tu veux pas la mettre dans le respawn, il faut que tu le mette ailleur. Dans le Ondeath par exemple.
_________________
Le site du Module Dragon Noir
Le groupe du Module L5A - L'ombre et la Lumière
Crimson Skies
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur 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 19.733ms