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:15:46


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Silverwave
Ecuyer
Inscrit le: 21 Mai 2003
Messages: 69
Répondre en citant
Posté le : 27/01/2004 23:11:50 Sujet du message : PNJ lançant un sort au PJ

Salut,

voilà, c'est relativement simple : Un pnj (un prêtre) doit lancer un sort sur un PJ lorsque celui-ci le paye. C'est simple... mais pourquoi ça ne marche pas?

J'ai mis mon script dans une conversation du genre

"Ça fera 25 po, blablablabla voilà je t'ai guéris" - C'est le PNJ qui parle.

Voici le script :

NWScript :
void main()
{
    object oPC = GetPCSpeaker();
    object oNPC = GetObjectByTag("PeromAlbert");

    AssignCommand(oNPC, ActionCastSpellAtObject(SPELL_BLESS, oPC, TRUE, FALSE));
}
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.


J'aurais tendance à dire que c'est le PCspeaker le problème mais j'ai essayer de faire lancer le sort du pnj sur lui-même et ça ne fonctionne pas plus... je ne comprend plus là Sad .
_________________
~ J'suis rendu un écuye ! Yé ! ~

Laughing:
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Longbow
Grand Sage du Conseil
Inscrit le: 10 Déc 2003
Messages: 638
Localisation: Orléans
Répondre en citant
Posté le : 28/01/2004 00:07:20 Sujet du message :

Hum... Hum...

Il existe un script déja tout prêt dans ton éditeur... il se nomme "nw_d1_templeheal".
Ouvres l'éditeur de dialogue, à l'endroit où le prêtre dit... tiens toi prêt à recevoir le souffle de Tyr.... Dans l'onglet "Actions conséquentes" tu cliques sur le bouton [...] juste à côté d'[éditer]
Ouverture de l'éditeur de script, tu coches toutes dans les ressources à indiquer ( en bas à gauche de l'écran) et tu tapes temple... nw_d1_templeheal devrait apparaître... tu le sélectionnes et t'es tranquille....
_________________
Rex illeteratus
Quasi Asinus Coronatus
Jean de Salisbury
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Silverwave
Ecuyer
Inscrit le: 21 Mai 2003
Messages: 69
Répondre en citant
Posté le : 28/01/2004 02:22:12 Sujet du message :

Oui, ça c'est très bien quand tu veux que le PJ guérisse de tous ses status et de toutes ses blessures ainsi que tous ses alliés... mais quand tu ne veux PAS que ça se produise... dans mon cas je ne veux que faire une Cure Serious Wound au PJ. Confused
_________________
~ J'suis rendu un écuye ! Yé ! ~

Laughing:
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
aldech
Gagnant du Concours Gothic 3
Inscrit le: 25 Nov 2002
Messages: 61
Localisation: Le Havre
Répondre en citant
Posté le : 28/01/2004 11:15:03 Sujet du message :

Script créé à partir des scripts de bioware :

NWScript :


void FakeRestore(object oTarget);

void main()
{
    object oPC = GetPCSpeaker();

    ActionPauseConversation();
    ActionCastFakeSpellAtObject(SPELL_CURE_SERIOUS_WOUNDS, OBJECT_SELF);
    ActionDoCommand(FakeRestore(oPC));
    ActionResumeConversation();
}

void FakeRestore(object oTarget)
{
    if(GetRacialType(oTarget) != RACIAL_TYPE_UNDEAD)
    {
        effect eVisual = EffectVisualEffect(VFX_IMP_HEALING_S);
        int nMaxExtraDamage = 15;
        int nExtraDamage = GetCasterLevel(OBJECT_SELF);
        if (nExtraDamage > nMaxExtraDamage)
        {
            nExtraDamage = nMaxExtraDamage;
        }
        int nHeal = d8(3) + nExtraDamage ;
        effect eHeal = EffectHeal(nHeal);
        if (nHeal > 0)
        {
            ApplyEffectToObject(DURATION_TYPE_INSTANT, eHeal, oTarget);
            ApplyEffectToObject(DURATION_TYPE_INSTANT, eVisual, oTarget);
            SignalEvent(oTarget, EventSpellCastAt(OBJECT_SELF, SPELL_CURE_SERIOUS_WOUNDS, FALSE));
        }
    }
}

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
 
Tzeentsh
Ecuyer
Inscrit le: 01 Déc 2002
Messages: 41
Répondre en citant
Posté le : 28/01/2004 11:20:42 Sujet du message :

Tu as vérifié que le PNJ en question connaissait bien le sort que tu voulais lui faire lancer ? Ca ne fonctionnera pas si non.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
aldech
Gagnant du Concours Gothic 3
Inscrit le: 25 Nov 2002
Messages: 61
Localisation: Le Havre
Répondre en citant
Posté le : 28/01/2004 11:39:01 Sujet du message :


Tzeentsh a écrit :
Tu as vérifié que le PNJ en question connaissait bien le sort que tu voulais lui faire lancer ? Ca ne fonctionnera pas si non.
Je ne sais pas comment faire, si quelqu'un veut bien compléter le script.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Silverwave
Ecuyer
Inscrit le: 21 Mai 2003
Messages: 69
Répondre en citant
Posté le : 28/01/2004 18:19:19 Sujet du message :

Bien, normalement si tu met la valeur bCHEAT = TRUE dans les intrants de la fonction, le programme est supposé outrepasser le fait que le personnage connaisse ou non le sort.
_________________
~ J'suis rendu un écuye ! Yé ! ~

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 49.879ms