La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
La date/heure actuelle est 22/09/2024 14:24:52


  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 : 02/08/2005 22:30:34 Sujet du message : alarme

salut

je cherche un script a mettre sur le onenter d'une zone, qui fasse "dire" a un placeable "quelqu'un vient d'entrer".

à la base, j'avais pensé a mettre ça sur le on open de la porte d'entrée, mais vu que ça ferait aussi ça sur ceux qui sortent... Very Happy puis j'avais pensé sur un trigger devant l'entrée, mais idem.

donc ne reste plus que le on enter, ou alors quelque chose à quoi j'ai pas pensé.

bien sur pour corser la chose (pour moi hein), il faudrait que ça ne reagisse pas quand un dm entre ou se teleporte dans la zone:)

voilà, si quelqu'un peut m'eclairer ^^

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
 
Ailesnoires
Grand Chevalier
Inscrit le: 21 Oct 2004
Messages: 110
Localisation: Vendée
Répondre en citant
Posté le : 03/08/2005 09:24:04 Sujet du message :

Tu peux le mettre dans onenter de la zone en effet ou sur le OnAreaTransitionClic de la porte de dehors et tu fais un test avec GetIsPC


Ps : j'ai pas l'éditeur sous la main
 
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 : 03/08/2005 13:41:55 Sujet du message :

Moi je te dirais d'utiliser le OnAreaTransitionClic(); Car si tu mets plusieurs étage à ta zone ou que tu comporte d'autres zones liés à ta zone, tout va se compliquer...Smile
 
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 : 03/08/2005 19:45:43 Sujet du message :

d'accooord... c'est où cette bestiole ?? et euh... je dois mettre quoi ? parce que je connais le script pour faire "parler" un placeable quand on l'utilise, mais pour le faire a partir de ça...Confused

merci ^^
_________________
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
 
Ailesnoires
Grand Chevalier
Inscrit le: 21 Oct 2004
Messages: 110
Localisation: Vendée
Répondre en citant
Posté le : 04/08/2005 12:37:02 Sujet du message :

Alors precise moi comment tu veux que ça fasse!

Qui doit entendre le placeable ?
 
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 : 04/08/2005 14:14:40 Sujet du message :

le chef d'une guilde, je penche pour un pnj utilisable par mj d'abord, un pj plus tard. je voudrais que quand quelqu'un entre, le placeable (genre une statue) dans son bureau prononce : "quelqu'un vient d'entrer"
voilà, merci:)
_________________
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
 
warpShadow
Légende vivante
Inscrit le: 01 Fév 2005
Messages: 363
Localisation: Perpignan
Répondre en citant
Posté le : 06/08/2005 23:49:42 Sujet du message :

bon, j'ai cherché un peu précisemment ce que je voulais. alors voilà, j'explique en detail :


- une planque d'une guilde de voleurs, dont le chef serait d'abord un pnj, et ensuite un joueur (le pnj qui tient le role du chef meurs par exemple).
- l'entrée de la planque se fait par une salle intermediaire avec une porte secrete, que seuls les membres (possédant une clef speciale pour activer un objet qui en active un autre qui ouvre la porte) peuvent ouvrir (mais ça c'est réglé).
- quand la porte d'entree de la planque (coté interieur donc) s'ouvre, une statue dans le bureau du chef se met à parler pour le prevenir que quelqu'un entre, puis pour prevenir si ce quelqu'un à la clé speciale ou non.


niveau technique, ça donnerai donc :
- un script sur le OnEnter de la zone ou sur le OnAeraTransitionClic (ça risque pas de faire avex ceux qui sortent aussi ?) relié à un placeable et qui vérifie la posséssion de la clé par le joueur.
- un placeable dqui déclenche un dialogue lorsque le script précédent se met en route, différent suivant si le pj entrant possède ou non la clé.


donc :

- Bob est un membre, il a la clé et rentre normalement. dans le breau du chef, la statue dit "un membre vient d'entrer".
- Mais Robert à vu Bob, et il a eu le temps de passer derriere lui avant que la porte ne se referme. dans le bureau du chef, la statue dit "une personne inconnue vient d'entrer".


voilà. je dois m'absenter, j'espere que quelqu'un saura/pourra/voudra (bah vi c'est pas un ordre, c'est une demande hein Very Happy) m'aider svp Smile

merci ^^ ++
_________________
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
 
Ailesnoires
Grand Chevalier
Inscrit le: 21 Oct 2004
Messages: 110
Localisation: Vendée
Répondre en citant
Posté le : 07/08/2005 10:08:05 Sujet du message :

Essaye ça en le méttant dans le OnAreaTransitionClic de ta porte

NWScript :

void main()
{
  object oPc = GetClickingObject();
  object oTarget = GetTransitionTarget(OBJECT_SELF);
  object oPass = GetObjectByTag("TAG_DU_PASS");
  object oDiseur = GetObjectByTag("TAG_DU_DISEUR");
  object oItem = GetFirstItemInInventory(oPc);
  SetAreaTransitionBMP(AREA_TRANSITION_RANDOM); //ligne a retirer si l'image de transition est definie

  while(GetIsObjectValid(oItem))
  {
  if(oItem == oPass)
  {
  AssignCommand(oDiseur, ActionSpeakString("Un Membre vient d'entrer"));
  }
  oItem = GetNextItemInInventory(oPc);
  }
  AssignCommand(oDiseur, ActionSpeakString("Un inconnu vient d'entrer"));

  AssignCommand(oPc,JumpToObject(oTarget));
}
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
 
trenim
Ecuyer
Inscrit le: 24 Aoû 2005
Messages: 64
Localisation: DANS TON C** !!!!
Répondre en citant
Posté le : 04/09/2005 12:23:10 Sujet du message :

Ce script est a metre dans OnAreaTransitionClic de la porte, bien, mais a l'interieur ou a l'exterieur de la porte ?
_________________
ON EST DES MARINES !!
ON EST NAIT POUR TUER !!

C'EST QUOI NOTRE METIER ?
TUER TUER TUER !!!
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Seth de Sombrelune
Seigneur
Inscrit le: 10 Jan 2005
Messages: 156
Répondre en citant
Posté le : 04/09/2005 13:20:44 Sujet du message :

si ta porte fait changer de zone alors tu place le script sur la porte de la zone de depart.
Par contre si c'est une siple porte qui separe une cloison il faut s'y prendre differament, mais je pense que ma première suposition est la bonne.

Par contre, au depart ton chef de guild sera jouer par un md qui ne sera pas forcement present dans la zone d'arrivée, donc ta statue parlera dans le vide. Je te suggère
d'ajouter une ligne pour que le "diseur" signale aussi l'evenement aux md present, du style :
NWScript :
void main()
{
object oPc = GetClickingObject();
object oTarget = GetTransitionTarget(OBJECT_SELF);
object oPass = GetObjectByTag("TAG_DU_PASS");
object oDiseur = GetObjectByTag("TAG_DU_DISEUR");
object oItem = GetFirstItemInInventory(oPc);
SetAreaTransitionBMP(AREA_TRANSITION_RANDOM); //ligne a retirer si l'image de transition est definie

while(GetIsObjectValid(oItem))
    {
        if(oItem == oPass)
        {
            AssignCommand(oDiseur, ActionSpeakString("Un Membre de la guilde ''machin'' vient d'entrer"));
            SendMessageToAllDMs("Un Membre de la guilde ''machin'' vient d'entrer");
        }
        oItem = GetNextItemInInventory(oPc);
    }
AssignCommand(oDiseur, ActionSpeakString("Un inconnu vient d'entrer"));
SendMessageToAllDMs("Un inconnu vient d'entrer dans la guilde ''Machin''");
AssignCommand(oPc,JumpToObject(oTarget));
}
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
 
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 36.97ms