La Bibliothèque de Neverwinter Nights
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
Aide et informations diverses sur Neverwinter Nights ainsi que D&D3.
FAQ
Rechercher
Liste des Membres
Groupes d'utilisateurs
S'enregistrer Se connecter pour vérifier ses messages privés Connexion
S'enregistrer Se connecter pour vérifier ses messages privés Connexion
La date/heure actuelle est 23/11/2024 13:11:07
La Bibliothèque de Neverwinter Nights Index du Forum »
La Bibliothèque Binaire du NWScript - Neverwinter Nights
Voir le sujet précédent ¤ Voir le sujet suivant | |
---|---|
Auteur | Message |
Deepblack Voyageur Messages: 3 |
Salut, le multijoueur, c'est pas facile facile à gérer.
Explication: j'ai créé une quête ou le joueur dois retrouver quelqu'un qui lui donne une clef. Cette clef ouvrira une porte pour aller tuer une personne. 1)comment faire pour que la clef soit donnée à chaque fois q'un joueur questionne la première personne. 2)Comment faire pour que la porte ouverte avec la clef empêche les autres joueurs (qui n'ont pas la clef) d'entrer. 3)Si je supprime la clef de l'inventaire du joueur après ouverture de celle-ci, il peut quand même la réouvrir autant de fois qu'il le veut (j'ai mis que la porte se fermait après 10 sec). Pourquoi? 4) la personne que le joueur dois tuer, comment faire pour qu'il réssuscite lorsque l'on refranchit la porte? C'est vraiment pas simple de faire des quêtes en multijoueur! En plus, je suis un newbie et si on m'explique pas clairement j'y pige que dalle!. Merci à tous. Deepblack _________________ Un newbie en vaut bien deux |
Revenir en haut | |
Jedaï Chevalier Messages: 89 Localisation: Le Havre, ville pourrie |
1)
Code : void main() { object oPJ = GetPCSpeaker(); CreateItemOnObject("Resref de la clef", oPJ); } Dans le action taken (action conséquente) de la phrase où le PNJ donne la clef. 2) et 3) Code : void main() { object oDoor = OBJECT_SELF; SetLocked( oDoor, TRUE );//Reverrouille la porte DelayCommand( 5.0f, ActionCloseDoor( oDoor ));//la referme après 5 s } Sur le OnOpen de la porte. 4) Là, il y a un problème de conception : tu ne vas pas recréer un monstre à chaque fois qu'un joueur franchit la porte, imaginons qu'un autre joueur soit déjà en train de se battre à l'intérieur... Par contre tu peux faire ressusciter ce monstre après qu'il soit mort au bout d'un petit temps de latence (disons une minute) : Tu rajoute ceci à la fin du main() du OnSpawn de ton monstre : Code : object oSelf = OBJECT_SELF; SetLocalLocation( oSelf, "lSpawn", GetLocation( oSelf ) ); Puis ceci dans son OnDeath : Code : #include "NW_I0_GENERIC" void VoidCreateObject(string sTemplate, location lLoc, int bUseAppearAnimation=TRUE); void main() { if(GetSpawnInCondition(NW_FLAG_DEATH_EVENT)) { SignalEvent(OBJECT_SELF, EventUserDefined(1007)); } object oSelf = OBJECT_SELF; location lLoca = GetLocalLocation( oSelf, "lSpawn"); float fSeconds = 60.0; //temps en secondes pour le respawn string sTemplate = GetResRef( oSelf ); AssignCommand( GetArea( oSelf ) , DelayCommand( fSeconds, VoidCreateObject( sTemplate, lLoca ) ) ); } void VoidCreateObject(string sTemplate, location lLoc, int bUseAppearAnimation=TRUE) { CreateObject(OBJECT_TYPE_CREATURE, sTemplate,lLoc, bUseAppearAnimation); } Sinon tu pourrais aussi envisager de ne donner la clé de la porte qu'à un seul PJ à la fois, et ressusciter le monstre à l'ouverture de la porte (en vérifiant toutefois qu'il est bien mort), ou autre solutions... |
Revenir en haut | |
Deepblack Voyageur Messages: 3 |
J'avais trouvé pour reverouiller la porte après x sec, mais pas pour le reste.
En fait, j'ai créé cette quête avec l'assistant intrigue. Je vais essayer de mettre tout ça sans perdre les données de l'intrigue. Merci encore pour tout. Deepblack _________________ Un newbie en vaut bien deux |
Revenir en haut | |
La Bibliothèque de Neverwinter Nights Index du Forum »
La Bibliothèque Binaire du NWScript - Neverwinter Nights
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