Autor |
|
Cramus
Scout


Dabei seit: Juli 2006
Geschlecht: 
Herkunft: Kempten
Beiträge: 3
 |
|
Hallöchen,
ich bin neu hier und ich weiß auch nicht ob diese Frage in der falschen Kategorie steht.
Ich habe gemerkt mit dem Scripten funktioniert das nicht ganz so wie ich das gedacht habe.
Folgendes:
Ich bin gerade dabei eine Stadt zu erstellen und ich möchte dass sich die Tore in der Nacht schließen.
Deswegen habe ich den Script so geschrieben:
_____________________________________________
Begin DR_northgate
float timer
If ( GameHour >= 6 )
If ( GameHour <= 22 )
"dra_portcullis"->Playsound3DVP "..." 1.0 1.0
"dra_portcullis"->Move z 100
endif
elseif ( GameHour > 22 )
if ( GameHour < 6 )
"dra_portcullis"->Playsound3DVP "..." 1.0 1.0
"dra_portcullis"->Move z -100
endif
endif
End DR_northgate
_____________________________________________
Ich weiß nicht ob ich irgendwas in diesem Script falsch gemacht habe oder mit der Zuordnung zu dem "dra_portcullis" also dem Tor.
Und ich wusste grad' nicht, wie man den Tab einsetzt, also mit den Tab-Abständen denke ich sollte alles richtig sein.
Es wäre nett, wenn ihr mir antworten könntet.
Bitte erwartet nichts unmögliches von mir was die Abkürzungen angeht, hab bei manchen Verständigungsprobleme .
|
|
03.07.2006, 00:40 |
|
Quichybo
Archer
 
Dabei seit: Februar 2005
Geschlecht: keine Angabe
Herkunft:
Beiträge: 10
 |
|
kann es sein, dass der begriff "moveworld" oder so heißt?
und dass eine bewegung um 100 einheiten zu wenig ist?
du musst ja angeben, in welcher zeit sich das tor schließen wird, also, wie lange es sich bewegt...
also das script für ein fallgitter aus "castle solstheim" lautet:
Begin KO_SouthGate_Script
float timer
short state
if ( MenuMode == 1 )
return
endif
if ( state == 0 )
return
elseif ( state == 10 )
set timer to ( timer + GetSecondsPassed )
if ( timer < 4 )
MoveWorld z 63
elseif ( timer > 20 )
Playsound3DVP "Dwemer Door Open" 1.0 1.0
set state to 20
endif
elseif ( state == 20 )
set timer to ( timer + GetSecondsPassed )
if ( timer > 27 )
SetAtStart
set timer to 0
set state to 0
elseif ( timer < 24 )
MoveWorld z -63
else
set state to 0
set timer to 0
endif
endif
end
es wird durch einen schalter ausgelöst und bewegt sich über eine bestimmte zeitspanne senkrecht nach oben oder nach unten....
vielleicht hilft es dir ja!
Dieser Beitrag wurde von Quichybo am 03.07.2006, 17:44 Uhr editiert.
|
|
03.07.2006, 17:37 |
|
Cramus
Scout


Dabei seit: Juli 2006
Geschlecht: 
Herkunft: Kempten
Beiträge: 3
 |
|
Danke für den Tipp.
Ich habe versucht diesen Script in meinen einzubauen, aber bei mir geht jetzt das Tor hoch und bleibt auch da oben, obwohl es schon stockdunkel ist.
Hier ist der Script, den ich schon wieder irgendwie vermasselt habe:
_____________________________________________
Begin DR_northgate_script
float timer
short state
if ( GameHour >= 6 )
if ( GameHour <= 20 )
set state to 10
endif
elseif ( GameHour <= 6 )
if (GameHour >= 20 )
set state to 20
endif
endif
if ( MenuMode == 1 )
return
endif
if ( state == 10 )
set timer to ( timer + GetSecondsPassed )
if ( timer < 4 )
MoveWorld z 95
elseif ( timer > 20 )
Playsound3DVP "Dwemer Door Open" 1.0 1.0
endif
elseif ( state == 20 )
set timer to ( timer + GetSecondsPassed )
if ( timer < 4 )
MoveWorld z -95
elseif ( timer > 20 )
Playsound3DVP "Dwemer Door Open" 1.0 1.0
endif
endif
End
_____________________________________________
Wahrscheinlich habe ich mit dem Timer etwas falsch gemacht.
Ich bin in Scripten erst ein blutiger Anfänger.
Ich habe mich schon mit "Scripten für Dummies" befasst, es sind aber bei mir trotzdem noch einige Fragen offen, gerade was dem Timer angeht. Bei manchen reicht eben nicht mal eine Version für Dummies .
Ich bedank mich schon mal im Vorraus!
|
|
04.07.2006, 00:47 |
|
|