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 12:49:18


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Elric_GuardianAngel
Novice
Inscrit le: 27 Nov 2003
Messages: 5
Répondre en citant
Posté le : 02/12/2003 17:44:39 Sujet du message : Annuler/empecher les effets magiques (sorts) sur un PJ

Bonsoir à tous,

J'aimerais faire en sorte que lorsqu'un ou plusieurs PJ entre dans un zone ils perdent les effets magiques dûs à des sorts. D'autre part je voudrais savoir s'il est possible d'empecher à un PJ de lancer un sort lorsqu'il se trouve dans un zone spécifique ?

Merci.
//Elric
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Lavok
Légende vivante
Inscrit le: 22 Oct 2002
Messages: 434
Localisation: Sphère planaire
Répondre en citant
Posté le : 02/12/2003 18:20:10 Sujet du message :

Pour dissiper TOUS les effets, sauf ceux dûs à des objets portés :
NWScript :

void main()
{
object oEnter = GetEnteringObject();
effect eEffect = GetFirstEffect(oEnter);
while(GetIsEffectValid(eEffect)==TRUE)
{
RemoveEffect(oEnter, eEffect);
eEffect = GetNextEffect(oEnter);
}
}
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.


Quant à empêcher un pnj de lancer un sort, c'est moins évident Confused.
L'événement OnSpellCastAt ne convient pas, c'est trop tard, le sort est lancé. Il nous faudrait un OnCastingSpell !

Bon, pour l'instant , je ne vois qu'une "solution" : tu mets comme condition dans l'exécution du script de chaque sort, comme quoi il ne fait effet que si le lanceur n'est pas dans cette zone. C'est assez pharaonique comme boulot Malade, donc si quelqu'un d'autre trouve mieux...
_________________
ToB : Une seule chose semble certaine : tant que le trône de sang de Bhaal restera vide, le chaos règnera.

Moi : Une seule chose semble certaine : tant que la tête de singe de Bush restera vide, le chaos règnera.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Elric_GuardianAngel
Novice
Inscrit le: 27 Nov 2003
Messages: 5
Répondre en citant
Posté le : 02/12/2003 18:42:03 Sujet du message :

Merci,

Pour annuler les effets magique ça fonctionne, par contre pour empecher un sort d'être lancer, c'est pas gagné apparemment. Je pense que je vais attendre un peu pour voir si quelqu'un d'autre à une idée.

Encore merci.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
ansquer
Héros
Inscrit le: 11 Déc 2005
Messages: 264
Localisation: MorBihan
Répondre en citant
Posté le : 27/12/2006 23:05:23 Sujet du message :

MERCI LAVOK !!!

3 ans apres ^^ merci ... j'ai cherché des heures ^^
_________________
L'année de l'île Tome 1 Un roman ecxeptionnel !
Urban Rivals ! Mettez " ansker " en pseudo de votre parrain svp
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
AZAZEL11
Seigneur
Inscrit le: 08 Fév 2006
Messages: 156
Répondre en citant
Posté le : 28/12/2006 06:20:02 Sujet du message :

vais donner une réponse plus complète et qui fait en sorte aussi que le pj ne peut plus lancer de sorts.




dans le onenter de la zone/trigger:
NWScript :
#include "x0_i0_spells"
void main()
{

object oPC = GetEnteringObject();
effect eEffect = GetFirstEffect(oPC);//on check les effets des PJs
if (!GetIsPC(oPC)) return;

{


while(GetIsEffectValid(eEffect))
{



{
RemoveEffect (oPC,eEffect);//on applique effet
}
eEffect= GetNextEffect (oPC); //on cherche les autres effets

}
effect eAntimagic; //effet de anti magie en question
SendMessageToPC(oPC, "");
eAntimagic = EffectSpellFailure(100, SPELL_SCHOOL_GENERAL);

eAntimagic = SupernaturalEffect(eAntimagic); //pour etre sur que on ne parle pas de petit effet...

DelayCommand(2.0, ApplyEffectToObject(DURATION_TYPE_PERMANENT, eAntimagic, oPC));
ApplyEffectToObject(DURATION_TYPE_INSTANT, EffectVisualEffect(VFX_FNF_DISPEL_GREATER), 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.



et dans le onexit de la zone/trigger:

NWScript :
#include "x0_i0_spells"
//fait par Az pour zone de magie morte (sorts seulements)//////
///a mettre dans le OnExit du trigger ou de la zone///////
//16 octobre 2006/////
void main()
{
object oPC = GetExitingObject();
//effect eEffect = GetFirstEffect(oPC);//on check les effets des PJs
if (!GetIsPC(oPC)) return;
object oTarget;
oTarget = oPC;

effect eEffect;
eEffect = GetFirstEffect(oTarget);

{


while(GetIsEffectValid(eEffect))
{


if(GetEffectType(eEffect) == EFFECT_TYPE_SPELL_FAILURE)
{
RemoveEffect (oTarget,eEffect);//on applique effet
}
eEffect= GetNextEffect (oTarget); //on cherche les autres effets
}
}
}
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.

_________________
L'imagination est plus importante que le savoir. (Albert Einstein)
 
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 45.797ms