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:06
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 |
Cocasso Ecuyer Messages: 41 |
Bonjour a tous...
en faite j'ais vu sur un module,lors du repos,il fait nuit autour du pj et un ZZzz apparait au dessus de sa tete avec un son de ronflement... et bein j aimerais faire de meme son mon module mais je ni arrive pas.. si qq'1 aurais ce script ce serais vraiment cool..^^ autre chose, vous l aurez surement compris ..je suis archi nul en script donc si script il y a,merci de me dire ou je dois le metre....^^ merci d'avance...j ais fait des recherche sur le forum mais je n'est rien trouver... |
Revenir en haut | |
Lunshire Héros Messages: 259 Localisation: Ben ... Devant mon ordi bien sûr ! |
NWScript :
////////////////////////////// ////// /// Dans le OnPlyerRest du module/// ////////////////////////////// ////// void main() { object oPC = GetNearestCreature ( CREATURE_TYPE_PLAYER_CHAR , PLAYER_CHAR_IS_PC ); BlackScreen(oPC); AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz")); AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz")); AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz")); AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz")); AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz")); AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz")); AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz")); } Je ne suis pas sûr du tout de sa réalisation, mais au moins il compile... Par contre, pour faire revenir l'écran normal, il faut utiliser la fonction FadeFromBlack, mais je ne sais pas où le mettre... et vu qu'on ne peut pas définir la durée exacte d'un repos... Voilà, c'est tout ce que je peux faire... _________________ Cogito ergo sum. |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
Merci a toi. c'est deja tres bien ..
seulement je ne sais ou le placer...est'ce que je dois metre ce script a la base du module ?.. et ou? ...et la fonction FadeFromBlack euhh j en fait quoi? Merci de vos reponse ... |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
bien j ais effectivement pacer le script dans le OnPlyerRest du module (vi j ai fini par voir que c'etait ecrit en gros..^^)
Mais helas il ne se passe rien du tout ... la nuit ne tombe pas ...ya pas de ZZzzz au dessus de sa tete...mais par contre le pj se repose normalemnt... |
Revenir en haut | |
Lunshire Héros Messages: 259 Localisation: Ben ... Devant mon ordi bien sûr ! |
Cocasso a écrit : Mais helas il ne se passe rien du tout ...
Alors là... J'capte plus rien... Ptètre avec les DelayCommand... essaye
la nuit ne tombe pas ...ya pas de ZZzzz au dessus de sa tete...mais par contre le pj se repose normalemnt... NWScript :
////////////////////////////// //////////////////////// ////////////////////////////// //////////////////////// void main() { object oPC = GetNearestCreature ( CREATURE_TYPE_PLAYER_CHAR , PLAYER_CHAR_IS_PC ); DelayCommand(0.5, BlackScreen(oPC)); DelayCommand(1.0,AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(1.5,AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(3.0,AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(2.5,AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(3.0,AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(3.5,AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(4.0,AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); } Là encore, je ne garantie rien... Mais ptètre que je fais fausse route... _________________ Cogito ergo sum. Dernière édition par Lunshire le 24/05/2004 17:50:30; édité 1 fois
|
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
il ne se passe toujour rien... j ais bien mis le scrip la ou il faut .Mais helas ...rien ne change.. en tout cas merci de ton aide.. |
Revenir en haut | |
Lunshire Héros Messages: 259 Localisation: Ben ... Devant mon ordi bien sûr ! |
Cocasso a écrit : en tout cas merci de ton aide.. J'aurais voulu que ça marche... Je suis désolé... _________________ Cogito ergo sum. |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
spa grave .. je te remerci de ton aide..^^
Bien ..*soupir* en esperant que quelqu'un passeras dans le coins et auras la solution a mon ptit Script qui me tien vraiment a coeur... je le repete,cela eviteras de tout relire..^^ voila ..j aimerais un script de repos..qui..lorsque le pj se repose,la nuit tombe autour de lui,avec les inscription ZZzzz au dessus de sa tete et un son de romflement.. Merci d'avance a tous... |
Revenir en haut | |
Lunshire Héros Messages: 259 Localisation: Ben ... Devant mon ordi bien sûr ! |
J'ai déjà un peu avancé, j'ai réussi à rendre l'écran tout noir...
NWScript :
////////////////////////////// ///////////////////////// ////////////////////////////// ///////////////////////// void main() { object oPC = GetLastPCRested(); int nRestEvent = GetLastRestEventType(); switch (nRestEvent) { case REST_EVENTTYPE_REST_CANCELLED : { }break; case REST_EVENTTYPE_REST_FINISHED : // Le repos se termine normalement { StopFade(oPC); }break; case REST_EVENTTYPE_REST_INVALID : { }break; case REST_EVENTTYPE_REST_STARTED : { DelayCommand(1.0, BlackScreen(oPC)); DelayCommand(2.0, AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(3.0, AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(4.0, AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(5.0, AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(6.0, AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(7.0, AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(8.0, AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); }break; } } Mais c'est le texte qui ne veux pas passer... En fait, il apparaît dans la barre de dialogue en bas... Alors, je pense que quand l'écran est noir, on ne peut pas voir les dialogues... Comment ça faisait exactement dans ce que tu as vu, en détail s'il te plaît. Si l'écran était vraiment noir ou si on distinguait le PJ, etc... _________________ Cogito ergo sum. |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
alors en faite ... quand tu cliquais pour te reposer,il fesait plus sombre outour de toi,(mais tu voyais toujour le pj...)et juste au dessus de sa tete il y avait un ZZZzzz,et un son de ronflement..
j'espere que c'est clair..^^ lol merci encore.. |
Revenir en haut | |
Lunshire Héros Messages: 259 Localisation: Ben ... Devant mon ordi bien sûr ! |
Cocasso a écrit : il fesait plus sombre outour de toi,(mais tu voyais toujour le pj...) Mais c'était tout la zone ou juste autour du PJ ?
Parce que je vois bien EffectDarkness, mais la zone noire est limité à pas loin autour... Je sais pas si ça te conviendra. _________________ Cogito ergo sum. |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
je vien de tester le Script que tu m'as fait..(franchement chapeau..),mais en faite j ais du mal m exprimer il fait carement trop noir ...
non peut etre juste un tenebre a la place du noir ..ou un truc dans le genre... et le son de ronflement.. Mais bien deja..^^ |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
ralalaaa c'est du chinois pour moi tout ça...
|
Revenir en haut | |
Lunshire Héros Messages: 259 Localisation: Ben ... Devant mon ordi bien sûr ! |
Je sais que c'est trop noir, la preuve, on ne voit même pas les Zzzzzzzzzzzzzz. Alors, regarde ça, mais je doute que ça t'ailles...
NWScript :
void main() { object oPC = GetLastPCRested(); int nRestEvent = GetLastRestEventType(); switch (nRestEvent) { case REST_EVENTTYPE_REST_CANCELLED : { }break; case REST_EVENTTYPE_REST_FINISHED : // Le repos se termine normalement { StopFade(oPC); }break; case REST_EVENTTYPE_REST_INVALID : { }break; case REST_EVENTTYPE_REST_STARTED : { DelayCommand(1.0, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectVisualEffect(VFX_DUR_DARKNESS),oPC, 9.0)); DelayCommand(2.0, AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(3.0, AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(4.0, AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(5.0, AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(6.0, AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(7.0, AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); DelayCommand(8.0, AssignCommand(oPC, ActionSpeakString("Zzzzzzzzzzzzzzzzzzzzzzzz"))); }break; } } Mais comme je t'ai dit, la zone noire est très très très limitée ! _________________ Cogito ergo sum. |
Revenir en haut | |
Lunshire Héros Messages: 259 Localisation: Ben ... Devant mon ordi bien sûr ! |
C'est bon, j'ai trouvé !
Ca fait ça... NWScript :
void main() { object oPC = GetLastPCRested(); int nRestEvent = GetLastRestEventType(); switch (nRestEvent) { case REST_EVENTTYPE_REST_CANCELLED : { }break; case REST_EVENTTYPE_REST_FINISHED : // Le repos se termine normalement { }break; case REST_EVENTTYPE_REST_INVALID : { }break; case REST_EVENTTYPE_REST_STARTED : { DelayCommand(1.0, ApplyEffectToObject(DURATION_TYPE_TEMPORARY, EffectVisualEffect(VFX_DUR_DARKNESS),oPC, 15.0)); DelayCommand(2.0, FloatingTextStringOnCreature("Zzzzzzzzzzzzzzzzzzzzzzzz", oPC)); DelayCommand(4.0, FloatingTextStringOnCreature("Zzzzzzzzzzzzzzzzzzzzzzzz", oPC)); DelayCommand(6.0, FloatingTextStringOnCreature("Zzzzzzzzzzzzzzzzzzzzzzzz", oPC)); DelayCommand(8.0, FloatingTextStringOnCreature("Zzzzzzzzzzzzzzzzzzzzzzzz", oPC)); DelayCommand(10.0, FloatingTextStringOnCreature("Zzzzzzzzzzzzzzzzzzzzzzzz", oPC)); DelayCommand(12.0, FloatingTextStringOnCreature("Zzzzzzzzzzzzzzzzzzzzzzzz", oPC)); DelayCommand(14.0, FloatingTextStringOnCreature("Zzzzzzzzzzzzzzzzzzzzzzzz", oPC)); }break; } } J'espère que ça te convient... _________________ Cogito ergo sum. |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
excellent...!! trop fort..
merci merci et merci encore de ton aide..^^ j aurais surement d'autre ptite chose a demander...mais bon |
Revenir en haut | |
Lunshire Héros Messages: 259 Localisation: Ben ... Devant mon ordi bien sûr ! |
Par contre, je ne sais pas comment faire le bruit du ronflement... Je n'ai pas trouvé la constante. Peut-être que quelqu'un saura...
Deriens. Du moment que je peux rendre service. _________________ Cogito ergo sum. |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
je me suis apercu d'un leger detail...
j ais l impression qu1 haut lvl m'etait le double de temps pour se reposer.. et donc bein l effet se termine bien avant le repos... alors que pour un lvl 1 le timing est impeccable.. Mais si c'est impossible de regler le timing pour un lvl 40...ce n'est rien car se que tu m'as fait me plait deja vraiment beaucoup..^^ |
Revenir en haut | |
kiky.le.magnifique Homme très gay Messages: 907 Localisation: Camping de la nation martienne... |
Essayez ceci peut être
NWScript : // Script : application de l'effet // // blindness quand tu dors. // // Emplacement : OnPlayerRest // void main() { int nDodo = GetLastRestEventType(); object oPC = GetLastPCRested(); effect eNoir = EffectBlindness(); effect eZzz = EffectVisualEffect(VFX_IMP_SLEEP); if(nDodo == REST_EVENTTYPE_REST_STARTED) { ApplyEffectToObject(DURATION_TYPE_PERMANENT, eNoir, oPC); ApplyEffectToObject(DURATION_TYPE_PERMANENT, eZzz, oPC); } effect eEff = GetFirstEffect(oPC); if((GetLastRestEventType() == REST_EVENTTYPE_REST_FINISHED) ||(GetLastRestEventType() == REST_EVENTTYPE_REST_CANCELLED)) while (GetIsEffectValid(eEff)) { if ((GetEffectType(eEff)==EFFECT_TYPE_BLINDNESS) ||(GetEffectType(eEff)==EFFECT_TYPE_SLEEP)) { RemoveEffect(oPC, eEff); } eEff=GetNextEffect(oPC); } } _________________ http://perso.wanadoo.fr/kikitor | Deviant Art | www.VistaEntraide.com | CCLLSELFV! | D-lire_K | Viendez rêver au Pays des fées... | Ne taquinez pas l'admin! |
Revenir en haut | |
Yoyo Seigneur Messages: 223 |
Cocasso a écrit : en faite j'ais vu sur un module,lors du repos,il fait nuit autour du pj et un ZZzz apparait au dessus de sa tete avec un son de ronflement... alors voila le script que j'ai trouvé en cherchant dans HOTU: NWScript : //::////////////////////////// ///////////////////// //:: Name: x2_onrest //:: Copyright (c) 2001 Bioware Corp. //::////////////////////////// //////////////////// /* The generic wandering monster system */ //::////////////////////////// //////////////////// //:: Created By: Georg Zoeller //:: Created On: June 9/03 //::////////////////////////// //////////////////// #include "x0_i0_henchman" #include "x2_inc_restsys" #include "x2_inc_banter" // * returns true if its time to say another romance line int GetPlotProgress(); void main() { object oPC = GetLastPCRested(); /* Georg, August 11, 2003 Added this code to allow the designer to specify a variable on the module Instead of using a OnAreaEnter script. Nice new toolset feature! Basically, the first time a player rests, the area is scanned for the encounter table string and will set it up. */ object oArea = GetArea (oPC); // Do not allow to rest during the seige if(GetLocalInt(GetModule(), "X2_StartSeerSiegeSpeech") == 2) { FloatingTextStrRefOnCreature(84142 ,oPC); AssignCommand(oPC, ClearAllActions()); return; } string sTable = GetLocalString(oArea,"X2_WM_ENCOUNTERTABLE") ; if (sTable != "" ) { int nDoors = GetLocalInt(oArea,"X2_WM_AREA_USEDOORS"); int nDC = GetLocalInt(oArea,"X2_WM_AREA_LISTENCHECK"); WMSetAreaTable(oArea,sTable,nDoors,nDC); //remove string to indicate we are set up DeleteLocalString(oArea,"X2_WM_ENCOUNTERTABLE"); } /* Brent, July 2 2003 - If you rest and are a low level character at the beginning of the module. You will trigger the first dream cutscene */ if (GetLocalInt(GetModule(), "X2_G_LOWLEVELSTART") == 10) { AssignCommand(oPC, ClearAllActions()); if (GetHitDice(oPC) >= 12) { ExecuteScript("bk_sleep", oPC); return; } else { FloatingTextStrRefOnCreature(84141 , oPC); return; } } if (GetLastRestEventType()==REST_EVENTTYPE_REST_STARTED) { if (!WMStartPlayerRest(oPC)) { // The resting system has objections against resting here and now // Probably because there is an ambush already in progress FloatingTextStrRefOnCreature(84142 ,oPC); AssignCommand(oPC,ClearAllActions()); } if (WMCheckForWanderingMonster(oPC)) { //This script MUST be run or the player won't be able to rest again ... ExecuteScript("x2_restsys_ambus",oPC); } } else if (GetLastRestEventType()==REST_EVENTTYPE_REST_CANCELLED) { // No longer used but left in for the community // WMFinishPlayerRest(oPC,TRUE); // removes sleep effect, etc } else if (GetLastRestEventType()==REST_EVENTTYPE_REST_FINISHED) { // No longer used but left in for the community // WMFinishPlayerRest(oPC); // removes sleep effect, etc // * Brent October 15 // * In Chapter 2, your henchmen will progress the romance dialog if (GetPlotProgress() == TRUE && GetTag(GetModule()) == "x0_module2") { AttemptRomanceDialog(oPC, 3); // * can only go up to 4th stage this way } } } _________________ BOUH! (je vous ai fait peur ??) désolé Vive moi Pas vive Securom |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
je vait le tester..Merci a tous...!
en parlant de HOTU...*rougi* je ne joue que sur le net et ce depuis le premier.. merci a tous de votre aide.. |
Revenir en haut | |
Cocasso Ecuyer Messages: 41 |
bien .. franchement vous etes superb efficasse...!!
alors.. Yoyo= ton script est pas mal mais .. des qu il y a l ecrant noir des que tu touche a la sourit...hop le repos revien comme a la normal.. Linshire=ton script me convenait parfaitement et franchement il me convenait tres bien juste un tout petit defaut ..l effet restait pas jusqu'au bout d'un lvl 40... mais bon..^^ Kiky le magnifique= bein que dire de plus que c'est exactement le script que j ais du rencontrer sur le module ...et a comparer Lunshire,tu etait vraiment pas loin..^^ Merci a tous de votre aide, trop fort..^^ |
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