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 21:25:21
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 |
Panda Fou Grand Chevalier Messages: 101 Localisation: Qui me parle ? |
Voilà, j'ai voulu créer un cutscene, mais je crois que je me suis sur-estimé... Voilà la bête ('fin pour moi en tout cas !):
NWScript :
void main() { object oPC=GetEnteringObject(); object oFlagelleur1 = GetObjectByTag("flagelleur1"); object oFlagelleur2=GetObjectByTag("flagelleur2"); object oLocation1=GetWaypointByTag("location1"); object oLocation2=GetWaypointByTag("location2"); object oArrive1=GetWaypointByTag("appear1"); object oArrive2=GetWaypointByTag("appear2"); object oArrive3=GetWaypointByTag("appear3"); object oArrive4=GetWaypointByTag("appear4"); if(GetIsPC(oPC)) { SetCutsceneMode(oPC, TRUE); AssignCommand(oPC, ActionMoveToObject(oLocation1,FALSE)); DelayCommand( 3.0, AssignCommand(oPC, ActionSpeakString(""))); DelayCommand( 3.5, AssignCommand(oPC, ActionMoveToObject(oLocation2,TRUE))); DelayCommand( 4.0, AssignCommand(oPC, ActionSpeakString("Le bruit se fait de plus en plus fort."))); DelayCommand(4.5, ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_FNF_ELECTRIC_EXPLOSION),oArrive1)); DelayCommand(4.5, CreateObject (OBJECT_TYPE_CREATURE, oFlagelleur1,oArrive1, TRUE)); DelayCommand(5.0, ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_FNF_ELECTRIC_EXPLOSION),oArrive2)); DelayCommand(5.0, CreateObject (OBJECT_TYPE_CREATURE, oFlagelleur2,oArrive2, TRUE)); DelayCommand(5.5, ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_FNF_ELECTRIC_EXPLOSION), oArrive3)); DelayCommand(5.5, CreateObject (OBJECT_TYPE_CREATURE, oFlagelleur2,oArrive3, TRUE)); DelayCommand(6.0, ApplyEffectToObject(DURATION_TYPE_INSTANT,EffectVisualEffect(VFX_FNF_ELECTRIC_EXPLOSION), oArrive4)); DelayCommand(6.0, CreateObject (OBJECT_TYPE_CREATURE, oFlagelleur2,oArrive4, TRUE)); DelayCommand( 6.5,SetCutsceneMode(oPC, FALSE)); } } En fait, le PJ doit avancer jusqu'au différent Waypoint en ayant le speakString, jusque là, ça marche, c'est après que ça se gâte... Pour la création des illithids, Ca bug ! J'comprends pas. _________________ Suis-je fou ? -Panda Fou- |
Revenir en haut | |
Longbow Grand Sage du Conseil Messages: 638 Localisation: Orléans |
Hum, hum...
CreateObject n'est pas une action pour arriver "retarder" la création des suceurs de cerveaux... perso, j'utilise ExecuteScript Exemple... Au lieu de NWScript :
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. Je te propose NWScript :
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. et donc il faut écrire un autre script (juste pour créer la créature) NWScript :
void main() { location lLoc = GetLocation (GetWaypointByTag("appear1")); CreateObject (OBJECT_TYPE_CREATURE, "resref de la creature",lLoc, TRUE); } Je sais c'est lourd mais c'est une solution qui fonctionne... Bon courage.. _________________ Rex illeteratus Quasi Asinus Coronatus Jean de Salisbury |
Revenir en haut | |
Panda Fou Grand Chevalier Messages: 101 Localisation: Qui me parle ? |
Longbow a écrit : Je te propose
Je comprends pas bien pourquoi tu as mis un oPC après le string du script... C'est censé représenté la cible du script non ? Il faut pas mettre le WP d'arrivée plutôt... NWScript :
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. et donc il faut écrire un autre script (juste pour créer la créature) NWScript : void main() { location lLoc = GetLocation (GetWaypointByTag("appear1")); CreateObject (OBJECT_TYPE_CREATURE, "resref de la creature",lLoc, TRUE); } _________________ Suis-je fou ? -Panda Fou- |
Revenir en haut | |
Longbow Grand Sage du Conseil Messages: 638 Localisation: Orléans |
Hum, hum...
oPC est l'objet qui lance le script... Or un WP ne peut pas lancer le script à mon sens (tu peux essayer mais...) _________________ Rex illeteratus Quasi Asinus Coronatus Jean de Salisbury |
Revenir en haut | |
julia Novice Messages: 6 |
bonjour,
En effet les DelayCommand ne marchent pas avec CreateObject il y a une autre solution(pas necessairement meilleur) plutot que d appeller un script avec ExecuteScript. NWScript :
//declaration des prototypes des fonctions de ma lib cut scene [...] void CallCreateObject(int iType,string sBlueRef,string sTagLoc,string sTagPNJ); void CutCreateObject(float fDelay,int iType,string sBlueRef,string sTagLoc,string sTagPNJ); [...] //fonctions de la lib pour les cut scenes [etc...] void CallCreateObject(int iType,string sBlueRef,string sTagLoc,string sTagPNJ){ location lLoc = GetLocation(GetObjectByTag( sTagLoc )); CreateObject(iType,sBlueRef,lLoc,FALSE,sTagPNJ); } void CutCreateObject(float fDelay,int iType,string sBlueRef,string sTagLoc,string sTagPNJ){ DelayCommand(fDelay,CallCreateObject(iType,sBlueRef,sTagLoc,sTagPNJ)); } [etc...] Cependant j adhère de plus en plus a ce qu a dis lendrate au sujet des DelayCommand...et,preferer la queue d action semble assez judicieux! ps: je me suis attardée a faire une petite lib vraiment tres simple pour les cut scenes,elle ressemble a ce qu on trouve dans les fichiers x1/x2 inc cut scene de chez bioware mais sans delaycommand en preferant ActionWait.Je pourrais eventuellement poster ce travail si cela interesse quelqu un.je precise en outre, qu icelui n a rien d extraordinaire,cela prends juste du temps pour ecrire les fonctions qui sont en quelque sorte plus des "macros" qu autre chose. voila. J. Dernière édition par julia le 19/04/2004 14:15:57; édité 3 fois
|
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