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 16:17:52
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 |
BenGorre Légende vivante Messages: 301 |
Voila jai fait ce script je lai placé dans longlet actions consequentes dune branche de dialogue pour que l'alchimiste(oAlch) aille vers son enclume et tape dessus avec une arme et que au bout de 5 secondes il arrete il a fait le talisman et va le dire au Pj.
et la apres la branche il refait direct le dialogue(meme pas celui quil faut) avec le pj. jai remarqué que pendant ce temp l'effet IceSkin sur lenclume se fait bien pendant les 5 secondes mais l'alchimiste lui saute toutes les actions quil a a faire.sauf la derniere. NWScript : #include "nw_i0_generic" void main() { object oAlch=GetObjectByTag("Arto"); object oEnclume=GetObjectByTag("enclumeglace"); object oPC=GetLastSpeaker(); //aller forger le talisman AssignCommand(oAlch,ActionEquipMostDamagingMelee()); AssignCommand(oAlch,ActionMoveToObject(oEnclume,FALSE,1.0)); AssignCommand(oAlch,ActionAttack(oEnclume,TRUE)); DelayCommand(5.0,AssignCommand(oAlch,ActionAttack(oEnclume,TRUE))); ApplyEffectToObject(DURATION_TYPE_TEMPORARY,EffectVisualEffect(VFX_DUR_ICESKIN),oEnclume,5.0); AssignCommand(oAlch,ActionWait(5.0)); AssignCommand(oAlch,ClearAllActions()); CreateItemOnObject("talismandeglacebleu",oAlch,1); AssignCommand(oAlch,ActionMoveToObject(oPC,FALSE,1.0)); AssignCommand(oAlch,ActionStartConversation(oPC)); } _________________ La mort n'est rien seul le fait de mourir est terrible Henry Fielding 1745 Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2. |
Revenir en haut | |
Longbow Grand Sage du Conseil Messages: 638 Localisation: Orléans |
Hum, hum...
Pourquoi ne pas utiliser ActionPauseConversation(); au début de ton script Puis ActionResumeConversation(); D'autre part, si tes différentes actions coincent, essaye des DelayCommand ??? _________________ Rex illeteratus Quasi Asinus Coronatus Jean de Salisbury |
Revenir en haut | |
BenGorre Légende vivante Messages: 301 |
Jai mis un delaycommand.
mais pour la pause je vais voir oui. Sinon j'arrive pas a faire un script ou dans une zone les PJ se prennent des degats toutes les 6 secondes en fait mon probleme cest de definir le pj dans la zone. _________________ La mort n'est rien seul le fait de mourir est terrible Henry Fielding 1745 Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2. |
Revenir en haut | |
Archéops Ecuyer Messages: 55 |
Salut, pour ton histoire de dégats à un PJ, il faut faire une boucle et utiliser la fonction GetIsPC(), tu mets le tout dans le OnHeartBeat, y a pas de raison que ça marche pas ...
|
Revenir en haut | |
BenGorre Légende vivante Messages: 301 |
eh bah si ca marche pas.
parce que il faut definir un joueur dans la zone et GetIsPc prend un joueur dans le module. sinon jai essayer pour lautre script avec ActionPauseConversation bah ca fait pareille. _________________ La mort n'est rien seul le fait de mourir est terrible Henry Fielding 1745 Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2. |
Revenir en haut | |
Klemmth Seigneur Messages: 176 Localisation: france |
Pour le script pour faire des dégats, pourquoi t'utilises pas GetEnteringObject, puis ensuite une boucle avec GetIsPC en condition.
Je pense que ça peut marcher |
Revenir en haut | |
Archéops Ecuyer Messages: 55 |
Pas besoin de script dans OnEnteringObject, une boucle suffit.. Regarde :
NWScript :
void main() { object oPC=GetFirstObjectInArea();/// prend Premier objet dans la zone while (GetIsObjectValid(oPC))/// Si cet objet existe alors ... { if (GetIsPC(oPC))/// Si c'est un joueur On applique les degats .. sinon rien... { effect eDamage=EffectDamage(6,DAMAGE_TYPE_MAGICAL,DAMAGE_POWER_NORMAL); ApplyEffectToObject(DURATION_TYPE_INSTANT,eDamage,oPC,0.0); } oPC=GetNextObjectInArea();// on passe a l'objet suivant... } } Il suffit de mettre ce script dans le OnHeartBeat de la zone.. |
Revenir en haut | |
Klemmth Seigneur Messages: 176 Localisation: france |
Pour ce qui est de ton problème avec l'enclume, j'ai fait un script un peu similaire mais pour une serveuse, le voila, j'espere que ca t'aidera.
Je l'ai placé durant la conversation dans action conséquente. NWScript :
void main() { object oListe = GetObjectByTag( "Feuilledenotes" ); object oPlayer = GetPCSpeaker(); object oServeuse = GetItemPossessor( oListe ); object oAubergiste = GetObjectByTag( "Aubergiste" ); AssignCommand( oServeuse, ActionPauseConversation() ); AssignCommand( oServeuse, ActionMoveToObject( oAubergiste, FALSE ) ); AssignCommand( oServeuse, ActionWait( 2.0 ) ); AssignCommand( oServeuse, ActionMoveToObject( oPlayer, FALSE ) ); AssignCommand( oServeuse, ActionResumeConversation() ); } Je sais que ce script marche, donc ca peut peut-être t'aider. |
Revenir en haut | |
Joubinator Ecuyer Messages: 42 Localisation: Yvelines |
Si je peux ton probleme est toujours pas résolu Bengorre, je te conseillerai d'utiliser à la place 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. la commande NWScript : .
ActionForceToMoveToObject Cette derniere a un petit truc en plus (je sais plus le nom en anglais:shock:) qui oblige le pnj à atteindre son objet quelque soit les autres evenements... En esperant participer à ecarter le brouillard du script _________________ M'enfous si les pjs tuent mes monstres,.... j'en ai plein (paroles d'un DM d'expérience ) |
Revenir en haut | |
BenGorre Légende vivante Messages: 301 |
Alors la je suis étonné que autant de gens soit venu a mon aide, en peu de temp en plus.
Merci beaucoup a tous. Pour l'enclume je vais tester et je vous tiens au courant. quand au script pour faire des degats dans une zone c'est presque exactement le même que javai fait. mais le probleme c'est que si il ne trouve pas de PC le script continu sa boucle et au bout de 50 fois je crois il marque qu'il ya erreurs trop de je sai plus koi. en fin ce que je veu dire cest quil faudrais limiter le nombre de boucle ou detecer avant le nombre d'objet de la zone avec les joueurs a l'interieur. mais je sai pas comment on limite d le nombre de tour dans la boucle. avec ca je limiterai l'entrer a un certain nombre de PC. _________________ La mort n'est rien seul le fait de mourir est terrible Henry Fielding 1745 Le serveur Filandre a été stoppé pour le moment, je on travail à la conversion vers NWN2. |
Revenir en haut | |
BenGorre Légende vivante Messages: 301 |
|
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