La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 23/11/2024 18:08:46


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Cocasso
Ecuyer
Inscrit le: 24 Mai 2004
Messages: 41
Répondre en citant
Posté le : 25/05/2004 19:03:23 Sujet du message : Peut il tout prendre?

BOnjour a tous ...
voila mon ptit soucis .*j'explique la situation*
en fait les pj doivent rammener des peau de rat a un pnj qui celui ci remet une recompense au pj...(jusqu'ici tout vas bien)
seulement j aimerais qu'il prenne toute les peu de rat qui se trouve dans l inventaire d un coup...et non pas faire la manipe pour chaque peau..(car si le PJ en possede 50,ça risque de le saouler tres vite)
voici le script en question..


//:Confused//////////////////////////////////////////////
//:: FileName sc_002
//:Confused/////////////////////////////////////////////
//:Confused/////////////////////////////////////////////
//:: Created By: Script Wizard
//:: Created On: 10/04/04 18:53:55
//:Confused/////////////////////////////////////////////
#include "nw_i0_tool"

int StartingConditional()
{

// Vérifier que le PJ qui parle possède ces objets dans son inventaire
if(!HasItem(GetPCSpeaker(), "peauderat"))
return FALSE;

return TRUE;
}


Merci de votre aide.. Very Happy
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
kiky.le.magnifique
Homme très gay
Inscrit le: 19 Sep 2003
Messages: 907
Localisation: Camping de la nation martienne...
Répondre en citant
Posté le : 25/05/2004 19:40:49 Sujet du message :

Alors ce script là, c un script qui vérifie si tu as une peau de rat.
Ce n'est pas le script qui les prends, t'as du te gourer quelque part ^^

Et enfin, le prochain script que tu met, tu le sélectionnes,
et tu cliques sur l'oeil en haut qui ressemble à ça :

il sera bien plus lisible, merci Wink
_________________
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 Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Cocasso
Ecuyer
Inscrit le: 24 Mai 2004
Messages: 41
Répondre en citant
Posté le : 25/05/2004 19:46:40 Sujet du message :

ok je t acherais de le faire ..^^
merci ..
Bon je vait essayer de trouver le bon script
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Cocasso
Ecuyer
Inscrit le: 24 Mai 2004
Messages: 41
Répondre en citant
Posté le : 25/05/2004 19:52:09 Sujet du message :

vi je me suis effectivement planter de script...
voici le bon..^^
NWScript :
//:Confused///////////////////////// /////////////////////
//:: FileName at_006
//:Confused///////////////////////// ////////////////////
//:Confused///////////////////////// ////////////////////
//:: Created By: Script Wizard
//:: Created On: 10/04/04 18:59:43
//:Confused///////////////////////// ////////////////////
void main()
{

 
  object oItemToTake;
  oItemToTake = GetItemPossessedBy(GetPCSpeaker(), "peauderat");
  if(GetIsObjectValid(oItemToTake) != 0)
    DestroyObject(oItemToTake);
}
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.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
maremick
Acolyte
Inscrit le: 18 Mai 2004
Messages: 25
Répondre en citant
Posté le : 25/05/2004 20:44:40 Sujet du message :

Voila qui devrait marcher

NWScript :
//:Confused///////////////////////// /////////////////////
//:: FileName at_006
//:Confused///////////////////////// ////////////////////
//:Confused///////////////////////// ////////////////////
//:: Created By: Script Wizard
//:: Created On: 10/04/04 18:59:43
//:Confused///////////////////////// ////////////////////
void main()
{
        object oItemToTake = GetObjectByTag("peauderat");
        string sTagObjet = "peauderat";
        object oPC = GetPCSpeaker();

        if(GetIsObjectValid(oItemToTake))
        {
          int nNbItem = GetNumItems(oPC, sTagObjet); // Compte les objets
          TakeNumItems(oPC, sTagObjet, nNbItem); // Les prend
        }
}
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.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Cocasso
Ecuyer
Inscrit le: 24 Mai 2004
Messages: 41
Répondre en citant
Posté le : 25/05/2004 21:24:59 Sujet du message :

Merci .. je vait tester ton scrip et je te dit ca..^^
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Cocasso
Ecuyer
Inscrit le: 24 Mai 2004
Messages: 41
Répondre en citant
Posté le : 25/05/2004 21:35:14 Sujet du message :

helas .. toujours pareil
il les prend un par un..
merci quand meme..
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Cocasso
Ecuyer
Inscrit le: 24 Mai 2004
Messages: 41
Répondre en citant
Posté le : 25/05/2004 21:45:20 Sujet du message :

Mais en fonction du nombre de peau .. donnera t il ceci pour chaque peau pris...??
ou faut il compiler les deux scripts?
en fait bein j aimerais qu'il prenne toutes les peau et qu il donne une recompense pour ne nombre de peau pris..une peau/recompense

voici le script qui suit apres qu il est recuperer une (seule Sad ) peau..
y a t il un myen pour que le sript calcule le nombre de peau dans l inventaire,qu il les enleve toute d un coup,et qu il donne le nombre de recompense en fonction du nombre de peau?

NWScript :
//:Confused///////////////////////// /////////////////////
//:: FileName at_007
//:Confused///////////////////////// ////////////////////
//:Confused///////////////////////// ////////////////////
//:: Created By: Script Wizard
//:: Created On: 10/04/04 19:02:56
//:Confused///////////////////////// ////////////////////
void main()
{
   
    GiveGoldToCreature(GetPCSpeaker(), 100);

   
    GiveXPToCreature(GetPCSpeaker(), 5);

}
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.

Merci de votre aide .. en esperant que ce soit clair Confused
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
kiky.le.magnifique
Homme très gay
Inscrit le: 19 Sep 2003
Messages: 907
Localisation: Camping de la nation martienne...
Répondre en citant
Posté le : 26/05/2004 07:59:47 Sujet du message :

NWScript :
void main()
{
object oPJ = GetPCSpeaker();
//Le joueur qui parle

object oItemToTake = GetItemPossessedBy(oPJ, "peauderat");


  while (GetIsObjectValid(oItemToTake) != 0)

  {
    DestroyObject(oItemToTake);
    //destruction de la peau

    GiveGoldToCreature(oPJ, 100);
    //on donne 100Po

    GiveXPToCreature(oPJ, 5);
    //on donne 5XP
  }
SpeakString("Merci bien!");
//On dit merci pasqu'on est poli ^^
}
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.

_________________
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 Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
maremick
Acolyte
Inscrit le: 18 Mai 2004
Messages: 25
Répondre en citant
Posté le : 26/05/2004 08:10:06 Sujet du message :

T'es sûr de bien l'avoir remplacé ? Parce que j'avais oublié l'include et ça devrait même pas compiler Very Happy .
Et pourquoi tu ne mets pas les deux scripts en un ? Je me demande même comment tu fais.
Essaie celui-ci dans "action conséquente". Mais faut que dans ta réplique avant tu vérifies qu'il aie au moins une "peauderat".

NWScript :

//Confused////////////////////////// ///////////////////
//:: FileName vend_peauderat
//Confused////////////////////////// //////////////////
//Confused////////////////////////// //////////////////
//:: Created By: Maremick
//:: Created On: 26/05/2004
//Confused////////////////////////// //////////////////
#include "nw_i0_plot"

void main()
{
        object oItemToTake = GetObjectByTag("peauderat"); // objet
        string sTagObjet = "peauderat"; // Tag objet
        object oPC = GetPCSpeaker(); // Joueur
        int nNbItem = GetNumItems(oPC, sTagObjet);
        int iXP = 5*nNbItem;
        int iGold = 100*nNbItem;

        if(GetIsObjectValid(oItemToTake))
        {
          TakeNumItems(oPC, sTagObjet, nNbItem);
          GiveXPToCreature(oPC, iXP); // Donne l'XP
          GiveGoldToCreature(oPC, iGold); // Donne l'Or
        }
}
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.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Cocasso
Ecuyer
Inscrit le: 24 Mai 2004
Messages: 41
Répondre en citant
Posté le : 26/05/2004 10:32:50 Sujet du message :

Merci.. je vais tester et je reviens vous dire...^^
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Cocasso
Ecuyer
Inscrit le: 24 Mai 2004
Messages: 41
Répondre en citant
Posté le : 26/05/2004 10:54:55 Sujet du message :

Bon je vien de tester les deux scripts...^^
et la les deux me fond la meme erreur(to many instruction,et donne la recompense a l'infini,s'en prendre les peau de rat de l inventaire)

mais c'est bizard que les deux script fasse la meme erreur...
ca vient peut etre de moi.. Confused Confused
question bete..pour vous mais pas pour moi..."compiler" il le fait tout seul ou faut faire une manipe...
car je crois pas avoir ommis de faire qqchose en mettent de script.... Confused Confused
bein sa marche po... Embarassed Embarassed
Merci de vos effort en tout cas..^^
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Cocasso
Ecuyer
Inscrit le: 24 Mai 2004
Messages: 41
Répondre en citant
Posté le : 26/05/2004 11:08:20 Sujet du message :

c'est bon ... vos scripts fonctionnent..^^
en fait j'ais essayer a tous azart de metre le script dans Condition d'execusion,au lieux d'action consequante,
et la .. tous se deroule a merveille....en instantaner!! Very Happy Very Happy
il vide l inventaire danne le nombre de recompense par raport au peau pris,
Bref exactement se que je desirais ..
Merci encore,Z'etes trop efficasse. Cool Cool
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
maremick
Acolyte
Inscrit le: 18 Mai 2004
Messages: 25
Répondre en citant
Posté le : 26/05/2004 11:12:24 Sujet du message :

C'est peut-être la getobjectbytag qui plante vu qu'il y a plusieurs objets du même tag. Et compiler, c'est quand tu sauvegarde ton script, il y a l'onglet compiler qui vient en bas à gauche et qui te dit si ca s'est bien compilé, ou s'il y a des erreurs de syntaxe et que ca ne marchera pas.

Essaie ceci

NWScript :

//Confused////////////////////////// ///////////////////
//:: FileName vend_peauderat
//Confused////////////////////////// //////////////////
//Confused////////////////////////// //////////////////
//:: Created By: Maremick
//:: Created On: 26/05/2004
//Confused////////////////////////// //////////////////
#include "nw_i0_plot"

void main()
{
    // object oItemToTake = GetObjectByTag("peauderat "); // objet
    string sTagObjet = "peauderat"; // Tag objet
    object oPC = GetPCSpeaker(); // Joueur
    int nNbItem = GetNumItems(oPC, sTagObjet);
    int iXP = 5*nNbItem;
    int iGold = 100*nNbItem;

    if (nNbItem) // if(GetIsObjectValid(oItemToTak e))
    {
      TakeNumItems(oPC, sTagObjet, nNbItem);
      GiveXPToCreature(oPC, iXP); // Donne l'XP
      GiveGoldToCreature(oPC, iGold); // Donne l'Or
    }
}
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.

Edit : Ma foi, je sais pas ce que t'as foutu mais ça m'a l'air bien drole.

Bon, je t'explique comment faire :
Tu dois avoir un dialogue du genre:
Salut vous avez mes peaux de rats ?
Oui, tenez.
Merci, tenez pour vous.
[fin de dialogue]

Alors dans le condition d'execution de "oui, tenez", tu mets ton script que t'as mis au début.
et dans le action conséquente de "merci, tenez pour vous", tu mets celui qu'on t'a donné. Ce sera un peu plus^propre.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Cocasso
Ecuyer
Inscrit le: 24 Mai 2004
Messages: 41
Répondre en citant
Posté le : 26/05/2004 11:41:55 Sujet du message :

lool...
oui en effet ..je sais pas moi meme se que je fait..^^
je me rend seulement compte que si tu possede la sript...tu est liiiiibre...!!
Bref moi je ni connais rien,lool
Mais.....S' coup si j'ais bien suivit se que tu m'as dis .. et devine koi??
mais tu dois bien t'en douter..^^
c'est fonctionne niquel.. Cool Cool Cool
Merci encore..^^
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Cocasso
Ecuyer
Inscrit le: 24 Mai 2004
Messages: 41
Répondre en citant
Posté le : 01/06/2004 19:04:11 Sujet du message :

euhh....apres verif j'ai un ptit soucis avec le sript..
oui en effet il fonctionne mais des fois il reprend la totaliter des item et des fois non... Surprised (en fait en 2 fois)
Mais par contre qu'il prenne la totaliter ou non il fait le bon calcul au niveau des xp et des po...
ce qui veux dire que si le pj pocede 40 peau de rat,il recevras la totaliter des po ainsi que des xp..meme si le pnj en reprend que 2...
par contre au deuxieme essay il reprend bien tous les item mais redonne la meme recompense... Surprised
je vous remet le script en question...
en faite j aimerais qu'il enleve tous les item d un coup..(car le calcule est bon..^^)
je vous remerci d'avance...
NWScript :
////////////////////////////// /////////////////
//:: FileName vend_peauderat
////////////////////////////// ////////////////
////////////////////////////// ////////////////
//:: Created By: Maremick
//:: Created On: 26/05/2004
////////////////////////////// ////////////////
#include "nw_i0_plot"

void main()
{
    // object oItemToTake = GetObjectByTag("peauderat "); // objet
    string sTagObjet = "peauderat"; // Tag objet
    object oPC = GetPCSpeaker(); // Joueur
    int nNbItem = GetNumItems(oPC, sTagObjet);
    int iXP = 50*nNbItem;
    int iGold = 500*nNbItem;

    if (nNbItem) // if(GetIsObjectValid(oItemToTak e))
    {
      TakeNumItems(oPC, sTagObjet, nNbItem);
      GiveXPToCreature(oPC, iXP); // Donne l'XP
      GiveGoldToCreature(oPC, iGold); // Donne l'Or
    }
}
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.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Cocasso
Ecuyer
Inscrit le: 24 Mai 2004
Messages: 41
Répondre en citant
Posté le : 03/06/2004 22:46:02 Sujet du message :

Bien j'ai resolut le prob..^^
en fait le scrip est bon...
Mais si le pj a plein de chose a remetre d un coup.(ce qui est souvent le cas avec les peau de rat..^^)
ne pas faire de point de passage au pnj...car celui ci est tellement pressé de se balader qu'il en oublie de tout prendre dans l inventaire..^^
en conclusion script a metre sur un pnj statique,et la effectivement tout fonctionne a merveille...
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé 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 59.341ms