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


  Page 1 sur 1 ¤

Voir le sujet précédent ¤ Voir le sujet suivant 
Auteur Message
Inquisiteur-Loh
Acolyte
Inscrit le: 26 Fév 2005
Messages: 22
Répondre en citant
Posté le : 03/03/2005 16:24:35 Sujet du message : Ne pas quitter la zone tant que des bestioles sont là

Salut,

J'ai parcouru le forum en long et en large pour tenter de trouver un script, mais mes recherches n'ont pas porté leur fruits (domage, c'est plein de vitamines).

J'utilise un système (dans le OnExit de mes zones) pour "soulager" mes zones des créatures et drops : quand le personnage quitte la zone, et qu'il était le seul PJ sur cette zone, toutes les créatures et drops sont flinguées.

Cependant j'imagine le cas ou un personnage s'amuse à fuir la zone afin d'éviter les combats et progresser dans le donjon sans avoir à se battre.

Je recherche donc un script se déclanchant quand un personnage utilise une zone de transition :
- Mes zones de transition possèdent un tag différent chacune.
- Mes zones de transition mènent à un point de passage de même tag, par exemple la zone de transition de tag "ville" mène au point de passage "ville".

Ce script devrait :
- Quand le personnage quitte la zone, regarder si des créatures sont présentes (autres que Personnages Joueurs bien entendu).
-> Si c'est le cas : Le personnage ne peut pas utiliser la zone de transition, un message lui est envoyé, du style "vous ne pouvez pas quitter la zone tant que des créatures hostiles sont présentes".
-> Dans le cas contraire, la zone de transition fonctionne.

Le petit problème est de créer un UNIQUE script, que je placerais sur les zones de transition.

En gros, le shéma global serait, sur le OnEnter (ou le OnClick, je ne sais pas ce qui conviendrait le mieux).

Condition : Si des créatures hostiles (autres que PC) sont présentes.
Alors : Envoyer un message au perso "vous ne pouvez pas quitter la zone tant que des créatures hostiles sont présentes".
Sinon : Envoyer le PJ sur le WayPoint de tag identique à la zone de transition.

Merci d'avance pour vos réponses/suggestions.
_________________
Inquisiteur Loh
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Eored
Ecuyer
Inscrit le: 02 Oct 2004
Messages: 56
Localisation: Amiens, Picardie Libre
Répondre en citant
Posté le : 03/03/2005 18:32:36 Sujet du message :

tu risques peut-être de faire des zones "cul de sac" soit parce qu'elles sotn trop peuplées (et que les rez oont eu lieu), soit parce que les rez sont trop rapides.

Pour quoi ne pas te baser sur l'état "en combat" du joueur? Cela limiterait déjà les abus.
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé MSN Messenger Ignorer l'utilisateur
 
Inquisiteur-Loh
Acolyte
Inscrit le: 26 Fév 2005
Messages: 22
Répondre en citant
Posté le : 03/03/2005 19:24:48 Sujet du message :

Il n'y aura pas de zones "cul de sac" car toutes les rencontres de monstres se font sur Encounter

Mais c'est bien de soulever ce problème Smile
_________________
Inquisiteur Loh
 
Revenir en haut Voir le profil de l'utilisateur Envoyer un message privé Ignorer l'utilisateur
 
Klemmth
Seigneur
Inscrit le: 26 Juin 2004
Messages: 176
Localisation: france
Répondre en citant
Posté le : 04/03/2005 07:12:03 Sujet du message :

Essaye sur le OnEnter

NWScript :
void main()
{
  int nCount;
  object oPC = GetEnteringObject();
  object oTarget=GetFirstObjectInArea( GetArea( OBJECT_SELF ) );

  while ( GetIsObjectValid( oTarget ) )
  {
    if ( ( GetObjectType( oTarget ) == OBJECT_TYPE_CREATURE ) && ( !GetIsPC( oTarget ) ) && ( !GetIsPC( GetMaster( oTarget ) ) ) )
      nCount++;
    oTarget=GetNextObjectInArea( GetArea( OBJECT_SELF ) );
  }

  if ( nCount > 0 )
  {
    SendMessageToPC( oPC, "" );
  } else {
    AssignCommand( oPC, ClearAllActions() );
    DelayCommand( 0.5, AssignCommand( oPC, JumpToLocation( GetLocation( GetWaypointByTag( GetTag( OBJECT_SELF ) ) ) ) ) );
  }
}
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 29.362ms