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 14:30:34


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Luthor
Novice
Inscrit le: 12 Juil 2005
Messages: 12
Localisation: Liffenburg
Répondre en citant
Posté le : 30/07/2005 14:53:23 Sujet du message : Animaux de compagnies

Je cherche un script qui me permetrrait de prendre possession d'un animal et d' avoir accés a son inventaire
pour qu'il port des objets mais aussi que je puisse lui en équiper.
si quelqu'un peut m'aider merci d'avance
 
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 : 14/08/2005 18:02:16 Sujet du message :

Si tu veux, j'ai un script pour avoir une animal de compagnie très très bien mais on ne contrôle pas son inventaire ...
_________________
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
 
diraen
Novice
Inscrit le: 04 Juil 2004
Messages: 15
Répondre en citant
Posté le : 15/08/2005 18:24:05 Sujet du message :

Moi en tout cas ca m'interesse à fond ! Si tu veux bien le partager, je suis preneuse !
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
arknax
Ecuyer
Inscrit le: 15 Mai 2005
Messages: 56
Répondre en citant
Posté le : 15/08/2005 21:40:37 Sujet du message :

On ne peut pas "prendre possession" d'aucune créature en joueur, à moins qu'il s'agit d'un des familiers. Le seul script qui serait possible pour toi serait un simple script de Hencheman. Smile
 
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 : 16/08/2005 16:13:57 Sujet du message :

Voila un nouveau script, il permet, si l'on possede une laisse (objet a acheter) d'invoquer un animal de compagnie (un chien, un chat ou un loup arctique)


NWScript :

/*---------------------------- ------------------------------ ------------------*\
|                    le script suivant sert a avoir un animal ...            |
|            attention, c'est un animal de compagnie pas de combat !          |
|                    cree par maelin_fellagun@hotmail.fr&nbs p;                     |
\*-------------------------- ------------------------------ --------------------*/



if(GetStringLeft(GetTag(oItem),10) == "IT_LAISSE")
        {
        string sAnimal = GetLocalString(oItem,"Animal");
        int nActif = GetLocalInt(oItem,"Actif");
        int nNth;

        if(nActif == 0)
            {
            for(nNth=1; nNth<=GetMaxHenchmen(); nNth++)
                {
                object oSuiv = GetHenchman(oPC,nNth);
                string sTag = GetTag(oSuiv);
                string sLeftTag = GetStringLeft(sTag,8);
                if(sLeftTag == "ct_dres_")
                    {
                    SendMessageToPC(oPC,
                    "");
                    return;
                    }
                }
            location lLoc = GetLocation(oPC);
            object oMerc = CreateObject(OBJECT_TYPE_CREATURE, sAnimal, lLoc);
            AddHenchman(oPC,oMerc);
            SetLocalInt(oItem,"Actif",2);
            }
        else
        if(nActif == 1)
            {
            for(nNth=1; nNth<=GetMaxHenchmen(); nNth++)
                {
                object oSuiv = GetHenchman(oPC,nNth);
                string sTag = GetTag(oSuiv);
                string sLeftTag = GetStringLeft(sTag,8);
                if(sLeftTag == "ct_dres_")
                    {
                    SendMessageToPC(oPC,
                    "");
                    return;
                    }
                }
            location lLoc = GetLocation(oPC);
            object oMerc = CreateObject(OBJECT_TYPE_CREATURE, sAnimal, lLoc);
            int nMaxHP = GetMaxHitPoints(oMerc);
            int nHP = GetLocalInt(oItem,"HP");
            effect eEff = EffectDamage(nMaxHP-nHP);
            ApplyEffectToObject(DURATION_TYPE_INSTANT, eEff, oMerc);
            AddHenchman(oPC,oMerc);
            SetLocalInt(oItem,"Actif",2);
            }
        else
        if(nActif == 2)
            {
            for (nNth=1; nNth<=GetMaxHenchmen(); nNth++)
                {
                object oMerc = GetHenchman(oPC,nNth);
                if(GetTag(oMerc) == sAnimal)
                    {
                    int nHP = GetCurrentHitPoints(oMerc);
                    SetLocalInt(oItem,"HP",nHP);
                    DestroyObject(oMerc);
                    }
                }
            SetLocalInt(oItem,"Actif",1);
            }
        }
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.




/!\ ATTENTION !!!
ce script seul ne permet pas d'avoir des animaux de compagnie, il faut aussi avoir créé les laisses (Avec "IT_LAISSE_" au debut du tag)(et avec une variable dessus pour nom : "Animal" et pour valeur le tag de l'animal a invoquer) et les animaux (avec "ct_dres_" au debut du tag)...

si vous le voulez, je vous passe les objets et animaux cités au dessus, je vous les passe sous ;erf (a condition de me donner une adresse ...)
_________________
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
 
diraen
Novice
Inscrit le: 04 Juil 2004
Messages: 15
Répondre en citant
Posté le : 16/08/2005 17:40:38 Sujet du message :

Merci beaucoup Elandil2 Very Happy
 
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 : 16/08/2005 19:48:25 Sujet du message :

Pas de quoi, je suis là pour ça !
mdr
_________________
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
 
Luthor
Novice
Inscrit le: 12 Juil 2005
Messages: 12
Localisation: Liffenburg
Répondre en citant
Posté le : 23/08/2005 11:22:35 Sujet du message :

Ouias merci! c sympa mais juste pour savoir on controle l inventaire ou pas parce que moi ce que je veux c'est Un inventaire Ambulant.
_________________
Module en cour de creation:
L'Ombre et le Phénix: 010 %

Je suis pas un scripteur.
envoyer moi un message si vous cherchez des idées de scénarios pour Modules ou tout ce qui est Folklore
ou imagination.
 
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 : 23/08/2005 13:03:50 Sujet du message :

Ben non, on ne controle pas l'inventaire, je ne sais pas comment on fait ca ...
_________________
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
 
Seth de Sombrelune
Seigneur
Inscrit le: 10 Jan 2005
Messages: 156
Répondre en citant
Posté le : 24/08/2005 08:50:53 Sujet du message :

bon je passait et j'ai vu de la lumière...
Je ne peut que te donner une piste.

Ce que tu demande etait réalisable dans hou, je te suggère d'eplucher les script de hichmen du module hou la solution se trouve dedans. Au pire ta solution est obligatoirement dans un des script de hou, hélas je n'ai pas le temps de chercher. Si tu le trouve et que tu ne parvient pas a le recuperer, signale nous le ! Moi je suis interesé pour t'aider eventuellement à l'adapter à un module généralisé.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
elgam66
Novice
Inscrit le: 08 Jan 2005
Messages: 17
Localisation: 66
Répondre en citant
Posté le : 30/11/2005 00:22:21 Sujet du message :

il suffit simplement de mettre le set de script des henchman.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
elgam66
Novice
Inscrit le: 08 Jan 2005
Messages: 17
Localisation: 66
Répondre en citant
Posté le : 30/11/2005 00:30:20 Sujet du message :

heu! je reviens ton script ne compile pas !
et suis pas assé calé pour le relire Very Happy
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
elgam66
Novice
Inscrit le: 08 Jan 2005
Messages: 17
Localisation: 66
Répondre en citant
Posté le : 30/11/2005 00:48:30 Sujet du message :

ok c bon tout va bien !
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Black Knight
Grand Maître Chanteur du Conseil
Inscrit le: 27 Oct 2005
Messages: 1031
Localisation: Fin fond du trou du cul du monde
Répondre en citant
Posté le : 30/11/2005 13:49:48 Sujet du message :

Il a un fonction, un script, qui permet d'ouvrir l'inventaire d'une personne...
NWScript :
void OpenInventory(object oCreature, object oPlayer)
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, il suffit juste ensuite de faire gaffe a la créature, qu'on ne puisse pas ouvrir l'inventaire comme sa, si ce n'est pas SON animal (exemple :
NWScript :
void main()
{
if(GetName(GetPCSpeaker()) != GetLocalObject(OBJECT_SELF, "PossesseurAnnimal"))
{
SendMessageToPC(oPC, "Il vous est interdit d'ouvrir l'inventaire d'un annimal, si celui-ci n'est pas le votre!");
}
else
{
OpenInventory(OBJECT_SELF, GetPCSpeaker());
}
}
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.


OBJECT_SELF = Represente le tag de l'annimal
GetPCSpeaker = La personne en plein dans le dialogue
GetLocalObject = Il faut la mettre a jour lors de la premiere conversation (SetLocalObject(OBJECT_SELF, "PossesseurAnimal", GetName(GetPCSpeaker())Wink
Voila j'espere vous avoir aidé.
_________________
[http]
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Sith Vicious
Grand Sage du Conseil
Inscrit le: 19 Oct 2005
Messages: 693
Répondre en citant
Posté le : 30/11/2005 14:54:08 Sujet du message :

Si tu mets les scripts des hench (ceux de hou ou sou, pas les premiers) tu controles pas directement l'inventaire ?
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Sith Vicious
Grand Sage du Conseil
Inscrit le: 19 Oct 2005
Messages: 693
Répondre en citant
Posté le : 30/11/2005 16:52:12 Sujet du message :

Ah ben si...
T'as accès à l'inventaire, du coup j'ai mis des anneau de résistance et des bottes de rapidité à ma vache, avec un bandeau d'inteligence et on a discuté toute la soirée.Laughing
 
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 30.472ms