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 19:08:30


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Justice
Ecuyer
Inscrit le: 29 Jan 2006
Messages: 60
Répondre en citant
Posté le : 16/04/2006 08:03:57 Sujet du message : Script de Rez dans d'un pj au sol ...

Hello tous !!!

Je post ici car j'arrive pas à créer un script adéquat pour ce que je veux faire...

Tout le monde ici connais le principe du sac pour ramasser les cadavres des joueurs, je veux faire en sorte que le pj possédant le corp puisse faire rez ll pj mort par un prêtre (PNJ)...

Je m'explique en plus précis...

Quand le pj actionne le sac sur le cadavre, le pj mort se retrouve vivant dans une zone d'attente... Ensuite le pj vivant peut se promener en possédant un objet nommé corp...
Ce que je voudrais, c'est un script se plaçant dans les actions conséquentes d'un dialogue qui ferait en sorte que de faire revenir le pj mort devant le prêtre et que celui-ci le rez... Je ne sais pas si je m'exprime comme il le faut, mais si quelqu'un pouvait m'aider, car je suis vraiment dans une impasse là Smile

Merci d'avance !!!
Dernière édition par Justice le 24/04/2006 05:17:29; édité 1 fois
 
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 : 16/04/2006 10:00:51 Sujet du message : Re: Script de Rez dans d'un pj dans une autre zone...


Justice a écrit :
Quand le pj actionne le sac sur le cadavre, le pj mort se retrouve vivant dans une zone d'attente... Ensuite le pj vivant peut se promener en possédant un objet nommé corps...
Tu as déjà cette partie de script, et c'est juste la Rez qui te manque?
Dans ce cas il nous faudrait tes scripts existants pour savoir
où et comment est stocké le PJ à ressuciter. Very Happy
_________________
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
 
Justice
Ecuyer
Inscrit le: 29 Jan 2006
Messages: 60
Répondre en citant
Posté le : 16/04/2006 19:39:30 Sujet du message :

En fait, je crois qu'il y a moyen de faire plus simple....

En fait il faudrait que le prêtre puisse rez un pj mort au sol et que se soit un autre pj qui le demande dans le dialogue...
Un truc comme findnextdeadpcinarea *est pourri en script*

Merci d'avance !! Smile
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Shamrodia
Novice
Inscrit le: 22 Avr 2006
Messages: 13
Répondre en citant
Posté le : 24/04/2006 04:25:15 Sujet du message :

Je pense que ceci devrait fonctionner, à mettre en "action conséquente" d'une réponse de dialogue :

NWScript :
void main()
{
    // Ici on peut personnaliser :
    // 10.0 est la distance maximum de ressurection
   
    object oMort = GetFirstObjectInShape(SHAPE_SPHERE, 10.0, GetLocation(OBJECT_SELF), TRUE);
    while (GetIsObjectValid(oMort) == TRUE)
    {
        if (GetIsPC(oMort) && (GetCurrentHitPoints(oMort) <= 0))
        {
            ActionCastFakeSpellAtObject(SPELL_RESURRECTION, oMort);
            effect eLum = EffectVisualEffect(VFX_IMP_RAISE_DEAD);
            DelayCommand(2.0, ApplyEffectToObject(DURATION_TYPE_INSTANT, eLum, oMort));
            effect eRez = EffectResurrection();
            DelayCommand(2.0, ApplyEffectToObject(DURATION_TYPE_INSTANT, eRez, oMort));

           
            object oCoeur = GetItemPossessedBy(oMort, "coeurmort");
            if(GetIsObjectValid(oCoeur) != 0)
            {
                DestroyObject(oCoeur);
            }
            // Fin du petit ajout Very Happy

            return;
        }
       
       
        oMort = GetNextObjectInShape(SHAPE_SPHERE, 10.0, GetLocation(OBJECT_SELF), TRUE);
    }
    ActionSpeakString("");
}
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 n'ai pas pu le tester en local, n'ayant pas de joueur mort à côté Wink Mais en théorie, ça fonctionne. Je débute, mais c'est un script tout simple Smile
_________________
Shamrodia, scripteuse un peu folle.
Dernière édition par Shamrodia le 24/04/2006 05:53:47; édité 2 fois
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Justice
Ecuyer
Inscrit le: 29 Jan 2006
Messages: 60
Répondre en citant
Posté le : 24/04/2006 05:16:45 Sujet du message :

merci à toi c'Est trop gentil Smile
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Shamrodia
Novice
Inscrit le: 22 Avr 2006
Messages: 13
Répondre en citant
Posté le : 24/04/2006 06:01:18 Sujet du message :

J'ai trouvé encore plus simple ! Smile

NWScript :
void main()
{
    // Ici on peut personnaliser :
    // 10.0 est la distance maximum de ressurection
   
    object oMort = GetFirstObjectInShape(SHAPE_SPHERE, 10.0, GetLocation(OBJECT_SELF), TRUE);
    while (GetIsObjectValid(oMort) == TRUE)
    {
        if (GetIsPC(oMort) && (GetCurrentHitPoints(oMort) <= 0))
        {
            ActionCastSpellAtObject(SPELL_RESURRECTION, oMort, METAMAGIC_ANY, TRUE);

           
            object oCoeur = GetItemPossessedBy(oMort, "coeurmort");
            if(GetIsObjectValid(oCoeur) != 0)
            {
                DestroyObject(oCoeur);
            }
            // Fin du petit ajout Very Happy

            return;
        }
       
       
        oMort = GetNextObjectInShape(SHAPE_SPHERE, 10.0, GetLocation(OBJECT_SELF), TRUE);
    }
    ActionSpeakString("");
}
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.


Quand on connaît toutes les fonctions disponibles, c'est mieux Smile J'apprends, j'apprends Smile
_________________
Shamrodia, scripteuse un peu folle.
 
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 38.54ms