La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 18/05/2024 22:37:43


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Le Blaireau
Chevalier
Inscrit le: 17 Jan 2005
Messages: 71
Répondre en citant
Posté le : 31/08/2005 08:11:59 Sujet du message : Retirer un objet multiple

Salut à tous...
J'ai un petit problème avec l'action conséquente dans un de mes dialogues... Mon PNJ doit prendre un objet dans l'inventaire du joueur (pierre de rappel). Jusque là, ça va.... Mon problème c'est que si le joueur a plusieurs pierre de rappel.. Il n'en perd qu'une... Je voudrais que le PNJ les retire toutes.... Est-ce possible?
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Raudgers
Ecuyer
Inscrit le: 08 Aoû 2005
Messages: 46
Localisation: En furtif à coter de toi...
Répondre en citant
Posté le : 31/08/2005 08:35:01 Sujet du message :

Oui, c'est possible, remplace ton scrypt par celuici :

NWScript :
void main()
{
object oPC = GetPCSpeaker();
object oItem = GetFirstItemInInventory(oPC);
int iNum = 0;

while (GetIsObjectValid(oItem))
      {
      string sItem = GetTag(oItem);
      if (sItem == "LE TAG DE TON ITEM" && iNum < 500)
          {
          DestroyObject(oItem);
          iNum ++;
          }
      oItem = GetNextItemInInventory(oPC);
      }
}
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.


Tu remplace LE TAG DE TON ITEM par le tag de ta piere de rapel comme tu t'en dout Smile
Ce script en prend jusqu'a 500 si il en as plus ca n' en prendra que 500, mais bon je ne pense pas que ce cas la ce produira.
_________________
I need your help.Give light to me please.
J'ai besoin de votre aide. Donnez-moi la lumière s'il vous plaît.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
Le Blaireau
Chevalier
Inscrit le: 17 Jan 2005
Messages: 71
Répondre en citant
Posté le : 31/08/2005 16:06:34 Sujet du message :

Salut...
Merci ton script marche impec..
Le seul problème que j'ai maintenant, c'est que j'ai oublié de dire que... y a 3 pierres de rappel différentes à retirer... J'ai essayé de modifier ton script moi-même, mais ça n'a pas fonctionné... tu peux m'aider s.v.p ?
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Ailesnoires
Grand Chevalier
Inscrit le: 21 Oct 2004
Messages: 110
Localisation: Vendée
Répondre en citant
Posté le : 31/08/2005 16:51:36 Sujet du message :

voilà
NWScript :
void main()
{
object oPC = GetPCSpeaker();
object oItem = GetFirstItemInInventory(oPC);
int iNum = 0;

while (GetIsObjectValid(oItem))
      {
      string sItem = GetTag(oItem);
      if (sItem == "LE TAG DE TON ITEM"
          ||
          sItem == "LE TAG DE TON DEUXIEME ITEM"
          ||
          sItem == "LE TAG DE TON TROISIEME ITEM")
          {
          DestroyObject(oItem);
          iNum ++;
          }
      oItem = GetNextItemInInventory(oPC);
      }
}
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 crois que ça devrait aller
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Raudgers
Ecuyer
Inscrit le: 08 Aoû 2005
Messages: 46
Localisation: En furtif à coter de toi...
Répondre en citant
Posté le : 31/08/2005 20:20:10 Sujet du message :

Ailesnoires a réagit avant moi, je n'ai pas tester sont scryit mais en le regardant, il ne devrait y avoir aucun probleme avec.
_________________
I need your help.Give light to me please.
J'ai besoin de votre aide. Donnez-moi la lumière s'il vous plaît.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
trenim
Ecuyer
Inscrit le: 24 Aoû 2005
Messages: 64
Localisation: DANS TON C** !!!!
Répondre en citant
Posté le : 31/08/2005 21:54:58 Sujet du message :

Et pour, en plus, recompenser le perso en or XP ou autre, il faut rajouter quoi ?
_________________
ON EST DES MARINES !!
ON EST NAIT POUR TUER !!

C'EST QUOI NOTRE METIER ?
TUER TUER TUER !!!
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Elandil2
Chevalier
Inscrit le: 14 Fév 2005
Messages: 97
Localisation: sur mon ordi loir-et-cher
Répondre en citant
Posté le : 31/08/2005 22:16:39 Sujet du message :

NWScript :
void main()
{
object oPC = GetPCSpeaker();
object oItem = GetFirstItemInInventory(oPC);
int iNum = 0;
int iOR = 100;//remplace 100 par le nombre de po que tu veux donner
int iXP = 100;//remplace 100 par le nombre d'xp que tu veux donner


while (GetIsObjectValid(oItem))
{
string sItem = GetTag(oItem);
if (sItem == "LE TAG DE TON ITEM"
||
sItem == "LE TAG DE TON DEUXIEME ITEM"
||
sItem == "LE TAG DE TON TROISIEME ITEM")
{
DestroyObject(oItem);
iNum ++;
}
oItem = GetNextItemInInventory(oPC);
}
GiveGoldToCreature(oPC,iOR);
GiveXPToCreature(oPC,iXP);
}
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.


Voila !
_________________
Rejoignez nous sur notre forum
Aelor, module en construction
Vive Gimli

 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
trenim
Ecuyer
Inscrit le: 24 Aoû 2005
Messages: 64
Localisation: DANS TON C** !!!!
Répondre en citant
Posté le : 31/08/2005 22:21:09 Sujet du message :

Merci, Ô toiQuiSais Smile
_________________
ON EST DES MARINES !!
ON EST NAIT POUR TUER !!

C'EST QUOI NOTRE METIER ?
TUER TUER TUER !!!
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Léviathan
Grand Sage du Conseil
Inscrit le: 11 Mar 2003
Messages: 671
Localisation: Sigil
Répondre en citant
Posté le : 01/09/2005 07:11:13 Sujet du message :

Hum... Là le iNum ne sert plus à rien.

NWScript :
void main()
{
object oPC = GetPCSpeaker();
object oItem = GetFirstItemInInventory(oPC);
int iNum = 0;
int iOR = 100;//remplace 100 par le nombre de po que tu veux donner
int iXP = 100;//remplace 100 par le nombre d'xp que tu veux donner


while (GetIsObjectValid(oItem))
{
string sItem = GetTag(oItem);
if ((sItem == "LE TAG DE TON ITEM"
||
sItem == "LE TAG DE TON DEUXIEME ITEM"
||
sItem == "LE TAG DE TON TROISIEME ITEM")
&&
iNum < 500)
{
DestroyObject(oItem);
iNum ++;
}
oItem = GetNextItemInInventory(oPC);
}
GiveGoldToCreature(oPC,iOR);
GiveXPToCreature(oPC,iXP);
}
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.


Very Happy
_________________
Forum Planescape NWN
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur MSN Messenger Ignorer l'utilisateur
 
Ivellios
Légende vivante
Inscrit le: 25 Jan 2005
Messages: 447
Localisation: Poitiers
Répondre en citant
Posté le : 01/09/2005 07:27:10 Sujet du message :

Autant le virer totalement je trouve qu'il ne sert strictement à rien (chacun son optique).
_________________
Scripts, systèmes, fonctions,... c'est par ici...
Pyjama pour castor, une vocation, un avenir sûr
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur MSN Messenger Ignorer l'utilisateur
 
Léviathan
Grand Sage du Conseil
Inscrit le: 11 Mar 2003
Messages: 671
Localisation: Sigil
Répondre en citant
Posté le : 01/09/2005 10:05:13 Sujet du message :

Bah, c'est une sécurité.
N'importe quel informaticien te dira qu'il faut toujours laisser une condition de sorti à une boucle While, mais bon, là c'est vrai que ça ne se justifie pas trop.

Où si on le vire, ça ne sert à rien non plus de déclarer et d'initialiser iNum, dans ce compte là (int iNum = 0Wink, comme ça ne sert à rien d'incrémenter un compteur (iNum ++Wink.

Bref, dons mon optique, soit on laisse tout, soit on vire tou, mais on laisse pas des variables non utilisés dans un script. Razz
_________________
Forum Planescape NWN
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur MSN Messenger Ignorer l'utilisateur
 
Ivellios
Légende vivante
Inscrit le: 25 Jan 2005
Messages: 447
Localisation: Poitiers
Répondre en citant
Posté le : 01/09/2005 10:25:52 Sujet du message :

C'est ce que je disais, autant virer TOTALEMENT Razz
_________________
Scripts, systèmes, fonctions,... c'est par ici...
Pyjama pour castor, une vocation, un avenir sûr
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur MSN Messenger Ignorer l'utilisateur
 
Léviathan
Grand Sage du Conseil
Inscrit le: 11 Mar 2003
Messages: 671
Localisation: Sigil
Répondre en citant
Posté le : 01/09/2005 11:57:05 Sujet du message :

Bah, c'est pas ça qui va faire ralentir la bête... C'est juste une sécurité. Smile
_________________
Forum Planescape NWN
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur MSN Messenger 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 41.172ms