Original von {LSB} Squall69
Code angehängt. Klicke hier zum Ein-/Ausblenden
code: |
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
|
//start sliding doors
slidetrigger = getentarray( "slidetrig","targetname" );
if( isdefined( slidetrigger ) )
{
for( i=0;i<slidetrigger.size;i++ )
{
slidetrigger[i] thread WaitforSlide();
}
}
}
WaitforSlide()
{
while( 1 )
{
self waittill( "trigger" );
self MoveSlideDoor();
}
}
MoveSlideDoor()
{
slidedoor = getent( self.target, "targetname" );
if( !isDefined( slidedoor ) )
return;
slidedoor movex ( 58,2,0,0.5 );
slidedoor waittill ( "movedone" );
wait (10);
slidedoor movex (-58,2,0,0.5 );
slidedoor waittill ( "movedone" );
} |
|
Ähm, haben deine Türen einen oder zwei Trigger?
Wenn sie zwei haben, schon mal den zweiten Trigger betätigt, wärend du die Tür mit dem ersten geöffnet hast, und die Tür noch offen ist?
Bzw. den ersten Trigger ein zweites Mal betätigt hast, wärend die Tür geöffnet ist?
Das hier:
Code angehängt. Klicke hier zum Ein-/Ausblenden
code: |
1:
|
if( isdefined( slidetrigger ) ) |
|
und auch das hier:
Code angehängt. Klicke hier zum Ein-/Ausblenden
code: |
1:
2:
3:
|
if( !isDefined( slidedoor ) )
return;
|
|
kannst du dir ruhigen Gewissens sparen.
Das du Türen in deiner Map definiert hast weisst du doch, oder?
Das verhindert doch bloß Fehlermeldungen beim Testen, mehr nicht (und das ist bei der Fehlersuche eher hinderlich).
In der fertigen Map würde es doch
nie dazu kommen, dass diese Einträge nicht definiert sind (da deine Map sonst nicht so funktionieren würde, wie du dir das vorgestellt hast).
Bei einer Mod ist sowas von Interesse (da man dort auf undefinierte Zustände treffen könnte und diese abfangen will, damit der Server nicht mit einem Scriptfehler abschmiert).
Denn könntest du dir vorstellen, das wenn deine fertig kompilierte Map auf einem Server läuft, plötzlich und unverhofft deine Türen weg sind und du verhindern müsstest, das die Map dann abschmiert?
Wohl eher nicht.
Bei Maps kommt sowas eigentlich nur in sehr wenigen Ausnahmefällen vor, z.B. wenn man Arrays von entitys bildet, von denen einige mehr Parameter haben als andere und man so überprüfen müsste, ob der Parameter vorhanden ist oder nicht (z.B. Türen, bei denen einige den Parameter script_noteworthy2 haben, andere aber nicht).
Original von {LSB} Squall69
Hast du vielleicht auch schon probiert eine Unterscheidung der verschiedenen Öffnungsarten zu integrieren?
Nach deinem Tipp mit der key.txt glaub ich sogar das das möglich ist.
Sicher kann man da noch so einiges erweitern. Allein schon mit script_noteworthy und script_noteworthy2 und diverser if Abfragen bezüglich der Einträge dort.