Autor |
|
Genuigr
Acrobat


Dabei seit: Dezember 2009
Geschlecht: 
Herkunft: Die Provinz Stormarn
Beiträge: 118
 |
|
|
08.01.2010, 20:32 |
|
Garak
Admin
     

Dabei seit: Juli 2002
Geschlecht: 
Herkunft: Cardassia Prime
Beiträge: 9269
 |
|
OnTime wär ne schöne ergänzung, hoffentlich bauen die das für das nächste TES-Game mit ein...
die Uhrzeit bekommst Du in form der globalen Variable GameHour präsentiert, und zwar als float zwischen 0 und 24 - Achtung: halb zehn ist 9,5 und nicht 9,30. Gamehour kannst Du ohne definition in jedem Script nutzen und dann Deine passenden If-Abfragen konstruieren.
bleibt die Frage, wie oft man das ganze Abfragt - bei kurzen scripts kann das jeden frame passieren (also im Gamemode-Block), bei längeren hat sich folgendes bewährt:
short counter
begin Gamemode
set counter to counter - 1
if counter > 0
return
endif
set counter to 30
[...eigentliches Script...]
die 30 sind natürlich nur ein beispiel. Bei mehreren dieser Abfragen nimm verschiedene Zahlen, dass nicht immer alles im selben Frame abläuft. pluspunkt der methode: je besser die performance, desto öfter läuft das potentiell bremsende script - wenn der rechner eh schon stöhnt kümmert er sich auch seltener um das script....
übrigens kannst Du Gamehour auch setzen:
set Gamehour to 23.99
und schon ist fast geisterstunde - aber vorsicht: NPCs mit Tagesablauf wechseln dann in den "aufgescheuchte Hühner"-Modus, weil sie plötzlich merken, dass sie wo ganz anders sein sollten.
__________________ drei mal dürft ihr raten, wer grade seine Signatur geschrottet hat...geht aber wieder - allerdings solltet Ihr noch die Finger von den Avataren lassen 
|
|
08.01.2010, 21:25 |
|
Genuigr
Acrobat


Dabei seit: Dezember 2009
Geschlecht: 
Herkunft: Die Provinz Stormarn
Beiträge: 118
 |
|
Angenommen ich würde es im GameMod überprüfen,
müsste es dann so aussehen?
Begin Gamemod
If ( GameHour > 6 && GameHour < 18 )
Wall01.Disabled
Wall02.Enable
Elseif
Wall01.Enable
Wall02.Disable
Endif
End
Und noch eine Frage: Return => Script beenden ?
__________________ Des Denkers Seele liegt nicht im Kopf!
Meine Rätselquest:GFM: Zweiter Keller
--------------------------------------------
Um den Spruch auszudenken hab ich 2 Stunden gebraucht,
also sag mal nicht ne ?!
|
|
09.01.2010, 10:19 |
|
Garak
Admin
     

Dabei seit: Juli 2002
Geschlecht: 
Herkunft: Cardassia Prime
Beiträge: 9269
 |
|
return= ausführung für dieses mal beenden. Funktioniert meist ohne überraschungen , es sei denn bei einem Ausführungsdurchgang werden mehrere Blöcke ausgeführt - dann werden auch die weiteren Blöcke nicht mehr ausgeführt - tritt aber eher selten auf.
allerdings möcht ich ein E kaufen: Gamemode
und wenn keine weitere bedingung folgt, dann else, nicht elseif - sonst passt das
__________________ drei mal dürft ihr raten, wer grade seine Signatur geschrottet hat...geht aber wieder - allerdings solltet Ihr noch die Finger von den Avataren lassen 
|
|
09.01.2010, 11:39 |
|
Genuigr
Acrobat


Dabei seit: Dezember 2009
Geschlecht: 
Herkunft: Die Provinz Stormarn
Beiträge: 118
 |
|
Eigentlich dachte ich, dass Thema sei durch aber nochmal:
Wenn man etwas im GameMode-Block schreibt, dann wird
es jede Frame überprüft, aber fällt das bei einen 3 GHz Prozessor
auf?. Nicht jeder hat 3 aber was ist mit ca. 2 ?!
__________________ Des Denkers Seele liegt nicht im Kopf!
Meine Rätselquest:GFM: Zweiter Keller
--------------------------------------------
Um den Spruch auszudenken hab ich 2 Stunden gebraucht,
also sag mal nicht ne ?!
|
|
09.01.2010, 19:45 |
|
Garak
Admin
     

Dabei seit: Juli 2002
Geschlecht: 
Herkunft: Cardassia Prime
Beiträge: 9269
 |
|
wie gesagt: bei so nem kleinen Script kein problem - sorgen musst Du Dir machen, wenn es deutlich mehr als 10 Vergleiche gibt oder wenn böse dinge wie GetLOS verwendet werden.
__________________ drei mal dürft ihr raten, wer grade seine Signatur geschrottet hat...geht aber wieder - allerdings solltet Ihr noch die Finger von den Avataren lassen 
|
|
09.01.2010, 20:54 |
|
|