Miltiades
Inscrit le: 05 Nov 2006
Messages: 175
Posté le: 4/11/2007 22:55 Sujet du message: [Résolu]Vérouiller une porte avec une clef
Bonsoir^^
Voilà pour un joueur, je lui ai crée une chambre qui est fermée à clef. Donc il faut une clef pour l'ouvrir. Sans la clef, impossible d'ouvrir la porte de la chambre .
Mais il est impossible de revérouiller la porte à l'aide de la même clef une fois la porte ouverte.
Quelqu'un saurait-il comment faire?
Faut-il passer par un script? si oui lequel?
Merci
Dernière édition par Miltiades le 5/11/2007 17:57; édité 1 fois
Argyl
Inscrit le: 26 Juil 2006
Messages: 347
Posté le: 4/11/2007 23:39 Sujet du message:
Je crois qu'il est possible dans les propriétés de la porte de définir si elle est "revérouillable".
KorTeX
Inscrit le: 28 Juin 2007
Messages: 22
Posté le: 5/11/2007 9:21 Sujet du message:
tu peux créer une clef pour la chambre.
Ensuite pour ma part je mets sur le OnClose de la porte
Code: |
void main()
{
SetLocked (OBJECT_SELF, TRUE);
} |
et une sorte de levier, qui servira à l'ouverture et fermeture de la porte. Il doit se trouver juste à côté, à l'intérieur de la chambre. Je place une variabe "door" de type string avec pour valeur le tag de la porte, et sur le OnUSe du levier, je mets
Code: |
void main ()
{
// j'utilise GetNearest car si tu fais les portes en série, c'est plus simple et rapide que de changer les tag et les variables
object oDoor = GetNearestObjectByTag (GetLocalString (OBJECT_SELF, "door"));
if (GetIsOpen (oDoor))
{
// doit fonctionner avec ActionCloseDoor (oDoor); mais à tester
AssignCommand (oDoor, ActionCloseDoor (oDoor));
}
else
{
SetLocked (oDoor, FALSE);
AssignCommand (oDoor, ActionCloseDoor (oDoor));
}
} |
donc tu n'auras qu'à mettre sur le OnOpen de la porte
Code: |
void main()
{
// ici j'ai mis 6 secondes pour un round, mais on peut mettre plus
DelayCommand (6.0f, ActionCloseDoor (OBJECT_SELF));
} |
donc à chaque fois que la porte se refermera elle sera revérouillée. Le levier permet de la refermer manuellement, et donc de le revérouiller aussi.
Miltiades
Inscrit le: 05 Nov 2006
Messages: 175
Posté le: 5/11/2007 17:57 Sujet du message:
Merci beaucoup^^