Elleslande Module pour NWN

Forum d' Elleslande, module RP pour Neverwinter Nights
 
AccueilCalendrierFAQRechercherS'enregistrerMembresGroupesConnexion

Partagez | 
 

 question de verouillage

Voir le sujet précédent Voir le sujet suivant Aller en bas 
AuteurMessage
Ame Sombre
Novice
avatar

Nombre de messages : 18
Age : 33
Date d'inscription : 05/09/2006

MessageSujet: question de verouillage   Mar 5 Sep - 4:35

question surement tres con***e.

Je fais un piti module la, mais le truc c'est que je chercher le script qui verrouille automatiquement une porte apres ouverture.

j'ai deja demandé a des scripteurs d'autre serveur sur lequel je jouais, nada, secret d'amateur, ils ne voulaient pas me le fournir, ni meme d'explication.

sans script,on peux la verouiller, la faire ouvrir uniquement par une clef, mais il faut re-utiliser la clef pour relocker la porte (aller expliquer ca a un dm amateur qui debute ... je parle de moi^^)

donc si qqun a un lien ou le script direct, je lui frotterais la tete gratos durant 3 jours non stop.
Pis je rajoute sous le menton, soyons fou! cheers

Merci biiiien
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Astarode
Admin
avatar

Nombre de messages : 374
Age : 46
Localisation : Elleslande
Date d'inscription : 16/11/2005

MessageSujet: Re: question de verouillage   Mar 5 Sep - 19:59

Es-ce ça que tu cherches ?

http://elleslande.forumzen.com/viewtopic.forum?t=134


A moins que tu ne cherches juste qu'à refermer la porte...
... les joueurs les ouvrent mais ne les referment jamais... Bonjour les courants d'air ! drunken

void main()
{
// Referme la porte après un délai de 10 secondes
// A mettre dans le OnEnter de la porte


DelayCommand(10.0f,ActionCloseDoor(OBJECT_SELF));
}

_________________
Pour me joindre sur MSN : ld10b@hotmail.com
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://elleslande.forumzen.com
Ame Sombre
Novice
avatar

Nombre de messages : 18
Age : 33
Date d'inscription : 05/09/2006

MessageSujet: Re: question de verouillage   Mar 5 Sep - 23:59

Ce serait pour une geole, il faut donc que la porte soit verrouillée a la fermeture, de sorte qu'il n'y ai qu'une clef pour l'ouvrire.
Pour l'instant, j'arrive à la verrouiller, mais des qu'elle est ouverte avec une clef specifique, elle ne ce verrouille pas AUTOMATIQUEMENT à la fermeture.

J'ai deja 4 PNJ's qui font greve a cause des-dit courants d'air... Rolling Eyes

Est ce qu'avec le script de ci dessus, la porte ce ferme ET ce verrouille?
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Silk
Faiseur d'Univers
avatar

Nombre de messages : 298
Age : 40
Localisation : Albi
Date d'inscription : 20/11/2005

MessageSujet: le scripting   Mer 6 Sep - 8:11

Je te donne un lien interessant : http://nwnscript.coldwire.net/

il s'agit d'une base de donnée de fonction de scripting avec exemple.

Si tu regarde à ActionCloseDoor tu as cet exemple :

Citation :

// Script placé dans l'évenement "OnHeartbeat" d'une porte.
// La porte se fermera et se verrouillera automatiquement au crépuscule,
// puis se déverrouillera et s'ouvrira automatiquement à l'aube.
void main()
{
if(GetIsDusk())
{
if(GetIsOpen(OBJECT_SELF))
ActionCloseDoor(OBJECT_SELF);

// La fonction "SetLocked()" est utilisée avec "ActionDoCommand()".
// Elle doit être dans la file d'action, afin que la porte se ferme
// complètement avant de se verrouiller.
if(!GetLocked(OBJECT_SELF)
ActionDoCommand(SetLocked(OBJECT_SELF,TRUE));
}
else if(GetIsDawn())
{
if(GetLocked(OBJECT_SELF))
ActionDoCommand(SetLocked(OBJECT_SELF,FALSE));

if(!GetIsOpen(OBJECT_SELF))
ActionOpenDoor(OBJECT_SELF);
}
}


Bien sur les script dans les Heartbeat sont a déconseiller car ils se lance toutes les 6s ce qui pourri la vie a ton serveur !

Par contre si tu reprend le script d'Asta :

Citation :

void main()
{
// Referme la porte après un délai de 10 secondes
// A mettre dans le OnEnter de la porte

DelayCommand(10.0f,ActionCloseDoor(OBJECT_SELF));
DelayCommand(12.0f,ActionDoCommand(SetLocked(OBJECT_SELF,FALSE)));
}


Voilà, à prioris au bout de 10s la porte se ferme et 2s après elle se reverouille...
Bien sur ne met pas ça sur une porte où tu choisi de "detruire la clef" après utilisation...

Je pense que comme ça ça devrait fonctionner.

_________________
----------------------------------------
Peut être que l'on se retrouvera ...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://aidtarn.free.fr
Ame Sombre
Novice
avatar

Nombre de messages : 18
Age : 33
Date d'inscription : 05/09/2006

MessageSujet: Re: question de verouillage   Mer 6 Sep - 16:46

Le script d'Asta modif by Silk me convient parfaitement.

Je l'essaye de suite, le tout en vous remerciant Wink
Revenir en haut Aller en bas
Voir le profil de l'utilisateur
Astarode
Admin
avatar

Nombre de messages : 374
Age : 46
Localisation : Elleslande
Date d'inscription : 16/11/2005

MessageSujet: Re: question de verouillage   Mer 6 Sep - 20:16

Je n'avais pas préciser pour la commande de verrouilage car ça me semblait couler de source. En revanche, tu peux, à la place du DelayCommande mettre DIRECTEMENT le SetLoked.

En, effet, le DelayCommand mets en place un timer qui exécute la commande spécifiée à la fin de décompte. Ici, tu peux verrouiller la porte dès qu'elle s'est refermée. pig

_________________
Pour me joindre sur MSN : ld10b@hotmail.com
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://elleslande.forumzen.com
Silk
Faiseur d'Univers
avatar

Nombre de messages : 298
Age : 40
Localisation : Albi
Date d'inscription : 20/11/2005

MessageSujet: Re: question de verouillage   Mer 6 Sep - 20:45

je pensais que le script passerais à la commande suivante en attendant que le delay s'effectue.... Smile

d'ou les 12s pour laisser le temps à la porte de se fermer...

_________________
----------------------------------------
Peut être que l'on se retrouvera ...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://aidtarn.free.fr
Astarode
Admin
avatar

Nombre de messages : 374
Age : 46
Localisation : Elleslande
Date d'inscription : 16/11/2005

MessageSujet: Re: question de verouillage   Mer 6 Sep - 20:53

Citation :

void main()
{
// Referme la porte après un délai de 10 secondes
// A mettre dans le OnEnter de la porte

DelayCommand(10.0f,ActionCloseDoor(OBJECT_SELF));
DelayCommand(12.0f,ActionDoCommand(SetLocked(OBJECT_SELF,FALSE)));
}

Dans le script que tu as proposé, la porte ne se reverrouille pas 2 mais 12 secondes après la fin de la commande précédente pig
De plus, il te faudra mettre le SetLocked à TRUE comme expliqué -->ici

Du "prêt-à-macher" donnera donc :
Astarode a écrit:
void main()
{
// Referme la porte après un délai de 10 secondes et la verrouille
// A mettre dans le OnEnter de la porte

DelayCommand(10.0f,ActionCloseDoor(OBJECT_SELF));
SetLocked(OBJECT_SELF,TRUE);
}

_________________
Pour me joindre sur MSN : ld10b@hotmail.com
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://elleslande.forumzen.com
Silk
Faiseur d'Univers
avatar

Nombre de messages : 298
Age : 40
Localisation : Albi
Date d'inscription : 20/11/2005

MessageSujet: effectivement   Jeu 7 Sep - 9:05

effectivement pour le false j'ai fait un copier coller betement sans relire milles excuses !

_________________
----------------------------------------
Peut être que l'on se retrouvera ...
Revenir en haut Aller en bas
Voir le profil de l'utilisateur http://aidtarn.free.fr
Contenu sponsorisé




MessageSujet: Re: question de verouillage   

Revenir en haut Aller en bas
 
question de verouillage
Voir le sujet précédent Voir le sujet suivant Revenir en haut 
Page 1 sur 1
 Sujets similaires
-
» Le débat sur la question du protectorat
» Question à nos historiens
» Réflexion sur la question constitutionnelle aujourd'hui
» Faut-il remettre en question les habiletés du PDT du Sénat ?
» [question] moyen de truquer...

Permission de ce forum:Vous ne pouvez pas répondre aux sujets dans ce forum
Elleslande Module pour NWN :: Zone technique :: Aurora : Le coin des invités-
Sauter vers: