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:50:21


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
warpShadow
Légende vivante
Inscrit le: 01 Fév 2005
Messages: 363
Localisation: Perpignan
Répondre en citant
Posté le : 07/02/2006 03:12:45 Sujet du message : Objet MJ

Salut

après avoir fini mon objet d'emote-jet de dés, je m'attaque à un objet pour MJ.

Pour cela, j'aurais besoin, s'il vous plait, d'un script qui devrait être simple, mais que je ne trouve pas, c'est un script qui permettrait de lancer, via Action conséquente de dialogue, les mêmes effets que la commande ##dm_visualeffect XXX

voilà, merci d'avance +++
_________________
Asphia
Module RP Médiéval Fantastique pour Neverwiner Nights
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
Sith Vicious
Grand Sage du Conseil
Inscrit le: 19 Oct 2005
Messages: 693
Répondre en citant
Posté le : 07/02/2006 12:53:18 Sujet du message :

Je vois ça comme ça :

Dans le OnItemActivated :
NWScript :

object oItem = GetItemActivated();
object oTarget = GetItemActivatedTarget();
object oActivator = GetItemActivator();
location lCible = GetItemActivatedTargetLocation();

if (GetIsDM(oActivator) && GetTag(oItem)== "TAGDUMACHIN")
{
    SetLocalLocation(oActivator,"VFXWANDLOC",lCible);
    SetLocalObject(oActivator,"VFXWANDOBJECT",oTarget);
    AssignCommand(oActivator,ActionStartConversation(oActivator,"dia_dm_vfx_wand"));
}
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 ensuite dans les actions conséquentes du dialogue :
NWScript :

void main()
{
  int nFX = VFX_EFFET_QUE_TU_VEUX;
  effect eVis = EffectVisualEffect(nFX);
  object oCible = GetLocalObject(OBJECT_SELF,"VFXWANDOBJECT");
  if (GetIsObjectValid(oCible)) ApplyEffectToObject(DURATION_TYPE_INSTANT,eVis,oCible);
  else ApplyEffectAtLocation(DURATION_TYPE_INSTANT,eVis,GetLocalLocation(OBJECT_SELF,"VFXWANDLOC"));

DeleteLocalObject(OBJECT_SELF,"VFXWANDOBJECT");
DeleteLocalLocation(OBJECT_SELF,"VFXWANDLOC");
}
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.


Un truc dans le genre quoi, c'est un début déjà.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
warpShadow
Légende vivante
Inscrit le: 01 Fév 2005
Messages: 363
Localisation: Perpignan
Répondre en citant
Posté le : 07/02/2006 18:12:46 Sujet du message :

Salut ^^

pour l'utilisation de l'objet qui ouvre un dialogue, j'avais déjà ^^ mais merci

Et merci pour le second script, je le testerais dès que possible. Par contre, comment savoir quel effet a quel nom (à la place de VFX_EFFET_QUE_TU_VEUX;) ?

merci Smile
_________________
Asphia
Module RP Médiéval Fantastique pour Neverwiner Nights
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur Ignorer l'utilisateur
 
lylver
Héros
Inscrit le: 08 Avr 2005
Messages: 274
Répondre en citant
Posté le : 07/02/2006 18:20:13 Sujet du message :

Tu peux t'inspirer du DMFI, ils ont déjà un joli ensemble d'outils
http://dmfi.slightlysilly.net/modules.php?name=DMFI_Wands
 
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 : 07/02/2006 19:07:44 Sujet du message :

Ben soit tu tape VFX dans l'editeur de script et t'essaye de comprndre à quoi ils servent, soit tu ouvres visualeffects.2da et tu regarde pareil.

J'avais fait ça pour regarder les effets un par un, je crois qu'il marche, mais bon y en a plus de 500 (enfin ça permet d'en découvrir certains bien Rock 'n' Roll !) :
(sur le On Used d'un placeable : )
NWScript :

void main()
{
object oPC = GetLastUsedBy();
effect eEffect = GetFirstEffect(oPC);
while (GetIsEffectValid(eEffect))
{
    if (GetEffectType(eEffect) == EFFECT_TYPE_VISUALEFFECT) RemoveEffect(oPC,eEffect);
    eEffect = GetNextEffect(oPC);


}

int nCount = GetLocalInt(GetArea(OBJECT_SELF),"COMPTEURVFX");
effect eVis;
string sDuree = Get2DAString("visualeffects","Type_FD",nCount);
string sType;
while (sDuree =="****")
{
    sDuree = Get2DAString("visualeffects","Type_FD",++nCount);
}
if (sDuree == "D")
{
    sType = "Permanent";
    eVis = EffectVisualEffect(nCount);
    ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eVis,oPC,3.0);
}
else if (sDuree == "F")
      {
        sType = "Instant";
        eVis = EffectVisualEffect(nCount);
        ApplyEffectToObject(DURATION_TYPE_INSTANT,eVis,oPC);
      }
else if (sDuree == "B")
      {
        sType = "Rayon";
        eVis = EffectBeam(nCount,OBJECT_SELF,BODY_NODE_CHEST);
        ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eVis,oPC,3.0);

      }
else {
        sType = "inconnu";
        eVis = EffectVisualEffect(nCount);
        ApplyEffectToObject(DURATION_TYPE_TEMPORARY,eVis,oPC,3.0);
      }
SendMessageToPC(oPC,""+IntToString(nCount)+" nom : "+Get2DAString("visualeffects","Label",nCount)+" type : "+sType);
SetLocalInt(GetArea(OBJECT_SELF),"COMPTEURVFX",++nCount);
}
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.


Par contre ils sont pas tous définis comme constante dans le jeu donc note aussi le numero de ceux qui t'intéressent.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
warpShadow
Légende vivante
Inscrit le: 01 Fév 2005
Messages: 363
Localisation: Perpignan
Répondre en citant
Posté le : 08/02/2006 18:39:34 Sujet du message :

merci beaucoup, je vais essayer de voir avec tout ça ! je te tiens informé.
_________________
Asphia
Module RP Médiéval Fantastique pour Neverwiner Nights
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Visiter le site web du posteur 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 41.697ms