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 18:51:13
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 |
Tuyen Demi-dieu Messages: 460 Localisation: Chez moi |
Suite à la demande de quelqu'un je poste mon script pour faire porter au PJ une "peau" de créature, sur laquelle on pourra attribuer des propriétés qui seront considérées comme permanentes. (le joueur ne voit pas cette peau, donc il peut pas l'enlever, donc les propriétés resteront! )
Ce script a été fortement inspiré par d'autres postés sur ce forum! A mettre sur le OnEnter d'un trigger. Si vous voulez que le PJ porte la peau dès son entrée dans le mod, mettez le point de départ du mod sur le trigger. Il nettoie l'inventaire du PJ qui entre dans le trigger, et l'équipe d'une 'peau' que vous devrez créer avec le resref que vous lui aurez donné dans ce script. Vous pouvez mettre diverses propriétés sur la peau, etc... NWScript : void main() { object oPC = GetEnteringObject(); object oItem = GetFirstItemInInventory( oPC ); while( oItem != OBJECT_INVALID ) { DestroyObject( oItem ); oItem = GetNextItemInInventory( oPC ); } DestroyObject(GetItemInSlot(INVENTORY_SLOT_ARMS, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_ARROWS, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_BELT, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_BOLTS, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_BOOTS, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_BULLETS, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_CARMOUR, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_CHEST, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_CLOAK, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_CWEAPON_B, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_CWEAPON_L, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_CWEAPON_R, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_HEAD, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_LEFTRING, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_NECK, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oPC)); DestroyObject(GetItemInSlot(INVENTORY_SLOT_RIGHTRING, oPC)); // equipe les nouveaux objets // vetement object oVet = CreateItemOnObject ("resresf du vetement", oPC, 1); AssignCommand(oPC, ActionEquipItem(oVet, INVENTORY_SLOT_CHEST)); // peau object oPeau = CreateItemOnObject ("resref de la peau", oPC, 1); AssignCommand(oPC, ActionEquipItem(oPeau, INVENTORY_SLOT_CARMOUR)); DestroyObject(OBJECT_SELF, 1.0); } |
Revenir en haut | |
Fantome Ecuyer Messages: 63 |
Hello,
à la place du trigger, si vous devez chargez cette peau des l'entrée sur le module, je vous conseil de le faire dans le OnEnter des propriétés du module. Est il normal que tu vires tous le matos porté par le pj ? _________________ Arcantia |
Revenir en haut | |
Tuyen Demi-dieu Messages: 460 Localisation: Chez moi |
Ba disons que j'aimes pas trop qu'il commence le jeu avec une armure, des potions, etc...
|
Revenir en haut | |
Heldar Seigneur Messages: 169 Localisation: France |
Tu serai pas comment faire la même chose quand on parle à un PNJ?
_________________ Heldar qui tue tous les monstres du soir. |
Revenir en haut | |
Panda Fou Grand Chevalier Messages: 101 Localisation: Qui me parle ? |
Je pense (suis pas sûr) qu'il faut just remplacer le:
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. Par: 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 bien sûr mettre le script dans le Action Taken du dialogue. EDIT du Fou: et enlever le: 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. _________________ Suis-je fou ? -Panda Fou- |
Revenir en haut | |
Yan the salor Seigneur Messages: 151 |
Quelle partie du script faut-il conserver pour que le pj équipe la peau en question uniquement? Et ou faut-il placer tout cela?
|
Revenir en haut | |
Brendan the Fleshless Novice Messages: 16 |
Tu crées un déclencheur générique, auquel tu places ce script dans son OnEnter :
NWScript :
void main() { object oPC = GetEnteringObject(); object oPeau = CreateItemOnObject ("resref de la peau", oPC, 1); AssignCommand(oPC, ActionEquipItem(oPeau, INVENTORY_SLOT_CARMOUR)); DestroyObject(OBJECT_SELF, 1.0); } Si c'est en parlant avec une personne, place ce script dans "actions conséquentes" à un endroit du dialogue : NWScript :
void main() { object oPC = GetPCSpeaker(); object oPeau = CreateItemOnObject ("resref de la peau", oPC, 1); if ((GetIsPC(oPC)==TRUE) && GetLocalInt(OBJECT_SELF,"peau")==0) { AssignCommand(oPC, ActionEquipItem(oPeau, INVENTORY_SLOT_CARMOUR)); SetLocalInt(OBJECT_SELF,"peau",1); } } Essayons avant toute chose, d'interprêter les scripts aussi bien détaillés que le premier de ce post. |
Revenir en haut | |
Aladar Chevalier Messages: 96 Localisation: Tours |
Premierement, bonjour a tous et merci à tous ceux qui aident les pauv' gars perdus dans aurora... comme moi.
Me suis lancé dans un projet de module multijoueur avec un ami, ca avance, lentement, mais ca avance. Pour le moment je m'en sort pas trop mal avec mes script que j'utilise mais par contre, avec tutu_transe, j'ai du mal:cry: J'ai modifié le nw_c2_default3 et ai bien configuré les resref et tag de la "peau", au lancement pas d'prob ca me donne l'armure, mais ca ne l'equipe pas:/ J'ai un petit script qui donne de l'or et de l'xp au joueur s'il se conect pour la premiere fois et c'est dans ce script que j'ai ajouté la commande qui equipe la fameuse peau... en theorie ! Voila mon code : Code : void main()
{ object oPC = GetEnteringObject(); if (GetIsPC(oPC) && !GetIsDM(oPC))// si c'est un DM il n'a pas besoin de recevoir d'argent { GiveGoldToCreature(oPC,3000); //met s'que tu veux d'po GiveXPToCreature(oPC,5001); //tu met s'que tu veux d'xp { object oPeau = CreateItemOnObject ("Peaudetranse", oPC, 1); AssignCommand(oPC, ActionEquipItem(oPeau, INVENTORY_SLOT_CARMOUR)); // destruction du trigger pour pas que le script se relance à chaque fois //DestroyObject(OBJECT_SELF, 1.0); } } } |
Revenir en haut | |
Fantome Ecuyer Messages: 63 |
Hello,
j'ai pas trop bien compris ce que tu disais par rapport au script que tu as posté : - tu dis : Citation : J'ai un petit script qui donne de l'or et de l'xp au joueur s'il se conect pour la premiere fois . A la lecture de ton script j'ai l'impression que c'est à chaque fois que la personne arrive sur cette zone que tu lui donnes les xp et l'or.
- ton script tu l'as placé dans les propriétés du module, dans le OnEnter ? - tu es certains du resref ? (je suis pas sur de moi mais il me semblait que les resref étaient en minuscule) - es tu certain que ton pj ne porte pas déjà quelque chose sur ce slot car dans ce cas ta 'peau' se retrouve dans l'inventaire et non équipée ? _________________ Arcantia |
Revenir en haut | |
Aladar Chevalier Messages: 96 Localisation: Tours |
hé hé... j'ai du faire une couennerie, ca a posté sans que je le veuille , bref je fini donc ici, ce script compile mais ne fais ce que j'aurais voulu... il met seulement la peau dans l'inventaire et je ne peu donc pas la mettre dans mon SLOT_CARMOUR puisque c'est innacessible au joueur (je crois).
Alors comme je suis un tit malin j'ai mis a la place d'une peau, une bete armure que je crée sur le SLOT_SHEST, j'ai egalement changer dans le nw_c2_default3 le fait qu'il recherche une armure (j'ai pas trouvé d'item "peau", je pense ne mettre pas trompé en traduissant "peau" par armure que l'ont place sur l'emplacement d'armure naturel du pj, si ? ) dans le _CARMOUR du pj pour qu'il cherche une armure dans son emplacement normal, accesible au joueur, comme ca on peu changer d'armu... bref, meme comme ca, ca marche pas:( Et c'est la que je compte sur vous, pour m'aider un pocito pour ca... moi qui suis fan de ff, je reve depuis un moment de voir des limite dans nwn. Si quelqu'un pouvais me dire ou se trouve l'erreur (eventuelement la reparer:D) et m'expliquer vite fais la faute, ca serais achement glop Hum... vais ptete vous poster les script... oui, les voila : NWScript :
//:///////////////////////// ///////////////////// //:: Name tutu_transe //:: FileName //:: Copyright (c) 2001 Bioware Corp. //:///////////////////////// //////////////////// /*mettez ce script sous le nom de "tutu_transe" dans votre liste de scripts du module Modifier le script NW_C2_DEFAULT3 ( c'est le script de fin de round ). Ensuite creez une arme quelconque et donnez lui le tag de trance_01, trance_02 ou trance_99. Lorsque vous utiliserez une de ces armes dans votre module, au bout d'un certain nombre de combats, votre perso va entrer en transe et devenir beaucoup plus fort. Cette periode dure un court instant et apres il perd beaucoup plus de puissance qu'avant la transe. Cette periode des effets secondaires dure 90sec (modifiable). Je me suis inspire d'un script deja poste sur NW Vault : http://nwvault.ign.com/Files /scripts/data/1040734959970.sh tml A noter que lorsque le PJ quitte un combat pendant la transe, lorsqu'il rencontrera de nouveau un ennemi il reviendra a l'etat de transe, tandis que les effets de la contretranse sont predefinis. */ //:///////////////////////// //////////////////// //:: Created By: Marvin Kosh //:: Modified By: Tuyen //:///////////////////////// //////////////////// void main() { // ***********************DEFINIT ION DES VARIABLES********************* ****** object oTranse = OBJECT_SELF; int iTemps = GetLocalInt(oTranse, "temps"); // Definir le nombre de Hit Point max et actuel du perso int iMaxHP = GetMaxHitPoints(oTranse); int iCurHP = GetCurrentHitPoints(oTranse); string sWeapon = GetTag(GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oTranse)); // Definir le type de transe int iTranceProcess = StringToInt(GetSubString(sWeapon, 7, 2)); // Definir les dialogues d'entree et de sortie de transe string sTranceStart = "*Transe!*"; string sTranceEnd = "Vous sentez les effets de la transe vous quitter."; // Definir la duree du temps de transe et de contretranse float fEffectDur = 10.0;//Ne pas changer cette valeur float fSideEffectDur = 90.0; /*Changez cette valeur si vous voulez que les effets negatifs durent plus longtemps*/ // Definir les effets de transe et de contretranse effect TranceEffect1; effect TranceEffect2; effect TranceEffect3; effect TranceEffect4; effect TranceSideEffect1; effect TranceSideEffect2; effect TranceSideEffect3; /* Definir les effets pour chaque type de transe : Chaque cas correspond a un type de transe different. Vous pouvez creer des transes qui ameliorent les capacites de combat ou plutot ceux de magie, et aussi modifier leurs puissances. Pour cela utiliser les fonctions de type 'Effect***' et ajouter cases entre case 1 et case 99 ne pas oublier de les declater en haut si vous voulez ajoutez plus de 4 effets pour un type de transe. */ switch(iTranceProcess) { case 1: TranceEffect1 = EffectAbilityIncrease(ABILITY_STRENGTH, 10); TranceEffect2 = EffectHaste(); TranceEffect3 = EffectVisualEffect(VFX_FNF_LOS_HOLY_30, FALSE); TranceEffect4 = EffectVisualEffect(VFX_DUR_PROTECTION_GOOD_MAJOR, FALSE); break; case 2: TranceEffect1 = EffectSpellResistanceIncrease(25); TranceEffect2 = EffectDamageReduction(10, DAMAGE_POWER_PLUS_TWO, 100); TranceEffect3 = EffectVisualEffect(VFX_IMP_HARM, FALSE); TranceEffect4 = EffectVisualEffect(VFX_DUR_SANCTUARY, FALSE); break; case 99: TranceEffect1 = EffectDamageIncrease(DAMAGE_BONUS_2d6, DAMAGE_TYPE_NEGATIVE); TranceEffect2 = EffectAttackIncrease(10, ATTACK_BONUS_MISC); TranceEffect3 = EffectVisualEffect(VFX_DUR_PROTECTION_EVIL_MAJOR, FALSE); TranceEffect4 = EffectVisualEffect(VFX_DUR_PROTECTION_ELEMENTS, FALSE); break; } // Definir les effets de contretranse pour chaque type de transe switch (iTranceProcess) { case 1: TranceSideEffect1 = EffectAbilityDecrease(ABILITY_STRENGTH, 14); TranceSideEffect2 = EffectSlow(); TranceSideEffect3 = EffectVisualEffect(VFX_IMP_DISPEL, FALSE); break; case 2: TranceSideEffect1 = EffectSpellResistanceDecrease(25); TranceSideEffect2 = EffectDispelMagicAll(20); TranceSideEffect3 = EffectVisualEffect(VFX_IMP_DISPEL, FALSE); break; case 99: TranceSideEffect1 = EffectVisualEffect(VFX_IMP_DEATH, FALSE); TranceSideEffect2 = EffectSkillDecrease (SKILL_ALL_SKILLS, 20); TranceSideEffect3 = EffectVisualEffect(VFX_FNF_PWKILL, FALSE); break; } //************** C'EST LA QUE LES CHOSES SERIEUSES COMMENCENT ************** //Incrementation de la variable temps d'un point iTemps = iTemps + 1; SetLocalInt(oTranse, "temps", iTemps); //Enlevez les commentaires de la ligne ci-dessous pour avoir le decompte des rounds FloatingTextStringOnCreature(IntToString(iTemps), oTranse, FALSE); //Pendant 40 rounds, il ne se passe rien //A partir du 40ieme round et jusqu'au 47ieme round, le perso entre en transe if ((iTemps == 40) && (GetIsInCombat(oTranse)==TRUE)) { FloatingTextStringOnCreature(sTranceStart, oTranse, FALSE); ApplyEffectToObject(DURATION_TYPE_TEMPORARY, TranceEffect3, oTranse, fEffectDur); } //Application de divers effets if ((iTemps >= 40) && (iTemps < 47) && (GetIsInCombat(oTranse)==TRUE)) { ApplyEffectToObject(DURATION_TYPE_TEMPORARY, TranceEffect1, oTranse, fEffectDur); ApplyEffectToObject(DURATION_TYPE_TEMPORARY, TranceEffect2, oTranse, fEffectDur); ApplyEffectToObject(DURATION_TYPE_TEMPORARY, TranceEffect4, oTranse, fEffectDur); } //Au 47ieme round, c'est la fin de la transe, le perso se trouve sous des effets de //contretranse, qui le rabaissent. Ces effets durent if (iTemps == 47) { SendMessageToPC(oTranse, sTranceEnd); ApplyEffectToObject(DURATION_TYPE_TEMPORARY, TranceSideEffect1, oTranse, fSideEffectDur); ApplyEffectToObject(DURATION_TYPE_TEMPORARY, TranceSideEffect2, oTranse, fSideEffectDur); ApplyEffectToObject(DURATION_TYPE_TEMPORARY, TranceSideEffect3, oTranse, fSideEffectDur); } //Lorsque le compteur atteint 55, le remettre a 0 if (iTemps == 55) { iTemps = 0; } SetLocalInt(oTranse, "temps", iTemps); } Alors lui je suis pas sur de l'endroit ou il faut le mettre, je pense qu'il est appellé par le nw_c2_default3 modifié et que il n'y a pas besoin de le placer ou que se soit sinon dans la liste de script. Ensuite viens : NWScript :
void main() { object oPC = GetEnteringObject(); if (GetIsPC(oPC) && !GetIsDM(oPC))// si c'est un DM il n'a pas besoin de recevoir d'argent { GiveGoldToCreature(oPC,3000); //met s'que tu veux d'po GiveXPToCreature(oPC,5001); //met s'que tu veux d'xp { object oPeau = CreateItemOnObject ("Peaudetranse", oPC, 1); AssignCommand(oPC, ActionEquipItem(oPeau, INVENTORY_SLOT_CARMOUR)); } } } Lui il est dans le OnClientEnter, il marche bien sauf qu'il ne m'equipe pas de la peau... et enfin le nw_c2_default3 modif : NWScript :
//:///////////////////////// ///////////////////// //:: Default: End of Combat Round //:: NW_C2_DEFAULT3 //:: Copyright (c) 2001 Bioware Corp. //:///////////////////////// //////////////////// /* Calls the end of combat script every round */ //:///////////////////////// //////////////////// //:: Created By: Preston Watamaniuk //:: Modified By : Marvin Kosh //:: Implemente dans ce module par : Votre serviteur Tuyen (o_o) //:: Created On: Oct 16, 2001 //:///////////////////////// //////////////////// #include "NW_I0_GENERIC" void main() { // Modifications pour la transe // Definir le dernier ennemi( soit le PC, soit un autre NPC ) object oTarget = GetLastAttacker(); // definir la "peau" sur le PC object oPeauPC =(GetItemInSlot(INVENTORY_SLOT_CARMOUR , oTarget)); // definir le tag de la peau en tant que string string sTag = GetTag(oPeauPC); // verifie si le tag commence par "transe_" // si c'est le cas lancer le script "tutu_transe" sur le dernier ennemi if (GetSubString(sTag, 0, 7) == "transe_") ExecuteScript("tutu_transe", oTarget); ////////////////////////////// ////////////////////// //////////////Fin des modifications///////////////// ////////////////////////////// ////////////////////// if(GetBehaviorState(NW_FLAG_BEHAVIOR_SPECIAL)) { DetermineSpecialBehavior(); } else if(!GetSpawnInCondition(NW_FLAG_SET_WARNINGS)) { DetermineCombatRound(); } if(GetSpawnInCondition(NW_FLAG_END_COMBAT_ROUND_EVENT)) { SignalEvent(OBJECT_SELF, EventUserDefined(1003)); } } Lui, je sais pas non plus s'il faut le mettre quelque pars en particulier... Je pense que le probleme viens de CE script, j'ai du modif un truc qui faut pas ou je sais pas trop... moi en script je sais faire assoir un pnj mais au dela de ca, je sais juste les copier coller et adapter les tags Voila, c'etais mon premier post ('fin le deuxieme mais le premier aurais du etre au debut de celui la et... hein ? on s'en fout ? ah oui pardon) pour mon premier probleme (du moin le premier que je vous expose) Voila, je suis sur que vous pouvez m'aider ,surtout que ca doit etre tout con mais bon... je doit l'etre aussi... J'espere que j'aurais une reponse ,m'offrant un solution a ce petit probleme... Merci |
Revenir en haut | |
Aladar Chevalier Messages: 96 Localisation: Tours |
Wouaw ! ok, rapide, moi qui me disais dans 1 mois j'aurais ptete une reponse...
enfaite mon tit script marche tris bien, il verifie s'il le joueur a 1 xp, si oui, on continue tranquilement, sinon ca donne de l'xp et des po. J'ai une version du meme script mais qui suprime tous les item de l'inventaire du pj et de ce qu'il porte et remplace par tel et tel item par tag. et meme avec ca ca marche pas, (ca suprime ce qu'il porte en peau mais comme il n'a rien ca change rien) ca me donne systematiquement l'armure dans mon joli inventaire (qui soit dis en passant, a aussi un probleme mais ca doit pas etre de l'ordre des script alors je le posterais plus tard:oops:) J'ai verifié les resref plusieur fois, a l'endroit a l'envers, il est NIKEL ! le tag aussi... ca fais 2 jour non-stop que je suis dessus et rien, j'ai tenter plein de possibilité et non ca marche pas en tous cas merci pour ta reponse qui est arrivée avant la suite de mon petit probleme selon moi, le probleme viens du fait que quand un combat s'engage, ca ne lance pas le script tutu_transe(j'ai enlever les commentaire pour afficher le nombre de round et rien n'aparais) [edit] tu avais raison comme quoi mon script se declenche a chaque conection, enfaite j'avais suprimer des lignes pour gagner un peu de place, dans mon mod il detecte la premiere conection et ne donne l'xp que si c'est effectivement la premiere fois que le joueur se conecte. Dernière édition par Aladar le 17/12/2004 13:43:11; édité 1 fois
|
Revenir en haut | |
Fantome Ecuyer Messages: 63 |
bon,
je viens de lire vite fait ton post sur la facon de créer l'objet 'peau'. On est bien d'accord qu'il s'agit pas d'une armure mais bien d'un objet que tu crées dans la palette à partir de 'Objet de Créature'. C'est bien ca ? Car si c'est pas le cas, le pb vient de là à mon avis: on ne peut pas placé sur les slot inaccessibles autre chose que des objets de créatures. Et donc du coup, comme il peut pas y etre mis, il se retrouve placé dans l'inventaire du joueur. autre chose, il y aurait pas une paire d'accolade en trop la dans ton script ? : NWScript :
void main() { object oPC = GetEnteringObject(); if (GetIsPC(oPC) && !GetIsDM(oPC))// si c'est un DM il n'a pas besoin de recevoir d'argent { GiveGoldToCreature(oPC,3000); //met s'que tu veux d'po GiveXPToCreature(oPC,5001); //met s'que tu veux d'xp { object oPeau = CreateItemOnObject ("Peaudetranse", oPC, 1); AssignCommand(oPC, ActionEquipItem(oPeau, INVENTORY_SLOT_CARMOUR)); } } } Pourquoi as tu encadré par une accolade les 2 lignes de code sur ta peau ? Je dois avoir la berlue ... NWScript : j'ai pas vu le test sur ton pj avec ses 1 xp ? *inquiet*enfaite mon tit script marche tris bien, il verifie s'il le joueur a 1 xp, si oui, on continue tranquilement, sinon ca donne de l'xp et des po. _________________ Arcantia |
Revenir en haut | |
Aladar Chevalier Messages: 96 Localisation: Tours |
Voila mon script qui fonctionne :
NWScript :
void main() { object oPC = GetEnteringObject(); if (GetIsPC(oPC) && !GetIsDM(oPC))// si c'est un DM il n'a pas besoin de recevoir d'argent { if (GetXP(oPC) < 1) //le joueur n'as pas de xp c'est quil est nouveau donc on lui donne 10000 Po { GiveGoldToCreature(oPC,3000); //met s'que tu veux d'po GiveXPToCreature(oPC,5001); //tu met s'que tu veux d'xp } object oPeau = CreateItemOnObject ("Peaudetranse", oPC, 1); AssignCommand(oPC, ActionEquipItem(oPeau, INVENTORY_SLOT_CARMOUR)); } } pas bete le coup de l'objet qui peu pas etre mis dans les emplacement de creature... ca viens ptete de la, je test tout de suite (et je met le resref en minuscule ) |
Revenir en haut | |
Aladar Chevalier Messages: 96 Localisation: Tours |
Alors, en effet avec un objet de creature de type peau ca marche beaucoup mieux
la peau va (je suppose) au bon endroit, plus dans l'inventaire en tous ca. Mais... ca ne lance toujours pas le script (il n'y a pas le decompte des rounds) mais ca je pense etre capable de trouver la solution, je comprenais vraiment pas pourquoi ca ne voulais pas aller sur l'emplacement de creature... normal enfaite, merci a toi maintenant je vais chercher pourquoi le script tutu_transe ne se lance pas au debut d'un combat (si t'as une idée n'hesite surtout pas!) [EDIT pour eviter de flooder et d'me faire enguirlander(c'est la saison ok mais bon)] Je me demande si en recherchant tous simplement n'importe quel objet de tag commencant par transe_ ca serais pas mieux, pas besoin que ce soit exactement dans pile l'emplacement de peau, ca pourais etre un objet divers petit dans l'inventaire avec pour tag transe_001 ou 002 etc... j'vais tenter ca |
Revenir en haut | |
Aladar Chevalier Messages: 96 Localisation: Tours |
Ca marche !!
j'ai mis une armure qui aparais a la premiere conection (ca c'est juste pour le test, je vais le travailler encore un peu) et quand on se bagarre contre une bebete et bien ca compte les rounds et au 40eme ca nous met en transe... mais tu sais tous ca. encore merci pour ton aide, sans toi je serais encore à pas comprendre le pourquoi du comment qu'ca s'fait que cette ###### de peau aparait pas dans les places de creatures... et pi une armure c'est pas mal, on peu en changer et faire plein de transe Je vais maintenant essayer de faire en sorte que ca ne declenche la transe QUE si le pj est "serieusement bléssé" ou en dessous de 15% de ses pv... tu a pu constater mon niveau herculéen en matiere de script ,donc en theorie je posterais ma requette d'ici pas longtemp, mais je vais me debrouiller tout seul si possible (au moin pendant une heure ) Merci encore ! (Si quelqu'un d'autre avais des problemes avec ce systeme, demandez je le posterais mais la j'ai la flemme ) Har har har je sent venir l'Omnislash |
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